a report on a few steps in the evolution of congestion control · a report on a few steps in the...

33
A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale Communication Networks 1

Upload: others

Post on 22-Apr-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

A report on a few steps in the evolution of congestion control

Sally FloydJune 10, 2002IPAM Program in Large Scale Communication Networks

1

Page 2: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Topics:

� High-speed TCP.

� Faster Start-up?

� AQM: Adaptive RED

� Evaluation of AQM mechanisms.

� A proposal about models and simulations

� Other open questions?

2

Page 3: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Architectural sub-themes:

� A goal of incremental deployment in the current Internet.

� Steps must go in the fundamantally correct, long-term direction, not beshort-term hacks.

� Robustness in heterogeneous environments valued over efficiency ofperformance in well-defined environments.

� A skepticism towards simple models.

� Learning from actual deployment is an invaluable step.

� The Internet will continue to be decentralized and fast-changing.

3

Page 4: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

HighSpeed TCP:

Joint work with Sylvia Ratnasamy and Scott Shenker.

Additional investigations with Evandro de Souza and Deb Agarwal.

URLs:http://www.icir.org/floyd/papers/draft-floyd-tcp-highspeed-00c.txthttp://www.icir.org/floyd/papers/draft-floyd-tcp-slowstart-00b.txt

4

Page 5: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

HighSpeed TCP: The problem.

� TCP’s average congestion window is roughly������� �

packets.

� Maintaining an average cwnd of at least����� �����

packets requires apacket loss/corruption rate of at most

������� �.

� Given 1500-byte packets and a 100 ms RTT, filling a 10 Gbps pipe wouldcorrespond to a congestion window of � � ����������� packets.

– At least 1.6 hours between packet drops.

� We can do better, even with only the current feedback from routers.

5

Page 6: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

HighSpeed TCP: Is this a pressing problem?

� Nope. In practice, users do one of the following:– Open up � parallel TCP connections; or– Use MulTCP (roughly like an aggregate of � virtual TCP connections).

� However, we think it is possible to do much better, with:– Better flexibility (no � to configure);– Better scaling;– Better slow-start behavior;– Competing more fairly with current TCP

(for environments where TCP is able to use the available bandwidth).

6

Page 7: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

HighSpeed TCP: use a modified response function.

1

10

100

1000

10000

100000

1e-10 1e-09 1e-08 1e-07 1e-06 1e-05 0.0001 0.001 0.01 0.1

Sen

ding

Rat

e S

(in

pkts

/RTT

)

Loss Rate P

(10^-7, 83000)

(15^-3, 31)

Regular TCP (S = 1.22/p^0.5)Highspeed TCP (S = 0.15/p^0.82)

7

Page 8: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

HighSpeed TCP: Simulations in NS.

� ./test-all-tcpHighspeed in tcl/test.

� The parameters specifying the response function:– Agent/TCP set low window 31– Agent/TCP set high window 83000– Agent/TCP set high p 0.0000001

� The parameter specifying the decrease function at high p :– Agent/TCP set high decrease 0.1

8

Page 9: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

HighSpeed TCP: Relative fairness.

0

50

100

150

200

1e-10 1e-09 1e-08 1e-07 1e-06 1e-05 0.0001 0.001 0.01 0.1

Hig

hspe

ed T

CP

/ R

egul

ar T

CP

, Sen

ding

Rat

es

Loss Rate P

Relative Fairness (0.11/p^0.32)

9

Page 10: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

HighSpeed TCP: modifying slow-start:

� Slow-starting up to a window of 83,000 packets doesn’t work well.– Tens of thousands of packets dropped from one window of data.– Slow recovery for the TCP connection.

� The answer:– Agent/TCP set max ssthresh N– During the initial slow-start, increase the congestion window by at

most N packets in one RTT.

10

Page 11: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Faster Start-up?

From a proposal by Amit Jain.

No URL yet.

11

Page 12: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Faster Start-up: Larger Initial Sending Rate

An IP option in the SYN packet gives the sender’s desired initial sendingrate.

– Routers on the path decrement a counter,– and decrease the allowed initial sending rate, if necessary.

If all routers on the path participated:– The receiver tells the sender the allowed initial sending rate in the

SYN/ACK packet, in the transport header.

This is from a proposal by Amit Jain (from Netscaler).

12

Page 13: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Adaptive RED

Joint work with Ramakrishna Gummadi and Scott Shenker.

URL (with simulation scripts):http://www.cs.berkeley.edu/ ramki/adaptiveRED/

13

Page 14: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

The One-Page Primer on RED:

0

0.2

0.4

0.6

0.8

1

0 5 10 15 20 25 30 35 40 45 50

Pac

ket D

rop

Pro

babi

lity

Average Queue Size (in packets)

minthresh = 5

maxthresh = 15

max_p = 0.1

"p"

For the average queue size:!#"%$'& ( )+* , - &+./!0"213&54 - &7614

Page 15: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Adaptive RED: adapting 8 90:0;< The original Adaptive RED proposal is from Feng et al., 1997.

– Adjusts 8 9#:0; to keep the average queue between 8 =?>A@CB and 8 90:D@EB .

< We have a new implementation of Adaptive RED, adapting 8 9#: ; .

< Automatic setting of F G as a function of the link bandwidth.

< Automatic setting of 8 =?> @CB and 8 90: @CB as a function of the target queuesize.

15

Page 16: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Simulation with malignant oscillations:

0

20

40

60

80

100

120

0 20 40 60 80 100

Ave

rage

Que

ue L

engt

h

Time (in Seconds)

RED, one-way long-lived traffic, H I =0.002.No web traffic, no reverse-path traffic.15 Mbps link, 250 ms round-trip time.

90% link utilization.

16

Page 17: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

0

20

40

60

80

100

120

0 20 40 60 80 100

Ave

rage

Que

ue L

engt

h

Time (in Seconds)

RED, mostly one-way long-lived traffic, J K =0.002.Web traffic and reverse-path traffic added.

15 Mbps link, 250 ms round-trip time.

17

Page 18: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Simulation with benign oscillations:

0

20

40

60

80

100

120

0 20 40 60 80 100

Ave

rage

Que

ue L

engt

h

Time (in Seconds)

Adaptive RED, one-way long-lived traffic, L M =0.00027.No web traffic, no reverse-path traffic.15 Mbps link, 250 ms round-trip time.

96.8% link utilization.

18

Page 19: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

0

20

40

60

80

100

120

0 20 40 60 80 100

Ave

rage

Que

ue L

engt

h

Time (in Seconds)

Adaptive RED, mostly one-way long-lived traffic, N O =0.00027.Web traffic and reverse-path traffic added.

15 Mbps link, 250 ms round-trip time.

19

Page 20: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

The optimal average queue size?

P It depends on the desired tradeoff at the router between high utilizationand low delay.

P It is heavily affected by traffic, topology, etc.

P We don’t know the optimal average queue size.

20

Page 21: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Mostly long-lived traffic, Adaptive RED.

75

80

85

90

95

100

0 50 100 150 200

Link

Util

izat

ion

Queue Length

"5_flows""10_flows""20_flows""30_flows""40_flows""50_flows""60_flows""70_flows""80_flows""90_flows"

"100_flows"

Traffic includes some web mice, and reverse-path traffic..

21

Page 22: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Mostly long-lived traffic, Drop Tail.

75

80

85

90

95

100

0 50 100 150 200

Link

Util

izat

ion

Queue Length

"5_flows""10_flows""20_flows""30_flows""40_flows""50_flows""60_flows""70_flows""80_flows""90_flows"

"100_flows"

We haven’t plotted anything for fairness, our third metric.(RED and Drop Tail often differ in fairness.)

22

Page 23: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Long-lived and web traffic, Adaptive RED.

75

80

85

90

95

100

0 50 100 150 200

Link

Util

izat

ion

Queue Length

"5_flows""10_flows""20_flows""30_flows""40_flows""50_flows""60_flows""70_flows""80_flows""90_flows"

"100_flows"

.

.

23

Page 24: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Long-lived and web traffic, Adaptive RED, with reverse-path delay.

75

80

85

90

95

100

0 50 100 150 200

Link

Util

izat

ion

Queue Length

"5_flows""10_flows""20_flows""30_flows""40_flows""50_flows""60_flows""70_flows""80_flows""90_flows"

"100_flows"

The reverse-path queue is configured the same as the forward-path queue:

24

Page 25: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

An aside: creating worst-case oscillations with TCP and AQM:(from last night)

Assume a ”time constant” for average queue size estimator of Q sec.( Q = 1 second, for Adaptive RED).Then the ”resonant frequency” is roughly R�Q seconds.

We want to choose the number of flows S so that the packet drop rate Tgives a congestion control epoch of R�Q seconds, so that the natural fre-quency of TCP matches the resonant frequency of the RED/ARED queue.

Given link bandwidth U pkts/sec, RTT V seconds, S flows:The average bandwidth per flow is U V WXS pkts/RTT.

25

Page 26: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Facts about TCP:With packet drop rate Y , the average window Z is []\�^�_�` Y pkts, and thereare ab]Z RTTs in a congestion control epoch.

So we want ab]Z c d]e _gf , or Z c hi\kjDe _gf .

So choose N so that: l f _Xm c hn\kj]e _3f , or m c l f a _poqhi\kjDe r .

Conjecture: For e = 1 sec., f = 0.1 sec., l = 1000 pkts/sec (8Mbps for1KB pkts), the worst case oscillations occur with m c [ts_usv\whxj c ^y^flows.

26

Page 27: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

An Evaluation of AQM

Joint work with Jitendra Padhye and Scott Shenker.

No URL yet...

27

Page 28: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

An Evaluation of AQM

z On many simulation scenarios, Adaptive RED, AVQ, Drop-Tail PI, RED,REM give similar performance.

z Drop-Tail and AVQ generally have higher packet drop rates.

z RED and Adaptive RED can have undesirable oscillations with very largeround-trip times.

z REM and PI can perform poorly in scenarios with mostly web traffic, orwith changes in the level of congestion.

28

Page 29: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 5 10 15 20 25 30

Util

izat

ion

Delay (milliseconds)

band=10 del=20 tcp=80 web=80 rev=1 qib=0 ecn=0

REDARED

PIREM

DropTail

Steady-state simulations, with some web traffic and reverse-path traffic,and 40-320 ms RTTs. Queue in packets.

29

Page 30: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Developing and Evaluating Models:

Joint work with Eddie Kohler

URL for one part:Building Models for Aggregate Traffic on Congested Linkshttp://www.icir.org/models/

30

Page 31: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Models: A Proposal about Developing Models and Simulation Scenarios

{ What measurement studies are needed for improving our models?– E.g., where is the congestion in the Internet? What are the ranges

of round-trip times? Is more needed on traffic generation? What aboutreverse-path congestion?

{ How do we translate results from measurement studies into our models?

{ How do we know what features are critical to include in our models?

{ Can we do more to improve our shared understanding of best practicesfor models and for simulation scenarios?

31

Page 32: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Models: Why Models Matter?

•••••••••

••••••••••••••••••••••••••••••••••••••••••••••••••

•••

•••••••

••

•••

••

••

••••

••

••

••

••

••

••

•••

••

•••

••

••

••

••

••

••••

••

•••••

•••

••

•••

•••

••

•••••••

•••

••

•••••

••

••••••••

•••

••••••

••

•••••••

•••••••

••

•••••••

•••••••

••

•••••••

••

•••••••

••

•••••

••

••

•••••••

••

•••••••

••

round trip time ratio

Nod

e 1

thro

ughp

ut (%

)

1.0 1.2 1.4 1.6 1.8 2.0

020

4060

8010

0

Flow 1’s throughput as a function of the ratio of the two flows’ round-triptimes, in a scenario with one-way traffic and Drop-Tail queue manage-ment. [From ”On Phase Effects”, 1992.]

32

Page 33: A report on a few steps in the evolution of congestion control · A report on a few steps in the evolution of congestion control Sally Floyd June 10, 2002 IPAM Program in Large Scale

Open questions?

| How do things in one part of the network (e.g., buffer sizes, flash crowds)affect behavior in other parts?

| How do we shed light on tradeoffs between delay and throughput?

| What are the inherent limitations of one bit of congestion feedback, ifany? (E.g., in terms of how aggressive flows can be.)

| What are the inherent limitations of not making reservations, and notkeeping per-flow state in the network? (E.g., in terms of how aggressiveflows can be.)

| What will the tradeoffs be when we have very fast networks, often withvery high available bandwidth, and flows could often send all of their datais a fraction of a RTT?

33