Elsevier

Computer Communications

Volume 23, Issue 3, 1 February 2000, Pages 253-266
Computer Communications

Efficient memory management in video on demand servers

https://doi.org/10.1016/S0140-3664(99)00179-6Get rights and content

Abstract

In this article we present, analyse and evaluate a new memory management technique for video-on-demand servers. Our proposal, Memory Reservation Per Storage Device (MRPSD), relies on the allocation of a fixed, small number of memory buffers per storage device. Selecting adequate scheduling algorithms, information storage strategies and admission control mechanisms, we demonstrate that MRPSD is suited for the deterministic service of variable bit rate streams to intolerant clients. MRPSD allows large memory savings compared to traditional memory management techniques, based on the allocation of a certain amount of memory per client served, without a significant performance penalty.

Introduction

In Video on Demand (VoD) servers, the interactive transference of multimedia contents to a large number of users via network requires a significant amount of computing resources. All the hardware and software elements have to work co-ordinately in order to offer the desired quality of service at a minimum cost per client.

We will focus our attention on the efficiency of the process of transferring multimedia information from the VoD server to the users. Due to the inherent characteristics of the service of multimedia contents (temporal restrictions, large volumes of data and high bandwidth requirements), appropriate policies for server resource scheduling, information storage management and client admission control should be carefully selected. These strategies are not independent but they are closely related with each other.

Memory management is an important topic that has to be taken into account when specifying how to schedule server's resources. Most of the current VoD scheduling models assume the existence of an underlying per-client memory management scheme, where the number of buffers needed is proportional to the number of clients served simultaneously. This buffering strategy demands a substantially large amount of memory, given the fact that the number of concurrent sessions maintained by a VoD server is usually high.

In this article we propose an innovative memory management policy, Memory Reservation Per Storage Device (MRPSD), that dramatically reduces the large amount of memory required for multimedia information transmission in VoD servers when used in combination with any cycle-based scheduling algorithm. Our policy is based on the allocation of a fixed number of buffers per storage device, as opposed to the reservation of memory on a per-client basis.

Compression techniques generate information blocks of different sizes corresponding to the same client playback time. The use of formats that benefit from these techniques in VoD systems is widely established, with the purpose of reducing the required bandwidth and server storage capacity. As a result, a realistic memory management strategy should consider the existence of Variable Bit Rate (VBR) streams in the service of multimedia contents. When proper scheduling algorithms, storage strategies and admission control mechanisms are selected, MRPSD performs similarly to per-client memory management schemes in the deterministic service of VBR contents to intolerant clients.

We present and evaluate the results obtained by detailed simulation of a VoD system devoted to the service of VBR multimedia contents to intolerant clients, incorporating our per-storage-device memory management scheme and appropriate policies for scheduling, storage and admission control. Its performance and memory requirements are compared with analogous VoD systems that implement per-stream buffering techniques.

The specific distribution of the multimedia contents in storage devices has a major impact in the VoD system performance. Storage systems based in the co-operative use of several disks can increase the number of clients served. We include in our server model the possibility of incorporating several disks. In addition, different information storage alternatives will be studied and evaluated.

The rest of the paper is structured as follows: Section 2 details several major software architectural aspects of a VoD server that are relevant for the exposition of our work. Our memory management policy, MRPSD, is presented in Section 3. Section 4 deals with the experiments carried out on our VoD server simulator and the analysis of the results obtained. Related work is summarised in Section 5. We end with the conclusions.

Section snippets

VoD server software architecture

In this section, we provide general information about some major aspects of the VoD server's software architecture involved in the process of transferring continuous multimedia contents: resource scheduling, storage management and client admission control. Other related procedures such as security, client accounting, connection management, fault tolerance support, etc. are out of the scope of our study.

Memory reservation per storage device

Per-client memory management schemes suffer from a linear increase of the amount of memory required with the number of clients served. In this section we propose an innovative strategy that largely decreases the memory consumption in VoD servers, namely MRPSD, in which memory is allocated on a per-storage-device basis. Performance penalty is negligible when compared with VoD servers that rely on per-client buffering schemes.

In the following paragraphs, we first specify the conditions of

Experimental results

In Section 4.1 we describe the simulation model developed in order to study the behaviour of MRPSD quantitatively Section 4.2 is devoted to the experiments conducted on our simulator and analysis of results.

Related work

Some variations to cyclic schedulers have been proposed in order to overcome excessive memory consumption of per-stream buffering strategies, being the most important GSS [32]. However, the total amount of memory needed still depends on the number of users served, and it is always larger than in MRPSD–MCR. To establish a comparison with the results provided in our article, note that the amount of memory demanded never falls below 50% of the memory required by double buffering.

The subgrouping

Conclusions

In this article we have presented, evaluated and validated MRPSD, an innovative buffering technique to be used in combination with cycle-based VoD server schedulers. MRPSD leads to a major improvement in VoD server memory requirements as compared to existing per-stream buffering allocation schemes. Although MRPSD slightly increases network bandwidth demands, enough resources are generally available in off-the-shelf systems.

To implement MRPSD, the possibility of sending data to the clients in

Acknowledgements

This research was supported in part by the National R&D Program of Spain, Project Number TIC97-0438.

References (28)

  • H.M. Vin et al.

    Algorithms for designing multimedia servers

    Computer Communications

    (1995)
  • C. Bernhardt et al.

    The server array: a scalable video server architecture

  • S. Berson, R.R. Muntz, Just-in-time scheduling for video-on-demand storage servers, Technical Report, UCLA Computer...
  • M.M. Buddhikot et al.

    Efficient data layout, scheduling and playout control in MARS

    ACM Multimedia Systems

    (1997)
  • E. Chang et al.

    Cost analysis for VBR video servers

    IEEE Multimedia

    (1996)
  • E. Chang, H. Garcia-Molina, Effective memory use in a media server, Proceedings of Very Large Data Base Conference,...
  • E. Chang, H. Garcia-Molina, Bubble up: low latency fast-scan for media servers, Proceedings of ACM Multimedia...
  • T. Chiueh et al.

    Design and implementation of the stony brook video server

    Software Practice and Experience

    (1997)
  • R.M. Cubert, P. Fishwick, sim++, Version 1.0, Department of Computer and Information Science and Engineering,...
  • M. Garrett, W. Willinger, Analysis, modelling and generation of self-similar VBR video traffic, Proceedings of ACM...
  • J. Gemmell et al.

    Delay-sensitive multimedia on disks

    IEEE Multimedia

    (1994)
  • J. Gemmell et al.

    Multimedia storage servers: a tutorial and survey

    IEEE Computer

    (1995)
  • S. Ghandeharizadeh, J. Stone, R. Zimmermann, Techniques to quantify SCSI-2 disk subsystem specifications for...
  • K. Keeton et al.

    Evaluating video layout strategies for a high-performance storage server

    ACM Multimedia Systems

    (1995)
  • Cited by (2)

    • The intelligent memory allocator selector

      2015, Computer Languages, Systems and Structures
      Citation Excerpt :

      Therefore, internal fragmentation is still a challenging problem in this area. For avoiding disadvantages of garbage collectors, memory allocators were developed for general purpose [8–12], multi-threaded processes [13], network applications [14], object oriented programming languages [15,16], video-on-demand servers [17], etc. Modern operating systems assign a default memory allocator to every process.

    View full text