The router automatically
determines the parameters to use in the WRED calculations. The average queue
size is based on the previous average and current size of the queue. The
formula is:
average = (old_average * (1-2
-x)) + (current_queue_size * 2 -x)
where
x is the exponential
weight factor.
For high values of
x, the previous average
becomes more important. A large factor smooths out the peaks and lows in queue
length. The average queue size is unlikely to change very quickly, avoiding a
drastic change in size. The WRED process is slow to start dropping packets, but
it may continue dropping packets for a time after the actual queue size has
fallen below the minimum threshold. The slow-moving average accommodates
temporary bursts in traffic.
Note |
-
The exponential weight
factor,
x , is fixed and is not user configurable.
-
If the value of
x gets too high,
WRED does not react to congestion. Packets are sent or dropped as if WRED were
not in effect.
-
If the value of
x gets too low,
WRED overreacts to temporary traffic bursts and drops traffic unnecessarily.
|
For low values of
x, the average queue size
closely tracks the current queue size. The resulting average may fluctuate with
changes in the traffic levels. In this case, the WRED process responds quickly
to long queues. Once the queue falls below the minimum threshold, the process
stops dropping packets.