07-23-2015 11:18 PM - edited 03-17-2019 03:45 AM
According to "Cisco QOS Exam Certification Guide 2nd Edition", it states that: Currently, CBWFQ can use either FIFO or WFQ inside the class-default queue. With Flow-Based WFQ in the class-default queue, when CBWFQ decides to take one or more packets from the queue, it takes the packet with the best sequence number (SN) — just like WFQ normally does. Although some of the CBWFQ command output references WFQ in sections describing queues other than class-default, CBWFQ does not use Flow-Based WFQ inside any of these queues. CBWFQ on most Cisco router models can only use Flow-Based WFQ inside one queue—the class-default queue. (On the 7500, WFQ can be used inside each CBWFQ queue.)
From this, I assumed that there is only a Single Queue for the class-default, and WFQ will assign the Sequence Number (SN) for this Queue only, and extract the lowest SN from the Queue, to the Tx-Ring.
However I got confused when I see these from the verification command: R4#show policy-map interface FastEthernet0/0 Service-policy output: ASD Class-map: QWE (match-all) 0 packets, 0 bytes 5 minute offered rate 0000 bps, drop rate 0000 bps Match: protocol icmp Queueing queue limit 64 packets (queue depth/total drops/no-buffer drops/flowdrops) 0/0/0/0 (pkts output/bytes output) 0/0 bandwidth 20 kbps Fair-queue: per-flow queue limit 16 packets Class-map: class-default (match-any) 0 packets, 0 bytes 5 minute offered rate 0000 bps, drop rate 0000 bps Match: any Queueing queue limit 64 packets (queue depth/total drops/no-buffer drops/flowdrops) 0/0/0/0 (pkts output/bytes output) 0/0 Fair-queue: per-flow queue limit 16 packets Maximum Number of Hashed Queues 32
If a Class have a "Maximum Number of Queues" within it, does it mean that there are multiple Queues per Class?
And also, if I have multiple Class with "Fair-queue", are the Sequence Number compared across the Classes or are they compared within the Class?
Solved! Go to Solution.
07-24-2015 10:39 AM
Hi,
The first concept to understand that you have single output queue TX-ring in most Cisco routers (2900 and 3900). Also, queues created by QoS congestion management mechanisms are logical queues.
Now, HQF architecture works in a way that each class will have its logical queue (including the default class). A child policy within a class will create a sub-queue per child class. HQF QoS support upto 3 tiers depth sub-queues.
In the statement
CBWFQ on most Cisco router models can only use Flow-Based WFQ inside one queue—the class-default queue.
this is referenced to CBWFQ logical queues. For example if you have 5 classes (5 queues) CBWFQ, you can use WFQ in one of the 5 classes. However, within the class (queue) that is using WFQ you can have 32 sub-queues created by WFQ. Look at below chart.
CBWFQ Default Class with WFQ (one queue) ----------- WFQ Class#1 (queue#1)
----------- WFQ Class#2 (queue#2)
...................................
----------- WFQ Class#32 (queue 32)
The SN will be compared within the class (Queue). But if you have child policy within a class then the SN will go deeper to scan again all sub-classes until you find a first match.
Hope this clarify the confusion.
07-24-2015 10:39 AM
Hi,
The first concept to understand that you have single output queue TX-ring in most Cisco routers (2900 and 3900). Also, queues created by QoS congestion management mechanisms are logical queues.
Now, HQF architecture works in a way that each class will have its logical queue (including the default class). A child policy within a class will create a sub-queue per child class. HQF QoS support upto 3 tiers depth sub-queues.
In the statement
CBWFQ on most Cisco router models can only use Flow-Based WFQ inside one queue—the class-default queue.
this is referenced to CBWFQ logical queues. For example if you have 5 classes (5 queues) CBWFQ, you can use WFQ in one of the 5 classes. However, within the class (queue) that is using WFQ you can have 32 sub-queues created by WFQ. Look at below chart.
CBWFQ Default Class with WFQ (one queue) ----------- WFQ Class#1 (queue#1)
----------- WFQ Class#2 (queue#2)
...................................
----------- WFQ Class#32 (queue 32)
The SN will be compared within the class (Queue). But if you have child policy within a class then the SN will go deeper to scan again all sub-classes until you find a first match.
Hope this clarify the confusion.
07-24-2015 08:55 PM
Hi,
That makes a lot of sense.
Are there anywhere that I can read about this 3 tier depth of sub-queues?
11-14-2016 02:48 AM
Hi Mohammad,
Thanks for the clarification. Do you know any resource to study the tier based queues.
Regards
Sanjeewa.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide