Oblivious Routing on Geometric Networks Costas Busch, Malik - - PowerPoint PPT Presentation

oblivious routing on geometric networks
SMART_READER_LITE
LIVE PREVIEW

Oblivious Routing on Geometric Networks Costas Busch, Malik - - PowerPoint PPT Presentation

Oblivious Routing on Geometric Networks Costas Busch, Malik Magdon-Ismail and Jing Xi { buschc,magdon,xij2 } @cs.rpi.edu July 20, 2005. Outline Oblivious Routing: Background and Our Contribution The Algorithm: Oblivious Routing with Single


slide-1
SLIDE 1

Oblivious Routing on Geometric Networks

Costas Busch, Malik Magdon-Ismail and Jing Xi

{buschc,magdon,xij2}@cs.rpi.edu

July 20, 2005.

slide-2
SLIDE 2

Outline

  • Oblivious Routing: Background and Our Contribution
  • The Algorithm: Oblivious Routing with Single Intermediate Node
  • Good Geometric (Metric) Embeddings; Examples
  • Routing Result; Examples
  • Discussion

1

slide-3
SLIDE 3

Routing

Routing: coustruct “good” paths given sources and destinations.

  • Communication Networks – eg. Internet.
  • Ad-hoc Networks – eg. sensor networks.
  • Parallel Architectures – eg. Mesh.
  • . . .

2

slide-4
SLIDE 4

Routing

Routing: coustruct “good” paths given sources and destinations.

  • Communication Networks – eg. Internet.
  • Ad-hoc Networks – eg. sensor networks.
  • Parallel Architectures – eg. Mesh.
  • . . .

Wish List:

simple, scalable, efficient, near-optimal, general

3

slide-5
SLIDE 5

Oblivious Routing

A packet’s path is specified independently of other packets’ paths. – Suffices to specify algorithm for any single packet to select its path. – Every packet uses this algorithm independent of other packets. distributed, hence scalable; applies to dynamic (online) setting with streaming packets; ( A packet π is a source-destination pair (s, t))

4

slide-6
SLIDE 6

Optimality of Paths

Congestion Stretch C(v): # paths using node v

stretch(π) : D(π)

d(π) ← packet’s path length ← shortest path length v C(v) = 6

stretch = 2

Congestion (C): maxe C(e)

stretch: maxπ stretch(π)

C∗: optimal congestion

Optimal: C = O(C∗); stretch = O(1)

(Similarily can define w.r.t. edge congestion Cedge.)

Srinivasan et al. [STOC97]: Near-optimal; offline; non-oblivious.

5

slide-7
SLIDE 7

Related Work – Opt. C

d-dim Mesh:

C = O(C∗ · d · log n) (Maggs et al. [FOCS97]) (Also gave a lower bound Ω(C∗ · 1

d · log n))

Arbitrary:

C = O(C∗ log3 n) R¨ acke [FOCS02], (non-constructive) Azar et al. [STOC03] Harrelson et al. [SPAA03] Bienkowski et al. [SPAA03]

      

(Polynomial-time, constructive)

Bansal et al. [SPAA03], (On-line version) Oblivious algorithms with near-optimal C; Unbounded stretch

simple, scalable, efficient, near-optimal, general

6

slide-8
SLIDE 8

Congestion–Stretch Trade Off

Good stretch, Bad C Bad stretch, Good C

We want Good Stretch, Good C

7

slide-9
SLIDE 9

Related Work – Opt. C,stretch

d-dim Mesh:

C = O(C∗ · d2 · log n); stretch = O(d2); (Busch et al. [IPDPS05]) (Also lower bound Ω(log d(π)) random bits per packet) (Scheidler (class notes) indep. considered d = 2)

Arbitrary:

Not Possible (constructive).

simple, scalable, efficient, near-optimal, general

8

slide-10
SLIDE 10

Hierarchical Decompositions

Existing algorithms use hierarchical network decompositions

9

slide-11
SLIDE 11

Hierarchical Decompositions

Existing algorithms use hierarchical network decompositions

10

slide-12
SLIDE 12

Hierarchical Decompositions

Existing algorithms use hierarchical network decompositions

11

slide-13
SLIDE 13

Hierarchical Decompositions

Existing algorithms use hierarchical network decompositions

12

slide-14
SLIDE 14

Hierarchical Decompositions

Existing algorithms use hierarchical network decompositions

13

slide-15
SLIDE 15

Hierarchical Decompositions

Existing algorithms use hierarchical network decompositions

14

slide-16
SLIDE 16

The Gap

Bridge the Gap:

simple, scalable, efficient, near-optimal, general

simple, scalable, efficient, near-optimal, general

↓?

simple, scalable, efficient, near-optimal, general

(Not Possible)

15

slide-17
SLIDE 17

Our Contribution

Bridge the Gap:

simple, scalable, efficient, near-optimal, general

simple, scalable, efficient, near-optimal, general

simple, scalable, efficient, near-optimal, general

Link Routing to Finite Metric Embedding

16

slide-18
SLIDE 18

Our Contribution

Simple: Single intermediate point algorithm, not based on hierarchical decomposition. Near-Optimal: For networks that have low distortion embeddings, eg. Mesh, sensor networks. General: Result holds for all networks.

17

slide-19
SLIDE 19

General Idea: Diffusive Routing

Imagine the network in space [Network Embedding]

t s

source: s; destination: t.

18

slide-20
SLIDE 20

General Idea: Diffusive Routing

Imagine the network in space [Network Embedding]

t s

Packet “diffuses” out from s – congestion spreads.

19

slide-21
SLIDE 21

General Idea: Diffusive Routing

Imagine the network in space [Network Embedding]

s t

Packet “focuses” back to t.

20

slide-22
SLIDE 22

General Idea: Diffusive Routing

Imagine the network in space [Embedded Network]

t s

Diffusion by random choice of intermediate node.

21

slide-23
SLIDE 23

Outline

  • Oblivious Routing: Background and Our Contribution
  • The Algorithm: Oblivious Routing with Single Intermediate Node
  • Good Geometric (Metric) Embeddings; Examples
  • Routing Result; Examples
  • Discussion

22

slide-24
SLIDE 24

I: Embed the Network

Embedding function f : v ∈ V → x ∈ A ⊂ R2; {v1, . . . , vn} → {x1, . . . , xn}

A s t

23

slide-25
SLIDE 25

II: Random Intermediate Point

|ℓ⊥| = |ℓ|

s t ℓ ℓ⊥

24

slide-26
SLIDE 26

IIa: Random Intermediate Node

Choose a node close to the random intermediate point.

s t

25

slide-27
SLIDE 27

III: Follow the Geodesic

Choose a path as close as possible to the geodesic.

s t

26

slide-28
SLIDE 28

III: Follow the Geodesic

Choose a path as close as possible to the geodesic.

s t

27

slide-29
SLIDE 29

III: Follow the Geodesic

Choose a path as close as possible to the geodesic.

s t

28

slide-30
SLIDE 30

III: Follow the Geodesic

Choose a path as close as possible to the geodesic.

s t

29

slide-31
SLIDE 31

Outline

  • Oblivious Routing: Background and Our Contribution
  • The Algorithm: Oblivious Routing with Single Intermediate Node
  • Good Geometric (Metric) Embeddings; Examples
  • Routing Result; Examples
  • Discussion

30

slide-32
SLIDE 32

What Can Go Wrong?

Entire diffusive area is not within the network. γ (pseudo-convexity): fraction guaranteed to lie within network. – Want γ to be large (note, γ ≤ 1

2). γ s t

31

slide-33
SLIDE 33

What Can Go Wrong?

There is no node close to the random intermediate node R (Coverage Radius): Maximum distance to an intermediate node. – Want R to be small.

s t R

32

slide-34
SLIDE 34

What Can Go Wrong?

No Geodesic following path ∆ (Deviation): Furtherest a geodesic path gets from the geodesic. – Want ∆ to be small.

∆ s t

33

slide-35
SLIDE 35

What Can Go Wrong?

Geodesic following paths have large stretch. Σ (Geodesic Stretch): Maximum stretch of a geodesic path. – Want Σ to be small.

Σ = 3 s t

34

slide-36
SLIDE 36

What Can Go Wrong?

Using an intermediate node is costly (large stretch).

distE(s, w) + distE(w, t) ≤

√ 2distE(s, t). Want distG ≈ distE. Distortion: α ≤ distG(u, v)

distE(u, v) ≤ β

(w.l.o.g. α = 1)

w s t

(distE=Euclidean distance, distG=Graph distance)

35

slide-37
SLIDE 37

Graph Embedding Parameters

Parameter What is it? Best If γ Pseudo-Convexity

  • Min. diffusive area in network

large R Coverage-Radius

  • Max. distance to intermediate node

small ∆ Deviation

  • Max. stray of geodesic path

small Σ Geodesic Stretch

  • Max. stretch of geodesic paths

small β Distortion How closely distG matches distE small Note: Embedding parameters are not independent.

  • eg. • γ and R are interdependent.
  • Smaller deviation embedding may have a larger stretch.

36

slide-38
SLIDE 38

Examples

Certain networks have natural embeddings: Mesh, sensor networks (disc graphs), . . . .

37

slide-39
SLIDE 39

Examples

Mesh Sensor Network Mesh with Hole

√n √n

r

v u ℓ

r

γ =

1 2

R =

1 √ 2

∆ =

1 √ 2

Σ = 1 β = √ 2 Geodesic following paths are shortest paths.

38

slide-40
SLIDE 40

Examples

Mesh Sensor Network Mesh with Hole

√n √n

r

v u ℓ

r

γ =

1 2

R =

1 2

∆ =

1 2

Σ = 2 β =

2 √ 2 L

No two nodes are closer than L. Each unit square contains from 1 to k = O(1/L2) nodes. r = 2 √ 2. (max. degree δ ≤ 32k.) Geodesic paths constructed from unit square path.

39

slide-41
SLIDE 41

Examples

Mesh Sensor Network Mesh with Hole

√n √n

r

v u ℓ

r

γ =

1 2

R →

1 √ 2 + r

∆ →

1 √ 2 + r

Σ = 1 β ≤ 5 Geodesic following paths are shortest paths.

40

slide-42
SLIDE 42

Examples

Mesh Sensor Network Mesh with Hole

√n √n

r

v u ℓ

r

γ = O(1) R = O(1) ∆ = O(1) Σ = O(1) β = O(1) γ = O(1) R = O(1) ∆ = O(1) Σ = O(1) β = O(1

L)

γ = O(1) R = O(r) ∆ = O(r) Σ = O(1) β ≤ O(1) (L=min. node sep.) (r=size of hole.)

41

slide-43
SLIDE 43

Outline

  • Oblivious Routing: Background and Our Contribution
  • The Algorithm: Oblivious Routing with Single Intermediate Node
  • Good Geometric (Metric) Embeddings; Examples
  • Routing Result; Examples
  • Discussion

42

slide-44
SLIDE 44

Stretch

Theorem.

stretch

= O(β · R · Σ) The stretch depends on : – Quality of the embedding: β; – Coverage density: R; – Geodesic stretch: Σ.

43

slide-45
SLIDE 45

Proof (Sketch)

s t |ℓ|

|ℓ| √ 2 |ℓ| √ 2 + R

R

– distance stretch is O(1+R). – β links distances to graph distances. – Σ is stretch introduced by geodesic paths.

      

→ β · R · Σ

44

slide-46
SLIDE 46

Congestion

Theorem. C ≤ f(γ, R, ∆, β; n) · C∗ f = O

  • β2(R + ∆)

γ ·

  • (β + ∆)2 + log(n + R)
  • (f

= O(log n)) The Congestion depends on : – Optimal Congestion: C∗; – Extent of diffusion: γ; – Quality of the embedding: β; – Coverage density: R; – Deodesic deviation: ∆.

45

slide-47
SLIDE 47

Proof (Sketch)

Lemma 1. Probability (P) source at distance d uses node v. P ∼ 1

d.

(so E[C(v)] ∼

d Nd d , where Nd = Number of sources distance d from v)

s d ∝ d v

46

slide-48
SLIDE 48

Proof (Sketch)

Lemma 2. C∗ ∼ Nd

d .

(so E[C(v)] ∼

d Nd d ∼ d C∗ ∼ C∗ log n)

v s d

– destination is ∼ 2d away. – use at least ∼ d nodes in 2d-disc. – total node usage ∼ Nd · d. – number of nodes in disc ∼ d2. – pigeonhole: ∃ node used ∼ Nd

d

times.

47

slide-49
SLIDE 49

Examples

Mesh Sensor Network Mesh with Hole

√n √n

r

v u ℓ

r

γ = O(1) R = O(1) ∆ = O(1) Σ = O(1) β = O(1) γ = O(1) R = O(1) ∆ = O(1) Σ = O(1) β = O(1

L)

γ = O(1) R = O(r) ∆ = O(r) Σ = O(1) β ≤ O(1) stretch: O(1) stretch: O( 1

L)

stretch: O(r)

C : O(C∗ log n) C : O(C∗log n

L2 )

C : O(C∗ · r log n)

(L=min. node sep.) (r=size of hole.)

48

slide-50
SLIDE 50

Wrap Up

– Embedding Parameters: γ, R, ∆, Σ, β. – Good embedings: Good embedding parameters. – Diffusive Routing: stretch = O(1); C = O(C∗ log n).

simple, scalable, efficient, near-optimal, general

Ongoing: Can we remove the dependence on γ.

49