Upload
ishana
View
36
Download
0
Embed Size (px)
DESCRIPTION
It is not Beauty I Demand – George Darley. Video on Demand. One video server Many video data Many clients Client want to watch at any time. Assumptions. Constant bitrate stream Perfect network transport. Unicast Solution. One channel per client No start-up latency No client buffer - PowerPoint PPT Presentation
Citation preview
1
It is not Beauty I Demand – George Darley
NUS.SOC.CS5248OOI WEI TSANG
2
Video on Demand
One video serverMany video dataMany clientsClient want to watch at any time
NUS.SOC.CS5248OOI WEI TSANG
3
Assumptions
Constant bitrate streamPerfect network transport
NUS.SOC.CS5248OOI WEI TSANG
4
Unicast Solution
One channel per clientNo start-up latencyNo client bufferLow client bandwidthLarge server bandwidth Not scalable
NUS.SOC.CS5248OOI 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.CS5248OOI 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.CS5248OOI WEI TSANG
7
Multicast Solution
BatchingStaggered Broadcast
NUS.SOC.CS5248OOI WEI TSANG
8
Staggered Broadcast
Video
C0
C1
C2
:
NUS.SOC.CS5248OOI 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.CS5248OOI WEI TSANG
10
Multicast Solution
BatchingStaggered Broadcast
clients have to waitNo client bufferLow client bandwidthHuge server bandwidth
NUS.SOC.CS5248OOI WEI TSANG
11
Multicast Solution
BatchingStaggered BroadcastPeriodic Broadcast
NUS.SOC.CS5248OOI WEI TSANG
12
Periodic Broadcast
Video
C0
C1
C2
:
NUS.SOC.CS5248OOI WEI TSANG
13
Pyramid Broadcast
Video
C0
C1
C2
:
NUS.SOC.CS5248OOI WEI TSANG
14
Pyramid Broadcast
Video 2
C0
C1
C2
:
Video 1
NUS.SOC.CS5248OOI WEI TSANG
15
Pyramid Broadcast
Video
C0
C1
C2
:
NUS.SOC.CS5248OOI WEI TSANG
16
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.CS5248OOI WEI TSANG
17
Channel Bandwidth
i
i+1 i+1
playback time = Ti
download time = Ti+1Bv/Bi
Download time for Ti+1 needs to be smaller than Ti for segment i+1 to arrive in time.
D’oh!Just miss it!
NUS.SOC.CS5248OOI WEI TSANG
18
Channel Bandwidth
since
1
11
1
1
vi
iivi
i
vii
KBKBB
TTBB
B
BTT
NUS.SOC.CS5248OOI WEI TSANG
19
= 2
NUS.SOC.CS5248OOI WEI TSANG
20
Start-up Latency
Worst case waiting time = T1
1
)1(
1
)1( 11
vB
B
K
v
TTT
NUS.SOC.CS5248OOI WEI TSANG
21
Optimal
2.5
T1
NUS.SOC.CS5248OOI WEI TSANG
22
Storage Requirements
~ (TK + TK-1)Bv
NUS.SOC.CS5248OOI WEI TSANG
23
Pyramid Broadcast
Large client bandwidth (KBv)
Huge client buffer (70–80% Tv)
NUS.SOC.CS5248OOI WEI TSANG
24
Permutation-based Pyramid Broadcast
C0
C1
C2
NUS.SOC.CS5248OOI WEI TSANG
25
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.CS5248OOI WEI TSANG
26
Channel Bandwidth
)(
, and since
11
1
1
1
v
iii
i
vi
i
vii
KBpB
KBpBTT
pB
BT
B
BTT
p : number of sub-channels per segments
NUS.SOC.CS5248OOI WEI TSANG
27
Client Latency
Just T1/p
NUS.SOC.CS5248OOI WEI TSANG
28
Storage Requirement
One channel at a timeCan pause and wait
NUS.SOC.CS5248OOI 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.CS5248OOI WEI TSANG
30
Storage Requirement
Let buffer content be of size MTime to consume the buffer = M/Bv
pα
)BT(T M
p
p)B(α B
B
M
B
BT
B
BT
p
vK-K
vi
vi
vi
i
vi
1
1
know we
1
NUS.SOC.CS5248OOI 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.CS5248OOI WEI TSANG
32
Pyramid Broadcasting
NUS.SOC.CS5248OOI 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.CS5248OOI WEI TSANG
34
Pyramid Skyscraper
NUS.SOC.CS5248OOI WEI TSANG
35
Skyscraper BroadcastingUses series
1 2 2 5 5 12 12 25 25 52 52 … W W W
NUS.SOC.CS5248OOI WEI TSANG
36
Skyscraper Example
NUS.SOC.CS5248OOI WEI TSANG
37
Skyscraper Example
NUS.SOC.CS5248OOI 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.CS5248OOI WEI TSANG
39
Other schemes
Pagoda Broadcasting 1 3 5 15 25 75 125 …
Harmonic BroadcastingEqual segment size, varies bandwidth instead!
NUS.SOC.CS5248OOI WEI TSANG
40
Multicast Solution
BatchingStaggered BroadcastPeriodic Broadcast
Sending rate ≥ playback rateMay need multiple channelsNeed additional client bufferNeed to wait
NUS.SOC.CS5248OOI WEI TSANG
41
Multicast Solution
BatchingStaggered BroadcastPeriodic BroadcastPatching
NUS.SOC.CS5248OOI WEI TSANG
42
Patching
Time
Client Request
mcast
unicast
NUS.SOC.CS5248OOI WEI TSANG
43
Patching
Time
Client Request
Patching Window: W
mcast
mcast
NUS.SOC.CS5248OOI WEI TSANG
44
Grace Patching
if W < Bclient buffer video[W .. end]unicast video[0 .. W]
elsemcast video[0 .. end]
NUS.SOC.CS5248OOI WEI TSANG
45
Example
30 minutes video 15 minutes buffer One request per minute
465.271.225
NUS.SOC.CS5248OOI WEI TSANG
46
Example
What if patching window = 5 min?
NUS.SOC.CS5248OOI WEI TSANG
47
Supporting VCR OperationsPauseFast ForwardRewindForward SearchBackward SearchSlow Mo
NUS.SOC.CS5248OOI WEI TSANG
48
Two Types of OperationsContinuous (all)Discrete Time (pause,ff,rwd)
NUS.SOC.CS5248OOI WEI TSANG
49
Discrete Time
Easier to implementSimple in staggered broadcasting
NUS.SOC.CS5248OOI WEI TSANG
50
Continuous Time
Requires buffering of future frames and previous frames
Abram-Profeta and K.G. Shin, "Providing Unrestricted VCR Functions in Multicast Video-on-Demand Servers,"
NUS.SOC.CS5248OOI WEI TSANG
51
Normal Playback
Before
After
Buffer
Playout Point
Oldest Frame Newest Frame
Channel U
Channel U
NUS.SOC.CS5248OOI WEI TSANG
52
Pause
Before
AfterChannel U
Channel U
NUS.SOC.CS5248OOI WEI TSANG
53
Pause Too Long!
Before
AfterChannel U
Channel U
NUS.SOC.CS5248OOI WEI TSANG
54
Channel I
Before
AfterChannel I
Channel U
NUS.SOC.CS5248OOI WEI TSANG
55
FF
Before
AfterChannel U
Channel U
NUS.SOC.CS5248OOI WEI TSANG
56
FF Too Far!
Before
AfterChannel I
Channel U
NUS.SOC.CS5248OOI WEI TSANG
57
RWD
Before
AfterChannel U
Channel U
NUS.SOC.CS5248OOI WEI TSANG
58
RWD Too Much!
Before
AfterChannel I
Channel U
NUS.SOC.CS5248OOI WEI TSANG
59
Forward Search
Before
AfterChannel U
Channel U
NUS.SOC.CS5248OOI WEI TSANG
60
Forward Search Too Far!Before
AfterChannel I
Channel U
NUS.SOC.CS5248OOI WEI TSANG
61
Backward Search
Before
AfterChannel U
Channel U
NUS.SOC.CS5248OOI WEI TSANG
62
Backward Search
Before
AfterChannel I
Channel U
Prefetched at Reverse Order, at Faster Rate
NUS.SOC.CS5248OOI WEI TSANG
63
Slow Motion
Before
AfterChannel U
Channel U
NUS.SOC.CS5248OOI WEI TSANG
64
Slow Motion
Before
AfterChannel I
Channel U
NUS.SOC.CS5248OOI WEI TSANG
65
The Aftermath
When playback resumes, what to do with Channel I?
Answer: Merge back with Channel U
NUS.SOC.CS5248OOI WEI TSANG
66
Merging Operation
Find a target channel whose play point is ”not too far” ahead
NUS.SOC.CS5248OOI WEI TSANG
67
Merging: Case 1
Before
Channel U
Channel I
NUS.SOC.CS5248OOI WEI TSANG
68
Merging: Case 1
During
Channel U
NUS.SOC.CS5248OOI WEI TSANG
69
Merging: Case 1
After
Channel U
NUS.SOC.CS5248OOI WEI TSANG
70
Merging: Case 2
Before
Channel U
Channel I
NUS.SOC.CS5248OOI WEI TSANG
71
Merging: Case 2
Before
Channel U
Channel I
NUS.SOC.CS5248OOI WEI TSANG
72
Merging: Case 2
During
Channel U
Channel I
NUS.SOC.CS5248OOI WEI TSANG
73
Merging: Case 2
During
Channel U
Channel I
NUS.SOC.CS5248OOI WEI TSANG
74
Merging: Case 2
After
Channel U
NUS.SOC.CS5248OOI WEI TSANG
75
Summary
VoD broadcast protocolsbatchingperiodic broadcastpatching
Supporting VCR functionalities