TCP Fast Start: A Technique For Speeding Up Web Transfers
Web browsing is characterized by short and bursty data transfers interspersed by idle periods. The TCP protocol yields poor performance for such a workload because the TCP slow start procedure, which is initiated both at connection start up and upon restart after an idle period, usually requires several round trips to probe the network for bandwidth. When a transfer is short in length, this leads to poor bandwidth utilization and increased latency, which limit the performance benefits of techniques such as P-HTTP.
In this paper, we present a new technique, which we call TCP fast start, to speed up short Web transfers. The basic idea is that the sender caches network parameters to avoid paying the slow start penalty for each page download. However, there is the risk of performance degradation if the cached information is stale. The two key contributions of our work are in addressing this problem. First, to shield the network as a whole from the ill-effects of stale information, packets sent during the fast start phase are assigned a higher drop priority than other packets. Second, to prevent the connection attempting fast start from experiencing degraded performance under such adverse conditions, the standard TCP loss recovery procedure is augmented with new algorithms. Performance results, obtained from both simulation and experiments using our BSD/OS implementation, show a reduction in latency by up to a factor of 2-3.