Video On Demand
-
Upload
honorato-avery -
Category
Documents
-
view
31 -
download
1
description
Transcript of Video On Demand
1
Video On Demand
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
2
Video on Demand
One video serverMany video dataMany clientsClient want to watch at any time
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
3
Assumptions
Constant bitrate streamPerfect network transport
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
4
Unicast Solution
One channel per clientNo start-up latencyNo client bufferLow client bandwidthLarge server bandwidth Not scalable
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
5
Multicast Solution
Batching aggregate client requests serve using multicast clients have to wait No client buffer Low client bandwidth
“Scheduling Policies for an On-Demand Video Server
with Batching”
Dan, Sitaram, Shahabuddin, IBM
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
6
Multicast Solution
User-centered approachScheduling data based on user requests
Data-centered approachDon’t care about userJust broadcast popular video
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
7
Multicast Solution
BatchingStaggered Broadcast
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
8
Staggered Broadcast
Video
C0
C1
C2
:
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
9
Staggered Broadcast
2 hour video5 minutes waiting timeNumber of channels =
2 x 60 / 5 = 24
Required bandwidth =
1.5Mbps x 24 = 36Mbps
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
10
Multicast Solution
BatchingStaggered Broadcast
clients have to waitNo client bufferLow client bandwidthHuge server bandwidth
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
11
Multicast Solution
BatchingStaggered BroadcastPeriodic Broadcast
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
12
Periodic Broadcast
Video
C0
C1
C2
:
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
13
Pyramid Broadcast
Video
C0
C1
C2
:
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
14
Pyramid Broadcast
Video
C0
C1
C2
:
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
15
Analysis of Pyramid Broadcast
Notations B : Total available bandwidth Bv : Bandwidth of video
Tv : Total length of each video K : Number of segments per video
Ti : Length of segment i : Factor in geometric series
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
16
Channel Bandwidth
i
i+1 i+1
playback time = Ti
download time = Ti+1Bv/Bi
Download time for segment i+1 needsto be smaller than Ti for it to arrive in time.
D’oh!Just miss it!
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
17
Channel Bandwidth
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
18
= 2
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
19
Start-up Latency
Worst case waiting time =
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
20
Optimal
2.5
T1
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
21
Storage Requirements
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
22
Pyramid Broadcast
Large client bandwidth (KBv)
Huge client buffer (70–80% Tv)
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
23
Permutation-based Pyramid Broadcast
C0
C1
C2
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
24
Channel Bandwidth
i
i+1 i+1
playback time = Ti
download time = Ti+1Bv/Bi
X needs to be smaller than Ti for segment i+1 to arrive in time.
D’oh!Just miss it!
i+1 i+1
X
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
25
Channel Bandwidth
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
26
Client Latency
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
27
Storage Requirement
One channel at a timeCan pause and wait
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
28
Storage Requirement
k-1
k
k
k-1
pause
resume
X
Within time X, betternot consume all data in buffer.
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
29
Storage Requirement
k-1
k
k
k-1
pause
resume
X
Within time X, betternot consume all data in buffer.
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
30
Storage Requirement
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
31
Comparisons
Scheme Storage Server’sBW
Client’sBW
Pyramid 70% KBv 4-5 Bv
Pyramid++ 20% (+p)KBv 2-3 Bv
Carter, Long and Paris “Video on Demand Broadcasting Protocols”
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
32
Pyramid Broadcasting
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
33
Skyscraper BroadcastingObservations:
storage requirement is affected by size of the largest chunk
So, let’s limit the size of the largest chunk!
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
34
Pyramid Skyscraper
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
35
Skyscraper BroadcastingUses series
1 2 2 5 5 12 12 25 25 52 52 … W W W
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
36
Skyscraper Example
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
37
Skyscraper Example
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
38
Comparisons
Scheme Storage Server’sBW
Client’sBW
Pyramid 70% KBv 4-5 Bv
Pyramid++ 20% (+p)KBv 2-3 Bv
Skyscraper
10% KBv 1-2 Bv
Carter, Long and Paris “Video on Demand Broadcasting Protocols”
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
39
Other schemes
Pagoda Broadcasting 1 3 5 15 25 75 125 …
Harmonic BroadcastingEqual segment size, varies bandwidth instead!
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
40
Multicast Solution
BatchingStaggered BroadcastPeriodic Broadcast
Sending rate ≥ playback rateMay need multiple channelsNeed additional client buffer
Need to wait
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
41
Multicast Solution
BatchingStaggered BroadcastPeriodic BroadcastPatching
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
42
Patching
Time
Client Request
mcast
unicast
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
43
Patching
Time
Client Request
Patching Window: W
mcast
mcast
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
44
Grace Patching
if W < Bclient buffer video[W .. end]
30 minutes video1 client arrival per minuteTotal data delivered =
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
45
Scenario 1: B = 15mins30 minutes video1 client arrival per minuteTotal data delivered =
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
46
Scenario 2: B = 5mins
30 minutes video1 client arrival per minuteTotal data delivered =
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
47
Scenario 3: B = 2mins
30 minutes video1 client arrival per minuteTotal data delivered =
NUS.SOC.CS5248-2007Roger Zimmermann (based on slides by Ooi Wei Tsang)
48
Summary
Batching (User Centered)Staggered Broadcast (Data
Centered)
Periodic Broadcast (Data Centered)
Patching (True VOD)