ā05-14-2011 09:30 AM - edited ā03-04-2019 12:23 PM
Hi everyone,
I have some questions about CBWFQ/LLQ :
As explain in many cisco press book, CBWFQ determine preference between classes on weight (derived from bandwidth command given to each class-map). So, packets in a class with a higher bandwidth will be service before an other with lower one.
policy-map cbwfq
class-map voice
priority 128
class-map mgmt
bandwidth 128
class-map video
bandwidth 256
class-map critical-data
bandwidth 512
class class-default
fair-queue
So in this example classes will be serve as follow : voice (LLQ), critical, video, mgmt, default, ...
Is it possible to specify that video or mgmt classes have to be threat before critical data without modifiy bandwith value ?
In CBWFQ, unused interface/class bw will be redistributed between other classes based on weight. Is it the same for LLQ? In our exemple, if voice is not use, does the configured bw allocate to this class (128 k) will be redistribute to others?
Thanks in advance for your reply.
ā05-15-2011 12:52 AM
In your scenario you apply that policy map to an interface. Whenever traffic hits the interface, it will be checked against the policy map. If video and "critical data" traffic will arrive on your interface, someone has to come first right?Let's say the order was this one: 1 byte of "critical data", then after 1us came 1 byte of video traffic.
So both types of traffic resides in the same queue. Your equipment will check the type of traffic in the queue BUT will not send 1st the VIDEO traffic because the statement in your policy "says so". It will send the "critical data" byte first, then "video" trafic byte, as long as both types of traffic doesn't exceed the BW values.
The exception of my previous description it's for the VOICE traffic. If 1 byte of VIDEO traffic arrives on the queue, then 1 byte of VOICE traffic arrives on the same queue, VOICE traffic will LEAVE first the queue.
ā05-15-2011 08:57 AM
Thanks for your reply. But I don't really agree with you... there is not a single queue.
CBWFQ differ from WFQ with the ability to user to make its own classes. Each class has a separate software fifo queue, and all packets found to match the criteria for a particular class are assigned to that queue. The scheduler use weight (derived from bw) to choose the order in which each queue should be served. Then all packet are push to the hardware fifo queue...
So traffic for video and critical are not in the same queue. Router send critical data first because weight (bw assign to the class) is greater than video. But my question was on the scheduler. I think that bw and weight are two different things. If I assign a greater bw to crtical data but I want video traffic to be serve first, is it possible? Can you manually assign a weight for a class?
Yes, for voice traffic it's a priority queue in my example so this queue will be served before all other.
I could use MPQ for voice (level 1 -> hight priority) and video (level 2 -> low priority) but I prefer use CBWFQ for video, and keep MPQ for other kind of traffic.
Thanks in advance
ā05-18-2011 09:04 AM
Then, let's wait for others to share their thoughts. I know CBWFQ takes weight into consideration, nevertheless this is for splitting the available bandwidth and NOT for considering which packets goes in front of other.
ā05-18-2011 09:53 AM
Exactly so, the main difference with WFQ and CBWFQ is that it allows users to define classes to better manage the scheduling of the final queue (determine which packet should be dequeued next based on weight) and assign a minimum guaranteed bandwidth to these flow in case of congestion.
I agree with you, we'll see the comments of other users. It's the purpose of my question.
ā05-16-2011 06:41 PM
Disclaimer
The Author of this posting offers the information contained within this posting without consideration and with the reader's understanding that there's no implied or expressed suitability or fitness for any purpose. Information provided is for informational purposes only and should not be construed as rendering professional advice of any kind. Usage of this posting's information is solely at reader's own risk
Liability Disclaimer
In no event shall Author be liable for any damages whatsoever (including, without limitation, damages for loss of use, data or profit) arising out of the use or inability to use the posting's information even if Author has been advised of the possibility of such damage.
Posting
"So, packets in a class with a higher bandwidth will be service before an other with lower one."
Not service before but serviced more. Non-LLQ classes aren't strictly priorized by their bandwidth allocations, CBWFQ attempts to proportionally service each queue based on class weight. In your example classes critical-data, video, mgmt would be in the ratios of 4:2:1 (excluding FQ in class-default pre HQF or non-7500/FlexWAN). However, LLQ does preempt all other CBWFQ queues (up to its explict limiter).
Any "unused" bandwidth is, I believe, proportionly serviced the same. So, for instance, if there was only packets queued in critical-data and video, they would be serviced 4:2 or 2:1.
ā05-18-2011 07:06 PM
I admit that your comments made āāme doubt compared to informations that I could read in the past. After some research, I found this information from the book "Cisco Telepresence foundamental" editing on 2009 :
CBWFQ allows for the creation of up to 64 classes of traffic, each with its own reserved queue. Each queue is serviced in a weighted-round-robin (WRR) fashion based on the bandwidth assigned to each class.
I think the right question would be how CBWFQ scheduling really works ? I admit that this information is very hard to find....
Anyway thank you for your answers.
ā05-19-2011 02:33 AM
Disclaimer
The Author of this posting offers the information contained within this posting without consideration and with the reader's understanding that there's no implied or expressed suitability or fitness for any purpose. Information provided is for informational purposes only and should not be construed as rendering professional advice of any kind. Usage of this posting's information is solely at reader's own risk
Liability Disclaimer
In no event shall Author be liable for any damages whatsoever (including, without limitation, damages for loss of use, data or profit) arising out of the use or inability to use the posting's information even if Author has been advised of the possibility of such damage.
Posting
I admit that your comments made āāme doubt compared to informations that I could read in the past. After some research, I found this information from the book "Cisco Telepresence foundamental" editing on 2009 :CBWFQ allows for the creation of up to 64 classes of traffic, each with its own reserved queue. Each queue is serviced in a weighted-round-robin (WRR) fashion based on the bandwidth assigned to each class.
I think the right question would be how CBWFQ scheduling really works ? I admit that this information is very hard to find....
I recall only the earliest versions of CBWFQ had the 64 class limitation, for instance, see http://www.cisco.com/en/US/tech/tk543/tk545/technologies_q_and_a_item09186a00800cdfab.shtml 's
Yes, specifics about CBWFQ scheduling are scattered, and there are small changes across different versions, but the WRR description is most apt.
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