Application-Level Multicast Routing Michael Siegenthaler CS 614 – Cornell University November 2, 2006 A few slides are borrowed from Swati Agarwal, CS.

Slides:



Advertisements
Similar presentations
Dynamic Replica Placement for Scalable Content Delivery Yan Chen, Randy H. Katz, John D. Kubiatowicz {yanchen, randy, EECS Department.
Advertisements

Impact Analysis of Cheating in Application Level Multicast s 1090176 Masayuki Higuchi.
SplitStream by Mikkel Hesselager Blanné Erik K. Aarslew-Jensen.
SplitStream: High- Bandwidth Multicast in Cooperative Environments Monica Tudora.
Multicast Fundamentals n The communication ways of the hosts n IP multicast n Application level multicast.
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.
SCAN: A Dynamic, Scalable, and Efficient Content Distribution Network Yan Chen, Randy H. Katz, John D. Kubiatowicz {yanchen, randy,
Scribe: A Large-Scale and Decentralized Application-Level Multicast Infrastructure Miguel Castro, Peter Druschel, Anne-Marie Kermarrec, and Antony L. T.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
ZIGZAG A Peer-to-Peer Architecture for Media Streaming By Duc A. Tran, Kien A. Hua and Tai T. Do Appear on “Journal On Selected Areas in Communications,
Computer Science ROMA: Reliable Overlay Multicast with Loosely Coupled TCP Connections Gu-In Kwon and John Byers Computer Science Dept. Boston University.
Opportunities and Challenges of Peer-to-Peer Internet Video Broadcast J. Liu, S. G. Rao, B. Li and H. Zhang Proc. of The IEEE, 2008 Presented by: Yan Ding.
Network Coding for Large Scale Content Distribution Christos Gkantsidis Georgia Institute of Technology Pablo Rodriguez Microsoft Research IEEE INFOCOM.
Cis e-commerce -- lecture #6: Content Distribution Networks and P2P (based on notes from Dr Peter McBurney © )
Peer-to-Peer Based Multimedia Distribution Service Zhe Xiang, Qian Zhang, Wenwu Zhu, Zhensheng Zhang IEEE Transactions on Multimedia, Vol. 6, No. 2, April.
Application layer multicast routing. What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all –Destination.
Application And Transport Layer Reliable Multicast Leonard T. Armstrong University Of Delaware ELEG 667.
Scalable Adaptive Data Dissemination Under Heterogeneous Environment Yan Chen, John Kubiatowicz and Ben Zhao UC Berkeley.
Application Layer Multicast
Computer Networking Lecture 24 – Multicast.
CS 268: Overlay Networks: Introduction and Multicast Kevin Lai April 29, 2001.
Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie.
1 IP Multicasting. 2 IP Multicasting: Motivation Problem: Want to deliver a packet from a source to multiple receivers Applications: –Streaming of Continuous.
1 An Overlay Scheme for Streaming Media Distribution Using Minimum Spanning Tree Properties Journal of Internet Technology Volume 5(2004) No.4 Reporter.
CS218 – Final Project A “Small-Scale” Application- Level Multicast Tree Protocol Jason Lee, Lih Chen & Prabash Nanayakkara Tutor: Li Lao.
Adaptive Web Caching Lixia Zhang, Sally Floyd, and Van Jacob-son. In the 2nd Web Caching Workshop, Boulder, Colorado, April 25, System Laboratory,
A Case for End System Multicast Author: Yang-hua Chu, Sanjay G. Rao, Srinivasan Seshan and Hui Zhang.
Loopback: Exploiting Collaborative Caches for Large-Scale Streaming Ewa Kusmierek, Yingfei Dong, Member, IEEE, and David H. C. Du, Fellow, IEEE.
Multicast Security CS239 Advanced Network Security April 16 th, 2003 Yuken Goto.
Nearcast: A Locality-Aware P2P Live Streaming Approach for Distance Education XUPING TU, HAI JIN, and XIAOFEI LIAO Huazhong University of Science and Technology.
CSE679: Multicast and Multimedia r Basics r Addressing r Routing r Hierarchical multicast r QoS multicast.
Communication Part IV Multicast Communication* *Referred to slides by Manhyung Han at Kyung Hee University and Hitesh Ballani at Cornell University.
1 Content Distribution Networks. 2 Replication Issues Request distribution: how to transparently distribute requests for content among replication servers.
Communication (II) Chapter 4
Peer-to-Peer Overlay Networks. Outline Overview of P2P overlay networks Applications of overlay networks Classification of overlay networks – Structured.
Overcast: Reliable Multicasting with an Overlay Network CS294 Paul Burstein 9/15/2003.
Application-Layer Multicast -presented by William Wong.
CSC 600 Internetworking with TCP/IP Unit 8: IP Multicasting (Ch. 17) Dr. Cheer-Sun Yang Spring 2001.
CPSC 441: Multimedia Networking1 Outline r Scalable Streaming Techniques r Content Distribution Networks.
2: Application Layer1 Chapter 2 outline r 2.1 Principles of app layer protocols r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail r 2.5 DNS r 2.6 Socket.
A Case for End System Multicast Yang-hua Chu, Sanjay G. Rao, Srinivasan Seshan and Hui Zhang Presentation by Warren Cheung Some Slides from
Higashino Lab. Maximizing User Gain in Multi-flow Multicast Streaming on Overlay Networks Y.Nakamura, H.Yamaguchi and T.Higashino Graduate School of Information.
CS 268: Overlay Networks: Introduction and Multicast Ion Stoica April 15-17, 2003.
Multicast Routing Algorithms n Multicast routing n Flooding and Spanning Tree n Forward Shortest Path algorithm n Reversed Path Forwarding (RPF) algorithms.
TOMA: A Viable Solution for Large- Scale Multicast Service Support Li Lao, Jun-Hong Cui, and Mario Gerla UCLA and University of Connecticut Networking.
Impact of Topology on Overlay Multicast Suat Mercan.
Overcast: Reliable Multicasting with an Overlay Network Paper authors: Jannotti, Gifford, Johnson, Kaashoek, O’Toole Jr. Slides by Chris Johnstone.
Adaptive Web Caching CS411 Dynamic Web-Based Systems Flying Pig Fei Teng/Long Zhao/Pallavi Shinde Computer Science Department.
Load-Balancing Routing in Multichannel Hybrid Wireless Networks With Single Network Interface So, J.; Vaidya, N. H.; Vehicular Technology, IEEE Transactions.
Enabling Conferencing Applications on the Internet using an Overlay Multicast Architecture Yang-hua Chu, Sanjay Rao, Srini Seshan and Hui Zhang Carnegie.
2007/03/26OPLAB, NTUIM1 A Proactive Tree Recovery Mechanism for Resilient Overlay Network Networking, IEEE/ACM Transactions on Volume 15, Issue 1, Feb.
APPLICATION LAYER MULTICASTING
CIS679: Multicast and Multimedia (more) r Review of Last Lecture r More about Multicast.
Push Technology Humie Leung Annabelle Huo. Introduction Push technology is a set of technologies used to send information to a client without the client.
Peer-to-Peer Result Dissemination in High-Volume Data Filtering Shariq Rizvi and Paul Burstein CS 294-4: Peer-to-Peer Systems.
ECE 544 Project3 Group 9 Brien Range Sidhika Varshney Sanhitha Rao Puskuru.
Overlay Networks and Overlay Multicast May Definition  Network -defines addressing, routing, and service model for communication between hosts.
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #09: SOLUTIONS Shivkumar Kalyanaraman: GOOGLE: “Shiv.
A Case for End System Multicast 學號: 報告人:通訊所 吳瑞益 指導教授:楊峻權 日期: ACM SIGMETRICS.
1 A Case For End System Multicast Yang-hua Chu, Sanjay Rao and Hui Zhang Carnegie Mellon University.
Inside the New Coolstreaming: Principles, Measurements and Performance Implications Bo Li, Susu Xie, Yang Qu, Gabriel Y. Keung, Chuang Lin, Jiangchuan.
1 FairOM: Enforcing Proportional Contributions among Peers in Internet-Scale Distributed Systems Yijun Lu †, Hong Jiang †, and Dan Feng * † University.
Distributed Systems Lecture 7 Multicast 1. Previous lecture Global states – Cuts – Collecting state – Algorithms 2.
Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT -Sumanth Kandagatla Instructor: Prof. Yanqing Zhang Advanced Operating Systems (CSC 8320)
Overlay Networking Overview.
Dynamic Replica Placement for Scalable Content Delivery
EE 122: Lecture 22 (Overlay Networks)
EE 122: Lecture 13 (IP Multicast Routing)
Design and Implementation of OverLay Multicast Tree Protocol
Presentation transcript:

Application-Level Multicast Routing Michael Siegenthaler CS 614 – Cornell University November 2, 2006 A few slides are borrowed from Swati Agarwal, CS 614, Fall 2005.

What Is Multicast? Unicast –One-to-one –Destination – unique receiver host address Broadcast –One-to-all –Destination – address of network Multicast –One-to-many –Multicast group must be identified –Destination – address of group Key: Unicast transfer Broadcast transfer Multicast transfer Few slides are based on slides originally developed by (1) L. Armstrong, Univ of Delaware, (2) Rao - bs.de/events/netgames2002/presentations/rao.pdf

Some Applications… Streaming broadcast media –Radio –Television Live events involving multiple parties –Video conferencing –Distance learning Content distribution –Software –Movies All of these involve one-to-many communication

Why Multicast? Traditional mechanisms for one-to-one communication do not scale –Overloading a single source –Network links carry the same traffic separately for each receiver Multicasting solves both problems. In the ideal case: –Source only needs to transmit one or a few copies of the data –Each link only caries one copy of the data

Network-Level (IP) Multicast Berkeley Cornell Davis MIT Routers with multicast support Reserved a portion of the address space Route packets to the group identified by the class D destination IP address “You put packets in at one end, and the network conspires to deliver them to anyone who asks.” – David Clark

Problems with IP Multicast Deployment is difficult –Requires support from routers Scalability –Routers maintain per-group state Difficult to support higher level functionality –Reliability, congestion control Billing issues As a result, barely anybody uses it

Application layer multicast Davis MIT Dav1 Dav2 Berk2 Overlay Tree Cornell Berk1 Berkeley Cornell Dav1 Dav2 Berk1 Berk2 MIT

Benefits Scalability –Routers do not maintain per group state Easy to deploy –No change to network infrastructure –Just another application Simplifies support for higher level functionality –Can utilize existing solutions for unicast congestion control

Application-Level Multicast Two basic architectures are possible –Proxy-based Dedicated server nodes exchange content among themselves End clients download from one of the servers and do not share their data –Peer to peer All participating nodes share the load “End clients” also act as servers and relay data to other nodes

A few concerns… Performance penalty –Redundant traffic on physical links stress = number of times a semantically identical packet traverses a given link –Increase in latency stretch = ratio of latency in an overlay network compared to a baseline such as unicast or IP multicast Constructing efficient overlays –Application needs differ Adapting to changes –Network dynamics –Group membership – members can join and leave –Both of these contribute to churn

Overcast Single source multicast Proxy-based architecture –Assumes nodes are well-provisioned Reliable delivery –Software or video distribution –Buffered streaming media “Live” could mean delayed by seconds or minutes Long term storage at each node Easily deployable, seeks to minimize human intervention Works in the presence of NATs and firewalls

Components Root : central source (may be replicated) Node : internal overcast nodes with permanent storage –Organized into distribution tree Client : final consumers (HTTP clients) R RootNodeClient

Bandwidth Efficient Overlay Trees 10 Mb/s 100 Mb/s R 1 2 R 1 2 R 12 R 12 “…three ways of organizing the root and the nodes into a distribution tree.”

Self-Organizing Algorithm A new server initially joins at the root Iteratively moves farther down the tree –Relocate under a sibling if doing so does not sacrifice bandwidth back to the root –This results in a deep tree with high bandwidth to every node A node periodically reevaluates its position –May relocate under a sibling –May become a sibling of its parent Fault tolerant –If parent fails, relocate under grandparent

Self-Organizing Algorithm R R 1 2 Overcast network tree Round 1 15 R 2 1 Overcast network tree Round 2

Connecting Clients Client contacts the root via an HTTP request –Allows unmodified clients to connect –URLs provide flexible addressing Hostname identifies the root Pathname identifies the multicast group Root redirects the client to a node which is geographically close to the client –Root must be aware of all nodes

Client joins R1R R2R2 R3R3 Key: Content query (multicast join) Query redirect Content delivery

State Tracking – the Up/Down protocol Each node maintains state about all nodes in its subtree –Reports the “births” and “deaths” among its children –Information is aggregated on its way up the tree Each child periodically checks in with its parent –Support NATs/firewalls Birth certificates for 1.2.2, No change observed. Propagation halted.

Is The Root Node A Single Point Of Failure? Root is responsible for handling all join requests from clients –Note: root does not deliver content Root’s Up/Down protocol functionality can not be easily distributed –Root maintains state for all Overcast nodes Solution: configure a set of nodes linearly from root before splitting into multiple branches –Each node in the linear chain has sufficient information to assume root responsibilities –Natural side effect of Up/Down protocol

Evaluation

Lease period = how long a parent will wait to hear from a child before reporting its death

Evaluation

Overcast Conclusion Designed for software, video distribution –Bit-for-bit integrity, not time critical Could fullfill a similar role as content distributions systems such as Akamai Also works for “live” streams, if sufficient buffering delay is used

Enabling Conferencing Applications on the Internet using an Overlay Multicast Architecture Latency and bandwidth are important –Real-time interaction between users Evaluates how to optimize for dual metrics Small-scale (10s of nodes) peer to peer architecture –Single source at any given time Gracefully degradable –Better to give up on lost packets than to retransmit and have them arrive too late to be useful

Self-Improving Algorithm Two-step tree building process (Narada) –Construct a mesh, a rich connected graph –Choose links from the mesh using well-known routing algorithms Routing chooses shortest widest path –Picks highest bandwidth, and opts for lowest latency when there are multiple choices –Exponential smoothing and discrete bandwidth levels are used to deal with instability due to dynamic metrics

Evaluation Schemes for constructing overlays –Sequential Unicast Hypothetical construct for comparisons purposes –Random Baseline to compare against –Latency-Only –Bandwidth-Only –Bandwidth-Latency

Evaluation

Comparison of schemes Primary Set – 1.2 Mbps Primary Set – 2.4 Mbps Extended Set – 2.4 Mbps Primary Set contains well connected nodes –North American university sites Extended Set – more heterogeneous environment –Some ADSL links, hosts in Europe and Asia

Bandwidth – primary set, 1.2 Mbps

Bandwidth – extended set, 2.4 Mbps

RTT – extended set, 2.4 Mbps

Conclusion It is possible to build overlays that optimize for both bandwidth and latency Unclear whether these results scale to larger group sizes

More Recent Work SplitStream –Uses multiple overlapping trees Various DHT-based approaches BitTorrent –Unstructured, random graphs

Discussion Questions Is a structured overlay the right approach, or is something more random better? –How much do we really care about stress or stretch? Both papers mainly use heuristics –Could a more mathematically based approach do better?