240 likes | 257 Views
This paper explores the .Blue algorithm, a new approach to active queue management designed to maximize network efficiency during congestion. It discusses the motivation for such innovation, current congestion control methods like TCP, Drop-tail, and RED, and introduces the Blue algorithm that aims for 0% packet loss, 100% link utilization, and low queuing delay. The Blue algorithm works by decoupling congestion management from queue length, relying solely on queue and link history. It dynamically adjusts aggressiveness based on network conditions, offering a promising alternative to existing queue management techniques.
E N D
Blue: An Alternative Approach to Active Queue Management Wu-chang Feng June 23, 2001
Outline • Motivation • Congestion control and queue management today (TCP, Drop-tail, RED) • Blue • Conclusion
Motivation • Exponential increase in network demand • Rise in packet loss rates • 17% loss rates reported [Paxson97] • Decrease in link utilization and goodput • Potential for congestion collapse [Jacobson88] • Goal • Queue management algorithms for maximizing network efficiency in times of heavy congestion • 0% packet loss, 100% link utilization, low queuing delay
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
Drop-tail queue management • Default queue management mechanism • Packets dropped upon queue overflow • Problems • Global synchrony (poor utilization) • Late congestion notification (packet loss) • Solution • Randomize • Early detection of incipient congestion
RED queue management • RED (Random Early Detection) [Floyd93] • Keep EWMA of queue length (Qave) using weight wq • Increase in EWMA triggers random drops • Basic algorithm 1 Pdrop maxp 0 maxth minth Qave
Problems with RED • Hard to tune • Does not adapt well to traffic • [Feng99], [Anjum99], [Christiansen2000], [May99], [Ott99], …. • Why? • Wrong control variable being used • Queue length indicates congestion not severity
Blue • Class of fundamentally different queue management algorithms • Decouple congestion management from queue length • Rely only on queue and link history • Example • Increase aggressiveness when loss rates high • Decrease aggressiveness when link underutilized
Sending rate increases above L Mbs Sinks generate DupACKs/ECN DupACKs/ECN travel back Rate > L Mbs Rate > L Mbs Rate > L Mbs Rate > L Mbs Sources detect congestion Sources see sustained CN Rate < L Mbs Queue increases Queue increases, EWMA increases to trigger RED Queue increases some more Queue increases some more Queue overflows, maxth triggered Queue clears, but under-utilization imminent RED example L Mbs Sources Sinks A B
Ideal example (Blue) L Mbs Sources Sinks A B Sinks generate DupACKs/ECN Rate = L Mbs Queue drops and/or ECN marks at steady rate Rate = Exactly what will keep sources at L Mbs
Example Blue algorithm • Single dropping/marking probability • Increase upon packet loss • Decrease when link underutilized • Freeze value upon changing Upon packet loss: if ((now - last_update) > freeze_time) then Pmark = Pmark + d1 last_update = now Upon link idle: if ((now - last_update) > freeze_time) then Pmark = Pmark - d2 last_update = now
Blue parameter selection • freeze_time: set to prevent multiple updates on a single round-trip (~10ms-100ms) • d1/d2: set to allow pm to range from 0 to 1 on the order of seconds • [Paxson97], [Balakrishnan98]
Evaluation • 1000 and 4000 Pareto on/off TCP sources • Router queue sizes 100KB (17.8ms) to 1000KB (178ms) • RED (wq = 0.0002, 0.002, 0.02, 0.2) • Blue • freeze_time = 10ms, 100ms • d1 = 0.02, 0.0025 ; d2 = 0.002, 0.00025 100 Mbs 100 Mbs 45 Mbs 45 Mbs 10ms 10ms 1ms, 5ms, 20ms 1ms, 5ms, 20ms
Blue evaluation • 1000 sources
Blue evaluation • 4000 sources
Understanding Blue • Experiment • 50 sources added every 10 seconds • Queue length plots Blue RED
Understanding Blue • Marking behavior RED Blue
Understanding Blue w/ECN timeouts • Lack of ECN timeouts allows packet loss with pm=1 • With ECN timeouts Blue similarly outperforms RED RED Blue
Understanding Blue w/ECN timeouts • Marking behavior RED Blue
Blue evaluation w/ECN timeouts • 1000 sources
Blue evaluation w/ECN timeouts • 4000 sources
Implementation • FreeBSD 2.2.7 + ALTQ IBM PC 365 (200 MHz/64 MB) Winbook XL (233 MHz/32 MB) 100 Mbs 10 Mbs 100 Mbs Intellistation Mpro (400 MHz/128 MB) Intellistation Zpro (200 MHz/64 MB) Thinkpad 770 (266 MHz/64 MB) IBM PC 360 (150 MHz/64 MB)
Blue Evaluation Loss rates Link utilization