Home » QoS » Custom Queuing and Priority Queuing

Custom Queuing and Priority Queuing

Custom Queuing (CQ)
This is a Legacy technology for Congestion management.
There are no dynamic Queues generated in CQ, instead you have to manually define the Queues. A maximum of 16 Queues can be defined and System Queue is Queue – 0 which is used for Layer-2 keepalives and routing protocols traffic.

Each Queue has to be assigned a byte counter, the default is 1500-Byte Counter. Each Queue will service this 1500-Bytes by default and then move on to next Queue in a deficit round robin fashion. If you define a custom byte-counter value then that many bytes will be serviced before moving on to next queue in the deficit round-robin fashion.

Configuration Examples

Commands Structure to Follow:
1. Define
queue-list <local-number> protocol <protocol> <Queue-#> list <Access-list #>
queue-list <local-number> queue <Queue-#> limit <Number of Packets>
OR
queue-list <local-number> queue <Queue-#> byte-count <packet size count>

2. Apply on interface
interface x/y
custom-queue-list <local-number>

Example
queue-list 1 protocol ip 1 list 10
queue-list 1 protocol ip 2 list 20
queue-list 1 default 10
queue-list 1 queue 1 limit 25
queue-list 1 queue 2 byte-count 1024

interface S0/0/0
custom-queue-list 1

End-to-End QoS Network Design: Quality of Service for Rich-Media & Cloud Networks (2nd Edition) (Networking Technology)

Priority Queuing (PQ)
PQ is a legacy congestion management technique was designed for the Voice Traffic.

In PQ there are only 4 Queues
1. High Queue
2. Medium Queue
3. Normal Queue
4. Low Queue

How PQ algorithm works
All these Queues are serviced in the order of priority. First packets to get serviced are the packets in the HIGH Queue, when HIGH Queue is empty the next Queue to get serviced is the MEDIUM Queue, and when it gets empty NORMAL Queue gets serviced and in the end when NORMAL Queue gets empty the packets in LOW Queue get serviced. But this is not a round robin Queue Service as when the device is serving NORMAL Queue and packets arrive in HIGH Queue then Servicing of NORMAL Queue is halted and HIGH Queue is serviced first. This behavior applies to all Queues where the higher priority Queue is always serviced first, and lower priority queue gets halted to service any packets showing up in higher priority queues. This can cause resource starvation to lower priority queue traffic.

Configuring PQ

1. Configuration Based on Protocol Type
# priority-list <list-number> protocol <protocol-name> {high | medium | normal | low} <queue-keyword> <queue-value>

2. Configuration Based on Ingress Interface
# priority-list <list-number> interface <interface-type/number> {high | medium |normal | low}

3. Setting Default Queue Configuration For all other traffic
# priority-list <list-number> default {high | medium | normal | low}

Assign it to Interface
# interface X
# priority-group <list-number>

Assigning the size of Queues
# priority-list <list-number> queue-limit [ high-limit [ medium-limit [ normal-limit [ low-limit ]]]]

Example:
priority-list 1 protocol ip high list 10
priority-list 1 protocol ip medium list 20
priority-list 1 protocol ip normal tcp 80
priority-list 1 default low
priority-list 1queue-limit 30 60 90 100

interface Se0/0/0
priority-group 1

Incoming search terms for the article:

Leave a Reply