Nowadays, due to excessive queuing, delays on the Internet can grow longer than several round trips between the Moon and the Earth – for which the ‘‘bufferbloat’’ term was recently coined. Some point to active queue management (AQM) as the solution. Others propose end-to-end low-priority congestion control (LPCC) [LCN-10] techniques . Under both approaches, promising advances have been made in recent times: notable examples are CoDel for AQM, and LEDBAT for LPCC. In this project, we study the impact that Active Queue Management (AQM) techniques have on LEDBAT (and other LPCCs such as NICE, TCP-LP, etc.). To promote cross-comparison, we make our simulation code and experimental code available to the research community.
The phenomenon
While LPCC and AQM both try to solve the buffer inflation problem, however a potentially fateful interaction arise when AQM and LPCC techniques are combined [CONEXT-12], namely:
AQM resets the relative level of priority between best effort and low-priority congestion control protocols;
while reprioritization generally equalizes the priority of LPCC and TCP, we also find that some AQM settings may actually lead best effort TCP to starvation.
The problem is illustrated in the following figure, showing a breakdown of the TCP vs LEDBAT throughput for 10 flows sharing the same bottleneck under FIFO Droptail (left) vs RED (right).
Contributions
By an extended set of experiments [TMA-13b] conducted on both controlled testbeds and on the Internet, we show the problem to hold in the real world for any tested combination of AQM policies and LPCC protocols. To further validate the generality of our findings, we complement our experiments with packet-level simulation, to cover cases of other popular AQM and LPCC that are not available in the Linux kernel [COMNET-14b].
To gather fundamental insights on the problem
we resort to a control theoretic modeling to analyze the system dynamics [ITC-13] (that was shortlisted for, but finally did not win, the best paper award ) that we extend in [TOMPECS-16] (a little known but very cool paper!)
finally, we propose [COMENT-14b] and implement [TOMPECS-16] a solution able to reinstate the relative levels of priority between heterogeneous congestion contro, while avoiding the bufferbloat problem at the same time.
Experiments
Note: PhD-grade skills are required to run the experiments and tweak the experimental settings
scripts for launching experiments and bare-bone visualization of result described in [TMA-13], including a short howto ]]
Simulation
Note: PhD-grade ns2 skills are required to modify and build the ns2 source tree; modification includes our own implementation of the LEDBAT and TCP-NICE low priority congestion control (LPCC), plus Choke and CoDel (AQM) from the respective authors, packaged here for commodity.
@inproceedings{DR:LCN-10,
title = {A hands-on Assessment of Transport Protocols with Lower than Best Effort Priority},
author = {Carofiglio, G. and Muscariello, L. and Rossi, D. and Testa, C.},
booktitle = {35th IEEE Conference on Local Computer Networks (LCN'10)},
address = {Denver, CO, USA},
month = oc,
year = {2010},
annote = {category=inproceedings state=published project=trans},
note = {keyword=ledbat,trans,congestion control},
url = {http://www.enst.fr/~drossi/paper/rossi10lcn.pdf},
howpublished = {http://www.enst.fr/~drossi/paper/rossi10lcn.pdf},
www_txt_url = {http://www.enst.fr/~drossi/paper/rossi10lcn.pdf}
}
@inproceedings{DR:CONEXT-12,
title = {Interaction or Interference: can AQM and Low Priority
Congestion Control Successfully Collaborate},
author = {},
year = {2012},
booktitle = {ACM CoNEXT'12 Student Workshop},
annote = {category=article state=published project=mplane},
note = {keyword=bufferbloat,ledbat},
month = dec,
pages = {25-26},
url = {http://www.enst.fr/~drossi/paper/rossi12conext.pdf},
howpublished = {http://www.enst.fr/~drossi/paper/rossi12conext.pdf},
www_txt_url = {http://www.enst.fr/~drossi/paper/rossi12conext.pdf}
}
Heterogeneity in the Internet ecosystem sometimes turns interaction into interference. Over the years, active queue management (AQM) and end-to-end low-priority congestion control (LPCC) have been proposed as alternative solutions to counter the persistently full buffer problem – that recently became popular under the "bufferbloat" term.
In this work, we point out the existence of a negative interplay among AQM and LPCC techniques. Intuitively, as AQM is designed to penalize the most aggressive flows it mainly hit best effort TCP: it follows that LPCC is not able to maintain its low priority, thus becoming as aggressive as TCP. By an extended set of simulation on various AQM policies and LPCC protocols, including the very recent CoDel AQM and LEDBAT LPCC proposals, we point out that this interference is quite universal and deserves further attention.
@inproceedings{DR:TMA-13b,
author = {Gong, Y. and Rossi, D. and Testa, C. and Valenti, S. and Taht, D.},
title = {Fighting the bufferbloat: on the coexistence of AQM and low priority congestion control},
booktitle = {IEEE INFOCOM Workshop on Traffic Measurement and Analysis (TMA'13)},
year = {2013},
address = {Turin, Italy},
month = apr,
annote = {category=article state=published project=mplane},
url = {http://www.enst.fr/~drossi/paper/rossi13tma-b.pdf},
howpublished = {http://www.enst.fr/~drossi/paper/rossi13tma-b.pdf},
www_txt_url = {http://www.enst.fr/~drossi/paper/rossi13tma-b.pdf},
note = {keyword=ledbat,bufferbloat,mplane}
}
Nowadays, due to excessive queuing, delays on the Internet can grow longer than several round trips between the Moon and the Earth, for which the "bufferbloat" term was recently coined. Some point to active queue management (AQM) as the solution. Others propose end-to-end low-priority congestion control techniques (LPCC). Under both approaches, promising advances have been made in recent times: notable examples are CoDel for AQM, and LEDBAT for LPCC. In this paper, we warn of a potentially fateful interaction when AQM and LPCC techniques are combined: namely (i) AQM resets the relative level of priority between best effort and low-priority congestion control protocols; (ii) while reprioritization generally equalizes the priority of LPCC and TCP, we also find that some AQM settings may actually lead best effort TCP to starvation. By an extended set of experiments conducted on both controlled testbeds and on the Internet, we show the problem to hold in the real world for all tested combination of AQM policies and LPCC protocols. To further validate the generality of our findings, we complement our experiments with packet-level simulation, to cover cases of other popular AQM and LPCC that are not available in the Linux kernel. To promote cross-comparison, we make our scripts and dataset available to the research community.
@inproceedings{DR:ITC-13,
title = {Modeling the interdependency of low-priority
congestion control and active queue management},
author = {Gong, YiXi and Rossi, Dario and Leonardi, Emilio},
booktitle = {The 25th International Teletraffic Congress (ITC25), Runner-up for Best Paper Award},
year = {2013},
month = sep,
annote = {category=article state=published project=mplane},
note = {keyword=ledbat,bestpaperrunnerup},
howpublished = {http://www.enst.fr/~drossi/paper/rossi13itc.pdf},
url = {http://www.enst.fr/~drossi/paper/rossi13itc.pdf},
www_txt_url = {http://www.enst.fr/~drossi/paper/rossi13itc.pdf}
}
Recently, a negative interplay has been shown to
arise when scheduling/AQM techniques and low-priority conges-
tion control protocols are used together: namely, AQM resets
the relative level of priority among congestion control protocols.
This work explores this issue by (i) studying a fluid model that
describes system dynamics of heterogeneous congestion control
protocols competing on a bottleneck link governed by AQM and
(ii) proposing a system level solution able to reinstate priorities
among protocols.
@article{DR:COMNET-14b,
author = {Gong, YiXi and Rossi, Dario and Testa, Claudio and Valenti, Silvio and Taht, Dave},
title = {{Fighting the bufferbloat: on the coexistence of AQM and low priority congestion control (extended version)}},
note = {keyword=measurement,ledbat,tengineer,mplane},
journal = {Computer Networks},
volume = {65},
number = {0},
pages = {255 -- 267},
year = {2014},
issn = {1389-1286},
annote = {category=article state=published project=mplane},
url = {http://www.enst.fr/~drossi/paper/rossi14comnet-b.pdf},
howpublished = {http://www.enst.fr/~drossi/paper/rossi14comnet-b.pdf},
www_txt_url = {http://www.enst.fr/~drossi/paper/rossi14comnet-b.pdf}
}
Nowadays, due to excessive queuing, delays on the Internet can grow longer than the round trip time between the Moon and the Earth – for which the “bufferbloa
t” term was recently coined. Some point to active queue management (AQM) as the solution. Others propose end-to-end low-priority congestion control techniques (LPCC). Under both approaches, promising advances have been made in recent times: notable examples are CoDel for AQM, and LEDBAT for LPCC.
In this paper, we warn of a potentially fateful interaction when AQM and LPCC techniques are combined: namely, AQM resets the relative level of priority between best-effort and low-priority congestion control protocols.
We validate the generality of our findings by an extended set of experiments with packet-level ns2 simulation, considering 5 AQM techniques and 3 LPCC protocols, and carry on a thorough sensitivity analysis varying several parameters of the networking scenario. We complete the simulation via an experimental campaign conducted on both controlled testbeds and on the Internet, confirming the reprioritization issue to hold in the real world at least under all combination of AQM policies and LPCC protocols available in the Linux kernel. To promote cross-comparison, we make our scripts and dataset available to the research community.
@article{DR:TOMPECS-16,
title = {A control theoretic analysis of low-priority congestion control
reprioritization under AQM},
author = {De Cicco, Luca and Gong, Yixi and Rossi, Dario and Leonardi, Emilio},
year = {2016},
month = sep,
journal = {ACM Transactions on Modeling and Performance Evaluation of Computer Systems},
note = {keyword=newnet,ledbat},
volume = {1},
issue = {4},
pages = {17:1--17:33},
url = {http://www.enst.fr/~drossi/paper/rossi16tompecs.pdf},
howpublished = {http://www.enst.fr/~drossi/paper/rossi16tompecs.pdf},
www_txt_url = {http://www.enst.fr/~drossi/paper/rossi16tompecs.pdf}
}
Recently, a negative interplay has been shown to arise when scheduling/Active Queue Management (AQM) techniques and low-priority congestion control protocols are used together; namely, AQM resets the relative level of priority among congestion control protocols. This work explores this issue by carrying out a control-theoretic analysis of the dynamical system to prove some fundamental properties that fully characterize the reprioritization phenomenon. In particular, (i) we provide the closed-form solution of the equilibrium in the open loop (i.e., fixing a target loss probability p); (ii) we provide a stability analysis and a characterization of the reprioritization phenomenon when closing the loop with AQM (i.e., that dynamically adjusts the system loss probability). Our results are important as the characterization of the reprioritization phenomenon is not only quantitatively accurate for the specific protocols and AQM considered but also qualitatively accurate for a broader range of congestion control protocol and AQM combinations. Finally, while we find a sufficient condition to avoid the reprioritization phenomenon, we also show, at the same time, such conditions to be likely impractical: Therefore, we propose a simple and practical system-level solution that is able to reinstate priorities among protocols.