an analysis of chaining protocols for video-on-demand j.-f. pâris university of houston thomas...
TRANSCRIPT
An Analysis of Chaining Protocols for Video-on-DemandJ.-F. PârisUniversity of Houston
Thomas Schwarz, S. J.Universidad Católica del Uruguay
Introduction
Video-on-demand lets Different customers watch Different videos atDifferent times
Very high bandwidth requirements
Solutions (I)
Distributing server workload among several sitesContent-delivery networksLocal caches, …
Letting the server broadcast same video data to all customers watching the same videoNot possible on today's Internet
Solutions (II)
Let customers participate in the video distributionP2P solutionAvailable distribution bandwidth grows
linearly with the demandCheap and easy to deployRequires everyone to cooperate
• Must penalize selfish customers
Chaining
One of the oldest VOD solutionsS. Sheu, K. A. Hua, and W.
Tavanapong. Chaining: A Generalized Batching Technique for Video-on-Demand Systems. Proc. ICMS Conference, June 1997.
Involves clients in video distribution process
Assumptions
Customers have enough upstream bandwidth to forward the video to the next client
Customer buffer sizes do not allow them to store entire videosCan only store last β minutes
• A reasonable assumption in 1997
Basic chaining
Customer requests form a chainFirst customer in the chain receives its
data from the serverSubsequent customers receive their
data from their immediate predecessor Chain is broken each time two
consecutive requests are more than β minutes apart
An example
Customer A
Customer B
Customer C
Stream from server
Stream from customer A
Stream from server
Expanded chaining
Assumes thatCustomers have enough buffer space
to cache the whole contents of the video• Helps with rewind command
Customers will disconnect once they have finished playing the video• A realistic assumption
How it works
From serverCustomer A
From ACustomer B
From BCustomer C
To A To B To CSERVER
t
t’
From server
From server
Server bandwidth requirements (2-hour video)
0
1
2
3
4
5
6
7
8
1 10 100 1000Requests/hour
Ser
ver
ban
dw
idth
(ch
ann
els)
Expanded chaining
Chaining with a 6 minute buffer
Chaining with a 15 minute buffer
Chaining with a 30 minute buffer
Chaining with a one-hour buffer
Accelerated chaining
Has clients forward their video data to the next client in the chain at a slightly higher rate than the video consumptionAcceleration factor will vary between
1.01 and 1.1
How it works
From serverCustomer A
From ACustomer B
From BCustomer C
To A ToB To CSERVER
t
t’
From server
From server
Server bandwidth requirements (2-hour video)
0
0.2
0.4
0.6
0.8
1
1.2
1 10 100 1000
Requests/hour
Ser
ver
ban
dw
idth
(ch
ann
els)
Expanded chaining
1% acceleration
2% acceleration
5% acceleration
10% acceleration
Motivation for further work
All these results were obtained through discrete simulation Mere numerical values
Could we not use analytical methods?Would get algebraic solutionsCould derive maxima/minima
Our assumptions
D is video duration β is buffer size λ is customer arrival rate f is video acceleration rate Time between arrivals is governed by
the exponential distribution with probability density function
p(t) = λ e-λt
Basic chaining (I)
Two cases to considerInterarrival time is less than β
• Previous customer forwards the video• No server workload
Interarrival time is more than β• Server transmits whole video
Basic chaining (II)
Average server workload per video is
Average server bandwidth is
De
dteDdtew tt.00
DewB
Expanded chaining (I)
Two cases to considerInterarrival time Δt is less than D
• Previous customer forwards part of the video (D – Δt)
• Server transmits remaining part (Δt)
Interarrival time Δt is more than D• Server transmits whole video
Expanded chaining (II)
Customer A
From AFirst case:Customer B
Second case:Customer C
t
t’ > D
From server
From server
Customer A
Expanded chaining (III)
Average server workload per video is
Average server bandwidth is
)1(1
0
D
t
D
D t
e
dteDdtetw
DewB 1
Accelerated chaining (I)
Two cases to considerInterarrival time Δt is less than D
• Previous customer forwards part of the video:
min(D, f (D – Δt))
• Server transmits remaining part Interarrival time Δt is more than D
• Server transmits whole video
Accelerated chaining (II)
Result is a fairly complicated expression
with ρ = 1/f
Comparing analytical results with simulation results (I)
0
1
2
3
4
5
6
7
8
1 10 100 1000
Requests/hour
Ser
ver
ban
dw
idth
(ch
ann
els)
Expanded chaining
Chaining with a 6 minute buffer
Chaining with a 15 minute buffer
Chaining with a 30 minute buffer
Chaining with a one-hour buffer
Comparing analytical results with simulation results (II)
0
0.2
0.4
0.6
0.8
1
1.2
1 10 100 1000
Requests/hour
Ser
ver
ban
dw
idth
(ch
ann
els)
Expanded chaining
One percent faster
Two percent faster
Five percent faster
Ten percent faster
Conclusion
Very good agreement between analytical and simulation resultsTwo techniques validate each other
Analytical results provide a better investigation tool than simulation resultsCan compute bandwidth maxima, …
Future work
Add an incentive mechanismTo penalize freeloaders
Investigate how mechanism interacts with protocol
Implement fast forward/jump
Develop a test bed implementation
Handling early termination:Original schedule
From serverFrom serverCustomer A
From ACustomer B
From BCustomer C
To A To B To CSERVER
t
t’
From server
Handling early termination:After customer B leaves
From serverCustomer A
Already playedCustomer B
Customer C
To A To CSERVER
t
t’
From server
Was from B
From A