34
Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even.

Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Embed Size (px)

Citation preview

Page 1: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Evaluating TCP Congestion Control

Doug LeithHamilton Institute

Ireland

Thanks: Robert Shorten, Yee Ting Lee, Baruch Even.

Page 2: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

QuickTime™ and aTIFF (LZW) decompressorare needed to see this picture.

TCP (Transport Control Protocol)reliable data transfer, congestion control

Page 3: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Queue is constrained to have a lower limit of zero and upper limit of qmax.

Send rate less than link bandwidth: queue sits at lower limit, no packets are dropped and packets arrive at destination at (roughly) same rate at which they were sent.

Send rate greater than link bandwidth: queue fills until upper limit is reached and packets are then dropped.drops provide feedback when we persistently exceed link bandwidth.transition where queue is neither empty nor overflowing – may be a complex middle ground e.g. may not have a single bottleneck queue but a varying one as cross-flows vary.

source destination

Drop-Tail Queues

Information Constraints- Decentralised operation (no information sharing between sources).- None of the sources are aware of the available bandwidth (communication

between network and sources is constrained).

Page 4: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Outline of current TCP congestion control algorithm

Additive-Increase Multiplicative-Decrease:

Probing seems essential in view of queue properties (no feedback as to link bandwidth until the queue starts to fill). TCP adopts a linear increase law- when source i receives an ACK packet it increases its window size cwndi by

with increase parameter i=1 in standard TCP.

When the window size eventually exceeds the “pipe” capacity, a packet will be dropped. When the source detects this (after a delay), the window size is reduced:

with decrease parameter i=0.5 in standard TCP.

time

cwndi

Page 5: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

The pipe size of a link is roughly BT+qmax

where B is the the link rate (packets/s), T is the propagation delay and qmax is the queue size.

On a long distance gigabit link, B=100,000 packets/s, T=200ms, qmax=1000 and

BT+qmax=21,000

Note that the pipe size determines the peak window size of a TCP source.

Case Study: High Bandwidth-Delay Product Paths

21000

11000 RTT’s~2200 seconds or 36 minutes

11000 packets

- TCP becomes sluggish, and requires v.low drop rate to achieve reasonable throughput.

Page 6: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

0 200 400 600 800 1000 12000

2000

4000

6000

8000

10000

12000

14000

16000

cwnd (packets)

ham02dub->w04chi, standard TCP

cwnd (packets)

throughput (x10Mbs)

218Mbs mean throughput over 20 mins – link bandwidth is 1Gbs

Dublin, Ireland - Starlight, Chicago

time (s)

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

Page 7: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Problem is not confined to long distance networks - at gigabit speeds, delay >10ms is enough to degrade performance.

Solutions ?

Simply making the increase parameter larger is inadmissable – on low-speed networks we require backward compatibility with current sources.

Large in high-speed regimes, =1 in low-speed regimes suggests some sort of mode switch.

Case Study: High Bandwidth-Delay Product Paths

Page 8: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

A Motivating Case Study … Scalable TCP

Scaleable TCP has convergence issues …

0 10 20 30 40 50 60 70 80 90 1000

500

1000

1500

2000

2500

3000

3500

time(s)

cwnd (packets)

Page 9: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

A Motivating Case Study … Scalable TCP

0 50 100 150 200 250 300 3500

500

1000

1500

2000

2500

3000

3500

4000

4500

5000

time(s)

cwnd (packets)

Page 10: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

What’s going on here ? Scalable is MIMD - can easily show this.

MIMD congestion control algorithms with drop-tail queueing do not converge to fairness in general.

D. Chiu and R. Jain, "Analysis of the Increase/Decrease Algorithms for Congestion Avoidance in Computer Networks," Journal of Computer Networks and ISDN, Vol. 17, No. 1, June 1989, pp. 1-14.

More precisely, MIMD algorithms do not converge to fairness when drop synchronisation occurs, and may converge arbitrarily slowly otherwise.

A Motivating Case Study … Scalable TCP

We can therefore dismiss MIMD algorithms as candidates for congestion control.

Page 11: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Example of two HS-TCP flows - the second flow experiences a drop early in slow-startfocussing attention on the responsiveness of the congestion avoidance algorithm.

(NS simulation: 500Mb bottleneck link, 100ms delay, queue 500 packets)

Another Example … High-Speed-TCP

0 50 100 150 200 250 300 350 4000

500

1000

1500

2000

2500

3000

3500

4000

4500

5000

time (s)

cwnd (packets)

Page 12: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Two questions …

1. How can we measure the performance of proposed changes to TCP in a systematic and meaningful way (that relates to issues of practical interest, supports fair comparisons) ?

2. Live experimental testing is time consuming, difficult and expensive. Can we screen for known issues and gotchas at an early stage (e.g. via simulation or lab testing) prior to full scale experimental testing ?

Questions are related of course.

Also, no screening or measurements can be exhaustive – we cannot prove the correctness of a protocol – but we can demonstrate incorrectness and tests can improve confidence.

Page 13: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Two practical issues

•Need to control for different network stack implementations

•Need to ensure that congestion control action is exercised

.

Page 14: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

Network stack implementation

.Linux 2.6.6, 250Mb/s, 200 ms RTT

Page 15: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Network stack implementation

.

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

Page 16: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Network stack implementation

.•O(loss) walk of packets in flight linked list rather than O(cwnd) walk

•SACK coalescing cf delayed acking

•Throttle disabled - netdev queue modified to be pure drop-tail

Patch available at ww.hamilton/ie/net/

Page 17: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Network stack implementation

.

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

Page 18: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Network stack implementation

.

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

Page 19: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Two practical issues

•Need to control for different network stack implementations

•Need to ensure that congestion control action is exercised

.

Page 20: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Congestion control action not exercised

.

w01gva to w05chi, txlen=100

0

200

400

600

800

1000

5 45 85 125 165 205245 285325 365405 445485 525565

time (s)

throughput (Mbs)

Initial tests – CERN-Chicago.

Bottleneck in NIC and with web100: throughput max’s out regardless of congestion avoidance algorithm used.

Page 21: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Putative Performance Measures

Most of issues with existing TCP proposals have been associated with the behaviour of competing flows.

Suggest using behaviour of standard TCP as a baseline against which to compare performance of new proposals. Focus on long-lived flows initially - this suggests consideration of the following characteristics:

•Fairness (between like flows)

•Friendliness (with legacy TCP)

•Efficiency (use of available network capacity).

•Responsiveness (how rapidly does the network respond to changes in network conditions, e.g. flows starting/stopping).

Page 22: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Putative Performance Measures (cont)

Important not to focus on a single network condition.

-We know that current TCP behaviour depends on bandwidth, RTT, queue size, number of users etc. We therefore expect to have to measure performance of proposed changes over a range of conditions also.

Suggest taking measurements for a grid of data points …

-we consider bandwidths of 10Mb/s, 100 Mb/s and 250Mb/s-two-way propagation delays of 16ms - 324ms-range of queue sizes from 5% - 100% BDP.

Page 23: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Putative Performance Measures (cont)

•Rather than defining a single metric (problematic to say the least), suggest using measurements of current TCP as baseline against which to make comparisons.

1. Symmetric conditions – flows use same congestion control algorithm, have same RTT, share common network bottleneck.

• Fairness should be largely insensitive to bandwidth, number of users, queue size

• Competing flows with same RTT should have same long-term throughput.

Page 24: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Symmetric conditions (2 flows): Fairness

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

“Scalable, FAST have unfairness issues”

•Common network stack implementation used•Averages over 5 tests runs•Queue 20% DBP

Page 25: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

250Mbs, 42ms RTT

250Mbs, 162ms RTT

Symmetric conditions (2 flows): Fairness

Page 26: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

250Mbs, 42ms RTT

250Mbs, 162ms RTT

250Mbs, 324ms RTT

Page 27: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

Symmetric conditions (2 flows): Fairness

QuickTime™ and aTIFF (Uncompressed) decompressor

are needed to see this picture.

“Scalable, FAST have unfairness issues”

•Common network stack implementation used•Averages over 5 tests runs•Queue 20% DBP

Page 28: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

250Mbs, 42ms RTT

250Mbs, 162ms RTT

250Mbs, 324ms RTT

Page 29: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

250Mbs, 42ms RTT

250Mbs, 162ms RTT

250Mbs, 324ms RTT

Page 30: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

RTT Unfairness

•Competing flows with different RTT’s may be unfair;

•Unfairness no worse than throughputs being roughly proportional to 1/RTT2 (cwnd proportional to 1/RTT).

Page 31: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

RTT Unfairness

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

Page 32: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

RTT Unfairness

“Scalable is v. RTT unfair at high-speeds”

“FAST, BIC, HS-TCP similarly”

Page 33: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

RTT Unfairness

QuickTime™ and aTIFF (LZW) decompressor

are needed to see this picture.

Page 34: Hamilton Institute Evaluating TCP Congestion Control Doug Leith Hamilton Institute Ireland Thanks: Robert Shorten, Yee Ting Lee, Baruch Even

Hamilton Institute

Summary

•Proposed use of standard TCP as a baseline for evaluating performance

•Demonstrate that even simple tests can be surprisingly revealing. Suggests that some screening is indeed worthwhile.

•Careful experiment design is important however e.g. controlling for network stack implementation