FAST TCP Anwis Das Ajay Gulati Slides adapted from : IETF presentation slides Link: http://netlab.caltech.edu/FAST/index.html Background Last time we saw reliable communication requires a transport level protocol But user’s are selfish, leading to congestion Van Jacobson solved the problem by adapting TCP Slow Start Congestion Avoidance Accurate Estimation of RTT, etc Is the solution still valid considering today’s technology?? Hypothesis TCP Reno is a good solution for low speed networks but not a viable solution for high-speed networks Too conservative, not stable, and requires extremely small equilibrium loss probability There exists an equation that governs the flow of all variants of TCP FAST provides a solution to this equation and shows that it is stable and reaches equilibrium quickly Philosophy of Reno Packet level Designed and implemented first Flow level Understood afterwards Flow level dynamics determines Equilibrium: performance, fairness Stability Design flow level equilibrium & stability Implement flow level goals at packet level Problems with TCP Reno Equilibrium problem Packet level: AI too slow, MI too drastic Flow level: required loss probability too small Dynamic problem Packet level: must oscillate on binary signal Flow level: unstable at large window TCP Flow Dynamics Reno TCP Packet level W W + 1/W Loss: W W – 0.5W ACK: Flow level dynamics pkts TCP Variant Performance Reno: AIMD (1, 0.5) ACK: W W + 1/W Loss: W W – 0.5W HSTCP: AIMD (a(w), b(w)) ACK: W W + a(w)/W Loss: W W – b(w)W STCP: MIMD (1/100, 1/8) ACK: W W + 0.01 Loss: W W – 0.125W Flow level: Reno, HSTCP, STCP, FAST Generic flow level dynamics! window adjustment = control gain flow level goal Different gain k and utility Ui They determine equilibrium and stability Different congestion measure pi Loss probability (Reno, HSTCP, STCP) Queueing delay (Vegas, FAST) Problem: binary signal TCP oscillation Solution: multibit signal FAST stabilized FAST TCP Dynamics Generic equation: window adjustment = control gain flow level goal FAST TCP equation: Can map generic equation to FAST TCP equation and understand how FAST TCP stabilizes faster than other TCP variants Window control algorithm Full utilization regardless of bandwidth-delay product Globally stable exponential convergence Fairness weighted proportional fairness parameter a Window control algorithm Theorem (Jin, Wei, Low ‘03) In absence of delay Mapping from w(t) to w(t+1) is contraction Global exponential convergence Full utilization after finite time Utility function: ai log xi (proportional fairness) FAST Linux Dynamic sharing: 3 flows Steady throughput HSTCP STCP queue FAST loss Linux throughput 30min Dynamic sharing on Dummynet capacity = 800Mbps HSTCP delay=120ms 14 flows iperf throughput Linux 2.4.x (HSTCP: UCL) STCP queue FAST loss Linux throughput HSTCP HSTCP 30min STCP Aggregate throughput large window 8000 small window 800pkts Dummynet: cap = 800Mbps; delay = 50-200ms; #flows = 1-14; 29 expts Fairness Jain’s index Dummynet: cap = 800Mbps; delay = 50-200ms; #flows = 1-14; 29 expts Stability stable in diverse scenarios Dummynet: cap = 800Mbps; delay = 50-200ms; #flows = 1-14; 29 expts Open issues 1 BaseRTT estimation route changes, dynamic sharing does not upset stability 2 Small network buffer at least like TCP adapt a on slow timescale, but how? 3 TCP-friendliness friendly at least at small window tunable, but how to tune? 4 Reverse path congestion should react? rare for large transfer? 5 Did not compare to Vegas Future plans What people on the street are saying about FAST TCP… PC Magazine“The fastest hardware in the world will not do you much good if your software can't take advantage of it. Business Week “Connections that leave broadband in the dust” Steven Low “This is OK for driving slowly in a parking lot. But on the open road you need to be able to look further ahead: That's what we are doing with Fast TCP.” Future Zone “Scientists have developed a new data transfer protocol for the Internet fast enough to download a full-length DVD movie in less than five seconds” And Of Course… Anwis and Ajay (Rice CS) – “FAST TCP Rocks!!! We can’t wait to use it!”