Survey
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
Removing Exponential Backoff from TCP Amit Mondal Aleksandar Kuzmanovic EECS Department Northwestern University http://networks.cs.northwestern.edu TCP Congestion Control Sending Rate packet loss • Slow-start phase • Double the sending ... ... rate each round-trip ... time • Reach high throughput ...quickly Time 2 A. Mondal Removing Exponential Backoff from TCP TCP Congestion Control Sending Rate packet loss • Additive Increase – ...Multiplicative Decrease • Fairness among flows Time 3 A. Mondal Removing Exponential Backoff from TCP TCP Congestion Control Sending Rate packet loss • Exponential •.backoff • System stability Time 4 A. Mondal Removing Exponential Backoff from TCP Our breakthrough Sending Rate packet loss • Exponential backoff • fundamentally wrong! Time 5 A. Mondal Removing Exponential Backoff from TCP Contribution Untangle retransmit timer backoff mechanism Challenge the need of exponential backoff in TCP Demonstrate exponential backoff can be removed from TCP without causing congestion collapse Incrementally deployable two-step task 6 A. Mondal Removing Exponential Backoff from TCP Implications Dramatically improve performance of shortlived and interactive applications Increase TCP's resiliency against low-rate (shrew attack) and high-rate (bandwidth flooding) DoS attack Other impacts 7 A. Mondal Removing Exponential Backoff from TCP Background Origin on RTO backoff Adopted from classical Ethernet protocol – IP gateway similar to 'ether' in shared-medium Ethernet network Exponential backoff is essential for Internet stability – "an unstable system (a network subject to random load shocks and prone to congestion collapse) can be stabilized by adding some exponential damping (exponential timer backoff) to its primary excitation (senders, traffic sources)“ [Jacobson88] 8 A. Mondal Removing Exponential Backoff from TCP Rationale behind revisions No admission control in the Internet – No bound on number of active flows – Stability results in Ethernet protocol not applicable IP gateway vs classical Ethernet – Classical Ethernet: Throughput reduces to zero in overloaded scenarios – IP gateway: Forwards packets at full capacity even in extreme congested scenarios Dynamic network environment Finite flow sizes and skewed traffic distribution Increased bottleneck capacities 9 A. Mondal Removing Exponential Backoff from TCP Implicit Packet Conservation Principle RTO > RTT – Karn-Partridge algorithm and Jacobson's algorithm ensures this End-to-end performance cannot suffer if endpoints uphold the principle – Formal proof for single bottleneck case in paper – Extensive evaluation with network testbed • Single bottleneck • Multiple bottleneck • Complex topologies 10 A. Mondal Removing Exponential Backoff from TCP Experimental methodology Testbed – – – – – Emulab 64-bit Intel Xeon machine + FreeBSD 6.1 RTT in 10ms - 200ms Bottleneck 10Mbps TCP Sack + RED Workload – Trace-II: Synthetic HTTP traffic based on empirical distribution – Trace-I : Skewed towards shorter file-size – Trace-III: Skewed towards longer file-size NS2 simulations 11 A. Mondal Removing Exponential Backoff from TCP Evaluation TCP*(n) : sub exponential backoff algorithms – No backoff for first “n” consecutive timeouts Impact of RTO backoff mechanism on response time Impact of minRTO and initRTO on end-to-end performance 12 A. Mondal Removing Exponential Backoff from TCP Sub-exponential backoff algorithms End-to-end performance does not degrade after removing exponential backoff from TCP Trace-I Trace-II Trace-III A. Mondal Removing Exponential Backoff from TCP 13 Impact of (minRTO, initRTO) parameters RFC 2988 recommendation – (1.0s, 3.0s) Current practice – (0.2s, 3.0s) Aggressive version – (0.2s, 0.2s) 14 A. Mondal Removing Exponential Backoff from TCP Impact of minRTO and initRTO Poor performance of (1.0s,3.0s) RTO pair, the CCDF tail is heaviest Aggressive minRTO and initRTO parameters do not hurt e2e performance as long as endpoints TCP uphold implicit packet conservation principle TCP*(3) TCP*(∞) Improved performance both for (0.2s, 3.0s) and (0.2s, 02s) pair 15 A. Mondal Removing Exponential Backoff from TCP Role of bottleneck capacity TCP*(∞) out performs classical TCP independent of bottleneck capacity 16 A. Mondal Removing Exponential Backoff from TCP Dynamic environments ON-OFF flow arrival period Inter-burst: 50ms – 10s 17 A. Mondal Removing Exponential Backoff from TCP Dynamic environments ON-OFF flow arrival period Inter-burst: 1 sec Time series of active connections 18 A. Mondal Removing Exponential Backoff from TCP TCP variants and Queuing disciplines TCP Tahoe, TCP Reno, TCP Sack Droptail, RED The backoff-less TCP stacks outperform regular stacks irrespective of TCP versions and queuing disciplines 19 A. Mondal Removing Exponential Backoff from TCP Multiple bottlenecks Dead packets Packets that exhaust In multiple bottleneck scenario is a chance network there resources that dead packets impact the performance upstream, but are thenof flows sharing the upstream bottleneck. dropped downstream Topology We do modeling and extensive experiment to explore such scenarios S1 S2 L1 S0 R1 R2 R3 L2 R4 C0 L0 p1 C1 p2 C2 20 A. Mondal Removing Exponential Backoff from TCP Impact on network efficiency Fraction of dead packet at upstream bottleneck: < 5% flows experience multiple bottleneck α = 0.002475 for (1%, 5%) very small 21 A. Mondal Removing Exponential Backoff from TCP Impact on end-to-end performance What happens if the percent of multiplebottleneck flows increases dramatically? What is the impact of backoff-less TCP approach on end-to-end performance in such scenarios? Emulab experiment – Set L0/(L0+L1)= 0.25 >> current situation 22 A. Mondal Removing Exponential Backoff from TCP Impact on end-to-end performance Improves response times distributions of both set of flows Similarimprove result as their response Multiple-bottlenecked flows Trace-II Trace-II times without causing catastrophic effect other flows even when their presence is significant Multiple-bottlenecked flows Trace-I improve response times, while upstream single-bottlenecked flows only marginally degrades response times Trace-III 23 A. Mondal Removing Exponential Backoff from TCP Realistic network topologies Orbis-scaled HOT topology 10 Gbps core link 100 Mbps server edge link 1 – 10Mbps client side link 10ms link delay Workload Response times distribution The improvement is more significant HTTP improves in absence of p2p in presence HTTP + P2P of p2p traffic traffic 24 A. Mondal Removing Exponential Backoff from TCP Incremental deployment TCP's performance degrades non-negligibly when present with TCP*(∞) Two-step Task – TCP to TCP*(3) – TCP*(3) to TCP*(∞) 25 A. Mondal Removing Exponential Backoff from TCP Summary Challenged the need of RTO backoff in TCP End-to-end performance can only improve if endpoints uphold implicit packet conservation principle Extensive testbed evaluation for single bottleneck and multiple bottleneck scenario, and with complex topologies Incrementally deployable two-step task 26 A. Mondal Removing Exponential Backoff from TCP Thank you 27 A. Mondal Removing Exponential Backoff from TCP Impact of minRTO and initRTO Aggressive minRTO and initRTO parameters do not hurt e2e performance as long as endpoints uphold implicit packet conservation principle TCP TCP*(3) TCP*(∞) 28 A. Mondal Removing Exponential Backoff from TCP Impact of minRTO and initRTO Aggressive minRTO and initRTO parameters do not hurt e2e performance as long as endpoints uphold implicit packet conservation principle TCP TCP*(3) TCP*(∞) 29 A. Mondal Removing Exponential Backoff from TCP