Random Early Detection Gateways For Congestion Avoidance
Random Early Detection Gateways For Congestion Avoidance
Sally Floyd and Van Jacobson, IEEE Transactions on Networking, Vol.1, No. 4, (Aug 1993), pp.397-413. Presented by Bob Kinicki
Advanced Computer Networks : RED 1
Outline
Introduction Background: Definitions and Previous Work The RED Algorithm RED parameters RED simulation results Evaluation of RED Conclusions and Future Work
Advanced Computer Networks : RED 2
Introduction
Main idea :: to provide congestion control at the router for TCP flows. RED Algorithm Goals
The primary goal is to provide congestion avoidance by controlling the average queue size such that the router stays in a region of low delay and high throughput. To avoid global synchronization (e.g., in Tahoe TCP). To control misbehaving users (this is from a fairness context). To seek a mechanism that is not biased against bursty traffic.
Advanced Computer Networks : RED 3
Definitions
congestion avoidance when impending congestion is indicated, take action to avoid congestion. incipient congestion congestion that is beginning to be apparent. need to notify connections of congestion at the router by either marking the packet [ECN] or dropping the packet {This assumes a drop is an implied signal to the source host.}
Advanced Computer Networks : RED 4
Previous Work
Drop Tail Random Drop Early Random Drop Source Quench messages DECbit scheme
FIFO queuing mechanism that drops packets from the tail when the queue overflows. Introduces global synchronization when packets are dropped from several connections.
When a packet arrives and the queue is full, randomly choose a packet from the queue to drop.
If the queue length exceeds a drop level, then the router drops each arriving packet with a fixed drop probability p. Reduces global synchronization Does not control misbehaving users (UDP)
Advanced Computer Networks : RED 8
DECbit scheme
Uses a congestion-indication bit in packet header to provide feedback about congestion. Upon packet arrival, the average queue length is calculated for last (busy + idle) period plus current busy period. When the average queue length exceeds one, the router sets the congestion-indicator bit in arriving packets header. If at least half of packets in sources last window have the bit set, decrease the congestion window exponentially.
Advanced Computer Networks : RED 10
RED Algorithm
for each packet arrival calculate the average queue size avg if minth avg < maxth calculate the probability pa with probability pa: mark the arriving packet else if maxth avg mark the arriving packet.
Advanced Computer Networks : RED 11
13
14
packet-marking probability
The goal is to uniformly spread out the marked packets. This reduces global synchronization. Method 1: geometric random variable When each packet is marked with probability pb,, the packet inter-marking time, X, is a geometric random variable with E[X] = 1/ pb. This distribution will both cluster packet drops and have some long intervals between drops!!
Advanced Computer Networks : RED 16
packet-marking probability
Method 2: uniform random variable Mark packet with probability pb/ (1 - count x pb) where count is the number of unmarked packets that have arrived since last marked packet. E[X] = 1/(2 pb) + 1/2
Advanced Computer Networks : RED 17
Method 1: geometric p = 0.02 Method 2: uniform p = 0.01 Result :: marked packets more clustered for method 1 uniform is better at eliminating bursty drops
Advanced Computer Networks : RED 18
Setting maxp
RED performs best when packet-marking probability changes fairly slowly as the average queue size changes.
This is a stability argument in that the claim is that RED with small maxp will reduce oscillations in avg and actual marking probability.
They recommend that maxp never be greater than 0.1 {This is not a robust recommendation.}
Advanced Computer Networks : RED 19
RED Simulations
Figure 4: Four heterogeneous FTP sources Figure 6: Two homogeneous FTP sources Figure 10: 41 Two-way, short FTP and TELNET flows Figure 11: Four FTP non-bursty flows and one bursty FTP flow
20
wq = 0.002 maxp = 1/50 minth = 5 maxth = 15 max cwnd = bdp Large Buffer with no packet drops
21
22
RED varies minth from 3 to 50 packets Drop Tail varies buffer from 15 to 140 packets max cwnd = 240 packets
23
Figure 5 represents many simulation experiments. RED yields lower queuing delay as utilization improves by increasing minth from 3 to 50 packets. Drop-tail yields unacceptable delay at high utilization. The power measure is better for RED !
Advanced Computer Networks : RED 24
25
Figure 9
26
27
Simulation Details
Bursty traffic == large RTT, small cwnd Other traffic = small RTT, small cwnd {robust flows} Node 5 :: the bursty flow cwnd varies from 8 to 22 packets. Each simulation run for 10 seconds and each mark in the figures represents one second (i.e., 10 throughput data points per cwnd size).
Advanced Computer Networks : RED
28
29
30
RED Gateways
31
32
33
35
simplicity
detailed argument about how to cheaply implement in terms of adds and shifts.
{Historically, the simplicity of RED has been strongly refuted because RED has too many parameters to make it robust.}
36
fairness
authors claim not well-defined {This is an obvious side-step of this issue.} [later this becomes a big deal - see FRED paper.]
Advanced Computer Networks : RED 37
Conclusions
RED is effective mechanism for congestion avoidance at the router in cooperation with TCP. claim:: The probability that RED chooses a particular connection to notify during congestion is roughly proportional to that connections share of the bandwidth.
38