overlay routing (routing underlay) · pdf fileseptember 29, 2003 22 library of routing...

Post on 06-Feb-2018

222 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

Overlay Routing(Routing Underlay)

2September 29, 2003

Overlay Networks

3September 29, 2003

End System Multicast

A

B

C

D

R1 R250

5

5

5

5

A

B

C

D

R1 R2

4September 29, 2003

A

B

C

D

R1 R2

ESM (cont)

A

B

C

D

R1 R2

5September 29, 2003

objid

nodeids

02128 - 1

Distributed Hash Tables

6September 29, 2003

d46a1c

locate(d46a1c)

d462ba

d4213f

d13da3

65a1fc

d467c4d471f1

DHT (cont)

7September 29, 2003

d46a1cd462ba

d4213f

d13da3

65a1fc

d467c4d471f1

addnode(d46a1c)

DHT (cont)

8September 29, 2003

Resilient Overlay Networks

9September 29, 2003

RON (cont)

BGP inefficiencies– Poor Metricsß minimize AS hops

– Long failover timesß measured in minutes

– Manual Load Balancingß configuration errors

– Single Pathß under-utilize alternate paths

10September 29, 2003

RON (cont)

Fraction of paths measuredRat

io o

f def

ault

rout

e la

tenc

y to

best

alte

rnat

e-ro

ute

late

ncy

Improvement for roughly 40%25% shorter latency for 15%

11September 29, 2003

RON (cont)

Fraction of paths measured

Pac

ket L

oss

Rat

e DefaultAlternate

12September 29, 2003

Problem

• Discovering efficient topology requiresexpensive/disturbing network probes

• Single overlay network– aggressive probing does not scale (RON)

• Multiple overlay networks– Redundant probing to discover the same topological

information

– 1GB-per-day of ping traffic on PlanetLabß one ping-per-sec-per-node across 125 nodes

13September 29, 2003

Routing Underlay

• Sits between overlays and the Internet

• Exposes topological information– already collected by the Internet (BGP tables)

– caches active measurements

• Enables cost-effective network probes– primitives: interface to shared probes

– layered architecture: hierarchical probes

14September 29, 2003

Hierarchical Probes

Service Overlay Networks

Library of Routing Services

Topology Probing Kernel

Raw Topology Information

Primitives

Use more expensive probes, but in limited scope

Probe efficiently using static data as a hint

Collect passive data / Cache expensive probes

Expense

Scope

15September 29, 2003

Primitives

• GetGraph (resolution, scope) _ connectivity

• GetPath (resolution, from, to) _ route

• GetDistance (metric, from, to) _ distance

resolution = AS level, router level, ….

scope = entire network, within an ISP, ….

metric = AS hop, router hop, RTT ….

16September 29, 2003

Primitives at AS Level

• Resolution = AS Level– GetGraph AS Peering Graph

– GetPath AS Path

– GetDistance AS hop count

• Helpers– GetPrefixMap IP to AS translation

– …

17September 29, 2003

Peering Graph Completeness

18September 29, 2003

Degree Distribution

Edge AS (degree<=5) : 92 %Regional AS (5<degree<=100) : 7.5%TransContinental AS (degree>100): 0.5%

19September 29, 2003

Degree Distribution

99.6599

99.3050

98.2020

96.1310

92.265

86.563

76.552

33.261

Cumulative Distribution (%)Degree (# of peers)

20September 29, 2003

Top 10 players

Verio, Inc.2914541

Level 3 Communications, LLC3356545

Global Crossing3549589

UUNET Technologies, Inc702589

Genuity1621

Cable & Wireless USA3561798

Qwest209890

AT&T WorldNet Services70181502

Sprint12391733

UUNET Technologies, Inc.7012554

OrganizationASNDegree

21September 29, 2003

Library of Routing Services

Service Overlay Networks

Library of Routing Services

Topology Probing Kernel

Raw Topology Information

Primitives

Expense

Scope

Cost Effective Probes

22September 29, 2003

Library of Routing Services

• Strategy for efficient probes: Guess & Verify– Guess candidate solutions using inexpensive probes

over a large scope

– Verify them with more expensive probes in a

limited scope

• Example Library Services(1) Nearest neighbors (DHT-based routing)

(2) Edge-disjoint paths (multi-path routing)

(3) Physically representative mesh (RON, ESM)

23September 29, 2003

Nearest Neighbors

NodeSet = NearestNodes(N,k)

N : a given set of nodesk : the number of neighborsNodeSet: a set of k nodes in N thatare closest to the local overlay node,in terms of latency.

24September 29, 2003

Nearest Neighbors (cont)Basic idea:

Use weak correlation between latency and AS hops

For a given local node u, …

(1) Sort w ’s in N according to AS hop count(GetPath(u,w)) into a candidate sequence {w’s}

(2) Invoke GetDistance(u,w,ping) on the first jnodes in {w’s}, and select the best k nodes asnearest neighbors ( j>k )

25September 29, 2003

Nearest Neighbors (cont)

Among 81 Nodes (PlanetLab + traceroute servers)

26September 29, 2003

Disjoint PathsPathSet = DisjointPaths (u, v, N, k)

u, v : a given pair of overlay nodes

N : a set of intermediate nodes

k : the number of disjoint paths

u v

w N

A single-hop indirection (u, w, v) thatis edge-disjoint to (u, v) at the AS level

Œ

27September 29, 2003

Disjoint Paths (cont)

• Examined 1235 paths between multi-homed ASes(from RouteViews ; 42 vantage points)

• 93.7% have at least one disjoint path

How often we find disjoint paths using a single hop indirection?

28September 29, 2003

Disjoint Paths (cont)

Among 1235 paths (42 nodes) from RouteView93.7% have at least one disjoint paths

29September 29, 2003

Disjoint Paths (cont)

(1) Guess w ’s likely to produce disjoint paths- GetPath(u,v) and GetGraph

(2) Verify path (u,w,v) is disjoint to path (u,v)

- GetPath(u,w) and GetPath(w,v)

Local node u is looking for alternate paths to v …

u v

w?

30September 29, 2003

Disjoint Paths (cont)

Among 1235 paths (among 42 nodes) from RouteViews

Random QueryOur method90 percentile

31September 29, 2003

Disjoint Paths (cont)

Among 81 Nodes(PlanetLab + traceroute servers)

32September 29, 2003

Representative MeshMesh = BuildMesh(N)

N : a set of overlay nodesMesh : a graph that retains only independent edges in the underlying network

AS V

AS Y

AS W

AS X

AS U

w

u v

Virtual link (u,v) is redundant

w

u v{U

, X, W

} {W,Y,V}

AS Path={U,X,W,Y,V}

33September 29, 2003

Mesh (cont)

(1) Guess w ’s likely to conform to either topology- GetPath(u,v) and GetGraph

(2) Verify the topology- GetPath(u,w) and GetPath(w,v)

AS V

AS Y

AS W

AS X

AS U

u v

w

AS V

AS Y

AS W

AS X

AS U

u v

w

(A) (B)

Local node u checks virtual links to the other v’s

34September 29, 2003

Mesh (cont)

Using A+B

Using A

Peering Graph from RouteViews+Planetlab

35September 29, 2003

BuildMesh on PlanetLabMesh with N=5 nodes (PU, Duke, ISI, UW, Abilene)

ISI

UW

Duke

Abilene

Princeton

36September 29, 2003

Todo

• Modify RON, ESM, DHT to use underlay

• Discriminate among nodes in transit ASes

• Build sparser mesh(es) on top of AS-based mesh

• Develop better cost/benefit model

• Get more BGP feeds (or fake it)

• Implement finer-grain resolutions

• Implement an “ IPvN ” service

top related