1 push-to-peer video-on-demand system. 2 abstract content is proactively push to peers, and...
TRANSCRIPT
![Page 1: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/1.jpg)
1
Push-to-Peer Video-on-Demand System
![Page 2: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/2.jpg)
2
Abstract
• Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers.
• Content placement and associated pull policies that allow optimal use of uplink bandwidth.
• Performance analysis of such policies in controlled environments such ad DSL networks under ISP control.
• A distributed load balancing strategy for selection of serving peers.
![Page 3: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/3.jpg)
3
Outline
• Introduction• Network Setting and Push-to Peer Operation• Data Placement and Pull Policies• Randomized Job Placement• Conclusion
![Page 4: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/4.jpg)
4
Introduction
![Page 5: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/5.jpg)
5
Introduction
• Pull-based system design: a peer pulls content only if the content is of interest.
• Our objective is to design a Push-to-Peer VoD System.• Video is first pushed to peers.• This first step is performed under provider or content-
owner control, can be performed during times of low network utilization.
• A peer may store content that it itself has not interest in, unlike traditional pull-only P2P system.
![Page 6: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/6.jpg)
6
Introduction
• This system is applicable to cases in which peers are long-lived and willing to have content proactively pushed to them.
• We consider the design:– In a network of long-lived peers where upstream bandwidth.
– Peer storage are the primary limiting resources.
– Constant available bandwidth among the peers.
![Page 7: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/7.jpg)
7
Network Setting and Push-to Peer Operation
![Page 8: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/8.jpg)
8
Network Setting and Push-to Peer Operation
• Describe the network setting for this system.• Overview the push and pull phases of operation.• Describe our video playback model.
![Page 9: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/9.jpg)
9
Three Components
• The Push-to-Peer system comprises a content server, a control server and boxes at the user premises (STBs).
• User Premise: STBs, coutomers.• Content Server:
– located in the content provider’s premise,
– push content to boxes.
• Control Server: – located in the content provider’s premise,
– provides a directory service to boxes,
– management and control functionalities.
![Page 10: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/10.jpg)
10
Two Phases
• Content distribution proceeds in two phase:• Push Phase:
– Content server push content to each boxes,
– This occurring periodically:
• when bandwidth is plentiful,
• in background, low priority mode.
– After push content, content server then disconnect, does not provide additional content.
– What portions of which videos should be placed on which boxes?
![Page 11: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/11.jpg)
11
Two Phases
• Pull Phase:– Boxes respond to user command to play content.
– Boxes don’t have all of the needed content at the end of the push phase.
– We don’t consider the possibility of the boxes proactively push content among themselves.
![Page 12: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/12.jpg)
12
Assumption
• Assumption about DSL network and the boxes.– Upstream and downstream bandwidth
– Peer storage
– Peer homogeneity
![Page 13: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/13.jpg)
13
Upstream and downstream bandwidth
• The upstream bandwidth is a constrained resource, most likely smaller than the video encoding, playback rate.
• When a peer uploads video to N different peers, the upstream bandwidth is equally shared among those peers.
• Video is transferred reliably.• Downstream bandwidth is sufficiently large that it is
never the bottleneck when download video.• The downstream bandwidth is larger than the video
encoding, playback rate.
![Page 14: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/14.jpg)
14
Peer storage
• Boxes have hard-disk that can store content.• The disk may also store movie prefixes, that are used
to decrease startup delay.• We don’t consider the play-out buffer.
![Page 15: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/15.jpg)
15
Peer homogeneity
• All peers have the same upstream bandwidth and the same amount of hard disk storage.
![Page 16: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/16.jpg)
16
Video Playback Model
• Each movie is chopped into windows of contiguous data of size W.
• A full window needs to be available to the user before it can be played.
• A user can play such a window once it is available, without waiting for subsequent data.
• The window size is tunable parameter.• The window is a unit of random access to a video.• The window allows us to support VCR optionatios.• Each window is further divide into smaller data block.
![Page 17: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/17.jpg)
17
Video Playback Model
• Blocking Model: when a new request cannot be served, the request is dropped.
• Waiting Model: the request is enqueued.
![Page 18: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/18.jpg)
18
Data Placement and Pull Policies
![Page 19: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/19.jpg)
19
Data Placement and Pull Policies
• Full-Striping Data Placement• Code-Based Data Placement
• We assume that there M boxes.• Each window of a video is W.
![Page 20: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/20.jpg)
Full-Striping Data Placement
• Stripes each window of a movie over all M boxes.• Every window is divided into M blocks, each of size is
W/M.• Each block is pushed to only one box.• Each box stores a distinct block of a window.• A full window is reconstructed at a box by
concurrently downloading M-1 distinct blocks from the other M-1 boxes.
• A download request generates M-1 sub-request.
20
![Page 21: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/21.jpg)
21
Full-Striping Data Placement
![Page 22: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/22.jpg)
Sub-Request Limited
• The number of sub-requests that a box can serve simultaneously.
• Renc: video encoding, playback rate.• Renc/M: receive blocks from each of the M-1 target
boxes.• We should limit the Kmax distinct sub-request:
– Kmax = BupM / Renc
22
![Page 23: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/23.jpg)
23
Code-Based Data Placement• A box can serve is bounded by y, and y < M-1.
• This scheme applies rateless coding.
• This scheme divides each window into k source symbols, and generate
– Ck = (M * (1 + e) / (y + 1)) / k coded symbols.
• C is the expansion ratio, and C > 1.
• For each window, the Ck symbols are evenly distributed to all M boxes such that each box keeps Ck/M distinct symbols.
• A viewer can reconstruct a window of a movie by concurrently download any Cky/M distinct symbols from an arbitrary set of y boxes.
• Unlike full striping, only y boxes are needed to download the video.
![Page 24: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/24.jpg)
Randomized Job Placement
24
![Page 25: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/25.jpg)
Randomized Job Placement
• The decision where to place and serve the sub-request of a job.
• Propose a distributed load balance strategy for the selection of serving peers.
• The strategy we consider for initial job placement is as follow:
25
![Page 26: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/26.jpg)
Randomized Job Placement
• When a download request is generated, d distinct boxes are randomly chosen from the overall M boxes.
• The load, measured in terms of fair bandwidth share that a new job would get, is measured on all probed boxes.
• Finally, sub-request are placed on the y least loaded boxes among the d probed boxes.
• Provided the each of the y sub-request gets a sufficiently large fair bandwidth share.
• If any of the loaded boxes cannot guarantee such a fair share, then the request is dropped.
26
![Page 27: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/27.jpg)
Conclusion
27
![Page 28: 1 Push-to-Peer Video-on-Demand System. 2 Abstract Content is proactively push to peers, and persistently stored before the actual peer-to-peer transfers](https://reader033.vdocuments.us/reader033/viewer/2022042822/5697bf9c1a28abf838c937b9/html5/thumbnails/28.jpg)
Conclusion
• We proposed a P2P approach, and show the theoretical upper performance bounds that are achieved if all resource of all peers are perfectly pooled.
• However, perfect pooling in practice is not feasible.• Therefore, we proposed a randomized job placement
algorithm.• We plan to do a more systematic analysis of placement
schemes that take into account movie popularity.
28