Abstract

The Transmission Control Protocol (TCP) is one of the pillars of the Internet. Therefore extensive research has been conducted to improve its performance, primarily via optimizing TCP's congestion control algorithm. In this work, we show that besides congestion control, TCP's Slow-Start algorithm is increasingly becoming a bottleneck in modern high-speed networks. To tackle the problem, we propose a different approach called Stateful-TCP, where path bandwidth estimated in a previous flow is used to instantly ramp up the transmission rate of the subsequent flow to the same destination. This eliminates the need for bandwidth probing in conventional Slow-Start, enabling TCP to efficiently utilize the available path bandwidth right from the beginning. We applied Stateful-TCP to Linux's default TCP implementation - Cubic, to form S-Cubic and evaluated its performance via extensive emulations and Internet experiments. Results from independent Internet experiments using over 1,000 end-user clients showed that S-Cubic could reduce FCT by 37.5% and increase throughput by over 50% compared to Cubic. As opposed to an entirely new TCP design, Stateful-TCP is designed to complement congestion control and thus could potentially be applied to many of the existing TCP variants, as well as incorporated into future TCP designs.

Highlights

  • The transmission Control Protocol (TCP) is one of the pillars of the Internet as most applications use it for data transport

  • Westwood [3], Veno [4], and BBR [5] were designed to mitigate the impact of random loss in mobile networks; TCP-Hybla [6] was developed for satellite network with long delay and high loss rate; DCTCP [7] was developed for datacenter networks; Sprout [8] was developed for delaysensitive applications in mobile networks; PCC [9] was designed to adapt its congestion control behavior based on inband network measurements, and Copa [10] was designed to achieve low delay while competing fairly in the presence of loss-based competing TCP flows

  • The goal of Stateful-TCP is to enable a new TCP flow to operate in the same way as if it is a continuation of the previous flow to the same destination, i.e., bypass Slow-Start and transmit at the path bandwidth right from the beginning

Read more

Summary

INTRODUCTION

The transmission Control Protocol (TCP) is one of the pillars of the Internet as most applications use it for data transport. Common to almost all TCP variants – a TCP flow begins in a Slow-Start phase [21] with a relatively low initial transmission rate (either limited by the initial congestion window size, i.e., CWnd, or transmission rate), which is increased progressively as packets are correctly delivered. TCP’s Slow-Start mechanism could become a significant bottleneck to its performance, more so in networks with large bandwidth-delay-product (BDP) This limitation is widely-known, and the initial CWnd of TCP has been raised from 2 MSS in TCP Reno [22] to 10 MSS in today’s Linux kernel [1]. Note the naïve solution of increasing the CWnd further is not practical either, as too large an initial CWnd can cause congestion in low-bandwidth network paths This problem is unsolvable without any information on the network path at the beginning of a TCP flow. The rest of the paper is organized as follows: Section II reviews some previous related works; Section III revisits TCP’s Slow-Start mechanism and demonstrates the limitations of existing solutions; Section IV presents the Stateful-TCP mechanism and its application to Cubic; Section V presents experimental results for S-Cubic; Section VI summarizes the paper and outlines some future work

AND RELATED WORKS
PERFORMANCE IMPACT
INITIAL CWND TUNING
THE CWND DILEMMA
PRINCIPLE
SYSTEM DESIGN
GAP-COMPENSATED BANDWIDTH ESTIMATION
LINUX IMPLEMENTATION
FLOW COMPLETION TIME
QUEUING DELAY
SHARED BOTTLENECK LINK
FAIRNESS AND FRIENDLINESS
C8: Toronto
INTERNET CLOUD EXPERIMENT
MOBILE NETWORK EXPERIMENTS
IMPACT OF AGED BANDWIDTH INFORMATION
INDEPENDENT BENCHMARKS
Findings
SUMMARY AND FUTURE WORK

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.