An Ef fi cient Implementation of Interactive Video-on-Demand
description
Transcript of An Ef fi cient Implementation of Interactive Video-on-Demand
![Page 1: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/1.jpg)
An Efficient Implementation of Interactive Video-on-Demand
Steven Carter and Darrell LongUniversity of California, Santa Cruz
Jehan-François PârisUniversity of Houston
![Page 2: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/2.jpg)
Why Video-on-Demand? Increased customer convenience
Few people enjoy returning video tapes Even fewer people enjoy paying late fees
Improved selection of videos Current pay-per-view provides only a small selection
of popular videos
Savings in time and resources It takes time and fuel to drive to the video rental store
![Page 3: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/3.jpg)
Why Now? Technology becoming available
Processors are inexpensive Storage is nearly free ($200 for 40GB) Fast networking is seeing wide deployment
Consider the success of Tivo Records live television using MPEG to disk Provides interactive access to recorded
programs
![Page 4: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/4.jpg)
Why Interactive? It’s hard! It’s more expensive!
… but it’s what people expect
They won’t give up functionality they have come to expect They’d like to pause to make microwave popcorn They’d like to rewind to see the play again They’d like to be able to fast forward past the boring
parts
![Page 5: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/5.jpg)
Related Research Conventional video-on-demand (VoD)
Requires one stream per client
Patching An independently developed version of stream
tapping
Batching Group the requests of several clients together
Various near video-on-demand (NVoD) schemes
![Page 6: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/6.jpg)
Key Observation For videos of non-trivial length, several
clients will be viewing portions of that video One client watching a 120 minute video and a
second client begins watching the same video 10 minutes later
The server needs only send data for the non-overlapping portion The potential for savings is enormous
![Page 7: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/7.jpg)
Assumptions A set-top-box with:
A fast network connection A few gigabytes of local storage A modest processor
Keep in mind that set top boxes with these features already exist
![Page 8: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/8.jpg)
Our Solution Stream Tapping uses multicast to tap in existing
video streams Server load is the primary difficult in making
VOD a reality Stream Tapping reduces server load by allowing
clients to tap into video streams created for other clients
Cost per client is dramatically reduced
Client waiting time is also reduced
![Page 9: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/9.jpg)
Stream Types
A
B
C
0 2 3 4
Str
eam
Time (since start of complete stream A)
b
c c
b
Full tap
Complete stream
Partial tap
![Page 10: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/10.jpg)
Complete Streams Start at a particular position in a video and
transmit the remainder of the video For non-interactive Stream Tapping, the
starting position is the beginning of the video Used primarily by the first client in a group
to view the video
![Page 11: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/11.jpg)
Stream Types
A
B
C
0 2 3 4
Str
eam
Time (since start of complete stream A)
b
c c
b
Full tap
Complete stream
Partial tap
![Page 12: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/12.jpg)
Full Tap Streams Can be used if the delay () is less than the
buffer size () The full tap stream transmits the video
from time 0 to The complete stream is tapped and written
to the buffer while the full tap stream is played
![Page 13: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/13.jpg)
Stream Types
A
B
C
0 2 3 4
Str
eam
Time (since start of complete stream A)
b
c c
b
Full tap
Complete stream
Partial tap
![Page 14: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/14.jpg)
Partial Tap Streams Can be used when a complete stream is available
but Note that given current technology, will be very
large The client will tap the complete stream for units
while simultaneously viewing the first from a partial tap stream
Subsequently, partial tap streams of length are used for the client to catch up to the complete stream
![Page 15: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/15.jpg)
Stream Types
A
B
C
0 2 3 4
Str
eam
Time (since start of complete stream A)
b
c c
b
Full tap
Complete stream
Partial tap
![Page 16: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/16.jpg)
Tapping Options Extra Tapping
Allows the client to tap data from any active video stream active, not just the complete stream of the video group
Decreases server load by decreasing the length of full tap streams
Stream Stacking If the server has streams available, the client can combine
them to receive data at rate higher than the nominal rate Allows the server to service stream more quickly, which
allows new streams to be scheduled
![Page 17: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/17.jpg)
Interactive Stream Tapping When an interaction begins, Stream Tapping
deallocates resources associated with a client If the client was the only one using a stream, then the
stream is terminated Stream Tapping determines the resources needed for
an interaction, and allocates an interaction stream Note: for rewind, the client’s buffer can be used
When the interaction is complete, the client is merged into a video group (tapping existing streams if available)
![Page 18: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/18.jpg)
Contingency Streams These are streams that are held in reserve
for interaction The pool of these streams can be managed
using high and low watermarks for hysteresis
Having such a reserve of streams is essential to avoid blocking
![Page 19: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/19.jpg)
Simulation Model Stream Tapping is too complex to model
analytically, so we used discrete event simulation The length of the videos was derived from
empirical data and a gaussian with mean 102 minutes provided the best fit
The popularity of videos was modeled using a Zipf-like distribution, which is the distribution used in most VoD studies
![Page 20: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/20.jpg)
Comparison with Conventional Systems
0
100
200
300
400
500
600
700
0 50 100 150 200 250 300 350 400
Arrival Rate
Ban
dw
idth
Conventional System
Staggered Broadcasting (2 min)
Staggered Broadcasting (5 min)
Stream Tapping
![Page 21: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/21.jpg)
Contingency Streams versus Start-up Latency
0
5
10
15
20
25
30
35
40
45
0 10 20 30 40 50 60 70 80 90 100
Contingency Streams
Av
era
ge
Sta
rt-u
p L
ate
nc
y (
min
)
![Page 22: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/22.jpg)
Contingency Streams versus Resume Latency
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
0 10 20 30 40 50 60 70 80 90 100
Contingency Streams
Ave
rag
e S
tart
-up
Lat
ency
(m
in)
![Page 23: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/23.jpg)
Contingency Streams versus Blocking Probability
0
10
20
30
40
50
60
70
80
0 10 20 30 40 50 60 70 80
Contingency Streams
Inte
racti
on
Blo
ckin
g P
rob
ab
ilit
y (
%)
![Page 24: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/24.jpg)
Effect of Client Buffer Size
0
20
40
60
80
100
120
140
0 10 20 30 40 50 60
STB Buffer Size (min)
Ac
era
ge
Sta
rt-u
p L
ate
nc
y (m
in)
![Page 25: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/25.jpg)
Effect of Tapping Options
0
10
20
30
40
50
60
70
80
0 10 20 30 40 50 60
STB Buffer Size (min)
Av
era
ge
Sta
rt-u
p L
ate
nc
y (
min
)
NeitherStream Stacking OnlyExtra TappingBoth
![Page 26: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/26.jpg)
Conclusions Stream Tapping has been shown to work
well in the interactive environment We have shown that VCR-like controls are
possible Previous work has ignored them or only
provided course-grained control The use of storage in the STB is an
enabling technology
![Page 27: An Ef fi cient Implementation of Interactive Video-on-Demand](https://reader031.fdocuments.in/reader031/viewer/2022020417/56814411550346895db0ae69/html5/thumbnails/27.jpg)
Video Length Distribution