250 likes | 343 Views
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
E N D
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
Congestion avoidance Fast Retransmit/Recovery 2W W+1 W RTT Example of TCP Windowing Slow-start Congestion Window 4 2 1 RTT RTT Time
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 1 Pdrop maxp 0 maxth minth 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 100 Mbs 10 Mbs
RED and Packet Loss Loss rates are a first order function of TCP
BW = MSS*(3W2/4) = MSS*C = L RTT*(W/2) RTT*sqrt(p) N 2 p = N * MSS * C L * RTT W/2 RTTs TCP Revisited 1/p = W + (W+1) + … + 2W = 3W2/4 2W Congestion Window 4 W+1 W 2 1 RTT RTT Time
2 p = N * MSS * C L * RTT 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]
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 • 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 100 Mbs 10 Mbs 45 Mbs 45 Mbs RED queue (minth=20K, maxth=80K, Qsize=80K)
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 1 Pdrop maxp 0 maxth minth Qave
Evaluation • Workload varied between 8 and 32 sources 100 Mbs 10 Mbs 45 Mbs 45 Mbs 5ms 5ms 5ms RED queue (minth=20K, maxth=80K, Qsize=120K) 100ms 5ms 1ms
Static Early Detection Aggressive Conservative
Adaptive RED Queue length maxp
Implementation • FreeBSD 2.2.6 + ALTQ • Ascend, Cisco 100 Mbs 10 Mbs 100 Mbs 233 MHz 128 MB 200 MHz 64 MB 50 KB RED queue 166 MHz 32 MB 200 MHz 32 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/