Using WRED, you can set thresholds for random packet discard. This can avoid the situation in which the rates of multiple TCP connections are lowered at the same time, thus avoiding TCP global synchronization.
Due to limited memory resources, when network congestion occurs, the traditional processing method is tail drop. That is, all the excess packets are discarded. When a large number of TCP packets are discarded, TCP connections will time out. As a result, TCP slow start and congestion avoidance are triggered so as to reduce the forwarding of packets by TCP. When the packets of several TCP connections are discarded at the same time, slow start and congestion avoidance of the TCP connections occur simultaneously, leading to what is called the global TCP synchronization. Thus, these TCP connections simultaneously send fewer packets to the queue so that the rate of incoming packets is lower than the rate of outgoing packets, reducing the bandwidth usage.
To avoid global TCP synchronization, you can set queues to discard packets randomly by using the WRED mechanism. Random packet discarding of WRED can prevent multiple TCP connections from reducing their transmit rates at the same time, thus avoiding global TCP synchronization. In addition, the bandwidth can be efficiently utilized.
WRED is usually used together with WFQ.
Before configuring WRED, complete the following tasks:
Configuring the physical parameters of interfaces
Configuring the link layer attributes of interfaces to ensure their normal operation
Configuring IP addresses for interfaces
Enabling the routing protocol for communication between devices