1 On-Demand Media Streaming Over the Internet Mohamed M. Hefeeda Advisor: Prof. Bharat Bhargava October 16, 2002.

Slides:



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

P2P data retrieval DHT (Distributed Hash Tables) Partially based on Hellerstein’s presentation at VLDB2004.
Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
Pastry Peter Druschel, Rice University Antony Rowstron, Microsoft Research UK Some slides are borrowed from the original presentation by the authors.
Clayton Sullivan PEER-TO-PEER NETWORKS. INTRODUCTION What is a Peer-To-Peer Network A Peer Application Overlay Network Network Architecture and System.
On Large-Scale Peer-to-Peer Streaming Systems with Network Coding Chen Feng, Baochun Li Dept. of Electrical and Computer Engineering University of Toronto.
Search and Replication in Unstructured Peer-to-Peer Networks Pei Cao, Christine Lv., Edith Cohen, Kai Li and Scott Shenker ICS 2002.
Denial-of-Service Resilience in Peer-to-Peer Systems D. Dumitriu, E. Knightly, A. Kuzmanovic, I. Stoica and W. Zwaenepoel Presenter: Yan Gao.
Resilient Peer-to-Peer Streaming Paper by: Venkata N. Padmanabhan Helen J. Wang Philip A. Chou Discussion Leader: Manfred Georg Presented by: Christoph.
PROMISE: Peer-to-Peer Media Streaming Using CollectCast Mohamed Hafeeda, Ahsan Habib et al. Presented By: Abhishek Gupta.
Towards Efficient Simulation of Large Scale P2P Networks
1 A Hybrid Architecture for Cost-Effective On-Demand Media Streaming Mohamed Hefeeda & Bharat Bhargava CS Dept, Purdue University Support: NSF, CERIAS.
11/4/2003ACM Multimedia 2003, Berkeley, CA1 A Framework for Cost-Effective Peer- to-Peer Content Distribution Mohamed Hefeeda Ph.D. Candidate Advisor:
Peer-to-Peer Networks as a Distribution and Publishing Model Jorn De Boever (june 14, 2007)
Mohamed Hefeeda 1 School of Computing Science Simon Fraser University, Canada ISP-Friendly Peer Matching without ISP Collaboration Mohamed Hefeeda (Joint.
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,
1 Peer-to-Peer Media Streaming Mohamed M. Hefeeda Advisor: Prof. Bharat Bhargava March 12, 2003.
Scalable and Continuous Media Streaming on Peer-to-Peer Networks M. Sasabe, N. Wakamiya, M. Murata, H. Miyahara Osaka University, Japan Presented By Tsz.
FRIENDS: File Retrieval In a dEcentralized Network Distribution System Steven Huang, Kevin Li Computer Science and Engineering University of California,
Service Differentiated Peer Selection An Incentive Mechanism for Peer-to-Peer Media Streaming Ahsan Habib, Member, IEEE, and John Chuang, Member, IEEE.
Peer-to-Peer Based Multimedia Distribution Service Zhe Xiang, Qian Zhang, Wenwu Zhu, Zhensheng Zhang IEEE Transactions on Multimedia, Vol. 6, No. 2, April.
Building Low-Diameter P2P Networks Eli Upfal Department of Computer Science Brown University Joint work with Gopal Pandurangan and Prabhakar Raghavan.
Efficient Content Location Using Interest-based Locality in Peer-to-Peer Systems Presented by: Lin Wing Kai.
Exploiting Content Localities for Efficient Search in P2P Systems Lei Guo 1 Song Jiang 2 Li Xiao 3 and Xiaodong Zhang 1 1 College of William and Mary,
Overlay Networks EECS 122: Lecture 18 Department of Electrical Engineering and Computer Sciences University of California Berkeley.
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.
1 An Overlay Scheme for Streaming Media Distribution Using Minimum Spanning Tree Properties Journal of Internet Technology Volume 5(2004) No.4 Reporter.
Chord-over-Chord Overlay Sudhindra Rao Ph.D Qualifier Exam Department of ECECS.
CS218 – Final Project A “Small-Scale” Application- Level Multicast Tree Protocol Jason Lee, Lih Chen & Prabash Nanayakkara Tutor: Li Lao.
Topics in Reliable Distributed Systems Fall Dr. Idit Keidar.
On Peer-to-Peer Media Streaming by Dongyan Xu, Mohamed Hefeeda, Susanne Hambrusch, Bharat Bhargava Dept. of Computer Science, Purdue University, West Lafayette.
Wide-area cooperative storage with CFS
A Framework for Cost-Effective Peer-to- Peer Content Distribution Mohamed Hefeeda and Bharat Bhargava Department of Computer Sciences Purdue University.
Peer-to-peer Multimedia Streaming and Caching Service by Won J. Jeon and Klara Nahrstedt University of Illinois at Urbana-Champaign, Urbana, USA.
Loopback: Exploiting Collaborative Caches for Large-Scale Streaming Ewa Kusmierek, Yingfei Dong, Member, IEEE, and David H. C. Du, Fellow, IEEE.
On-Demand Media Streaming Over the Internet Mohamed M. Hefeeda, Bharat K. Bhargava Presented by Sam Distributed Computing Systems, FTDCS Proceedings.
1 Napster & Gnutella An Overview. 2 About Napster Distributed application allowing users to search and exchange MP3 files. Written by Shawn Fanning in.
Peer-to-Peer Overlay Networks. Outline Overview of P2P overlay networks Applications of overlay networks Classification of overlay networks – Structured.
“Intra-Network Routing Scheme using Mobile Agents” by Ajay L. Thakur.
Peer to Peer Research survey TingYang Chang. Intro. Of P2P Computers of the system was known as peers which sharing data files with each other. Build.
1 BitHoc: BitTorrent for wireless ad hoc networks Jointly with: Chadi Barakat Jayeoung Choi Anwar Al Hamra Thierry Turletti EPI PLANETE 28/02/2008 MAESTRO/PLANETE.
Resilient Peer-to-Peer Streaming Presented by: Yun Teng.
Higashino Lab. Maximizing User Gain in Multi-flow Multicast Streaming on Overlay Networks Y.Nakamura, H.Yamaguchi and T.Higashino Graduate School of Information.
Using the Small-World Model to Improve Freenet Performance Hui Zhang Ashish Goel Ramesh Govindan USC.
1 Distributed Hash Tables (DHTs) Lars Jørgen Lillehovde Jo Grimstad Bang Distributed Hash Tables (DHTs)
Structuring P2P networks for efficient searching Rishi Kant and Abderrahim Laabid Abderrahim Laabid.
TOMA: A Viable Solution for Large- Scale Multicast Service Support Li Lao, Jun-Hong Cui, and Mario Gerla UCLA and University of Connecticut Networking.
An IP Address Based Caching Scheme for Peer-to-Peer Networks Ronaldo Alves Ferreira Joint work with Ananth Grama and Suresh Jagannathan Department of Computer.
Peer-Assisted Content Distribution Pablo Rodriguez Christos Gkantsidis.
1 Peer-to-Peer Technologies Seminar by: Kunal Goswami (05IT6006) School of Information Technology Guided by: Prof. C.R.Mandal, School of Information Technology.
Peer to Peer A Survey and comparison of peer-to-peer overlay network schemes And so on… Chulhyun Park
Efficient P2P Search by Exploiting Localities in Peer Community and Individual Peers A DISC’04 paper Lei Guo 1 Song Jiang 2 Li Xiao 3 and Xiaodong Zhang.
PROP: A Scalable and Reliable P2P Assisted Proxy Streaming System Computer Science Department College of William and Mary Lei Guo, Songqing Chen, and Xiaodong.
Peer-to-Peer Media Streaming ZIGZAG - Ye Lin PROMISE – Chanjun Yang SASABE - Kung-En Lin.
Peer to Peer Network Design Discovery and Routing algorithms
CoopNet: Cooperative Networking
Algorithms and Techniques in Structured Scalable Peer-to-Peer Networks
INTERNET TECHNOLOGIES Week 10 Peer to Peer Paradigm 1.
CS 347Notes081 CS 347: Parallel and Distributed Data Management Notes 08: P2P Systems.
P2P Search COP6731 Advanced Database Systems. P2P Computing  Powerful personal computer Share computing resources P2P Computing  Advantages: Shared.
P2P Search COP P2P Search Techniques Centralized P2P systems  e.g. Napster, Decentralized & unstructured P2P systems  e.g. Gnutella.
09/13/04 CDA 6506 Network Architecture and Client/Server Computing Peer-to-Peer Computing and Content Distribution Networks by Zornitza Genova Prodanoff.
Malugo – a scalable peer-to-peer storage system..
Plethora: A Locality Enhancing Peer-to-Peer Network Ronaldo Alves Ferreira Advisor: Ananth Grama Co-advisor: Suresh Jagannathan Department of Computer.
Performance Comparison of Ad Hoc Network Routing Protocols Presented by Venkata Suresh Tamminiedi Computer Science Department Georgia State University.
Early Measurements of a Cluster-based Architecture for P2P Systems
EE 122: Peer-to-Peer (P2P) Networks
Overlay Networking Overview.
Dynamic Replica Placement for Scalable Content Delivery
EE 122: Lecture 22 (Overlay Networks)
Presentation transcript:

1 On-Demand Media Streaming Over the Internet Mohamed M. Hefeeda Advisor: Prof. Bharat Bhargava October 16, 2002

2 Outline  Peer-to-peer systems: definitions  Current media streaming approaches  Proposed P2P (abstract) model  Architectures (realization of the model) -Hybrid (Index-based) -Overlay  Searching and dispersion algorithms  Evaluation -P2P model -Dispersion algorithm

3 P2P systems: basic definitions  Peers cooperate to achieve the desired functions  No centralized entity to administer, control, or maintain the entire system  Peers are not servers [Saroui et al., MMCN’02 ]  Main challenge -Efficiently locate and retrieve a requested object  Examples -Gnutella, Napster, Freenet, OceanStore, CFS, CoopNet, SpreadIt, …

4 P2P: File-sharing vs. Streaming  File-sharing -Download the entire file first, then use it -Small files (few Mbytes)  short download time -A file is stored by one peer  one connection -No timing constraints  Streaming -Consume (playback) as you download -Large files (few Gbytes)  long download time -A file is stored by multiple peers  several connections -Timing is crucial

5 Current Streaming Approaches  Centralized -One gigantic server (server farm) with fat pipe A server with T3 link (~45 Mb/s) supports only up to 45 concurrent users at 1Mb/s CBR! -Limited scalability -Reliability concerns -High deployment cost $$$…..$

6 Current Streaming Approaches (cont'd)  Distributed caches [e.g., Chen and Tobagi, ToN’01 ] -Deploy caches all over the place -Yes, increases the scalability Shifts the bottleneck from the server to caches! -But, it also multiplies cost -What to cache? And where to put caches?  Multicast -Mainly for live media broadcast -Application level [Narada, NICE, Scattercast, … ] Efficient? -IP level [e.g., Dutta and Schulzrine, ICC’01] Widely deployed?

7 Current Streaming Approaches (cont'd) Generic representation of current approaches, excluding multicast

8 Current Streaming Approaches (cont'd)  P2P approaches -SpreadIt [Deshpande et al., Stanford TR’01] Live media  Build application-level multicast distribution tree over peers -CoopNet [Padmanabhan et al., NOSSDAV’02 and IPTPS’02] Live media  Builds application-level multicast distribution tree over peers On-demand  Server redirects clients to other peers  Assumes a peer can (or is willing to) support the full rate  CoopNet does not address the issue of quickly disseminating the media file

9 Our P2P Model  Idea -Clients (peers) share some of their spare resources (BW, storage) with each other -Result: combine enormous amount of resources into one pool  significantly amplifies system capacity -Why should peers cooperate? [Saroui et al., MMCN’02 ] They get benefits too! Incentives: e.g., lower rates [Cost-profit analysis, Hefeeda et al., TR’02]

10 P2P Model Proposed P2P model Peers Seeding servers Stream Media files Entities

11 P2P Model: Entities  Peers -Supplying peers Currently caching and willing to provide some segments Level of cooperation; every peer P x specifies:  G x (Bytes),  R x (Kb/s),  C x (Concurrent connections) -Requesting peers  Seeding server(s) -One (or a subset) of the peers seeds the new media into the system -Seed  stream to a few other peers for a limited duration

12 P2P Model: Entities (cont'd)  Stream -Time-ordered sequence of packets  Media file -Recorded at R Kb/s (CBR) -Composed of N equal-length segments -A segment is the minimum unit to be cached by a peer -A segment can be obtained from several peers at the same time (different piece from each)

13 P2P Model: Advantages  Cost effectiveness -For both supplier and clients -(Our cost model verifies that) [Hefeeda et al., TR’02]  Ease of deployment -No need to change the network (routers) -A piece of software on the client’s machine

14 P2P Model: Advantages (cont'd)  Robustness -High degree of redundancy -Reduce (gradually eliminate) the role of the seeding server  Scalability -Capacity More peers join  more resources  larger capacity -Network Save downstream bandwidth; get the request from a nearby peer

15 P2P Model: Challenges  Searching -Find peers with the requested file  Scheduling -Given a list of a candidate supplying peers, construct a streaming schedule for the requesting client  Dispersion -Efficiently disseminate the media files into the system  Robustness -Handle node failures and network fluctuations  Security -Malicious peers, free riders, …

16 P2PStream Protocol  Building blocks of the protocol to be run by a requesting peer -Details depend on the realization (or the deployable architecture) of the abstract model  Three phases -Availability check -Streaming -Caching

17 P2PStream Protocol (cont’d)  Phase I: Availability check (who has what) -Search for peers that have segments of the requested file P j -Arrange the collected data into a 2-D table, row j contains all peers P j willing to provide segment j -Sort every row based on network proximity -Verify availability of all the N segments with the full rate R:

18 P2PStream Protocol (cont'd)  Phase II: Streaming t j = t j-1 + δ /* δ: time to stream a segment */ For j = 1 to N do At time t j, get segment s j as follows: P jConnect to every peer P x in P j (in parallel) and Download from byte b x-1 to b x -1 Note: b x = |s j | R x /R Example: P 1, P 2, and P 3 serving different pieces of the same segment to P 4 with different rates

19 P2PStream Protocol (cont'd)  Phase III: Caching -Store some segments -Determined by the dispersion algorithm, and -Peer’s level of cooperation

20 P2P: Architecture (Deployment)  Two architectures to realize the abstract model  Index-based -Index server maintains information about peers in the system -May be considered as a hybrid approach  Overlay -Peers form an overlay layer over the physical network -Purely P2P

21 Index-based Architecture  Streaming is P2P; searching and dispersion are server-assisted  Index server facilitates the searching process and reduces the overhead associated with it  Suitable for a commercial service -Need server to charge/account anyway, and -Faster to deploy  Seeding servers may maintain the index as well (especially, if commercial)

22 Index-based Searching  Requesting peer, P x -Send a request to the index server:  Index server -Find peers who have segments of fileID AND close to P x - close in terms of network hops  Traffic traverses fewer hops, thus Reduced load on the backbone Less susceptible to congestion Short and less variable delays (smaller delay jitter)  Clustering idea [Krishnamurthy et al., SIGCOMM’00]

23 Peers Clustering  A cluster is: -A logical grouping of clients that are topologically close and likely to be within the same network domain  Clustering Technique -Get routing tables from core BGP routers -Clients with IP’s having the same longest prefix with one of the entries are assigned the same cluster ID -Example: Domains: /16 (purdue), /16 (cmu) Peers: , , , ,

24 Index-based Dispersion  Objective -Store enough copies of the media file in each cluster to serve all expected requests from that cluster -We assume that peers get monetary incentives from the provider to store and stream to other peers  Questions -Should a peer cache? And if so, -Which segments?  Illustration (media file with 2 segments) -Caching 90 copies of segment 1 and only 10 copies of segment 2  10 effective copies -Caching 50 copies of segment 1 and 50 copies of segment 2  50 effective copies

25 Index-based Dispersion (cont'd)  IndexDisperse Algorithm (basic idea): -/* Upon getting a request from P y to cache N y segments */ -C  getCluster (P y ) -Compute available (A) and required (D) capacities in cluster C -If A < D P y caches N y segments in a cluster-wide round robin fashion (CWRR) –All values are smoothed averages –Average available capacity in C: –CWRR Example: (10-segment file) P 1 caches 4 segments: 1,2,3,4 P 2 then caches 7 segments: 5,6,7,8,9,10,1

26 Evaluation  Evaluate the performance of the P2P model -Under several client arrival patterns (constant rate, flash crowd, Poisson) and different levels of peer cooperation -Performance measures Overall system capacity, Average waiting time, Average number of served (rejected) requests, and Load on the seeding server  Evaluate the proposed dispersion algorithm -Compare against random dispersion algorithm

27 Simulation: Topology –Large (more than 13,000 nodes) –Hierarchical (Internet-like) –Used GT-ITM and ns-2

28 P2P Model Evaluation  Topology -20 transit domains, 200 stub domains, 2,100 routers, and a total of 11,052 end hosts  Scenario -A seeding server with limited capacity (up to 15 clients) introduces a movie -Clients request the movie according to the simulated arrival pattern -P2PStream protocol is applied  Fixed parameters -Media file of 20 min duration, divided into 20 one-min segments, and recorded at 100 Kb/s (CBR)

29 P2P Model Evaluation (cont'd) Constant rate arrivals: waiting time ─ Average waiting time decreases as the time passes It decreases faster with higher caching percentages

30 P2P Model Evaluation (cont'd) Constant rate arrivals: service rate ─ Capacity is rapidly amplified All requests are satisfied after 250 minutes with 50% caching ─ Q: Given a target arrival rate, what is the appropriate caching%? When is the steady state? Ex.: 2 req/min  30% sufficient, steady state within 5 hours

31 P2P Model Evaluation (cont'd) Constant rate arrivals: rejection rate ─ Rejection rate is decreasing with time No rejections after 250 minutes with 50% caching ─ Longer warm up period is needed for smaller caching percentages

32 P2P Model Evaluation (cont'd) Constant rate arrivals: load on the seeding server ─ The role of the seeding server is diminishing For 50%: After 5 hours, we have 100 concurrent clients (6.7 times original capacity) and none of them is served by the seeding server

33 P2P Model Evaluation (cont'd) Flash crowd arrivals: waiting time ─ Flash crowd arrivals  surge increase in client arrivals ─ Waiting time is zero even during the peak (with 50% caching)

34 P2P Model Evaluation (cont'd) Flash crowd arrivals: service rate ─ All clients are served with 50% caching ─ Smaller caching percentages need longer warm up periods to fully handle the crowd

35 P2P Model Evaluation (cont'd) Flash crowd arrivals: rejection rate ─ No clients turned away with 50% caching

36 P2P Model Evaluation (cont'd) Flash crowd arrivals: load on the seeding server ─ The role of the seeding server is still just seeding During the peak, we have 400 concurrent clients (26.7 times original capacity) and none of them is served by the seeding server (50% caching)

37 Dispersion Algorithm: Evaluation  Topology -100 transit domains, 400 stub domains, 2,400 routes, and a total of 12,021 end hosts Distribute clients over a wider range  more stress on the dispersion algorithm  Compare against a random dispersion algorithm -No other dispersion algorithms fit our model  Comparison criterion -Average number of network hops traversed by the stream  Vary the caching percentage from 5% to 90% -Smaller cache %  more stress on the algorithm

38 Dispersion Algorithm: Evaluation (cont'd) ─ Avg. number of hops: 8.05 hops (random), 6.82 hops (ours)  15.3% savings ─ For a domain with a 6-hop diameter: Random: 23% of the traffic was kept inside the domain Cluster-based: 44% of the traffic was kept inside the domain 5% caching

39 Dispersion Algorithm: Evaluation (cont'd) ─ As the caching percentage increases, the difference decreases; peers cache most of the segments, hence no room for enhancement by the dispersion algorithm 10% caching

40 Overlay Architecture  Peers form an overlay layer, totally decentralized  Need protocols for: searching, joining, leaving, bootstrapping, …, and dispersion  We build on top of one of the existing mechanisms (with some adaptations)  We complement by adding the dispersion algorithm  Appropriate for cooperative (non-commercial) service  (no peer is distinguished from the others to charge or reward!)

41 Existing P2P Networks  Roughly classified into two categories: [Lv et al., ICS’02], [Yang et al., ICDCS’02] -Decentralized Structured (or tightly controlled) +Files are rigidly assigned to specific nodes +Efficient search & guarantee of finding –Lack of partial name and keyword queries Ex.: Chord [Stoica et al., SIGCOMM’01], CAN [Ratnasamy et al., SIGCOMM’01], Pastry [Rowstron et al., Middleware’01] -Decentralized Unstructured (or loosely controlled) +Files can be anywhere +Support of partial name and keyword queries –Inefficient search (some heuristics exist) & no guarantee of finding Ex.: Gnutella

42 Overlay Dispersion  Still the objective is to keep copies as near as possible to clients (within the cluster)  No global information (no index)  Peers are self-motivated (assumed!), so the relevant question is: - Which segments to cache?  Basic Idea: -Cache segments obtained from far away sources more than those obtained from nearby sources  Distance  network hops

43 Overlay Dispersion (cont'd) /* This is peer P y wants to cache N y segments */ For j = 1 to N do dist[j].hop = hops[j] /*hops computed during streaming phase */ dist[j].seg = j Sort dist in decreasing order /*based on hop field */ For j = 1 to N y do Cache dist[j].seg One supplier: hops[j] = diff between initial TTL and TTL of the received packets Multiple suppliers: weighted sum,

44 Conclusions  Presented a new model for on-demand media streaming  Proposed two architectures to realize the model -Index-based and Overlay  Presented dispersion and searching algorithms for both architectures  Through large-scale simulation, we showed that -Our model can handle several types of arrival patterns including flash crowds -Our cluster-based dispersion algorithm reduces the load on the network and outperforms the random algorithm

45 Future Work  Work out the details of the overlay approach  Address the reliability and security challenges  Develop a detailed cost-profit model for the P2P architecture to show its cost effectiveness compared to the conventional approaches  Implement a system prototype and study other performance metrics, e.g., delay, delay jitter, and loss rate  Enhance our proposed algorithms and formally analyze them