WRED for Single and Multiple Queues

WRED (Weighted Random Early Detection) can be configured for a single queue or multiple queues in network traffic management. You can configure a single queue with multiple random-detect statements indicating a different drop probability for different IP precedence values. For example:

class-map match-all PREC match ip precedence 3 match ip precedence 5 policy-map WRED_SINGLE class PREC bandwidth 1000 random-detect random-detect precedence 3 20 45 25 random-detect precedence 5 30 60 20

This configuration allows packets with precedence 3 and 5 to use a bandwidth of 1000 with different thresholds for when packet dropping begins for each type to avoid congestion.

In such a configuration, packets are evaluated for being dropped in sequence, one after the other.

In contrast, a multi-queue configuration assigns packets with different precedences to separate queues. Each queue has its own bandwidth allocation, and the random-detect feature is configured individually for each class, still aiming to avoid congestion. For example:

class-map match-all PREC5 match ip precedence 5 class-map match-all PREC3 match ip precedence 3 policy-map WRED_MULTIPLE class PREC3 bandwidth 1000 random-detect random-detect precedence 3 20 45 25 class PREC5 bandwidth 1000 random-detect random-detect precedence 5 30 60 20

So each queue has its own bandwidth allocation, and each queue operates the random dropping of packets independently.

However, while having separate bandwidth allocations for each queue might suggest there's no interaction between them, this isn't entirely the case. On switches, queues share common physical buffer space; dropping packets from one queue frees up buffer space for others.

WRED technology works to prevent overall congestion on an interface by preemptively dropping packets, reducing buffer usage and thus influencing how other queues transmit.

https://networklessons.com/cisco/ccie-routing-switching-written/wred-weighted-random-early-detection