Compact Routing Schemes Mikkel Thorup, Uri Zwick Ankit Singla CS - - PowerPoint PPT Presentation

compact routing schemes
SMART_READER_LITE
LIVE PREVIEW

Compact Routing Schemes Mikkel Thorup, Uri Zwick Ankit Singla CS - - PowerPoint PPT Presentation

Compact Routing Schemes Mikkel Thorup, Uri Zwick Ankit Singla CS 598 Oct. 20, 2009 Ankit Singla (CS 598) Compact Routing Schemes Oct. 20, 2009 1 / 13 The Extremes Complete (n) size route tables (Image Credits: Geoff Houston @


slide-1
SLIDE 1

Compact Routing Schemes

Mikkel Thorup, Uri Zwick Ankit Singla

CS 598

  • Oct. 20, 2009

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

1 / 13

slide-2
SLIDE 2

The Extremes

Complete Ω(n) size route tables (Image Credits: Geoff Houston @ potaroo.net) Source routing with Ω(n) packet headers

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

2 / 13

slide-3
SLIDE 3

A Mid-way Approach

˜ O(√n) routing tables at nodes (1 + o(1)) log2 n -bit node headers Constant time routing decisions at nodes

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

3 / 13

slide-4
SLIDE 4

A Mid-way Approach

˜ O(√n) routing tables at nodes (1 + o(1)) log2 n -bit node headers Constant time routing decisions at nodes Bounded increase in path length!

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

3 / 13

slide-5
SLIDE 5

Centers

Pick a set of ‘centers’ A

These images are from Zwick’s slides

centA(v) is the center closest to v

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

4 / 13

slide-6
SLIDE 6

Clusters

clusterA(w) is the set of nodes closer to w than to any center

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

5 / 13

slide-7
SLIDE 7

State at a Node

Every node v stores Shortest paths to all centers Shortest paths to all nodes in clusterA(v)

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

6 / 13

slide-8
SLIDE 8

Routing Method

For routing a message from u to v Case: v ∈ clusterA(u) Route directly since shortest path is stored at v Case: v / ∈ clusterA(u) Route through centA(v) - shortest path to centA(v), from there to v

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

7 / 13

slide-9
SLIDE 9

Picking Centers

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

8 / 13

slide-10
SLIDE 10

Stretch-3 Proof

If v ∈ clusterA(u), stretch = 1; Otherwise the following theorem holds Theorem δ(u, centA(v)) + δ(centA(v), v) ≤ 3 * δ(u, v)

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

9 / 13

slide-11
SLIDE 11

Stretch-3 Proof

If v ∈ clusterA(u), stretch = 1; Otherwise the following theorem holds Theorem δ(u, centA(v)) + δ(centA(v), v) ≤ 3 * δ(u, v) Triangle inequality - δ(u, centA(v)) ≤ δ(u, v) + δ(v, centA(v))

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

9 / 13

slide-12
SLIDE 12

Stretch-3 Proof

If v ∈ clusterA(u), stretch = 1; Otherwise the following theorem holds Theorem δ(u, centA(v)) + δ(centA(v), v) ≤ 3 * δ(u, v) Triangle inequality - δ(u, centA(v)) ≤ δ(u, v) + δ(v, centA(v)) Symmetry - δ(v, centA(v)) = δ(centA(v), v)

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

9 / 13

slide-13
SLIDE 13

Stretch-3 Proof

If v ∈ clusterA(u), stretch = 1; Otherwise the following theorem holds Theorem δ(u, centA(v)) + δ(centA(v), v) ≤ 3 * δ(u, v) Triangle inequality - δ(u, centA(v)) ≤ δ(u, v) + δ(v, centA(v)) Symmetry - δ(v, centA(v)) = δ(centA(v), v) Since v / ∈ clusterA(u), δ(centA(v), v) ≤ δ(u, v)

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

9 / 13

slide-14
SLIDE 14

Routing Decision Time and Header Size

Node v’s label contains (v, centA(v), port(centA(v), v)) This label is carried in every message to v Use hash table at every node w, containing (v, port(w, v)) ∀v ∈ A ∪ clusterA(w)

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

10 / 13

slide-15
SLIDE 15

Routing Decision Time and Header Size

Node v’s label contains (v, centA(v), port(centA(v), v)) This label is carried in every message to v Use hash table at every node w, containing (v, port(w, v)) ∀v ∈ A ∪ clusterA(w) Header size reduction depends on clever ordering and labeling of nodes and ports

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

10 / 13

slide-16
SLIDE 16

Tree Routing, Handshaking and All That Jazz ...

Stretch 2k - 1 requires O(n1/k) state at routers This involves use of more ‘loose’ structure than the global centers - tree covers!

Each router is included in a bounded number of trees Each pair is connected by a stretch 2k - 1 path in at least one tree Tree routing algorithms are then used on this tree cover

Handshaking: exchange of information after which the stretch 2k - 1 path becomes known

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

11 / 13

slide-17
SLIDE 17

Discussion?

How practical are the header size reduction methods? What issues must be addressed before this can be deployed? What changes with mobility of nodes?

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

12 / 13

slide-18
SLIDE 18

Thank You!

Ankit Singla (CS 598) Compact Routing Schemes

  • Oct. 20, 2009

13 / 13