Mitigating E Egregi egiou ous A ACK CK Delays in Ce n Cellular Da Data Ne Networks b by Eliminating T TCP A CP ACK Cl CK Cloc ocking Wai Kay Leong, Yin Xu, Ben Leong, Zixiao Wang National University of Singapore
Asymmetry i in C Cellula lar r Network rks • Congestion in Uplink ‒ Concurrent Upload ▪ RSFC [Xu et al. 2012] ‒ Other Users Uplink Downlink
Egregi giou ous A ACK D CK Delays • TCP congestion control is ACK- clocked Data Data ACK
Egregi giou ous A ACK D CK Delays • TCP congestion control is ACK- clocked • Congested uplink can delay ACKs ‒ Downlink becomes idle Data Data ACK
Egregi giou ous A ACK D CK Delays • TCP congestion control is ACK- Idle clocked Downlink • Congested uplink can delay ACKs ‒ Downlink becomes idle Under Utilization Data Reduced ACK Throughput
Sol olut ution on: E Eliminate A ACK Cl CK Cloc ocki king Idea: If we know the bandwidth, we can send at maximum rate. Send Data at X Mb/s cwnd Bandwidth: X Mb/s Data Data Data ACK Not dependent on ACK arrival
Cha Challenge 1 e 1: Estimating Ban Bandwidth Bandwidth ≡ Receive Rate Idea • Use receiving rate as equivalent of available bandwidth Done Passively Condition • To avoid modifications at the receiver Use TCP Timestamps Solution • Enabled by default on Android and iPhones
Estimating R Rec ecei eive R e Rate Mobile Sender Receiver TSval = t r0 TSval = t r1 TSval = t r0 Receive TSval = t r1 Rate ρ Δ ACK/ Δt = ρ t r1 – t r0 = Δt
Chal Challenges es 1. Estimating Bandwidth 2. Timestamp Granularity too Coarse ‒ Cannot estimate with high accuracy 3. Bandwidth variation ‒ Have to keep updating estimation
Sol olut ution on Self-oscillating Feedback Loop ‒ Estimate Receive Rate ρ ‒ Send Rate σ How to detect No Congestion congestion? Send Faster Send slower ( σ < ρ ) ( σ > ρ ) Link Congested
Detect ect Cong Conges estion on • Idea: Monitor Queuing Delay Buffer t buff = 0 t buff > 0 • How? ‒ TCP Timestamps ‒ Relative Difference between sender and receiver
Detect ecting Cong g Conges estion Mobile Sender Receiver t s1 x Queuing RD – RD min ≈ t buff Delay (t buff ) x Congestion detected when t buff >T Relative Delay Min Delay (RD) (RD min ) TSval = t r1 A TSval = t r1 RD = t r1 – t s1
Sum ummary of of Al Algor orithm 1. Initial Receive 2. Buffer Rate Estimation Management Mode • Send 10 packets t buff > T a) Buffer Fill State • Estimate ρ using Send Faster ( σ > ρ ) replies TCP-RRE t buff < T b) Buffer Drain State (Receiver-Rate Estimation) 3. Monitor Mode Send Slower ( σ < ρ ) • Probe network Significant • Details in paper changes in network
Para rameters rs? • How much faster or slower to send? • What threshold T to use? • When to switch to monitor state? See details in paper
ns-2 E 2 Evaluation Measured real networks to get simulation parameters
ns-2 E 2 Evaluation 1. Single Download with Slow Uplink 2. Single Download under Normal Conditions 3. Download with Concurrent Upload 4. Handling Network Fluctuation 5. TCP Friendliness
ns-2 E 2 Evaluation 1. Single Download with Slow Uplink 2. Single Download under Normal Conditions 3. Download with Concurrent Upload 4. Handling Network Fluctuation 5. TCP Friendliness
Download w Do with S Slow Up Uplink 1MB Data ACK 200 Uplink Speed (kb/s) 20 8 1 Downlink Speed (Mb/s) ns-2
Do Download w with S Slow Up Uplink Uplink speed decreases ns-2
Do Downloa oad u unde der N Normal C Condi ditions ons ns-2
Do Downloa oad u unde der N Normal C Condi ditions ons Packet Loss 1400+ ns-2
Do Downloa oad u unde der N Normal C Condi ditions ons ns-2
Download w with C Con oncurrent U Uploa oad Download 1MB Upload until download completion 3000 Uplink Speed (kb/s) 250 0.5 8 Downlink Speed (Mb/s) ns-2
Download w with C Con oncurrent U Uploa oad 2.5X ns-2
Eval aluation on i in n Linux Download 1MB Download 1MB with TCP-RRE with CUBIC Upload until download completion • Several Places, different ISPs • Multiple times • CDF of all experiments at each place for each ISP
Eval aluation on i in n Linux
Eval aluation on i in n Linux +50%
Eval aluation on i in n Linux
Eval aluation on i in n Linux +25%
Conc Conclusion on Congested Poor Download Delayed ACKs Uplink Performance
Conc Conclusion on • TCP-RRE ‒ ACK Clocking ‒ Rate Control with Feedback Loop • Use TCP Timestamp ‒ Estimate Receive Rate ‒ Detect Congestion • Improves TCP ‒ Uplink is Slow ‒ Uplink is Congested • Keep the Delay Low • Fair to Other TCP Flows
Than ank Y You ou QUE QUESTI TIONS
Han andling g Network F k Fluct ctuation ons CUBIC
Han andling g Network F k Fluct ctuation ons TCP-RRE
TCP F CP Friendliness • Run two RSFC uploads concurrently • Calculate Jain fairness index: + + 2 2 2 ( ) /( 2 ( )) R R R R 1 2 1 2
TCP F CP Friendliness
Recommend
More recommend