View
212
Download
0
Category
Tags:
Preview:
Citation preview
Active Queue Management: Theory, Experiment and
Implementation
Vishal MisraDept. of Computer ScienceColumbia 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
TCPdynamic
queuedynamic
AQM
RN
p
W q
time delayR secs
MGT Fluid-Flow Model
“oscillatory behavior increases with increasing round-trip time”
TCPdynamic
AQM
RN
p
W
time delayR secs
Kelly
“oscillatory behavior decreases with increasing round-trip time”
x
Paradox?
• MGT model : control based on queue length (q)
• Kelly model : control based on arrival rate (x)
Rate Feedback p = g(x) =B
Cx
Utilization with different B
)()(
))((2
)(1)(
2
tWRN
tx
RtxgRtW
RtW
)('2
)(2
)( 02
0
0
RtxC
xWg
RW
tWRW
tW refRN
Rate Feedback p = g(x) =
RN
p
W
time delayR secs
x
0
2
1
RWs -
p(t - R)
linearization
B
ref
C
xx
'2
20 gR
W
L(s)
p
-
p(t - R)
0
1
02
20
0
2
20
22
2
'2)(
0
RWs
C
xWB
CRNW
RWs
gRNW
sL
B
refRN
gB
Crefxx
sRe
B
refRN
C
xWW
02
02
where W0 satisfies:
rate feedback loop
(*)
Cxref
unstable for > 0.3
Stability (B=1)
Stability distance of Nyquist plot from –1+j0
N=60 flowsC=3750 packets/sec
Simulations at RTT =300 ms
unstable for > 0.3
N=60 flowsC=3750 packets/sec
Parabolic rate feedback B = 2
12
22
22
22
)(0
02
30
0
02
20
2
0
1
02
20
sRW
xWRC
NW
RWs
C
xW
CRNW
RWs
C
xW
CB
RNW
sLrefR
NrefR
N
B
B
refRN
Where, W0 satisfies:
022 220
230
40
2 CWxWxW refRN
refRN
Multiple Equilibria (Throughput)
Multiple Equilibria (Stability)
Cxref Stability (B=2)
unstable for > 0.8
N=60 flowsC=3750 packets/sec
Simulations at RTT = 300 ms
N=60 flowsC=3750 packets/sec
Implementation and Experiments
Implementing PI controller
PI
q(t) p(t)
qref
Integral controller, regulates router buffer to someoperator 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 single class 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
Architecture
0101
Append pointer to probability lookup table
0101 .12767
Table for class i
packet
Packet from priority class i
Lookup probability
Droppingmodule
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?
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 Web traffic: 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?
Study of AQM at UNC
Handwaving explanation
pRTTK
B FIFO
pRTT
KBRED
More losses, more retransmissions, more timeouts..-> higher latency!
UNC Testbed
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)
Cu
mu
lati
ve p
rob
ab
ility
Response time (ms)
Plot of CDF of response time of requests (100% load)
Cu
mu
lati
ve p
rob
ab
ility
Response time (ms)
PI, qref=20 FIFO, RED
PI, qref=200
Plot of CDF of response time of requests (110% load)
Cu
mu
lati
ve p
rob
ab
ility
Response time (ms)
PI, qref=20
PI, qref=200
FIFO, RED
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
Recommended