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

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

Embed Size (px)

Citation preview

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:

u v

e1

e2

e3

V e2

T(u)

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)

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

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

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.

Reality

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

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

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

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

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

Compact Routing on Trees

Interval routing:

1

2

3

45 6

87

9

10

11

12

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)

Compact Routing on Trees

Space hack (C-00):

Big nodes > sqrt(n)

only remember big

children1

3

45 6

87

9

10

11

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

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

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)

Compact Routing on Trees

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

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

2

Compact Routing on Trees

Single source shortest path routing:

For each node, identify

Its heavy child; the one

with most descendents

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

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!!!

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

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.

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.

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.

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)

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)

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)

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)

The Internet Graph

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!

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.

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.

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).

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

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

Internet Graph Simulations: Our Results

Internet Graph Simulations: Our Results

Internet Graph Simulations Results

Internet Graph Simulations: Our Results

Real Internet Data

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

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

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!!!

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

Name dependent routing

00 01 02 03

10 11 12 13

202221 23

3031 32 33

Name independent routing

2 10 5 15

6 13 8 1

316 12 9

1411 4 7

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.

Name independent routing

2 10 5 15

6 13 8 1

316 12 9

1411 4 7

9??

Name independent routing

2 10 5 15

6 13 8 1

316 12 9

1411 4 7

9??

9 =23!

Name dependent routing

00 01 02 03

10 11 12 13

202221 23

3031 32 33

9 =23!

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

Name-independent simulations

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)

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

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.

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??

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

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