Video on demand is certainly a promising technology for many multimedia applications still to come. Unlike traditional data, delivery of a video clip can take up substantial bandwidth for a long period of time. This chapter describes some cost effective and scalable solutions for large-scale deployment of VOD systems.
A key aspect of designing a scalable VOD system is to leverage multicast and broadcast to facilitate bandwidth sharing. For popular videos or if the video database contains only a few videos, a periodic broadcast technique achieves the best cost/performance. This approach, however, cannot deliver videos without some delay. Two alternatives have been considered for addressing this limitation: the Server-Oriented Approach (e.g., Skyscraper Broadcast, Striping Broadcast) reduces service delay by increasing server bandwidth, whereas the Client-Oriented Approach (e.g., Cautious Harmonic Broadcast, Pagoda Broadcast) requires client to equip with significantly more download bandwidth. For wide-area deployment, the Server-Oriented Approach is preferred because the cost of server bandwidth can be shared by a very large community of users, and therefore contributes little to the cost of the overall system. Client-Oriented Approach is limited to local deployment on an intranet where client bandwidth is abundant (e.g., receiving the video at five times the playback rate). Applications such as corporate training and campus information systems can benefit from these techniques.
For less popular videos, multicast on demand is a better solution than repeatedly broadcasting the videos. Standard multicast, however, makes users wait for the batching period. Patching resolves this problem by allowing the clients to join an ongoing multicast while playing back the missing part of the video arriving in a patching stream. For the best performance, a system should use both periodic broadcast and multicast. Techniques, such as AHA, can be used to monitor the popularity of the videos, and apply the best mechanism to deliver them. Range Multicast is a new concept in multicast. It enables clients to join a range multicast at their specified time, and still receive the entire video stream. Since many users actually receive their videos from the network, this new communication paradigm enables the VOD system to scale far beyond the physical limitation of the video server.
VCR-like interaction is a desirable feature for many VOD applications. It provides a convenient environment to browse and search for video content. Techniques such as Split and Merge can be used to provide such operations under multicast. For periodic broadcast, the broadcast-based interaction technique offers a highly scalable solution. In fact, the amount of server bandwidth required to support interactivity is independent of the number of users currently using this service.
Another important consideration in designing VOD systems is the capability to handle receiver heterogeneity. Multi-resolution encoding techniques provide a good solution for many applications. For those that demand the same high QoS for clients of various capabilities, techniques such as Bandwidth Adaptor and HeRO can be used in the periodic broadcast framework. A bandwidth adaptor, as the name implies, receives broadcast data from upstream at a high speed, and broadcasts them to the downstream at a lower rate. Such a device can be placed on the server side to service a wide area of users, or on the client side to support a small group of users. HeRO is a different approach that handles differences in receiving bandwidths using only a single broadcast scheme. This is achieved by indicating in the broadcast when a client with a particular receiving capability can start its download. This solution is simple and effective.