Abstract |
|---|
Most implementations of TCP perform poorly when packets are reordered. In this
paper, we propose a new version of TCP that maintains high throughput when
reordering occurs and yet, when packet reordering does not occur, is friendly
to other versions of TCP. The proposed TCP variant, or TCP-PR, does not rely
on duplicate acknowledgments to detect a packet loss. Instead, timers are
maintained to keep track of how long ago a packet was transmitted. In case the
corresponding acknowledgment has not yet arrived and the elapsed time since
the packet was sent is larger than a given threshold, the packet is assumed
lost. Because TCP-PR does not rely on duplicate acknowledgments, packet
reordering has no effect on TCP-PR's performance.
Through simulations, we evaluate TCP-PR's performance and compare it with
existing mechanisms that try to make TCP more robust to packet reordering. In
the case that packets are not reordered, we verify that TCP-PR maintains the
same throughput as typical implementations of TCP (specifically, TCP-SACK) and
shares network resources fairly. |