Creating the Standard Priority Queue for an Interface
If you enable standard priority queueing for traffic on a physical interface, then you need to also create the priority queue on each interface. Each physical interface uses two queues: one for priority traffic, and the other for all other traffic. For the other traffic, you can optionally configure policing.
Note The standard priority queue is not required for hierarchical priority queueing with traffic shaping; see the "Priority Queueing Overview" section on page 24-3 for more information.
To create the priority queue, perform the following steps:
Step 1 To create the priority queue, enter the following command:
hostname(config)# priority-queue interface_name
Where the interface_name argument specifies the physical interface name on which you want to enable the priority queue, or for the ASA 5505, the VLAN interface name.
Step 2 (Optional) To change the size of the priority queues, enter the following command:
hostname(config-priority-queue)# queue-limit number_of_packets
Because queues are not of infinite size, they can fill and overflow. When a queue is full, any additional packets cannot get into the queue and are dropped (called tail drop). To avoid having the queue fill up, you can use the queue-limit command to increase the queue buffer size.
The number_of_packets is the number of average, 256-byte packets that the specified interface can transmit in a 500-ms interval. A packet that stays more than 500 ms in a network node might trigger a timeout in the end-to-end application. Such a packet can be discarded in each network node.
The upper limit of the range of values for the queue-limit command is determined dynamically at run time. To view this limit, enter queue-limit ? on the command line. The key determinants are the memory needed to support the queues and the memory available on the device.
The queue-limit that you specify affects both the higher priority low-latency queue and the best effort queue.
Step 3 (Optional) To specify the depth of the priority queues, enter the following command:
hostname(config-priority-queue)# tx-ring-limit number_of_packets
This command sets the maximum number of low-latency or normal priority packets allowed into the Ethernet transmit driver before the driver pushes back to the queues on the interface to let them buffer packets until the congestion clears.
The number_of_packets is the number of maximum 1550-byte packets that the specified interface can transmit in a 10-ms interval. This guarantees that the hardware-based transmit ring imposes no more than 10-ms of extra latency for a high-priority packet.
The upper limit of the range of values for the tx-ring-limit command is determined dynamically at run time. To view this limit, enter tx-ring-limit ? on the command line. The key determinants are the memory needed to support the queues and the memory available on the device.
The tx-ring-limit that you specify affects both the higher priority low-latency queue and the best-effort queue.
The following example establishes a priority queue on interface "outside" (the GigabitEthernet0/1 interface), with the default queue-limit and tx-ring-limit.
hostname(config)# priority-queue outside
The following example establishes a priority queue on the interface "outside" (the GigabitEthernet0/1 interface), sets the queue-limit to 2048 packets, and sets the tx-ring-limit to 256:
hostname(config)# priority-queue outside hostname(config-priority-queue)# queue-limit 2048 hostname(config-priority-queue)# tx-ring-limit 256
Continue reading here: Creating a Policy for Traffic Shaping and Hierarchical Priority Queueing
Was this article helpful?