CS 414 - Spring 2009 CS 414 – Multimedia Systems Design Lecture 24 – P2P Streaming Klara Nahrstedt Ramsés Morales.

Slides:



Advertisements
Similar presentations
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Peer-to-Peer Streaming.
Advertisements

Playback delay in p2p streaming systems with random packet forwarding Viktoria Fodor and Ilias Chatzidrossos Laboratory for Communication Networks School.
On Large-Scale Peer-to-Peer Streaming Systems with Network Coding Chen Feng, Baochun Li Dept. of Electrical and Computer Engineering University of Toronto.
Lava: A Reality Check of Network Coding in Peer-to-Peer Live Streaming Mea Wang, Baochun Li Department of Electrical and Computer Engineering University.
Mesh or Multiple-Tree A Comparative Study of Live P2P Streaming Approaches 指導教授:許子衡 老師 學生:王志嘉.
1 Nazanin Magharei, Reza Rejaie University of Oregon INFOCOM 2007 PRIME: P2P Receiver-drIven MEsh based Streaming.
TDK - Team Distributed Koders Distributed Systems I Team Report II 1/24/07 Team Members: Kumar Keswani John Kaeuper Jason Winnebeck Fairness in P2P Streaming.
SplitStream by Mikkel Hesselager Blanné Erik K. Aarslew-Jensen.
SplitStream: High- Bandwidth Multicast in Cooperative Environments Monica Tudora.
Peer-to-Peer Systems (cntd.) 15/11 – 2004 INF5070 – Media Servers and Distribution Systems:
MMCN 19 Jan 2005 Ooi Wei Tsang Peer-to-Peer Streaming.
TDK - Team Distributed Koders Distributed Systems I Team Report III 2/7/07 Team Members: Kumar Keswani John Kaeuper Jason Winnebeck Fairness in P2P Streaming.
Pastry Peter Druschel, Rice University Antony Rowstron, Microsoft Research UK Some slides are borrowed from the original presentation by the authors.
1 PASTRY Partially borrowed from Gabi Kliot ’ s presentation.
1 Accessing nearby copies of replicated objects Greg Plaxton, Rajmohan Rajaraman, Andrea Richa SPAA 1997.
Resilient Peer-to-Peer Streaming Paper by: Venkata N. Padmanabhan Helen J. Wang Philip A. Chou Discussion Leader: Manfred Georg Presented by: Christoph.
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,
SplitStream: High-Bandwidth Multicast in Cooperative Environments Marco Barreno Peer-to-peer systems 9/22/2003.
A Comparison of Layering and Stream Replication Video Multicast Schemes Taehyun Kim and Mostafa H. Ammar.
Network Coding for Large Scale Content Distribution Christos Gkantsidis Georgia Institute of Technology Pablo Rodriguez Microsoft Research IEEE INFOCOM.
Pastry Partially borrowed for Gabi Kliot. Pastry Scalable, decentralized object location and routing for large-scale peer-to-peer systems  Antony Rowstron.
CoolStreaming/DONet: A Data- driven Overlay Network for Peer- to-Peer Live Media Streaming INFOCOM 2005 Xinyan Zhang, Jiangchuan Liu, Bo Li, and Tak- Shing.
Adaptive Multi-source Streaming in Heterogeneous Peer-to-peer Network Vikash Agarwa; Reza Rejaie Twelfth Annual Multimedia Computing and Networking (MMCN.
Spring 2003CS 4611 Peer-to-Peer Networks Outline Survey Self-organizing overlay network File system on top of P2P network Contributions from Peter Druschel.
SCRIBE: A large-scale and decentralized application-level multicast infrastructure Miguel Castro, Peter Druschel, Anne-Marie Kermarrec and Antony Rowstron.
Issues in Offering Live P2P Streaming Service to Residential Users Nazanin Magharei, *Yang Guo, and Reza Rejaie Dept. of Computer and Information Science.
PROMISE: Peer-to-Peer Media Streaming Using CollectCast M. Hefeeda, A. Habib, B. Botev, D. Xu, and B. Bhargava ACM Multimedia 2003, November 2003.
Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie.
6/28/2015Reza Rejaie INFOCOM 07 1 Nazanin Magharei, Reza Rejaie University of Oregon PRIME: P2P Receiver-drIven MEsh based.
Scalable Live Video Streaming to Cooperative Clients Using Time Shifting and Video Patching Meng Guo and Mostafa H. Ammar INFOCOM 2004.
P2P Course, Structured systems 1 Introduction (26/10/05)
Project Mimir A Distributed Filesystem Uses Rateless Erasure Codes for Reliability Uses Pastry’s Multicast System Scribe for Resource discovery and Utilization.
# Idowu Samuel O. # Kashif Shahzad # Arif Kamal M7001E - Multimedia systems [ltu.se] ©2011.
Exploring VoD in P2P Swarming Systems By Siddhartha Annapureddy, Saikat Guha, Christos Gkantsidis, Dinan Gunawardena, Pablo Rodriguez Presented by Svetlana.
P2P Live Streaming Yang Gao, Nazanin Magharei, Reza Rejaie, "Mesh or Multiple- Tree: A Comparative Study of Live P2P Streaming Approaches" INFOCOM 07 Y.
1 PASTRY. 2 Pastry paper “ Pastry: Scalable, decentralized object location and routing for large- scale peer-to-peer systems ” by Antony Rowstron (Microsoft.
LOGO P2P & Multimedia Streaming NPUST-MINAR Professor : Sheau-Ru Tong Student : Yi-Chen Hsu 1.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 38 – P2P Streaming (Part 2) Klara Nahrstedt.
Resilient Peer-to-Peer Streaming Presented by: Yun Teng.
CS Spring 2011 CS 414 – Multimedia Systems Design Lecture 37 – P2P Streaming and P2P Applications/PPLive Klara Nahrstedt Spring 2011.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 41 – Final Exam Review Session Klara Nahrstedt Spring 2012.
Fair Layered Coding Streaming Jaime García-Reinoso  Iván Vidal  Francisco Valera University Carlos III of Madrid Alex Bikfalvi IMDEA Networks.
Paper # – 2009 A Comparison of Heterogeneous Video Multicast schemes: Layered encoding or Stream Replication Authors: Taehyun Kim and Mostafa H.
PRIME: P2P Receiver-drIven MEsh based Streaming Nazanin Magharei, Reza Rejaie University of Oregon Presenter Jungsik Yoon.
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 40 – Final Exam Review Session Klara Nahrstedt Spring 2010.
CS Spring 2011 CS 414 – Multimedia Systems Design Lecture 40 – Final Exam Review Session Klara Nahrstedt Spring 2011.
By Jonathan Drake.  The Gnutella protocol is simply not scalable  This is due to the flooding approach it currently utilizes  As the nodes increase.
DHT-based unicast for mobile ad hoc networks Thomas Zahn, Jochen Schiller Institute of Computer Science Freie Universitat Berlin 報告 : 羅世豪.
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 Network Design Discovery and Routing algorithms
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
CoopNet: Cooperative Networking
Content aware packet scheduling in peer-to-peer video streaming By: Reza Motamedi Advisor: Hamid Reza Rabiee.
INTERNET TECHNOLOGIES Week 10 Peer to Peer Paradigm 1.
Inside the New Coolstreaming: Principles, Measurements and Performance Implications Bo Li, Susu Xie, Yang Qu, Gabriel Y. Keung, Chuang Lin, Jiangchuan.
1 Plaxton Routing. 2 History Greg Plaxton, Rajmohan Rajaraman, Andrea Richa. Accessing nearby copies of replicated objects, SPAA 1997 Used in several.
Peer-to-Peer Networks 10 Fast Download Christian Schindelhauer Technical Faculty Computer-Networks and Telematics University of Freiburg.
Fabián E. Bustamante, Fall 2005 A brief introduction to Pastry Based on: A. Rowstron and P. Druschel, Pastry: Scalable, decentralized object location and.
Controlling the Cost of Reliability in Peer-to-Peer Overlays
COS 461: Computer Networks
Accessing nearby copies of replicated objects
PASTRY.
TDK - Team Distributed Koders Distributed Systems I
Ying Qiao Carleton University Project Presentation at the class:
Yang Guo Thomson Princeton Lab
PRIME Peer-to-Peer Receiver-Driven Mesh-Based Streaming
COS 461: Computer Networks
Design and Implementation of OverLay Multicast Tree Protocol
Presentation transcript:

CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 24 – P2P Streaming Klara Nahrstedt Ramsés Morales

Streaming from servers Bandwidth at video service and number of servers have to grow with demand  Flash crowds have to be taken into account CS Spring 2009 … … clients Video service servers

P2P Streaming Use the participating node’s bandwidth  More nodes watching stream = more shared bandwidth App-level multicast  How? CS Spring 2009 Live stream source (could be a member of the p2p network) P2P network Peers watching stream

P2P Streaming Common arrangements to multicast the stream  Single Tree  Multiple Tree  Mesh-based  All nodes are usually interested in the stream They all have to deal with node dynamism (join/leave/fail/capacity-changes) CS Spring 2009

Streaming in a single tree CS Spring 2009 Source Frames codercoder 321 packets (using RTP/UDP)

Single Tree Peers interested in the stream organize themselves into a tree CS Spring 2009 … …… Source Nodes send as many copies of a data packet as they have children

Joining the tree Find a node with spare capacity, then make it parent If contacted node lacks capacity, pick child  Random child  Round robin  Child closest in physical network to joining node CS Spring 2009 “Parent?” “Try one of my children”

Leaving the tree or failing Orphan nodes need a new parent Policies for new parent  Children pick source  Subtree nodes pick source  Children pick grandfather  Subtree nodes pick grandfather  …then repeat join procedure CS Spring 2009 Orphan children after parent leaves Ex-parent grandfather

Single tree issues Leaves do not use their outgoing bandwidth Packets are lost while recovering after a parent leaves/fails Finding unsaturated peer could take a while Tree connections could be rearranged for better transfer CS Spring 2009

Multiple Trees Challenge: a peer must be internal node in only one tree, leaf in the rest CS Spring Source Are nodes 1, 2, 3 receiving the same data multiple times?

Multiple Description Coding (MDC) Each description can be independently decoded (only one needed to reproduce audio/video)  More descriptions received result in higher quality CS Spring 2009 codercoder Frames Packets for description 0 Packets for description n … 3n3n 2n2n 1n1n

Streaming in multiple-trees using MDC Assume odd-bit/even-bit encoding -- description 0 derived from frame’s odd- bits, description 1 derived from frame’s even-bits CS Spring (using RTP/UDP)

Multiple Tree Streaming in Pastry DHT -- SplitStream Pastry routes messages using id prefix matching CS Spring 2009

Multiple Tree Streaming in Pastry DHT -- SplitStream Assign an id to each coded description  If most significant digit is different, then trees will be interior-node-disjoint, example, Id tree 1: d46a1c Id tree 2: a1321d 65a1fc: route(m, d46a1c) -> d13da3 -> d4213f -> d462ba 65a1fc: route(m, a1321d) -> a0b14f -> a1b987 -> a1321a Stream flows through reverse path CS Spring 2009

Multiple Tree Streaming in Pastry DHT -- SplitStream Peer is internal node in only one tree, due to interior-node-disjoint trees and Pastry’s routing CS Spring 2009 d462ba d4213f d13da3 65a1fc a1321a a1b987 a0b14f 65a1fc Description 0 d462ba d4213f d13da3 a1321a a1b987 Description 1 a0b14f

Multiple-Tree Issues Complex procedure to locate a potential- parent peer with spare out-degree  Degraded quality until a parent found in every tree Static mapping in trees, instead of choosing parents based on their (and my) bandwidth  An internal node can be a bottleneck CS Spring 2009

Mesh-based streaming Basic idea  Report to peers the packets that you have  Ask peers for the packets that you are missing  Adjust connections depending on in/out bandwidth CS Spring 2009 Description 0/1/2 Description 1 Description 0 Description 1,2 Description 0,1,2 (Nodes are randomly connected to their peers, instead of statically) Description 0/1/2 (mesh uses MDC)

Content delivery CS Spring Description 0Description 2 Description 1 (1) Diffusion Phase ( ) (2) Swarming Phase ( ) (Levels determined by hops to source)

Diffusion Phase As a new segment (set of packets) of length L becomes available at source every L seconds  Level 1 nodes pull data units from source, then level 2 pulls from level 1, etc.  Recall that reporting and pulling are performed periodically CS Spring … Segment 0 Segment 1 … … Have segment 0 3 Send me Segment (during period 0) 3 Have segment (during period 1) Send me Segment 0 (drawings follow previous example)

Swarming Phase At the end of the diffusion all nodes have at least one data unit of the segment Pull missing data units from (swarm-parent) peers located at same or lower level Can node 9 pull new data units from node 16?  Node 9 cannot pull data in a single swarm interval CS Spring 2009 (drawings follow previous example)

Buffering Due to diffusion nodes need a buffer  Size: c * L  (diffusion tree dept + minimum number of swarming intervals) <= c CS Spring 2009

Receiver driven packet scheduling Peers maintain parents’  Available packets  Weighted average bandwidth Peers monitor aggregate bandwidth from all parents  Requested descriptions adapt to this measure Designed to maximize utilization of available bandwidth from parents CS Spring Bw from 15=x, 16=y 15 has from t=0 to t=20 16 has from t=0 to t=10 X+y = x_agg (can I handle more?) (drawings follow previous example)

Receiver driven packet scheduling Scheduler identifies packets with highest timestamp available at parents (during last L seconds)  Then request all these packets Identify missing packets for each timestamp  Then request a random subset of these missing packets from all parents (even if they don’t have it) to fully utilize their bandwidth CS Spring Send me 0<=t<= Have up to t=20 Have up to t=10 9 I’m still missing t=19, t=

Many more details in references and source code M. Castro, P. Druschel, A-M. Kermarrec, A. Nandi, A. Rowstron and A. Singh, "SplitStream: High-bandwidth multicast in a cooperative environment," SOSP H. Deshpande, M. Bawa, H. Garcia-Molina. "Streaming Live Media over Peers," Technical Report, Stanford InfoLab, N. Magharei, R. Rejaie. "PRIME: Peer-to-Peer Receiver drIven MEsh-Based Streaming," INFOCOM N. Magharei, R. Rejaie, Y. Guo. "Mesh or Multiple-Tree: A Comparative Study of Live P2P Streaming Approaches," INFOCOM CS Spring 2009