TCP-CarsonA Loss-event Based Adaptive AIMD
Protocol for Long-lived Flows
Hariharan Kannan
Advisor: Prof. M Claypool
Co-Advisor: Prof. R Kinicki
Reader: Prof. D Finkel
Outline
• Introduction
• TCP Behavior
• TCP-Carson
• Evaluation
• Summary
• Future Work
Introduction
• Modern Internet• Short-lived flows e.g. HTTP• Streaming media e.g. Real audio• Real-time applications e.g. VoIP services• Long-lived flows e.g. FTP
• Heavy tailed• 80% bytes are from few connections [Matta, ‘01]
• Use TCP• 80% of traffic is TCP [Hidenari, ‘97]• Responsive to congestion – Internet stability• No loss• Router Support to TCP like behavior• More applications are built on top of TCP
Optimize long-lived flow performance in TCP like fashion
Long-lived
Modifications to TCP• TCP – Two phases
– Slow Start: (till first loss of packet)• Aim: Rough estimate of available bandwidth. • Congestion Manager [Bala, ’99], TCP Fast Start [Venkat, ‘98]
– Congestion Avoidance:• Aim: Optimize window-size, react to network congestion• Reno, New-Reno, Vegas, Tahoe• AIMD [Yang, ‘00]: window size = f (increase “a”, decrease “1-b”)
– Conventional TCP (1, 0.5)– Other Equations: a=3b/(2-b) , a=4(1-b²)/3
– TCP-Carson *– TCP variant, built on top of RENO – Window-based– Fully reliable– Responsive to Congestion
* Carson City: Located in the State of Nevada, Population: 52457, Founded 1858
For more details visit http://www.carson-city.nv.us/
The Probing Problemdrop
s
TCP-Carson
• Detects Steady State– Losses are periodic– Loss interval: Interval in packets between two
successive losses
• Adapt responsiveness (reaction)– Adapt “a”, “b”: (increase, decrease)
• Benefits: Increase throughput, reduce loss, reduce window-size variance
Outline
• Introduction
• TCP Behavior– Congestion Window– Loss interval
• TCP-Carson
• Evaluation
• Summary
Topology
R2R1
r1
r2
r3s3
s2
s1
1 Mb, 40ms
2 Mb, 10ms 2 Mb, 10msDrop tail
Q = 15
Drop tail
Q = 15
TCP – Cwnd Behavior
1 16 1
Steady Unsteady SteadyRTX-TO- b/w
+ b/w
TCP – Loss interval Loss Interval : Number of packets between successive loss events
1 16 1
Steady SteadyUnsteady
Outline
• Introduction• TCP Behavior• TCP-Carson
– Steady State Detection• Metrics• Mechanism
– Algorithm
• Evaluation• Summary
Steady State Detection - Metrics
1 116
Steady State Detection - Metrics
1 116
Steady State Detection - Algorithm
• Metric : Weighted Average Loss Interval– Used in TFRC [Floyd, ‘01]– Evaluated overlapping and distinct windows– Evaluated window sizes from 4 – 32– Chose sliding-32
– Equal weights to recent 16– Exponentially decreasing weights for prior 16
• wti = 1, 1 ≤ i ≤ 16
= 1 - [(i – n/2)/(n/2 +1)] , 17 ≤ i ≤ 32
1 2 3 … … … 31 32 33
Steady State Detection - Algorithm
• When Steady?– wali(i+1) = wali(i) ± [ 0.1 * wali(i)]
• When Unsteady?– wali(i+1) != wali(i) ± [ 0.1 * wali(i)]– Retransmission timeout– No loss for long time
• See how it works!!!
Steady State – 10 Flows
4 8 16 8 4
Steady State – Varying # of flows
4 8 16 8 4
TCP–Carson : Algorithm
• AIMD Table:
• detect_state(loss_interval) • if (steady) { go_up() }• if (unsteady) {go_down()} //become TCP
• Okay dude!!! Show me the results!!!!
“a” “b”
0.148 0.875
0.250 0.750
0.750 0.600
1.000 0.500 TCP
(start here)
Evaluation
• 1 TCP-Carson• 1 TCP-Carson, 1 CBR• 1 TCP-Carson, 1 TCP-Reno• 4 TCP-Carson, 4 TCP-Reno• 7 TCP-Carson, 1 TCP-Reno• 1 TCP-Carson, 7 TCP-Reno• 8 TCP-Carson• 20 TCP-Carson• Varying flow life-times – Varying number of flows
1TCP-Carson
1 TCP-Carson, 1 CBR(0.5Mb)
1 Carson, 1 UDP 1 Carson, 1 UDP
1 Carson
1TCP-Carson, 1TCP-Reno
4-Carson, 4-Reno
8 TCP-Carson flows
Evaluation
Carson Reno
Avg Cwnd 27.7 24.4
Loss 121 167
Thruput 0.948 0.944
Single Flow
Carson Reno
Avg Cwnd 14.6 12.6
Loss 124 180
Thruput 0.511 0.437
1-Carson, 1-Reno
Carson Reno
Avg Cwnd 8.7 7.7
Loss 158 172
Thruput * 0.187 0.161
4-Carson, 4-Reno
Carson Reno
Avg Cwnd 8.1 7.0
Loss 90 134
Thruput 0.121 0.109
8-Carson / 8-Reno
* Note: Bottleneck bandwidth was 1.5M
• TCP friendly in all cases
• Average throughput less than TCP response function for (loss, RTT) combination
Summary• TCP variant (on top of Reno)• Detects Steady State• Adapts responsiveness• Benefits:
– Increase throughput– Reduces loss– Reduce window-size variance– End-to-End protocol
Future Work
• AIMD action
• RED/ECN effect
• Application performance
• Slow-start, high congestion periods
• Steady state detection algorithms
TCP-CarsonA Loss-event Based Adaptive AIMD
Protocol for Long-lived Flows
Hariharan Kannan
Advisor: Prof. M Claypool
Co-Advisor: Prof. R Kinicki
Reader: Prof. D Finkel