Configuring IP SLAs HTTP Operations
This module describes how to configure an IP Service Level Agreements (SLAs) HTTP operation to monitor
the response time between a Cisco device and an HTTP server to retrieve a web page. The IP SLAs HTTP
operation supports both the normal GET requests and customer RAW requests. This module also demonstrates
how the results of the HTTP operation can be displayed and analyzed to determine how an HTTP server is
performing.
• Finding Feature Information, on page 1
• Restrictions for IP SLAs HTTP Operations, on page 1
• Information About IP SLAs HTTP Operations, on page 2
• How to Configure IP SLAs HTTP Operations, on page 2
• Configuration Examples for IP SLAs HTTP Operations, on page 9
• Additional References, on page 10
• Feature Information for IP SLAs HTTP Operations, on page 11
Finding Feature Information
Your software release may not support all the features documented in this module. For the latest caveats and
feature information, see Bug Search Tool and the release notes for your platform and software release. To
find information about the features documented in this module, and to see a list of the releases in which each
feature is supported, see the feature information table.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support.
To access Cisco Feature Navigator, go to [Link]/go/cfn. An account on [Link] is not required.
Restrictions for IP SLAs HTTP Operations
• IP SLAs HTTP operations support only HTTP/1.0.
• HTTP/1.1 is not supported for any IP SLAs HTTP operation, including HTTP RAW requests.
Configuring IP SLAs HTTP Operations
1
Configuring IP SLAs HTTP Operations
Information About IP SLAs HTTP Operations
Information About IP SLAs HTTP Operations
HTTP Operation
The HTTP operation measures the round-trip time (RTT) between a Cisco device and an HTTP server to
retrieve a web page. The HTTP server response time measurements consist of three types:
• DNS lookupRTT taken to perform domain name lookup.
• TCP Connect--RTT taken to perform a TCP connection to the HTTP server.
• HTTP transaction time--RTT taken to send a request and get a response from the HTTP server. The
operation retrieves only the home HTML page.
The DNS operation is performed first and the DNS RTT is measured. Once the domain name is found, a TCP
Connect operation to the appropriate HTTP server is performed and the RTT for this operation is measured.
The final operation is an HTTP request and the RTT to retrieve the home HTML page from the HTTP server
is measured. One other measurement is made and called the time to first byte which measures the time from
the start of the TCP Connect operation to the first HTML byte retrieved by the HTTP operation. The total
HTTP RTT is a sum of the DNS RTT, the TCP Connect RTT, and the HTTP RTT.
For GET requests, IP SLAs will format the request based on the specified URL. For RAW requests, IP SLAs
requires the entire content of the HTTP request. When a RAW request is configured, the raw commands are
specified in HTTP RAW configuration mode. A RAW request is flexible and allows you to control fields
such as authentication. An HTTP request can be made through a proxy server.
The results of an HTTP operation can be useful in monitoring your web server performance levels by
determining the RTT taken to retrieve a web page.
Regardless of the HTTP errors, the IP SLA works fine. Currently, the error codes are determined, and the IP
SLA HTTP operation goes down only if the return code is not 200.
Note The only time the SLA probe goes down is when the SLA is unable to establish a TCP connection or is unable
to receive an answer from the Remote server to its HTTP request.
How to Configure IP SLAs HTTP Operations
Configuring an HTTP GET Operation on the Source Device
Note This operation does not require an IP SLAs Responder on the destination device.
Perform only one of the following tasks:
Configuring IP SLAs HTTP Operations
2
Configuring IP SLAs HTTP Operations
Configuring a Basic HTTP GET Operation on the Source Device
Configuring a Basic HTTP GET Operation on the Source Device
SUMMARY STEPS
1. enable
2. configure terminal
3. ip sla operation-number
4. http {get | raw} url [name-server ip-address] [version version-number] [source-ip {ip-address |
hostname}] [source-port port-number] [cache {enable | disable}] [proxy proxy-url]
5. frequency seconds
6. end
DETAILED STEPS
Command or Action Purpose
Step 1 enable Enables privileged EXEC mode.
Example: • Enter your password if prompted.
Device> enable
Step 2 configure terminal Enters global configuration mode.
Example:
Device# configure terminal
Step 3 ip sla operation-number Begins configuration for an IP SLAs operation and enters
IP SLA configuration mode.
Example:
Device(config)# ip sla 10
Step 4 http {get | raw} url [name-server ip-address] [version Defines an HTTP operation and enters IP SLA configuration
version-number] [source-ip {ip-address | hostname}] mode.
[source-port port-number] [cache {enable | disable}]
[proxy proxy-url]
Example:
Device(config-ip-sla)# http get
[Link]
Step 5 frequency seconds (Optional) Sets the rate at which a specified IP SLAs HTTP
operation repeats. The default and minimum frequency
Example:
value for an IP SLAs HTTP operation is 60 seconds.
Device(config-ip-sla-http)# frequency 90
Step 6 end Exits to privileged EXEC mode.
Example:
Device(config-ip-sla-http)# end
Configuring IP SLAs HTTP Operations
3
Configuring IP SLAs HTTP Operations
Configuring an HTTP GET Operation with Optional Parameters on the Source Device
Configuring an HTTP GET Operation with Optional Parameters on the Source Device
SUMMARY STEPS
1. enable
2. configure terminal
3. ip sla operation-number
4. http {get | raw} url [name-server ip-address] [version version-number] [source-ip {ip-address |
hostname}] [source-port port-number] [cache {enable | disable}] [proxy proxy-url]
5. history distributions-of-statistics-kept size
6. frequency seconds
7. history hours-of-statistics-kept hours
8. http-raw-request
9. owner owner-id
10. history statistics-distribution-interval milliseconds
11. tag text
12. threshold milliseconds
13. timeout milliseconds
14. tos number
15. end
DETAILED STEPS
Command or Action Purpose
Step 1 enable Enables privileged EXEC mode.
Example: • Enter your password if prompted.
Device> enable
Step 2 configure terminal Enters global configuration mode.
Example:
Device# configure terminal
Step 3 ip sla operation-number Begins configuration for an IP SLAs operation and enters
IP SLA configuration mode.
Example:
Device(config)# ip sla 10
Step 4 http {get | raw} url [name-server ip-address] [version Defines an HTTP operation and enters IP SLA
version-number] [source-ip {ip-address | hostname}] configuration mode.
[source-port port-number] [cache {enable | disable}]
[proxy proxy-url]
Example:
Device(config-ip-sla)# http get
[Link]
Step 5 history distributions-of-statistics-kept size (Optional) Sets the number of statistics distributions kept
per hop during an IP SLAs operation.
Example:
Configuring IP SLAs HTTP Operations
4
Configuring IP SLAs HTTP Operations
Configuring an HTTP GET Operation with Optional Parameters on the Source Device
Command or Action Purpose
Device(config-ip-sla-http)# history
distributions-of-statistics-kept 5
Step 6 frequency seconds (Optional) Sets the rate at which a specified IP SLAs HTTP
operation repeats. The default and minimum frequency
Example:
value for an IP SLAs HTTP operation is 60 seconds.
Device(config-ip-sla-http)# frequency 90
Step 7 history hours-of-statistics-kept hours (Optional) Sets the number of hours for which statistics
are maintained for an IP SLAs operation.
Example:
Device(config-ip-sla-http)# history
hours-of-statistics-kept 4
Step 8 http-raw-request (Optional) Explicitly specifies the options for a GET
request for an IP SLAs HTTP operation.
Example:
Device(config-ip-sla-http)# http-raw-request
Step 9 owner owner-id (Optional) Configures the Simple Network Management
Protocol (SNMP) owner of an IP SLAs operation.
Example:
Device(config-ip-sla-http)# owner admin
Step 10 history statistics-distribution-interval milliseconds (Optional) Sets the time interval for each statistics
distribution kept for an IP SLAs operation.
Example:
Device(config-ip-sla-http)# history
statistics-distribution-interval 10
Step 11 tag text (Optional) Creates a user-specified identifier for an IP
SLAs operation.
Example:
Device(config-ip-sla-http)# tag TelnetPollServer1
Step 12 threshold milliseconds (Optional) Sets the upper threshold value for calculating
network monitoring statistics created by an IP SLAs
Example:
operation.
Device(config-ip-sla-http)# threshold 10000
Step 13 timeout milliseconds (Optional) Sets the amount of time an IP SLAs operation
waits for a response from its request packet.
Example:
Device(config-ip-sla-http)# timeout 10000
Step 14 tos number (Optional) Defines a type of service (ToS) byte in the IP
header of an IP SLAs operation.
Example:
Device(config-ip-sla-http)# tos 160
Step 15 end Exits to privileged EXEC mode.
Example:
Device(config-ip-sla-http)# end
Configuring IP SLAs HTTP Operations
5
Configuring IP SLAs HTTP Operations
Configuring an HTTP RAW Operation on the Source Device
Configuring an HTTP RAW Operation on the Source Device
Note This operation does not require an IP SLAs Responder on the destination device.
SUMMARY STEPS
1. enable
2. configure terminal
3. ip sla operation-number
4. http {get | raw} url [name-server ip-address] [version version-number] [source-ip {ip-address |
hostname}] [source-port port-number] [cache {enable | disable}] [proxy proxy-url]
5. http-raw-request
6. Enter the required HTTP 1.0 command syntax.
7. end
DETAILED STEPS
Command or Action Purpose
Step 1 enable Enables privileged EXEC mode.
Example: • Enter your password if prompted.
Device> enable
Step 2 configure terminal Enters global configuration mode.
Example:
Device# configure terminal
Step 3 ip sla operation-number Begins configuration for an IP SLAs operation and enters
IP SLA configuration mode.
Example:
Device(config)# ip sla 10
Step 4 http {get | raw} url [name-server ip-address] [version Defines an HTTP operation.
version-number] [source-ip {ip-address | hostname}]
[source-port port-number] [cache {enable | disable}]
[proxy proxy-url]
Example:
Device(config-ip-sla)# http raw
[Link]
Step 5 http-raw-request Enters HTTP RAW configuration mode.
Example:
Device(config-ip-sla)# http-raw-request
Configuring IP SLAs HTTP Operations
6
Configuring IP SLAs HTTP Operations
Scheduling IP SLAs Operations
Command or Action Purpose
Step 6 Enter the required HTTP 1.0 command syntax. Specifies all the required HTTP 1.0 commands.
Example:
Device(config-ip-sla-http)# GET
/en/US/hmpgs/[Link] HTTP/1.0\r\n\r\n
Step 7 end Exits to privileged EXEC mode.
Example:
Device(config-ip-sla-http)# end
Scheduling IP SLAs Operations
Before you begin
• All IP Service Level Agreements (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 must be limited to
a maximum of 125 characters in length, including commas (,).
SUMMARY STEPS
1. enable
2. configure terminal
3. Enter one of the following commands:
• ip sla schedule operation-number [life {forever | seconds}] [start-time {[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 | schedule-together} [ageout seconds] frequency group-operation-frequency
[life {forever | seconds}] [start-time {hh:mm [:ss] [month day | day month] | pending | now | after
hh:mm [:ss]}]
4. end
5. show ip sla group schedule
6. show ip sla configuration
DETAILED STEPS
Command or Action Purpose
Step 1 enable Enables privileged EXEC mode.
Example: • Enter your password if prompted.
Device> enable
Configuring IP SLAs HTTP Operations
7
Configuring IP SLAs HTTP Operations
Scheduling IP SLAs Operations
Command or Action Purpose
Step 2 configure terminal Enters global configuration mode.
Example:
Device# configure terminal
Step 3 Enter one of the following commands: • Configures the scheduling parameters for an individual
IP SLAs operation.
• ip sla schedule operation-number [life {forever |
seconds}] [start-time {[hh:mm:ss] [month day | day • Specifies an IP SLAs operation group number and the
month] | pending | now | after hh:mm:ss}] [ageout range of operation numbers for a multioperation
seconds] [recurring] scheduler.
• ip sla group schedule group-operation-number
operation-id-numbers {schedule-period
schedule-period-range | schedule-together} [ageout
seconds] frequency group-operation-frequency [life
{forever | seconds}] [start-time {hh:mm [:ss] [month
day | day month] | pending | now | after hh:mm [:ss]}]
Example:
Device(config)# ip sla schedule 10 life forever
start-time now
Device(config)# ip sla group schedule 10
schedule-period frequency
Device(config)# ip sla group schedule 1 3,4,6-9
life forever start-time now
Device(config)# ip sla schedule 1 3,4,6-9
schedule-period 50 frequency range 80-100
Step 4 end Exits global configuration mode and returns to privileged
EXEC mode.
Example:
Device(config)# end
Step 5 show ip sla group schedule (Optional) Displays IP SLAs group schedule details.
Example:
Device# show ip sla group schedule
Step 6 show ip sla configuration (Optional) Displays IP SLAs configuration details.
Example:
Device# show ip sla configuration
Configuring IP SLAs HTTP Operations
8
Configuring IP SLAs HTTP Operations
Troubleshooting Tips
Troubleshooting Tips
• If the IP Service Level Agreements (SLAs) operation is not running and not generating statistics, add
the verify-data command to the configuration (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 for generating traps (or for starting another
operation) to an IP Service Level Agreements (SLAs) operation, see the “Configuring Proactive Threshold
Monitoring” section.
Configuration Examples for IP SLAs HTTP Operations
Example Configuring an HTTP GET Operation
The following example show how to create and configure operation number 8 as an HTTP GET operation.
The destination URL IP address represents the [Link] website. The following figure depicts the
HTTP GET operation.
Figure 1: HTTP Operation
Device B Configuration
ip sla 8
http get url [Link]
!
ip sla schedule 8 start-time now
Configuring IP SLAs HTTP Operations
9
Configuring IP SLAs HTTP Operations
Example Configuring an HTTP RAW Operation
Example Configuring an HTTP RAW Operation
The following example shows how to configure an HTTP RAW operation. To use the RAW commands, enter
HTTP RAW configuration mode by using the http-raw-request command in IP SLA configuration mode.
The IP SLA HTTP RAW configuration mode is indicated by the (config-ip-sla-http) router prompt.
ip sla 8
http raw url [Link]
http-raw-request
GET /en/US/hmpgs/[Link] HTTP/1.0\r\n
\r\n
end
ip sla schedule 8 life forever start-time now
Example Configuring an HTTP RAW Operation Through a Proxy Server
The following example shows how to configure an HTTP RAW operation through a proxy server. The proxy
server is [Link] and the HTTP server is [Link].
ip sla 8
http raw url [Link]
http-raw-request
GET [Link] HTTP/1.0\r\n
\r\n
end
ip sla schedule 8 life forever start-time now
Example Configuring an HTTP RAW Operation with Authentication
The following example shows how to configure an HTTP RAW operation with authentication.
ip sla 8
http raw url [Link]
http-raw-request
GET /lab/[Link] HTTP/1.0\r\n
Authorization: Basic btNpdGT4biNvoZe=\r\n
\r\n
end
ip sla schedule 8 life forever start-time now
Additional References
Related Documents
Related Topic Document Title
Cisco IOS commands Cisco IOS Master Commands List, All Releases
Cisco IOS IP SLAs commands Cisco IOS IP SLAs Command Reference
Configuring IP SLAs HTTP Operations
10
Configuring IP SLAs HTTP Operations
Feature Information for IP SLAs HTTP Operations
Standards and RFCs
Standard/RFC Title
No new or modified standards or RFCs are supported by this feature, and support for existing standards --
has not been modified by this feature.
MIBs
MIBs MIBs Link
CISCO-RTTMON-MIB To locate and download MIBs for selected platforms, Cisco IOS releases, and
feature sets, use Cisco MIB Locator found at the following URL:
[Link]
Technical Assistance
Description Link
The Cisco Support and Documentation website provides [Link]
online resources to download documentation, software,
and tools. Use these resources to install and configure
the software and to troubleshoot and resolve technical
issues with Cisco products and technologies. Access to
most tools on the Cisco Support and Documentation
website requires a [Link] user ID and password.
Feature Information for IP SLAs HTTP Operations
The following table provides release information about the feature or features described in this module. This
table lists only the software release that introduced support for a given feature in a given software release
train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support.
To access Cisco Feature Navigator, go to [Link]/go/cfn. An account on [Link] is not required.
Table 1: Feature Information for IP SLAs HTTP Operations
Feature Name Releases Feature Information
IP SLAs HTTP Operation The Cisco IOS IP SLAs Hypertext Transfer Protocol (HTTP) operation
allows you to measure the network response time between a Cisco
device and an HTTP server to retrieve a web page.
IPSLA 4.0 - IP v6 phase2 Support was added for operability in IPv6 networks. The following
commands are introduced or modified: http (IP SLA), show ip sla
configuration, show ip sla summary.
IP SLAs VRF Aware 2.0 Support was added for IP SLAs VRF-aware capabilities for TCP
connect, FTP, HTTP and DNS client operation types.
Configuring IP SLAs HTTP Operations
11
Configuring IP SLAs HTTP Operations
Feature Information for IP SLAs HTTP Operations
Configuring IP SLAs HTTP Operations
12