08-11-2011 03:44 AM - edited 03-04-2019 01:15 PM
Hello
below are 2 examples of CBWFQ and LLQ , my question is do I need to add under class class-default
"fair-queue" to be consider as CBWFQ ? the same question for LLQ , do I have to add
"fair-queue"
to be consider as LLQ ?
what are they going to be consider if I don't add "fair-queue"
under them ??
Regards
CBWFQ
class-map match-all MatchEF
match dscp ef
!
!
policy-map VoicePolicy
class MatchEF
bandwidth percent 30
class class-default
fair-queue
LLQ
class-map match-all MatchEF
match dscp ef
!
!
policy-map VoicePolicy
class MatchEF
priority percent 30
class class-default
fair-queue
Solved! Go to Solution.
08-11-2011 04:26 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
No, you don't. CBWFQ is the policy map and its classes. Of course, if you only have just one class, one might argue it's not really CBWFQ, but in both your examples you have two defined classes. Class-default, a class in itself, doesn't require FQ, and if you don't explicitly define class-default, it's still there implicitly.
LLQ is a special priority class, denoted when you use the keyword "priority" (as in you second policy map example). You can define multiple classes with priority, but there's only one actual priority queue.
08-11-2011 08:19 AM
Hello,
Yes, both are using the CBWFQ. The first one without a priority class is a pure CBWFQ, the second uses a PQ for selected class, and all other traffic classes are scheduled using CBWFQ.
Best regards,
Peter
08-11-2011 04:24 AM
Hello,
Both these configurations should be considered as CBWFQ (or PQ+CBWFQ which is equal to LLQ), regardless of the fair-queue command in the class-default section. The reason is that an entire class, as a whole, is scheduled using the basic WFQ algorithm, as if it was a single flow. That is the reason why we call this system class-based WFQ - because it is an entire class of traffic that is scheduled using WFQ.
The fair-queue in the class-default merely states how should the flows in the class-default class be scheduled. Without the fair-queue command, they will be scheduled in a FIFO fashion. With the fair-queue command, they will be scheduled using the basic WFQ, guaranteeing the bandwidth assigned to the class-default class. Note that in this case, the class-default is not scheduled as a single unit but rather all flows assigned to class-default will be individually scheduled using the WFQ algorithm.
Please feel welcome to ask further.
Best regards,
Peter
08-11-2011 04:40 AM
Just to carify this , you said
Both these configurations should be considered as CBWFQ (or PQ+CBWFQ which is equal to LLQ),
what you say is , both are CBWFQ but only the second one is LLQ =PQ+CBWFQ
that's it ?
08-11-2011 08:19 AM
Hello,
Yes, both are using the CBWFQ. The first one without a priority class is a pure CBWFQ, the second uses a PQ for selected class, and all other traffic classes are scheduled using CBWFQ.
Best regards,
Peter
08-11-2011 04:53 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
Class-default FQ is actually a little more complex than what Peter describes. How it actually functions also depends on the platform and IOS version.
On most software based platforms prior to HQF that support CBWFQ, class-default FQ flows compete with defined class flows (i.e. one queue per class) using WFQ. Weight for individual flows are determined by the defined class's bandwidth allocation or a combination of class-default bandwidth (not explicitly defined) and packet's IP Precedence marking.
In the later HQF version of CBWFQ, class-default FQ flows are scheduled much more like Peter describes, although pure FQ is used (for scheduling within the class). I.e. classes are still weighted, traffic within the class is either FIFO or FQ. (NB: with HQF, FQ can now also be applied to other defined classes [excluding LLQ?].)
What this means is, a policy such as either of your examples may schedule traffic a little differently for pre-HQF vs. HQF when you use FQ within class-default.
08-11-2011 04:26 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
No, you don't. CBWFQ is the policy map and its classes. Of course, if you only have just one class, one might argue it's not really CBWFQ, but in both your examples you have two defined classes. Class-default, a class in itself, doesn't require FQ, and if you don't explicitly define class-default, it's still there implicitly.
LLQ is a special priority class, denoted when you use the keyword "priority" (as in you second policy map example). You can define multiple classes with priority, but there's only one actual priority queue.
08-11-2011 04:45 AM
thank you JosephDoherty , what do you call a policy map that has both bandwidth and priority ?
08-11-2011 04:55 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
linuxchild wrote:
thank you JosephDoherty , what do you call a policy map that has both bandwidth and priority ?
CBWFQ with/using LLQ.
PS:
If there's no priority class(es), then it's just CBWFQ.
08-11-2011 05:03 AM
thank you both for taking the time to answer me , it is more clear now
Regards
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