OVERVIEW Lecture 6 Overlay Networks. 2 Focus at the application level.

Slides:



Advertisements
Similar presentations
Peer to Peer and Distributed Hash Tables
Advertisements

Pastry Peter Druschel, Rice University Antony Rowstron, Microsoft Research UK Some slides are borrowed from the original presentation by the authors.
Internetworking II: MPLS, Security, and Traffic Engineering
CPSC Network Layer4-1 IP addresses: how to get one? Q: How does a host get IP address? r hard-coded by system admin in a file m Windows: control-panel->network->configuration-
Professor Yashar Ganjali Department of Computer Science University of Toronto
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
CS 457 – Lecture 16 Global Internet - BGP Spring 2012.
Network Layer IPv6 Slides were original prepared by Dr. Tatsuya Suda.
Flat Identifiers Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
Distributed Hash Tables CPE 401 / 601 Computer Network Systems Modified from Ashwin Bharambe and Robert Morris.
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts Amherst Operating Systems CMPSCI 377 Lecture.
Lecture 6 Overlay Networks CPE 401/601 Computer Network Systems slides are modified from Jennifer Rexford.
Common approach 1. Define space: assign random ID (160-bit) to each node and key 2. Define a metric topology in this space,  that is, the space of keys.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
IP: The Internet Protocol
15-441: Computer Networking Lecture 26: Networking Future.
Topics in Reliable Distributed Systems Lecture 2, Fall Dr. Idit Keidar.
1 Overlay Networks Reading: 9.4 COS 461: Computer Networks Spring 2008 (MW 1:30-2:50 in COS 105) Jennifer Rexford Teaching Assistants: Sunghwan Ihm and.
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 14.
1 Overlay Networks Reading: 9.4 COS 461: Computer Networks Spring 2007 (MW 1:30-2:50 in Friend 004) Jennifer Rexford Teaching Assistant: Ioannis Avramopoulos.
New Routing Architectures Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
CS 268: Project Suggestions Ion Stoica February 6, 2003.
Anycast Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
EE689 Lecture 12 Review of last lecture Multicast basics.
Topics in Reliable Distributed Systems Fall Dr. Idit Keidar.
CS 268: Overlay Networks: Distributed Hash Tables Kevin Lai May 1, 2001.
Wide-area cooperative storage with CFS
Overlay Networks and Tunneling Reading: 4.5, 9.4 COS 461: Computer Networks Spring 2009 (MW 1:30-2:50 in COS 105) Mike Freedman Teaching Assistants: Wyatt.
Multipath Routing Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
The Future of the Internet Jennifer Rexford ’91 Computer Science Department Princeton University
Building a Strong Foundation for a Future Internet Jennifer Rexford ’91 Computer Science Department (and Electrical Engineering and the Center for IT Policy)
CSE679: Multicast and Multimedia r Basics r Addressing r Routing r Hierarchical multicast r QoS multicast.
Jennifer Rexford Fall 2010 (TTh 1:30-2:50 in COS 302) COS 561: Advanced Computer Networks Stub.
1 Chapter 27 Internetwork Routing (Static and automatic routing; route propagation; BGP, RIP, OSPF; multicast routing)
Network Layer (3). Node lookup in p2p networks Section in the textbook. In a p2p network, each node may provide some kind of service for other.
CS An Overlay Routing Scheme For Moving Large Files Su Zhang Kai Xu.
Chord & CFS Presenter: Gang ZhouNov. 11th, University of Virginia.
Overlay network concept Case study: Distributed Hash table (DHT) Case study: Distributed Hash table (DHT)
Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications Xiaozhou Li COS 461: Computer Networks (precept 04/06/12) Princeton University.
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks BGP.
A Routing Underlay for Overlay Networks Akihiro Nakao Larry Peterson Andy Bavier SIGCOMM’03 Reviewer: Jing lu.
Resilient Overlay Networks By David Andersen, Hari Balakrishnan, Frans Kaashoek, and Robert Morris MIT RON Paper from ACM Oct Advanced Operating.
The Network Layer Introduction  functionality and service models Theory  link state and distance vector algorithms  broadcast algorithms  hierarchical.
CSC 600 Internetworking with TCP/IP Unit 7: IPv6 (ch. 33) Dr. Cheer-Sun Yang Spring 2001.
SIGCOMM 2001 Lecture slides by Dr. Yingwu Zhu Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications.
Distributed Hash Tables CPE 401 / 601 Computer Network Systems Modified from Ashwin Bharambe and Robert Morris.
IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet Switching.
Intradomain Traffic Engineering By Behzad Akbari These slides are based in part upon slides of J. Rexford (Princeton university)
Lecture 12 Distributed Hash Tables CPE 401/601 Computer Network Systems slides are modified from Jennifer Rexford.
1. Outline  Introduction  Different Mechanisms Broadcasting Multicasting Forward Pointers Home-based approach Distributed Hash Tables Hierarchical approaches.
Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 2: Distributed Hash.
Data Communications and Computer Networks Chapter 4 CS 3830 Lecture 20 Omar Meqdadi Department of Computer Science and Software Engineering University.
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
CSE 486/586, Spring 2014 CSE 486/586 Distributed Systems Distributed Hash Tables Steve Ko Computer Sciences and Engineering University at Buffalo.
1 Overlay Networks. 2 Routing overlays –Experimental versions of IP (e.g., 6Bone) –Multicast (e.g., MBone and end-system multicast) –Robust routing (e.g.,
CSE 486/586 Distributed Systems Distributed Hash Tables
Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications * CS587x Lecture Department of Computer Science Iowa State University *I. Stoica,
SUBJECT NAME: COMPUTER NETWORKS –II SUBJECT CODE: 10CS63.
CSE 486/586 Distributed Systems Distributed Hash Tables
Distributed Hash Tables
CS 457 – Lecture 12 Routing Spring 2012.
CPE 401/601 Computer Network Systems
DHT Routing Geometries and Chord
5.2 FLAT NAMING.
COS 561: Advanced Computer Networks
Lecture 6 Overlay Networks
Lecture 6 Overlay Networks
EE 122: Lecture 22 (Overlay Networks)
CSE 486/586 Distributed Systems Distributed Hash Tables
Presentation transcript:

OVERVIEW Lecture 6 Overlay Networks

2 Focus at the application level

IP Tunneling to Build Overlay Links r IP tunnel is a virtual point-to-point link m Illusion of a direct link between two separated nodes r Encapsulation of the packet inside an IP datagram m Node B sends a packet to node E m … containing another packet as the payload 3 A B E F tunnel Logical view: Physical view: A B E F

Tunnels Between End Hosts 4 A C B Src: A Dest: B Src: A Dest: B Src: A Dest: C Src: A Dest: B Src: C Dest: B

Using Overlays to Evolve the Internet r Internet needs to evolve m IPv6 m Security m Mobility m Multicast r But, global change is hard m Coordination with many ASes m “Flag day” to deploy and enable the technology r Instead, better to incrementally deploy m And find ways to bridge deployment gaps 5

6Bone: Deploying IPv6 over IP4 6 A B E F IPv6 tunnel Logical view: Physical view: A B E F IPv6 C D IPv4 Flow: X Src: A Dest: F data Flow: X Src: A Dest: F data Flow: X Src: A Dest: F data Src:B Dest: E Flow: X Src: A Dest: F data Src:B Dest: E A-to-B: IPv6 E-to-F: IPv6 B-to-C: IPv6 inside IPv4 B-to-C: IPv6 inside IPv4

Secure Communication Over Insecure Links r Encrypt packets at entry and decrypt at exit r Eavesdropper cannot snoop the data r … or determine the real source and destination 7

Communicating With Mobile Users r A mobile user changes locations frequently m So, the IP address of the machine changes often r The user wants applications to continue running m So, the change in IP address needs to be hidden r Solution: fixed gateway forwards packets m Gateway has a fixed IP address m … and keeps track of the mobile’s address changes 8 gateway

IP Multicast r Multicast m Delivering the same data to many receivers m Avoiding sending the same data many times r IP multicast m Special addressing, forwarding, and routing schemes m Pretty complicated stuff (see Section 4.4) 9 unicastmulticast

Multicast Today r Mbone applications starting in early 1990s m Primarily video conferencing, but no longer operational r Still many challenges to deploying IP multicast m Security vulnerabilities, business models, … r Application-layer multicast is more prevalent m Tree of servers delivering the content m Collection of end hosts cooperating to delivery video r Some multicast within individual ASes m Financial sector: stock tickers m Within campuses or broadband networks: TV shows m Backbone networks: IPTV 10

RON: Resilient Overlay Networks 11 Premise: by building application overlay network, can increase performance and reliability of routing Two-hop (application-level) Berkeley-to-Princeton route application-layer router Princeton Yale Berkeley UNR

RON Circumvents Policy Restrictions r IP routing depends on AS routing policies m But hosts may pick paths that circumvent policies 12 USLEC PU Patriot ISP me My home computer

RON Adapts to Network Conditions r Start experiencing bad performance m Then, start forwarding through intermediate host 13 A C B

RON Customizes to Applications r VoIP traffic: low-latency path r Bulk transfer: high-bandwidth path 14 A C B voice bulk transfer

How Does RON Work? r Keeping it small to avoid scaling problems m A few friends who want better service m Just for their communication with each other m E.g., VoIP, gaming, collaborative work, etc. r Send probes between each pair of hosts 15 A C B

How Does RON Work? r Exchange the results of the probes m Each host shares results with every other host m Essentially running a link-state protocol! m So, every host knows the performance properties r Forward through intermediate host when needed 16 A C B B

RON Works in Practice r Faster reaction to failure m RON reacts in a few seconds m BGP sometimes takes a few minutes r Single-hop indirect routing m No need to go through many intermediate hosts m One extra hop circumvents the problems r Better end-to-end paths m Circumventing routing policy restrictions m Sometimes the RON paths are actually shorter 17

RON Limited to Small Deployments r Extra latency through intermediate hops m Software delays for packet forwarding m Propagation delay across the access link r Overhead on the intermediate node m Imposing CPU and I/O load on the host m Consuming bandwidth on the access link r Overhead for probing the virtual links m Bandwidth consumed by frequent probes m Trade-off between probe overhead and detection speed r Possibility of causing instability m Moving traffic in response to poor performance m May lead to congestion on the new paths 18

Lecture 8 Distributed Hash Tables CPE 401/601 Computer Network Systems slides are modified from Jennifer Rexford

Hash Table r Name-value pairs (or key-value pairs) m E.g,. “Mehmet Hadi Gunes” and m E.g., “ and the Web page m E.g., “HitSong.mp3” and “ ” r Hash table m Data structure that associates keys with values 20 lookup(key) valuekey value

Distributed Hash Table r Hash table spread over many nodes m Distributed over a wide area r Main design goals m Decentralization no central coordinator m Scalability efficient even with large # of nodes m Fault tolerance tolerate nodes joining/leaving 21

Distributed Hash Table r Two key design decisions m How do we map names on to nodes? m How do we route a request to that node? 22

Hash Functions r Hashing m Transform the key into a number m And use the number to index an array r Example hash function m Hash(x) = x mod 101, mapping to 0, 1, …, 100 r Challenges m What if there are more than 101 nodes? Fewer? m Which nodes correspond to each hash value? m What if nodes come and go over time? 23

Consistent Hashing r Large, sparse identifier space (e.g., 128 bits) m Hash a set of keys x uniformly to large id space m Hash nodes to the id space as well Hash(name)  object_id Hash(IP_address)  node_id Id space represented as a ring

Where to Store (Key, Value) Pair? r Mapping keys in a load-balanced way m Store the key at one or more nodes m Nodes with identifiers “close” to the key where distance is measured in the id space r Advantages m Even distribution m Few changes as nodes come and go… 25 Hash(name)  object_id Hash(IP_address)  node_id

Joins and Leaves of Nodes r Maintain a circularly linked list around the ring m Every node has a predecessor and successor 26 node pred succ

Joins and Leaves of Nodes r When an existing node leaves m Node copies its pairs to its predecessor m Predecessor points to node’s successor in the ring r When a node joins m Node does a lookup on its own id m And learns the node responsible for that id m This node becomes the new node’s successor m And the node can learn that node’s predecessor which will become the new node’s predecessor 27

Nodes Coming and Going r Small changes when nodes come and go m Only affects mapping of keys mapped to the node that comes or goes 28 Hash(name)  object_id Hash(IP_address)  node_id

How to Find the Nearest Node? r Need to find the closest node m To determine who should store (key, value) pair m To direct a future lookup(key) query to the node r Strawman solution: walk through linked list m Circular linked list of nodes in the ring m O(n) lookup time when n nodes in the ring r Alternative solution: m Jump further around ring m “Finger” table of additional overlay links 29

Links in the Overlay Topology r Trade-off between # of hops vs. # of neighbors m E.g., log(n) for both, where n is the number of nodes m E.g., such as overlay links 1/2, 1/4 1/8, … around the ring m Each hop traverses at least half of the remaining distance 30 1/2 1/4 1/8