330 likes | 336 Views
This paper explores the origin of the TCP problem in high-speed networks and presents BIC-TCP as a solution. It discusses existing protocols, their weaknesses, and introduces BIC-TCP as a more scalable and TCP-friendly alternative.
E N D
BIC Control for FastLong-Distance Networks paperwritten by InjongRhee, Lisong Xu & Khaled Harfoush (2004) Presented by Jonathan di Costanzo (2009/02/18)
Outline • Motivation • Origin of the problem • ResponseFunction of TCP • Existingprotocols • BIC-TCP • Conclusion
NewYork ABILENE UK It SuperJANET4 GARR-B STARLIGHT ESNET GENEVA GEANT CALREN NL STAR-TAP SURFnet Fr Renater Origin of the problem – TCP strengh • Extremelyreliable (ACK notification) • Manyhigh-speed networks (>10Gbps) • 90% of datatransmission
cwnd = cwnd * (1-1/2) cwnd = cwnd + 1 Packet loss Packet loss TCP Packet loss Packet loss cwnd Slow start Congestion avoidance Time (RTT) Origin of the problem – TCP Weakness • The instantaneous throughput of TCP is controlled by a variable cwnd, • TCP transmits approximately a cwnd number of packets per RTT (Round-Trip Time).
1.4 hours 1.4 hours 1.4 hours 100,000 10Gbps 50,000 5Gbps Origin of the problem – TCP Weakness • A TCP connection with 1250-Byte packet size and 100ms RTT is running over a 10Gbps link (assuming no other connections, and no buffers at routers) slow increase TCP Packet loss Packet loss Packet loss Packet loss big decrease cwnd Slow start Congestion avoidance Time (RTT)
Response Function of TCP is : • R : Average Throughput • MSS: Packet Size • RTT: Round-Trip Time • P : Packet Loss Probability ResponseFunction • Response function of TCP is the average throughput of a TCP connection in terms of the packet loss probability, the packet size, and the round-trip time.
ResponseFunction 10Gbps requires a packet loss rate of 10-10, or correspondingly a link bit error rate of at most 10-10, Assuming 1250-Byte packet size, and 100ms RTT
Outline • Motivation • Existingprotocols • AIMD • HSTCP • STCP • BIC-TCP • Conclusion
High-Speed Protocols • A new protocolisneeded • More aggressive about increasing transmission speeds (scalability) • Able to worksimultaneously with TCP • Advanced TCP • AIMD (Additive Increase Multiplicative Decrease) • HSTCP (High-Speed TCP) • STCP (Scalable TCP)
cwnd = cwnd + 1 cwnd = cwnd + 32 cwnd = cwnd * (1-1/2) cwnd = cwnd * (1-1/8) Packet loss Packet loss AIMD • AIMD increases cwnd by a larger number, say 32, instead of 1 per RTT. • After a packet loss, AIMD decreases cwnd by 1/8, instead of 1/2 TCP Packet loss Packet loss cwnd Slow start Congestion avoidance Time (RTT)
AIMD – Response Function • TCP: • AIMD: The throughput of AIMD is always about 13 times larger than that of TCP
AIMD – Response Function Bandwidth Scalable • Bandwidth Scalability The ability to achieve 10Gbps with a reasonable packet loss probability NOT TCP Friendly • TCP-Friendliness The ability to share bandwidth with TCP connections on low-speed networks
STCP & HSTCP – RTT unfairness • RTT unfairnessbetween 2 flows Numericaldefinition : = ratio between the averagethroughputs
cwnd = cwnd * (1-1/2) cwnd = cwnd * (1-1/8) cwnd = cwnd + 1 cwnd = cwnd + 0.01*cwnd Packet loss Packet loss STCP • STCP adaptively increases cwnd, and decreases cwnd by 1/8. TCP Packet loss Packet loss cwnd Slow start Congestion avoidance Time (RTT)
cwnd = cwnd * (1-1/2) cwnd = cwnd * (1-dec(cwnd)) cwnd = cwnd + 1 cwnd = cwnd + inc(cwnd) Packet loss Packet loss HSTCP • HSTCP adaptively increases cwnd, and adaptively decreases cwnd. • The larger the cwnd, the larger the increment, and the smaller the decrement. TCP Packet loss Packet loss cwnd Slow start Congestion avoidance Time (RTT)
STCP & HSTCP – ResponseFunctions Bandwidth Scalable • HSTCP: • STCP: HSTCP and STCP are both bandwidth scalable and TCP friendly TCP Friendly
Outline • Motivation • Existingprotocols • BIC-TCP • RTT fairness • Protocol design • Binaryincreasesearch • ResponseFunction / RTT fairness • Conclusion
RTT fairness • Differents session different RTT • We want a fair bandwidth allocation • RTT fairness index = throughout ratio of two flows with ≠ RTTs
RTT fairness • Low speed networks same RTT fairness • High speed networks same RTT fairness • For a protocol with the following response function, where c and d are protocol-related constants. • The RTT Fairness Index (or the throughput ratio of two flows) networks is For low-speed networks For high-speed networks
RTT fairness • General responsefunction • RTT fairness
RTT fairness • Throughout ratio of two flows on a 2.5Gbps Link • Throughout ratio of two flows on a 2.5Gbps Link • When the network capacity increases, the RTT fairness become worse best worse • 0.95 • 19.05 • 64.97
STCP & HSTCP – RTT unfairness 80ms 160ms
Protocol Design Scalability, RTT Fairness TCP Fairness
cwnd = cwnd + 1 cwnd = cwnd + f(cwnd, history) cwnd = cwnd * (1-1/2) cwnd = cwnd * (1-1/8) Packet loss Packet loss • BIC adaptively increase cwnd, and decrease cwnd by 1/8 TCP Packet loss Packet loss cwnd Slow start Congestion avoidance Time (RTT)
Available Bandwidth Binaryincreasesearch • The problemis to know how to adjust the cwnd • Throughput (cwnd/RTT) vs. Availablebandwidth • Linearsearch ?
Smin Smax Binaryincreasesearch • The problemis to know how to adjust the cwnd • Throughput (cwnd/RTT) vs. Availablebandwidth • Binarysearch ? inc = (Wmin+Wmax)/2 – cwnd Smin > inc > Smax cwnd = cwnd + inc Wmax Wmin
ResponseFunction Bandwidth scalability RTT Fairness TCP-Friendliness
RTT fairness • Throughput ratio of two flows with different RTTs on a 2.5Gbps link
Outline • Motivation • Existingprotocols • BIC-TCP • Conclusion
Conclusion • Quick summary
Conclusion • Furtherworks : CUBIC 32