An analytical model for interval caching in interactive video servers

https://doi.org/10.1016/j.jnca.2005.06.005Get rights and content

Abstract

Design of servers to meet the quality of service (QoS) requirements of interactive video-on-demand (VOD) systems is challenging. Recognizing the increasing use of these systems in a wide range of applications, as well as the stringent service demands expected from them, several design alternatives have been proposed to improve server throughput. A buffer management technique, called interval caching, is one such solution which exploits the temporal locality of requests to the same movie and tries to serve requests from the cache, thereby enhancing system throughput.

In this paper, we present a comprehensive mathematical model for analyzing the performance of interactive video servers that use interval caching. The model takes into account the representative workload parameters of interactive servers employing interval caching and calculates the expected number of cached streams as an indication of the improvement in server capacity due to interval caching. Especially, user interactions, which sensitively affect the performance of interval caching, are realistically reflected in our model for an accurate analysis. A statistical admission control technique has also been developed based on this model. Using this model as a design tool, we apply the model to measure the impact of different VCR operations on client requests and rejection probability, as well as the effect of cache size.

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.

The rest of this paper is organized as follows: Section 2 explains interval caching and the video server system. Derivation of the mathematical model and its validation are presented in Section 3. Use of the model as a design tool is described in Section 4 with different examples. Finally, Section 5 concludes with a summary of results and identifies directions for future research.

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 (G=1).

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)

  • A. Dan et al.

    Channel allocation under batching and VCR control in video-on-demand systems

    J Parallel Distributed Comput

    (1995)
  • T.D.C. Little

    Editorial: multimedia storage servers

    Comput Commun

    (1995)
  • M. Seo et al.

    Allocation strategies of multimedia data on disk arrays

    Comput Commun

    (1995)
  • H.M. Vin 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...
  • L. Cherkasova 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...
  • Costa C, Cunha I, Borges A, Ramos C, Rocha MM, Almeida JM, Ribeiro-Neto B. Analyzing client interactivity in streaming...
  • Dan A, Sitaram D. Buffer management policy for an on-demand video server. IBM Watson Research Center, RC 19347,...
  • Dan A, Sitaram D. A generalized interval caching policy for mixed interactive and long video workloads. In: Proceedings...
  • Dan A, Sitaram D, Shahabuddin P. Scheduling policies for an on-demand video server with batching. In: Proceedings of...
  • D. Deloddere et al.

    Interactive video-on-demand

    IEEE Commun Mag

    (1994)
  • Cited by (5)

    • An integrated prefetching/caching scheme in multimedia servers

      2017, Journal of Network and Computer Applications
      Citation 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 Applications
      Citation 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.

    • High quality P2P-Video-on-Demand with download bandwidth limitation

      2009, IEEE International Workshop on Quality of Service, IWQoS
    • Supporting scalable and cooperative interval caching in a clustered video server

      2007, Proceedings - 6th IEEE International Symposium on Network Computing and Applications, NCA 2007
    View full text