1Smokeping_probes_CiscoRTTMonEchoICMPS(m3o)keSPmionkgeping_probes_CiscoRTTMonEchoICMP(3)
2
3
4
6 Smokeping::probes::CiscoRTTMonEchoICMP - Probe for SmokePing
7
9 *** Probes ***
10
11 +CiscoRTTMonEchoICMP
12
13 forks = 5
14 offset = 50%
15 step = 300
16 timeout = 15
17
18 # The following variables can be overridden in each target section
19 /^influx_.+/ = influx_location = In the basement
20 ioshost = RTTcommunity@Myrouter.foobar.com.au # mandatory
21 iosint = 10.33.22.11
22 packetsize = 56
23 pings = 5
24 timeout = 15
25 tos = 160
26 vrf = INTERNET
27
28 # [...]
29
30 *** Targets ***
31
32 probe = CiscoRTTMonEchoICMP # if this should be the default probe
33
34 # [...]
35
36 + mytarget
37 # probe = CiscoRTTMonEchoICMP # if the default probe is something else
38 host = my.host
39 /^influx_.+/ = influx_location = In the basement
40 ioshost = RTTcommunity@Myrouter.foobar.com.au # mandatory
41 iosint = 10.33.22.11
42 packetsize = 56
43 pings = 5
44 timeout = 15
45 tos = 160
46 vrf = INTERNET
47
49 A probe for smokeping, which uses the ciscoRttMon MIB functionality
50 ("Service Assurance Agent", "SAA") of Cisco IOS to measure ICMP echo
51 ("ping") roundtrip times between a Cisco router and any IP address.
52
54 Supported probe-specific variables:
55
56 forks
57 Run this many concurrent processes at maximum
58
59 Example value: 5
60
61 Default value: 5
62
63 offset
64 If you run many probes concurrently you may want to prevent them
65 from hitting your network all at the same time. Using the probe-
66 specific offset parameter you can change the point in time when
67 each probe will be run. Offset is specified in % of total interval,
68 or alternatively as 'random', and the offset from the 'General'
69 section is used if nothing is specified here. Note that this does
70 NOT influence the rrds itself, it is just a matter of when data
71 acquisition is initiated. (This variable is only applicable if the
72 variable 'concurrentprobes' is set in the 'General' section.)
73
74 Example value: 50%
75
76 step
77 Duration of the base interval that this probe should use, if
78 different from the one specified in the 'Database' section. Note
79 that the step in the RRD files is fixed when they are originally
80 generated, and if you change the step parameter afterwards, you'll
81 have to delete the old RRD files or somehow convert them. (This
82 variable is only applicable if the variable 'concurrentprobes' is
83 set in the 'General' section.)
84
85 Example value: 300
86
87 timeout
88 How long a single 'ping' takes at maximum
89
90 Example value: 15
91
92 Default value: 5
93
94 Supported target-specific variables:
95
96 /^influx_.+/
97 This is a tag that will be sent to influxdb and has no impact on
98 the probe measurement. The tag name will be sent without the
99 "influx_" prefix, which will be replaced with "tag_" instead. Tags
100 can be used for filtering.
101
102 Example value: influx_location = In the basement
103
104 ioshost
105 The (mandatory) ioshost parameter specifies the Cisco router, which
106 will execute the pings, as well as the SNMP community string on the
107 router.
108
109 Example value: RTTcommunity@Myrouter.foobar.com.au
110
111 This setting is mandatory.
112
113 iosint
114 The (optional) iosint parameter is the source address for the pings
115 sent. This should be one of the active (!) IP addresses of the
116 router to get results. IOS looks up the target host address in the
117 forwarding table and then uses the interface(s) listed there to
118 send the ping packets. By default IOS uses the (primary) IP address
119 on the sending interface as source address for a ping. The RTTMon
120 MIB versions before IOS 12.0(3)T didn't support this parameter.
121
122 Example value: 10.33.22.11
123
124 packetsize
125 The packetsize parameter lets you configure the packetsize for the
126 pings sent. The minimum is 8, the maximum 16392. Use the same
127 number as with fping, if you want the same packet sizes being used
128 on the network.
129
130 Default value: 56
131
132 pings
133 How many pings should be sent to each target, if different from the
134 global value specified in the Database section. Note that the
135 number of pings in the RRD files is fixed when they are originally
136 generated, and if you change this parameter afterwards, you'll have
137 to delete the old RRD files or somehow convert them.
138
139 Example value: 5
140
141 timeout
142 How long a single RTTMonEcho ICMP 'ping' take at maximum plus 10
143 seconds to spare. Since we control our own timeout the only purpose
144 of this is to not have us killed by the ping method from basefork.
145
146 Example value: 15
147
148 Default value: 15
149
150 tos The (optional) tos parameter specifies the value of the ToS byte in
151 the IP header of the pings. Multiply DSCP values times 4 and
152 Precedence values times 32 to calculate the ToS values to
153 configure, e.g. ToS 160 corresponds to a DSCP value 40 and a
154 Precedence value of 5. The RTTMon MIB versions before IOS 12.0(3)T
155 didn't support this parameter.
156
157 Example value: 160
158
159 Default value: 0
160
161 vrf The the VPN name in which the RTT operation will be used. For
162 regular RTT operation this field should not be configured. The
163 agent will use this field to identify the VPN routing Table for
164 this operation.
165
166 Example value: INTERNET
167
169 Joerg.Kummer at Roche.com
170
172 IOS VERSIONS
173 It is highly recommended to use this probe with routers running IOS
174 12.0(3)T or higher and to test it on less critical routers first. I
175 managed to crash a router with 12.0(9) quite consistently ( in IOS
176 lingo 12.0(9) is older code than 12.0(3)T ). I did not observe crashes
177 on higher IOS releases, but messages on the router like the one below,
178 when multiple processes concurrently accessed the same router (this
179 case was IOS 12.1(12b) ):
180
181 Aug 20 07:30:14: %RTT-3-SemaphoreBadUnlock: %RTR: Attempt to unlock
182 semaphore by wrong RTR process 70, locked by 78
183
184 Aug 20 07:35:15: %RTT-3-SemaphoreInUse: %RTR: Could not obtain a lock
185 for RTR. Process 80
186
187 INSTALLATION
188 To install this probe copy ciscoRttMonMIB.pm files to
189 ($SMOKEPINGINSTALLDIR)/lib/Smokeping and CiscoRTTMonEchoICMP.pm to
190 ($SMOKEPINGINSTALLDIR)/lib/Smokeping/probes. V0.97 or higher of Simon
191 Leinen's SNMP_Session.pm is required.
192
193 The router(s) must be configured to allow read/write SNMP access.
194 Sufficient is:
195
196 snmp-server community RTTCommunity RW
197
198 If you want to be a bit more restrictive with SNMP write access to the
199 router, then consider configuring something like this
200
201 access-list 2 permit 10.37.3.5
202 snmp-server view RttMon ciscoRttMonMIB included
203 snmp-server community RTTCommunity view RttMon RW 2
204
205 The above configuration grants SNMP read-write only to 10.37.3.5 (the
206 smokeping host) and only to the ciscoRttMon MIB tree. The probe does
207 not need access to SNMP variables outside the RttMon tree.
208
210 The probe sends unnecessary pings, i.e. more than configured in the
211 "pings" variable, because the RTTMon MIB only allows to set a total
212 time for all pings in one measurement run (one "life"). Currently the
213 probe sets the life duration to "pings"*5+3 seconds (5 secs is the ping
214 timeout value hardcoded into this probe).
215
217 <http://oss.oetiker.ch/smokeping/>
218
219 <http://www.switch.ch/misc/leinen/snmp/perl/>
220
221 The best source for background info on SAA is Cisco's documentation on
222 <http://www.cisco.com> and the CISCO-RTTMON-MIB documentation, which is
223 available at: <ftp://ftp.cisco.com/pub/mibs/v2/CISCO-RTTMON-MIB.my>
224
225
226
2272.8.2 2022-0S7m-o2k3eping_probes_CiscoRTTMonEchoICMP(3)