protocols for large data transfers over local networks
In this paper we analyze protocols for transmitting large amounts of data over a local area network. The data transfers analyzed in this paper are different from most other forms of large-scale data transfer protocols for three reasons: (1) The definition of the protocol requires the recipient to have sufficient buffers available to receive the data before the transfer takes place; (2) We assume that the source and the destination machine are more or less matched in speed; (3) The protocol is implemented at the network interrupt level and therefore not slowed down by process scheduling delays. We consider three classes of protocols: stop-and-wait, sliding window and blast protocols. We show that the expected time of blast and sliding window protocols is significantly lower than the expected time for the stop-and-wait protocol, with blast outperforming sliding window by some small amount. Although the network error rate is sufficiently low for blast with full retransmission on error to be acceptable, the frequency of errors in the network interfaces makes it desirable to use a more sophisticated retransmission protocol. A go-back-n strategy is shown to be only marginally inferior to selective retransmission and is, given its simplicity, the retransmission strategy of choice. Our results are based on measurements collected on SUN workstations connected to a 10 megabit Ethernet network using 3-Com interfaces. The derivation of the elapsed time in terms of the network packet error rate is based on the assumption of statistically independent errors.
data locality network paper large-scale reasoning definition buffers process scheduling delay class sliding window timing errors interfaces use strategies select measurement ethernet