compact routing with slack in low doubling dimension

17
Compact Routing with Slack in Low Doubling Dimension Goran Konjevod, Andréa W. Richa, Donglin Xia, Hai Yu CSE Dept., Arizona State University {goran, aricha, dxia}@asu.edu CS Dept., Duke University [email protected]

Upload: sveta

Post on 11-Jan-2016

50 views

Category:

Documents


0 download

DESCRIPTION

Compact Routing with Slack in Low Doubling Dimension. Goran Konjevod, Andr é a W. Richa, Donglin Xia , Hai Yu CSE Dept., Arizona State University {goran, aricha, dxia}@asu.edu CS Dept., Duke University [email protected]. Doubling Dimension. Doubling Dimension - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Compact Routing with Slack  in Low Doubling Dimension

Compact Routing with Slack in Low Doubling Dimension

Goran Konjevod, Andréa W. Richa, Donglin Xia, Hai Yu

CSE Dept., Arizona State University{goran, aricha, dxia}@asu.edu

CS Dept., Duke [email protected]

Page 2: Compact Routing with Slack  in Low Doubling Dimension

Doubling Dimension Doubling Dimension

The least value s.t. any ball can be covered by at most 2 balls with half radius

Euclidean plane: = log 7

Page 3: Compact Routing with Slack  in Low Doubling Dimension

Related Work:Name-independent compact routing schemes

Reference

With Slack

Stretch

Routing Table Headers

[KRX’07] 9+

[Dinitz’07]

slack

This paper

(1-)n nodes 1+n nodes

This paper

(1-)n nodes

1+

n nodes 9+

3 ( )log / On

4 4log log /( log log )O n n n2log

log log

nO

n

4 ( )1/ log log / On n

( log )O n n

4

( )

logO

n

Lower Bound [KRX’06]:

Graph

Doubling Dimension

Diameter Routing table

Stretch

Tree6 log 1/(2 )O n

2( / 60)( )o n 9

: Doubling Dimension; 1/polylog(n)

Page 4: Compact Routing with Slack  in Low Doubling Dimension

Overview

Basic Idea Slack on Stretch Conclusion

Page 5: Compact Routing with Slack  in Low Doubling Dimension

Basic Idea

Using underlying labeled routing scheme [KRX’07] (1+) stretch (log n)-bit label

Mapping original names to routing labels Hierarchically storing (name, label) pairs Search procedure to retrieve routing label

Page 6: Compact Routing with Slack  in Low Doubling Dimension

r-Nets

r

xy

u

An r-net is a subset Y of node set V s.t. x, y in Y,

d(x,y) r uV, x Y s.t. d(u,x) r

r-net nodes:

Page 7: Compact Routing with Slack  in Low Doubling Dimension

Hierarchy of r-nets r-nets:

Yi: 2i-netfor i=0,…, log

: normalized diameter

Zooming Sequence: u(0)=u u(i) is the nearest

node in Yi to u(i-1)21-net2i-1-net

2i-net

u

u(1)

u(i-1)

u(i)

Page 8: Compact Routing with Slack  in Low Doubling Dimension

Ball Packing s-size Ball Packing B

Greedily select disjoint balls Bu(ru(s)) in an ascending order of their radii ru(s)

(where ru(s) is the radius s.t. |Bu(ru(s)))|=s )

Bj: 2j-size ball packing, for j=0,…, log n B(u,j) Bj : the nearest one to u c(u,j): the center of B(u,j)

Page 9: Compact Routing with Slack  in Low Doubling Dimension

Counting Lemma

Dij: the set of uYi s.t.

c=c(u,j) Counting Lemma

( )log

,0

1 log

2

O

i j ji

n nD

3 2 3| (2 / ) \ (2 ) | (4 / ) 2i i ju cB B

u

Bc(2i+2)

Bu(2i/3)

c

Page 10: Compact Routing with Slack  in Low Doubling Dimension

Overview

Basic Idea Slack on Stretch Conclusion

Page 11: Compact Routing with Slack  in Low Doubling Dimension

(1+)-stretch

Bu(i)(2i/) contains info of Bu(i)(2i/2)

Not found at u(t-1)

Routing Cost:

1 2( ( 1), ) 2 /td u t v

1 2

0

2 / ( ( ), ) ( , ) 2 /

(1 ( )) ( , )

ti t

i

d u t v d u v

O d u v

Page 12: Compact Routing with Slack  in Low Doubling Dimension

Data Structure (1)

A search tree on any B in Bj, stores info of Bc(rc(2jg1)) where g1=log2 n/(14)

Page 13: Compact Routing with Slack  in Low Doubling Dimension

Data Structure (2)For each u(i)

If B in Bj s.t. B Bu(i)(2i/) Bu(i)(2i/2)Bc(rc(2jg1))

If not, search tree on Bu(i)(2i/) stores info of Bu(i)(2i/3)\Bc(2i+2), if u(i) Dij

where c=c(u,j), j=log (|Bu(2i/)|g2), and g2=log2 n/(10)

Bu(i)(2i/)

u(i)

Bu(i)(2i/2)

Bc(rc2ig1)

cB

2i

u(i)

Bu(i)(2i/)

Bu(i)(2i/)

c

2i2

Bc(2i+2)

Page 14: Compact Routing with Slack  in Low Doubling Dimension

Searching at u(i) Go to c, and search on B

cost: 2i+1/ info: Bu(i)(2i/2) next level: i+1

Search on Bu(i)(2i/); if u(i) Dij, go to c and search on Bc(2i+2) cost: 2i+1/2 Info: Bu(i)(2i/3) next level: i+log(1/)+1

u(i)

Bu(i)(2i/2)

Bc(rc2ig1)

cB

2i

u(i)

Bu(i)(2i/)

Bu(i)(2i/)

c

2i2

Bc(2i+2)

Page 15: Compact Routing with Slack  in Low Doubling Dimension

Slack on Stretch

Counting lemma

9+ Stretch Not at level t-1

cost

, ( ) iju i u i D n u(i)

Bu(i)(2i/)

Bu(i)(2i/)

Bc(2i+2)

1( ( 1), ) 2 /td u t v

1 2

0

2 / ( ( ), ) ( , ) 2 /

(9 ( )) ( , )

ti t

i

d u t v d u v

O d u v

Page 16: Compact Routing with Slack  in Low Doubling Dimension

Conclusion (1+)-stretch compact name-

independent routing schemes with slack either on storage, or on stretch, in networks of low doubling dimension.

Dinitz provided 19-stretch -slack compact name-independent routing scheme in general graphs

Can we do better than 19 stretch in general graphs?

Page 17: Compact Routing with Slack  in Low Doubling Dimension

Thanks & Questions