Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "OVERVIEW Lecture 6 Overlay Networks. 2 Focus at the application level."— Presentation transcript:

1 OVERVIEW Lecture 6 Overlay Networks

2 2 Focus at the application level

3 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

4 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

5 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

6 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

7 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

8 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 www.cnn.com

9 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

10 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

11 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

12 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

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

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

15 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

16 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

17 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

18 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

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

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

21 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

22 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

23 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

24 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 24 01 Hash(name)  object_id Hash(IP_address)  node_id Id space represented as a ring 2 128 -1

25 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

26 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

27 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

28 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

29 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

30 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


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

Similar presentations


Ads by Google