TCP acceleration and spoofing acknowledgements

Opinion
Mar 24, 20052 mins

* One technique for accelerating traffic using TCP acceleration

If you’re considering using TCP acceleration, it’s important to talk with your proposed vendor(s) to make sure you understand exactly how they are “accelerating” the traffic. One of the most common – and rudimentary – techniques involves spoofing acknowledgements.

The issue here is that when you’re sending a packet (in the generic sense) of information over the network, a local copy of the information must be maintained until you get an acknowledgement that the information was received at the other end. Since IP does not in itself perform this task, TCP takes care of this process. And since TCP is used only in the end-point devices, both the original traffic and the returning acknowledgement must make its way through the network. 

Only a limited number of packets (called the window) may be left unacknowledged.  If an acknowledgement is delayed, then the transmitting side must wait until the window opens again. While waiting for an acknowledgement, the transmission is said to have “windowed out.”

Imagine a network where the actual path involves two acceleration devices – one at each endpoint location. As soon as the first acceleration device receives the packet of information, it sends an acknowledgement, thereby spoofing the receiving device so the sending device can continue to transmit. The acceleration device then saves a copy so it can be retransmitted if needed between the other acceleration device. The final acceleration device similarly communicates with the destination endpoint.

The result is that there is greater overall throughput because the propagation delay is decreased from being end-to-end propagation time to the propagation delay between individual components – the end-points and the acceleration devices. Of course, this acceleration is much more pronounced for large file transfers than for individual short transactions.

Jim has a broad background in the IT industry. This includes serving as a software engineer, an engineering manager for high-speed data services for a major network service provider, a product manager for network hardware, a network manager at two Fortune 500 companies, and the principal of a consulting organization. In addition, Jim has created software tools for designing customer networks for a major network service provider and directed and performed market research at a major industry analyst firm. Jim’s current interests include both cloud networking and application and service delivery. Jim has a Ph.D. in Mathematics from Boston University.

More from this author