skip to main content
research-article

CUBIC: a new TCP-friendly high-speed TCP variant

Published: 01 July 2008 Publication History
  • Get Citation Alerts
  • Abstract

    CUBIC is a congestion control protocol for TCP (transmission control protocol) and the current default TCP algorithm in Linux. The protocol modifies the linear window growth function of existing TCP standards to be a cubic function in order to improve the scalability of TCP over fast and long distance networks. It also achieves more equitable bandwidth allocations among flows with different RTTs (round trip times) by making the window growth to be independent of RTT -- thus those flows grow their congestion window at the same rate. During steady state, CUBIC increases the window size aggressively when the window is far from the saturation point, and the slowly when it is close to the saturation point. This feature allows CUBIC to be very scalable when the bandwidth and delay product of the network is large, and at the same time, be highly stable and also fair to standard TCP flows. The implementation of CUBIC in Linux has gone through several upgrades. This paper documents its design, implementation, performance and evolution as the default TCP algorithm of Linux.

    References

    [1]
    Git logs for CUBIC updates. http://git.kernel.org/?p=linux/kernel/git/davem/net-2.6.git;a=history;f=net/ipv4/tcpcubic.c;h=eb5b9854c8c7330791ada69b8c9e8695f7a73f3d;hb=HEAD.
    [2]
    Iperf. http://sourceforge.net/projects/iperf.
    [3]
    Linux CUBIC source navigation. http://lxr.linux.no/linux/net/ipv4/tcp_cubic.c.
    [4]
    TCP Testing Wiki. http://netsrv.csc.ncsu.edu/wiki/index.php/TCP_Testing.
    [5]
    Testing setup for Linux and FreeBSD. http://netsrv.csc.ncsu.edu/wiki/index.php/Testing_Setup_of_kernel_2.6.23.9.
    [6]
    Pluggable congestion avoidance modules. http://lwn.net/Articles/128681/ (2005).
    [7]
    Aikat, J., Kaur, J., Smith, F., and Jeffay, K. Variability in TCP round-trip times. In Proceedings of the ACM SIGCOMM Internet Measurement Conference (Miami, FL, October 2003).
    [8]
    Andrew, L., Marcondes, C., Floyd, S., Dunn, L., Guillier, R., Gang, W., Eggert, L., Ha, S., and Rhee, I. Towards a common TCP evaluation suite. In Proceedings of the fourth PFLDNet Workshop (UK, March 2008).
    [9]
    Barford, P., and Crovella, M. Generating representative web workloads for network and server performance evaluation. In Measurement and Modeling of Computer Systems (1998), pp. 151--160.
    [10]
    Brakmo, L., and Peterson, L. TCP vegas: End to end congestion avoidance on a global internet. IEEE Journal of Selected Areas in Communications (October 1995).
    [11]
    Bullot, H., Cottrell, R. L., and Hughes-Jones, R. Evaluation of advanced TCP stacks on fast long-distance production networks. In Proceedings of the third PFLDNet Workshop (Illinois, February 2004).
    [12]
    Cai, H., Eun, D., Ha, S., Rhee, I., and Xu, L. Stochastic ordering for internet congestion control and its applications. In Proceedings of IEEE INFOCOM (Anchorage, Alaska, May 2007).
    [13]
    Caini, C., and Firrincieli, R. TCP hybla: a TCP enhancement for heterogeneous networks. International Journal of Satellite Communication and Networking 22, 5 (September 2004), 547--566.
    [14]
    Casetti, C., Gerla, M., Mascolo, S., Sanadidi, M. Y., and Wang, R. TCP Westwood: Bandwidth estimation for enhanced transport over wireless links. In Proceedings of ACM Mobicom (Rome, Italy, July 2001).
    [15]
    Floyd, S. HighSpeed TCP for Large Congestion Windows. RFC 3649 (Experimental), Dec. 2003.
    [16]
    Floyd, S., Handley, M., and Padhye, J. A Comparison of Equation-Based and AIMD Congestion Control, May 2000.
    [17]
    Fu, C. P., and Liew, S. C. TCP Veno: TCP Enhancement for Transmission Over Wireless Access Networks. IEEE Journal of Selected Areas in Communications (Feb 2003).
    [18]
    Ha, S. Cubic v2.0-pre patch. http://netsrv.csc.ncsu.edu/twiki/pub/Main/BIC/cubickernel-2.6.13.patch.
    [19]
    Hatano, T., Fukuhara, M., Shigeno, H., and Okada, K. TCP-friendly SQRT TCP for High Speed Networks. In Proceedings of APSITT (November 2003), pp. 455--460.
    [20]
    Hemminger, S. Cubic root benchmark code. http://lkml.org/lkml/2007/3/13/331.
    [21]
    Hemminger, S. Linux TCP Performance Improvements. Linux World 2004 (2004).
    [22]
    Hemminger, S. Network Emulation with NetEm. Linux Conf Au (2005).
    [23]
    Hemminger, S. TCP infrastructure split out. http://lwn.net/Articles/128626/ (2005).
    [24]
    Jin, C., Wei, D. X., and Low, S. H. FAST TCP: motivation, architecture, algorithms, performance. In Proceedings of IEEE INFOCOM (Hong Kong, March 2004).
    [25]
    Kelly, T. Scalable TCP: Improving performance in highspeed wide area networks. ACM SIGCOMM Computer Communication Review 33, 2 (April 2003), 83--91.
    [26]
    Liu, S., Basar, T., and Srikant, R. TCP-Illinois: A loss and delay-based congestion control algorithm for high-speed networks. In Proceedings of VALUETOOLS (Pisa, Italy, October 2006).
    [27]
    Rhee, I., and Xu, L. CUBIC: A new TCP-friendly high-speed TCP variant. In Proceedings of the third PFLDNet Workshop (France, February 2005).
    [28]
    Shorten, R. N., and Leith, D. J. H-TCP: TCP for high-speed and long-distance networks. In Proceedings of the Second PFLDNet Workshop (Argonne, Illinois, February 2004).
    [29]
    Tarreau, W. Cubic optimization. http://git.kernel.org/?p=linux/kernel/git/davem/net2.6.git;a=commit;h=7e58886b45bc4a309aeaa8178ef89ff767daaf7f.
    [30]
    Xu, L., Harfoush, K., and Rhee, I. Binary increase congestion control for fast long-distance networks. In Proceedings of IEEE INFOCOM (Hong Kong, March 2004).
    [31]
    Zhang, Y., Duffield, N., Paxson, V., and Shenker, S. On the constancy of Internet path properties. In Proceedings of ACM SIGCOMM Internet Measurement Workshop (November 2001).

    Cited By

    View all
    • (2024)Optimizing the Virtual Reality Experience Using a 360° View of Client and Network DataSMPTE Motion Imaging Journal10.5594/JMI.2024/RLWZ3064133:3(56-64)Online publication date: May-2024
    • (2024)Long-distance RDMA-acceleration FrameworksNTT Technical Review10.53829/ntr202403ra122:3(75-82)Online publication date: Mar-2024
    • (2024)Resilient TCP Variant Enabling Smooth Network Updates for Software-Defined Data Center NetworksTsinghua Science and Technology10.26599/TST.2024.901001029:5(1615-1632)Online publication date: Oct-2024
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM SIGOPS Operating Systems Review
    ACM SIGOPS Operating Systems Review  Volume 42, Issue 5
    Research and developments in the Linux kernel
    July 2008
    113 pages
    ISSN:0163-5980
    DOI:10.1145/1400097
    Issue’s Table of Contents

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 01 July 2008
    Published in SIGOPS Volume 42, Issue 5

    Check for updates

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)755
    • Downloads (Last 6 weeks)64

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Optimizing the Virtual Reality Experience Using a 360° View of Client and Network DataSMPTE Motion Imaging Journal10.5594/JMI.2024/RLWZ3064133:3(56-64)Online publication date: May-2024
    • (2024)Long-distance RDMA-acceleration FrameworksNTT Technical Review10.53829/ntr202403ra122:3(75-82)Online publication date: Mar-2024
    • (2024)Resilient TCP Variant Enabling Smooth Network Updates for Software-Defined Data Center NetworksTsinghua Science and Technology10.26599/TST.2024.901001029:5(1615-1632)Online publication date: Oct-2024
    • (2024)RayNet: A Simulation Platform for Developing Reinforcement Learning-Driven Network ProtocolsACM Transactions on Modeling and Computer Simulation10.1145/365397534:3(1-25)Online publication date: 30-Mar-2024
    • (2024)Chorus: Coordinating Mobile Multipath Scheduling and Adaptive Video StreamingProceedings of the 30th Annual International Conference on Mobile Computing and Networking10.1145/3636534.3649359(246-262)Online publication date: 29-May-2024
    • (2024)Correctness of Flow MigrationProceedings of the 25th International Conference on Distributed Computing and Networking10.1145/3631461.3631541(144-153)Online publication date: 4-Jan-2024
    • (2024)PioneerProceedings of the 15th ACM Multimedia Systems Conference10.1145/3625468.3652174(306-312)Online publication date: 15-Apr-2024
    • (2024)SatGuard: Concealing Endless and Bursty Packet Losses in LEO Satellite Networks for Delay-Sensitive Web ApplicationsProceedings of the ACM on Web Conference 202410.1145/3589334.3645639(3053-3063)Online publication date: 13-May-2024
    • (2024)Meet Challenges of RTT Jitter, A Hybrid Internet Congestion Control AlgorithmProceedings of the ACM on Web Conference 202410.1145/3589334.3645338(2768-2776)Online publication date: 13-May-2024
    • (2024)When TCP Meets Reconfigurations: A Comprehensive Measurement StudyIEEE Transactions on Network and Service Management10.1109/TNSM.2023.332750821:2(1372-1386)Online publication date: Apr-2024
    • Show More Cited By

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media