Cisco Support Community
Community Member



If a class in Class Based Weighted Fair Queueing (CBWFQ) is not using its bandwidth, other classes can use the bandwidth.

Then what about with WRED?

if PVC cir is 200K

class A

bandwidth 100

class B

bandwidth 50


and class A is not using bandwith, then what is the packet dropping point(congestion) of class B? is 50K or 200K?


Community Member


As far as I understand, WRED is dealing not with the bandwidth but with queue length. So for class B 50K is guarantee but it can use up to 200K without packet drops if no traffic from other classes uses the bandwidth. As soon as class B packets places to queue (which means that available bandwidth for the class is not enough) and queue size grows over limits (there is a formula which WRED uses) then WRED starts to do its job. So in your case the packets dropping point is flexible and lays somewhere between 50K and 200K depending of other traffic in PVC and queue length.

//Mikhail Galiulin

Community Member


Hi Mikhail.Galiulin

Thank you for answering,

According to your explaination, if class B starts dropping(WRED), then class A also has to start dropping(tail drop) concurrently, but it doesn't.

class Transmitted Random drop Tail drop Minimum Maximum Mark

pkts/bytes pkts/bytes pkts/bytes thresh thresh prob

0 36341594/22380942946 1219/1555156 270/85400 20 40 1/1


1 0/0 0/0 0/0 22 40 1/10

2 0/0 0/0 0/0 24 40 1/10

3 0/0 0/0 0/0 26 40 1/10

4 0/0 0/0 0/0 28 40 1/10

5 0/0 0/0 0/0 30 40 1/10

6 35051/2429812 0/0 0/0 32 40 1/10

7 403/491492 0/0 0/0 34 40 1/10

rsvp 0/0 0/0 0/0 36 40 1/10

and this is example of WRED configured interface, it has two drop counters, and random drop is higher than tail drop, I think random drop occurs before tail drop at some point, but i am not quite clear.


Community Member


Well, I don't think that the fact that class B starts dropping means that class A will automatically also start dropping. If class A lays over its bandwidth guarantee it starts place packets to queue and then when queue lenght comes to certain value it starts dropping. If class A traffic is below the bandwidth guarantee the packets can be sent without queuing so WRED will not be involved even if WRED discarded some packets from class B.

Tail drop occurs when queue lenghth is over the limit. You are absollutelly right - random drops occurs before tail drops, but it doesn't automatically mean that WRED prevents all tail drops. WRED can drop some packets but if packets are coming fast enough queue overflows and ALL packets drops (tail drop). When the queue lenght comes back below limit WRED take care of packet drops again.

// Mikhail Galiulin

Community Member


So, it sounds like it depends on the WRED itself(how to calcurate...), thanks for your help Mikhail.

CreatePlease to create content