A Routing Underlay for Overlay Networks Akihiro Nakao Larry Peterson Andy Bavier SIGCOMM’03 Reviewer: Jing lu.

Slides:



Advertisements
Similar presentations
4/12/2015© 2009 Raymond P. Jefferis IIILect Internet Protocol - Continued.
Advertisements

Network Layer – Routing 2 Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
Routing Protocol.
1 A Case For End System Multicast Yang-hua Chu, Sanjay Rao and Hui Zhang Carnegie Mellon University Largely adopted from Jonathan Shapiro’s slides at umass.
Routing So how does the network layer do its business?
CCNA 2 v3.1 Module 6.
Routing and Routing Protocols
Routing.
Spring Routing & Switching Umar Kalim Dept. of Communication Systems Engineering 06/04/2007.
1 Computer Networks Routing Algorithms. 2 IP Packet Delivery Two Processes are required to accomplish IP packet delivery: –Routing discovering and selecting.
Chapter 27 Q and A Victor Norman IS333 Spring 2015.
Lecture Week 3 Introduction to Dynamic Routing Protocol Routing Protocols and Concepts.
1CS 6401 Peer-to-Peer Networks Outline Overview Gnutella Structured Overlays BitTorrent.
1 ECE453 – Introduction to Computer Networks Lecture 10 – Network Layer (Routing II)
1 Semester 2 Module 6 Routing and Routing Protocols YuDa college of business James Chen
Each computer and router interface maintains an ARP table for Layer 2 communication The ARP table is only effective for the broadcast domain (or LAN)
1 Chapter 27 Internetwork Routing (Static and automatic routing; route propagation; BGP, RIP, OSPF; multicast routing)
Introduction to Routing and Routing Protocols By Ashar Anwar.
CCNA – Cisco Certified Network Associates Routing and Static Routes By Roshan Chaudhary Lecturer Islington College.
1 Pertemuan 20 Teknik Routing Matakuliah: H0174/Jaringan Komputer Tahun: 2006 Versi: 1/0.
CS An Overlay Routing Scheme For Moving Large Files Su Zhang Kai Xu.
Routing and Routing Protocols Routing Protocols Overview.
1 Introducing Routing 1. Dynamic routing - information is learned from other routers, and routing protocols adjust routes automatically. 2. Static routing.
M.Menelaou CCNA2 ROUTING. M.Menelaou ROUTING Routing is the process that a router uses to forward packets toward the destination network. A router makes.
1 © 2003, Cisco Systems, Inc. All rights reserved. CCNA 2 Module 6 Routing and Routing Protocols.
1 © 2004, Cisco Systems, Inc. All rights reserved. CCNA 2 v3.1 Module 6 Routing and Routing Protocols.
1 Chapter 27 Internetwork Routing (Static and automatic routing; route propagation; BGP, RIP, OSPF; multicast routing)
1 Routing. 2 Routing is the act of deciding how each individual datagram finds its way through the multiple different paths to its destination. Routing.
1 BitHoc: BitTorrent for wireless ad hoc networks Jointly with: Chadi Barakat Jayeoung Choi Anwar Al Hamra Thierry Turletti EPI PLANETE 28/02/2008 MAESTRO/PLANETE.
Application-Layer Multicast -presented by William Wong.
Technical Refresher Session 3. Overview Difference between communication between devices on a single logical network and communication between different.
1. 2 Anatomy of an IP Packet IP packets consist of the data from upper layers plus an IP header. The IP header consists of the following:
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Paper Group: 20 Overlay Networks 2 nd March, 2004 Above papers are original works of respective authors, referenced here for academic purposes only Chetan.
Static versus Dynamic Routes Static Route Uses a protocol route that a network administrators enters into the router Static Route Uses a protocol route.
1 Internet Routing. 2 Terminology Forwarding –Refers to datagram transfer –Performed by host or router –Uses routing table Routing –Refers to propagation.
Page 110/27/2015 A router ‘knows’ only of networks attached to it directly – unless you configure a static route or use routing protocols Routing protocols.
Scalable Content- Addressable Networks Prepared by Kuhan Paramsothy March 5, 2007.
CCNA 2 Week 6 Routing Protocols. Copyright © 2005 University of Bolton Topics Static Routing Dynamic Routing Routing Protocols Overview.
Routing and Routing Protocols
1 Version 3.1 Module 6 Routed & Routing Protocols.
Routing protocols. 1.Introduction A routing protocol is the communication used between routers. A routing protocol allows routers to share information.
COS 420 Day 15. Agenda Finish Individualized Project Presentations on Thrusday Have Grading sheets to me by Friday Group Project Discussion Goals & Timelines.
ECE 544 Project3 Group 9 Brien Range Sidhika Varshney Sanhitha Rao Puskuru.
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
1 Chapter 4: Internetworking (IP Routing) Dr. Rocky K. C. Chang 16 March 2004.
Chapter 25 Internet Routing. Static Routing manually configured routes that do not change Used by hosts whose routing table contains one static route.
Internet Traffic Engineering Motivation: –The Fish problem, congested links. –Two properties of IP routing Destination based Local optimization TE: optimizing.
Cisco 2 - Routers Perrine modified by Brierley Page 13/21/2016 Chapter 4 Module 6 Routing & Routing Protocols.
Routing Semester 2, Chapter 11. Routing Routing Basics Distance Vector Routing Link-State Routing Comparisons of Routing Protocols.
PATH DIVERSITY WITH FORWARD ERROR CORRECTION SYSTEM FOR PACKET SWITCHED NETWORKS Thinh Nguyen and Avideh Zakhor IEEE INFOCOM 2003.
Routing and Routing Protocols CCNA 2 v3 – Module 6.
Network Layer COMPUTER NETWORKS Networking Standards (Network LAYER)
Working at a Small-to-Medium Business or ISP – Chapter 6
Computer Networks Routing Algorithms.
Routing and Routing Protocols: Routing Static
COMP 3270 Computer Networks
Chapter 4: Routing Concepts
CCNA 2 v3.1 Module 6 Routing and Routing Protocols
Intra-Domain Routing Jacob Strauss September 14, 2006.
Routing.
Chapter 5: Dynamic Routing
Chapter 3: Dynamic Routing
Routing and Routing Protocols: Routing Static
ECE 544 Protocol Design Project 2016
Dynamic Routing and OSPF
Working at a Small-to-Medium Business or ISP – Chapter 6
COMPUTER NETWORKS CS610 Lecture-16 Hammad Khalid Khan.
Routing.
Presentation transcript:

A Routing Underlay for Overlay Networks Akihiro Nakao Larry Peterson Andy Bavier SIGCOMM’03 Reviewer: Jing lu

Motivation Increasing growth of overlay services:

Motivation Common characteristic:  Application-specific routing strategy Approach:  Ping and traceroute to learn underlying Internet topology Increasing growth of overlay services:  Content distribution network  Multicast overlay

Motivation Scalability Issues:  In the number of participating nodes RON (Resilient Overlay Networks) doesn’t scale beyond 50 nodes.  Multiple overlays run on a single node/subnet. PlanetLab is an overlay-hosting platform. Observation:  Network itself has multiple viewpoints, and already has a fairly complete picture of the network. Single overlay network re- discovers this information for just itself is redundant and architecturally silly.  Routing underlay can provide a shared set of topology discovery services for overlays, making overlay resource discovery more scalable.

Architecture Some representative overlays:  RON routing overlay  End-system Multicast (ESM) overlay  Peer-to-peer systems

Architecture RON routing overlay (MIT)  Discover good-quality paths through overlay nodes, and quickly turn to an alternate path when congestion or failure happens to the current path.  A clique of N overlay nodes; Probe N 2 edges to get latency; Run link-state routing algorithm to find the lowest cost routes; Not scale for N > 50.  Routing underlay can provide: Sparsely connected routing mesh of overlay nodes to decrease number of probes; Or, some disjoint paths, and let RON probe just these paths to select the best one. Should one path fails, RON can switch to another.

Architecture ESM overlay:  End systems in a multicast group self-organize into an overlay structure using distributed protocol. Adapt to network dynamics and consider application level performance to achieve high efficiency.  Organize end hosts into a mesh; run MST algorithm to produce a multicast tree.  Routing underlay can provide: Nearest neighbors Or, ready-built routing mesh based on knowledge of the underlying network topology.

Architecture P2P systems like file sharing networks  Routing underlay can provide: Nearest neighbors to peer with Or, far-away neighbors for data replication in case of local disasters.

Architecture Useful underlay services:  Find nearest neighbors to a node  Find disjoint paths between two nodes  Build a routing mesh Three primitives underlay should support:  Provide a graph of the network connectivity at a specified resolution (ASes, Routers, physical links) and scope (the Internet, some AS, everything within a radius of N hops);  Expose actual route a packet traverses at a specified resolution;  Report topological facts about specific paths between a pair of points according to a specified metric (AS hops, router hops, latency).

Architecture Features:  Underlay probes the entire network to provide relative static information about the network in low frequency.  Overlay probes dynamically changing network conditions in a reduced scope with higher frequency.

Architecture Will routing underlay be accepted?  Infrastructure-based overlays like PlanetLab: “Enforcement” by implementing the probing layer in the OS kernel.  Pure end-system overlays: Underlay service is convenient for application writers. Probing traffic becomes a widely-recognized problem. “Encouragement” from ISPs and network administrators by blocking ping and traceroute traffic

Topology Probing kernel Assumptions:  Primitives are support on every overlay node, which has access to the BGP routing table at a nearby BGP router. Three primitives:  Peering Graph  Path Probe  Distance Probe

Topology Probing kernel Peering Graph: PG = GetGraph()  Coarse-grain (AS-level) connectivity of the Internet, where each vertex in PG corresponds to an AS, and each edge represents a peering relationship between ASes. All overlay nodes send their BGP tables to a centralized aggregation point. Each overlay node constructs its own PG independently by exchanging PG with neighbors.  PG can be constructed using a fixed number of probes; Peering information changes infrequently, so exchange can be done in low frequency.

Topology Probing kernel

Path Probe: Path = GetPath(src, dst)  Verified AS path traversed by packets sent from IP address src to IP address dst. Use BGP table to get the actual AS path. Distance Probe: Distance = GetDistance(target, metric)  Distance from the local node to remote target node.  Distance metrics: Number of AS hops Number of router hops RTT

Library of Routing Services Find Disjoint Paths: PathSet = DisjointPaths(u, v, N, k)  u, v are a pair of overlay nodes; N is a set of candidate intermediate nodes; k disjoint paths.  Implementation: Use peering graph returned by GetGraph to guess the shortest disjoint paths (u, w, v), w  N; Sort the list by AS count. Use GetPath to verify and drop paths that are not edge- disjoint from the default AS path. Select k paths based on AS hop count.

Library of Routing Services Find Nearest Neighbors: Nodes = NearestNodes(N, k)  N is a set of candidate neighbor nodes; k closest to the local node.  Implementation: Use GetPath to sort the list of N neighbors by AS count; Use GetDistance on the top j (j > k) nodes in the list to choose k nodes with lowest latency.

Library of Routing Services

Building a Representative Mesh: Mesh = BuildMesh(N)  N is a set of overlay nodes;  Implementation: Each overlay node performs analysis (pruning edges) independently using GetPath primitive. Entire mesh can be formed by aggregating all the neighbor sets. Algorithm 1: Prune edge (u, v) if AS path from u to v includes AS W, where w  N is located. Algorithm 2: Prune edge (u, v) if w is directly connected to the AS path from u to v. In both cases, a node need s to keep track of virtualized edges and verify virtualization information with neighbors before pruning.

Library of Routing Services

Conclusion Overlay networks independently probing the Internet to make application-specific routing decisions is unacceptable in the long run. A shared routing underlay is practical.  Take cost into account  Multiple-layered Lower layers provide coarse-grain static information at large scale. Upper layers probe more frequently for dynamic information at increasingly reduced scale.