Cisco IOS Quality of Service Solutions Command Reference, Release 12.2
Commands: fair-queue aggregate-limit -- ip nbar pdlm

Table Of Contents

fair-queue aggregate-limit

fair-queue individual-limit

fair-queue limit

fair-queue qos-group

fair-queue tos

fair-queue weight

frame-relay interface-queue priority

frame-relay ip rtp priority

ip nbar pdlm


fair-queue aggregate-limit

To set the maximum number of packets in all queues combined for VIP-distributed weighted fair queueing (DWFQ), use the fair-queue aggregate-limit interface configuration command. To return the value to the default, use the no form of this command.

fair-queue aggregate-limit aggregate-packets

no fair-queue aggregate-limit

Syntax Description

aggregate-packets

Total number of buffered packets allowed before some packets may be dropped. Below this limit, packets will not be dropped.


Defaults

The total number of packets allowed is based on the transmission rate of the interface and the available buffer space on the Versatile Interface Processor (VIP).

Command Modes

Interface configuration

Command History

Release
Modification

11.1 CC

This command was introduced.


Usage Guidelines

In general, you should not change the maximum number of packets allows in all queues from the default. Use this command only if you have determined that you would benefit from using a different value, based on your particular situation.

DWFQ keeps track of the number of packets in each queue and the total number of packets in all queues.

When the total number of packets is below the aggregate limit, queues can buffer more packets than the individual queue limit.

When the total number of packets reaches the aggregate limit, the interface starts enforcing the individual queue limits. Any new packets that arrive for a queue that is over its individual queue limit are dropped. Packets that are already in the queue will not be dropped, even if the queue is over the individual limit.

In some cases, the total number of packets in all queues put together may exceed the aggregate limit.

Examples

The following example sets the aggregate limit to 54 packets:

interface Fddi9/0/0
 fair-queue tos
 fair-queue aggregate-limit 54

Related Commands

Command
Description

fair-queue limit

Sets the maximum queue depth for a specific DWFQ class.

fair-queue qos-group

Enables DWFQ and classifies packets based on the internal QoS-group number.

fair-queue tos

Enables DWFQ and classifies packets using the ToS field of packets.

show interfaces

Displays statistics for all interfaces configured on the router or access server.

show interfaces fair-queue

Displays information and statistics about WFQ for a VIP-based interface.


fair-queue individual-limit

To set the maximum individual queue depth for VIP-distributed weighted fair queueing (DWFQ), use the fair-queue individual-limit interface configuration command. To return the value to the default, use the no form of this command.

fair-queue individual-limit individual-packet

no fair-queue individual-limit

Syntax Description

individual-packet

Maximum number of packets allowed in each per-flow or per-class queue during periods of congestion.


Defaults

Half of the aggregate queue limit

Command Modes

Interface configuration

Command History

Release
Modification

11.1 CC

This command was introduced.


Usage Guidelines

In general, you should not change the maximum individual queue depth from the default. Use this command only if you have determined that you would benefit from using a different value, based on your particular situation.

DWFQ keeps track of the number of packets in each queue and the total number of packets in all queues.

When the total number of packets is below the aggregate limit, queues can buffer more packets than the individual queue limit.

When the total number of packets reaches the aggregate limit, the interface starts enforcing the individual queue limits. Any new packets that arrive for a queue that is over its individual queue limit are dropped. Packets that are already in the queue will not be dropped, even if the queue is over the individual limit.

In some cases, the total number of packets in all queues put together may exceed the aggregate limit.

Examples

The following example sets the individual queue limit to 27:

interface Fddi9/0/0
 mac-address 0000.0c0c.2222
 ip address 10.1.1.1 255.0.0.0
 fair-queue tos
 fair-queue individual-limit 27

Related Commands

Command
Description

fair-queue aggregate-limit

Sets the maximum number of packets in all queues combined for DWFQ.

fair-queue limit

Sets the maximum queue depth for a specific DWFQ class.

fair-queue qos-group

Enables DWFQ and classifies packets based on the internal QoS-group number.

fair-queue tos

Enables DWFQ and classifies packets using the ToS field of packets.

show interfaces

Displays statistics for all interfaces configured on the router or access server.

show interfaces fair-queue

Displays information and statistics about WFQ for a VIP-based interface.


fair-queue limit

To set the maximum queue depth for a specific VIP-distributed weighted fair queueing (DWFQ) class, use the fair-queue limit interface configuration command. To return the value to the default, use the no form of this command.

fair-queue {qos-group number | tos number} limit class-packet

no fair-queue {qos-group number | tos number} limit class-packet

Syntax Description

qos-group number

Number of the QoS group, as assigned by a committed access rate (CAR) policy or the Policy Propagation via Border Gateway Protocol (BGP) feature. The value can range from 1 to 99.

tos number

Two low-order IP Precedence bits of the type of service (ToS) field.

class-packet

Maximum number of packets allowed in the queue for the class during periods of congestion.


Defaults

The individual queue depth, as specified by the fair-queue individual-limit command. If the fair-queue individual-limit command is not configured, the default is half of the aggregate queue limit.

Command Modes

Interface configuration

Command History

Release
Modification

11.1 CC

This command was introduced.


Usage Guidelines

Use this command to specify the number queue depth for a particular class for class-based DWFQ. This command overrides the global individual limit specified by the fair-queue individual-limit command.

In general, you should not change this value from the default. Use this command only if you have determined that you would benefit from using a different value, based on your particular situation.

Examples

The following example sets the individual queue limit for ToS group 3 to 20:

interface Fddi9/0/0
 mac-address 0000.0c0c.2222
 ip address 10.1.1.1 255.0.0.0
 fair-queue tos
 fair-queue tos 3 limit 20

Related Commands

Command
Description

fair-queue aggregate-limit

Sets the maximum number of packets in all queues combined for DWFQ.

fair-queue qos-group

Enables DWFQ and classifies packets based on the internal QoS-group number.

fair-queue tos

Enables DWFQ and classifies packets using the ToS field of packets.

show interfaces

Displays statistics for all interfaces configured on the router or access server.

show interfaces fair-queue

Displays information and statistics about WFQ for a VIP-based interface.


fair-queue qos-group

To enable VIP-distributed weighted fair queueing (DWFQ) and classify packets based on the internal QoS-group number, use the fair-queue qos-group interface configuration command. To disable QoS-group-based DWFQ, use the no form of this command.

fair-queue qos-group

no fair-queue qos-group

Syntax Description

This command has no arguments or keywords.

Defaults

Disabled

Command Modes

Interface configuration

Command History

Release
Modification

11.1 CC

This command was introduced.


Usage Guidelines

Use this command to enable QoS-group-based DWFQ, a type of class-based DWFQ. Class-based DWFQ overrides flow-based DWFQ. Therefore, this command overrides the fair-queue (DWFQ) command.

When this command is enabled, packets are assigned to different queues based on their QoS group. A QoS group is an internal classification of packets used by the router to determine how packets are treated by certain QoS features, such as DWFQ and committed access rate (CAR). Use a CAR policy or the QoS Policy Propagation via Border Gateway Protocol (BGP) feature to assign packets to QoS groups.

Specify a weight for each class. In periods of congestion, each group is allocated a percentage of the output bandwidth equal to the weight of the class. For example, if a class is assigned a weight of 50, packets from this class are allocated at least 50 percent of the outgoing bandwidth during periods of congestion.

Examples

The following example enables QoS-based DWFQ and allocates bandwidth for nine QoS groups (QoS groups 0 through 8):

interface Hssi0/0/0
 description 45Mbps to R2
 ip address 10.200.14.250 255.255.255.252
 fair-queue qos-group
 fair-queue qos-group 1 weight 5
 fair-queue qos-group 2 weight 5
 fair-queue qos-group 3 weight 10
 fair-queue qos-group 4 weight 10
 fair-queue qos-group 5 weight 10
 fair-queue qos-group 6 weight 15
 fair-queue qos-group 7 weight 20
 fair-queue qos-group 8 weight 29

Related Commands

Command
Description

fair-queue aggregate-limit

Sets the maximum number of packets in all queues combined for DWFQ.

fair-queue limit

Sets the maximum queue depth for a specific DWFQ class.

fair-queue tos

Enables DWFQ and classifies packets using the ToS field of packets.

fair-queue weight

Assigns a weight to a class for DWFQ.

show interfaces

Displays statistics for all interfaces configured on the router or access server.

show interfaces fair-queue

Displays information and statistics about WFQ for a VIP-based interface.


fair-queue tos

To enable VIP-distributed weighted fair queueing (DWFQ) and classify packets using the type of service (ToS) field of packets, use the fair-queue tos interface configuration command. To disable ToS-based DWFQ, use the no form of this command.

fair-queue tos

no fair-queue tos

Syntax Description

This command has no arguments or keywords.

Defaults

Disabled

By default, class 0 is assigned a weight of 10; class 1 is assigned a weight of 20; class 2 is assigned a weight of 30; and class 3 is assigned a weight of 40.

Command Modes

Interface configuration

Command History

Release
Modification

11.1 CC

This command was introduced.


Usage Guidelines

Use this command to enable ToS-based DWFQ, a type of class-based DWFQ. Class-based DWFQ overrides flow-based DWFQ. Therefore, this command overrides the fair-queue (DWFQ) command.

When this command is enabled, packets are assigned to different queues based on the two low-order IP Precedence bits in the ToS field of the packet header.

In periods of congestion, each group is allocated a percentage of the output bandwidth equal to the weight of the class. For example, if a class is assigned a weight of 50, packets from this class are allocated at least 50 percent of the outgoing bandwidth during periods of congestion.

If you wish to change the weights, use the fair-queue weight command.

Examples

The following example enables ToS-based DWFQ on the High-Speed Serial Interface (HSSI) interface 0/0/0:

interface Hssi0/0/0
 description 45Mbps to R2
 ip address 10.200.14.250 255.255.255.252
 fair-queue
 fair-queue tos

Related Commands

Command
Description

fair-queue aggregate-limit

Sets the maximum number of packets in all queues combined for DWFQ.

fair-queue limit

Sets the maximum queue depth for a specific DWFQ class.

fair-queue qos-group

Enables DWFQ and classifies packets based on the internal QoS-group number.

fair-queue weight

Assigns a weight to a class for DWFQ.

show interfaces

Displays statistics for all interfaces configured on the router or access server.

show interfaces fair-queue

Displays information and statistics about WFQ for a VIP-based interface.


fair-queue weight

To assign a weight to a class for VIP-distributed weighted fair queueing (DWFQ), use the fair-queue weight interface configuration command. To remove the bandwidth allocated for the class, use the no form of this command.

fair-queue {qos-group number | tos number} weight weight

no fair-queue {qos-group number | tos number} weight weight

Syntax Description

qos-group number

Number of the QoS group, as assigned by a committed access rate (CAR) policy or the Policy Propagation via Border Gateway Protocol (BGP) feature. The value range is from 1 to 99.

tos number

Two low-order IP Precedence bits of the type of service (ToS) field. The value range is from 1 to 3.

weight

Percentage of the output link bandwidth allocated to this class. The sum of weights for all classes cannot exceed 99.


Defaults

For QoS DWFQ, unallocated bandwidth is assigned to QoS group 0.

For ToS-based DWFQ, class 0 is assigned a weight of 10; class 1 is assigned a weight of 20; class 2 is assigned a weight of 30; and class 3 is assigned a weight of 40.

Command Modes

Interface configuration

Command History

Release
Modification

11.1 CC

This command was introduced.


Usage Guidelines

Use this command to allocate percentages of bandwidth for specific DWFQ classes. You must also enable class-based DWFQ on the interface with either the fair-queue qos-group or fair-queue tos command.

Enter this command once for every class to allocate bandwidth to the class.

For QoS-group-based DWFQ, packets that are not assigned to any QoS groups are assigned to QoS group 0. When assigning weights to QoS group class, remember the following guidelines:

1 percent of the available bandwidth is automatically allocated to QoS group 0.

The total weight for all the other QoS groups combined cannot exceed 99.

Any unallocated bandwidth is assigned to QoS group 0.

For ToS-based DWFQ, remember the following guidelines:

1 percent of the available bandwidth is automatically allocated to ToS class 0.

The total weight for all the other ToS classes combined cannot exceed 99.

Any unallocated bandwidth is assigned to ToS class 0.

Examples

The following example allocates bandwidth to different QoS groups. The remaining bandwidth (5 percent) is allocated to QoS group 0.

interface Fddi9/0/0
 fair-queue qos-group
 fair-queue qos-group 1 weight 10
 fair-queue qos-group 2 weight 15
 fair-queue qos-group 3 weight 20
 fair-queue qos-group 4 weight 20
 fair-queue qos-group 5 weight 30

Related Commands

Command
Description

fair-queue qos-group

Enables DWFQ and classifies packets based on the internal QoS-group number.

fair-queue tos

Enables DWFQ and classifies packets using the ToS field of packets.

show interfaces

Displays statistics for all interfaces configured on the router or access server.

show interfaces fair-queue

Displays information and statistics about WFQ for a VIP-based interface.


frame-relay interface-queue priority

To enable the Frame Relay PVC Interface Priority Queueing (FR PIPQ) feature, use the frame-relay interface-queue priority interface configuration command. To disable FR PIPQ, use the no form of this command.

frame-relay interface-queue priority [high-limit medium-limit normal-limit low-limit]

no frame-relay interface-queue priority

To assign priority to a permanent virtual circuit (PVC) within a Frame Relay map class, use the frame-relay interface-queue priority map-class configuration command. To remove priority from a PVC within a Frame Relay map class, use the no form of this command.

frame-relay interface-queue priority {high | medium | normal | low}

no frame-relay interface-queue priority

Syntax Description

high-limit

(Optional) Size of the high priority queue specified in maximum number of packets.

medium-limit

(Optional) Size of the medium priority queue specified in maximum number of packets.

normal-limit

(Optional) Size of the normal priority queue specified in maximum number of packets.

low-limit

(Optional) Size of the low priority queue specified in maximum number of packets.

high

Assigns high priority to a PVC.

medium

Assigns medium priority to a PVC.

normal

Assigns normal priority to a PVC.

low

Assigns low priority to a PVC.


Defaults

The default sizes of the high, medium, normal, and low priority queues are 20, 40, 60, and 80 packets, respectively.

When FR PIPQ is enabled on the interface, the default PVC priority is normal priority.

Command Modes

Interface configuration

Map-class configuration

Command History

Release
Modification

12.1(2)T

This command was introduced.


Usage Guidelines

FR PIPQ must be enabled on the interface in order for the map-class configuration of PVC priority to be effective.

Before you configure FR PIPQ using the frame-relay interface-queue priority command, the following conditions must be met:

PVCs should be configured to carry a single type of traffic.

The network should be configured with adequate call admission control to prevent starvation of any of the priority queues.

You will not be able to configure FR PIPQ if any queueing other than first-in first out (FIFO) queueing is already configured at the interface level. You will be able to configure FR PIPQ when weighted fair queueing (WFQ) is in use, as long as WFQ is the default interface queueing method. Disabling FR PIPQ will restore the interface to dual FIFO queueing if FRF.12 is enabled, FIFO queueing if Frame Relay Traffic Shaping (FRTS) is enabled, or the default queueing method for the interface.

Examples

In the following example, FR PIPQ is enabled on serial interface 0, and the limits of the high, medium, normal, and low priority queues are set to 10, 20, 30, and 40 packets, respectively. PVC 100 is assigned high priority, so all traffic destined for PVC 100 will be sent to the high priority interface queue.

interface serial0
  encapsulation frame-relay
  frame-relay interface-queue priority 10 20 30 40
  frame-relay interface-dlci 100
   class high_priority_class
 !
 map-class frame-relay high_priority_class
  frame-relay interface-queue priority high

Related Commands

Command
Description

debug priority

Displays priority queueing events.

show frame-relay pvc

Displays statistics about PVCs for Frame Relay interfaces.

show interfaces

Displays statistics for all interfaces configured on the router or access server.

show queue

Displays the contents of packets inside a queue for a particular interface or VC.

show queueing

Lists all or selected configured queueing strategies.


frame-relay ip rtp priority

To reserve a strict priority queue on a Frame Relay permanent virtual circuit (PVC) for a set of Real-Time Transport Protocol (RTP) packet flows belonging to a range of User Datagram Protocol (UDP) destination ports, use the frame-relay ip rtp priority map-class configuration command. To disable the strict priority queue, use the no form of this command.

frame-relay ip rtp priority starting-rtp-port-number port-number-range bandwidth

no frame-relay ip rtp priority

Syntax Description

starting-rtp-port-number

The starting UDP port number. The lowest port number to which the packets are sent.

port-number-range

The range of UDP destination ports. Number, which added to the starting-rtp-port-number argument, yields the highest UDP port number.

bandwidth

Maximum allowed bandwidth, in kbps.


Defaults

This command has no default behavior or values.

Command Modes

Map-class configuration

Command History

Release
Modification

12.0(7)T

This command was introduced.


Usage Guidelines

This command is most useful for voice applications, or other applications that are delay-sensitive. To use this command, you must first enter the map-class frame-relay command. After the Frame Relay map class has been configured, it must then be applied to a PVC.

This command extends the functionality offered by the ip rtp priority command by supporting Frame Relay PVCs. The command allows you to specify a range of UDP ports whose voice traffic is guaranteed strict priority service over any other queues or classes using the same output interface. Strict priority means that if packets exist in the priority queue, they are dequeued and sent first—that is, before packets in other queues are dequeued.

Frame Relay Traffic Shaping (FRTS) and Frame Relay Fragmentation (FRF.12) must be configured before the frame-relay ip rtp priority command is used.

Compressed RTP (CRTP) can be used to reduce the bandwidth required per voice call. When using CRTP with Frame Relay, you must use the encapsulation frame-relay cisco command instead of the encapsulation frame-relay ietf command.

Remember the following guidelines when configuring the bandwidth parameter:

It is always safest to allocate to the priority queue slightly more than the known required amount of bandwidth, to allow room for network bursts.

The IP RTP Priority admission control policy takes RTP header compression into account. Therefore, while configuring the bandwidth parameter of the ip rtp priority command you need to configure only for the bandwidth of the compressed call. Because the bandwidth parameter is the maximum total bandwidth, you need to allocate enough bandwidth for all calls if there will be more than one call.

Configure a bandwidth that allows room for Layer 2 headers. The bandwidth allocation takes into account the payload plus the IP, UDP, and RTP headers but does not account for Layer 2 headers. Allowing 25 percent bandwidth for other overhead is conservative and safe.

The sum of all bandwidth allocation for voice and data flows on an interface cannot exceed 75 percent of the total available bandwidth, unless you change the default maximum reservable bandwidth. To change the maximum reservable bandwidth, use the max-reserved-bandwidth command on the interface.

For more information on IP RTP Priority bandwidth allocation, refer to the section "IP RTP Priority" in the chapter "Congestion Management Overview" in the Cisco IOS Quality of Service Solutions Configuration Guide.

Examples

The following example first configures the Frame Relay map class called voip and then applies the map class to PVC 100 to provide strict priority service to matching RTP packets:

map-class frame-relay voip
 frame-relay cir 256000
 frame-relay bc 2560
 frame-relay be 600
 frame-relay mincir 256000
 no frame-relay adaptive-shaping
 frame-relay fair-queue
 frame-relay fragment 250
 frame-relay ip rtp priority 16384 16380 210

interface Serial5/0
 ip address 10.10.10.10 255.0.0.0
 no ip directed-broadcast
 encapsulation frame-relay
 no ip mroute-cache
 load-interval 30
 clockrate 1007616
 frame-relay traffic-shaping
 frame-relay interface-dlci 100
  class voip
 frame-relay ip rtp header-compression
 frame-relay intf-type dce

In this example, RTP packets on PVC 100 with UDP ports in the range from 16384 to 32764 (32764 = 16384 + 16380) will be matched and given strict priority service.

Related Commands

Command
Description

encapsulation frame-relay

Enables Frame Relay encapsulation.

ip rtp priority

Reserves a strict priority queue for a set of RTP packet flows belonging to a range of UDP destination ports.

map-class frame-relay

Specifies a map class to define QoS values for an SVC.

max-reserved-bandwidth

Changes the percent of interface bandwidth allocated for CBWFQ, LLQ, and IP RTP Priority.

priority

Gives priority to a class of traffic belonging to a policy map.

show frame-relay pvc

Displays statistics about PVCs for Frame Relay interfaces.

show queue

Displays the contents of packets inside a queue for a particular interface or VC.

show traffic-shape queue

Displays information about the elements queued by traffic shaping at the interface level or the DLCI level.


ip nbar pdlm

To extend or enhance the list of protocols recognized by Network-Based Application Recognition (NBAR) through a Cisco-provided Packet Description Language Module (PDLM), use the ip nbar pdlm global configuration command. To unload a PDLM if it was previously loaded, use the no form of this command.

ip nbar pdlm pdlm-name

no ip nbar pdlm pdlm-name

Syntax Description

pdlm-name

The URL where the PDLM can be found on the Flash card.


Defaults

This command has no default behavior or values.

Command Modes

Global configuration

Command History

Release
Modification

12.0(5)XE2

This command was introduced.

12.1(1)E

This command was integrated into Cisco IOS Release 12.1(1)E.

12.1(5)T

This command was integrated into Cisco IOS Release 12.1(5)T.


Usage Guidelines

This command is used in global configuration mode to extend the list of protocols recognized by a given version of NBAR or to enhance an existing protocol recognition capability. NBAR can be given an external PDLM at run time. In most cases, the PDLM enables NBAR to recognize new protocols without requiring a new Cisco IOS image or a router reload. Only Cisco can provide you with a new PDLM.

A list of the available PDLMs can be viewed online at Cisco.com.

Examples

The following example configures NBAR to load the citrix.pdlm PDLM from Flash memory on the router:

ip nbar pdlm flash://citrix.pdlm

Related Commands

Command
Description

show ip nbar pdlm

Displays the current PDLM in use by NBAR.