A Randomized Online Algorithm for Bandwidth Utilization Sanjeev - - PowerPoint PPT Presentation

a randomized online algorithm for bandwidth utilization
SMART_READER_LITE
LIVE PREVIEW

A Randomized Online Algorithm for Bandwidth Utilization Sanjeev - - PowerPoint PPT Presentation

A Randomized Online Algorithm for Bandwidth Utilization Sanjeev Arora and Bo Brinkman Princeton University A Randomized Online Algorithm for Bandwidth Utilization p.1/17 Motivation: Computer Networks Goal: Send data as quickly as possible


slide-1
SLIDE 1

A Randomized Online Algorithm for Bandwidth Utilization

Sanjeev Arora and Bo Brinkman Princeton University

A Randomized Online Algorithm for Bandwidth Utilization – p.1/17

slide-2
SLIDE 2

Motivation: Computer Networks

Goal: Send data as quickly as possible

?

A Randomized Online Algorithm for Bandwidth Utilization – p.2/17

slide-3
SLIDE 3

Motivation: Computer Networks

Goal: Send data as quickly as possible without any central authority distributing bandwidth

?

A Randomized Online Algorithm for Bandwidth Utilization – p.2/17

slide-4
SLIDE 4

Motivation: Computer Networks

Goal: Send data as quickly as possible without any central authority distributing bandwidth

Bottleneck

“Find” the unused bandwidth

A Randomized Online Algorithm for Bandwidth Utilization – p.2/17

slide-5
SLIDE 5

Motivation: Computer Networks

Goal: Send data as quickly as possible without any central authority distributing bandwidth

Bottleneck

“Find” the unused bandwidth Use dropped packets as implicit information about bandwidth availability

A Randomized Online Algorithm for Bandwidth Utilization – p.2/17

slide-6
SLIDE 6

Previous Work

AIMD (Additive Increase, Multiplicative Decrease) promotes the social good [Jacobson ’88] “Congestion avoidance and control” [CJ ’89] “Analysis of increase and decrease algorithms for congestion avoidance in computer networks”

A Randomized Online Algorithm for Bandwidth Utilization – p.3/17

slide-7
SLIDE 7

Previous Work

AIMD (Additive Increase, Multiplicative Decrease) promotes the social good [Jacobson ’88] “Congestion avoidance and control” [CJ ’89] “Analysis of increase and decrease algorithms for congestion avoidance in computer networks” Developing theoretical models for congestion control problems [KKPS ’00] “Algorithmic problems in congestion control”

A Randomized Online Algorithm for Bandwidth Utilization – p.3/17

slide-8
SLIDE 8

Main Model [Karp et al]

At each step i: The available bandwidth on the network is bi

A Randomized Online Algorithm for Bandwidth Utilization – p.4/17

slide-9
SLIDE 9

Main Model [Karp et al]

At each step i: The available bandwidth on the network is bi The algorithm, not knowing bi, attempts to send xi bytes

A Randomized Online Algorithm for Bandwidth Utilization – p.4/17

slide-10
SLIDE 10

Main Model [Karp et al]

At each step i: The available bandwidth on the network is bi The algorithm, not knowing bi, attempts to send xi bytes If xi

  • bi, the algorithm succeeds. Otherwise, no data is

transmitted

A Randomized Online Algorithm for Bandwidth Utilization – p.4/17

slide-11
SLIDE 11

Main Model [Karp et al]

At each step i: The available bandwidth on the network is bi The algorithm, not knowing bi, attempts to send xi bytes If xi

  • bi, the algorithm succeeds. Otherwise, no data is

transmitted The sequence

bi

is chosen by a non-adaptive adversary

A Randomized Online Algorithm for Bandwidth Utilization – p.4/17

slide-12
SLIDE 12

Main Model [Karp et al]

At each step i: The available bandwidth on the network is bi The algorithm, not knowing bi, attempts to send xi bytes If xi

  • bi, the algorithm succeeds. Otherwise, no data is

transmitted The sequence

bi

is chosen by a non-adaptive adversary Total available bandwidth, B

def

∑bi, is offline optimal (opt)

A Randomized Online Algorithm for Bandwidth Utilization – p.4/17

slide-13
SLIDE 13

Restricted Adversaries

Karp et al consider three restricted adversaries:

a

b

  • fixed-range: Adversary must pick bi from a fixed

range

a

b

A Randomized Online Algorithm for Bandwidth Utilization – p.5/17

slide-14
SLIDE 14

Restricted Adversaries

Karp et al consider three restricted adversaries:

a

b

  • fixed-range: Adversary must pick bi from a fixed

range

a

b

✟ ☎

α

β

  • additive: For some constants α

β

0, adversary

must pick bi

✡ ✞

bi

1

α

bi

1

α

, with β as a lower bound.

A Randomized Online Algorithm for Bandwidth Utilization – p.5/17

slide-15
SLIDE 15

Restricted Adversaries

Karp et al consider three restricted adversaries:

a

b

  • fixed-range: Adversary must pick bi from a fixed

range

a

b

✟ ☎

α

β

  • additive: For some constants α

β

0, adversary

must pick bi

✡ ✞

bi

1

α

bi

1

α

, with β as a lower bound.

µ-multiplicative: For some constant µ

1, adversary must

pick bi

✡ ✞

bi

1

µ

µbi

1

A Randomized Online Algorithm for Bandwidth Utilization – p.5/17

slide-16
SLIDE 16

Results

Theorem (Upper Bound) A randomized algorithm exists which achieves competitive ratio

8 3 lgµ

16 against a µ-multiplicative adversary.

A Randomized Online Algorithm for Bandwidth Utilization – p.6/17

slide-17
SLIDE 17

Results

Theorem (Upper Bound) A randomized algorithm exists which achieves competitive ratio

8 3 lgµ

16 against a µ-multiplicative adversary.

Theorem (Lower Bound) No randomized algorithm can achieve competitive ratio better than lnµ

1 against a µ-multiplicative adversary.

A Randomized Online Algorithm for Bandwidth Utilization – p.6/17

slide-18
SLIDE 18

Results

Theorem (Upper Bound) A randomized algorithm exists which achieves competitive ratio

8 3 lgµ

16 against a µ-multiplicative adversary.

Theorem (Lower Bound) No randomized algorithm can achieve competitive ratio better than lnµ

1 against a µ-multiplicative adversary.

Theorem [Karp et al] No randomized algorithm can achieve competitive ratio better than ln b

a

1 against a

a

b

  • fixed-range adversary.

A Randomized Online Algorithm for Bandwidth Utilization – p.6/17

slide-19
SLIDE 19

Lower Bound

Proof [Karp et al] Randomized adversary picks bi

✡ ✞

a

b

.

P

y

✝ ✄

a y2

if y

b

a b

if y

b E

bi

✟ ✄

b a

ay y2 dy

ba b

a

ln b a

1

✝ ✏

A Randomized Online Algorithm for Bandwidth Utilization – p.7/17

slide-20
SLIDE 20

Lower Bound contd.

Algorithm tries to send xi, expected throughput is:

xi

b xi

a y2dy

xi a b

xi

a xi

a b

✝ ✌

xi a b

a

Competitive ratio is ln b

a

1 independent of xi.

A Randomized Online Algorithm for Bandwidth Utilization – p.8/17

slide-21
SLIDE 21

Lower Bound contd.

Algorithm tries to send xi, expected throughput is:

xi

b xi

a y2dy

xi a b

xi

a xi

a b

✝ ✌

xi a b

a

Competitive ratio is ln b

a

1 independent of xi.

Lower bound is a simple corollary: The adversary could restrict itself to the fixed range

b0

µb0

.

A Randomized Online Algorithm for Bandwidth Utilization – p.8/17

slide-22
SLIDE 22

Our (Barely) Randomized Algorithm

This version has competitive ratio 4lgµ

8.

A Randomized Online Algorithm for Bandwidth Utilization – p.9/17

slide-23
SLIDE 23

Our (Barely) Randomized Algorithm

This version has competitive ratio 4lgµ

8.

Set x0 (amount of bandwidth requested during the first step) to a uniformly random power of 2 in

1

A Randomized Online Algorithm for Bandwidth Utilization – p.9/17

slide-24
SLIDE 24

Our (Barely) Randomized Algorithm

This version has competitive ratio 4lgµ

8.

Set x0 (amount of bandwidth requested during the first step) to a uniformly random power of 2 in

1

When algorithm succeeds, multiply amount requested by 2µ

A Randomized Online Algorithm for Bandwidth Utilization – p.9/17

slide-25
SLIDE 25

Our (Barely) Randomized Algorithm

This version has competitive ratio 4lgµ

8.

Set x0 (amount of bandwidth requested during the first step) to a uniformly random power of 2 in

1

When algorithm succeeds, multiply amount requested by 2µ When it fails, divide by 2

A Randomized Online Algorithm for Bandwidth Utilization – p.9/17

slide-26
SLIDE 26

Bandwidth Constant

µ width (bytes) x time (steps) 2x band−

A Randomized Online Algorithm for Bandwidth Utilization – p.10/17

slide-27
SLIDE 27

Bandwidth Constant

µ width (bytes) x time (steps) 2xµ lg band−

A Randomized Online Algorithm for Bandwidth Utilization – p.10/17

slide-28
SLIDE 28

Brief Spaces

time (steps) µ x band− width (bytes) lgµ x

A Randomized Online Algorithm for Bandwidth Utilization – p.11/17

slide-29
SLIDE 29

Brief Spaces

time (steps) µ x band− width (bytes) lgµ x

A Randomized Online Algorithm for Bandwidth Utilization – p.11/17

slide-30
SLIDE 30

Brief Spaces

time (steps) µ x band− width (bytes) lgµ x

A Randomized Online Algorithm for Bandwidth Utilization – p.11/17

slide-31
SLIDE 31

Brief Spaces

time (steps) µ x band− width (bytes) lgµ x

A Randomized Online Algorithm for Bandwidth Utilization – p.11/17

slide-32
SLIDE 32

Analysis

Consider the lgµ

2 algorithms as if they were run in parallel

2µ requests) 1 2 4 8 16 step i step i+1 (bandwidth

A Randomized Online Algorithm for Bandwidth Utilization – p.12/17

slide-33
SLIDE 33

Analysis

Consider the lgµ

2 algorithms as if they were run in parallel

2µ requests) 1 2 4 8 16 step i step i+1 (bandwidth

Algorithms stay in lock-step

A Randomized Online Algorithm for Bandwidth Utilization – p.12/17

slide-34
SLIDE 34

Analysis

Consider the lgµ

2 algorithms as if they were run in parallel

4µ requests) 2 4 8 16 1 2 4 8 16 2µ 2µ Bandwidth Available step i step i+1 (bandwidth

Algorithms stay in lock-step

A Randomized Online Algorithm for Bandwidth Utilization – p.12/17

slide-35
SLIDE 35

Analysis

Consider the lgµ

2 algorithms as if they were run in parallel

4µ requests) 2 4 8 16 1 2 4 8 16 2µ 2µ Bandwidth Available step i step i+1 (bandwidth

Algorithms stay in lock-step Bandwidth achieved is at least 1

2 available amount

A Randomized Online Algorithm for Bandwidth Utilization – p.12/17

slide-36
SLIDE 36

Analysis contd.

Bandwidth increasing or constant: Ensemble succeeds again

µ 1 2µ step i+1 (bandwidth requests) 2 4 8 16 1 4 8 16 x=2 2µ 4µ 2µ step i

A Randomized Online Algorithm for Bandwidth Utilization – p.13/17

slide-37
SLIDE 37

Analysis contd.

Bandwidth increasing or constant: Ensemble succeeds again

µ 1 2µ step i+1 (bandwidth requests) 2 4 8 16 1 4 8 16 x=2 2µ 4µ 2µ step i

Bandwidth decreases to less than x and ensemble fails

A Randomized Online Algorithm for Bandwidth Utilization – p.13/17

slide-38
SLIDE 38

Analysis contd.

Bandwidth increasing or constant: Ensemble succeeds again

µ 1 2µ step i+1 (bandwidth requests) 2 4 8 16 1 4 8 16 x=2 2µ 4µ 2µ step i

Bandwidth decreases to less than x and ensemble fails In the next step if ensemble misses again, bandwidth

x 2

A Randomized Online Algorithm for Bandwidth Utilization – p.13/17

slide-39
SLIDE 39

Analysis contd.

Bandwidth increasing or constant: Ensemble succeeds again

µ 1 2µ step i+1 (bandwidth requests) 2 4 8 16 1 4 8 16 x=2 2µ 4µ 2µ step i

Bandwidth decreases to less than x and ensemble fails In the next step if ensemble misses again, bandwidth

x 2

Total missed bandwidth is bounded by x

x 2

x 4

✌✒✑ ✑ ✑ ✄

2x

A Randomized Online Algorithm for Bandwidth Utilization – p.13/17

slide-40
SLIDE 40

Analysis contd.

Putting it together: In step i ensemble sends x

A Randomized Online Algorithm for Bandwidth Utilization – p.14/17

slide-41
SLIDE 41

Analysis contd.

Putting it together: In step i ensemble sends x Total available in step i

2x

A Randomized Online Algorithm for Bandwidth Utilization – p.14/17

slide-42
SLIDE 42

Analysis contd.

Putting it together: In step i ensemble sends x Total available in step i

2x

Total missed until next success

2x

A Randomized Online Algorithm for Bandwidth Utilization – p.14/17

slide-43
SLIDE 43

Analysis contd.

Putting it together: In step i ensemble sends x Total available in step i

2x

Total missed until next success

2x

Finally, pick one of the algorithms from ensemble at random:

E

bandwidth found by random algorithm

✟ ✠
  • pt

4

lgµ

2

A Randomized Online Algorithm for Bandwidth Utilization – p.14/17

slide-44
SLIDE 44

Final Details

Remove assumption that µ is a power of 2: lgµ

3

algorithms, competitive ratio 4lgµ

12

A Randomized Online Algorithm for Bandwidth Utilization – p.15/17

slide-45
SLIDE 45

Final Details

Remove assumption that µ is a power of 2: lgµ

3

algorithms, competitive ratio 4lgµ

12

Instead of powers of 2, use powers of c: Competitive ratio

8 3 lgµ

16

A Randomized Online Algorithm for Bandwidth Utilization – p.15/17

slide-46
SLIDE 46

Final Details

Remove assumption that µ is a power of 2: lgµ

3

algorithms, competitive ratio 4lgµ

12

Instead of powers of 2, use powers of c: Competitive ratio

8 3 lgµ

16

Algorithm also works for additive adversaries: Lower bound

  • n competitive ratio is ln

α

β β

✝ ✌

1, algorithm achieves

8 3 lg

α

β β

✝ ✌
  • 16. (Use algorithm with µ
✔ ✄

α

β β )

A Randomized Online Algorithm for Bandwidth Utilization – p.15/17

slide-47
SLIDE 47

MIMD

Interesting fact: Our algorithm is Multiplicative Increase, Multiplicative Decrease

A Randomized Online Algorithm for Bandwidth Utilization – p.16/17

slide-48
SLIDE 48

MIMD

Interesting fact: Our algorithm is Multiplicative Increase, Multiplicative Decrease [CJ ’89] observe that Multiplicative Increase algorithms are efficient (dynamical systems argument)

A Randomized Online Algorithm for Bandwidth Utilization – p.16/17

slide-49
SLIDE 49

MIMD

Interesting fact: Our algorithm is Multiplicative Increase, Multiplicative Decrease [CJ ’89] observe that Multiplicative Increase algorithms are efficient (dynamical systems argument) Also show that MIMD algorithms do not converge to fairness

A Randomized Online Algorithm for Bandwidth Utilization – p.16/17

slide-50
SLIDE 50

MIMD

Interesting fact: Our algorithm is Multiplicative Increase, Multiplicative Decrease [CJ ’89] observe that Multiplicative Increase algorithms are efficient (dynamical systems argument) Also show that MIMD algorithms do not converge to fairness Is this a case where the optimal behavior for individuals is anti-social?

A Randomized Online Algorithm for Bandwidth Utilization – p.16/17

slide-51
SLIDE 51

Interesting Questions

How “predictable” is real network traffic?

A Randomized Online Algorithm for Bandwidth Utilization – p.17/17

slide-52
SLIDE 52

Interesting Questions

How “predictable” is real network traffic? Can we incorporate feedback effects into this model?

A Randomized Online Algorithm for Bandwidth Utilization – p.17/17

slide-53
SLIDE 53

Interesting Questions

How “predictable” is real network traffic? Can we incorporate feedback effects into this model? Is end-to-end congestion control sufficient for fair and efficient network usage?

A Randomized Online Algorithm for Bandwidth Utilization – p.17/17

slide-54
SLIDE 54

Interesting Questions

How “predictable” is real network traffic? Can we incorporate feedback effects into this model? Is end-to-end congestion control sufficient for fair and efficient network usage? If not, what should we do in routers? (Floyd and Fall, Shenker)

A Randomized Online Algorithm for Bandwidth Utilization – p.17/17