Evaluating CoDel, FQ CoDel and PIE

23
Evaluating CoDel, FQ_CoDel and PIE: how good are they really? Naeem Khademi <naeemk@ifi.uio.no> David Ros <[email protected]> Michael Welzl <michawe@ifi.uio.no> ICCRG – IETF 88 Vancouver, BC, Canada N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 1 / 23

Transcript of Evaluating CoDel, FQ CoDel and PIE

Evaluating CoDel, FQ_CoDel and PIE:how good are they really?Naeem Khademi <[email protected]>David Ros <[email protected]>Michael Welzl <[email protected]>

ICCRG – IETF 88Vancouver, BC, Canada

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 1 / 23

Outline

Outline

New AQM Kids

Experimental Setup

A Basic Test

Parameter Sensitivity

AQM on 802.11 WLANs

FQ_CoDel: Blending SFQ and AQM

ECN

Conclusions and Future Work

Q&A

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 2 / 23

New AQM Kids

The New AQM Kids on the Block...I Two very recent proposals:

I (FQ_)CoDel (IETF 84)I PIE (IETF 85)

I Some older AQMs dating back to early 90’s/00’s (*RED, REM,BLUE, CHOKe,...)

I Designed to be better than RED, just like CoDel and PIEI Little academic literature available on CoDel and PIE

Literature (bold = peer-reviewed)CoDel PIE FQ_CoDel

Wired, sim [NJ12][GRT+13][WP12] [Whi13] [Whi13][Whi13]

Wired, real-life [GRT+13] X X XWireless (any) X X -

NOTE: [WP12] and [Whi13] are on DOCSIS 3.0 while [GRT+13] has tests with LP CC.

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 3 / 23

New AQM Kids

The New AQM Kids on the Block (cont.)

AQM Deployment StatusI (W)RED is available on plenty of HW but mostly "turned off"

Mentioned Reasons for Lack of DeploymentI Bad implementation (?)I Hard to tune RED params

I Sally Floyd’s ARED (2001 draft, available in Linux) adaptivelytunes RED params aiming for a certain target queuing => withfixed BW maps to a "target delay"

I Target delay can be set in ARED, CoDel and PIE

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 4 / 23

Experimental Setup

Experimental SetupI Traffic: 60/180/300 sec (wired/wireless/RTT=500 ms) of iperf, repeated for 10 runsI AQM iface: GSO TSO off, BQL=1514, txqueuelen=1000I TCP: Linux default with renoI Topology: Dumbbell with 4 sender-receiver pairs

Model Dell OptiPlex GX620CPU Intel(R) Pentium(R) 4 CPU 3.00 GHzRAM 1 GB PC2-4200 (533 MHz)

EthernetBroadcom NetXtreme BCM5751

RTL-8139 (AQM interface)RTL8111/8168B (Dummynet router)

Ethernet drivertg3

8139too (AQM interface)r8168 (Dummynet router)

802.11 b/g D-Link DWL-G520 AR5001X+802.11 driver ath5k

OS kernelLinux 3.8.2 (FC14)

Linux 3.10.4 (AQM router) (FC16)

100 Mbps

100 Mbps

100 Mbps

100 Mbps

A Q M

100 Mbps

Dummynet router

10 Mbps

100 Mbps

100 Mbps

100 Mbps

100 Mbps

100 Mbps

100 Mbps

A Q M

100 Mbps

100 Mbps

Bottleneck routerDummynet router

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 5 / 23

Experimental Setup

Experimental Setup (cont.)

I AQM parameters used unless otherwise noted.

CoDelinterval=100 mstarget=5 ms

PIEparameters in [pie].

PIE Parameter Default valuetupdate 30 msTtarget 20 msα 0.125β 1.25

AREDparameters in [FGS01].

ARED Parameter Default valueinterval 500 msα min(0.01, pmax/4)β 0.9

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 6 / 23

Experimental Setup

Experimental Setup (cont.)

I RTT is measured on per-packet basis using Synthetic PacketPairs (SPP) tool [spp]

I Gives a very precise distribution of perceived RTT on the pathI Goodput is measured per 5-sec intervals

I long-term throughput/goodput does not reflect AQM performanceover time (e.g. bursts of packet drops are not desired)

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 7 / 23

A Basic Test

A Basic Test

Single TCP Flow (RTTbase=100 ms)

100 110 120 130 140 150 160 170 180 190 200 210 220 230 240

1 1 1 5 5 5 10 10 10 20 20 20 30 30 30

RT

T (

ms)

Target Delay (ms)

CoDel PIE ARED

(a) Per-packet RTT

3.5

4

4.5

5

5.5

6

6.5

7

7.5

8

8.5

9

9.5

10

1 1 1 5 5 5 10 10 10 20 20 20 30 30 30

Goo

dput

(M

bps)

Target Delay (ms)

CoDel PIE ARED

(b) Goodput

Per-packet RTT and goodput. Bottom and top of whisker-box plots show 10th and 90thpercentiles respectively.

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 8 / 23

A Basic Test

A Basic Test (cont.)

I A similar trend canbe observed betweenCoDel and RED in adifferent test in[NJ12]

CoDel vs. RED from K. Nichols, “Controlling QueueDelay” [NJ12]

FTP traffic mix w/ and w/o web-browsing and CBRapplications and RTTs from 10∼500 ms.

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 9 / 23

Parameter Sensitivity

Parameter Sensitivity (cont.)

Target Delay (Per-packet RTT)

100 110 120 130 140 150 160 170 180 190 200 210 220 230 240 250

1 1 1 5 5 5 10 10 10 20 20 20 30 30 30

RT

T (

ms)

Target Delay (ms)

CoDel PIE ARED

(c) Light

100 110 120 130 140 150 160 170 180 190 200 210 220 230 240 250

1 1 1 5 5 5 10 10 10 20 20 20 30 30 30

RT

T (

ms)

Target Delay (ms)

CoDel PIE ARED

(d) Moderate

100 110 120 130 140 150 160 170 180 190 200 210 220 230 240 250

1 1 1 5 5 5 10 10 10 20 20 20 30 30 30

RT

T (

ms)

Target Delay (ms)

CoDel PIE ARED

(e) Heavy

Per-packet RTT. Light, moderate and heavy congestion scenarios (4 senders andRTTbase=100 ms).

Light, moderate and heavy congestion correspond to 4, 16 and 64 concurrent TCP flows

respectively.

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 10 / 23

Parameter Sensitivity

Parameter Sensitivity (cont.)

Target Delay (Goodput)

5.5

6

6.5

7

7.5

8

8.5

9

9.5

10

1 1 1 5 5 5 10 10 10 20 20 20 30 30 30

Goo

dput

(M

bps)

Target Delay (ms)

CoDel PIE ARED

(f) Light

8.5

9

9.5

10

1 1 1 5 5 5 10 10 10 20 20 20 30 30 30

Goo

dput

(M

bps)

Target Delay (ms)

CoDel PIE ARED

(g) Moderate

8.5

9

9.5

10

1 1 1 5 5 5 10 10 10 20 20 20 30 30 30

Goo

dput

(M

bps)

Target Delay (ms)

CoDel PIE ARED

(h) Heavy

Goodput. Light, Moderate and Heavy congestion scenarios (4 senders and RTTbase=100 ms).

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 11 / 23

AQM on 802.11 WLANs

AQM on 802.11 WLANs

I 802.11 is a challenging environment for AQM deploymentI Varying MCS (BW) by RA and MAC retries

I Some drivers still use SampleRate instead of Minstrel (e.g. in FBSD)I Shared channel with various active STAs

I Direction-based unfairness (uplink vs. downlink)I Hard to predict the BW as input to ARED

I We use TCP max achievable BW for testing (e.g. ∼27 Mbps in .11g)I CoDel and PIE use delay

I CoDel: queuing delay by timestampingI PIE: estimated queuing delay (queue_length / departure_rate)

I Public Wi-Fi e.g. at airports, hotels, corporations with bottleneckon wlanX interface

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 12 / 23

AQM on 802.11 WLANs

AQM on 802.11 WLANs (cont.)

802.11 Downlink Traffic Scenario – Target Delay=5 ms

100 110 120 130 140 150 160 170 180 190 200 210 220 230 240 250 260 270 280

1 1 1 4 4 4 8 8 8 16 16 16

RT

T (

ms)

Flows per sender #

CoDel PIE ARED

(i) Per-packet RTT

16.5

17

17.5

18

18.5

19

19.5

20

20.5

21

21.5

22

1 1 1 4 4 4 8 8 8 16 16 16G

oodp

ut (

Mbp

s)Flows per sender #

CoDel PIE ARED

(j) Goodput

4 senders, RTTbase=100 ms.

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 13 / 23

AQM on 802.11 WLANs

AQM on 802.11 WLANs (cont.)I AQM on AP’s wlanX interfaceI ∼65%/∼70% ACK loss at AQM (ARED) router for 16/32 flows.

802.11 Mixed Traffic – Target Delay=5 ms (Uplink’s Stats)

400

600

800

1000

1200

1400

1600

1800

2000

2200

2400

1 1 1 4 4 4 8 8 8 16 16 16

RT

T (

ms)

Flows per sender #

CoDel PIE ARED

(k) Per-packet RTT

24 24.5

25 25.5

26 26.5

27

1 1 1 4 4 4 8 8 8 16 16 16

Goo

dput

(M

bps)

Flows per sender #

CoDel PIE ARED

(l) Goodput

4 senders, RTTbase=100 ms.

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 14 / 23

FQ_CoDel: Blending SFQ and AQM

FQ_CoDel: Blending SFQ and AQM

I SFQ is highly likely to improvethe performance whencombined with any AQM

I Flow isolation/protectionwith non-responsive traffic

I Close to 100% flow-levelfairness on the edge

I Significantly Lower 10thpercentile and median RTTsbut with longer (upper)distribution tail

Comparison between CoDel and FQ_CoDel– target_delay=5 ms

100

110

120

130

140

150

160

170

180

190

200

210

1 1 4 4 8 8 16 16

RT

T (

ms)

Flows per sender #

CoDel FQ-CoDel

Per-packet RTT. 4 senders andRTTbase=100 ms.

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 15 / 23

FQ_CoDel: Blending SFQ and AQM

FQ_CoDel: Blending SFQ and AQM

I FQ_CoDel: Lower median latency at the expense of higher jitterthan CoDel (with the increase of congestion level)

Per-packet RTT Samples of a Single Flow – target_delay=5 ms

100

110

120

130

140

150

160

170

180

190

200

210

220

230

20 25 30 35 40

RT

T (

ms)

Time (Sec)

fq-codelcodel

(m) Light Congestion

100

110

120

130

140

150

160

170

180

190

200

210

220

230

20 25 30 35 40

RT

T (

ms)

Time (Sec)

fq-codelcodel

(n) Moderate Congestion

100

110

120

130

140

150

160

170

180

190

200

210

220

230

20 25 30 35 40

RT

T (

ms)

Time (Sec)

fq-codelcodel

(o) Heavy Congestion

4 senders, RTTbase=100 ms.

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 16 / 23

ECN

ECN

I Proposed two decades agoI Still turned off in clientsI Can give a lot of benefits (out of this talk’s scope)

RFC 3168For a router, the CE codepoint of an ECN- Capable packet SHOULDonly be set if the router would otherwise have dropped the packet asan indication of congestion to the end nodes.

I RFC 3168 is the only guideline for general useI Marking affects the marking/dropping probability since it

changes the metrics AQMs use (e.g. queue length and delay)

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 17 / 23

ECN

ECN (cont.)Per-packet RTT. 4 senders, target_delay=5 ms, RTTbase=100 ms

100 110 120 130 140 150 160 170 180 190 200 210 220 230 240 250

1 1 1 4 4 4 8 8 8 16 16 16

RT

T (

ms)

Flows per sender #

CoDel PIE ARED

(p) ECN disabled

100 110 120 130 140 150 160 170 180 190 200 210 220 230 240 250

1 1 1 4 4 4 8 8 8 16 16 16

RT

T (

ms)

Flows per sender #

CoDel PIE ARED

(q) ECN enabled

Goodput

6 6.5

7 7.5

8 8.5

9 9.5 10

1 1 1 4 4 4 8 8 8 16 16 16

Goo

dput

(M

bps)

Flows per sender #

CoDel PIE ARED

(r) ECN disabled

6 6.5

7 7.5

8 8.5

9 9.5 10

1 1 1 4 4 4 8 8 8 16 16 16

Goo

dput

(M

bps)

Flows per sender #

CoDel PIE ARED

(s) ECN enabledN. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 18 / 23

ECN

ECN (cont.)

I Constant CE-marking under heavycongestion

I with ECN, ARED’s goodput dropssignificantly as congestion leveldecreases

I Aggressive reaction to theincrease in average queue length

I CE-marking (w/ ECN) 3.5∼6.6times more than dropping (w/oECN)

pmarking|ecn/pdrop|noecn

Flows CoDel PIE ARED4 1.256 1.156 6.62116 1.356 1.106 3.46532 1.719 1.591 4.30364 6.117 6.569 3.873

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 19 / 23

ECN

ECN (cont.)

Our RecommendationI AQMs should modify their dropping/marking decision process to

incorporate the impact of CE-marked packets on theirmeasurements.

Possible SolutionsI Exclude CE-marked packets from queue size (ARED), or exclude

delay caused by CE-marked packets (PIE)I Set lower ECN thresholds for AQMs

(fairness against non-ECN flows? dynamic threshold?)

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 20 / 23

Conclusions and Future Work

Conclusive Remarks

I ARED only performed worse than CoDel or PIE in few scenarios1. With very small number of flows2. Public Wi-Fi with mixed (up- and down-link) traffic3. With the common ECN implementation that CE-marks only when it

would otherwise dropI ARED outperforms CoDel and PIE in all other studied scenarios,

most notably regarding delay

Future WorkI More realistic traffic types (here, only bulk TCP traffic)I Implementing and testing SFQ_AREDI Delay-based ARED

N. Khademi, D. Ros, M. Welzl () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 21 / 23

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 () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 22 / 23

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 () Evaluating CoDel, FQ_CoDel and PIE November 5, 2013 23 / 23