Download presentation
Presentation is loading. Please wait.
1
Understanding Mesh-based Peer-to-Peer Streaming Nazanin Magharei Reza Rejaie
2
Motivation & Related works P2P overlays support one-to-many multimedia streaming applications without any special network support P2P streaming mechanism goals are: Maximizing delivered quality Achieving scalability Accommodating heterogeneity and asymmetry of peers’ bandwidth Providing resiliency despite peers’ dynamic Common approach is tree-based overlay construction with push-based content delivery Delivered quality is limited to each peer Leaf peers’ bandwidth can not be utilized
3
Mesh-based streaming Mesh-based overlay construction with pull- based content delivery Inspired by file-swarming mechanisms (e.g. BitTorrent( Distribute pieces of a file among different peers Most peers contribute their outgoing bandwidth Scalable Resilient to peers’ dynamic
4
Challenges & Goals Problem: Incorporating swarm-like content delivery mechanism to support live media streaming to a large number of dynamic peers Challenges: In-time requirement of content delivery Limited availability of future content Goals: Effectively utilizing outgoing bandwidth of all participating peers Maximizing delivered quality to each peers Minimizing buffer (playback delay from source) In this paper we try to answer these fundamental questions: How do the key properties of the overlay (e.g. degree) affect the delivered quality to individual peers? What is the global flow pattern of content over mesh-based overlay to achieve system goals?
5
Mesh-based P2P Streaming Overview Two key components: Overlay Construction Randomly connected and directed mesh Each peer has multiple parents and multiple children Simple Resilient to churn Content Delivery Push reporting by parents Periodically pull requesting by child peers New segment of length generated by source every sec. Peers delay their playout time by at least behind source MDC stream to deliver maximum quality to each peer based on its available bandwidth 2 1 3 6 7 5 4 12 13 9 10 11 8 Source
6
Performance Bottleneck To separate causes of low quality, define two performance bottlenecks: Bandwidth Bottleneck Avg. BW for a connection between parent p and child c: MIN (outbw p /outdeg p, inbw c /indeg c ) If these two ratios are not equal, one of them causes BW bottleneck. Condition : outbw p /outdeg p = inbw c /indeg c = bwpf All connections in the overlay must have roughly the same bandwidth. Content Bottleneck Useful content among some parents of a given peer is not sufficient to fully utilize its available bandwidth c p outdeg p indeg c
7
213 6754 [t 0,t 0 + ][t 0 t 0 +2 ][t 0 t 0 +3 ] Content Bottleneck cont, Data units = bwpf * (interval) Each parent peer should have at least one useful data unit per Interval for each of its child peer Unique data units of each segment must be delivered to peers within intervals after its generation time by source Buffer delay Goal is to: minimize content bottleneck maximize quality minimize minimize playback delay To achieve these goals content delivery should have two phases: Diffusion swarm [t0]
8
Organized view of the overlay mesh Peers organized into levels, based on their shortest distance from source Each peer with degree deg in level n has one parent in level n-1 (diffusion parent) and deg-1 parents in the same or lower level (swarming parents) Peer 13 in level 3 has one parent 7 in level 2 the rest in level 3 Population of levels increases by going down into levels : pop(n) <= deg src * deg (n-1) Level 1 Level 2 Level 3 2 13 6 75 4 12 13 9 10 11 8 Source
9
Content Delivery: Diffusion Diffusion phase Fastest time for pulling all data units of a segment from source to the lowest level = depth sec All connections from diffusion parents should be exclusively used for diffusion of new data units Each subtree rooted at level 1 peers receives the same data unit which we called diffusion subtree After depth intervals each peer has one data units of the segment 2 13 6 75 4 12 13 9 10 11 8 Source
10
Content Delivery: Swarm Swarming phase Pulling the missing data units of the segment from swarming parents Only a swarming parent in a different diffusion subtree can rapidly provide a new useful data units Swarming parent 11 for child 12 are at the same diffusion subtree ! Even larger for parent 8 to child 1, 3 swarming intervals Swarming phase for a segment may take more than 1 interval depends on the location of swarming parents. K min = minimum number of swarming intervals for which 90% of peers quality > 90% K min = min – depth 2 13 6 75 4 12 13 9 10 11 8 Source
11
Key overlay property Goal : maximizing quality while minimizing delay Increasing degree can help to achieve goals by : reducing depth and increasing diversity of swarm connections But increases observed loss rate thus decreases throughput of each connection Limited degree range for a bandwidth? What is a good degree for a peer with certain bandwidth? That is what is a good bwpf ?
12
Evaluation K min is fixed =3 Very low degree, decrease in diversity of swarm parents increase in swarming interval Very high degree, increase in loss rate increase in swarming interval Higher bw scenario, higher bwpf ratio There is a sweet range of bwpf values
13
Results Depth gradually increases Swarming interval K min does not change with peer population as number of diffusion Subtrees are fixed so the diversity is fixed scales well Increasing degree, increases transmission rate
14
Conclusions future works We presented a global pattern of content delivery that is able to effectively utilize outgoing bw of peers while maximizing delivered quality with minimum buffer requirement There is a sweet range of peer degree (bwpf) that maximizes delivered quality to individual peers with minimum buffer. Future work: Conducting a comprehensive evaluation of P2P mesh- based streaming protocol. Heterogeneity in peer properties (e.g. access link bandwidth) Peer behavior (e.g. packet scheduling strategy) Churn
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.