I am looking out for a practical usage of WRED. After reading/searching I found that it is more suitable for TCP traffic. When the queue is full, all the TCP session at that time will start with slow window size. And they may grow linearly. However, by the time there window size goes to maximum, the queue might be empty. Thus, all will be running with a small window size. Thus, there is a slow start for all the TCP connections and the bandwidth is under utilized.

My questions is how significant it is. Let it grow linearly. How does it matter. Why bandwidth is still under-utilized? It will grow eventually. Why for a few seconds it matters so much. Is there any other use for WRED? Am I missing some main application here?

  • Did any answer help you? if so, you should accept the answer so that the question doesn't keep popping up forever, looking for an answer. Alternatively, you could post and accept your own answer.
    – Ron Maupin
    Dec 19, 2020 at 22:39

1 Answer 1


I think you are missing the point that there are likely multiple TCP connections trying to use the queue.

RED (or Cisco's version called WRED), fixes a problem particular to TCP. When a queue fills up, no other packets can be enqueued, and any arriving packets will then be dropped (tail drop). If there are multiple TCP connections, they will then all be subject to loss, and they can all slow down, then ramp up, synchronously (TCP global synchronization). This can alternately fill and starve the queue, and this is a poor use of the queue.

The "R" in RED stands for "Random", and it randomly drops packets to keep from filling the queue. This tends to even out the TCP flows, and helps prevent them from becoming synchronized.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.