This paper introduces a new user-level communication protocol designed to provide high-performance data transfers across high-bandwidth, high-delay, networks. The protocol incorporates the most important enhancements defined by the networking community to improve the performance to TCP for this environment, and also defines enhancements unique to this protocol. In terms of the so-called "Large Window" extensions to TCP, this protocol implements a communication window that is essentially infinite, and provides a selective acknowledgement window that spans the entire data transfer. In terms of user-level extensions to TCP, it implements a user-defined acknowledgement frequency, a user-defined "batch sending" window, and a simple framework within which the user can define the algorithm that determines the next data packet to be sent out across all eligible packets. We present experimental results demonstrating data throughput on the order of 85% - 92% of the maximum available bandwidth across both short haul and long haul high-performance networks.
[1]
Matthew Mathis,et al.
Automatic TCP buffer tuning
,
1998,
SIGCOMM '98.
[2]
Van Jacobson,et al.
TCP Extensions for High Performance
,
1992,
RFC.
[3]
Sally Floyd,et al.
TCP Selective Acknowledgement Options
,
1996
.
[4]
Stephen E. Deering,et al.
Path MTU discovery
,
1990,
RFC.
[5]
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).
[6]
Vern Paxson,et al.
TCP Congestion Control
,
1999,
RFC.
[7]
Ian T. Foster,et al.
Secure, Efficient Data Transport and Replica Management for High-Performance Data-Intensive Computing
,
2001,
2001 Eighteenth IEEE Symposium on Mass Storage Systems and Technologies.
[8]
Wu-chun Feng,et al.
The Failure of TCP in High-Performance Computational Grids
,
2000,
ACM/IEEE SC 2000 Conference (SC'00).