CS218 – Final Project A “Small-Scale” Application- Level Multicast Tree Protocol Jason Lee, Lih Chen & Prabash Nanayakkara Tutor: Li Lao.

Slides:



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

Research: Group communication in distributed interactive applications Student: Knut-Helge Vik Institute: University of Oslo, Simula Research Labs.
Cooperative Overlay Networking for Streaming Media Content Feng Wang 1, Jiangchuan Liu 1, Kui Wu 2 1 School of Computing Science, Simon Fraser University.
Network Layer Routing Issues (I). Infrastructure vs. multi-hop Infrastructure networks: Infrastructure networks: ◦ One or several Access-Points (AP) connected.
Topology Generation Suat Mercan. 2 Outline Motivation Topology Characterization Levels of Topology Modeling Techniques Types of Topology Generators.
Unstructured overlays: construction, optimization, applications Anne-Marie Kermarrec Joint work with Laurent Massoulié and Ayalvadi Ganesh.
SCAN: A Dynamic, Scalable, and Efficient Content Distribution Network Yan Chen, Randy H. Katz, John D. Kubiatowicz {yanchen, randy,
Directed Diffusion: A Scalable and Robust Communication Paradigm for Sensor Networks.
Progress Report Wireless Routing By Edward Mulimba.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
Network Coding for Large Scale Content Distribution Christos Gkantsidis Georgia Institute of Technology Pablo Rodriguez Microsoft Research IEEE INFOCOM.
Scalable Application Layer Multicast Suman Banerjee Bobby Bhattacharjee Christopher Kommareddy ACM SIGCOMM Computer Communication Review, Proceedings of.
Prefix Caching assisted Periodic Broadcast for Streaming Popular Videos Yang Guo, Subhabrata Sen, and Don Towsley.
Scalable Adaptive Data Dissemination Under Heterogeneous Environment Yan Chen, John Kubiatowicz and Ben Zhao UC Berkeley.
Application Layer Multicast
1 An Overlay Scheme for Streaming Media Distribution Using Minimum Spanning Tree Properties Journal of Internet Technology Volume 5(2004) No.4 Reporter.
Nearcast: A Locality-Aware P2P Live Streaming Approach for Distance Education XUPING TU, HAI JIN, and XIAOFEI LIAO Huazhong University of Science and Technology.
Multicast Transport Protocols: A Survey and Taxonomy Author: Katia Obraczka University of Southern California Presenter: Venkatesh Prabhakar.
1 Algorithms for Bandwidth Efficient Multicast Routing in Multi-channel Multi-radio Wireless Mesh Networks Hoang Lan Nguyen and Uyen Trang Nguyen Presenter:
University of Nevada, Reno Virtual Direction Multicast for Overlay Networks Suat Mercan & Dr. Murat Yuksel HOTP2P’11.
Delivery, Forwarding and
Routing and Routing Protocols Dynamic Routing Overview.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing
GeoGrid: A scalable Location Service Network Authors: J.Zhang, G.Zhang, L.Liu Georgia Institute of Technology presented by Olga Weiss Com S 587x, Fall.
Network Aware Resource Allocation in Distributed Clouds.
“Intra-Network Routing Scheme using Mobile Agents” by Ajay L. Thakur.
Overcast: Reliable Multicasting with an Overlay Network CS294 Paul Burstein 9/15/2003.
Application-Layer Multicast -presented by William Wong.
Resilient Peer-to-Peer Streaming Presented by: Yun Teng.
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.
IEEE Globecom 2010 Tan Le Yong Liu Department of Electrical and Computer Engineering Polytechnic Institute of NYU Opportunistic Overlay Multicast in Wireless.
De-Nian Young Ming-Syan Chen IEEE Transactions on Mobile Computing Slide content thanks in part to Yu-Hsun Chen, University of Taiwan.
Streaming over Subscription Overlay Networks Department of Computer Science Iowa State University.
Live Streaming over Subscription Overlay Networks CS587x Lecture Department of Computer Science Iowa State University.
A Scalable Content-Addressable Network (CAN) Seminar “Peer-to-peer Information Systems” Speaker Vladimir Eske Advisor Dr. Ralf Schenkel November 2003.
TOMA: A Viable Solution for Large- Scale Multicast Service Support Li Lao, Jun-Hong Cui, and Mario Gerla UCLA and University of Connecticut Networking.
Locating Mobile Agents in Distributed Computing Environment.
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.
Freelib: A Self-sustainable Digital Library for Education Community Ashraf Amrou, Kurt Maly, Mohammad Zubair Computer Science Dept., Old Dominion University.
Energy-Efficient Shortest Path Self-Stabilizing Multicast Protocol for Mobile Ad Hoc Networks Ganesh Sridharan
2007/03/26OPLAB, NTUIM1 A Proactive Tree Recovery Mechanism for Resilient Overlay Network Networking, IEEE/ACM Transactions on Volume 15, Issue 1, Feb.
MIDDLEWARE SYSTEMS RESEARCH GROUP Adaptive Content-based Routing In General Overlay Topologies Guoli Li, Vinod Muthusamy Hans-Arno Jacobsen Middleware.
A Membership Management Protocol for Mobile P2P Networks Mohamed Karim SBAI, Emna SALHI, Chadi BARAKAT.
APPLICATION LAYER MULTICASTING
Multiuser Receiver Aware Multicast in CDMA-based Multihop Wireless Ad-hoc Networks Parmesh Ramanathan Department of ECE University of Wisconsin-Madison.
KAIS T On the problem of placing Mobility Anchor Points in Wireless Mesh Networks Lei Wu & Bjorn Lanfeldt, Wireless Mesh Community Networks Workshop, 2006.
On Reducing Mesh Delay for Peer- to-Peer Live Streaming Dongni Ren, Y.-T. Hillman Li, S.-H. Gary Chan Department of Computer Science and Engineering The.
RELIABLE APPLICATION LAYER MULTICAST OVER COMBINED WIRED AND WIRELESS NETWORKS AUTHORS - MASAHIRO KOBAYASHI, MEMBER, IEEE, HIDEHISA NAKAYAMA, MEMBER, IEEE,
Peer-to-Peer Result Dissemination in High-Volume Data Filtering Shariq Rizvi and Paul Burstein CS 294-4: Peer-to-Peer Systems.
Peer to Peer Network Design Discovery and Routing algorithms
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
Network-Aware Query Processing for Stream- based Application Yanif Ahmad, Ugur Cetintemel - Brown University VLDB 2004.
Efficient Resource Allocation for Wireless Multicast De-Nian Yang, Member, IEEE Ming-Syan Chen, Fellow, IEEE IEEE Transactions on Mobile Computing, April.
Self-stabilizing energy-efficient multicast for MANETs.
Spring 2000CS 4611 Routing Outline Algorithms Scalability.
A Bandwidth Scheduling Algorithm Based on Minimum Interference Traffic in Mesh Mode Xu-Yajing, Li-ZhiTao, Zhong-XiuFang and Xu-HuiMin International Conference.
1 FairOM: Enforcing Proportional Contributions among Peers in Internet-Scale Distributed Systems Yijun Lu †, Hong Jiang †, and Dan Feng * † University.
1 Traffic Engineering By Kavitha Ganapa. 2 Introduction Traffic engineering is concerned with the issue of performance evaluation and optimization of.
1 Roie Melamed, Technion AT&T Labs Araneola: A Scalable Reliable Multicast System for Dynamic Wide Area Environments Roie Melamed, Idit Keidar Technion.
A Cluster-based Routing Protocol for Mobile Ad hoc Networks
Architecture and Algorithms for an IEEE 802
(How the routers’ tables are filled in)
A Study of Group-Tree Matching in Large Scale Group Communications
Intra-Domain Routing Jacob Strauss September 14, 2006.
5.2 FLAT NAMING.
A Case for Mutual Notification
Dynamic Replica Placement for Scalable Content Delivery
Design and Implementation of OverLay Multicast Tree Protocol
Presentation transcript:

CS218 – Final Project A “Small-Scale” Application- Level Multicast Tree Protocol Jason Lee, Lih Chen & Prabash Nanayakkara Tutor: Li Lao

Overview Big Picture: part of a larger project, Hybrid Overlay Multicast Architecture Small-Scale Application-Level Multicasts Two-tier Grouping Algorithms, featuring Euclidean Distance-Based Clustering Results

Hybrid Overlay Multicast Architecture Combines the idea "overlay multicast" and application-level multicast. A network of backbone (or transit) domains and stub domains

Backbone and Stub Domains image from

Proxy Nodes & Stub Domains Inside the backbone domains, a set of fixed proxy nodes are deployed to form an overlay network. These proxy nodes also responsible for setting up overlay multicast trees within the backbone domain. In each stub domain, end users and one proxy node form application-level multicast trees.

Motivation Advantages: overlay multicast - efficient resource usage and better multicast performance application-level multicast - flexibility and its ability to adapt to network dynamics two-tier infrastructure more scalable to large group size because control messages between end users are limited to the local scope

“Small-Scale” Application-Level Multicast Tree Construction Assumptions: Use of a centralized proxy node to set up and maintain multicast trees. Metric used is link delay (for now)

Project Goals Implement a application level multicast protocol [to be incorporated into an overlay network] Algorithm to construct a multicast tree based on some metric (e.g., latency, bandwidth) Algorithm to construct a optimized tree for best resiliency and performance Limited fanout per node

Challenges Construct a tree based on an arbitrary metric Have to address scalability Have to assign parents and children relationships Handle arbitrary client joins/leaves

Implementation Linux/C++ implementation Proxy node –Use clustering algorithm to create tree –Aware of the whole tree. –Handles all joins and leaves and repairing Client nodes –basically dumb nodes –Used to distribute data and answer proxy’s messages

Implementation Details Since testing done on 1 machine, implemented code to simulate latencies between nodes Total lines of code: > 8k Libraries, Utilities: 5k Node (proxy, client): 2.4k Started from scratch: no framework given, no pre-existing source code, or libraries for sockets and serialization

Implementation Code… Basic Framework

Another Two-Tier Approach New nodes get assigned to the un- optimized balanced tree. Used for simplicity and as a baseline for reliability that the more optimized solution should provide Stables nodes rewarded with a clustered multicast tree based on Euclidean mean distances

Implementation Basic Tree Simple un-optimized balanced tree Each parent is responsible at most MaxFanout children. When a parent gets filled, new clients are added to open parents or leaf nodes

Basic Tree Algorithm PROXY NODE NEW NODE

Dynamic Join and Leave Optimized Cluster Tree New clients go to the bottom of the tree as leaves If a node dies, we use the most recently added node to plug in the “hole”

Basic Tree Algorithm PROXY NODE

Basic Tree Algorithm PROXY NODE

Implementation Optimized Cluster Tree Squared Euclidean Mean Distances - geometric distance between objects, emphasizing the weight on objects further apart Between-groups linkage - average similarity within each cluster is calculated.

Implementation Optimized Cluster Tree: Details PROXY NODE

Implementation Optimized Cluster Tree: Details PROXY NODE

Implementation Optimized Cluster Tree: Details PROXY NODE

Implementation Optimized Cluster Tree: Details

Cluster – Dynamic Join Simultaneously maintain two multicast trees 1)Clustered 2)Un-optimized New nodes get placed on the un- optimized tree until the entire network is clustered.

Implementation Optimized Cluster Tree: Details Proxy sends out ping requests to nodes – results used to fill a NxN matrix with ping latencies (can be easily extended for b/w) Proxy calculates clusters based on max fanout per node. If too many nodes for a given clusterhead, recursively calculate the clusters for this subgroup.

Dynamic Join and Leave Optimized Cluster Tree Details Recalculate the clusters (if appropriate) at the parent of the dead node If the parent of such a dead node is the proxy, the proxy just adopts the dead node’s children

Cluster – Dynamic Departures Re-cluster from parent of dead child

Cluster – Dynamic Departures Re-cluster from parent of dead child

Simulations Simulation 1 - Test the tree under conditions of constantly joining and leaving nodes Simulation 2 - Test effects of heavy, but highly bursty traffic conditions Measurements - Average latency - Average rate of successful transmission For: -Clustered Nodes vs. Balanced Tree -Fanouts of size 2 and 6

Simulation Simulation 1 - Churning 1.Start with N nodes already in the tree 2.Extended period of constant leaving and joining (1-3 nodes) 3.Allow the tree to stabilize

Simulation Simulation 2 – Mass join / leave 1.Start with N nodes 2.Inactive period to ensure nodes have stabilized 3.0.5N leave the tree 4.Short duration 5.2N join the tree

Measurements 1 – Average latency 1.Start the multicast process. 2.Measure delay to each node in the tree 3.Compare results between balanced tree and clustered nodes

Measurements 2 – Average Delivery Rate 1.Start the multicast process 2.Measure percentage of delivery of the original data to each node 3.Compare results between balanced tree and clustered nodes

Other Multicast Algorithms Focusing on small-scale, so take advantage of the proxy node’s total awareness Minimum Spanning Trees and Shortest Path Trees are not optimized for latencies and/or bandwidth Other application-level multicast protocols, e.g. NICE and Narada

Issues Clustering algorithm’s handling of proxy’s dead Currently using latency only The un-optimized tree constructed without regards to link metrics However, all limitations can easily be changed and tested against this current implementation

Conclusion Implementation of a two-tier multicast tree using Squared Euclidean distance clustering multicast algorithm for the optimized tree Extensible, and can create performance benchmarks with other multicast algorithms Addresses small-scale multicast without requiring any information of neighbors upon initiation