cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1494
Views
11
Helpful
3
Replies

ask a CBWFQ and LLQ question

flyjunli
Level 1
Level 1

we config qos on mpls network.use llq in CBWFQ. i have a question.

if i config LLQ for bandwidth 1m on 2M E1 line, and business data 0.5M(CBWFQ),defautl class 0.5M(CBWFQ). can i config this llq burst to 2M if line does not congest. or can i config business data or default class burst to 2M when line does not congest.

IF line congest. can llq and business,default class get gurantee bandwith?

i find when i config llq,i can use burst parameter:

priority bandwidth burst

when i need llq to burst to 2m, Does i need config this burst parameter. or i don't need config this burst parameter, i can get burst too.

thank you!

Tom

3 Replies 3

pcarvill
Level 1
Level 1

Not sure if I totally understand your question, but I guess it comes down to an understanding of the basic difference between LLQ and CBWFQ.

CBWFQ will define a minimum amount of bandwidth for a class - if more bandwidth exists, we can use more bandwidth - this is not really bursting as the class is not being policed. If the interface is congested the queuing scheduler will ensure your class has its piece of the pie.

LLQs priority class is policed (to stop your priority traffic starving the other classes). I have not configured burst here but if the keyword exists I'm sure it works in a similar fashion to classical policing - if you have built up enough tokens to burst, you can burst. This does not mean you will always burst when the interface is uncongested - it depends on the traffic pattern of the priority queue - constant heavy priority flows may never build up enough tokens to ever burst.

In your example, the data class could use more bandwidth if the interface is uncongested. For the priority class it depends on the flow intensity. Sporadic flows may be able to burst to interface speed from time to time.

HTH,

Paul

mheusing
Cisco Employee
Cisco Employee

Hi Tom,

When configuring queueing, the configuration will only apply, if the interface is overloaded. So even without further configuration each class might use 100% of the link bandwidth, IF no other traffic is present.

Queueing determines, which class should get how much, if there is not enough bandwidth to send all packets immediately.

So queueing does already give minimum guarantees.

Priority queueing in LLQ is a special case. Consider the case, when you have two rules:

1) business traffic gets at least 25% of the link bandwidth guaranteed.

2) traffic in the priority queue always is sent first (to minimize delay)

In this case you can not fulfill both rules at the same time, if you have 100% prio traffic and business traffic on top.

Thus with LLQ you configure a policer, which modifies rule 2). This policer is configured with the bandwidth and burst value found in the "priority " command.

Rules then are:

1) business traffic gets at least 25% of the bandwith guaranteed.

2) traffic in the priority queue always is sent first (to minimize delay) - but only up to for example 50% of the link bandwidth to avoid violating rule 1). The 50% are enforced by a policer.

In summary: using LLQ/CBWFQ will already by default deliver your required behavior:

a) During congestion:

1M for LLQ class, 0.5M for business, 0.5M for delault class

b) no congestion:

every class can use all available bandwidth.

Thus you usually do not need to configure the "burst" value for the LLQ policer.

Hope this helps! Please use the rating system.

Regards, Martin

Joseph W. Doherty
Hall of Fame
Hall of Fame

(Yet another explanation.)

"if i config LLQ for bandwidth 1m on 2M E1 line, and business data 0.5M(CBWFQ),defautl class 0.5M(CBWFQ). can i config this llq burst to 2M if line does not congest."

LLQ should allow up to the full 2 Mbps, if there's no congestion. If there's congestion, LLQ will police itself at the rate specified. More on bursting, below.

"or can i config business data or default class burst to 2M when line does not congest."

Either the business data or default classes should also be able to obtain full bandwidth, if there's no congestion. Excess demand will queue the excess packets.

"IF line congest. can llq and business,default class get gurantee bandwith?"

Yes, if there's congestion, LLQ will police its traffic, i.e. immediately drop excess, other classes will queue excess traffic; will drop if queues overflow (and/or WRED drop).

"i find when i config llq,i can use burst parameter:

priority bandwidth burst

when i need llq to burst to 2m, Does i need config this burst parameter. or i don't need config this burst parameter, i can get burst too."

If you specify burst, you're really adjusting the time interval the policier operates. I believe the default is based on 200ms, so if there's more than 25,000 bytes (1 Mbps * .2 sec / 8 bits/byte), the excess will be dropped. (All the non-dropped bytes will transmit at full rate.)

When to adjust burst? If your traffic's long term average is under your LLQ bandwidth setting, but short term traffic rate is very variable (e.g. many video streams), you should increase the burst size to avoid dropping packets.