TCP Extended Acknowledgment Options
Manqing Huang · 2010
TCP may experience asymmetric bi-directional performance and poor over all performance when acknowledgments (ACKs) are sent by separate packets instead of being piggybacked by data packets. Between two TCP end points, when two-way traffic flows do not share the same TCP connection, the increase of traffic volume in one direction consumes more bandwidth in the reverse direction by generating more separate ACK packets, potentially causing more congestions in the reverse direction. An Extended Acknowledgment (EACK) mechanism can help overcome these limitations. The receiving TCP sends back EACK packets to the sender informing the sender of data, including data of the current TCP connection and data of other eligible connections, that have been received. EACK thus reduces the need for separate ACK packets and improves the bi-directional symmetry and over all throughput. This memo proposes an implementation of EACK and discusses its related issues.