Rethinking Startup in Congestion Control Dan Liu (Case), Mark Allman - - PowerPoint PPT Presentation

rethinking startup in congestion control
SMART_READER_LITE
LIVE PREVIEW

Rethinking Startup in Congestion Control Dan Liu (Case), Mark Allman - - PowerPoint PPT Presentation

Rethinking Startup in Congestion Control Dan Liu (Case), Mark Allman (ICSI), Shudong Jin (Case), Limin Wang (Bell Labs) NEONet, March 2006 "Ill be on the hill cause I cant stop, Ill be on that hill with everything I got"


slide-1
SLIDE 1

Rethinking Startup in Congestion Control

Dan Liu (Case), Mark Allman (ICSI), Shudong Jin (Case), Limin Wang (Bell Labs) NEONet, March 2006

"I’ll be on the hill ’cause I can’t stop, I’ll be on that hill with everything I got"

slide-2
SLIDE 2

Fundamental Question

At what rate should transmission begin when sending across an unknown, best-effort, packet-switched internetwork? We have a workshop answer OK, a small workshop handwave

Allman 2

slide-3
SLIDE 3

Current Answer

Slow Start

5 10 15 20 25 30 35 1 2 3 4 5 6 Congestion Window (segments) Round-Trip Time

Allman 3

slide-4
SLIDE 4

Current Answer (cont.)

However, slow start can be really slow e.g., in large bandwidth-delay product networks Slow start can underutilize a bunch of available capacity

Allman 4

slide-5
SLIDE 5

Current Answer (cont.)

Example #1

50 100 150 200 250 300 350 400 450 500 0.5 1 1.5 2 2.5 3 3.5 4 4.5 Congestion Window (segments) Time (sec) RTT=0.05sec RTT=0.1sec RTT=0.5sec

Allman 5

slide-6
SLIDE 6

Current Answer (cont.)

Example #2

20 40 60 80 100 120 0.1 0.2 0.3 0.4 0.5 0.6 0.7 Congestion Window (segments) Time (sec) Available Capacity

  • Avail. Capacity

Allman 6

slide-7
SLIDE 7

Current Answer (cont.)

Example #2

20 40 60 80 100 120 0.1 0.2 0.3 0.4 0.5 0.6 0.7 Congestion Window (segments) Time (sec) Used Capacity Un-used Capacity

  • Avail. Capacity

RTT=0.1sec

Allman 7

slide-8
SLIDE 8

Proposed Solutions

Three general classes

  • 1. Information sharing

use information from previous network usage

  • 2. Capacity estimation

use the first few (low-rate) packets to estimate the capacity

  • 3. Ask the network

send an explicit request that each node in the path must deal with

Allman 8

slide-9
SLIDE 9

Proposed Solutions (cont.)

Proposed solutions trade complexity for possible performance

Allman 9

slide-10
SLIDE 10

Proposed Solutions (cont.)

What if we didn’t want to pay for complexity? Then we’d add our own proposal to the list:

  • 4. Blind stupidity

Allman 10

slide-11
SLIDE 11

Jump Start

General idea: send as fast as desirable when starting up i.e., no startup phase at all but, retain the remainder of congestion control (AIMD) (There are some mechanistic details that I am glossing

  • ver here.)

Allman 11

slide-12
SLIDE 12

Jump Start (cont.)

Do we need a conservative startup phase? What does this end of the spectrum look like? We’re building a simulation framework While this seems easy enough to investigate, there are details

Allman 12

slide-13
SLIDE 13

Jump Start (cont.)

We assume the worst case for Jump Start is pretty bad E.g., Jump Start will cause congestion E.g., Jump Start will decrease performance E.g., Jump Start will impact competing traffic On the other hand, with end-to-end reservations, per-flow queueing, etc. Jump Start seems like no big deal So, how complex would we have to make the network to support a very simple scheme like Jump Start?

Allman 13

slide-14
SLIDE 14

Position #1

No more complexly We leverage the heavy-tailed nature of traffic Most connections cannot put much load on a network simply because they have so little to send The big connections that can place a burden on the network are rare Can we weather a rare transient? (Add in that end hosts place anemic advertised window limits on transmission.)

Allman 14

slide-15
SLIDE 15

Position #2

No more complexity User networks are thin and they can’t create much congestion Server networks are fat, but policies will dictate that no

  • ne connection will be able to use massive bandwidth

The core weathered Slammer (1 packet UDP fire and forget worm); the ends couldn’t overwhelm it even without any congestion control

Allman 15

slide-16
SLIDE 16

Position #3

A little help It might be nice if the end hosts flagged segments that were part of the Jump Start phase of a connection Routers could then preferentially drop these segments to try to limit the impact on competing traffic

Allman 16

slide-17
SLIDE 17

Position #4

A little help Use an AQM strategy that preferentially drops based on usage

Allman 17

slide-18
SLIDE 18

Position #5

It can’t be done without lots of per-flow state and mechanism

Allman 18

slide-19
SLIDE 19

Summary

Explore: an extremely simple scheme for startup whether some form of startup is required for Internet congestion control whether some form of startup is required for reasonable performance Well.... what do you think? How crazy are we?

Allman 19