Mitigating The Bufferbloat Problem To Reduce Internet Transport Latency
Date
2020
Authors
Patil, Sachin Dattatraya.
Journal Title
Journal ISSN
Volume Title
Publisher
National Institute of Technology Karnataka, Surathkal
Abstract
There has been a proliferation of high capacity routers on the Internet to appropriately
utilize the high-speed data links. These routers typically consist of very large buffers
because the memory prices have fallen sharply. Due to surplus buffering, packets experience an excessive queuing delay which leads to a significant degradation in the overall
performance and largely reduces the quality of service for time-critical applications. The
above-mentioned problem is known as bufferbloat. Active Queue Management (AQM)
is a promising technique to minimize the impact of Bufferbloat and improve the quality
of service for time-critical applications. Several AQM algorithms have been designed to
monitor and limit the growth of the queue at routers. Controlled Delay (CoDel) and
Proportional Integral controller Enhanced (PIE) are two popular AQM algorithms which
are designed to address the problem of bufferbloat.
One of the vital characteristics of AQM algorithms is to maintain a proper trade-off
between queue delay and bottleneck link utilization. However, maintaining this trade-off
becomes challenging when unresponsive flows crossing the router do not respond to congestion notifications, e.g., congestion agnostic UDP flows. Unresponsive flows increase
queue delay, affect the queue stability and lead to more packet losses. Additionally, AQM
algorithms do not provide adequate fairness when responsive flows and unresponsive flows
share the same bottleneck link. Unresponsive flows tend to dominate the bandwidth consumption due to lack of congestion control. This leads to fairness problems and subsequently, the performance of responsive flows degrades significantly. One of the potential
approaches to resolve the problem of unfairness between responsive and unresponsive
flows is to provide flow protection by integrating AQM algorithms with packet scheduling
algorithms, such as Deficit Round Robin (DRR).
The main goal of this work is to enhance the robustness of AQM algorithms against
unresponsive traffic and provide fairness when responsive and unresponsive flows coexist. Along these lines, this thesis makes the following contributions: we propose Modified
iCoDel and Minstrel PIE as enhancements to CoDel and PIE, respectively to increase their
robustness against unresponsive flows. Subsequently, we propose Flow Queue Minstrel
PIE (FQ-Minstrel PIE) to address the concern of fairness among responsive and unresponsive flows. Besides these primary contributions, we have developed a fluid model to
obtain an in-depth understanding of working of CoDel and Modified CoDel, aligned the
implementation of PIE in Linux kernel to RFC 8033 and implemented a new model for
Flow Queue PIE (FQ-PIE) in the Linux kernel.
Extensive evaluations conducted through mathematical modeling, simulations and
real-time experiments show that Modified CoDel achieves better performance against
unresponsive flows. However, we note that Modified CoDel is not scalable and fails to
perform due to inherent limitations in the design of CoDel. Conversely, it is observed that
Minstrel PIE, a minor enhancement of PIE, offers significant performance improvements
against unresponsive traffic, and FQ-Minstrel PIE resolves the fairness problem between
responsive and unresponsive flows. The work on aligning the PIE implementation in
Linux kernel with RFC 8033 is merged in the mainline of Linux kernel since v5.1 and the
FQ-PIE algorithm is merged in the mainline of Linux kernel since v5.5.
Description
Keywords
Department of Computer Science & Engineering, Bufferbloat, Active Queue Management, CoDel, PIE
