a self-configuring red gateway wu-chang feng, dilip kandlur, debanjan saha, kang shin infocom ‘99
TRANSCRIPT
A Self-Configuring RED Gateway
Wu-chang Feng, Dilip Kandlur,
Debanjan Saha, Kang Shin
INFOCOM ‘99
Outline
• Motivation• Background (TCP, Drop-tail, RED queue management)• RED, packet loss, and ECN• Adaptive RED• Conclusion
Motivation
• Exponential increase in network demand– Rise in packet loss rates
• 17% loss rates reported [Paxson97]
– Decrease in link utilization and goodput
– Two essential ingredients for congestion collapse [Jacobson88]
Congestion Control Today
• TCP– Instrumental in preventing congestion collapse
– Limits transmission rate at the source
– Window-based rate control
• Increased and decreased based on implicit signals from the network (acknowledgments and packet loss)
• Slow-start
• Fast-retransmit, Fast-recovery
• Congestion avoidance
Example of TCP Windowing
1
2
4
RTTRTT RTT
WW+1
2W
Congestion avoidance
Fast Retransmit/Recovery
Slow-start
Random Early Detection
• Drop-tail queue management– Default queue management mechanism
– Packets dropped upon queue overflow
– Global synchrony
– Poor link utilization
– Excess packet loss due to late congestion notification
– Potentially large queuing delay
• RED– Randomize congestion notification
– Early detection of incipient congestion
RED Queue Management
• RED (Random Early Detection) [Floyd93]– Keep EWMA of queue length (Qave)
– Increase in EWMA triggers random drops
• Basic algorithm
Pdrop
0
1
maxp
minth maxth
Qave
This Work
• Without ECN– RED has minimal effect on packet loss
• With ECN– RED has a hard time
• Avoiding packet loss
• Avoiding under-utilization
• Avoiding global synchrony
• Controlling queuing delay
• Problem– RED is not adaptive to congestion
• A solution– Adaptive RED
RED and Packet Loss
• Impact of RED on loss rates minimal • Experiment
– 64 connections over full-duplex Ethernet links
– Simulated in ns
– Verified over smaller FreeBSD/ALTQ testbed
100 Mbs
10 Mbs
100 Mbs
RED and Packet Loss
Loss rates are a first order function of TCP
TCP Revisited
1
2
4
RTTRTT
WW+1
2W
1/p = W + (W+1) + … + 2W = 3W2/4
W/2 RTTs
RTT*(W/2) RTT*sqrt(p) NBW = MSS*(3W2/4) = MSS*C = L
p = N * MSS * C L * RTT
2
Comments on Model
• Reducing N - [Balakrishnan98]• Increasing RTT - [Villamizar94]• Decreasing MSS - [Feng98]• Loss rates as a function of N between linear and
quadratic– Fair share assumption (L/N) - [Morris97]
– No retransmission timeouts - [Padhye98]
p = N * MSS * C L * RTT
2
ECN
• Without ECN, packet loss rates will remain high• IETF ECN WG (1998)• RFC 2481 - January 1999 (Experimental standard)
– 2-bits in “DS Field” of IPv4/IPv6 headers (ECT, CE)
– 2-bits in “TCP Flags” field of TCP (CWR, ECN Echo)
RED and Packet Loss
• Even with ECN, RED does not eliminate packet loss• Problem
– RED is not adaptive to congestion level
– maxp constant
• Congestion notification vs. number of connections– N = number of connections
– Offered load reduced by [1 - (1/2N)] per notification
RED Experiments
100 Mbs
10 Mbs 45 Mbs 45 Mbs
RED queue (minth=20K, maxth=80K, Qsize=80K)
• 8 or 32 TCP sources using ECN• Conservative vs. aggressive early detection• Simulated in ns
– Aggressive detection: maxp = 0.250
– Conservative detection: maxp = 0.016
Aggressive Early Detection
8 sources 32 sources
Conservative Early Detection
8 sources 32 sources
Conservative Early Detection
32 sources, Qlen = 120KB
Adaptive RED
• Adapt maxp based only on queue behavior (not N)
• Increase maxp when Qave crosses above maxth
• Decrease maxp when Qave crosses below minth
• Freeze maxp after changes to prevent oscillations
Pdrop
0
1
maxp
minth maxth
Qave
Evaluation
• Workload varied between 8 and 32 sources
100 Mbs
10 Mbs 45 Mbs 45 Mbs
RED queue (minth=20K, maxth=80K, Qsize=120K)
1ms
5ms
100ms
5ms 5ms 5ms
Static Early Detection
Aggressive Conservative
Adaptive RED
Queue length maxp
Implementation
• FreeBSD 2.2.6 + ALTQ• Ascend, Cisco
100 Mbs
100 Mbs
10 Mbs
200 MHz32 MB
233 MHz128 MB
200 MHz64 MB50 KB RED queue
166 MHz32 MB
Adaptive RED Performance
Loss rates Link utilization
Conclusion
• Without ECN– RED does not impact packet loss rates
• With ECN– RED still has trouble adapting to workload
• Adaptive RED can improve performance• Future work
– Deployment issues
– Tuning additional RED parameters
– Eliminating loss with SubTCP
– Influence on fairness extensions to RED
– http://www.eecs.umich.edu/~wuchang/ared/