Acknowledgements Ruediger Geib Nicolai Leymann Jun-Hong Cui.

Slides:



Advertisements
Similar presentations
Cs/ee 143 Communication Networks Chapter 6 Internetworking Text: Walrand & Parekh, 2010 Steven Low CMS, EE, Caltech.
Advertisements

Packet Switching COM1337/3501 Textbook: Computer Networks: A Systems Approach, L. Peterson, B. Davie, Morgan Kaufmann Chapter 3.
Network Layer Routing Issues (I). Infrastructure vs. multi-hop Infrastructure networks: Infrastructure networks: ◦ One or several Access-Points (AP) connected.
Ranveer Chandra , Kenneth P. Birman Department of Computer Science
Small-world Overlay P2P Network
Scribe: A Large-Scale and Decentralized Application-Level Multicast Infrastructure Miguel Castro, Peter Druschel, Anne-Marie Kermarrec, and Antony L. T.
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,
Internet Networking Spring 2006 Tutorial 12 Web Caching Protocols ICP, CARP.
Scalable Application Layer Multicast Suman Banerjee Bobby Bhattacharjee Christopher Kommareddy ACM SIGCOMM Computer Communication Review, Proceedings of.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 22 Introduction to Computer Networks.
June, 2002INFOCOM 1 Host Multicast: A Framework for Delivering Multicast to End Users Beichuan Zhang (UCLA) Sugih Jamin (UMich) Lixia Zhang (UCLA)
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #13 Web Caching Protocols ICP, CARP.
Application Layer Multicast
CS218 – Final Project A “Small-Scale” Application- Level Multicast Tree Protocol Jason Lee, Lih Chen & Prabash Nanayakkara Tutor: Li Lao.
Anonymous Gossip: Improving Multicast Reliability in Mobile Ad-Hoc Networks Ranveer Chandra (joint work with Venugopalan Ramasubramanian and Ken Birman)
1 Internet Networking Spring 2006 Tutorial 3 Ad-hoc networks TBRPF (based on IETF tutorials on TBRPF)
P2P Course, Structured systems 1 Introduction (26/10/05)
A Case for End System Multicast Author: Yang-hua Chu, Sanjay G. Rao, Srinivasan Seshan and Hui Zhang.
Communication (II) Chapter 4
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Multicast routing.
Multicast Routing Protocols NETE0514 Presented by Dr.Apichan Kanjanavapastit.
CS An Overlay Routing Scheme For Moving Large Files Su Zhang Kai Xu.
AD HOC WIRELESS MUTICAST ROUTING. Multicasting in wired networks In wired networks changes in network topology is rare In wired networks changes in network.
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.
Higashino Lab. Maximizing User Gain in Multi-flow Multicast Streaming on Overlay Networks Y.Nakamura, H.Yamaguchi and T.Higashino Graduate School of Information.
Multicast Routing Algorithms n Multicast routing n Flooding and Spanning Tree n Forward Shortest Path algorithm n Reversed Path Forwarding (RPF) algorithms.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing Part 5 Multicasting protocol.
Content Addressable Network CAN. The CAN is essentially a distributed Internet-scale hash table that maps file names to their location in the network.
Multicast Routing Protocols. The Need for Multicast Routing n Routing based on member information –Whenever a multicast router receives a multicast packet.
Distributed Authentication in Wireless Mesh Networks Through Kerberos Tickets draft-moustafa-krb-wg-mesh-nw-00.txt Hassnaa Moustafa
Overcast: Reliable Multicasting with an Overlay Network Paper authors: Jannotti, Gifford, Johnson, Kaashoek, O’Toole Jr. Slides by Chris Johnstone.
Load-Balancing Routing in Multichannel Hybrid Wireless Networks With Single Network Interface So, J.; Vaidya, N. H.; Vehicular Technology, IEEE Transactions.
DDR-based Multicast routing Protocol with Dynamic Core (DMPDC) Shiyi WU, Navid Nikaein, Christian BONNET Mobile Communications Department EURECOM Institute,
1 ACTIVE FAULT TOLERANT SYSTEM for OPEN DISTRIBUTED COMPUTING (Autonomic and Trusted Computing 2006) Giray Kömürcü.
2007/03/26OPLAB, NTUIM1 A Proactive Tree Recovery Mechanism for Resilient Overlay Network Networking, IEEE/ACM Transactions on Volume 15, Issue 1, Feb.
1 draft-lei-samrg-dmmp-00.txt Telematics group University of Göttingen, Germany Dynamic Mesh-based overlay Multicast Protocol (DMMP) Jun Lei Xiaoming Fu.
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT By Jyothsna Natarajan Instructor: Prof. Yanqing Zhang Course: Advanced Operating Systems.
1 Chapter 4: Internetworking (IP Routing) Dr. Rocky K. C. Chang 16 March 2004.
1 FairOM: Enforcing Proportional Contributions among Peers in Internet-Scale Distributed Systems Yijun Lu †, Hong Jiang †, and Dan Feng * † University.
Reliable multicast Tolerates process crashes. The additional requirements are: Only correct processes will receive multicasts from all correct processes.
Kapitel 19: Routing. Kapitel 21: Routing Protocols
Delay-Tolerant Networks (DTNs)
Data Center Network Architectures
Multicast Outline Multicast Introduction and Motivation DVRMP.
MZR: A Multicast Protocol based on Zone Routing
Packet Switching Datagram Approach Virtual Circuit Approach
Peer-to-Peer Data Management
RSVP: A New Resource ReSerVation Protocol
IP Multicast Fast Reroute follow-up on draft-dimitri-rtgwg-mfrr-framework-00 RTG Working Group IETF 75 meeting Stockholm (Sweden) July 2009.
Internet Networking recitation #12
Lei Chen and Wendi B. Heinzelman , University of Rochester
Routing.
Host Multicast: A Framework for Delivering Multicast to End Users
Wireless Ad Hoc Multicast and ODMRP CS 218 Fall 2017
Overlay Networking Overview.
The Network Layer Network Layer Design Issues:
Active replication for fault tolerance
Dynamic Replica Placement for Scalable Content Delivery
EE 122: Lecture 22 (Overlay Networks)
A Routing Protocol for WLAN Mesh
EE 122: Lecture 13 (IP Multicast Routing)
Routing.
Implementing Multicast
Optional Read Slides: Network Multicast
Design and Implementation of OverLay Multicast Tree Protocol
Jeonghun Noh Sachin Deshpande* Information Systems Laboratory
Presentation transcript:

Acknowledgements Ruediger Geib Nicolai Leymann Jun-Hong Cui

Overview Motivations Features of DMMP DMMP architecture overview DMMP messages Protocol details Security considerations Open issues

Motivation To support real-time media streaming applications, optimizing both the available bandwidth and the delay for group members To support large-scale groups without relying on any predetermined intermediate nodes, namely the overlay multicast is solely constructed by end hosts

Features of DMMP Support end hosts with heterogeneity A small number of high-capacity end hosts are selected to construct the overlay mesh Dynamic mesh-based approach Construction during the multicast initialization phase The mesh structure subject to change when group member changes Efficient data distribution tree Distribution of responsibilities to mesh members Adaptive and resilient to dynamic network changes No single-node failure would lead to a catastrophe in any part of the overlay multicast tree

DMMP architecture overview (1/2) Source Rendezvous Point Communication Channel Super Node Cluster End host Figure 1 An example of DMMP overlay hierarchy

DMMP architecture overview (1/2) Control plane Overlay mesh Core-based clusters Functionality: in charge of controlling the overlay hierarchy and completing the multicast tree configuration Data plane Built on the top of the structured overlay hierarchy Overlay mesh: Reverse Shortest Path First Core-based clusters: parents -> children

Control plane (1/2) Optimal metrics Available bandwidth Other possible criteria, e.g. end-to-end latency Super nodes keep the full knowledge among themselves Non-super nodes keep the knowledge of a small part of the group within each cluster Super nodes willing to contribute more to the network are likely to get better performances

Control plane (2/2) Overlay mesh construction phrase Rendezvous Point (RP) distributes all end hosts into two categories: leaf nodes & non-leaf nodes Non-leaf nodes are placed in the order of their out-degree The source selected some super nodes with higher capacity Those selected super nodes self-organize into an overlay mesh Cluster construction phrase Having received a list of super node candidates from the RP, each non-super node caches their capacities Each end host chooses one super node who provides better service in terms of e2e latency Non super nodes sharing the same super node will form a cluster Within each cluster, higher capacity nodes are firstly selected to attach to the multicast tree

Data plane (1/2) In accordance with the control plane Overlay mesh: the reverse shortest path first super node B receives the packet from the source through its neighbor A only if A is the next hop on the shortest path from B to the source Having received the data, super nodes replicate and forward data to its children in the local cluster Core-based clusters: from higher level to lower level Data are firstly forwarded from the super node to its immediate children Receivers will replicate the data and forward them to its children at the lower level

Data plane (2/2) /-------------------------------\ / 1.1.1 1.1.1.1 | / 1.1 / End host- End host | / End host 1.1.2 | / / \ End host | / / 1.2.1 | / / / End host 1.2.2.1 | / / / End host | / / 1.2 / 1.2.2 / | Super node--- End host -- End host | \ \ \ \ End host | \ \ \ 1.2.3 1.2.2.2 | \ \ \ End host | \ \ | \ \ 1.3 1.3.1 | \ End host - End host | \ | \--------------------------------/ Cluster Figure 2 An example of local Cluster As shown in the figure, data are firstly replicated into three copies, respectively delivered from the super node to its direct children 1.1, 1.2 and 1.3 using unicast. Similarly, 1.1 replicates copies of the data according to the number of their children (e.g. two copies), sending separately to 1.1.1 and 1.1.2. In the next iteration, the receiver will similarly make copies and deliver to its children (i.e. 1.1.1.1).

DMMP messages Legend: SN - Super Node Cluster Mem. - Cluster Member +-----------------+------------+------------+------------+ | Messages | Operation | From | To | | Subscription Rq | Initializ- |Group Member| DNS server | +-----------------+ ation +------------+------------+ | Subscription Res| | DNS server |Group Member| | Ping_RP Request | Bootstrap |Group Member| RP | +-----------------+ +------------+------------+ | Ping_RP Response| | RP |Group Member| +-----------------+------------+------------+------------+ | Source Request | Member |new End Host| RP | | Source Response | Join | RP |new End Host| | Cluster Request | Construct |Cluster Mem.| Super Node | | Cluster Response| Clusters | Super Node |Cluster Mem.| | Join Request | Member | End Host |Cluster Mem.| | Join Response | Join |Cluster Mem.| End Host | +-----------------+------------+------------+-------------+ | Messages | Operation | From | To | +-----------------+------------+------------+-------------+ | Setup Request | Mesh | Super Node | Super Node | +-----------------+ +------------+-------------+ | Setup Response | Management | Super Node | Super Node | | Status Report | Cluster |Group Member| Group Member| +-----------------+ Member +------------+-------------+ | Status Response | Monitoring |Group Member| Group Member| | Probe Request | Probe |Group Member| Group Member| | Probe Response | Members |Group Member| Group Member| | Leave Report | Member |Leaving Node| Group Member| | Leave Response | Leave |Group Member| Leaving Node| |Refresh Request | Update |Group Member| Group Member| |Refresh Response |Information |Group Member| Group Member| Legend: SN - Super Node Cluster Mem. - Cluster Member

DMMP details Initialization Super node selection Member Join Data delivery control Refresh information Capacity specification Member leave Failure recovery

Initialization/assumptions Assume DMMP is supported in selected nodes: source, RP, end hosts; and Use of out-of-band channel between the RP and the source Group members using out-of-band bootstrapping mechanism get necessary information

Super node selection Requirements Capacity considerations Availability: higher power and reliability Number: no more than one hundred Downstream: to satisfy the bandwidth requirement Additional conditions Heterogeneity Resilience Security Capacity considerations Out-degree: to speed up the convergence of the overlay tree and to satisfy the bandwidth requirements Uptime: to strengthen the stability of the overlay hierarchy by switching long-term node into the high levels of the tree

Member join Newcomer Search SNs in its local cache Request RP for the source and SNs no Measure e2e latency yes Sending Join Request Super node Check its current out-degree Redirect Join request Response to the newcomer Figure 3 Join procedure in DMMP Note: Suppose that the newcomer fails to find an appropriate position in any cluster to satisfy application requirements/local policies, it can sell itself as a potential super node and report its own capacities to the RP.

Data delivery control After joining the multicast tree, the newcomer Asks its immediate parent to send the data If the parent still holds the data, the newcomer can get data from it If the parent has not received the data yet It waits until the parent forwards the data after receiving (prefer) It directly requires the super node to transfer the data On receiving the data, the newcomer forwards to its parent if its parent still has not received the data to its siblings on the condition its PLNs haven’t received the data Joining as a super node, the newcomer could ask it neighbor in the overlay mesh to transfer the data receive data from existing children directly require the source to send the data

Refresh information Periodically sending refresh message to maintain the overlay hierarchy Refresh mechanism: active & passive models Overlay mesh Each super node sends update messages to all mesh members including the source Once stopping receiving refresh message exceeds a certain time, a probe message will be initiated Clusters Each end host exchanges refresh message with its relatives (PLNs , siblings and CLNs) End host is able to request refresh message from their relatives

Capacity specification +-------------+-------------------------------------+ | Metric | Operation | | | Differentiation non-leaf nodes from | | | leaf nodes | | Out-degree +-------------------------------------+ | | Super nodes selection | | +-------------------------------------+ | | Tree construction within clusters | | | New member joins the group | | | Failure recovery mechanism | | | Self-improving mechanism | | | Non-super nodes attach to super | | E2E latency | nodes to form clusters | | Uptime +-------------------------------------+ Out-degree is the main criterion Out-degree, e2e delay and uptime are all taken into considerations when regarding the member joining procedure The combination of out-degree and uptime is chosen as a comparison metric to self-improve the overlay multicast tree

Member leave (1/2) Two situations: gracefully or ungracefully Clusters Graceful leaving Leaving member needs to send a Leave Request to its parent or one of its children Notified member will propagate the Leave message to its relatives Ungraceful leaving Detected by periodically exchanging refresh messages May cause the crash of the whole multicast tree, which is handled by the failure detection and recovery mechanism

Member leave (2/2) Mesh Graceful leaving Ungraceful leaving /-------------------------------\ / 1.1.1 1.1.1.1 | / 1.1 / End host- End host | / End host 1.1.2 | / / \ End host | / / 1.2.1 | / / / End host 1.2.2.1 | / / / End host | / / 1.2 / 1.2.2 / | Super node--- End host -- End host | \ \ \ \ End host | \ \ \ 1.2.3 1.2.2.2 | \ \ \ End host | \ \ | \ \ 1.3 1.3.1 | \ End host - End host | \ | \--------------------------------/ Cluster Mesh Graceful leaving The leaving super node must elect a replacement leader and inform the other super nodes Ungraceful leaving Depending on refresh message, DMMP detects unannounced leavings Source selects one of the victim’s children with largest out- degree as the new super node Correspondence information will be updated to the RP The neighbors in the same cluster adjust their positions /-------------------------------\ / 1.1.1 1.1.1.1 | / 1.1 / End host- End host | / End host 1.1.2 | / / \ End host | / / | / / 1.2.1 1.2.2.1 | / / End host- End host | 1.2 / / 1.2.2 / | Super node--- End host | \ \ \ 1.2.3 1.2.2.2 | \ \ End host - End host | \ \ | \ \ | \ \ 1.3 1.3.1 | \ End host - End host | \ | \--------------------------------/ Cluster

Failure recovery Failure detection Failure recovery mechanisms By noticing missing periodical Refresh/Update message Failure recovery mechanisms Proactive approach: used in overlay mesh Backup parent for the immediate children of each super node After super node leaving the group, each child tries to contact with alternative parent Active approach: in each local cluster Each end host periodically estimates their relatives Possible solution: Randomized Forwarding with Triggered NAKs

Security considerations Super node selection Authority center (AC) to qualify the trust level of end hosts end host can be selected as a super node only if it obtains a security certificate from the AC Within clusters Cluster key Group key Private key

Open issues Large scale efficiency Security NAT and firewall traversal E2e QoS provision?

Questions and comments appreciated! For further information, please contact: {lei,fu}@cs.uni-goettingen.de