350 likes | 695 Views
A Survey of Recent High Speed TCP Variants. Philip Fisher-Ogden U.C. Davis March 16 th , 2007. Outline. Why do we need high speed TCP variants? Three recent variants Compound TCP CUBIC TCP-Adaptive Reno Recent Evaluations Q&A. Standard TCP - advantages. Widely used Standardized
E N D
A Survey of Recent High Speed TCP Variants Philip Fisher-Ogden U.C. Davis March 16th, 2007
Outline • Why do we need high speed TCP variants? • Three recent variants • Compound TCP • CUBIC • TCP-Adaptive Reno • Recent Evaluations • Q&A
Standard TCP - advantages • Widely used • Standardized • Promises, promises • Guaranteed, in-order delivery • Avoids congestion collapse • Evolved: Tahoe, Reno/NewReno, SACK
Standard TCP - disadvantages • Underutilization of the bandwidth in fast long distance networks (FLDnets) • Low window size resiliency to packet loss in FLDnets
Prior High Speed TCPs • Effectively use available bandwidth • Unfriendly – “doesn’t play nicely with others” • Unfair to different RTT flows • Examples: HSTCP, STCP, BIC-TCP
Goals • TCP friendly • Minimize bandwidth-stolen • RTT fair • Co-existing flows with different RTTs are treated fairly • Efficient use of available bandwidth
Compound TCP - Motivation • Loss-based - uses packet loss as an indicator of congestion and modifies the increase/decrease congestion avoidance TCP parameters. • Delay-based - infers congestion and bottleneck queue size from changes in the RTT and modifies the transfer rates to mitigate the effects of congestion. • Combine both approaches • Focus on efficiency & friendliness
Compound TCP - Design • Maintains a delay window and a congestion window – uses both to determine send window • Estimates the bottleneck queue size: • Diff = (Expected – Actual) * baseRTT • Has a threshold, γ, at which it says “the network is congested”
Compound TCP - Design • Builds on loss-based (standard) TCP • Reverts to standard TCP at low window sizes • Uses gamma-auto tuning to dynamically adjust γ, the estimated number of packets that indicate a bottleneck in the queue, based on the network configuration
CUBIC - Motivation • Enhance BIC! • Maintain BIC’s scalability & stability • Simplify the window control • Improve BIC’s friendliness • Use real-time, rather than ACK-clocked, updates to window • Improve the detection of the “TCP Region”
CUBIC - Design • Based on BIC:
CUBIC - Design • Window growth function:
CUBIC – Design Aspects • Stability – The window grows slowly around Wmax. • Scalability – It experiences fast “probing” growth away from Wmax. • Intra-protocol fairness - Two competing CUBIC flows will converge to fair share window sizes. • Fairness – The window growth rate is time dependent and RTT independent, allowing for fairer sharing.
CUBIC – Design Aspects • Standard TCP outperforms CUBIC’s window growth function in short RTT networks. • CUBIC emulates the time-independent TCP window adjustment algorithm so that it can select the greater of the two windows (emulated versus cubic) to use.
TCP-AReno - Motivation • Enhance TCP-Westwood-BBE • Improve on TCP-Reno’s response function by incorporating a congestion estimate that is based on RTT measurements. • Identify if a packet loss was due to congestion or not.
TCP-AReno - Design • Congestion Estimate • RTTcong = the RTT that would indicate a congestion event. • Classifies packet losses as due to congestion or not • RTT values vary between RTTmin and RTTcong. The distance of recent RTT measurements from RTTcong and RTTmin determines the level of congestion in the network.
TCP-AReno - Design • Congestion Window Increase
TCP-AReno - Design • Congestion Window Reduction
Recent EvaluationsLinux beats Windows! • BIC/CUBIC are over aggressive and steal bandwidth. • Serious unfairness
Recent EvaluationsExperimental Evaluation of Cubic-TCP • Conducted partially in response to “should CUBIC be adopted in Linux?” • CUBIC suffers from a slow convergence of congestion windows. • Controversial! A rebuttal was issued by Injong Rhee (CUBIC co-author)
Recent EvaluationsExperimental Evaluation of Cubic-TCP • Example of slow convergence:
Recent EvaluationsAssessing Interactions among Legacy & High-Speed TCPs • Evaluated efficiency, fairness, & friendliness
Recent EvaluationsAssessing Interactions among Legacy & High-Speed TCPs • Delay-based control are not effective in improving RTT-fairness due to the slow-start behavior of short flows that induces RTT measurement problems • TCP-AReno was modified to avoid having the short flow problem impact its delay based mechanism. • TCP-AReno outperformed all others. • Compound TCP came close, but experienced the delay-based control problem.