05.08.2014 Views

An Investigation into Transport Protocols and Data Transport ...

An Investigation into Transport Protocols and Data Transport ...

An Investigation into Transport Protocols and Data Transport ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

6.1. Survey of New-TCP Algorithms 119<br />

cwnd <strong>and</strong> ssthresh (packets)<br />

3500<br />

3000<br />

2500<br />

2000<br />

1500<br />

1000<br />

500<br />

cwnd<br />

ssthresh<br />

0<br />

0 50 100 150 200 250 300<br />

Time (seconds)<br />

α<br />

120<br />

100<br />

80<br />

60<br />

40<br />

20<br />

0<br />

0<br />

0 50 100 150 200 250 300<br />

Time (seconds)<br />

α<br />

β<br />

1<br />

0.8<br />

0.6<br />

0.4<br />

0.2<br />

β<br />

(a) Congestion Window<br />

(b) AIMD Parameters<br />

Figure 6.3: cwnd dynamic of H-TCP (Single flow on Dummynet, link capacity<br />

200Mbit/sec, RTT 150ms, queue size 500 packets.)<br />

speed mode a period ∆ i later. After this period, the growth of cwnd is<br />

polynomial in nature, reaching very high values before loss is induced <strong>and</strong><br />

the cycle begins again. The adaptive backoff is also shown, with an initial<br />

value of 0.5 <strong>and</strong> later set to 0.8 due to the (relatively) large queue which<br />

means that the ratio of the minimum <strong>and</strong> maximum latencies is capped by<br />

the algorithm.<br />

6.1.4 BicTCP<br />

BicTCP [XHR04] attempts to address an issue with HSTCP <strong>and</strong> ScalableTCP<br />

whereby competing flows would starve the throughput of a St<strong>and</strong>ard TCP<br />

flow due to the faster growth of cwnd.<br />

The implementation of BicTCP is based around two separate algorithms;<br />

A binary search to determine the optimal cwnd size, <strong>and</strong> an additive increase<br />

to ensure fast convergence <strong>and</strong> RTT-fairness.<br />

Binary search is used to determine whether the current sending rate (or<br />

window) is larger than the network capacity. This is achieved with a variable<br />

w target that holds a value halfway between the values of cwnd just before <strong>and</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!