UCSC-CRL-97-20: IMPROVING TCP THROUGHPUT OVER TWO-WAY ASYMMETRIC LINKS: ANALYSIS AND SOLUTIONS

08/01/1997 09:00 AM
Computer Engineering
We study several schemes for improving the performance of two-way TCP traffic over asymmetric links where the bandwidths in the two directions may differ substantially, possibly by many orders of magnitude. The sharing of a common buffer by data segments and acknowledgments in such an environment produces the effect of ack compression, often causing dramatic reductions in throughput. We first demonstrate the significance of the problem by means of measurements on an experimental network and then proceed to study approaches to improve the throughput of the connections. These approaches reduce the effect of ack compression by carefully controlling the flow of data packets and acknowledgments. We first examine a scheme where acknowledgments are transmitted at a higher priority than data. By analysis and simulation, we show that prioritizing acks can lead to starvation of the low-bandwidth connection. The second approach makes use of a connection- level backpressure mechanism to limit the maximum amount of data buffered in the outgoing IP queue of the source of the low-bandwidth connection. This approach, while minimizing the queueing delay for acks, is shown to result in unfair bandwidth allocation on the slow link. In addition, the connection throughputs are highly sensitive to parameters such as packet and ack sizes in either direction. Finally, our preferred solution makes use of a connection-level bandwidth allocation mechanism. We show that this scheme overcomes the limitations of the previous approaches, provides isolation, and enables precise control of the connection throughputs. We present analytical models of the dynamic behavior of each of these approaches, derive closed-form expressions for the expected connection efficiencies in each case, and validate them with simulation results.

UCSC-CRL-97-20