The New AQM Kids on the Block: An

advertisement
The New AQM Kids on the Block: An
Experimental Evaluation of CoDel and PIE
Naeem Khademi <naeemk@ifi.uio.no>
David Ros <dros@simula.no>
Michael Welzl <michawe@ifi.uio.no>
17th IEEE Global Internet Symposium – 2014
Toronto, ON, Canada
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
1 / 21
Outline
Outline
AQM
AQM mechanisms considered
CoDel
PIE
ARED
Experimental Setup
A Basic Test
Parameter Sensitivity
Conclusions and Future Work
Q&A
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
2 / 21
AQM
Active Queue Management (AQM)
I
Problem: Standard loss-based TCP’s congestion control plus
Large unmanaged buffers in Internet routers, switches, device
drivers,... (a.k.a Bufferbloat)
I
Cause: Latency issues for interactive/multimedia applications
I
Solution: AQM tries to signal the onset of congestion by
(randomly?) dropping/marking packets
AQM Goals
I
Maintain low average queue/latency
I
Allow occasional packet bursts
I
Break synchronization among TCP flows
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
3 / 21
AQM mechanisms considered
The New AQM Kids on the Block...
I
Two very recent proposals:
I
I
(FQ_)CoDel (IETF 84)
PIE (IETF 85) mandatory in DOCSIS 3.1 CM
I
Some older AQMs dating back to early 90’s/00’s (*RED, REM,
BLUE, CHOKe,...)
I
Little academic literature available on CoDel and PIE
I
Designed to be better than RED, just like CoDel and PIE
Literature (bold = peer-reviewed)
Wired, sim
Wired, real-life
Wireless (any)
CoDel
[NJ12][GRT+ 13][WP12]
[Whi13]
[GRT+ 13] X
X
PIE
[Whi13]
FQ_CoDel
[Whi13]
X
X
X
-
NOTE: [WP12] and [Whi13] are on DOCSIS 3.0 while [GRT+ 13] has tests with
Low-Priority congestion control.
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
4 / 21
AQM mechanisms considered
The New AQM Kids on the Block (cont.)
AQM Deployment Status
I
(W)RED is available on plenty of HW but mostly "turned off"
Mentioned Reasons for Lack of Deployment
I
Bad implementation (?)
I
Hard to tune RED params
I
Sally Floyd’s ARED (2001 technical report, available in Linux)
adaptively tunes RED params aiming for a certain target queuing
=> with fixed BW maps to a "target delay"
I
Target delay can be set in ARED, CoDel and PIE
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
5 / 21
AQM mechanisms considered
CoDel
The New AQM Kids on the Block (cont.)
CoDel – Controlling Delay
I
Tries to detect the standing queue by measuring minimum sojourn
delay (delaymin ) over a fixed-duration interval (default 100 ms)
I
Uses timestamping
I
If delaymin > target for at least one interval, enters dropping mode
and a packet is dropped from the tail (deque)
I
Next dropping time: Dropping interval decreases in inverse
proportion to the square root of the number of drops since the
dropping mode was entered
I
Exits dropping mode if delaymin ≤ target
I
No drop when queue is less than 1 MTU
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
6 / 21
AQM mechanisms considered
CoDel
The New AQM Kids on the Block (cont.)
CoDel Assumptions
I
100 ms is nominal RTT assumed typical on the Internet paths
I
interval = 100 ms; assures protection of normal packet bursts
I
A small target standing queue (5% of nominal RTT) is tolerable for
achieving better link utilization
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
7 / 21
AQM mechanisms considered
PIE
The New AQM Kids on the Block (cont.)
PIE – Proportional Integral controller Enhanced
I
Lightweight as it uses delay estimation instead of timestamping
I
Uses a Proportional Integral (PI) controller design
I
Uses trend of latency (increasing or decreasing) over time to
determine the congestion level
I
E[T ] as current estimated queuing delay during every tupdate , N as
current queue length and µ is the draining rate
E[T ] = N/µ
I
Randomly drops on enque based on probability p
p = p + α ∗ (E[T ] − Ttarget ) + β ∗ (E[T ] − E[T ]old )
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
8 / 21
AQM mechanisms considered
ARED
The New AQM Kids on the Block (cont.)
ARED – Adaptive RED
I
Tries to solve RED’s main problem of parameter tuning to keep the
average queue length (N̄) around a desired target_queuing
I
target_queuing = (th_max + th_min)/2
I
Observes N̄ to make RED more/less aggressive
I
Updates RED’s pmax adaptively (every 500 ms by default) using an
AIMD policy
I
Only useful in fixed-BW scenarios
(target_delay = target_queuing/BW )
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
9 / 21
Experimental Setup
Experimental Setup
I Traffic: 60 sec (or 300 sec if RTT=500 ms) of TCP traffic by iperf, repeated for 10 runs
I AQM iface: GSO TSO off, BQL=1514, txqueuelen=1000
I TCP: Linux default with reno
I Topology: Dumbbell with 4 sender-receiver pairs
Model
CPU
RAM
Ethernet
Ethernet driver
OS kernel
Dell OptiPlex GX620
Intel(R) Pentium(R) 4 CPU 3.00 GHz
1 GB PC2-4200 (533 MHz)
Broadcom NetXtreme BCM5751
RTL-8139 (AQM interface)
RTL8111/8168B (Dummynet router)
tg3
8139too (AQM interface)
r8168 (Dummynet router)
Linux 3.8.2 (FC14)
Linux 3.10.4 (AQM router) (FC16)
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
100 Mbps
100 Mbps
100 Mbps
100 Mbps
10 Mbps
AQM
100 Mbps
Dummynet router
100 Mbps
100 Mbps
Bottleneck router
100 Mbps
April 28, 2014
10 / 21
Experimental Setup
Experimental Setup (cont.)
I
AQM parameters used unless otherwise noted.
CoDel
interval=100 ms
target=5 ms
ARED
PIE
parameters in [pie].
PIE Parameter Default value
tupdate
30 ms
Ttarget
20 ms
α
0.125
β
1.25
N. Khademi, D. Ros, M. Welzl
parameters in [FGS01].
ARED Parameter
Default value
interval
500 ms
α
min(0.01, pmax /4)
β
0.9
th_min
0.5 ∗ target
th_max
1.5 ∗ target
The New AQM Kids on the Block...
April 28, 2014
11 / 21
Experimental Setup
Experimental Setup (cont.)
I
RTT is measured on per-packet basis using Synthetic Packet
Pairs (SPP) tool [spp]
I
I
Gives a very precise distribution of perceived RTT on the path
Goodput is measured per 5-sec intervals
I
long-term throughput/goodput does not reflect AQM performance
over time (e.g. bursts of packet drops are not desired)
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
12 / 21
A Basic Test
A Basic Test
240
230
220
210
200
190
180
170
160
150
140
130
120
110
100
Goodput (Mbps)
RTT (ms)
Single TCP Flow (RTTbase =100 ms)
1
1
1
5
5
5 10 10 10 20 20 20 30 30 30
Target Delay (ms)
CoDel
PIE
ARED
10
9.5
9
8.5
8
7.5
7
6.5
6
5.5
5
4.5
4
3.5
1
1
1
CoDel
(a) Per-packet RTT
5
5
5 10 10 10 20 20 20 30 30 30
Target Delay (ms)
PIE
ARED
(b) Goodput
Per-packet RTT and goodput. Bottom and top of whisker-box plots show 10th and 90th
percentiles respectively.
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
13 / 21
A Basic Test
A Basic Test (cont.)
CoDel vs. RED from K. Nichols, “Controlling Queue
Delay” [NJ12]
I
A similar trend can
be observed between
CoDel and RED in a
different test in
[NJ12]
FTP traffic mix w/ and w/o web-browsing and CBR
applications and RTTs from 10∼500 ms.
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
14 / 21
Parameter Sensitivity
Parameter Sensitivity (cont.)
1
1
1
5
CoDel
5
5 10 10 10 20 20 20 30 30 30
Target Delay (ms)
PIE
ARED
(c) Light
250
240
230
220
210
200
190
180
170
160
150
140
130
120
110
100
RTT (ms)
250
240
230
220
210
200
190
180
170
160
150
140
130
120
110
100
RTT (ms)
RTT (ms)
Target Delay
1
1
1
CoDel
5
5
5 10 10 10 20 20 20 30 30 30
Target Delay (ms)
PIE
ARED
(d) Moderate
250
240
230
220
210
200
190
180
170
160
150
140
130
120
110
100
1
1
1
5
CoDel
5
5 10 10 10 20 20 20 30 30 30
Target Delay (ms)
PIE
ARED
(e) Heavy
Per-packet RTT. Light, moderate and heavy congestion scenarios (4 senders and
RTTbase =100 ms).
Light, moderate and heavy congestion correspond to 4, 16 and 64 concurrent TCP flows
respectively.
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
15 / 21
Parameter Sensitivity
Parameter Sensitivity (cont.)
Goodput (Mbps)
Target Delay
10
9.5
9
8.5
1
8.5
1
8
1
5
5
CoDel
5 10 10 10 20 20 20 30 30 30
Target Delay (ms)
PIE
ARED
7.5
(g) Moderate
7
6.5
6
5.5
1
1
1
CoDel
5
5
5 10 10 10 20 20 20 30 30 30
Target Delay (ms)
PIE
(f) Light
Goodput (Mbps)
Goodput (Mbps)
9
10
9.5
10
9.5
9
8.5
1
1
1
ARED
CoDel
5
5
5 10 10 10 20 20 20 30 30 30
Target Delay (ms)
PIE
ARED
(h) Heavy
Goodput. Light, Moderate and Heavy congestion scenarios (4 senders and RTTbase =100 ms).
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
16 / 21
Parameter Sensitivity
Parameter Sensitivity (cont.)
CoDel’s Dropping Mode Interval – Target Delay=5 ms
180
170
Goodput (Mbps)
RTT (ms)
160
150
140
130
10
9.5
9
8.5
8
5
120
110
5
Light
100
5
5
Light
5
30
30
30
Interval (ms)
Moderate
100
100
100
5
30
30
30
Interval (ms)
Moderate
100
100
100
Heavy
(j) Goodput
Heavy
(i) Per-packet RTT
4 senders, RTTbase =100 ms.
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
17 / 21
Parameter Sensitivity
Parameter Sensitivity (cont.)
240
230
220
210
200
190
180
170
160
150
140
130
120
110
100
Goodput (Mbps)
RTT (ms)
PIE’s t_update Interval – Target Delay=5 ms
10
9.5
9
8.5
8
5
5
Light
5
5
Light
5
30
30
30
Interval (ms)
Moderate
100
100
100
5
30
30
30
Interval (ms)
Moderate
100
100
100
Heavy
(l) Goodput
Heavy
(k) Per-packet RTT
4 senders, RTTbase =100 ms.
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
18 / 21
Conclusions and Future Work
Conclusions
I
ARED: Only performed worse than CoDel or PIE with small
number of flows
I
CoDel: Dropping mode interval can be reduced to lower the delay
without degrading the goodput much
I
PIE (as implemented in Linux): Long distribution tail for low
target delays
Future Work
I
More realistic traffic types (here, only bulk TCP traffic) including
bursty traffic
I
Simulations for environment parameters that cannot be produced
with our testbed
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
19 / 21
Q&A
Bibliography
[FGS01]
Sally Floyd, Ramakrishna Gummadi, and Scott Shenker.
Adaptive RED: An Algorithm for Increasing the Robustness of RED’s Active Queue Management.
Technical report, 2001.
[GRT+ 13] Y. Gong, D. Rossi, C. Testa, S. Valenti, and D. Taht.
Fighting the Bufferbloat: On the Coexistence of AQM and Low Priority Congestion Control.
2013.
[NJ12]
Kathleen Nichols and Van Jacobson.
Controlling Queue Delay.
Queue, 10(5):20:20–20:34, May 2012.
[pie]
PIE Linux code (Cisco).
ftp://ftpeng.cisco.com/pie/linux_code/.
[spp]
Synthetic Packet Pairs.
http://caia.swin.edu.au/tools/spp/.
[Whi13]
Greg White.
A Simulation Study of CoDel, SFQ-CoDel and PIE in DOCSIS 3.0 Networks.
Technical Report, CableLabs, April 2013.
[WP12]
Greg White and Joey Padden.
Preliminary Study of CoDel AQM in a DOCSIS Network.
Technical Report, CableLabs, November 2012.
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
20 / 21
Q&A
Q&A
More on experimental results: N. Khademi, D. Ros, and M. Welzl,
“The New AQM Kids on the Block: Much Ado About Nothing?”,
Technical Report 434, Department of Informatics, University of Oslo,
23 October 2013, available at http://urn.nb.no/URN:NBN:no-38868
N. Khademi, D. Ros, M. Welzl
The New AQM Kids on the Block...
April 28, 2014
21 / 21
Download