Smartacking: Improving TCP Performance from the Receiving End
We present smartacking, a technique that improves performance of Transmission Control Protocol (TCP) via adap- tive generation of acknowledgments (ACKs) at the receiver. When the bottleneck link is underutilized, the receiver transmi ts an ACK for each delivered data segment and thereby allows the connection to acquire the available capacity promptly. When the bottleneck link is at its capacity, the smartacking receiver sends ACKs with a lower frequency reducing the control traffi c overhead and slowing down the congestion window growth to utilize the network capacity more effectively. To promote quick deployment of the technique, our primary implementation of smartacking modifies only the receiver. This implementatio n estimates the sender's congestion window using a novel algo rithm of independent interest. We also consider different implemen- tations of smartacking where the receiver relies on explicit assistance from the sender or network. Experiments in a wide variety of settings show beneficial impacts of smartacking o n TCP performance, especially in environments with low levels of connection multiplexing on bottleneck links.