320 likes | 475 Views
Active Queue Management: Theory, Experiment and Implementation. Vishal Misra Dept. of Computer Science Columbia University in the City of New York. Collaborators. C.V. Hollot, Don Towsley: UMass Amherst Victor Firoiu: Nortel Networks Kevin Jeffay, Nguyen-Long Le, Don Smith: UNC Chapel Hill.
E N D
Active Queue Management: Theory, Experiment and Implementation Vishal Misra Dept. of Computer Science Columbia University in the City of New York
Collaborators • C.V. Hollot, Don Towsley: UMass Amherst • Victor Firoiu: Nortel Networks • Kevin Jeffay, Nguyen-Long Le, Don Smith: UNC Chapel Hill
Outline • Investigating rate based control • Implementation of PI controller • Hardware • Software • Experiment • Performance evaluation under generated web traffic
MGT Fluid-Flow Model q W TCP dynamic queue dynamic p time delay R secs AQM “oscillatory behavior increases with increasing round-trip time”
Kelly W x TCP dynamic p time delay R secs AQM “oscillatory behavior decreases with increasing round-trip time”
Paradox? • MGT model : control based on queue length (q) • Kelly model : control based on arrival rate (x) Rate Feedback p = g(x) =
Rate Feedback p = g(x) = linearization d x d W - d p(t - R) d p time delay R secs
L(s) - rate feedback loop d p dp(t - R) where W0 satisfies: (*)
Stability (B=1) N=60 flows C=3750 packets/sec unstable for > 0.3 Stability distance of Nyquist plot from –1+j0
unstable for > 0.3 Simulations at RTT =300 ms N=60 flows C=3750 packets/sec
Parabolic rate feedback B = 2 Where, W0 satisfies:
Stability (B=2) N=60 flows C=3750 packets/sec unstable for > 0.8
Simulations at RTT = 300 ms N=60 flows C=3750 packets/sec
Implementing PI controller PI p(t) q(t) qref Integral controller, regulates router buffer to some operator controlled value qref
Hardware Implementation • Active collaboration with two vendors on implementing PI on a router • Nortel Networks: Next generation edge router • Cisco: IOS on the 3260 platform
Transitioning from theory to practice (Nortel) • Theory, Simulations: Worry about computations at one output queue, for a singleclass of traffic • Practice: Typical router has M(~ 512) queues, E (~ 8) classes
Speed Issues • Consider a 10 GBps router, 1000 byte average packet size • Theory: Sampling interval (say) 1 ms: computational overhead spread over 40000 packets: “lightweight computations” • Practice: Sampling interval 1ms, MxE (512x8) computations: spread over 10 packets: significant overhead!
Memory issues • Theory: One drop/marking probability needs to be maintained • Practice: MxE values have to be maintained! • Hardware designers unwilling to allot memory real estate for AQM (relatively small part of a router) Solution: Discretize [0,1] and use small precomputed tables
Table for class i Dropping module Packet from priority class i 0101 .12767 packet 0101 Lookup probability Append pointer to probability lookup table Architecture Small (~8) number of tables used with finite (~ 16) entries
Open research issues • How do you discretize [0,1] ? • Linear is clearly not the answer: operating region typical below 0.2 • Given a typical operating range of p : what performance metric do we optimize? What is the cost function?
Study of AQM at UNC Software Implementation of PI • “Tuning RED for Web Traffic”, Sigcomm 2000 • Implemented RED on a software router (the ALTQ system running on FREEBSD) • Compared performance of RED and FIFO (Droptail) on a testbed with generated Webtraffic: studied request completion latency • Conclusions: RED normally does not help, difficult to tune for scenarios when it can help (read: “RED only possibly helps in really extreme cases and even here it's hard as hell to get the settings right”) AQM bad idea?
RED Handwaving explanation FIFO More losses, more retransmissions, more timeouts..-> higher latency!
PI Implementation on ALTQ • PI added as a module to ALTQ at UNC • Issues: no floating point arithmetic allowed, need to be careful about saturation, integer overflows! • Sigcomm 2000 experiments repeated under (nearly) identical conditions with PI as third mechanism • PI tuned using formula given in Infocom 2000 paper
Plot of CDF of response time of requests (80% load) Cumulative probability Response time (ms)
Plot of CDF of response time of requests (100% load) FIFO, RED PI, qref=20 Cumulative probability PI, qref=200 Response time (ms)
Plot of CDF of response time of requests (110% load) FIFO, RED PI, qref=20 Cumulative probability PI, qref=200 Response time (ms)
Preliminary conclusions • AQM may not be bad after all: PI/20 performs significantly better for short objects under heavy load • Experiments run with packet dropping, not ECN • ECN experiments planned: performance should improve dramatically over FIFO