Recursively Cautious Congestion Control

TCP's congestion control is deliberately cautious, avoiding network overloads by starting with a small initial window and then iteratively ramping up. As a result, it often takes flows several round-trip times to fully utilize the available bandwidth. In this paper we propose RC3, a technique to quickly take advantage of available capacity from the very first RTT. RC3 uses several levels of lower priority service and a modified TCP behavior to achieve near-optimal throughputs while preserving TCP-friendliness and fairness. We implement RC3 in the Linux kernel and in NS-3. In common wide-area scenarios, RC3 results in over 40% reduction in average flow completion times, with strongest improvements - more than 70% reduction in flow completion time - seen in medium to large sized (100KB - 3MB) flows.

[1]  Qian Zhang,et al.  A Compound TCP Approach for High-Speed and Long Distance Networks , 2006, Proceedings IEEE INFOCOM 2006. 25TH IEEE International Conference on Computer Communications.

[2]  Chase Cotton,et al.  Packet-level traffic measurements from the Sprint IP backbone , 2003, IEEE Netw..

[3]  J. Crowcroft,et al.  Lost In the Edge : Finding Your Way With Signposts , 2013 .

[4]  Mark Handley,et al.  Is it still possible to extend TCP? , 2011, IMC '11.

[5]  Arun Venkataramani,et al.  Proceedings of the 5th Symposium on Operating Systems Design and Implementation Tcp Nice: a Mechanism for Background Transfers , 2022 .

[6]  E.W. Knightly,et al.  TCP-LP: low-priority service via end-point congestion control , 2006, IEEE/ACM Transactions on Networking.

[7]  Sergiu Nedevschi,et al.  Reducing Network Energy Consumption via Sleeping and Rate-Adaptation , 2008, NSDI.

[8]  Sally Floyd,et al.  Quick-Start for TCP and IP , 2007, RFC.

[9]  Christophe Diot,et al.  An approach to alleviate link overload as observed on an IP backbone , 2003, IEEE INFOCOM 2003. Twenty-second Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428).

[10]  Jon Crowcroft,et al.  Lost in the Edge: Finding Your Way with DNSSEC Signposts , 2013, FOCI.

[11]  Ratul Mahajan,et al.  Measuring ISP topologies with Rocketfuel , 2004, IEEE/ACM Transactions on Networking.

[12]  Sally Floyd,et al.  TCP Selective Acknowledgement Options , 1996 .

[13]  Amit Agarwal,et al.  An argument for increasing TCP's initial congestion window , 2010, CCRV.

[14]  Larry L. Peterson,et al.  TCP Vegas: new techniques for congestion detection and avoidance , 1994 .

[15]  Sally Floyd,et al.  TCP Selective Acknowledgment Options , 1996, RFC.

[16]  Guido Appenzeller,et al.  Sizing router buffers , 2004, SIGCOMM '04.

[17]  Sally Floyd,et al.  The NewReno Modification to TCP's Fast Recovery Algorithm , 2004, RFC.

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

[19]  Syed Obaid Amin,et al.  Minion: Unordered Delivery Wire-Compatible with TCP and TLS , 2011 .

[20]  Mark Handley,et al.  Congestion control for high bandwidth-delay product networks , 2002, SIGCOMM '02.

[21]  Mark Allman,et al.  Comments on bufferbloat , 2013, CCRV.

[22]  Hari Balakrishnan,et al.  TCP ex machina: computer-generated congestion control , 2013, SIGCOMM.

[23]  Sally Floyd,et al.  Increasing TCP's Initial Window , 1998, RFC.

[24]  Matthew Mathis,et al.  Forward acknowledgement: refining TCP congestion control , 1996, SIGCOMM '96.

[25]  Sally Floyd,et al.  An Extension to the Selective Acknowledgement (SACK) Option for TCP , 2000, RFC.

[26]  Ratul Mahajan,et al.  Measuring ISP topologies with rocketfuel , 2002, SIGCOMM 2002.

[27]  Nick McKeown,et al.  Why flow-completion time is the right metric for congestion control , 2006, CCRV.

[28]  Randy H. Katz,et al.  TCP Fast Start: A Technique For Speeding Up Web Transfers , 1998 .

[29]  Ramesh Govindan,et al.  Reducing web latency: the virtue of gentle aggression , 2013, SIGCOMM.

[30]  Sally Floyd,et al.  HighSpeed TCP for Large Congestion Windows , 2003, RFC.

[31]  Mark Handley,et al.  How Hard Can It Be? Designing and Implementing a Deployable Multipath TCP , 2012, NSDI.

[32]  Injong Rhee,et al.  Binary increase congestion control (BIC) for fast long-distance networks , 2004, IEEE INFOCOM 2004.

[33]  Nick McKeown,et al.  Deconstructing datacenter packet transport , 2012, HotNets-XI.

[34]  Lili Wang,et al.  A Conservative Selective Acknowledgment (SACK)-based Loss Recovery Algorithm for TCP , 2003, RFC.

[35]  Walid Dabbous,et al.  Network characteristics of video streaming traffic , 2011, CoNEXT '11.