QoS: Congestion Management Configuration Guide, Cisco IOS XE Release 3S
Configuring Custom Queueing
Downloads: This chapterpdf (PDF - 1.26MB) The complete bookPDF (PDF - 2.82MB) | The complete bookePub (ePub - 368.0KB) | Feedback

Configuring Custom Queueing

Configuring Custom Queueing

This module describes the tasks for configuring QoS custom queueing (CQ) on a router.


Note


CQ is not supported on any tunnels.


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 at the end of this module.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/​go/​cfn. An account on Cisco.com is not required.

Custom Queueing Configuration Task List

You must follow certain required, basic steps to enable CQ for your network. In addition, you can choose to assign packets to custom queues based on protocol type, interface where the packets enter the router, or other criteria you specify.

CQ allows a fairness not provided with priority queueing (PQ). With CQ, you can control the available bandwidth on an interface when it is unable to accommodate the aggregate traffic enqueued. Associated with each output queue is a configurable byte count, which specifies how many bytes of data should be delivered from the current queue by the system before the system moves on to the next queue. When a particular queue is being processed, packets are sent until the number of bytes sent exceeds the queue byte count defined by the queue-list queue byte-count command (see the following section Specifying the Maximum Size of the Custom Queues), or until the queue is empty.

To configure CQ, perform the tasks described in the following sections.

Specifying the Maximum Size of the Custom Queues

Command

Purpose

Router(config)# queue-list list-number queue queue-number limit limit-number

Specifies the maximum number of packets allowed in each of the custom queues. The limit-numbe r argument specifies the number of packets that can be queued at any one time. The range is from 0 to 32767. The default is 20.

Router(config)# queue-list list-number queue queue-number byte-count byte-count-number

Designates the average number of bytes forwarded per queue. The byte-count-number argument specifies the average number of bytes the system allows to be delivered from a given queue during a particular cycle.

Assigning Packets to Custom Queues

Command

Purpose

Router(config)# queue-list list-number protocol protocol-name queue-number queue-keyword keyword-value

Establishes queueing priorities based on the protocol type.

Note   

All protocols supported by Cisco are allowed. The queue-keyword variable provides additional options, including byte count, TCP service and port number assignments, and AppleTalk, IP, IPX, VINES, or XNS access list assignments.

Note   

When you use multiple rules, remember that the system reads the queue-list commands in order of appearance.

Router(config)# queue-list list-number interface interface-type interface-number queue-number

Establishes CQ based on packets entering from a given interface.

Router(config)# queue-list list-number default queue-number

Assigns a queue number for those packets that do not match any other rule in the custom queue list.

Defining the Custom Queue List

SUMMARY STEPS

    1.    Router(config)# interfaceinterface-type interface-number

    2.    Router(config-if)# custom-queue-listlist


DETAILED STEPS
     Command or ActionPurpose
    Step 1 Router(config)# interfaceinterface-type interface-number 

    Specifies the interface, and then enters interface configuration mode.

     
    Step 2 Router(config-if)# custom-queue-listlist 

    Assigns a custom queue list to the interface. The list argument is any number from 1 to 16. There is no default assignment.

    Note   

    Use the custom-queue-listcommand in place of the priority-list command. Only one queue list can be assigned per interface.

     

    Monitoring Custom Queue Lists

    Command

    Purpose

    Router# show queue interface-type interface-number
    

    Displays the contents of packets inside a queue for a particular interface or virtual circuit (VC).

    Router# show queueing custom

    Displays the status of the CQ lists.

    Router# show interfaces interface-type interface-number
    

    Displays the current status of the custom output queues when CQ is enabled.

    Custom Queueing Configuration Examples

    Example Custom Queue List Defined

    The following example illustrates how to assign custom queue list number 3 to serial interface 0:

    interface serial 0
    custom-queue-list 3

    Examples Maximum Specified Size of the Custom Queues

    The following example specifies the maximum number of packets allowed in each custom queue. The queue length of queue 10 is increased from the default 20 packets to 40 packets.

    queue-list 3 queue 10 limit 40
    

    The queue length limit is the maximum number of packets that can be enqueued at any time, with the range being from 0 to 32767 queue entries.

    The following example decreases queue list 9 from the default byte count of 1500 to 1400 for queue number 10:

    queue-list 9 queue 10 byte-count 1400
    

    The byte count establishes the lowest number of bytes the system allows to be delivered from a given queue during a particular cycle.

    Examples Packets Assigned to Custom Queues

    The following examples assign packets to custom queues by either protocol type or interface type, and the default assignment for unmatched packets.

    Protocol Type

    The following example assigns traffic that matches IP access list 10 to queue number 1:

    queue-list 1 protocol ip 1 list 10
    

    The following example assigns Telnet packets to queue number 2:

    queue-list 4 protocol ip 2 tcp 23
    

    The following example assigns User Datagram Protocol (UDP) Domain Name Service (DNS) packets to queue number 3:

    queue-list 4 protocol ip 3 udp 53

    Interface Type

    In this example, queue list 4 establishes queueing priorities for packets entering on serial interface 0. The queue number assigned is 10.

    queue-list 4 interface serial 0 10

    Default Queue

    You can specify a default queue for packets that do not match other assignment rules. In this example, the default queue for list 10 is set to queue number 2:

    queue-list 10 default 2