Overlay Routing (Routing Underlay) - cs. · PDF fileSeptember 29, 2003 22 Library of Routing Services •Strategy for efficient probes: Guess & Verify –Guess candidate solutions

  • Upload
    ngodung

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

  • 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

  • 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 {ws}

    (2) Invoke GetDistance(u,w,ping) on the first jnodes in {ws}, 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 vs

  • 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