Performance of TCP over lossy upstream and downstream links with link-level retransmissions

We study the efficacy of using link-layer retransmissions to improve the TCP performance over lossy wireless links. The scenario we consider is where TCP packets traverse a wired network to a base station, and thence over a single wireless hop to a stationary receiver. Unlike many previous studies, which rely on simulation, we develop an analytical model for calculating TCP throughput; unlike all previous analytical studies, we do not ignore the possibility of acknowledgement packets (ACKs) being lost on the reverse link from the wireless receiver to the base station. The analytical model captures the performance of four common TCP algorithms: OldTahoe, Tahoe, NewReno and Sack. We find that, for the scenarios studied, a moderate number of link-level retransmissions can significantly improve the throughput of TCP and its resilience to packet losses on the forward and reverse links; increasing the number of retransmissions further has relatively little benefit. We also show that ACK losses cannot be ignored unless the number of retransmissions permitted is high or errors on the reverse link are infrequent. Of the TCP algorithms studied, we find that Sack has the best performance, closely followed by NewReno; the performance of OldTahoe is very poor. We end with suggestions for further work.