An analytical model for interval caching in interactive video servers
Introduction
Rapidly growing computer and communication technologies have opened the door to a wide range of educational, commercial and entertainment applications that require efficient storage, retrieval, and delivery of multimedia data. Of all these applications, interactive video-on-demand (VOD) has become one of the most important services (Little and Venkatesh, 1994, Deloddere et al., 1994). There is not just an interest in the delivery of digital VOD to the home for entertainment purposes, but there are also several educational (instructional videos) and commercial (e-commerce, corporate training videos) benefits from this service. VOD services are also likely to become prevalent in more general purpose Internet applications.
With interactive VOD services, clients select, schedule, and view video clips, and also interact with the system using typical VCR operations such as fast-forward, rewind, pause, and indexed searches. To accommodate real-time playback requirements, the video server should be able to stream the data seamlessly to the clients without jitters and meet other viewer-specified quality of service (QoS) requirements. The video server should be able to support multiple client requests concurrently while meeting these goals. These requirements translate to stringent demands on the video server resources in the form of storage space, I/O (disk) bandwidth, and network bandwidth. Interactive VCR operations add a further dimension of the complexity.
Recognizing the demands from the video server, several research studies (Gemmell et al., 1995, Little, 1995) have proposed solutions for better performance. These include disk architectures and scheduling mechanisms for increasing I/O bandwidth (Reddy and Wyllie, 1994, Reddy et al., 2005), schemes for placing/partitioning video data across disk arrays (Seo and Kim, 1995, Santos and Muntz, 1998), techniques to efficiently support VCR operations for interactive VOD (Shenoy and Vin, 1995, Dey-Sircar et al., 1994, Chen et al., 1994), resource-sharing strategies to reduce I/O requirements (Dan et al., 1994, Golubchik et al., 1995, Rotem and Zhao, 1995, Dan and Sitaram, 1996), and admission control mechanisms to accommodate and regulate the number of clients being serviced (Vin et al., 1995, Lin, 1998, Garofalakis et al., 1998).
Of these, resource-sharing strategies can amplify the performance of a server even when all the performance benefits have been squeezed out from the network and I/O subsystems. Further, these techniques can be implemented in software and are not constrained by the underlying hardware limitations. Batching, piggy-backing, and buffering/interval caching are some of the representative resource-sharing strategies. With batching (Dan et al., 1994), client requests are accumulated, grouped into batches, and serviced in one set. A client's request might not be serviced immediately but the I/O cost is amortized over all the requests of a batch. Piggy-backing (Golubchik et al., 1995) adopts a different strategy, wherein the service for a request is started almost immediately, but the rate of service (playback/display rate) is adjusted slightly (without the client experiencing a serious degradation in QoS), so that it catches up with another stream currently being serviced. Subsequently, these two streams are merged, requiring only one sequence of requests to the I/O system. It should be noted that merged streams can in turn merge with other (merged) streams. Buffering (Rotem and Zhao, 1995) and interval caching (Dan and Sitaram, 1996), on the other hand, exploit the locality of reference (both spatial and temporal), to use data that have already (recently) been fetched from the disk.
Among resource-sharing strategies, buffer management through interval caching (Dan and Sitaram, 1994, Dan and Sitaram, 1996) is an attractive option to boost server throughput. This scheme caches the intervals between successive video streams, ensuring that only the smallest of these intervals are kept in the cache to maximize the number of cached streams. It can be used in conjunction with the other resource-sharing strategies such as batching or adaptive piggy-backing, to further improve performance. Advances in semiconductor technology continue to push memory prices down while increasing chip capacity and functionality, and these trends are likely to make this scheme increasingly attractive. A number of studies have adopted interval caching to improve the performance of various streaming media systems (Guo et al., 2003, Chan et al., 2003, Cho et al., 2003, Sarhan and Das, 2004).
Many factors affect the performance of a video server that uses interval caching: arrival rate of video requests; distribution of the video clips being requested; length of the video clips; admission control strategy; available cache size; and the nature, frequency, and duration of VCR operations. From a designer's viewpoint, it is important to understand how these parameters affect the performance of the system and interact with each other towards building an efficient and cost-effective system.
Most of the previous studies for interval caching have used simulation to investigate the impact of these parameters. However, simulations often require a lot of memory space and execution time. For instance, it takes nearly 7–8 h for a single simulation to complete on a Sun Ultra-10 workstation, and a full-factorial experiment would take longer. Further, simulations of large server configurations may be even infeasible due to inadequate memory/storage resources.
Analytical models, on the other hand, are a convenient way of studying system performance under a variety of parameters. However, a multimedia server is a very complex system with numerous interactions between different system parameters, which makes it difficult to model its behavior mathematically. The primary contribution of this paper is the development of a comprehensive mathematical model, which accurately quantifies the performance of an interactive video server employing an interval caching policy. Various representative workload parameters are considered in the model to represent characteristics of interactive servers employing interval caching. Especially, user interactivity is modeled by a six-state Markov process to realistically capture various user interactions such as playback, fast-forward, rewind, pause, jump-forward, and jump-backward. To our best knowledge, we are the first to develop a mathematical model that quantifies the performance of an interactive video server employing an interval caching policy.
Because interval caching improves server performance by serving a certain number of streams from the cache, the primary objective of the model is to compute the average number of streams that can be supported from the cache with different VCR interactions or a combination of interactions. The model is developed using the concept of flow balance (more specifically Little's Law)—under steady state, the average number of streams in the cache is equal to the arrival rate of streams to the cache multiplied by the average service time in the cache. The model considers new streams as well as streams resuming after a VCR operation, to estimate the arrival rate to the cache and its service time using other system and workload parameters. The model can be applied for various types of video servers by plugging in different values for the parameters. Specifically, it is general enough to capture the performance of servers with different movie lengths. The model has been extensively validated through simulation, and is shown to be accurate over a spectrum of system and workload parameters. The applicability of the analytical tool in understanding the performance and design of an interactive VOD server is summarized as follows:
- •
The model can be used to implement a statistical admission control policy that can regulate new service requests to preserve the QoS of in-service requests, while maximizing server throughput.
- •
The degradation in throughput due to user interactivity (compared to a server which allows only playback) is quantified. Specifically, our integrated model lets us directly plug in the relative probabilities of a wide range of VCR operations to get the number of streams that will be serviced from the cache.
- •
The impact of arrival rate of client requests, length of the video clips, skewness of request pattern, and cache size on the throughput has been studied for different user interactivity parameters.
Section snippets
Video server
The video server is assumed to be a high-performance computing engine that is connected by a fast I/O interface to a secondary storage device such as a disk array. This storage device is large enough to hold video data of different durations, and together with the I/O interface is fast enough to deliver data for a specified number of concurrent video streams at a rate specified by the MPEG-1/MPEG-2 playback rate (1.5 Mbps/4 Mbps). Different techniques for improving the performance of this I/O
Analytical model
In this section, we describe an analytical model for estimating the performance of an interactive video server that uses interval caching. Under the situation where the disk system is being fully utilized, a server with cache can accommodate more streams than the disk capacity, since the cached streams get data from the cache instead of consuming the disk bandwidth. Therefore, the average number of cached streams, which shows the improvement in server capacity due to interval caching, is an
Model as a design tool
Having extensively validated our model, we next illustrate its use for different design decisions. All experiments in this section are done for an interactive server with a single movie group .
Concluding remarks and future work
Server throughput is one of the most important considerations in the design, deployment and use of interactive VOD systems. The server has to guarantee a steady and seamless delivery of data to different clients as dictated by their QoS requirements. In addition, it has to accommodate the whims of different interactive users in terms of the VCR operations (fast-forward, rewind, pause, indexed-search, etc.), that they may require during service, without degrading the QoS of other requests being
References (31)
- et al.
Channel allocation under batching and VCR control in video-on-demand systems
J Parallel Distributed Comput
(1995) Editorial: multimedia storage servers
Comput Commun
(1995)- et al.
Allocation strategies of multimedia data on disk arrays
Comput Commun
(1995) - et al.
Algorithms for designing multimedia servers
Comput Commun
(1995) - Almeida JM, Krueger J, Eager DL, Vernon MK. Analysis of educational media server workloads. In: Proceedings of the 11th...
- Chan C, Huang S, Wang J. Cooperative cache framework for video streaming applications. In: Proceedings of the IEEE...
- Chen MS, Kandlur DD, Yu PS. Support for fully interactive playout in disk-array-based video server. In: Proceedings of...
- et al.
Analysis of enterprise media server workloads: access patterns, locality, content evolution, and rates of change
IEEE/ACM Trans Networking
(2004) - Chervenak AL, Patterson DA, Katz RH. Choosing the best storage system for video service. In: Proceedings of the third...
- Cho K, Ryu Y, Won Y, Koh K. Virtual interval caching scheme for interactive multimedia streaming workload. Lecture...
Interactive video-on-demand
IEEE Commun Mag
Cited by (5)
An integrated prefetching/caching scheme in multimedia servers
2017, Journal of Network and Computer ApplicationsCitation Excerpt :Thus, the buffering techniques have reduced disk bandwidth requirement for I/O requests by keeping data blocks in memory for future accesses. Prefetching (Triantafillou and Harizopoulos, 1999; Kim and Liu, 2006; Du et al., 2015; Wang et al., 2011; Song et al., 2013) and interval caching (Dan and Sitaram, 1996; Sarhan and Das, 2004; Wujuan et al., 2006; Kwon et al., 2008, 2010; Song et al., 2008; Kim and Das, 2007) have been mainly employed as data buffering techniques in multimedia servers. Prefetching is a well-known buffering policy that reads data blocks ahead into the cache before they are actually requested.
Towards a predictive cache replacement strategy for multimedia content
2013, Journal of Network and Computer ApplicationsCitation Excerpt :Yu et al. (2006) argue that selecting a suitable segment size is a complex problem and therefore propose an alternative solution that models the internal popularity of multimedia streams independent of segment size. Kim and Das (2007) further extended the work on segment-based caching, by way of an analytical model that exploits the temporal locality and popularity of content. Guo et al. (2007) studied a prefix caching method that exploits the fact that the beginning of a movie is more popular than the ending.
A cache management scheme for P2P VoD systems' service ends based on data access forecast
2011, Gaojishu Tongxin/Chinese High Technology LettersHigh quality P2P-Video-on-Demand with download bandwidth limitation
2009, IEEE International Workshop on Quality of Service, IWQoSSupporting scalable and cooperative interval caching in a clustered video server
2007, Proceedings - 6th IEEE International Symposium on Network Computing and Applications, NCA 2007