Configuring IP SLAs ICMP Echo Operations

This module describes how to configure an IP Service Level Agreements (SLAs) Internet Control Message Protocol (ICMP) Echo operation to monitor end-to-end response time between two devices using IPv4.

This chapter includes the following sections:

ICMP Echo Operation

The Internet Control Message Protocol (ICMP) Echo operation measures the end-to-end response time between two devices that use IPv4 or IPv6. The response time is computed by measuring the time taken between sending an ICMP Echo request message to the destination and receiving an ICMP Echo reply. An ICMP Echo is useful for troubleshooting network connectivity issues. The results of the ICMP Echo operation can be displayed and analyzed to determine how the network IP connections are performing.

In the following figure, the ICMP Echo operation uses the ping test to measure the response time between the source IP SLAs device and the destination IP device. Many customers use IP SLAs ICMP-based operations, in-house ping testing, or ping-based dedicated probes for response time measurements.

Figure 1. ICMP Echo Operation


The IP SLAs ICMP Echo operation conforms to the same IETF specifications for ICMP ping testing and the two methods result in the same response times.

Guidelines and Limitations for IP SLAs ICMP Echo Operations

  • show commands with the internal keyword are not supported.

  • We recommend that you use a Cisco networking device as the destination device although you can use any networking device that supports RFC 862, the Echo protocol.

  • You need to configure an IP SLA operation and schedule it for it to begin the operation.

  • Beginning with Cisco NX-OS Release 7.0(3)I6(1), IPv6 for Cisco Nexus 9300 and 9500 switches.

Configuring an ICMP Echo Operation


Note

You do not need to configure an IP SLAs Responder on the destination device.


Perform one of the following tasks:

  • Configuring a basic ICMP Echo operation on the source device

  • Configuring an ICMP Echo operation with optional parameters

Configuring a Basic ICMP Echo Operation on a Source Device

SUMMARY STEPS

  1. configure terminal
  2. feature sla sender
  3. ip sla operation-number
  4. icmp-echo {destination-ipv4-address | destination-ipv6-address | destination-hostname} [source-ip {ipv4-address | ipv6-address | hostname} | source-interface interface-name]
  5. end

DETAILED STEPS

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal

Enters global configuration mode.

Step 2

feature sla sender

Example:

switch(config)# feature sla sender

Enables the IP SLAs operation feature.

Step 3

ip sla operation-number

Example:

switch(config)# ip sla 6

Begins configuration for an IP SLAs operation and enters IP SLA configuration mode.

Step 4

icmp-echo {destination-ipv4-address | destination-ipv6-address | destination-hostname} [source-ip {ipv4-address | ipv6-address | hostname} | source-interface interface-name]

Example:

switch(config-ip-sla)# icmp-echo 192.0.2.134

Example:

switch(config-ip-sla)# icmp-echo 2016:1:1::2

Defines an ICMP Echo operation and enters IP SLA ICMP Echo configuration mode.

Note 

IPv6 is supported for Cisco Nexus 9300 and 9500 switches beginning with Cisco NX-OS Release 7.0(3)I6(1).

Step 5

end

Example:

switch(config-ip-sla-echo)# end 

Exits IP SLA ICMP Echo configuration mode and returns to privileged EXEC mode.

What to do next

To add proactive threshold conditions and reactive triggering to an IP Service Level Agreements (SLAs) operation for the purpose of generating traps or for starting another operation, see the “Configuring Proactive Threshold Monitoring” section in the “Configuring Proactive Threshold Monitoring for IP SLAs Operations” chapter.

Configuring an ICMP Echo Operation with Optional Parameters

Before you begin

Perform this task on the source device.

SUMMARY STEPS

  1. configure terminal
  2. feature sla sender
  3. ip sla operation-number
  4. icmp-echo {destination-ipv4-address | destination-ipv6-address | destination-hostname} [source-ip {ipv4-address | ipv6-address | hostname} | source-interface interface-name]
  5. (Optional) history buckets-kept size
  6. (Optional) history distributions-of-statistics-kept size
  7. (Optional) history enhanced [interval seconds] [buckets number-of-buckets
  8. (Optional) history filter {none | all | overThreshold | failures}
  9. (Optional) frequency seconds
  10. (Optional) history hours-of-statistics-kept hours
  11. (Optional) history lives-kept lives
  12. (Optional) owner owner-id
  13. (Optional) request-data-size bytes
  14. (Optional) history statistics-distribution-interval milliseconds
  15. (Optional) tag text
  16. (Optional) threshold milliseconds
  17. (Optional) timeout milliseconds
  18. (Optional) {tos | traffic-class}number
  19. (Optional) verify-data
  20. (Optional) vrf {vrf-name | default | management}
  21. end

DETAILED STEPS

  Command or Action Purpose

Step 1

configure terminal

Example:

switch# configure terminal

Enters global configuration mode.

Step 2

feature sla sender

Example:

switch(config)# feature sla sender

Enables the IP SLAs operation feature.

Step 3

ip sla operation-number

Example:

switch(config)# ip sla 6

Begins configuration for an IP SLAs operation and enters IP SLA configuration mode.

Step 4

icmp-echo {destination-ipv4-address | destination-ipv6-address | destination-hostname} [source-ip {ipv4-address | ipv6-address | hostname} | source-interface interface-name]

Example:

switch(config-ip-sla)# icmp-echo 192.0.2.134 source-ip 192.0.2.132

Example:

switch(config-ip-sla)# icmp-echo 2016:1:1::2 source-ip 2016:1:1::1

Defines an Echo operation and enters IP SLA Echo configuration mode.

Note 

IPv6 is supported for Cisco Nexus 9300 and 9500 switches beginning with Cisco NX-OS Release 7.0(3)I6(1).

Step 5

(Optional) history buckets-kept size

Example:

switch(config-ip-sla-echo)# history buckets-kept 25
(Optional)

Sets the number of history buckets that are kept during the lifetime of an IP SLAs operation.

Step 6

(Optional) history distributions-of-statistics-kept size

Example:

switch(config-ip-sla-echo)# history distributions-of-statistics-kept 5
(Optional)

Sets the number of statistics distributions that are kept per hop during an IP SLAs operation.

Step 7

(Optional) history enhanced [interval seconds] [buckets number-of-buckets

Example:

switch(config-ip-sla-echo)# history enhanced interval 900 buckets 100
(Optional)

Enables enhanced history gathering for an IP SLAs operation.

Step 8

(Optional) history filter {none | all | overThreshold | failures}

Example:

switch(config-ip-sla-echo)# history filter failures
(Optional)

Defines the type of information kept in the history table for an IP SLAs operation.

Step 9

(Optional) frequency seconds

Example:

switch(config-ip-sla-echo)# frequency 30
(Optional)

Sets the rate at which a specified IP SLAs operation repeats.

Step 10

(Optional) history hours-of-statistics-kept hours

Example:

switch(config-ip-sla-echo)# history hours-of-statistics-kept 4
(Optional)

Sets the number of hours for which statistics are maintained for an IP SLAs operation.

Step 11

(Optional) history lives-kept lives

Example:

switch(config-ip-sla-echo)# history lives-kept 5
(Optional)

Sets the number of lives maintained in the history table for an IP SLAs operation.

Step 12

(Optional) owner owner-id

Example:

switch(config-ip-sla-echo)# owner admin 
(Optional)

Configures the Simple Network Management Protocol (SNMP) owner of an IP SLAs operation.

Step 13

(Optional) request-data-size bytes

Example:

switch(config-ip-sla-echo)# request-data-size 64 
(Optional)

Sets the protocol data size in the payload of an IP SLAs operation's request packet.

Step 14

(Optional) history statistics-distribution-interval milliseconds

Example:

switch(config-ip-sla-echo)# history statistics-distribution-interval 10
(Optional)

Sets the time interval for each statistics distribution kept for an IP SLAs operation.

Step 15

(Optional) tag text

Example:

switch(config-ip-sla-echo)# tag TelnetPollServer1 
(Optional)

Creates a user-specified identifier for an IP SLAs operation.

Step 16

(Optional) threshold milliseconds

Example:

switch(config-ip-sla-echo)# threshold 10000
(Optional)

Sets the upper threshold value for calculating network monitoring statistics created by an IP SLAs operation.

Step 17

(Optional) timeout milliseconds

Example:

switch(config-ip-sla-echo)# timeout 10000 
(Optional)

Sets the amount of time an IP SLAs operation waits for a response from its request packet.

Step 18

(Optional) {tos | traffic-class}number

Example:

switch(config-ip-sla-echo)# tos 160

Example:

switch(config-ip-sla-echo)# traffic-class 160
(Optional)

In an IPv4 network only, defines a type of service (ToS) byte in the IPv4 header of an IP SLAs operation.

In an IPv6 network only, defines a traffic-class byte in the IPv6 header of an IP SLAs operation for the supported IP SLAs operation.

Note 

IPv6 is supported for Cisco Nexus 9300 and 9500 switches beginning with Cisco NX-OS Release 7.0(3)I6(1).

Step 19

(Optional) verify-data

Example:

switch(config-ip-sla-echo)# verify-data
(Optional)

Causes an IP SLAs operation to check each reply packet for data corruption.

Step 20

(Optional) vrf {vrf-name | default | management}

Example:

switch(config-ip-sla-echo)# vrf vpn-A 
(Optional)

Allows monitoring within Multiprotocol Label Switching (MPLS) Virtual Private Networks (VPNs) using IP SLAs operations.

Step 21

end

Example:

switch(config-ip-sla-echo)# end

Exits IP SLA Echo configuration mode and returns to privileged EXEC mode.

What to do next

To add proactive threshold conditions and reactive triggering to an IP Service Level Agreements (SLAs) operation for the purpose of generating traps or for starting another operation, see the “Configuring Proactive Threshold Monitoring” section in the “Configuring Proactive Threshold Monitoring for IP SLAs Operations” chapter.

Scheduling IP SLAs Operations

This section describes how to schedule IP SLAs operations.

Before you begin


Note

  • All IP SLAs operations to be scheduled must be already configured.

  • The frequency of all operations scheduled in a multioperation group must be the same.

  • The list of one or more operation ID numbers to be added to a multioperation group is limited to a maximum of 125 characters, including commas (,).



Tip

  • If the IP SLAs operation is not running and generating statistics, add the verify-data command to the configuration of the operation (while configuring in IP SLA configuration mode) to enable data verification. When enabled, each operation response is checked for corruption. Use the verify-data command with caution during normal operations because it generates unnecessary overhead.

  • Use the debug ip sla trace and debug ip sla error commands to help troubleshoot issues with an IP SLAs operation.


SUMMARY STEPS

  1. enable
  2. configure terminal
  3. Do one of the following:
    • ip sla schedule operation-number [life forever { | seconds}] [starttime {hh : mm[: ss] [month day | day month] | pending | now | after hh : mm : ss}] [ageout seconds] [recurring]

      Example:

       ip sla schedule operation-number [life {forever | seconds}] [starttime {hh : mm[: ss] [month day | day month] | pending | now | after hh : mm : ss}] [ageout seconds] [recurring] 
    • ip sla group schedule group-operation-number operation-id-numbers schedule-period schedule-period-range [ageout seconds] [frequency group-operation-frequency] [life{forever | seconds}] [starttime{ hh:mm[:ss] [month day | day month] | pending | now | after hh:mm:ss}]

      Example:

       switch(config)# ip sla group schedule 1 3,4,6-9
  4. exit
  5. show ip sla group schedule
  6. show ip sla configuration

DETAILED STEPS

  Command or Action Purpose

Step 1

enable

Example:

switch> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2

configure terminal

Example:

switch# configure terminal

Enters global configuration mode.

Step 3

Do one of the following:

  • ip sla schedule operation-number [life forever { | seconds}] [starttime {hh : mm[: ss] [month day | day month] | pending | now | after hh : mm : ss}] [ageout seconds] [recurring]

    Example:

     ip sla schedule operation-number [life {forever | seconds}] [starttime {hh : mm[: ss] [month day | day month] | pending | now | after hh : mm : ss}] [ageout seconds] [recurring] 
  • ip sla group schedule group-operation-number operation-id-numbers schedule-period schedule-period-range [ageout seconds] [frequency group-operation-frequency] [life{forever | seconds}] [starttime{ hh:mm[:ss] [month day | day month] | pending | now | after hh:mm:ss}]

    Example:

     switch(config)# ip sla group schedule 1 3,4,6-9

-

  • For individual IP SLAs operations only:

    Configures the scheduling parameters for an individual IP SLAs operation.

  • For the multioperations scheduler only:

    Specifies an IP SLAs operation group number and the range of operation numbers to be scheduled in global configuration mode.

Step 4

exit

Example:

switch(config)# exit

Exits to privileged EXEC mode.

Step 5

show ip sla group schedule

Example:

switch# show ip sla group schedule

(Optional) Displays the IP SLAs group schedule details.

Step 6

show ip sla configuration

Example:

switch# show ip sla configuration

(Optional) Displays the IP SLAs configuration details.

What to do next

To add proactive threshold conditions and reactive triggering for generating traps or for starting another operation, see the Configuring Proactive Threshold Monitoring section.

To view and interpret the results of an IP SLAs operation, use the show ip sla statistics command. Checking the output for fields that correspond to criteria in your service level agreement will help you determine whether the service metrics are acceptable.

Troubleshooting Tips

  • If the IP SLAs operation is not running and not generating statistics, add the verify-data command to the configuration of the operation (while configuring in IP SLA configuration mode) to enable data verification. When data verification is enabled, each operation response is checked for corruption. Use the verify-data command with caution during normal operations because it generates unnecessary overhead.

  • Use the debug ip sla trace and debug ip sla error commands to help troubleshoot issues with an IP SLAs operation.

What to Do Next

To add proactive threshold conditions and reactive triggering to an IP Service Level Agreements (SLAs) operation for the purpose of generating traps or for starting another operation, see the “Configuring Proactive Threshold Monitoring” section in the “Configuring Proactive Threshold Monitoring for IP SLAs Operations” chapter.

Configuration Examples for IP SLAs ICMP Echo Operations

Example: Configuring a Basic ICMP Echo Operation on a Source Device

This example shows how to configure a basic ICMP Echo Operation on a source device:


switch# configure terminal
switch(config)# feature sla sender
switch(config)# ip sla 6
switch(config-ip-sla)# icmp-echo 192.0.2.134 source-ip 192.0.2.132
switch(config-ip-sla-echo)# end

Example: Configuring an ICMP Echo Operation with Optional Parameters

This example shows how to configure an IP SLAs ICMP Echo operation using IPv4:


switch# configure terminal
switch(config)# feature sla sender
switch(config)# ip sla 6
switch(config-ip-sla)# icmp-echo 192.0.2.134 source-ip 192.0.2.132
switch(config-ip-sla-echo)# frequency 300
switch(config-ip-sla-echo)# request-data-size 38
switch(config-ip-sla-echo)# tos 160
switch(config-ip-sla-echo)# timeout 6000
switch(config-ip-sla-echo)# tag SFO-RO
switch(config-ip-sla-echo)# end

This example shows how to configure an IP SLAs ICMP Echo operation using IPv6:


switch# configure terminal
switch(config)# feature sla sender
switch(config)# ip sla 6
switch(config-ip-sla)# icmp-echo 2016:1:1::2 source-ip 2016:1:1::1
switch(config-ip-sla-echo)# frequency 300
switch(config-ip-sla-echo)# request-data-size 38
switch(config-ip-sla-echo)# traffic-class 160
switch(config-ip-sla-echo)# timeout 6000
switch(config-ip-sla-echo)# tag SFO-RO
switch(config-ip-sla-echo)# end

Example: Scheduling IP SLAs Operations

This example shows how to schedule an IP SLAs operation that is already configured:


switch# configure terminal
switch(config)# feature sla sender
switch(config)# ip sla schedule 6 life forever start-time now
switch(config)# exit