NetMedia: a client-server distributed multimedia environment
ABSTRACT Advances in multimedia computing technologies offer new approaches to support on-line accesses to information from a variety of sources such as video clips, audio, images, and books. A client-server distributed multimedia system would be a practical approach to support such functionalities. We present the design and implementation of a client-server distributed multimedia database environment that can be used to support large digital libraries. System architecture and design are described. Server functionalities, including client scheduling, data buffering and admission control, are investigated. A client request can only be admitted if both the quality-of-service (QoS) requirements from the client and the upper bound on total buffer consumption at the server are maintained
- SourceAvailable from: Raymond T. Ng
Conference Proceeding: Maximizing Buffer and Disk Utilizations for News On-Demand.[show abstract] [hide abstract]
ABSTRACT: In this paper, we study the problem of how to maximize the throughput of a multimedia system, given a fixed amount of buffer space and disk bandwidth both pm-determined at design-time. Our approach is to maximize the utilizations of disk and buffers. We propose doing so in two ways. First, we analyze a scheme that allows multiple streams to share buffers. Our analysis and preliminary simula- tion results indicate that buffer sharing could lead to as much as 50% reduction in total buffer requirements. Second, we develop two prefetching strategies: SP and IP. As will be demonstrated by SP, straightforward prefetch- ing is not effective at all. In contrast, IP, which prefetches more intelligently than does SP, could be valuable in maximizing the effec- tive use of buffers and disk. Our preliminary simulation results show that IP could lead to a 40% improvement in throughput.VLDB'94, Proceedings of 20th International Conference on Very Large Data Bases, September 12-15, 1994, Santiago de Chile, Chile; 01/1994
- [show abstract] [hide abstract]
ABSTRACT: This paper establishes some fundamental principles for the retrieval and storage of delay-sensitive multimedia data. Delay-sensitive data include digital audio, animations, and video. Retrieval of these data types from secondary storage has to satisfy certain time constraints in order to be acceptable to the user. The presentation is based on digital audio in order to provide intuition to the reader, although the results are applicable to all delay-sensitive data. A theoretical framework is developed for the real-time requirements of digital audio playback. We show how to describe these requirements in terms of the consumption rate of the audio data and the nature of the data-retrieval rate from secondary storage. Making use of this framework, bounds are derived for buffer space requirements for certain common retrieval scenarios. Storage placement strategies for multichannel synchronized data are then categorized and examined. The results presented in this paper are basic to any playback of delay-sensitive data and should assist the multimedia system designer in estimating hardware requirements and in evaluating possible design choices.ACM Trans. Inf. Syst. 01/1992; 10:51-90.
- [show abstract] [hide abstract]
ABSTRACT: The delivery of continuous and synchronous multimedia data from a database server to multiple destinations over a network presents new challenges in the area of buffer management. Many factors that were not considered in conventional buffer management must be examined. In this paper, we investigate the principles of buffer management for multimedia data presentations in object-oriented database environments. The primary goal is to minimize the response time of multimedia presentations while ensuring that all continuity and synchronization requirements are satisfied. Minimum buffering requirements to guarantee the continuity and synchrony of the presentation of multimedia data are first proposed. A prefetching technique which satisfies these requirements is then developed. These principles and technique provide users with the full range of information required to develop a database environment for multimedia presentations. 1 Introduction Advances in multimedia computing techn...12/1995;
NetMedia: A Client-Server Distributed Multimedia Database
Sreenivas Gollapudi and Aidong Zhang
Department of Computer Science
State University of New York at Buffalo
Buffalo, NY 14260
Advances in multimedia computing technologies offer new approaches to support on-line accesses to infor-
mation from a variety of sources such as video clips, audio, images, and books. A client-server distributed
multimedia system would be a practical approach to support such functionalities. In this paper, we present
the design and implementation of a client-server distributed multimedia database environment that can be
used to support large digital libraries. System architecture and design are described. Server functionalities,
includingclient scheduling,databuffering and admissioncontrol,are investigated. Aclient request can only
be admitted if both the quality-of-service (QoS) requirements from the client and the upper bound on total
buffer consumption at the server are maintained.
Increased networking capabilities have made it easier and less expensive to tie together different types of
computers and personal workstations. In addition, current computer technology supports many multimedia
standards for software and hardware to uniformly handle multimedia data. These technologies have made
it possible to establish a distributed multimedia database environment which supports on-line accesses to
databasesites intoa singleglobalunit. Each sitehas itsown media databasemanagement system, connected
via one or more LANs (Local Area Network) and/or a WAN (Wide Area Network). In such a system, a user
at anynetworknodecan logonand access dataanywhereintheglobalsystemasthoughalldataresidedright
at the user’s local site.
Newissuesappear in suchdistributedmultimediaenvironments. Many multimediaapplications,such as
recording and playback of motion video and audio, slidepresentations,and video conferencing, requirecon-
tinuous presentation of a media data stream and the synchronized display of multiple media data streams.
Because of these time-related requirements, the allocation of various system resources becomes the most
important aspect of the system design. Specifically, a successful system must maintain balanced tradeoffs
between granting client requests and the overall performance of the system. On the one hand, the participat-
ing clients make their requests and expect these requests to be granted by the server. On the other hand, the
server wants to maintain balance among all clients and maximally utilizes all system resources.
Newsystem architectureand protocolsmust be designedto achievethe abovegoals. Some similarfunc-
tions may need be implemented at both client and server sides to achieve the best system performance. At
the client side, the synchronized presentation of multiple media streams must be maintained. A client may
have to make decisionson skippingor droppingsome data to maintain the synchronizationof presentations.
Buffer management at the local side may be needed to ensure hiccup-free presentations in case of network
delays. In addition, clients are responsible to send data delivery requests along with the quality-of-service
(QoS) requirements. A client may also periodically send data delivery rate information to the server to vary
therateat whichdataare sent ifachangeis needed in thepresentationschedule. At theserverside, protocols
admission control of clients must be carefully designed.
In this paper, we will focus ourattentionon thedesignof the entire systemand the server functionalities.
The design and implementation of a client-server distributed multimedia database environment that can be
used to support large digital libraries will be presented. We will describe the details on the system architec-
ture and design. Protocols to achieve server functionalities, including client scheduling, data buffering and
requirements from the client and the upper bound on total buffer consumption at the server are reserved.
Theremainderofthispaperisorganizedas follows. Section 2introducesthesystemarchitecture. InSec-
tion 3, we present the system design strategies, including the data model, QoS parameter specification and
buffer model. In Sections 4, we investigate the approaches for the server to schedule client request, main-
tain upper bound of buffer consumption and control the number of client requests. Concluding remarks are
offered in Section 5.
2 System Architecture
Thesystemarchitectureunderconsiderationisillustratedin Figure1. Thisarchitectureincludesadistributed
multimediaserver, asetofmultimediadatabases,andasetofclientswhichaccesstheserver. Themultimedia
system server is distributedlysuperimposed on top of a set of database management systems (DBMSs) and
file systems. As certain media streams may be represented and stored in different formats, the underlying
DBMSs or file systems can be heterogeneous. Themain function ofeach client at a workstationis to display
multiple media data to the user in the specified format. Such an architecture can provide adequate database
support for multimedia applications demanding script-based interactive multimedia presentations [TK95].
Client 1Client 2
Figure 1: NetMedia system architecture
As shown in Figure 1, the distributedmultimediadatabase management system containstwo main mod-
ules: a multimedia task language (MTL) interpreter and a media manager (MM). At each client site, the
multimedia task language MTL interpreter allows users to specify a set of tasks associated with a multime-
dia task, including synchronization requirements on component tasks. A multimedia task specified in MTL
is then processed by the interpreter, and data accesses are sent to both the MM and the underlying DBMS or
file system for processing.
TheMM componentat each serversitesupportsthemulti-useraspect ofmediadatacachingandschedul-
ing. It maintains real-time retrieval of media data from the multimedia database and transfer the data to
the client sites through network. The MM at a client site ensures that media data stored in the multimedia
database will be availableon demand in the local buffer and the synchronouspresentationof multiplemedia
The detailed design of these system components are offered in the following subsections.
Theclient-serverarchitectureconsistsof multimediaservers and multimediaclients. Themultimediaserver,
henceforthreferred astheserver, sitson topofafileordatabasesystem. Theserverisan eventdrivenprocess
that uses a time-ordered prioritized query queue to service requests. Figure 2 shows the organization of the
The server is client-driven [LD93], that is, all data transmitted from the server to the client is explicitly
requested. It is the job of the server to guarantee sufficient bandwidth. The clients have to read data at the
samerateas thetransferratetominimizethebufferrequirementsattheclient. Theinterpretationofthemedia
datafalls on theclientsas datais presented at theclientworkstations. Atpresent, threetypes ofdata, images,
N E T W O R K
Figure 2: Server configuration
digital video and audio are supported.
The server has three components, namely, a communication manager, a buffer manager, and a service
manager. The receiving of queries and sending of data to the clients is handled by the communication man-
ager. It is the responsibility of the communication manager to transfer data at the rate requested by each
client. This ensures that all data is scheduled to meet the deadline requirements of clients. The communica-
tionmanagerismulti-threaded. It startsadifferentservicethreadforevery concurrentstreambeingserviced.
The service manager handles the scheduling of service threads. The retrieval of media data and storage of
data in the buffer is the responsibility of the buffer manager. The handling of multiple client requests and
buffer management are detailed in Section 4.
The server and the clients exchange information via a virtual circuit connection (TCP). At present the
server and the clients sit on an LAN (Local Area Network). Clients control the rate at which the server must
transmit data to the clients. Clients set the rate at the beginning of each connection and can change it at the
beginning of a new request.
A client is responsible for synchronizing the images, audio and video packets and delivering them to the
output devices on the client workstation. A client makes decisions to skip or drop frames to maintain the
synchronizationof presentations. In addition,a client sends rate information to the server to vary the rate at
which data are sent if a change is needed in the presentation schedule.
Each client has four components: a service manager, a scheduler, a buffer manager, and a communica-
tion manager. The communication manager receives the data from the server, unpacks it and sends it to the
buffer manager. The communication manager also sends any rate information it receives from the scheduler
to the server. The service manager deals with the reading of data from the buffer and delivering it to the
appropriate output device. This service is multi-threaded. The service manager starts a different thread for
every media stream that is to be presented. The scheduler is responsible for synchronizing the delivery of
media objects in all the participating media streams. The buffer manager, as before, deals with the manage-
ment of data in the buffer. A buffer model that is the basis for buffer management at the client and server
sitesis presentedin thenext section. Figure3 showsthelogicallayoutofclients. Both schedulingand buffer
management at the client site will not be discussed in this paper [?, ?].
N E T W O R K
Figure 3: Client configuration
3 System Design
In thissection,wewillintroducethesystemanddatamodelsthatwillbeusedin therest ofthepaper. Quality
of service (QoS) parameters and a buffer model will be introduced.
A media stream can be viewed abstractly at several levels. At the lowest level, a media stream is viewed as
an unstructured BLOB (binary large objects) into several higher-level object classes. Objects from different
media streams may also be spatio-temporally combined into multimedia objects. Several conceptual data
models which follow this general scheme have been proposed. However, few efforts have been made to
formalize a multimedia data model at the task management level for the purpose of scheduling media data
In the proposed data model, we assume that each media stream is broken into a set of atomic objects.
Higherlevelsofobject classificationneed not tobe consideredin thiscontext. Each atomicobject represents
a minimumchunk of themedia streamthat bears somesemantic meaning. Atomicobjects in different media
streams may have different internal structures. For example, a continuous video stream can be segmented