LEDBAT+AQM code

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:

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


Experiments

Note: PhD-grade skills are required to run the experiments and tweak the experimental settings


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.

References