Guest

Cisco IOS Software Releases 12.1 T

RSVP Support for Low Latency Queueing

Table Of Contents

RSVP Support for Low Latency Queueing

Feature Overview

Benefits

Restrictions

Related Features and Technologies

Related Documents

Supported Platforms

Supported Standards, MIBs, and RFCs

Prerequisites

Configuration Tasks

Configuring Flow Classification

Enabling RSVP and WFQ

Configuring a Burst Factor

Configuring a Path

Configuring a Reservation

Verifying RSVP Support for LLQ Configuration

Monitoring and Maintaining RSVP Support for LLQ

Configuration Examples

Command Reference

ip rsvp burst policing

ip rsvp pq-profile

show ip rsvp installed

Debug Commands

debug ip rsvp traffic-control

debug ip rsvp wfq

Glossary


RSVP Support for Low Latency Queueing


This document describes the Cisco Resource Reservation Protocol (RSVP) support for the low latency queueing (LLQ) feature. It identifies the supported platforms, provides configuration examples, and lists related IOS command line interface (CLI) commands.

This document includes the following major sections:

Feature Overview

Supported Platforms

Supported Standards, MIBs, and RFCs

Prerequisites

Configuration Tasks

Monitoring and Maintaining RSVP Support for LLQ

Configuration Examples

Command Reference

Debug Commands

Glossary

Feature Overview

RSVP is a network-control protocol that provides a means for reserving network resources—primarily bandwidth—to guarantee that applications transmitting end-to-end across networks achieve the desired quality of service (QoS).

RSVP enables real-time traffic (which includes voice flows) to reserve resources necessary for low latency and bandwidth guarantees.

Voice traffic has stringent delay and jitter requirements. It must have very low delay and minimal jitter per hop to avoid degradation of end-to-end QoS. This calls for an efficient queueing implementation, such as LLQ, that can service voice traffic at almost strict priority in order to minimize delay and jitter.

RSVP uses weighted fair queueing (WFQ) to provide fairness among flows and to assign a low weight to a packet to attain priority. However, the preferential treatment provided by RSVP is insufficient to minimize the jitter because of the nature of the queueing algorithm itself. As a result, the low latency and jitter requirements of voice flows might not be met in the prior implementation of RSVP and WFQ.

RSVP provides admission control. However, to provide the bandwidth and delay guarantees for voice traffic and get admission control, RSVP must work with LLQ. The RSVP support for LLQ feature allows RSVP to classify voice flows and queue them into the priority queue (PQ) within the LLQ system while simultaneously providing reservations for nonvoice flows by getting a reserved queue.

Figure 1 shows how RSVP operates with other VoIP features, such as ip rtp priority, using the same queueing mechanism, LLQ.

Figure 1 RSVP Support for LLQ

Benefits

Admission Control Combined with Low Latency Queueing

RSVP is the only protocol that provides admission control based on the availability of network resources such as bandwidth. LLQ provides a means to forward voice traffic with strict priority ahead of other data traffic. When combined, RSVP support for LLQ provides admission control and forwards voice flows with the lowest possible latency and jitter.

Independent Transmission of Voice and Nonvoice Traffic

High priority nonvoice traffic from mission critical applications can continue to be transmitted without being adversely affected by voice traffic.

Strict Policing Capability

Nonconformant traffic receives best-effort treatment, thereby avoiding any degradation that might otherwise occur for all traffic.

Restrictions

The LLQ is not supported on any tunnels.

RSVP support for LLQ is dependent on the PQ. If LLQ is not available on any interface or platform, then RSVP support for LLQ is not available.

RSVP support for LLQ on Frame Relay permanent virtual circuits (PVCs) and Asynchronous Transfer Mode (ATM) PVCs is currently not available. Support is planned for future releases.

Related Features and Technologies

The RSVP support for LLQ feature is related to QoS features, such as low latency queueing and policing. (See the section on "Related Documents.")

Related Documents

The following documents provide additional information:

Cisco IOS Quality of Service Solutions Guide

Cisco IOS Quality of Service Solutions Command Reference

Supported Platforms

The RSVP support for the LLQ feature runs on the following platforms:

Cisco 2600 series routers

Cisco 3600 series routers (Cisco 3620, 3640, and 3660)

Cisco 3810 multiservice access concentrator

Cisco 7200 series routers

Cisco 7500 series routers

Supported Standards, MIBs, and RFCs

Standards

The RSVP support for LLQ feature supports no new or modified standards.

MIBs

RFC 2206 (RSVP Management Information Base using SMIv2)

For descriptions of supported MIBs and how to use MIBs, see the Cisco MIB web site on CCO at http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml.

RFCs

RFC 2205 (Resource Reservation Protocol)

RFC 2210 (RSVP with IETF Integrated Services)

RFC 2211 (Controlled-Load Network Element Service)

RFC 2212 (Specification of Guaranteed Quality of Service)

RFC 2215 (General Characterization Parameters for Integrated Service Network Elements)

Prerequisites

The network must support the following Cisco IOS features before RSVP support for LLQ is enabled:

Resource Reservation Protocol (RSVP)

Weighted fair queueing (WFQ) or LLQ (WFQ with PQ support)

Configuration Tasks

Figure 2 shows a sample network topology with LLQ running on each interface. This configuration guarantees QoS for voice traffic.

Figure 2 Topology Showing LLQ on Each Interface

The configuration tasks for the RSVP support for LLQ feature are as follows:

Configuring flow classification (required)

Enabling RSVP and WFQ on all appropriate interfaces (required)

Configuring a burst factor (optional)

Configuring a path (optional)

Configuring a reservation (optional)


Note If the source is incapable of supporting RSVP, then the router can proxy on behalf of the source.


Configuring Flow Classification

Command
Purpose

Router#(config)# ip rsvp pq-profile...

Specifies the criteria for determining which flows go into the PQ.


Enabling RSVP and WFQ

 
Command
Purpose

Step 1 

Router(config)# int s2/0

Enables an interface; for example, serial interface 2/0.

Step 2 

Router(config-if)# ip rsvp bandwidth...

Enables RSVP on an interface.

Step 3 

Router(config-if)# fair-queue

Enables WFQ on an interface with PQ support.

Configuring a Burst Factor

Command
Purpose

Router(config-if)# ip rsvp burst policing...

Specifies a burst factor on a per interface basis.


Configuring a Path

Command
Purpose

Router(config)# ip rsvp sender...

Specifies the RSVP path parameters, including the destination and source addresses, the protocol, the destination and source ports, the previous hop address, the average bit rate, and the burst size.


Configuring a Reservation

Command
Purpose

Router(config)# ip rsvp reservation...

Specifies the RSVP reservation parameters, including the destination and source addresses, the protocol, the destination and source ports, the next hop address, the input interface, the service type, the average bit rate, and the burst size.


Verifying RSVP Support for LLQ Configuration

To verify RSVP support for LLQ configuration, use this procedure:


Step 1 Enter the show ip rsvp installed command to display information about interfaces and their admitted reservations. This output shows that the Ethernet2/1 interface has four reservations and the Serial3/0 interface has none.

Router# show ip rsvp installed
RSVP:Ethernet2/1
BPS    To              From            Protoc DPort  Sport  Weight Conversation
44K    145.20.0.202    145.10.0.201    UDP    1000   1000   0      264
44K    145.20.0.202    145.10.0.201    UDP    1001   1001   13     266
98K    145.20.0.202    145.10.0.201    UDP    1002   1002   6      265
1K     145.20.0.202    145.10.0.201    UDP    10     10     0      264
RSVP:Serial3/0 has no installed reservations
Router#

Note Weight 0 is assigned to voice-like flows, which proceed to the PQ.


Step 2 Enter the show ip rsvp installed detail command to display additional information about interfaces and their current reservations.


Note In the following output, the first flow gets the PQ (weight = 0) while the second flow does not.


Router# show ip rsvp installed detail
RSVP:Ethernet2/1 has the following installed reservations
RSVP Reservation. Destination is 145.20.0.202, Source is 145.10.0.201,
  Protocol is UDP, Destination port is 1000, Source port is 1000
  Reserved bandwidth:44K bits/sec, Maximum burst:1K bytes, Peak rate:44K bits/sec
  Resource provider for this flow:
    WFQ on hw idb Se3/0: PRIORITY queue 264.  Weight:0, BW 44 kbps
  Conversation supports 1 reservations
  Data given reserved service:316 packets (15800 bytes)
  Data given best-effort service:0 packets (0 bytes)
  Reserved traffic classified for 104 seconds
  Long-term average bitrate (bits/sec):1212 reserved, 0M best-effort
RSVP Reservation. Destination is 145.20.0.202, Source is 145.10.0.201,
  Protocol is UDP, Destination port is 1001, Source port is 1001
  Reserved bandwidth:44K bits/sec, Maximum burst:3K bytes, Peak rate:44K bits/sec
  Resource provider for this flow:
    WFQ on hw idb Se3/0: RESERVED queue 266.  Weight:13, BW 44 kbps
  Conversation supports 1 reservations
  Data given reserved service:9 packets (450 bytes)
  Data given best-effort service:0 packets (0 bytes)
  Reserved traffic classified for 107 seconds
  Long-term average bitrate (bits/sec):33 reserved, 0M best-effort
RSVP Reservation. Destination is 145.20.0.202, Source is 145.10.0.201,
  Protocol is UDP, Destination port is 1002, Source port is 1002
Router#

Monitoring and Maintaining RSVP Support for LLQ

Command
Purpose

Router# show ip rsvp installed

Displays information about interfaces and their admitted reservations.

Router# show ip rsvp installed detail

Displays additional information about interfaces and their admitted reservations.

Router# show queue interface-type interface-number

Displays queueing configuration and statistics for a particular interface.


Configuration Examples

This section provides a configuration example for the RSVP support for LLQ feature.

In the following example, PQ parameters, including flow rate and burst factor, are defined:

Router(config)# ip rsvp pq-profile ?
  <1-1048576>  Max Flow Rate (bytes/second)
  voice-like   Voice-like flows
  <cr>

Router(config)# ip rsvp pq-profile 11000 1500 ?
  <100-4000>         Max Peak to Average Ratio (in %)
  ignore-peak-value  Ignore the flow's p/r ratio
  <cr>

Router(config)# ip rsvp pq-profile 11000 1500 ignore-peak-value
Router(config)# end

Router# sh run | include pq-profile
ip rsvp pq-profile 11000 1500 ignore-peak-value


In the following example, RSVP is enabled:

Router# conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)# int loopback 40
Router(config-if)# ip rsvp bandwidth ?
  <1-10000000>  Reservable Bandwidth(KBPS)
  <cr>

Router(config-if)# ip rsvp bandwidth 300 ?
  <1-10000000>  Largest Reservable Flow(KBPS)
  <cr>

Router(config-if)# ip rsvp bandwidth 300 30 ?
  <cr>
Router(config-if)# ip rsvp bandwidth 300 30
Router(config-if)# end


In the following example, WFQ is enabled:

Router# conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)# int e0/1
Router(config-if)# fair-queue
Router(config-if)# fair-queue 64


In the following example, a burst factor is configured:

Router(config)# int e3/0
Router(config-if)# ip rsvp burst policing 200


In the following example, a path is defined:

Router(config)# ip rsvp sender 145.20.20.202 145.10.10.201 udp 10 20
145.10.10.201 loopback 10  80 10
Router(config)#

In the following example, a reservation is defined:

Router(config)# ip rsvp reservation 145.20.20.202 145.10.10.201 udp
10 20 145.20.20.202 lo20 ff load 80 10
Router(config)#

Command Reference

This section describes the CLI commands that you can use with the RSVP support for LLQ feature:

ip rsvp burst policing

ip rsvp pq-profile

show ip rsvp installed

ip rsvp burst policing

To configure a burst factor within the RSVP token bucket policer on a per interface basis, use the ip rsvp burst policing configuration command. To return to the default value, enter the no form of this command.

ip rsvp burst policing [ factor ]

no ip rsvp burst policing

Syntax Description

factor

Indicates a burst factor value as a percentage of the receiver's requested burst.


Defaults

The default value is 200; the minimum value is 100, and the maximum value is 700.

Command Modes

Configuration

Command History

Release
Modification

12.1(3)T

This command was introduced.


Usage Guidelines

You configure the burst police factor per interface, not per flow. The burst factor controls how strictly or loosely the sender's traffic is policed with respect to burst.

The burst factor applies to all RSVP flows installed on a specific interface. You can configure each interface independently for burst policing.

Examples

Here is an example of the ip rsvp burst policing command with a burst factor of 200:

Router(config-if)# ip rsvp burst policing 200

ip rsvp pq-profile

To specify the criteria for RSVP to use to determine which flows to direct into the PQ within WFQ, use the ip rsvp pq-profile configuration command. To disable the ip rsvp pq-profile configuration command, use the no form of this command.

ip rsvp pq-profile [voice-like | r' [ b' [ p_to_r' | ignore-peak-value] ]

no ip rsvp pq-profile

Syntax Description

voice-like

Indicates pq-profile parameters sufficient for most voice flows. The default values (shown below) for r', b', and p_to_r' are used. These values should cause all voice flows generated from Cisco IOS applications and most voice flows from other RSVP applications, such as Microsoft NetMeeting, to be directed into the PQ.

r'

Indicates maximum rate of a flow in bytes/second. Valid range is 1 to 1048576 bytes/second.; default is 12288 bytes/second.

b'

Indicates maximum burst of a flow in bytes. Valid range is 1 to 8192 bytes; default is 592 bytes.

p_to_r'

Indicates maximum ratio of peak rate to average rate as a percentage. Valid range is 100 to 4000 percent; default is 110 percent.

ignore-peak-value

Indicates that the flow's p/r ratio is not evaluated when RSVP identifies flows.


RSVP recognizes voice flows based upon the r, b, and p values within a receiver's flowspec. A reserved flow is granted the PQ as long as the receiver's flowspec parameters meet the following default criteria:

(r <= r') AND (b <= b') AND (p/r <= p_to_r')

Defaults

Default values for r', b', and p_to_r' are shown in the preceding table in the "Syntax Description" section.

Command Modes

Configuration

Command History

Release
Modification

12.1(3)T

This command was introduced.


Usage Guidelines

Use this command to define the profile of RSVP flows to be placed in the PQ within the WFQ system. You can have only one profile in effect at a time. Changes to this configuration affect only new flows, not existing flows.

This command applies only on interfaces that are running RSVP and WFQ.

Examples

In the following example, voice-like flows (with the default criteria for voice) are put into the PQ:

Router(config)# ip rsvp pq-profile
Router(config)# ip rsvp pq-profile voice-like
Router(config)# ip rsvp pq-profile 12288 592 110
Router(config)# default ip rsvp pq-profile
Router# show run | include pq-profile

In the following example, all flows matching the voice criteria are put into the PQ:

Router(config)# ip rsvp pq-profile 10240 512 100
Router# show run | include pq-profile
ip rsvp pq-profile 10240 512 100

In the following example, no flows are put into the PQ:

Router(config)# no ip rsvp pq-profile
Router# show run | include pq-profile
no ip rsvp pq-profile

In the following example, flows with the criteria given for r' and b' and the default value for p_to_r' are put into the PQ:

Router(config)# ip rsvp pq-profile 9000 300
Router# show run | include pq-profile
ip rsvp pq-profile 9000 300 110

In the following example, flows with the criteria given for r' and b' and ignoring the flow's peak value are put into the PQ:

Router(config)# ip rsvp pq-profile 9000 300 ignore-peak-value
Router# show run | include pq-profile
ip rsvp pq-profile 9000 300 ignore-peak-value

In the following example, Microsoft NetMeeting voice flows with G.711 or adaptive differential pulse code modulation (ADPCM) codecs are put into the PQ:

Router(config)# ip rsvp pq-profile 10200 1200

show ip rsvp installed

To display information about interfaces and their admitted reservations, use the show ip rsvp installed EXEC command.

show ip rsvp installed [detail]

Syntax Description

detail

(Optional) Specifies additional information about interfaces and their reservations.


Defaults

No default behavior or values.

Command Modes

EXEC

Command History

Release
Modification

11.2

This command was introduced.


Usage Guidelines

The show ip rsvp installed command displays information about interfaces and their reservations. Enter the optional keyword, detail, for additional information, including the reservation's traffic parameters, downstream hop, and resources used by RSVP to ensure QoS for this reservation.

Examples

Here is sample output from the show ip rsvp installed command:

Router# show ip rsvp installed
RSVP:Ethernet2/1
BPS    To              From            Protoc Dport  Sport  Weight Conversation
44K    145.20.0.202    145.10.0.201    UDP    1000   1000   0      264
44K    145.20.0.202    145.10.0.201    UDP    1001   1001   13     266
98K    145.20.0.202    145.10.0.201    UDP    1002   1002   6      265
1K     145.20.0.202    145.10.0.201    UDP    10     10     0      264
RSVP:Serial3/0 has no installed reservations
Router#

Table 1 Command Field Descriptions

Field
Description

BPS

Bits per second; reserved rate of reservation.

To

The session's (receiver's) IP address.

From

The sender's IP address.

Protoc

The protocol used by the sender.

Dport

Destination port; session.

Sport

Source port; sender.

Weight

Weight assigned to the reservation; 0 = PQ.

Conversation

Traffic stream number.


Related Commands

Command
Description

ip rsvp burst policing

Configures a burst factor.


Debug Commands

This section describes the new or modified debug commands that are related to the RSVP support for the LLQ feature:

debug ip rsvp traffic-control

debug ip rsvp wfq


Note You can use debug ip rsvp traffic-control and debug ip rsvp wfq simultaneously. Use the show debug command to see which debugging commands are enabled.


debug ip rsvp traffic-control

To display debug messages for traffic control, use the debug ip rsvp traffic-control EXEC command. To disable the debug ip rsvp traffic-control command, use the no form of this command.

[no] debug ip rsvp traffic-control

Syntax Description

This command has no arguments or keywords.

Defaults

No default behavior or values.

Command History

Release
Modification

12.0

This command was introduced.


Examples

Here is an example of output from the debug ip rsvp traffic-control command:

Router# debug ip rsvp traffic-control
RSVP debugging is on
Router# sh debugging
IP RSVP debugging is on
IP RSVP debugging (Traffic Control events) is on
Router#
03:03:56:RSVP-TC:Attempting to remove QoS for rsb 6268A538
03:03:56:RSVP-TC:tcsb 00001A01 found for rsb 6268A538
03:03:56:RSVP-TC:Deleting tcsb 00001A01
03:04:15:RSVP-TC:Attempting to install QoS for rsb 6268A538
03:04:15:RSVP-TC:Adding new tcsb 00001E01 for rsb 6268A538
03:04:15:RSVP-TC:Assigning WFQ QoS to tcsb 00001E01
03:04:15:RSVP-TC:Consulting policy for tcsb 00001E01
03:04:15:RSVP-TC:Policy granted QoS for tcsb 00001E01
03:04:15:RSVP-TC:Requesting QoS for tcsb 00001E01
03:04:15:RSVP-TC:   ( r = 12500      bytes/s   M = 1514       bytes
03:04:15:RSVP-TC:     b = 1000       bytes     m = 0          bytes )
03:04:15:RSVP-TC:     p = 12500      bytes/s   Service Level = non-priority
03:04:15:RSVP-TC:Allocation succeeded for tcsb 00001E01

Related Commands

Command
Description

show debug

Displays active debug output.


debug ip rsvp wfq

To display debug messages for the weighted fair queue (WFQ), use the debug ip rsvp wfq EXEC command. To disable the debug ip rsvp wfq command, use the no form of this command.

[no] debug ip rsvp wfq

Syntax Description

This command has no arguments or keywords.

Defaults

No default behavior or values.

Command History

Release
Modification

12.1(3)T

This command was introduced.


Examples

Here is an example of output from the debug ip rsvp wfq command:

Router# sh debugging

Router# debug ip rsvp wfq
RSVP debugging is on
Router# sh debugging
IP RSVP debugging is on
IP RSVP debugging (Traffic Control events) is on
IP RSVP debugging (WFQ events) is on
Router#
03:03:23:RSVP-TC:Attempting to install QoS for rsb 6268A538
03:03:23:RSVP-TC:Adding new tcsb 00001A01 for rsb 6268A538
03:03:23:RSVP-TC:Assigning WFQ QoS to tcsb 00001A01
03:03:23:RSVP-TC:Consulting policy for tcsb 00001A01
03:03:23:RSVP-TC:Policy granted QoS for tcsb 00001A01
03:03:23:RSVP-TC:Requesting QoS for tcsb 00001A01
03:03:23:RSVP-TC:   ( r = 12500      bytes/s   M = 1514       bytes
03:03:23:RSVP-TC:     b = 1000       bytes     m = 0          bytes )
03:03:23:RSVP-TC:     p = 12500      bytes/s   Service Level = non-priority
03:03:23:RSVP-WFQ:Requesting a RESERVED queue on Et0/1 for tcsb 00001A01
03:03:23:RSVP-WFQ:Queue 265 allocated for tcsb 00001A01
03:03:23:RSVP-TC:Allocation succeeded for tcsb 00001A01
Router#
Router# no debug ip rsvp
RSVP debugging is off

Related Commands

Command
Description

show debug

Displays active debug output.


Glossary

admission control—The process in which an RSVP reservation is accepted or rejected based on end-to-end available network resources.

ADPCM—Adaptive differential pulse code modulation. A process by which analog voice samples are encoded into high-quality digital signals.

bandwidth— The difference between the highest and lowest frequencies available for network signals. This term also describes the rated throughput capacity of a given network medium or protocol.

burst—In data communications, a sequence of signals counted as one unit in accordance with some specific criterion or measure.

bursty traffic—A data communications term referring to an uneven pattern of data transmission.

codec—A software algorithm used to compress/decompress speech or audio signals.

flow—A stream of data traveling between two endpoints across a network (for example, from one LAN station to another). Multiple flows can be transmitted on a single circuit.

flowspec—In IPv6, the traffic parameters of a stream of IP packets between two applications.

G.711—This term describes the 64-kbps pulse code modulation (PCM) voice coding technique. In G.711, encoded voice is already in the correct format for digital voice delivery in the public switched telephone network (PSTN) or through private branch exchanges (PBXs).

jitter—An analog communication line distortion caused by the variation of a signal from its reference timing positions. Jitter can cause data loss, particularly at high speeds.

latency—The delay between the time a device receives a packet and the time that packet is forwarded out the destination port.

PQ—Priority queue. A routing feature in which frames in an output queue are prioritized based on various characteristics such as packet size and interface type.

priority queue—See PQ.

QoS—Quality of service. A measure of performance for a transmission system that reflects its transmission quality and service availability.

quality of service—See QoS.

Resource Reservation Protocol—See RSVP.

RSVP—Resource Reservation Protocol. A protocol for reserving network resources to provide quality of service guarantees to application flows.

token bucket—A formal definition of a rate of transfer. A token bucket has three components: a burst size, a mean rate, and a time interval (Tc). A token bucket is used to manage a device that regulates a flow's data.

Voice over IP—See VoIP.

VoIP—Voice over IP. The ability to carry normal telephony-style voice over an IP-based internet maintaining telephone-like functionality, reliability, and voice quality.

Weighted Fair Queueing—See WFQ.

WFQ—Weighted fair queueing. A queue management algorithm that provides a certain fraction of link bandwidth to each of several queues, based on relative bandwidth applied to each of the queues.