1 P2P Streaming Amit Lichtenberg Based on: - Hui Zhang, Opportunities and Challenges of Peer-to-Peer Internet Video Broadcast,

Slides:



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

Opportunities and Challenges of Peer-to-Peer Internet Video Broadcast Speaker: Shao-Fen Chou Adivisor: Dr. Ho-Ting Wu 11/14/
NUS.SOC.CS Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Peer-to-Peer Streaming.
Incentives Build Robustness in BitTorrent Bram Cohen.
Novasky: Cinematic-Quality VoD in a P2P Storage Cloud Speaker : 童耀民 MA1G Authors: Fangming Liu†, Shijun Shen§,Bo Li†, Baochun Li‡, Hao Yin§,
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.
Cooperative Overlay Networking for Streaming Media Content Feng Wang 1, Jiangchuan Liu 1, Kui Wu 2 1 School of Computing Science, Simon Fraser University.
An Empirical Study of Flash Crowd Dynamics in a P2P-based Live Video Streaming System Bo Li, Gabriel Y. Keung, Susu Xie, Fangming Liu, Ye Sun, and Hao.
Network Coding in Peer-to-Peer Networks Presented by Chu Chun Ngai
MMCN 19 Jan 2005 Ooi Wei Tsang Peer-to-Peer Streaming.
Resilient Peer-to-Peer Streaming Paper by: Venkata N. Padmanabhan Helen J. Wang Philip A. Chou Discussion Leader: Manfred Georg Presented by: Christoph.
Efficient and Flexible Parallel Retrieval using Priority Encoded Transmission(2004) CMPT 886 Represented By: Lilong Shi.
1 Failure Recovery for Priority Progress Multicast Jung-Rung Han Supervisor: Charles Krasic.
1 Inside the New Coolstreaming: Principles, Measurements and Performance Implications Bo Li, Susu Xie, Yang Qu, Gabriel Y. Keung, Chuang Lin, Jiangchuan.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
A New Approach for the Construction of ALM Trees using Layered Coding Yohei Okada, Masato Oguro, Jiro Katto Sakae Okubo International Conference on Autonomic.
Internet Networking Spring 2006 Tutorial 12 Web Caching Protocols ICP, CARP.
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.
Scalable and Continuous Media Streaming on Peer-to-Peer Networks M. Sasabe, N. Wakamiya, M. Murata, H. Miyahara Osaka University, Japan Presented By Tsz.
P2VoD: Providing Fault Tolerant Video-on-Demand Streaming in Peer-to-Peer Environment Tai T.Do, Kien A. Hua, Mounir A. Tantaoui Proc. of the IEEE Int.
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.
Prefix Caching assisted Periodic Broadcast for Streaming Popular Videos Yang Guo, Subhabrata Sen, and Don Towsley.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #13 Web Caching Protocols ICP, CARP.
Issues in Offering Live P2P Streaming Service to Residential Users Nazanin Magharei, *Yang Guo, and Reza Rejaie Dept. of Computer and Information Science.
Application Layer Multicast
1March -05 Jiangchuan Liu with Xinyan Zhang, Bo Li, and T.S.P.Yum Infocom 2005 CoolStreaming/DONet: A Data-Driven Overlay Network for Peer-to-Peer Live.
An Alliance based PeeringScheme for P2P Live Media Streaming An Alliance based Peering Scheme for P2P Live Media Streaming Darshan Purandare Ratan Guha.
Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie.
An Overlay Multicast Infrastructure for Live/Stored Video Streaming Visual Communication Laboratory Department of Computer Science National Tsing Hua University.
Internet Networking Spring 2002 Tutorial 13 Web Caching Protocols ICP, CARP.
Supporting VCR-like Operations in Derivative Tree-Based P2P Streaming Systems Tianyin Xu, Jianzhong Chen, Wenzhong Li, Sanglu Lu Nanjing University Yang.
On-Demand Media Streaming Over the Internet Mohamed M. Hefeeda, Bharat K. Bhargava Presented by Sam Distributed Computing Systems, FTDCS Proceedings.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 34 – Media Server (Part 3) Klara Nahrstedt Spring 2012.
CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 24 – P2P Streaming Klara Nahrstedt Ramsés Morales.
1CS 6401 Peer-to-Peer Networks Outline Overview Gnutella Structured Overlays BitTorrent.
Slide courtesy: Dr. Sumi Helal & Dr. Choonhwa Lee at University of Florida, USA Prof. Darshan Purandare at University of Central Florida, USA Dr. Meng.
Peer-To-Peer Multimedia Streaming Using BitTorrent Purvi Shah, Jehan-François Pâris University of Houston Houston, TX.
Scalable Reliable Multicast Architecture Wenjun Zeng Computer Science Department University of Missouri-Columbia.
Exploring VoD in P2P Swarming Systems By Siddhartha Annapureddy, Saikat Guha, Christos Gkantsidis, Dinan Gunawardena, Pablo Rodriguez Presented by Svetlana.
COCONET: Co-Operative Cache driven Overlay NETwork for p2p VoD streaming Abhishek Bhattacharya, Zhenyu Yang & Deng Pan.
P2P Live Streaming Yang Gao, Nazanin Magharei, Reza Rejaie, "Mesh or Multiple- Tree: A Comparative Study of Live P2P Streaming Approaches" INFOCOM 07 Y.
Cluster and Grid Computing Lab, Huazhong University of Science and Technology, Wuhan, China Supporting VCR Functions in P2P VoD Services Using Ring-Assisted.
1 V1-Filename.ppt / yyyy-mm-dd / Initials P2P content distribution T Applications and Services in Internet, Fall 2008 Jukka K. Nurminen.
1 © 2008 Nokia continous_scheduling_fmn_2008 / / JAk Continuous Scheduling for Data-Driven Peer-to-Peer Streaming Jyrki Akkanen Peer-to-peer.
Peer-to-Peer Networks (3) - IPTV Hongli Luo CEIT, IPFW.
Network Technologies essentials Week 9: Distributed file sharing & multimedia Compilation made by Tim Moors, UNSW Australia Original slides by David Wetherall,
1 Towards Cinematic Internet Video-on-Demand Bin Cheng, Lex Stein, Hai Jin and Zheng Zhang HUST and MSRA Huazhong University of Science & Technology Microsoft.
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
CS Spring 2011 CS 414 – Multimedia Systems Design Lecture 37 – P2P Streaming and P2P Applications/PPLive Klara Nahrstedt Spring 2011.
HUAWEI TECHNOLOGIES CO., LTD. Page 1 Survey of P2P Streaming HUAWEI TECHNOLOGIES CO., LTD. Ning Zong, Johnson Jiang.
Load-Balancing Routing in Multichannel Hybrid Wireless Networks With Single Network Interface So, J.; Vaidya, N. H.; Vehicular Technology, IEEE Transactions.
On the Optimal Scheduling for Media Streaming in Data-driven Overlay Networks Meng ZHANG with Yongqiang XIONG, Qian ZHANG, Shiqiang YANG Globecom 2006.
A Utility-based Approach to Scheduling Multimedia Streams in P2P Systems Fang Chen Computer Science Dept. University of California, Riverside
CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 37 – P2P Applications/PPLive Klara Nahrstedt Spring 2009.
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.
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
SHADOWSTREAM: PERFORMANCE EVALUATION AS A CAPABILITY IN PRODUCTION INTERNET LIVE STREAM NETWORK ACM SIGCOMM CING-YU CHU.
Optimization Problems in Wireless Coding Networks Alex Sprintson Computer Engineering Group Department of Electrical and Computer Engineering.
Inside the New Coolstreaming: Principles, Measurements and Performance Implications Bo Li, Susu Xie, Yang Qu, Gabriel Y. Keung, Chuang Lin, Jiangchuan.
An overlay for latency gradated multicasting Anwitaman Datta SCE, NTU Singapore Ion Stoica, Mike Franklin EECS, UC Berkeley
Buffer Analysis of Live P2P Media Streaming Approaches Atif Nazir BSc ’07, LUMS.
Cost-Effective Video Streaming Techniques Kien A. Hua School of EE & Computer Science University of Central Florida Orlando, FL U.S.A.
Accelerating Peer-to-Peer Networks for Video Streaming
Video On Demand.
Ying Qiao Carleton University Project Presentation at the class:
2019/9/14 PPSP Survey.
Design and Implementation of OverLay Multicast Tree Protocol
Presentation transcript:

1 P2P Streaming Amit Lichtenberg Based on: - Hui Zhang, Opportunities and Challenges of Peer-to-Peer Internet Video Broadcast, Yong Liu · Yang Guo · Chao Liang, A survey on peer-to-peer video streaming systems, Peer-to-Peer Netw Appl (2008) 1:18–28

2 What is Video Streaming? Source video (TV, sports, concerts, distance education) available at some server. Users wish to watch video ◦ Real-time (?) ◦ Simultaneously (?) ◦ High quality ◦ Over the internet (for free) Many users ◦ AOL: Live 8 concert (2005) – 175,000 viewers ◦ CBS: NCAA tournament (2006) – 268,000 viewers

3 What is Video Streaming? (cont) Problem: ◦ Minimum video bandwidth: 400 Kbps ◦ X viewers ◦ Required server/network bandwidth: 400X Kbps ◦ CBS/NCAA (270K viewers) needs ~100Gbps server/network bandwidth ◦ Infeasible!

4 Agenda Approaches for Live Video Streaming P2P live video broadcast ◦ Difference from other P2P applications ◦ Overlay design issues and approaches  Tree based  Data driven / Mesh based ◦ Challenges and open issues ◦ Deployment status As time permits: P2P VOD streaming ◦ Similar, but yet different

5 Internet Multicast Architectures Terminology ◦ Broadcast: send data to everyone ◦ Multicast: send data to a subgroup of users ◦ We will use both interchangeably, although generally mean the latter. Where to implement? ◦ Network Layer (IP)?  Efficient  Costly ◦ Application Layer?  Cheap  Efficiency?

6 IP Multicast Implemented at Network Layer (IP) Introduce open, dynamic IP groups Easiest at network level! (knows network topology the best) Problems: ◦ Hurts routers’ “stateless” architecture ◦ Scaling, complexity ◦ Only best effort – not sure how to use it from TCP point of view ◦ Need to replace infrastructure – no incentives

7 Non-routers Based Architectures Move multicast functionality to end- systems (application level) ◦ Penalties: package duplication, latency ◦ Objective: bring penalties to a minimum Infrastructure-centric architecture ◦ CDN (Content Distribution Centers) P2P architectures Increases bandwidth demands significantly

8 How do you feel about low upload cap and high down cap? P2P Streaming Motivation: addition of new users requires more download bw, but also contributes some more upload bw - Scalability However, users come and go at will ◦ Key: function, scale and self-organize in a highly dynamic environment

9 P2P Streaming vs. Other P2P Application Single, dedicated, known source ◦ NBC Large scale ◦ Tens, sometimes hundreds of thousands of simultaneous viewers Performance-Demanding ◦ >100’s of Kbps Real Time ◦ Timely and continuously streaming Quality ◦ Can be adjusted according to demands and bandwidth resources ◦ Nevertheless, minimal (high) quality is a must

10 Design Issues Organize the users into an overlay for disseminating the video stream: ◦ Efficiency  high bandwidth, low latencies  Can tolerate a startup delay of a few seconds ◦ Scalability, Load Balancing ◦ Self-Organizing ◦ Per-node bandwidth constrains  Quality of received video  Amount of required bw ◦ System considerations (Later on…)

11 Approaches for Overlay Construction Many approaches, basically divided into 2 classes: ◦ Tree based ◦ Data driven / Mesh based

12 Tree Based Overlay Organize peers into a tight predefined structure (usually a tree). Packets sent down the tree from parent to children. Push based – always send (push) received data to descendents Optimize the structure Take care of nodes joining and leaving

13 Example Tree-Based Approach: ESM End System Multicast (*) Construct a tree rooted at source Packages transmitted down the tree from parent to children Self-organizing, performance-aware, distributed (*) Y.-H. Chu, S. G.Rao, and H. Zhang, “A case for end system multicast”, in Proc. ACM SIGMETRICS’00, June 2000.

14 ESM: Group Management Each node maintains info about a small random subset of members + info about path from source to itself. New node: ◦ contact the server, ask for a random list of members ◦ Select one of them as parent (how?) Gossip-like protocol to learn more ◦ Node A picks a random node B and shares his info to him. Timestamps

15 ESM: Membership Dynamics When a node leave: ◦ Graceful leaving: continue forwarding data for a short period to allow adjustment ◦ Door slamming: detected via timestamps ◦ Members send control packets to indicate liveness

16 ESM: Adaptation Maintain throughput info for timeframe If throughput << source rate, select a new parent. DT: Detection Time ◦ How long should a node wait before abandoning parent? ◦ Default DT = 5 seconds  Effected by TCP/TFRC congestion control (slow- start) ◦ May need to adjust during runtime

17 ESM: Parent Selection Node A joins broadcast / replaces parent A chooses and examines a random subset of known members ◦ Prefer unexamined / low delay members Node B answers: ◦ Current performance (throughput) ◦ Degree-saturated or not ◦ Descendant of A or not Enables RTT from A to B

18 ESM: Parent Selection (cont) Wait timeout: ~1 second Eliminate saturated and descendent nodes. ◦ Static degree per node Evaluate performance (throughput, delay) for each B Switch to B if the potential throughput is better, or the same but delay is smaller. ◦ Helps cluster close nodes

19 ESM Tree - example

20 ESM Tree - example

21 ESM Tree - example

22 Tree Based Overlay – Problems Node leaves -> disrupt delivery to all of its descendents Majority (~n/2) of nodes are leaves, and their outgoing bw is not being utilized Introduce: Multi-trees

23 Multi-Trees At source: ◦ encode stream into sub-streams ◦ Distribute each along a different tree At receiver: ◦ Quality ≈ # received sub-streams

24 Multi-Tree: Example S – source rate Server: distributes a stream rate of S/2 over each tree Each peer: receives S/2 from each tree. Peer 0: donates its upload BW at the left subtree, and is a leaf at the right

25 Multi-Tree + & - Advantages: ◦ A node not completely disrupted by the failure of an ancestor ◦ The potential bw of all nodes can be utilized, as long as each node is not a leaf in at least one subtree. Disadvantages: ◦ Requires special encoding/decoding at server/user ◦ Code must enable degraded quality when received from only a subset of trees ◦ Currently uncommon

26 Data Driven / Mesh based Overlay Do not construct and maintain an explicit structure for data delivery Use the availability of data to guide the data flow ◦ Similar to BitTorrent techniques Nodes form “meshes” of partners in which they exchange data

27 Data Driven overlay: Naïve Approach Use a “gossip algorithm” ◦ Each node selects a random group of members and sends all the data to them. ◦ Other nodes continue the same way Push based: push all available data onwards Problems: ◦ Redundant data ◦ Startup, transmission delay

28 Data Driven overlay: Pull Based Nodes maintain a set of partners and periodically exchange data availability info. A node may retrieve (“pull”) data from partners. Crucial difference from BitTorrent: ◦ Segments must be obtained before playback deadline!

29 Example Data-Driven Approach: CoolStreaming (*) CoolStreaming node: ◦ Membership Manager:  Help maintain a partial view of other nodes ◦ Partnership Manager:  Establish and maintain partnership with other nodes ◦ Scheduler:  Schedule the transmission of video data (*) X. Zhang, J. Liu, B. Li and T.-S. P. Yum, “DONet/CoolStreaming: A data-driven overlay network for live media streaming”, in Proc. INFOCOM’05, Miami, FL, USA, March 2005.

30 CoolStreaming: Group and Partner Management New node: ◦ Contact server to obtain a set of partner candidates. Maintain a partial subset of other participants. Employs SCAM ◦ Scalable Gossip Membership Protocol ◦ Scalable, light weight, uniform partial view

31 CoolStreaming: overlay No formal structure! Video stream divided into segments Nodes hold Buffer Maps (BM) ◦ Availability of each segment Exchange BMs with partners Pull segments from partners as needed

32 CoolStreaming: Scheduling Goal: timely and continuous segment delivery ◦ As appose to file download! Uses a sliding window technique ◦ 1 second segment ◦ 120 segments per window ◦ BM = bit-string of 120b. ◦ Segments sequence numbers

33 CoolStreaming vs BitTorrent Buffer Snapshots BitTorrent CoolStreaming Whole File Sliding window Playback point

34 CoolStreaming: Scheduling Need a scheduling algorithm to fetch segments. ◦ Simple round-robin? Two constrains: ◦ Playback deadline  If not, then at least keep # of missing segments at a minimum ◦ Heterogeneous streaming bandwidth Parallel Machine Learning problem ◦ NP Hard  In reality, use some simple heuristics

35 CoolStreaming: Failure Recovery and Partnership Refinement Departure (gracefully or crash) ◦ Detected by idle time ◦ Recover: re-schedule using BM info Periodically establish new partnerships with local random members ◦ Helps maintain a stable number of partners ◦ Explore partners of better quality

36 CoolStreaming – Buffer Map example

37 Technical Challenges and Open Issues Tree Based vs. Data Driven ◦ Neither completely overcome the challenges from the dynamic invironment ◦ Data driven: latency-overhead tradeoff. ◦ Tree based: inherited instability, bandwidth under- utilization. ◦ Can there be an efficient hybrid?  Chunkyspread: split stream into segments and send on separate, not necessarily disjoint trees + neighboring graph. – simpler tree construction and maintenance + efficiency.  More explicit tree-bone approach: use stable nodes to construct tree base.

38 Technical Challenges and Open Issues Incentives and Fairness ◦ Users cooperation  A small set of nodes are required to donate times more upload bw.  Always act as a leaf in tree construction ◦ Need an incentive mechanism  Challenging, due to real-time requirement  Popularity (as in BitTorrent) – not enough  Short period of time  Slow download rate -> user will leave  Tit-fot-tat  Ineffective: users look after same portion of data.

39 Technical Challenges and Open Issues Bandwidth Scarce Regimes ◦ Basic requirement:  ∑(upload bw) ≥ ∑(received bandwidth)  Nodes behind DSL/Cable can receive a lot, but cannot donate much ◦ Introduce Resource Index (RI) ◦ (for particular source rate)  RI<1: not all participants can receive a full source rate  RI=1: system is saturated  RI>1: less constrains, con construct better overlay trees

40 Technical Challenges and Open Issues Peer Dynamics and Flash Crowds ◦ Flash crowd: large increase in number of users joining the broadcast in a short period of time. ◦ Opposite situation: massive amount of users leaving the broadcast. ◦ Need to adjust quickly:  Otherwise, users will leave in first case  Or lose quality in the second

41 Technical Challenges and Open Issues Heterogeneous Receivers ◦ Download bandwidth  Dial-up vs. DSL ◦ Single bw support isn’t enough ◦ ESM: video is encoded at multiple bitrates and sent parallel – adjust video quality according to capabilities. ◦ Requires new coding techniques: Layer coding, Miller Descriptive coding.  Not yet deployed in mainstream media players

42 Technical Challenges and Open Issues Implementation Issues ◦ NATs, Firewalls ◦ Transport protocol ◦ Startup delay and buffer interaction  Separate streaming engine and playback engine

43 P2P streaming – Deployment Status CoolStreaming: ◦ > 50,000 concurrent users, > 25,000 in one channel at peak times. ◦ In the table:  From 20:26 Mar 10  To 2:14 Mar 14  (GMT)  Total: ~78 hours

44 P2P streaming – Deployment Status (cont) Most users reported satisfactory viewing experience. Current internet has enough available BW to support TV-quality streaming ( Kbps). Higher user participation -> even better statistical results!

45 P2P VOD Streaming Watch ◦ Any point of video ◦ Any time More flexibility for user ◦ “Watch whatever you want, whenever you want!” Key to IPTV

46 P2P VOD Large number of users may be watching the same video Asynchronous to each other Tree based overlay: Synchronous! ◦ Receive the content in the order sent by the server. Mesh based: ◦ Random order – should arrive before playback deadline ◦ High throughput

47 Tree Based VOD Group users into sessions based on arrival times. Define a threshold T ◦ Users that arrive close in time and within T constitute a session Together with the server, form a multicast tree ◦ “Base tree” Server streams the video over the base-tree ◦ As in the P2P live streaming.

48 Tree Based VOD (cont) New client joins a session (or forms a new session) ◦ Join base tree, retrieve base stream for it. ◦ Obtain a patch – the initial portion of the video that it has missed.  Available at the server or at other users who have already cached it. ◦ Users provide two services:  Base stream forwarding  Patch serving ◦ Users are synchronous in the base tree. The asynchronous requirement addressed via patches.

49 Tree Based VOD: example

50 Cache and Relay Buffer a sliding window of video content around the current point. Serve other users whose viewing point is within the moving window by forwarding the stream. Forms a tree (“cluster”) with different playback points.

51 Cache and Relay: example (10 minutes cache)

52 Cache and Relay: example (10 minutes cache)

53 Tree Problems Same as P2P streaming ◦ Construct the tree ◦ Maintain it ◦ Handle peer churn In cache-and-relay ◦ Another constraint about adequate parents ◦ Directory service to locate parents