Improving TCP Start-up over High Bandwidth Delay Paths Ren Wang, - - PowerPoint PPT Presentation

improving tcp start up over high bandwidth delay paths
SMART_READER_LITE
LIVE PREVIEW

Improving TCP Start-up over High Bandwidth Delay Paths Ren Wang, - - PowerPoint PPT Presentation

Improving TCP Start-up over High Bandwidth Delay Paths Ren Wang, Giovanni Pau, M.Y. Sanadidi and Mario Gerla UCLA Computer Science Department www.cs.ucla.edu/NRL Motivation TCP Reno/Newreno Mechanism: Slow-start: cwnd grows


slide-1
SLIDE 1

Improving TCP Start-up

  • ver High Bandwidth Delay Paths

Ren Wang, Giovanni Pau, M.Y. Sanadidi and Mario Gerla

UCLA Computer Science Department www.cs.ucla.edu/NRL

slide-2
SLIDE 2

March, 2003 UCLA Computer Science Department 2

Motivation

  • TCP Reno/Newreno Mechanism:

Slow-start: cwnd grows exponentially until hit ssthresh Congestion-avoidance: cwnd grows linearly

  • By setting initial ssthresh to an arbitrary value, TCP may suffer:

ssthresh too high: multiple loss and coarse timeout ssthresh too low: premature exit of slow-start and low utilization

  • Majority of TCP flows are short-lived
  • The Bandwidth Delay Product(BDP)

has been growing fast, resulting in poor utilization for short-lived connections with current TCP implementation:

10 20 30 40 50 60 70 80 90 10 20 40 100 200 Bandwidth (Mbps) Utilization (%)

Utilization during the first 20 seconds (RTT=100ms)

slide-3
SLIDE 3

March, 2003 UCLA Computer Science Department 3

Related Work

  • Larger initial cwnd

Good for transfers with a few packets

  • Fast Start

Cached information may be stale

  • Smooth Start

Assuming initial ssthresh is large enough

  • Shared passive network discovery(SPANK)

Needs leaky bucket pacing

  • TCP Vegas
  • Hoe’s Method
slide-4
SLIDE 4

March, 2003 UCLA Computer Science Department 4

TCP Vegas(1)

  • Sender watches for sign that router’s queue is

building up and congestion will happen; e.g.,

RTT grows sending rate flattens

  • Sender lowers sending rate to avoid buffer overflow
  • During Slow-start, Vegas doubles cwnd every other

RTT

  • Until diff (between expected and achieved rate)

exceeds a threshold:

n

RTT cwnd baseRTT cwnd diff − =

slide-5
SLIDE 5

March, 2003 UCLA Computer Science Department 5

TCP Vegas(2)

20 40 60 80 100 120 140 1 2 3 4 5 cwnd in packets Time (sec) start of cwnd doubling period queue length corresponding to measured RTT Vegas cwnd Instant Queue Length

  • Problem: premature exit due to

RTT over-estimation, caused by temporary queue buildup:

  • Under-utilization becomes

severe when the bandwidth delay product increases:

  • Exit cwnd: the congestion window

when a connection exits slow start

0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 10 20 4 0 80 150 Bandwidth (Mbps) Ratio of exit cwnd to ideal window

Ratio of Slow-start termination cwnd to the ideal window (=BDP) (RTT =100ms)

slide-6
SLIDE 6

March, 2003 UCLA Computer Science Department 6

Hoe’s method(1)

  • Setting initial ssthresh to estimated BDP

Bandwidth: packet pair bandwidth estimate RTT: measured RTT of the first segment transmitted

  • May achieve high utilization, but not robust to buffer

variation and dynamic load during slow start phase

100 200 300 400 500 600 700 5 10 15 20 25 30 cwnd in packets Time (sec) Ideal exit window =Path BDP = 500 packets cwnd with large buffer (500)

slide-7
SLIDE 7

March, 2003 UCLA Computer Science Department 7

Hoe’s method(2)

  • Problem:

The bottleneck buffer is small compared to BDP Other large volume traffic join in during Slow-start phase

  • Multiple losses, timeout, and low utilization

100 200 300 400 500 600 700 5 10 15 20 25 30 cwnd in packets Time (sec) Ideal exit window =min (BDP,2*buffersize)= 250 cwnd with small buffer (125) 100 200 300 400 500 600 2 4 6 8 10 cwnd in packets Time (sec) 20 Mbps CBR starts at 0.5sec Multiple losses in Hoe's method cwnd of Hoe's method

(a)Small buffer cause multiple losses (b) Traffic interference cause multiple losses

slide-8
SLIDE 8

March, 2003 UCLA Computer Science Department 8

Adaptive Start (Astart) Approach

  • Take advantage of Eligible Rate Estimation (ERE)

in TCP Westwood (TCPW)

Adaptively and repeatedly reset ssthresh to estimated bandwidth share or Eligible Rate Estimate, if appropriate

  • Key idea in TCPW and ERE

Enhance congestion control via the Eligible Rate Estimate

ERE is estimated at the sender by sampling and exponential filtering measures from ACK stream Samples are determined from ACK inter-arrival times and info about bytes delivered

after packet loss (ie, 3 DUPACKs, or Timeout), ERE is used by sender to set cwnd, ssthresh=ERE x RTTmin

slide-9
SLIDE 9

March, 2003 UCLA Computer Science Department 9

TCP Westwood: the Control Algorithm

  • TCPW Algorithm Outline:

When three duplicate ACKs are detected: set ssthresh=ERE*RTTmin (instead of

ssthresh=cwin/2 as in Reno and NewReno)

if (cwin > ssthresh) set cwin=ssthresh When a TIMEOUT expires: set ssthresh=ERE*RTTmin (instead of

ssthresh=cwnd/2 as in Reno) and cwin=1 Note: RTTmin = min round trip delay experienced by the connection

slide-10
SLIDE 10

March, 2003 UCLA Computer Science Department 10

ERE in TCPW

BE Sampling:

Packet pair, may overestimate ( e.g. in Congestion), effective in random loss

Tk

Congestion

Tk

No Congestion

RTT d k

RTT k t j t j

s ∑ =

− >

RE Sampling:

Packet train, fair estimate in congestion, may underestimate (e.g. in random loss)

) /(

1 −

− =

k k k k

t t d S

  • ERE estimate: adapt the sample interval Tk according to current measured congestion

level (Vegas measure of congestion level)

  • Tk ranges from one ACK interarrival interval

RTT

  • RE <= ERE <= BE
slide-11
SLIDE 11

March, 2003 UCLA Computer Science Department 11

Adaptive Start (Astart) (1)

Astart uses ERE to adaptively and repeatedly reset ssthresh during the startup phase (connection startup and after a coarse timeout): if ( 3 DUPACKS are received) switch to congestion avoidance phase; else (ACK is received) if (ssthresh < (ERE*RTTmin)/seg_size) ssthresh =(ERE*RTTmin)/seg_size; endif if (cwnd >ssthresh) /*mini congestion avoid. phase*/ increase cwnd by 1/cwnd; else if (cwnd <ssthresh) /*mini slow start phase*/ increase cwnd by 1; endif endif

slide-12
SLIDE 12

March, 2003 UCLA Computer Science Department 12

Astart (2)

  • Astart continuously uses ERE
  • Contains mini slow-start and mini

congestion-avoidance phases

  • cwnd grows slower as it approaches

BDP

(a)Big buffer (500 packets) BDP = 500 packets (b) Small buffer(125 packets)

100 200 300 400 500 600 700 800 900 5 10 15 20 25 30 cwnd in packets Time (sec) cwnd Slow Start Threshold 100 200 300 400 500 600 700 5 10 15 20 25 30 cwnd in packets Time (sec) cwnd Slow Start Threshold 420 430 440 450 460 470 480 490 500 510 1.6 1.7 1.8 1.9 2 2.1 2.2 cwnd in packets Time (sec) mini congestion avoidance phases mini slow start phases cwnd

(c)A closer look at Astart cwnd dynamic

slide-13
SLIDE 13

March, 2003 UCLA Computer Science Department 13

Astart (3)

Astart cwnd dynamic with 5 connections startup simultaneously cwnd dynamic with UDP traffic joins in during startup phase (compare Astart and Hoe’s method)

50 100 150 200 250 300 350 400 2 4 6 8 10 cwnd in packets Time (sec) cwnd (connection 1) cwnd (connection 2) cwnd (connection 3) cwnd (connection 4) cwnd (connection 5)

100 200 300 400 500 600 2 4 6 8 10 cwnd in packets Time (sec) cwnd of Astart 20 Mbps CBR starts at 0.5sec Multiple losses in Hoe's method cwnd of Hoe's method

slide-14
SLIDE 14

March, 2003 UCLA Computer Science Department 14

Throughput Comparison

Throughput vs. Bottleneck Capacity (During first 20 seconds) (RTT =100ms, Buffer size =BDP) Throughput vs. Bottleneck Buffer size (During first 20 seconds) (RTT =100ms, Bottleneck =40 Mbps) Throughput vs. Two-way Propagation Time (During first 20 seconds) (Bottleneck capacity = 40 Mbps, Buffer size =BDP)

Results summary

  • Scaling with Capacity
  • Robust to buffer size
  • Scaling with Propagation time

5 10 15 20 25 30 35 40 45 20 40 60 80 100 120 140 160 180 200 Throughput (Mbps) Two-way Propagation Time (msec) NewReno with Hoe's change AStart Vegas NewReno

5 10 15 20 25 30 35 40 100 120 140 160 180 200 220 240 260 Throughput (Mbps) BOttleneck buffer size (Segments) NewReno with Hoe's change Astart Vegas NewReno

20 40 60 80 100 120 140 20 40 60 80 100 120 140 Throughput (Mbps) bottleneck Capacity (Mbps) NewReno with Hoe's change Astart Vegas NewReno

slide-15
SLIDE 15

March, 2003 UCLA Computer Science Department 15

Efficiency/Friendliness

  • Use Efficiency/Friendliness Tradeoff Graph

X-axis represents friendliness Y-axis represents efficiency

1 2 3 4 5 6 0.85 0.9 0.95 1 1.05 1.1 Utilization Ratio G (Efficiency) Throughput Ratio L (Friendliness) BDP=500 BDP=625 BDP=750 Astart vs. NewReno

Simulation setup:

Bottleneck: 40 Mbps BDP: Varies with RTT Two connections start up at the same time Record the throughput during first 5 seconds Calculate Utilization ratio and throughput ratio

slide-16
SLIDE 16

March, 2003 UCLA Computer Science Department 16

Summary

  • Reviewed and evaluated Vegas, Hoe’s method
  • Presented Astart, a new approach based on TCPW ERE
  • Compared throughput, scaling with BDP, and robustness

to buffer and load variations

  • Hoe’s method provides high throughput, but Astart comes

very close, AND is robust to buffer size and dynamic load

  • Astart is another illustration of the benefits of pursuing

estimates of bandwidth measures to improve congestion control in TCP

slide-17
SLIDE 17

March, 2003 UCLA Computer Science Department 17

References

  • The papers about TCP Westwood, TCP Westwood CRB and ABSE

can be found in the papers section of the TCP Westwood Web Page: http://www.cs.ucla.edu/NRL/hpi/tcpw/

  • TCP Vegas: New Techniques for Congestion Detection and
  • Avoidance. Lawrence Brakmo, Sean O'Malley, and Larry Peterson. In

ACM SIGCOMM, pages 24-35, August 1994

  • Hoe’s Method: J. C. Hoe, “Improving the Start-up Behavior of A

Congestion Control Scheme for TCP”, Proc. ACM SIGCOMM ’96.

  • Fast Start: V.N. Padmamabhan and R.H. Katz, “TCP Fast Start: A

Technique for Speeding Up Web Transfers”, Proceedings of IEEE globecom’98, Sydney, Australia, Nov. 1998.

  • Smooth Start: H. Wang, H. Xin, D.S. Reeves and K.G. Shin "A Simple

Refinement of Slow Start of TCP Congestion Control", In proceedings

  • f ISCC’00, Antibes, France, 2000
  • Large initial window: M. Allman, S. Floyd and C. Patridge,

“Increasing TCP’s initial Window”, INTERNET DRAFT, April 1998

  • SPANK: Y. Zhang, L. Qiu and S. Keshav, “Optimizing TCP Start-up

Performance”, Cornell CSD Technical Report, February, 1999