1.06k likes | 1.21k Views
Saleable Techniques for Video on Demand. Kien A. Hua School of EE & Computer Science University of Central Florida Orlando, FL 32816-2362 U.S.A. Server Channels. The unit of server capacity required to deliver a video stream is referred to as a channel .
E N D
Saleable Techniques forVideo on Demand Kien A. Hua School of EE & Computer Science University of Central Florida Orlando, FL 32816-2362 U.S.A
Server Channels • The unit of server capacity required to deliver a video stream is referred to as achannel. • These channels are dispatched to deliver various video streams at different times.
Using Dedicated Streams Video Server Dedicated stream Client Expensive Client Client Not scalable Client
A Solution • Using broadcast to share channels among users • Broadcast is essentially “free” for a large user community
Traditional Multicast Video Server Client Client Client Client
Conflicting Goals in Video Multicast? • Low Latency: requests must be served as soon as possible • High Efficiency: each multicast should wait to serve a larger number of clients Can we achieve both ?
Broadcast for VOD Requirement on server bandwidth is independent of the number of users the system is designed to support. Less expensive & more scalable !! Broadcast cannot deliver videos on demand ? ? ?
Simple Periodic BroadcastStaggered Broadcasting • A new stream is started every interval for each video. • The worst service latency is the broadcast period.
Limitation of Simple Periodic Broadcast • Access latency can be improved only linearly with increases to the server bandwidth • Double the number of channels to reduce the service latency in half Can we do better ?
Skyscraper Broadcasting • Each video is fragmented into K segments, each repeatedly broadcast on a dedicated channel at the playback rate. • The sizes of the K segments have the following pattern: • [1, 2, 2, 5, 5, 12, 12, 25, 25, …, W, W, …, W] Even group Odd group Even group Odd group Size of larger segments are constrained to W (width of the “skyscraper”)
Generating Function The broadcast series is generated using the following recursive function: f(n) =
Skyscraper BroadcastingPlayback Procedure • The Odd Loader and the Even Loader download the odd groups and the even groups, respectively. • The W-segments are downloaded sequentially using only one loader. • As the loaders fill the buffer, the Video Player consumes the data in the buffer.
SB – Multiuser Example 1 Each segment is available before it is needed for the playback 2 3 4 5 6 7 8 Playback schedule:
Advantages of Skyscraper Broadcasting • Unlimited scalability • Service latencycan be reduced exponentially with increases in server bandwidth • Since W-segments are downloaded sequentially, buffer requirement is minimal. Skyscraper
Client Centric Approach (CCA) • Segments are grouped according to the number of channels the clients can download simultaneously • Inside each group, each segment is twice the size of the last segment • The first segment of any group is the same size as the last segment of the previous group C = 3 (Clients have three loaders)
CCA Broadcasting • Server broadcasts each segment at playback rate • Clients use c loaders • Each loader downloads its streams sequentially, • e.g., i th loader is responsible for segments i, i+c, i+2c, i+3c, … • Equal-size W-segments are downloaded sequentially using one loader C = 3 (Clients have three loaders)
Advantages of CCA • It has the advantages of Skyscraper Broadcasting. • It can leverage client bandwidth to improve performance.
Cautious Harmonic Broadcasting(Segmentation Design) • A video is partitioned into nequally-sized segments • The first channel repeatedly broadcasts the first segment S1 at the playback rate • The second channel alternately broadcasts S2 and S3 repeatedly at half the playback rate • Each of the remaining segment Si is repeatedly broadcast on its dedicated channel at 1/(i–1) the playback rate
Cautious Harmonic Broadcasting(Download & Playback Strategy) • The client receives data from all streams for the video simultaneously. • The client starts the playback as soon as it can download the first stream.
Cautious Harmonic Broadcasting Advantage:Better than Skyscraper Broadcasting in terms of server bandwidth requirement. Disadvantage:Requires many times more client bandwidth then Skyscraper Broadcasting does. Implementation Issues: • The client must receive data from many channels simultaneously (e.g., 240 channels are required for a 2-hour video if the desired latency is 30 seconds). • A storage subsystem capable of moving the read heads fast enough to multiplex among so many concurrent streams would be very expensive, if possible
Pagoda BroadcastingData Fragmentation • Each video is divided into equally-sized segments • Using the following series to determine the number of segments for each channel {1, 3, 5, 15, 25, 75, 125, …} • Segments appearing on a channel do not have to be consecutive 3rd segment
Pagoda BroadcastingDownload and Playback Strategy • Each channel broadcasts data at the playback rate • The client receives data from all channels simultaneously. • It starts the playback as soon as it can download the first segment.
Pagoda BroadcastingAdvantage & Disadvantage Advantage: Server bandwidth requirement is lower compared to Skyscraper Broadcasting Disadvantage: Client bandwidth requirement is many times higher than Skyscraper Broadcasting • Achieving a maximum delay of 138 seconds for a 2-hour video requires each client to have a bandwidth five times the playback rate, e.g., approximately 20 Mbps for MPEG-2 • System cost is significantly more expensive
New Pagoda Broadcasting • New Pagoda Broadcasting improves on the original Pagoda Broadcasting. • Client bandwidth requirement remains very high Example: Achieving a maximum delay of 110 seconds for a 2-hour video requires each client to have a bandwidth five times the playback rate. • Approximately 20 Mbps for MPEG-2 • System cost is very expensive
Total System Cost Service latency can be improved by increasing bandwidth in two ways: • Increasing client bandwidth, e.g., Harmonic Broadcasting, Pagoda Broadcasting, etc. This approach isexpensive • Increasing server bandwidth, e.g., Skyscraper Broadcasting, CCA, etc. This approach is less expensive
Support Client Heterogeneity • Using multi-resolution encoding • Bandwidth Adaptor • HeRO Broadcasting
Multi-resolution Encoding • Encode the video data as a series of layers • A user can individually mould its service to fit its capacity • A user keeps adding layers until it is congested, then drops the higher layer Drawback: Compromise the display quality
Bandwidth Adaptors Advantage: All clients enjoy the same quality display
Requirements for an Adaptor • An adaptor dynamically transforms a given periodic broadcast into another less demanding one • The segmentation scheme must allow easy transformation of a broadcast into another • CCA segmentation technique has this property
Adaptation (1) Adaptor downloads from all broadcast channels simultaneously
Adaptation (2) • Each sender routine retrieves data chunks from buffer, and broadcast them to the downstream • For each chunk, the sender routine calls deleteChunk to decide if the chunk can be deleted from the buffer
Buffer Management • insertChunkimplements an As Late As Possible policy, i.e., • If another occurrence of this chunk will be available from the server before it is needed, then ignore this one, else buffer it. • deleteChunkimplements an As soon As Possible policy, i.e., • Determine the next time when the chunk will need to be broadcast to the downstream. • If this moment comes before the availability of the chunk at the server, then keep it in storage, else delete it.
The Adaptor Buffer • Computation is not intensive. • It is only performed for the first chunk of the segment, i.e., • if this initial chunk is marked for caching, so will be the rest of the segment. • Same thing goes for deletion.
The start-up delay The start-up delay is the broadcast period of the first segment on the server
HeRO – Heterogeneous Receiver-Oriented Broadcasting • Allows receivers of various communication capabilities to share the same periodic broadcast • All receivers enjoy the same video quality • Bandwidth adaptors are not used
HeRO – Data Segmentation • The size of the i th segment is 2i-1 times the size of the first segment
HeRO – Download Strategy • Thenumber of channels needed depends on the time slot of the arrival of the service request • Loader i downloads segments i, i+C, i+2C, i+3C, etc. sequentially, where C is the number of loaders available. Global Period
HeRO – Regular Channels • The first user can download from six channels simultaneously Request 1
HeRO – Regular Channels • The second user can download from two channels simultaneously Request 2
Worst-Case for Clients with 2 loaders • Worst-case latency is 11 time units • The worst-cases appear because the broadcast periods coincide at the end of the global period Request 2 11 timeunits Coincidence of the broadcast periods • require more loaders
Worst-Case for Clients with 3 loaders • Worst-case latency is 5 time units • The worst-cases appear because the broadcast periods coincide at the end of the global period Request 5 time units Coincidence of the broadcast periods
Observations of Worst-Cases • For a client with a given bandwidth, the time slots it can start the video are not uniformly distributed over the global period. • The non-uniformity varies over the global period depending on the degree of coincidence among the broadcast periods of various segments. • The worst non-uniformity occurs at the end of each global period when the broadcast periods of all segments coincide. • The non-uniformity causes long service delays for clients with less bandwidth. • We need to minimize this coincidence to improve the worst case.
Adding one more channel • We broadcast the last segment on one more channel, but with a time shift half its size. • We now offer more possibilities to download the last segment; and above all, we eliminate the coincidence of all segments (i.e., no longer requiring 6 loaders). Regular Group Shifted Channel
HeRO • To reduce service latency for less capable clients, broadcast the longest segments on a second channel with a phase offset half their size. Shifted Channels
HeRO – Experimental Results • Under a homogeneous environment, HeRO is • competitive in service latencies compared to other protocols • the most efficient protocol to save client buffer space • HeRO is the first periodic broadcast technique designed to address the heterogeneity in receiver bandwidth • Less capable clients enjoy the same playback quality
Hybrid Approach • Periodic broadcast is better for very popular videos • Batching (scheduled multicast) is more appropriate for less popular videos A hybrid of these two approaches offers the best performance
Adaptive Hybrid Approach (AHA) • Popularity of each video is assessed periodically based on the distribution of recent requests. • Popular videos are served using SkyscraperBroadcasting • Less popular videos are served using batching • Number of channels used for periodic broadcast depends on the current mix of popular videos • Remaining channels are allocated to batching