Presentation is loading. Please wait.

Presentation is loading. Please wait.

Compact Routing Schemes Mikkel Thorup Uri Zwick AT&T Labs – Research Tel Aviv University.

Similar presentations


Presentation on theme: "Compact Routing Schemes Mikkel Thorup Uri Zwick AT&T Labs – Research Tel Aviv University."— Presentation transcript:

1 Compact Routing Schemes Mikkel Thorup Uri Zwick AT&T Labs – Research Tel Aviv University

2 Routing u v    Packet: label(v) information

3 Handshaking Packet: header(u,v) information uv header(u,v) The same header is used for all messages sent from u to v

4 Routing in Trees Each vertex is assigned a (1+o(1))log 2 n – bit label. Given label(u) and label(v), it is possible to find, in constant time, the right edge to take from u. Similar result by Fraigniaud and Gavoille [ICALP’01] u v

5 Routing in General Graphs Handshaking?Table SizeStretch no n 1/2 3 yes n 1/3 5 no 7 yes n 1/k 2k-1 no n 1/k 4k-5

6 Previous Results AuthorsTable SizeStretch Cowen Cowen ‘99 n 2/3 3 Eilam, Gavoille Peleg Eilam, Gavoille Peleg ‘98 n 1/2 5 Awerbuch Peleg Awerbuch Peleg ‘92 n 1/k O(k 2 )

7 Our Results Are Essentially Optimal! Labels must be at least log 2 n – bit long. In graphs, for stretch<3, the total size of the routing tables must be  (n 2 ). For stretch<5, the total size must be  (n 3/2 ). Erdös Conjecture: For stretch<2k+1, the total size of the tables must be  (n 1+1/k ). (Equivalent to a well known girth conjecture of Erdös.)

8 Tree Routing – A Practical Scheme O(log 2 n)-bit labels. Arbitrary port numbers. DFS numbering: For every vertex u, let f u be the largest descendant of u. Then v is a descendant of u iff           10 7 A trivial solution with O(deg(v)) memory.

9 Tree Routing – A Practical Scheme (Cont.) Let s(v) be the number of descendants of v. Let p v be the parent of v. Then, vertex v is heavy if s(v)  s(p v )/2, and light otherwise. 14 82 17 141 3 11 3 11

10 Tree Routing – A Practical Scheme (End) 0 1 2 2 3 3 4 The light-level l v of a vertex v is the number of light vertices on the path to it from the root. Claim: l v <log 2 n label(v)=(v,port(e 1 ),port(e 2 ),…) At v we store: v, f v, h v, l v, port(v,p v ) and port(v,h v ). e1e1 e2e2 e3e3 r v e4e4

11 Routing in Graphs

12 Choose a Set of Centers cent A (v) = a center closest to v

13 Construct Clusters cluster A (v) = vertices that are closer to v than to all centers. cluster

14 Keep Routing Info from v to A  cluster A (v)

15 If v  cluster A (u), Route Directly u v w For any w on the shortest path we have v  cluster A (w).

16 If v  cluster A (u), Route through cent A (v) u v cent A (v) Label(v)= (v,cent A (v),port(cent A (v),v))

17 How do we choose centers? We want A such that |A|=O(n 1/2 ) cluster A (v)=O(n 1/2 ), for every v [Cowen does this with O(n 2/3 )]

18 Algorithm center(G) A  ; W  V; While W  { A  A  choose(W,n 1/2 ); W  {w  V | cluster A (w)>4n 1/2 }; } Return A; The expected size of A is O(n 1/2 log n).

19 Smaller Tables, Larger stretch Use a hierarchy of centers. Construct a tree cover of the graph. Identify an appropriate tree from the cover and route on it.

20 Tree Cover Each vertex contained in at most n 1/k trees. For every u,v, there is a tree with a path of stretch at most 2k-1 between them.

21 Is there a routing scheme with: Table size = O(n 1/k ) Label size = O(log n) No handshaking ???


Download ppt "Compact Routing Schemes Mikkel Thorup Uri Zwick AT&T Labs – Research Tel Aviv University."

Similar presentations


Ads by Google