september 27, 20051 instabilities and oscillations in networks of queues matthew andrews bell labs...

63
September 27, 2005 1 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

Upload: dustin-cook

Post on 11-Jan-2016

216 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

September 27, 2005 1

Instabilities and Oscillations in Networks of Queues

Matthew AndrewsBell Labs

Joint work with Alex Slivkins (Cornell)

Page 2: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

2

Network of routers and sessions

session: sender fixed flow path receiver router: intersection inside the network

S1 router A

S2

t2

router B

S3

t3

t1

Page 3: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

3

Queueing Model

Model router as simple queue

Each queue has a capacity = service rate

if total arrival rate capacitythen all traffic is routedwithout congestion or queuing

else, congestion occurs:queue builds up, traffic is delayed

S1 S2 S3

t1 t2 t3

Page 4: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

4

S1 router A

S2

t2

router B

S3

t3

t1 modeled as

S1S2

t2

S3

t3 t1

Network of Queues

Page 5: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

5

FIFO Queue

FIFO queue serves packets in order received

We consider idealized model in which packet size 0

Study rate at which data arrives at/departs from queue

S1 S2 S3

t1 t2 t3

Page 6: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

6

Fluid-based FIFO queue

session = continuous flow, not a discrete stream of packets what is a fluid-based FIFO queue? [Bramson]

h(t) = height of the queue at time t = [total amount of fluid] / [capacity C]

given arrival rates in1(t), in2(t), in3(t)what is h(t) and what are exit rates outi(t)?

S1 S2 S3

t1 t2 t3

h

C

if h(t) = 0 and j inj(t) C thenall flow just comes through: outi(t) = ini(t)

else, capacity is divided proportionally,and the excessive fluid is queued up

outi(t+h(t)) = ini(t) C / j inj(t)

Page 7: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

7

Part 1: Traffic generated by external arrival process Study “queueing theoretic stability” Can we keep the queue sizes bounded? Result: FIFO can be unstable at arbitrarily small network loads

Part 2: Traffic controlled by end-to-end congestion control (e.g. TCP) Study “control theoretic stability” Does the system oscillate? Result: end-to-end congestion control can cause oscillations

Talk Outline

Page 8: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

8

Network of FIFO queues, external traffic arrivals

Definitions Stable: queuesizes remain bounded

Unstable: queuesizes are unbounded

We would like queues to be stable as long as no queue is overloaded

Part 1: FIFO stability

Tota

l queuesi

zeTota

l queuesi

ze

Time

Time

Stable

Unstable

??

Page 9: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

9

Each session i has rate i

Injection rate into session i equals i at all times Sum of session rates passing through capacity C queue rC r = network load parameter Interesting case is r 1

Permanent sessions: Constant arrivals

S1S2

t2

S3

t3 t1

0.450.45

0.45

r = 0.9

Thm: (Bramson ‘96)FIFO stable for all r 1

Thm: (Bramson ‘96)FIFO stable for all r 1

Page 10: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

10

Each session i has rate i

Injection rate into session i at most i at all times Sum of session rates passing through capacity C queue rC Standard model in networking literature, e.g.

Fair Queueing literature (e.g. Parekh-Gallager), Network calculus (e.g. Cruz, Le Boudec-Thiran book)

Permanent sessions: Bounded arrivals

S1S2

t2

S3

t3 t1

0.450.45

0.45

r = 0.9

Page 11: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

11

Permanent sessions: Bounded arrivals

S1S2

t2

S3

t3 t1

0.20.45

0.1

r = 0.9

Each session i has rate i

Injection rate into session i at most i at all times Sum of session rates passing through capacity C queue rC Standard model in networking literature, e.g.

Fair Queueing literature (e.g. Parekh-Gallager), Network calculus (e.g. Cruz, Le Boudec-Thiran book)

Page 12: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

12

Permanent sessions: Bounded arrivals

S1S2

t2

S3

t3 t1

0.450.3

0.45

r = 0.9

Thm: (‘00)FIFO can be unstable for r > 0.999999997

Thm: (‘00)FIFO can be unstable for r > 0.999999997

Each session i has rate i

Injection rate into session i at most i at all times Sum of session rates passing through capacity C queue rC Standard model in networking literature, e.g.

Fair Queueing literature (e.g. Parekh-Gallager), Network calculus (e.g. Cruz, Le Boudec-Thiran book)

Page 13: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

13

Main Result

What happens at small network loads?

Is there some network load below which FIFO is stable? No!!!!

Thm: For all > 0, there exists network and injection pattern s.t.

Network load is r < The network is unstable

Page 14: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

14

Transfer Process

How can we move fluid from one FIFO queue to another?

Injection rate

Existing fluidof height 1

Page 15: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

15

Transfer Process

How can we move fluid from one FIFO queue to another?

Injection rate

Total arrival rate 1 +

Departure rate / 1 + Departure rate

/ 1 +

Arrival rate / 1 +

Departure rate 1

Page 16: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

16

Transfer Process

How can we move fluid from one FIFO queue to another?

Injection rate

Total arrival rate 1 +

Departure rate / 1 + Departure rate

/ 1 +

Arrival rate / 1 +

Departure rate 1

Page 17: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

17

Transfer Process

How can we move fluid from one FIFO queue to another?

Injection rate

Total arrival rate 1 +

Departure rate / 1 + Departure rate

/ 1 +

Arrival rate / 1 +

Departure rate 1

Page 18: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

18

Transfer Process

How can we move fluid from one FIFO queue to another?

Injection rate

Page 19: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

19

Transfer Process

How can we move fluid from one FIFO queue to another?

Injection rate

Page 20: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

20

Transfer Process

How can we move fluid from one FIFO queue to another?

Injection rate

Page 21: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

21

Transfer Process

How can we move fluid from one FIFO queue to another?

Injection rate

Page 22: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

22

Can repeat transfer process indefinitely

Repeated Transfer Process

Page 23: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

23

Can repeat transfer process indefinitely

Repeated Transfer Process

Page 24: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

24

Can repeat transfer process indefinitely

Repeated Transfer Process

Page 25: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

25

Repeated Transfer Process

Can repeat transfer process indefinitely Two problems:

Want amount of fluid to grow! Sessions are of finite length: some fluid eventually departs

Page 26: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

26

Transfer Process Revisited

Replace departing fluid

Injection rate Injection rate

Departure rate <

Page 27: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

27

Injection rate

Replace departing fluid

Transfer Process Revisited

Injection rate

Departure rate <

Page 28: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

28

Injection rate

Replace departing fluid

Transfer Process Revisited

Injection rate

Departure rate <

Page 29: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

29

Injection rate

Replace departing fluid

Transfer Process Revisited

Injection rate

Departure rate <

Works but network load r >> 1

Works but network load r >> 1

Page 30: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

30

Parallel Transfers

Injection rate

Departure rate ~

Arrival rate ~

1 2 3 4

Transfer process between queues 1 & 3 Transfer process between queues 2 & 4 Newly injected traffic passes through queues 1&2 Queues 1&2 are decreasing: hence rate amplification!!!

Page 31: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

31

Parallel Transfers

Injection rate

Departure rate ~

Arrival rate ~

1 2 3 4

For a sufficiently large number of parallel transfers Can make arriving traffic have higher rate than departing traffic Instability!!!

Page 32: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

32

Part 1 of talk: External arrival process Injection patterns could be independent of queueing

behavior Part 2 of talk:

Injection patterns governed by congestion control (e.g. TCP)

Does TCP converge? Can it oscillate?

S router A router B t

Part 2: Stability of congestion control

Page 33: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

33

sender does not know in advance how much bandwidth will be available at a given time, needs to adjust dynamically

goal: use available bandwidth, but avoid congestion if all routers on session path have some bandwidth

available,source should increase the sending rate

if one of the routers on session path is congested,source should decrease the sending rate

S router A router B t

End-to-end congestion control

rate ? rate ?

rate ? rate ?

Page 34: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

34

End-to-end congestion control

design principle: routers do not give feedback to senders sender does not know what goes on inside the Internet

however, sender can get limited feedback from the receiver

can determine whether congestion occurred on the path TCP protocol: additive increase, multiplicative decrease

no congestion increase sending rate by 1 congestion decrease sending rate by half

S router A router B t

rate ? rate ?

rate ? rate ?

Page 35: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

35

Network as dynamical system

system = {network of routers and fixed set of sessions} state = {sending rates of sessions, composition of queues} dynamics: TCP-like congestion control, FIFO queues

choose initial state and let the system run we’d like the system to converge, preferably to some nice

state

S1 router

S2

t2

router

S3

t3

t1

Page 36: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

36

Convergence vs oscillations Prior work: for a version of TCP,

system converges to a social optimumstarting from any initial state

[Kelly, Maulloo, Tan ’98],[Low et al.]and a large body of follow-up work

S1 router

S2

t2

router

S3

t3

t1

However, this work uses an approximation of FIFO dynamics: congestion of a queue Q = F(sending rates of sessions that use Q)

in reality it is a function of arrival rates, which may be different

we model congestion as a function of arrival rates

Page 37: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

37

Kelly, Maulloo, Tan

Example prior work

: ( )

( )

2

( ) ( ) ( )

( ) ( )

( ) ( 1 ) /

i i i QQ i S Q

Q Q ii S Q

Q

x t w x t t

t p x t

p y y

xi (t) = injection rate into flow i at time t pQ = “shadow price” for congestion at router Q

Page 38: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

38

Convergence vs oscillations Prior work: for a version of TCP,

system converges to a social optimumstarting from any initial state

[Kelly, Maulloo, Tan ’98] + follow-ups approximation of FIFO dynamics

S1 router

S2

t2

router

S3

t3

t1

Our contribution: for any TCP-like congestion control mechanism,there exists a network of routers and a set of sessions such thatstarting from a certain initial state, system oscillates

at all times, for each router, the total sending rate of all sessions that use this router is less than its capacity

at all times, for each router, the total sending rate of all sessions that use this router is less than its capacity

Page 39: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

39

Fluid-based FIFO queue

session = continuous flow, not a discrete stream of packets

h(t) = height of the queue at time t = [total amount of fluid] / [capacity C]

given arrival rates in1(t), in2(t), in3(t)what is h(t) and what are exit rates?FIFO

queue

S1 S2 S3

t1 t2 t3

h

C

if h(t) = 0 and j inj(t) C thenall flow just comes through

else, capacity is divided proportionally,and the excessive fluid is queued up

Page 40: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

40

Sending rates vs arrival rates

due to queues that are upstream,in general arrival rates in1(t), in2(t), in3(t)are different from sending rates

all convergence results from prior workuse sending rates instead of arrival rates

we use the true arrival rates

FIFOqueue

S1 S3

t1 t2 t3

h

C

S2

ini(t)

Page 41: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

41

??

Parameterized congestion control

sender detects congestion using feedback from receiver yes decrease sending rate; no increase sending rate

S t

no congestion: all queues are empty

S t

congestion: at least one queue is non-empty

Page 42: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

42

Parameterized congestion control

discrete-time TCP: additive increase, multiplicative decrease yes decrease rate by half; no increase rate by 1

we use a continuous-time approximation yes congestion sending rate f(t) = f(0) et

no congestion sending rate g(t) = g(0) + t is the damping parameter that controls the rate of

change generalization: (almost) any flow increase function g(t),

any f(t) that satisfies some axioms, e.g. f(t) = f(0) t

sender detects congestion using feedback from receiver yes decrease sending rate; no increase sending rate

Page 43: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

43

Main result

Theorem For any given congestion control {f(t), g(t)} there exists: damping parameter (same for all sessions) a network of routers, a set of sessions, and an initial state such that system oscillates and for each router, the total sendingrate of all sessions that use this router is always less than its

capacityNote routers are almost FIFO: each session is in one of the two priority classes FIFO scheduling for sessions within the same class

we are extending our construction to the all-FIFO case

we are extending our construction to the all-FIFO case

Page 44: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

44

The basic gadget: high-level idea

Q1 Q4Q2 Q3S t

Q1 Q4Q2 Q3S tfinish1

1capacity 1<1 <1

Q1 Q4Q2 Q3S t1

start

Page 45: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

45

The basic gadget: animation

Q1 Q4Q2 Q3S t

1capacity 1<1 <1

S’

t’

init rate 0

init rate 0

init rate

init rate

1

Page 46: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

46

Q1 Q4Q2 Q3S t

1capacity 1<1 <1

The basic gadget: animation

S’

t’

rate = 0rate = 0

init rate

init rate

Page 47: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

47

Q1 Q4Q2 Q3S t

1capacity 1<1 <1

The basic gadget: animation

S’

t’

rate = 0rate = 0

rate rate

Page 48: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

48

Q1 Q4Q2 Q3S t

1capacity 1<1 <1

The basic gadget: animation

S’

t’

rate = 0rate = 0

rate = 0

rate = 0

1

Page 49: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

49

Q1 Q4Q2 Q3S t

1capacity 1<1 <1

The basic gadget: animation

S’

t’

rate = 0rate = 0

rate rate

Page 50: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

50

Connect two gadgets

identify Q4 from one gadget with Q1 from another

1 42 3

1 42 3

before

after 1 2 3 1 42 3

Page 51: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

51

Row of gadgets

1 2 3 1 2 3 1 2 3 1 2 3S1 t1

fluid eventually reaches its destination, and the process stopsnot too exciting!

fluid eventually reaches its destination, and the process stopsnot too exciting!

Page 52: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

52

Row of gadgets

1 2 3 1 2 3 1 2 3 1 2 3S1 t1

a better processa better process

Page 53: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

53

Row of gadgets

1 2 3 1 2 3 1 2 3 1 2 3S1 t1

refill

a better processa better process

and now a refill happensand now a refill happens

Page 54: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

54

Row of gadgets

1 2 3 1 2 3 1 2 3 1 2 3S1 t1

refill

a better processa better process

... and so on... and so on

Page 55: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

55

Rows of gadgets

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

S1

S2

S3

t1

t2

t3

each row is running the same process, shifted in timeeach row is running the same process, shifted in time

Page 56: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

56

Rows of gadgets

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

S1

S2

S3

t1

t2

t3

refill

refill

refill

each row is running the same process, shifted in timeeach row is running the same process, shifted in time

now a refill happensnow a refill happens

Page 57: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

57

Rows of gadgets

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

S1

S2

S3

t1

t2

t3

refill

... and so on... and so on

Wait a sec... how do the refills happen ???Wait a sec... how do the refills happen ???

Page 58: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

58

Refills and vertical sessions

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

S1

S2

S3

t1

t2

t3

1 2 3 1 2 3 1 2 3 1 2 3S4 t4

rate >0

rate >0

Page 59: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

59

Refills and vertical sessions

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

S1

S2

S3

t1

t2

t3

1 2 3 1 2 3 1 2 3 1 2 3S4 t4

rate >0

rate >0

Page 60: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

60

Refills and vertical sessions

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

S1

S2

S3

t1

t2

t3

1 2 3 1 2 3 1 2 3 1 2 3S4 t4

rate >0

rate >0

Page 61: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

61

Refills and vertical sessions

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

S1

S2

S3

t1

t2

t3

1 2 3 1 2 3 1 2 3 1 2 3S4 t4

rate rate

Page 62: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

62

Refills and vertical sessions

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

1 2 3 1 2 3 1 2 3 1 2 3

S1

S2

S3

t1

t2

t3

1 2 3 1 2 3 1 2 3 1 2 3S4 t4

rate = 0rate = 0

refilled !!!refilled !!!

Page 63: September 27, 20051 Instabilities and Oscillations in Networks of Queues Matthew Andrews Bell Labs Joint work with Alex Slivkins (Cornell)

63

Conclusions and open questionsEnd-to-end congestion control can cause oscillations prior work proved convergence but queueing dynamics not fully

captured with true queueing dynamics convergence is desirable but impossible

Our example is paranoid, but we need to replicate initial state exactly our result suggests that in practice convergence can be hard, too possible solution: integrate congestion control into routers,

e.g. Greedy Primal-Dual algorithm of Sasha Stolyar

Open questions: extension to the all-FIFO case non-FIFO schedulers, e.g. Generalized Processor Sharing