an ef fi cient implementation of interactive video-on-demand
Post on 11-Jan-2016
39 Views
Preview:
DESCRIPTION
TRANSCRIPT
An Efficient Implementation of Interactive Video-on-Demand
Steven Carter and Darrell LongUniversity of California, Santa Cruz
Jehan-François PârisUniversity of Houston
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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)
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
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
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
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
)
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)
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 (
%)
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)
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
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
Video Length Distribution
top related