Socket Buffer Auto-Sizing for High-Performance Data Transfers

It is often claimed that TCP is not a suitable transport protocol for data intensive Grid applications in high-performance networks. We argue that this is not necessarily the case. Without changing the TCP protocol, congestion control, or implementation, we show that an appropriately tuned TCP bulk transfer can saturate the available bandwidth of a network path. The proposed technique, called SOBAS, is based on automatic socket buffer sizing at the application layer. In non-congested paths, SOBAS limits the socket buffer size based on direct measurements of the received throughput and of the corresponding round-trip time. The key idea is that the send window should be limited, after the transfer has saturated the available bandwidth in the path, so that the transfer does not cause buffer overflows (‘self-induced losses’). A difference with other socket buffer sizing schemes is that SOBAS does not require prior knowledge of the path characteristics, and it can be performed while the transfer is in progress. Experimental results in several high bandwidth-delay product paths show that SOBAS provides consistently a significant throughput increase (20% to 80%) compared to TCP transfers that use the maximum possible socket buffer size. We expect that SOBAS will be mostly useful for applications such as GridFTP in non-congested wide-area networks.

[1]  Ren Wang,et al.  Using adaptive rate estimation to provide enhanced and robust transport over heterogeneous networks , 2002, 10th IEEE International Conference on Network Protocols, 2002. Proceedings..

[2]  Rajesh Krishnan,et al.  A Swifter Start For TCP , 2002 .

[3]  Parameswaran Ramanathan,et al.  What do packet dispersion techniques measure? , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[4]  Van Jacobson,et al.  TCP Extensions for High Performance , 1992, RFC.

[5]  Yin Zhang,et al.  On the constancy of internet path properties , 2001, IMW '01.

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

[7]  Manish Jain,et al.  The tcp bandwidth-delay product revisited: network buffering , 2003 .

[8]  Matthew Mathis,et al.  Automatic TCP buffer tuning , 1998, SIGCOMM '98.

[9]  Brian Tierney,et al.  A TCP Tuning Daemon , 2002, ACM/IEEE SC 2002 Conference (SC'02).

[10]  Robert T. Braden,et al.  Requirements for Internet Hosts - Communication Layers , 1989, RFC.

[11]  Bruce S. Davie,et al.  Computer Networks: A Systems Approach , 1996 .

[12]  Cheng Jin,et al.  FAST TCP: Motivation, Architecture, Algorithms, Performance , 2006, IEEE/ACM Transactions on Networking.

[13]  Aleksandar Kuzmanovic,et al.  TCP-LP: a distributed algorithm for low priority data transfer , 2003, IEEE INFOCOM 2003. Twenty-second Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428).

[14]  George Yang,et al.  Network Characterization Service (NCS) , 2001, Proceedings 10th IEEE International Symposium on High Performance Distributed Computing.

[15]  Brian Tierney,et al.  TCP Tuning Guide for Distributed Application on Wide Area Networks , 2001, login Usenix Mag..

[16]  Vern Paxson,et al.  On estimating end-to-end network path properties , 2001, SIGCOMM LA '01.

[17]  Wu-chun Feng,et al.  A comparison of TCP automatic tuning techniques for distributed computing , 2002, Proceedings 11th IEEE International Symposium on High Performance Distributed Computing.

[18]  Mark Carson,et al.  NIST Net: a Linux-based network emulation tool , 2003, CCRV.

[19]  Zhen Liu,et al.  Evaluation of TCP Vegas: emulation and experiment , 1995, SIGCOMM '95.

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

[21]  Manish Jain,et al.  End-to-end available bandwidth: measurement methodology, dynamics, and relation with TCP throughput , 2003, TNET.

[22]  Sally Floyd Limited Slow-Start for TCP with Large Congestion Windows , 2004, RFC.

[23]  Tom Kelly,et al.  Scalable TCP: improving performance in highspeed wide area networks , 2003, CCRV.

[24]  Robert L. Grossman,et al.  PSockets: The Case for Application-level Network Striping for Data Intensive Applications using High Speed Wide Area Networks , 2000, ACM/IEEE SC 2000 Conference (SC'00).

[25]  Donald F. Towsley,et al.  Modeling TCP throughput: a simple model and its empirical validation , 1998, SIGCOMM '98.

[26]  Vern Paxson,et al.  TCP Congestion Control , 1999, RFC.

[27]  Wu-chun Feng,et al.  Dynamic right-sizing in FTP (drsFTP): Enhancing Grid performance in user-space , 2002, Proceedings 11th IEEE International Symposium on High Performance Distributed Computing.

[28]  Brian D. Noble,et al.  The end-to-end performance effects of parallel TCP sockets on a lossy wide-area network , 2002, Proceedings 16th International Parallel and Distributed Processing Symposium.

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