streaming stored layered video in the internet
TRANSCRIPT
![Page 1: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/1.jpg)
Streaming Stored Layered Video in the Internet
Keith Ross(joint work with Philippe De Cuetos, Despina Saparilla, Jussi
Kangasharju, Martin Reisslein)
Institut EURECOMSophia Antipolis, France
![Page 2: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/2.jpg)
Streaming Stored Video Streaming stored video is becoming increasingly widespread in the Internet
High-speed access technologies will permit users to stream video at higher rates
User access rates are highly heterogeneous.
The Internet is a best-effort network without QoS guarantees.
2RHDM 2001
![Page 3: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/3.jpg)
Issues to be ExaminedPrefetching
Layered video
Multiple layers or multiple versions?
How to cache layered video
Interactive audio streaming (Wimba startup)
Assume: CBR video; abundant client storage
3RHDM 2001
![Page 4: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/4.jpg)
References
4RHDM 2001
D. Saparilla and K.W. Ross, Optimal Streaming of Layered Encoded Video, Infocom 2000, Tel Aviv.
D. Saparilla and K.W. Rooss, Streaming Stored Continuous Media over Fair-Share Bandwidth, NOSSDAV 2000, Chapel Hill, 2000.
P. Decuetos, D. Saparilla and K.W. Ross, Adaptive Streaming of Stored Video in a TCP-Friendly Context : Multiple Versions or Multiple Layers, International Packet Video Workshop, Korea, May 2001 J.Kangasharju, F. Hartanto, M. Reisslein and K.W. Ross, Distributing Layered Encoded Video through Caches, IEEE Infocom 2001, Anchorage.
Wimba: http://www.wimba.com
![Page 5: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/5.jpg)
Outline of the Talk
I Streaming Stored Layered Video over Fair-Share Bandwidth
II Layers vs. Switching Versions over Fair-Share Bandwidth (Philippe)
III Layered Video through Caches
IV Interactive Audio Streaming (Wimba startup)
5RHDM 2001
![Page 6: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/6.jpg)
Design Principle: TCP BandwidthA TCP connection roughly gets fair-share bandwidth
This bandwidth varies throughout connection.Changes in number of streams.Changes in traffic generated by individual streams Route changes.
Assumption: Our video streaming application gets TCP bandwidth:
sent over HTTP/TCPTCP-friendly connection
6RHDM 2001
![Page 7: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/7.jpg)
TCP Bandwidth
Averaged over 10 secondintervals
Averaged over 100 secondintervals
7RHDM 2001
![Page 8: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/8.jpg)
Streaming Non-Layered CBR Video (1)
Consider three transmission schemes:
Full prefetching: transmit at full available rate
No prefetching: transmit at min{consumption, available rate}
Partial prefetching: prefetch over short intervals
Playback delay of four seconds; video 60 minutes long.
8RHDM 2001
![Page 9: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/9.jpg)
Streaming Non-Layered CBR Video (2)
• Maximum rate for no loss with full prefetching: 70% of average available rate• Maximum buffer for no loss with full prefetching: 15 minutes
Avg availablebandwidth = 1.1 Mbps
9RHDM 2001
![Page 10: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/10.jpg)
What we learned so far:Prefetching is essential with TCP bandwidth.
Need to prefetch minutes into the future.
Rate adaptation should be considered:multiple versionsmultiple layerson-the-fly compression
10RHDM 2001
![Page 11: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/11.jpg)
Optimal Streaming for Layered Video(Infocom 2000)
base and enhancement layer
decoding constraint: enhancement layer information can only be used when the corresponding base layer information is available
Goal: Design streaming policies that maximize the playback quality in a variable bandwidth environment.
11RHDM 2001
![Page 12: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/12.jpg)
Layered Streaming Model
)()( tXtbπ
)()( tXteπ
)(tX
Yb(t)
Ye(t)
rb
re
CM Server Client withprefetch buffers
Base Layer
Enhancement Layer
X(t) = fair-share bandwidth available to the stream at time tstochastic process whose statistical characteristics are
unknown a priorirb, re = encoded rates of base layer and enhancement
layer Yb(t), Ye(t) = prefetch buffer contents at time t
12RHDM 2001
![Page 13: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/13.jpg)
Streaming Policiesπb(t) can depend on the current and past history of the system, including on X(t), Yb(t), and Ye(t)Low-risk policy: πb(t)=1High-risk optimistic policy:
Two fluid queues:)()( tXtbπ
)()( tXteπ
rb
re
Yb(t)
Ye(t)
eb
bb rr
rt+
== απ ˆ)(
13RHDM 2001
![Page 14: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/14.jpg)
Analysis
Initial playback delay ∆ seconds.Delay between server and client is zero. Examine two cases:
Infinite-Length Video, X(t) stationary, λ =E[X(t)]
Finite-Length Video of duration Tseconds.
14RHDM 2001
![Page 15: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/15.jpg)
Infinite Video Duration
Fraction of Traffic LostBase-layer loss:
Enhancement-layer loss:
where H(t) is the consumption rate of enhancement-layer data at time t.
Tr
dttYtXttrP
b
T
tbbb
Tb
∫=
+
∞→
=−= 0
)0)((1)]()([
limπ
π
,)]([
0lim Tr
dttHtrP
e
T
te
Te
∫=
+
∞→
−=π
15RHDM 2001
![Page 16: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/16.jpg)
Partial-loss ModelFraction of enhancement-layer traffic consumed can be as much as the fraction of base-layer traffic consumed:
⎪⎪⎪⎪
⎩
⎪⎪⎪⎪
⎨
⎧
==⎭⎬⎫
⎩⎨⎧
>=
=>>>
=
0)(,0)(when)()(),()(min
0)(,0)(when)()(0)(,0)(when)()(
0)(,0)(when
)(
tYtYr
tXtrtXt
tYtYr
tXtr
tYtYtXttYtYr
tH
ebb
bee
ebb
be
ebe
ebe
ππ
ππ
16RHDM 2001
![Page 17: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/17.jpg)
Set of Feasible Loss Probabilities: Infinite Length
+−−
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
erbrλ
1
erbr +− λ1
⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
+−erbr
λ1+
−⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
brλ1
L
1Pe
eb
b
rrr+
=α̂
Pb1
Theorem: Each point on L can be achieved by some static policy
17RHDM 2001
![Page 18: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/18.jpg)
Finite Video DurationOptimization problem:
Let Tbπ, Te
π be the times at which streaming of each layer is complete
Lemma 1:Lemma 2:
Theorem:
ceb TTT == αα ˆˆ
.policy any for },max{ πTTT ceb ≤ππ
( ) ( )[ ]πee
πbb PdPdJ −+−= 11Emax ππ
. when for optimal is ˆpolicy Theb
e
b
e
eb
b
rr
ddJ
rrr
≥+
= πα
18RHDM 2001
![Page 19: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/19.jpg)
Heuristics for Finite-Length VideoWhen static policies can perform poorly.
Static threshold policy:
Must determine qthres .
⎪⎩
⎪⎨
⎧
−>≥<
=)()(when0
)(whenˆ)(when1
)(tTrtY
qtYqtY
t
bb
thresb
thresb
b απ
b
e
b
e
rr
dd
<
19RHDM 2001
![Page 20: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/20.jpg)
Threshold Policy Results
• trace results: consumption rate = avg. bandwidth
20RHDM 2001
![Page 21: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/21.jpg)
What we have learned:Infinite-length video:
Fixed fraction of bandwidth to base layer is optimal
Finite-length video:static policy performs poorlyneed to dynamically change policy based on prefetchbuffer contents
Note: so far have only considered time-independent thresholds
21RHDM 2001
![Page 22: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/22.jpg)
Dynamic Threshold Policies[NOSSDAV 2000]
Now going to develop a heuristic for setting the thresholds as a function of time.
Heuristic Philosophy:try to always render the base layerrender the enhancement layer for as much as possibleavoid frequent fluctuations in quality
22RHDM 2001
![Page 23: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/23.jpg)
Dynamic Threshold Heuristics (1)
State 1send only base
State 2send both
Add enhancement layer απ ˆ)( =tb
1)( =tbπDrop enhancement layer
Monitor client buffer content in each layerEstimate future average bandwidth (using past observations)Add enhancement layer if base layer can still be reliably delivered and if enhancement layer can be kept for a certain period of time
23RHDM 2001
![Page 24: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/24.jpg)
Dynamic Threshold Heuristic (2)
Threshold at time s for adding enhancement layer is such that base-layer buffer will not starve for the next C seconds:
To avoid rapid quality fluctuations, introduce a threshold for buffered enhancement layer data:
( ))(ˆ)( sXrCsq avgbthres ⋅−⋅= α
( ))()ˆ1()( sXrCsq avgethres ⋅−−⋅′=′ α
24RHDM 2001
![Page 25: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/25.jpg)
Dynamic Threshold Heuristic (3)
State 1 State 2απ ˆ)( =tb
)()()()( tqtYandtqtY thresethresb ′≥≥
)()( tqtY thresb <
1)( =tbπ
25RHDM 2001
![Page 26: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/26.jpg)
Static Threshold vs. Dynamic Threshold Heuristic
static threshold policies dynamic threshold policies
Dynamic threshold heuristic results in fewer quality fluctuations with the same high-quality viewing time.
26RHDM 2001
![Page 27: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/27.jpg)
What we just learned:Measurement-based heuristic performs well:
minimal or no base layer lossfew fluctuations in quality
Open issues: length of prediction interval suitable values for key heuristic parameters
Now that we have a handle on layered video, let’s now consider multiple versions !
27RHDM 2001
![Page 28: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/28.jpg)
Outline of the TalkI Streaming Stored Layered Video over Fair-Share
Bandwidth
II Layers vs. Switching Versions over Fair-Share Bandwidth (Philippe)
III Layered Video through Caches
IV Asynchronous Interactive Audio Streaming
28RHDM 2001
![Page 29: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/29.jpg)
Switching Versions[Packet Video Conf, 2001]
As an alternative two layered video, server can store multiple versions of the same video.
Multiple versions requires more disk space, but does it provide better viewing quality given the same X(t)?
Comparison approach:Design analogous control policies for layers and for switching among versions.
29RHDM 2001
![Page 30: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/30.jpg)
Switching VersionsDifferent versions of the same video encoded at different bit-rates.Switch among the versions to adapt the transmission rate to the available bandwidth.
7 6 5 4 3 2 1
7 6 5 4 3 2 1
7 6 5 4 3 2 1Version 1
Version 2
Version 3
Selection 2 14 3
7 6 5Transmission
30RHDM 2001
![Page 31: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/31.jpg)
Switching Versions Control PolicyAt any instant, server has to determine which version of the video to send (version 1 or version 2).
Server will estimate Y1(t) and Y2(t) using receiver reports (e.g. RTCP) and make the same computation of Xavg(t).
Y1(t)
)(tX
Y2(t)
r1
r2
Decoder
31RHDM 2001
![Page 32: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/32.jpg)
State transition diagram for switching versions
State 1 State 2
222
2
1
1 )( and))(1()()( rtXr
tXCr
tYr
tYavg
avg≥−≥+
∆<+−<+2
2
1
1
22
2
1
1 )()(or ))(1()()(r
tYr
tYr
tXCr
tYr
tY avg
Stream v1 Stream v2
(1)
(2)
32RHDM 2001
![Page 33: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/33.jpg)
First implementation of switching versions
The server always transmits data from v2 beginning with thefirst video frame that has not yet been buffered in v1.
7 6 5 4
3 2 1
7 6 5 4 3 2 1Decoder
v2
v1Internet
3 2 1
7 6 5
7 6 5
4
4
Decoderv2
v1Internet
33RHDM 2001
![Page 34: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/34.jpg)
Adding/Dropping Layers : Review
Base Layer (BL) and Enhancement Layers (EL).
To decode higher quality layers, all lower quality layers must be available to the decoder. Can add/drop layers to adjust to the available bandwidth.
Enhancement Layer 1Enhancement Layer 2 7
7
7
6
6
6
5
5
5
4
4
4
3
3
3
2
2
2
1
1
1Base Layer
7
7
7
6
6
6
5
5
5 4 3
2
2
1
1Selection Transmission
34RHDM 2001
![Page 35: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/35.jpg)
Adding/Dropping Layers Control Policy
Recall:Yb(t))()( tXtbπ
)()( tXteπ
)(tX
Ye(t)
rb
re
Decoder
⎪⎩
⎪⎨⎧
==
=
+ eb
bb
b
rrrt
t
απ
π
ˆ)(
1)( => Stream BL only
=> Stream BL & EL in proportion to their consumption rate
35RHDM 2001
![Page 36: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/36.jpg)
State transition diagram for adding/dropping layers
State 1 State 2απ ˆ)( =tb
eavgb
avg
b
b rtXr
tXCr
tY≥−≥ )().ˆ-(1 and))(.ˆ1(
)(αα
1)( =tbπ
∆<−<b
b
b
avg
b
b
rtY
rtXC
rtY )(
or ))(.ˆ1()(
α
(1)
(2)
36RHDM 2001
![Page 37: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/37.jpg)
First implementation for adding/dropping layers
Transmit the enhancement layer data with the same playbackdeadline as the BL currently being transmitted.
7
7
6
6
5
5
4
4
3
3
2
2
1
1BL
EL DecoderInternet
7
7
6
6
5
5
4
4 3 2Decoder
1BL
ELInternet
37RHDM 2001
![Page 38: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/38.jpg)
Immediate Enhancement for adding/dropping layers
Transmit the enhancement layer data with the earliest playbackdeadline. => synchronization is more complex
7
7
6
6
5
5
4
4
3
3
2
2
1
1BL
EL DecoderInternet
7
7
6
6
5
5
4
4 3 2Decoder
1BL
EL
1
23Internet
38RHDM 2001
![Page 39: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/39.jpg)
Immediate Enhancement for switching versions
Transmit data from v2 beginning with the frame which has theearliest playback deadline
7 6 5 4 3 2
7 6 5 4 3 2 1Decoder
v2
v1Internet
1
1
3 2 1
7 6 5
7 6 5
4
4Decoder
v2
v1
3 2Internet
39RHDM 2001
![Page 40: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/40.jpg)
Comparison of Rates
In order to make a fair comparison :BL and v1 have the same perceptual quality.BL+EL and v2 have the same perceptual quality.
Layering has a coding penalty H percent (between 1% and 10%).Assume that all the coding overhead is associated with the EL:
1
2).1(
⎩⎨⎧
=+=+
rrrHrr
b
eb
7
7
6
6
5
5
4
4
3
3
2
2
1
1BL
ELrb
re7 6 5 4 3 2 1
7 6 5 4 3 2 1Version 1
Version 2 r2
r1
40RHDM 2001
![Page 41: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/41.jpg)
Simulations1-hour throughput traces from TCP connections on the Internet, averaged over 1 sec=> TCP-friendly bandwidth conditions
3 different performance metrics to compare performance:
Fraction of high-quality viewing time (th).Fraction of time the decoder can not display the video (td).Quality fluctuations (S).
Study behavior of our heuristics under different bandwidth conditions.
41RHDM 2001
![Page 42: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/42.jpg)
ResultsFirst implementation:
Performance of adding/dropping layers deteriorates as layering overhead increases.
Immediate enhancement:Inefficient for switching versions (waste of bandwidth).Under certain bandwidth conditions, adding/dropping layers attains higher th than switching versions for H up to 5% r2/X =0.7 r2/X =1.0 r2/X =1.3
th td S th td S th td S
Versions 94% 0% 5 58% 0% 5 44% 0.4% 5
Layers-immediate H = 1 % 95% 0% 11 62% 0% 21 44% 0.4% 21
Layers-immediate H = 5 % 92% 0% 17 60% 0% 25 41% 0.4% 25
42RHDM 2001
![Page 43: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/43.jpg)
What we just learned:
Simple implementation :Switching versions always performs better than adding/dropping layers because of layering overhead
Immediate enhancement implementation:layering’s enhanced flexibility can compensate the loss
in high quality viewing time due to layering overhead
Neither scheme seems to dominate:adding/dropping layers is probably better when streams pass through caches
43RHDM 2001
![Page 44: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/44.jpg)
Outline of the Talk
I Streaming Stored Layered Video over Fair-Share Bandwidth
II Layers vs. Switching Versions over Fair-Share Bandwidth (Philippe)
III Layered Video through Caches
IV Asynchronous Interactive Audio Streaming
44RHDM 2001
![Page 45: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/45.jpg)
Layered Video Through Caches (Infocom 2001)
45RHDM 2001
Local Access Network(abundant bandwidth)
Wide AreaNetwork
G
C Caching proxy
Origin server
Clients
![Page 46: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/46.jpg)
Model for Layered CachingM videos, each has L layersT(m) = duration of video mEach layer has rate bl(m)Revenue R(j, m) = j layers of mRequests for “j layers of m”cm = number of layers cached for video mCaching Policy: c = (c1,…,cM)
46RHDM 2001
![Page 47: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/47.jpg)
Stream Delivery
Caching proxyLink (Stochastic Knapsack)
Requestj of m
Is j of mcached?
Yes
No
Capacity CML classes, one per request typeRequest holds rj(m) of bandwidth for T(m)
Admit if enough capacity, otherwise reject request Calculate expected blocking probability
∑+=
=j
cllj
m
mbmr1
)()(
Calculate long run total rate of revenue
47RHDM 2001
![Page 48: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/48.jpg)
Optimization Problem
Maximize revenue
subject to∑∑
= =
−=M
m
L
jmjBmjpmjRR
1 1)),(1)(,(),()(max cc c λ
GmTmbM
m
c
ll
m
≤∑∑= =
)()(1 1
48RHDM 2001
![Page 49: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/49.jpg)
Optimal Caching
Analytically intractable
Exhaustive searches not feasibleM = 50, L = 2, G = 20 streams2.9 * 1016 possibilities
Need heuristics
49RHDM 2001
![Page 50: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/50.jpg)
Heuristics
Assign utility to each layerCache layers in decreasing utilityThree utility definitions:
Popularity: Popularity of layer + higher layersRevenue: Popularity * revenueRevenue density: Revenue / size
Layer is cached only if all lower layers are cached
50RHDM 2001
![Page 51: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/51.jpg)
Definitions of Heuristics
Popularity heuristic
Revenue heuristic
Revenue density heuristic
∑=
=L
ljml mjpu ),(,
∑=
=L
ljml mjpmjRu ),(),(,
∑=
=L
lj jml mTmb
mjpmjRu)()(
),(),(,
51RHDM 2001
![Page 52: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/52.jpg)
Evaluation Methodology
1000 videos, each 2 layersRates uniformly distributed: 0.1 to 3 MbpsRevenue uniformly distributed: 1 to 10Length exponential, mean 1 hourZipf-popularity (parameter 1.0)G = 12-560 GB (0.9-42 % of video bytes)C = 10-150 Mbit/s
52RHDM 2001
![Page 53: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/53.jpg)
Evaluation - Link Capacity
53RHDM 2001
![Page 54: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/54.jpg)
Evaluation - Cache Size
54RHDM 2001
![Page 55: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/55.jpg)
What we just learned:
Interesting stochastic knapsack model for 2-resource layered video caching problem3 heuristics: best is revenue densityWork in progress:
Compare versions and layering through caches
55RHDM 2001
![Page 56: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/56.jpg)
Outline of the Talk
I Streaming Stored Layered Video over Fair-Share Bandwidth
II Layers vs. Switching Versions over Fair-Share Bandwidth (Philippe)
III Layered Video through Caches
IV Asynchronous Interactive Audio Streaming (Wimba startup)
56RHDM 2001
![Page 57: Streaming Stored Layered Video in the Internet](https://reader036.vdocuments.site/reader036/viewer/2022071601/613d4cf2736caf36b75bb2f7/html5/thumbnails/57.jpg)
Wimbahttp://www.wimba.comAsynchronous Interactive VoiceeLearning applicationsbringing together the telephone and Internet worlds
57RHDM 2001