A model predictive control approach to flow pacing for TCP

A key challenge in the management of Internet traffic is the design of algorithms that complement well-established protocols, such as the Transmission Control Protocol (TCP), and simultaneously address their limitations. The challenge becomes greater in the context of large so-called “elephant” flows over long paths that often transition from higher to lower bandwidth connections. At these transition points either persistent queues are formed when buffers are over-provisioned or packet loss occurs when buffers are under-provisioned; both cases lead to degraded and/or highly variable end-to-end performance. Ideally, for such scenarios, the source should “learn” and set a pacing rate that matches the lower bandwidth connection. In this paper, we adopt a model-based receding horizon control strategy to design a pacing control method. Each new round-trip time (RTT) measurement is first incorporated into a linear time-varying (LTV) predictive model. Subsequently, we solve a one-step look-ahead optimization problem which finds the pacing rate which optimally trades off RTT, variance in RTT, and throughput according to the most up-to-date model. We implemented our proof-of-concept control strategy on the Linux operating system alongside the existing CoDel queuing discipline (qdisc) and HTCP congestion-control algorithm. Our preliminary results indicate significant reduction in the variances of the RTT and the throughput, resulting in more predictable performance overall.

[1]  Vishal Misra,et al.  Fluid-based analysis of a network of AQM routers supporting TCP flows with an application to RED , 2000, SIGCOMM.

[2]  Steven H. Low,et al.  TCP Pacing Revisited , 2022 .

[3]  J Gettys,et al.  Bufferbloat: Dark Buffers in the Internet , 2011, IEEE Internet Computing.

[4]  N. Cardwell,et al.  Making Linux TCP Fast , 2016 .

[5]  Injong Rhee,et al.  CUBIC: a new TCP-friendly high-speed TCP variant , 2008, OPSR.

[6]  Masayuki Fujita,et al.  Congestion control for TCP/AQM networks using state predictive control , 2006 .

[7]  Vijay Sivaraman,et al.  Comparing edge and host traffic pacing in small buffer networks , 2015, Comput. Networks.

[8]  Donald F. Towsley,et al.  Analysis and design of controllers for AQM routers supporting TCP flows , 2002, IEEE Trans. Autom. Control..

[9]  Larry L. Peterson,et al.  TCP Vegas: End to End Congestion Avoidance on a Global Internet , 1995, IEEE J. Sel. Areas Commun..

[10]  Scott Shenker,et al.  Observations on the dynamics of a congestion control algorithm: the effects of two-way traffic , 1991, SIGCOMM '91.

[11]  QUTdN QeO,et al.  Random early detection gateways for congestion avoidance , 1993, TNET.

[12]  Kang G. Shin,et al.  The BLUE active queue management algorithms , 2002, TNET.

[13]  Van Jacobson,et al.  Controlling queue delay , 2012, Commun. ACM.

[14]  Amit Aggarwal,et al.  Understanding the performance of TCP pacing , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[15]  Vijay Subramanian,et al.  PIE: A lightweight control scheme to address the bufferbloat problem , 2013, 2013 IEEE 14th International Conference on High Performance Switching and Routing (HPSR).

[16]  Van Jacobson,et al.  BBR: Congestion-Based Congestion Control , 2016, ACM Queue.