CSIT560 Internet Infrastructure: Switches and Routers Active Queue Management Presented By: Gary Po, Henry Hui and Kenny Chong Agenda Why AQM? In Considerations AQM Algorithms Commercial Effort Conclusions Why AQM? Two Classes of Router Algorithms for Congestion Control What is Congestion? Congestion avoidance in TCP, is it good enough? Our Choice : Active Queue Management What do we consider when implementing AQM? QoS – Keep Average queue size small – Bounded Delay Link Utilization – Avoid Global Synchronization – Absorbs bursts without dropping packets Fairness – Punishes misbehaving flows – Prevent bias against bursty connections Implementation – – – – Ease of Configurations Buffer Size Requirement (Large or Small) Per-flow State Information Computational Overhead AQM Algorithms FIFO + Drop Tail Problems: – No isolation – No policing – Large queues for high utilizations – Synchronization problem – Lock-out problem RED (Random Early Detection) FIFO scheduling Max thresh Min thresh Average queue length Case 1: Make Define Use Admit of Two Average the Threshold New Queue Packet Values Length Average Queue Length < Min. Thresh Value RED (Cont’d) Max thresh Min thresh p p 1-p1-p Average queue length Case 2: Average Queue Length between Admit Or Dropthe theNew NewPacket PacketWith WithProbability Probabilityp… 1-p Min. and Max. Threshold Value RED (Cont’d) Max thresh Min thresh Average queue length UntilAs the New noaverage new packet orpackets being queue Case could dropped can 3:length be be admitted admitted, drops below New Packet will be dropped with with aqueue aprobability probability 1-p… p… Avg. the Queue average the Length max threshold > Max. length Threshold value decreases. Value RED Flow Diagram RED (Cont’d) Queue Size versus Time RED: Queue CHOKe: QueueSize Size 250 Average Queue Size Current Queue Size 200 Size of Queue (No. of Packets) Delay is bounded 150 100 50 Global Synchronization solved 0 0 5 10 15 20 25 30 Time (Seconds) 35 40 45 50 Unfairness of RED RED's Throughput 1000 Idea Fair Share RED's Throughput Unresponsive Flow (such as UDP) 900 800 Throughput (Kbps) An unresponsive 700 flow occupies over 600 95% of bandwidth 500 400 300 32 TCP Flows 1 UDP Flow 200 100 0 0 5 10 15 20 Flow Number 25 30 35 CHOKe (CHOose and Keep) Based on RED Simple Designed for fairness Penalize the unresponsive flow CHOKe (Cont’d) Mechanism CHOKe (Cont’d) Max thresh Min thresh Average queue length Case 1: Admit the New Packet Average Queue Length < Min. Thresh Value CHOKe (Cont’d) Max thresh Min thresh p 1-p Average queue length A If packet Case they If 2: they are is Avg. randomly from are Queue from different chosen Length the same flows, from is between flow, the the same queue to compare Min. both and logic packets with Max. inthe RED Threshold will new applies be arrival dropped Values packet CHOKe (Cont’d) Max thresh Min thresh Average queue length AIf If random they they are are packet from from Case will different the 3: be same chosen flows, flow,for Avg. Queue the both new Length packets packet comparison >will Max. willbe be Threshold dropped dropped Value Evaluate CHOKe’s performance using NS-2 Simulation Scenario source destination 10Mbps 10Mbps UDP UDP 1Mbps router router TCP • Topology: Dumb-bell • Metrics: throughput and queue size TCP Performance of CHOKe Unresponsive Flow (UDP) CHOKe: Throughput Per Flow 40 Ideal Fair Share CHOKe 35 Fair Share Level Throughput (Kbps) 30 25 20 15 Bandwidth is evenly shared 10 5 0 0 32 TCP Flows 1 UDP Flow 5 10 15 20 Flow Number 25 30 35 Parameters Number of responsive/unresponsive flows Transfer rate of different flows Number of random candidates chosen for comparison CHOKe Simulation Different Parameters, different performance CHOKe 1: Throughput Per Flow CHOKE 2: Throughput with 3 UDP with Different Rate 250 150 Ideal Fair Share CHOKe 1 CHOKe-2 32 TCPs, 3 UDPs of different rate 200 100 Throughput (Kbps) 150 Throughput CHOKe-1 32 TCPs 1 UDP Ideal Fair Share CHOKE 2 100 50 50 0 0 5 10 15 20 25 30 0 35 0 5 10 15 Flow Number CHOKe 2: Throughput Per Flow (with 4x UDP rate) 20 Flow Number 25 30 35 CHOKe 2: Throuhput Per Flow (with 3 UDP Flows) 50 250 Ideal Fair Share CHOKe 2 Ideal Fair Share CHOKe 2 45 40 200 Throughput (Kbps) CHOKe-2 32 TCPs, 1 UDP of high rate Throughput (Kbps) 35 30 25 20 CHOKe-2 32 TCPs, 3 UDPs of same rate 150 100 15 10 50 5 0 0 5 10 15 20 Flow Number 25 30 35 0 0 5 10 15 20 Flow Number 25 30 35 Evolutions of AQM Algorithms FIFO+ DropTail RED SRED FRED BLUE REM REM, AVQ,LDC PI Controller – – Merits Merits Merits BLUE – – – RED CHOKe – – – SRED FRED Early congestion Low Sensitivity delay and to traffic small Stabilized Good Simplicity protection queue from detection queues load and drain rate occupancy flows misbehaving High throughput SFB No bias against Low Independence delay of the Drawbacks Protection from Drawbacks bursty traffic of users number Target delay achieved misbehaving flows Per-flow state global early congestion Drawbacks No Intuitive parameters, Drawbacks synchronization RED disadvantages (Pdrop detection Some meaningful complexity to users due SAC (target Some updated per-flow only onstate to parameters delay) Drawbacks (zombie overflow list) orWeb Drawbacks Low throughput for queue Difficulty in link events) parameter setting Some complexity due traffic RED idle disadvantages Inconsistency parameters with TCP Insensitivity to and traffic to Slow response mechanism; loadthroughput and drain rates sender Low dependence onin works best with ECN some cases history Commercial Efforts & Conclusion Commercial Efforts & Conclusion (Cont’d) AQM over 3G wireless network” – a paper supported by Motorola Canada Ltd. (Mar. 2003) 3G network, real-time applications have hard time deadlines for packet delivery at the receiver. Use AQM to avoid long queuing delay and prevent expiring packets. “Applying Commercial Efforts & Conclusion (Cont’d) AQM improves overall system performance by increasing throughput and reducing end-to-end delay. Commercial Efforts & Conclusion (Cont’d) of AQM on Web Performance” – a paper supported by Cisco Systems and IBM. (Aug. 2003) Proportional Integrator (PI) controller “Effect Random Exponential Marking (REM) controller Adaptive Random Early Detection (ARED). IETF proposed standard : Explicit Congestion Notification (ECN) Commercial Efforts & Conclusion (Cont’d) ECN has significant impact with AQM scheme in web performance. Many researches and efforts are going on in the field of AQM. Simple and Easy to implement