61
Compact Routing in Theory and Practice Lenore J. Cowen Tufts University

Compact Routing in Theory and Practice

  • Upload
    tovah

  • View
    46

  • Download
    0

Embed Size (px)

DESCRIPTION

Compact Routing in Theory and Practice. Lenore J. Cowen Tufts University. The Theory Problem. Consider the following distributed view of shortest path routing on an n node network:. e1. v. e2. u. e3. V e2. T(u). The Theory Problem. - PowerPoint PPT Presentation

Citation preview

Page 1: Compact Routing in Theory and Practice

Compact Routing in Theory and Practice

Lenore J. Cowen

Tufts University

Page 2: Compact Routing in Theory and Practice

The Theory Problem

• Consider the following distributed view of shortest path routing on an n node network:

u v

e1

e2

e3

V e2

T(u)

Page 3: Compact Routing in Theory and Practice

The Theory Problem

• Consider the following distributed view of shortest path routing on an n node network:

u

e1

e2

e3

V e2

vt

T(u)

T(t)

Page 4: Compact Routing in Theory and Practice

The Theory Problem

• Consider the following distributed view of shortest path routing on an n node network:

u

e1

e2

e3

V e2

vt

T(u)

T(t)

Space:

O(n log n) bit tables

Page 5: Compact Routing in Theory and Practice

The Compact Routing Problem

• Can we “compact” the local routing tables if we allow short rather than shortest paths?

u v

e1

e2

e3

V e2

h

T(u)F(h,v,T(u))=e

Page 6: Compact Routing in Theory and Practice

Compact Routing Scheme

• The stretch of a path p(u,v) from u to v is | p(u,v)|/d(u,v) where d(u,v) is the length of the shortest path from u to v.

The stretch of a routing scheme is the maximum stretch of any path.

Want: small stretch and small table size.

Page 7: Compact Routing in Theory and Practice

Reality

• This graph algorithms problem has little to do with this:

Page 8: Compact Routing in Theory and Practice

Reality

• Each router advertises some of its known routes to (some of the) destinations in the network it knows about, to its neighbors.

• Routers prefer short routes; if a router thinks a route is undesirable, it will fail to pass it on, or depreciate it by artificially inflating its length.

• Complicated by peering relationships

• Tables and routes can be arbitrarily long; no stretch bounds

Page 9: Compact Routing in Theory and Practice

The Geni Initiative

• Clean slate redesign: what should the new routing protocols accomplish?

- low stretch -diff. QoS

- scalable table size -mobile nodes

- traffic engineering -updatable

- policy

- security

Page 10: Compact Routing in Theory and Practice

The Geni Initiative

• Clean slate redesign: what should the new routing protocols accomplish?

- low stretch -diff. QoS

- scalable table size -mobile nodes

- traffic engineering -updatable

- policy

- security

Page 11: Compact Routing in Theory and Practice

Back to Compact Routing Theory

• Early work: Santoro-Khatib (85) [rings, trees], van Leeuwen-Tan (86) [complete networks, grids], Fredrickson-Janardan (88) [outerplanar graphs, small separators]

• Compact Routing on Trees

• Universal compact routing schemes

Page 12: Compact Routing in Theory and Practice

Compact Routing on Trees

Interval routing:

1

2

3

45 6

87

9

10

11

12

Page 13: Compact Routing in Theory and Practice

Compact Routing on Trees

Interval routing:

1

2

3

45 6

87

9

10

11

121-2 3-11

Stretch=1

Space=O(d log n)

Header= O(logn)

Page 14: Compact Routing in Theory and Practice

Compact Routing on Trees

Space hack (C-00):

Big nodes > sqrt(n)

only remember big

children1

3

45 6

87

9

10

11

Page 15: Compact Routing in Theory and Practice

Compact Routing on Trees

Space hack (C-01):

Big nodes > sqrt(n)

only remember big

children1

3

45 6

87

9

10

11

Packet header: destination;

Name of the last big node on

The path from the root to it edge from last big node

Page 16: Compact Routing in Theory and Practice

The Compact Routing Problem

• Can we “compact” the local routing tables if we allow short rather than shortest paths?

u v

e1

e2

e3

V e2

h

T(u)F(h,v,T(u))=e

Page 17: Compact Routing in Theory and Practice

Compact Routing on Trees

Space hack (C-01):

Big nodes > sqrt(n)

only remember big

children

1 3

45 6

87

9

10

11

Packet header: destination;

Name of the last big node on

The path from the root to it edge from last big node

Stretch=1

Space=O(sqrt n log n)

Header= O(logn)

Page 18: Compact Routing in Theory and Practice

Compact Routing on Trees

• Fraignaud/Gavoille [01] and Thorup/Zwick [01]:

Stretch 1 Space O(log n) !!!! Header size O(log n)

2

Page 19: Compact Routing in Theory and Practice

Compact Routing on Trees

Single source shortest path routing:

For each node, identify

Its heavy child; the one

with most descendents

Page 20: Compact Routing in Theory and Practice

Compact Routing on Trees

Single source shortest path routing:

For each node, identify

Its heavy child; the one

with most descendents

Packet header

is the names of all

the light edges from

root to destination

along with their

parent names

Page 21: Compact Routing in Theory and Practice

Compact Routing on Trees

Single source shortest path routing:

Packet header

is the names of all

the light edges from

root to destination

along with their

parent names

Can only be

O(log n) light edges

on any path!!!

Page 22: Compact Routing in Theory and Practice

Compact Routing on Trees

This works to route down; need to know when to route up:

Add interval labeling

to know when to

go toward the root

Page 23: Compact Routing in Theory and Practice

Universal Compact Routing Schemes

• Work on any graph:

-- ABLP-90, AP-92 early schemes -- EGP-98, stretch 5 -- C-00, stretch 3 -- TZ-01, stretch 3 (improved table size)

Gavoille and Gengler proved a lower bound of 3 on the stretch on any routing scheme with sublinear-sized routing tables.

Page 24: Compact Routing in Theory and Practice

Universal Compact Routing Schemes

Define a node’s local neighborhood to be its closest sqrt n nodes.

From set cover: choose a set of sqrt n log n landmarks to hit every local neighborhood.

Page 25: Compact Routing in Theory and Practice

Universal Compact Routing Schemes

Within a local neighborhood, store exact shortest path routing information

Outside store routing information to all landmarks; route through a destination’s closest landmark, and then use tree-routing from landmark to destination.

Page 26: Compact Routing in Theory and Practice

Universal Compact Routing Schemes

Stretch bound follows from the triangle inequality:

Suppose d(u,v) >= d(L(v),v) Then d(u,L(v)) + d(L(v),v) <= d(u,v) + d(v,L(v)) + d(L(v),v) <= 3d(u,v)

u

v

L(v)

Page 27: Compact Routing in Theory and Practice

Universal Compact Routing Schemes

The construction sketched above achieves stretch 3 with tables of average size O(sqrt n log^2 n) to store local information for each node’s closest sqrt n nodes, and routing

information for every landmark.

u

v

L(v)

Page 28: Compact Routing in Theory and Practice

Universal Compact Routing Schemes

Remark: needs undirected

Graphs for triangle ineq bound

Roundtrip routing (C-Wagner-04 )

measure d(u,v)+d(v,u)

u

v

L(v)

Page 29: Compact Routing in Theory and Practice

The Internet Graph

• The Internet graph is not an arbitrary graph; it is believed to have a power-law topology.

Faloutsos^3 -99

(but see also CCGJSW-02)

Page 30: Compact Routing in Theory and Practice

The Internet Graph

Page 31: Compact Routing in Theory and Practice

The Internet Graph

• Performance of universal schemes on both synthetic models of power-law topologies and “real” maps of the inter-AS graph is much better on average than worst-case guarantees!

Page 32: Compact Routing in Theory and Practice

So: shouldn’t we be designing schemes for Internet graphs?

• Brady-C 06: Compact Routing with Additive Stretch on power-law graphs.

• Breaks graph into a dense core, of diameter d; the rest of the graph is called the fringe.

Page 33: Compact Routing in Theory and Practice

BC Scheme

• Let e be the number of edges that need to be removed from the fringe to make it into a forest.

Theorem. For any unweighted, undirected network, there is a routing scheme that uses O(e log^2 n)-bit headers and routing tables, and has additive stretch d.

Page 34: Compact Routing in Theory and Practice

BC Scheme

• Constructed using a shortest path tree to route in the core, and e spanning trees in the fringe, and a distance labeling to choose between them.

• Estimates on the Inter-AS graph would give a worst-case additive stretch of 10 (and average stretch much smaller).

Page 35: Compact Routing in Theory and Practice

Internet Graph Simulations: Our Results

Definition. A power-law graph G=(V,E) is an unweighted, undirected graph whose degree distribution approximates a power-law, i.e it has

c vertices of degree 1

c/x vertices of degree x

Page 36: Compact Routing in Theory and Practice

Internet Graph Simulations

Definition. A power-law graph G=(V,E) is an unweighted, undirected graph whose degree distribution approximates a power-law, i.e it has

c vertices of degree 1

c/x vertices of degree x

Note: how to generate them randomly is non-trivial; slight differences in the model

Page 37: Compact Routing in Theory and Practice

Internet Graph Simulations: Our Results

Page 38: Compact Routing in Theory and Practice

Internet Graph Simulations: Our Results

Page 39: Compact Routing in Theory and Practice

Internet Graph Simulations Results

Page 40: Compact Routing in Theory and Practice

Internet Graph Simulations: Our Results

Page 41: Compact Routing in Theory and Practice

Real Internet Data

Page 42: Compact Routing in Theory and Practice
Page 43: Compact Routing in Theory and Practice
Page 44: Compact Routing in Theory and Practice

The Geni Initiative

• Clean slate redesign: what should the new routing protocols accomplish?

- low stretch -diff. QoS

- scalable table size -mobile nodes-mobile nodes

- traffic engineering -updatable

- policy

- security

Page 45: Compact Routing in Theory and Practice

So far: Compact Routing is Static

• Routing table setup is centralized

• Node names are topology dependent:

-- in interval routing and BC scheme depended on place in the tree

-- in Cowen or TZ schemes depended on nearest landmark

Page 46: Compact Routing in Theory and Practice

So far: Compact Routing is Static

• Routing table setup is centralized• Node names are topology dependent: -- in interval routing and BC scheme

depended on place in the tree -- in Cowen or TZ schemes depended

on nearest landmark

Separate naming from packet forwarding layers!!!

Page 47: Compact Routing in Theory and Practice

Name-Independent Compact Routing

• v is any unique identifier

• h is initially empty!

u v

e1

e2

e3

V e2

h

T(u)F(h,v,T(u))=e

Page 48: Compact Routing in Theory and Practice

Name dependent routing

00 01 02 03

10 11 12 13

202221 23

3031 32 33

Page 49: Compact Routing in Theory and Practice

Name independent routing

2 10 5 15

6 13 8 1

316 12 9

1411 4 7

Page 50: Compact Routing in Theory and Practice

Name Independent Routing

• Discover information about network topology as you “wander around”

• Idea (Peleg): place a distributed dictionary on top that couples names to new topology-dependent names, and stores them in the packet header.

Page 51: Compact Routing in Theory and Practice

Name independent routing

2 10 5 15

6 13 8 1

316 12 9

1411 4 7

9??

Page 52: Compact Routing in Theory and Practice

Name independent routing

2 10 5 15

6 13 8 1

316 12 9

1411 4 7

9??

9 =23!

Page 53: Compact Routing in Theory and Practice

Name dependent routing

00 01 02 03

10 11 12 13

202221 23

3031 32 33

9 =23!

Page 54: Compact Routing in Theory and Practice

Name-Independent Universal Schemes

Table size (soft O)

Header size

Max stretch

ABLP-89 O(n^1/2) O(log n) 2592

AP-90 O(n^1/2) O(log^2 n) 1088

ACLRT-03 O(n^1/2) O(log^2 n) 5

ACLRT-03 O(n^2/3) O(log n) 5

AGMNT-04 O(n^1/2) O(log^2 n) 3

Page 55: Compact Routing in Theory and Practice

Name-independent simulations

Page 56: Compact Routing in Theory and Practice

But is it practical yet?

• No.

• Still have to deal with updating routing tables in response to changing network topology.

• Brady-Cowen protocol has some attractive features that make this easier than for the universal schemes (work in progress)

Page 57: Compact Routing in Theory and Practice

The Genie Initiative

• Clean slate redesign: what should the new routing protocols accomplish?

- low stretch -diff. QoS

- scalable table size -mobile nodes

- traffic engineering -updatable

- policy

- security

Page 58: Compact Routing in Theory and Practice

Back to theory

• A distance labeling is an assignment of short (polylog n)-bit strings to vertices so that given the labels of two vertices their exact (or approximate) distance can be inferred.

• Exact distance labeling schemes are known for graphs with small separators or separators with small diameter.

Page 59: Compact Routing in Theory and Practice

Theory

• Not possible for planar graphs (Gavoille, Peleg, x)

• Theorem (Brady-C 06) Exact distance labeling yield additive stretch compact routing schemes.

• Other connections between spanners, distance labelings, compact routing??

Page 60: Compact Routing in Theory and Practice

Theory: open problems

• Stretch 1 or additive stretch compact routing schemes for planar graphs: do they exist?

• More classes of exact additive spanners

• More special classes of graphs that have exact distance labeling schemes

Page 61: Compact Routing in Theory and Practice

Collaborators

• Marta Arias … and thanks to

• Arthur Brady the National Science

• Kevin Fall Foundation for their

• Dima Krikourov support of this work.

• Kofi Laing

• Rajmohan Rajaraman

• Ori Taka