RED

Alan Shen (alanshen@microsoft.com)
Wed, 28 Apr 1999 10:38:44 -0700

This paper defined a method of dealing with congestion
at gateways using Random Early Detection. In this protocol
each packet queue is marked with a maximum and minimum
threshold. Below the minimum, the protocol doesn't do much,
since there isn't any congestion. Approaching the maximum,
the protocol deals with almost every packet to ensure that
maximum threshold is not broken. Between the min and max,
the behavior is proportional to the average queue size. So
what does it do?

Depending on the current queue situation, RED handles packets
when they arrive by either dropping them (Early Random Drop)
or by setting a bit in the header packet (for the benefit of other
gateways). The paper goes on the describe some other benefits
of RED, besides congestion control. A couple important ones were
the absense of global syncronization and the identification of
misbehaving users.

The important take aways of this paper were that this mechanism
provides additional parameters that can be used to deal with
router congestion. Traditional routers only use queue size to
deal with congestion. If the queue is full, drop packets. RED
adds quite a few other variables to the equation. The open
ended part of this is what combinations of paramter values gives
us the best situation.

The biggest question in my mind is whether this is feasable at a
global scale. Replacing the behavior in one router is one thing.
But the internet is a connected mesh whose behavior is nearly
impossible to predict. How many routers would need to be changed
to really see an end-to-end performance increase on the internet?
Perhaps as we move onto the next gereation of IP, that'd be a
prime time to more strictly define how routers do their job.