Enhanced Adaptive Mechanisms to Improve QOS in Distributed Multimedia Applications

Recent advances in computer communications, especially highly interactivedistributed applications and those relying on the transfer of multimedia information and in particular, continuous media flows. It is essential that QoS is guaranteed in a system, considering distributed system area, the transport protocol and themultiservice network. Quality of Service (QoS) in distributed multimedia systems provides a unifying theme on which the functions and facilities of the new integrated standards can be constructed. The objective of thispaper is tofocusonseveral QoS parametersat different levelsand Enhanced Adaptive Mechanismis proposed in order to improve the performance in distributed multimediaapplications.


I. INTRODUCTION
Nowadays most networks, operating systems, and databases, many resources are shared, the activities of other users can lead to large and sudden variations in resource accessibility. Due to these variations, QoS must be adapted during a presentation as smoothly and quickly as possible. In simple best-effort approaches every stage of a video pipeline, for instance simply drops data when there are insufficient resources to process it (not enough network bandwidth, buffer overflow, CPU too busy, and so on). This approach is very inefficient because all resources used for processing data that is dropped by a later pipeline stage are wasted. A more sophisticated form of adaptation is needed. Supporting complex content presentations and providing the user with control overview parameters requires a sophisticated system design.
The application needs to run severalvideo and audio pipelines at a time keeping them synchronized. Starting up and stopping as well as concatenating streams needs to be scheduled on real time basis. Connections to the servers of the respective frames need to be managed. In a single presentation, the qualityof component streams can differ considerably, when some data is retrieved from a localserver and some over a congested network transmitting continuous media data in real-time over the Internet does not allowthe use of a reliable protocol such as TCP. Because packets may be loosed, TCP tries to resend them. The resent packets, again, can be lost, and so on. Hence, transmittinga particular piece of data can take arbitrarily long. For continuous media, thisdelay is not acceptable. Not only is late data itself useless, but with a reliable protocol italso delays the delivery of subsequent data, potentially stalling the entire pipeline. Because of these problems, an unreliable UDP is preferred, and the application must deal with packet loss and out-of-order delivery.
Limited network bandwidth and disk space require compression at least of thevideo data.Most compression algorithms are lossy, making QoS management more complicated.Moreover, peculiarities of the technique used have a major impact on the designof the multimedia application. The MPEG standard of video compression, for instance uses inter-frame decoding, such that few frames can only be decoded if surrounding reference frames are already available. If reference frame is dropped, the frames belongs to it are also useless too. Any stage of the video pipeline should take these dependencies into account when making dropping decisions.
Because it is necessary for the user to control the trade-offs between several QoSdimensions, the adjustment of several parameters such as frame rate and image resolutionmust be supported. The goal is to have the configuration to provide the good quality using the resources that are presently available as the notion of best being use and task specific. Coming close to this goal requires good heuristics. Moreover, evenassessing quality based on a QoS specification is a non-trivial problem, which can be addressed using a formal error model.

II. QOS CONTROL
QoS control is a useful technique for allowing efficient resource utilization. It achieves this goal by specifying appropriate priorities among different ways of allocating them. Moreover, these systems should be able to operate in an environment with shared resources. To control resource management it is necessary to measure and assess presentation quality. Quality of Service (QoS) here denotes performance characteristics of multimedia systems. Such characteristics include low level parameters such as throughput, transmission delay, and reliability as well as higher-level dimensions such as spatial resolution, frame rate (temporal resolution), and color depth. For continuous media streams, delay jitter and synchronization are important too. Other elements of QoS include the cost of a presentation and priorities of different streams.
The following sections givean overview of the notion of QoS on several levels and how they are related to each other.After that, the main aspect of resource management is discussed. Implementation mechanisms such as admission testing, resource reservation, scheduling, policing, are debatedandthen Enhanced Adaptive Mechanism have been proposed in order to improve the performance in multimediaapplications.
The degree to which performance guarantees can be provided depends on the system support for these resource management tasks.Controlling several QoS parameters rather than having them hardcoded in multimediaapplications helps to exploit resources more efficiently by allowing finer adjustment tothe needs of the user. To support compositions of several continuous media streams, presentationdescriptions and synchronization mechanisms are needed.

A. Quality of Service Levels
The notion of QoS is an important issue. Vogel et al. [1] and Hutchison etal. [2] Give overviews of QoS in distributed multimedia systems. QoS has been discussed on several levels. The following sections categorize them as userperception and resource-level QoS.

User-Level QoS
The ultimate goal of a quality notion is to represent the value of a presentation to the user. User-level QoS is an assessment based on several issues: User Perception:Can errors in the presentation be perceived by humans? For example, it is likely that nobody can tell the difference between a video displayed with 60frames per second and one with 80 frames per second. A single missing frame may not be realized either and need not imply a reduction of quality. Apteker et al. [3] and Steinmetzand Engler [4] have studied user assessment of quality.

User Preferences:
Does the user care about certain errors? A user may see the difference between a 60 frames per second video and 40 frames per second, but may be perfectly happy with 20 frames per second, particularly when some M a r c h 1 9 , 2 0 1 4 cost is involved with a higher frame rate. Another user may feel bothered by a low frame rate, but may not care about low image resolution. Hence, perceived quality depends on subjective user preferences.
Task Dependency: What effect do errors have on the usability of a presentation for particular tasks? Reading figures and tables in an educational video requires a high spatial resolution but not a high frame rate, whereas it is the other way around for action videos such as sports.

B. Presentation-Level QoS
Presentation-level QoS is independent of the user as well as of the underlying system and devices. It describes the output, not the required resources. A set of QoS dimensions can be defined on the presentation level [6,7]. For videos, there is for instance frame rate, spatial resolution, and color depth. Delay jitter is critical for continuous media streams. If a presentation consists of several streams, for instance a video and an audio stream, the accuracy of synchronization is another important characteristic. In contrast to the actual user perception, QoS can be described easily on this level. A technically literate user can use these parameters to specify his preferences and requirements [1].

C. Resource-Level QoS
Resource-level QoS parameters define quality in terms resources for particulardevices, for instance CPU cycles; network throughput, bit error rate, and delay jitter; disk bandwidth; resolution and colors of the display. In communicating with devices (for measuringor requesting quality) and admission testers a multimedia system needs to use thesedimensions [8,9,10,11,12]. They are generallypointless to end users.

D. Mapping between QoS Levels
Any sophisticated QoS management (with or without performance guarantees) needs a way to assess the quality a resource-level QoS configuration provides. This assessmentis necessary to compare and choose among several possible configurations.The mapping between resource and presentation-level parameters is often not aproblem. For instance, for uncompressed video, the required bandwidth can be calculatedby frame rate time's pixel per image (resolution) times color depth. There may be, however, several ways of providing a particular presentation quality. The use of compression, for instance, trades CPU capacity for network bandwidth [6].Assessing a presentation-level QoS specification, that is, mapping the presentationlevel QoS parameters to a quality value, needs to somehow take user perception, user preferences,and task requirements into account.
Staehli proposes a general QoS model consistingof content, view, and quality specifications [6,7]. Content describes the outputrelated to logical space and time as edited by the author of a presentation. The user-definedview is the ideal mapping of content to output devices and real time. Quality denotes the difference between actual and ideal presentation. An error model is used to calculate thisdifference. The error in each dimension can be interpreted as a combination of several error componentslike shift rate,jitter, and synchronization error etc. Weights for the componentsof all errors can be integrated in the interpretation, allowing calibration of thequality measurement for particular users and tasks.
A multimedia application implementingsuch an error model does not depend on particular knowledge of user perception, because new information can be easily included in the error interpretation as it becomesknown. This QoS model provides an overall quality measure that includes the relativeimportance of various QoS dimensions and allows the system to assess trade-offs betweenseveral configurations.

III. RESOURCE MANAGEMENT
Conventional resource allocation strategies mainly aim at providing fairnessamong tasks. Continuous media, however, introduce real-time constraints. In an overloadsituation, a fair policy will allocate an equal amount of resources to all tasks, but this share may be too little for eachtask andleads toPoorquality.Because of these problems, new approaches to resource management have been proposed. Theycan be categorized by the level of performance guarantees they provide.

A. Performance Guarantee Best Effort
Today's common operating systems and the Internet provide sharedresources with little support for resource management techniques suitable for multimediarequirements. Hence, most applications have taken a best-effort approach in providingQoS. They adapt the quality of their presentations to the amount of resources that is currentlyavailable [13,14,15,16]. Commonly, best-effort applications have a simple, onedimensionalquality model or no notion of quality at all.

Hard Guarantees
In a guaranteed system, the user gives the required QoS. The system guarantees this quality by reserving resources suchas CPU cycles, memory, network bandwidth, and storage system access and dedicates them to the application.If there are insufficient resources for meeting the specification, the system rejectsthe request. This approach requires the ability of network and operating system to reserveresources. A variety of protocols have been proposed for implementing this reservation. Some are listed in Section 2.2.3. M a r c h 1 9 , 2 0 1 4

Soft Guarantees
Guarantees are not necessarily static. Allowing some degree of quality variation becomes useful if the resource needs of a presentation are not constant. This situationoccurs when the QoS requirements change during a presentation or the effort for providing a In some cases of QoS changes. Depending on how well the content of a stream can be compressed thebandwidth and CPU cycles requirements change. In this case, hard guarantees requirededication of sufficient resources to meet the maximum need of an application. Often sucha strong commitment is not needed and wasteful [17]. Other approaches use statisticalguarantees or specify a range of acceptable quality parameters [18,19]. This flexibilityenables the system to reduce quality temporarily in transient overload situations resultingin more tasks being admitted and in better resource utilization.

B. Resource Management Tasks
Several categories for resource management tasks and QoS processing steps havebeen identified in the literature [1,20]. Many combinations of these steps may be useful.The effects rangefrom statistical performance improvements to hard performance guarantees.

QoS Specification and Mapping
Approaches that monitor quality or that predetermine resource consumption, needa way of obtaining a QoS specification. The interface may simply consist of several slidersor it may let the user choose from several quality examples. The requirements may beinput on any of the QoS levels described in Section 2.1. If user-or presentation-level are used, the specification needs to be mapped to the resource-level for communication withdevices.

QoS Negotiation
If guarantees are to be provided, a feasible configuration must be negotiatedbetween all system components involved. Each of them must check if it has the resourcesrequired to provide therequested quality.

Resource Reservation and Admission Testing
If all system layers have sufficient resources to provide the requested QoS, theseresources can be reserved for the application. If there are insufficient resources, the new task could cause an overload situation. Hence, it will not be admitted, protecting thealready admitted tasks from unacceptable performance deterioration. The user (or application) may choose a lower quality and try again.Because performance guarantees require dedicated resources, admission testing is Necessary to provide them. However, it is also possible to use weaker admission tests thatallow overload situations to a limited extent or for a limited time, resulting in softer guarantees.Moreover, policing may be necessary to protect the admitted tasks from each otheras explained below.

Scheduling
To provide guarantees, resources not only need to be reserved but also their useneeds to be scheduled according to realtime constraints. Tasks handling continuous mediastreams need to be processed periodically by the CPU. Conventionally, operating systemsdo not support such requirements and implement some fair scheduling policy such asround robin. These scheduling policies can cause multimedia tasks to miss their deadlinescausing low quality; even if there actually are sufficient CPU cycles to process all streams. This problem can be addressed by using rate-monotonic or earliest-deadlinefirst scheduling [10]. Split-level scheduling is an advanced technique using lightweight processes [21].

Policing
If it is possible for an application to consume more resources than requested at theadmission test, it can try to obtain resources reserved for other tasks. Policing mechanismscan be used to detect these violations and react, for instance, by restricting the task'sresource consumption or terminating it.

Monitoring
Most systems that allow QoS to vary implement some kind of monitoring of thecurrently provided quality. Based on this information, the user can be notified of qualitydegradation or system components can be adjusted to changed resource availability, for instance. Enhanced adaptation techniques usually require monitoring.

C. Existing Solutions Protocols
A variety of network protocols for real-time transmission and bandwidth reservationhave been developed. Guarantees can be provided only if all routers on a path throughthe network support a protocol, however.The session reservation protocol SRP in the DASH system [8,9] processesResourcesin two phases. In the first phase, all nodes in the pipeline reserve the resourcesinvolved. If a maximum end-to-end delay is exceeded, the reservation fails. On the otherhand, if the delay is smaller than a target delay, the reservations are relaxed in a secondphase.The Internet Stream Protocol ST2+ [22] was proposed as an adjunct to IP and canbe accessed by higher-level end-to-end real-time protocols. It supports data streams to singleor multiple destinations. Prior to genuine transmission, real-time channels are established. During this phase, a resource manager at each host or router reserves CPU, mainmemory, and network bandwidth according to QoS specifications.The Tenet Group developed several protocols. The Continuous Media TransportProtocol (CMTP) [11] is M a r c h 1 9 , 2 0 1 4 based on the Real-Time Channel Administration Protocol (RCAP), a connection administration service, and the Real-Time Internetwork Protocol (RTIP), a network service providing real-time guarantees in ATM and FDDI networks. Asfor QoS, CMTP supports maximum limits of stream delay, delay jitter, granularity of adata loss, and probability of a data loss.The resource Reservations Protocol (RSVP) [12] is designed to support not onlypoint-to-point, but alsomultipoint-to-multipoint applications. Hence, it allows sharing ofdata streams. The application that reserves bandwidth is the only oneto controlthe packetsbut may allow others to read the stream, too. This approach saves bandwidth in multicastscenarios. The receiver initiates the reservation.For defining timing, multicast, and payload information, the Real-Time TransportProtocol (RTP) [23] is becoming more and more common.

Other Issues
In addition to the CPU and network, management of other resources such as storageaccess and physical memory also needs to have real-time capabilities [10,24,25].Efficient IPC mechanisms, such as memory-mapped streams [21], are critical to processlarge amounts of multimedia data in time. Several integrated systems for providing end-to-endQoS guarantees such as the Meta-Scheduler [8], the Heidelberg Transport System (HeiTS) [26,27], and the Lancaster Quality of Service Architecture (QOS-A) [17] havebeen developed. A QOS-Broker has been proposed as a way of encapsulating resourcemanagement [28].

IV. ENHANCED ADAPTIVE MECHANISMS
The Enhanced adaptive mechanism for resource management is a greedy best-effortapproach. Multimedia Application tools try to get as close to optimal quality as possible consuming asmany resources as they can get to achieve this goal. This approach does not require anysupport by the operating system nor by the network and there is no need to deal with QoSspecifications.
This approach aggressively consumes resources in order to provide a good presentation [7]. In order to save resources for other applications or to be polite toothers, the user may want to limit his resource consumption and be satisfied with a suboptimal, but sufficient quality. A specification of a maximum quality can achieve this goal. Still, no support by the underlying system is needed to do so. However, the applicationmust have a QoS specification and monitor the quality currently provided.
Simple best-effort applications adapt their resource consumption in an uncontrolledway. In a video pipeline, for instance, buffers overflow, network packets are lost, ora software decoder cannot handle the data volume, since the CPU is too busy. For informationthat is dropped at a late stage of the pipeline, all resources used for processing it inearlier stages are wasted. An overloaded pipeline performs worse than a fully loaded one.Feedback mechanisms can be used to adapt the rate at which the remote serversends frames to the rate at which they are eventually displayed [13,14,16]. Ideally, no moreframes are fed into the video pipeline than can be processed with the available resources.Controlling this dynamic adaptation is not a simple task. If adaptation is too slow, variationsin resource availability are not well compensated for. If adaptation is too fast, thesystem is susceptible to measuring errors and may overreact or oscillate.Many multimedia applications use some kind of feedback. Often, however, their structure isspecific to the application and their behavior is not well known. Cen et al. [13] have taken amore systematic approach by using a feedback toolkit for adaptation in their multimedia application the toolkit contains several filters and control algorithms [29,30]. Using well knowncomponents allows the composition of predictable feedback mechanisms based on control theory.

V. CONTROLLING SEVERAL QOS DIMENSIONS
For multimedia application, the simplest parameter to vary in order to change resource consumption is the frame rate. Having control over several QoS dimensions provides a more exact wayto specify quality (for guaranteed performance approaches) or to adapt quality (for besteffortapproaches) [25,31,31]. Such dimensions include spatial resolution, color depth, orthe lossiness of compression algorithms.If a multimedia application is capable of varying several QoS parameters, it needsa way of assessing the trade-offs between adjusting in one QoS dimension or another. Anerror model [6,7] as described in Section 2.1 can solve this problem by providing anoverall quality measure based on user perception and preferences. A quality value can be calculated for QoS configurations, creating a partial order among them. The system can assess which of two possible configurations is better. Another approach has been proposedby Thimm and Klas [33]. They describe possible ways of adaptation as ∂-sets and proposea heuristic scheme for selecting the most appropriate one, based on resource availabilityand user preferences.

VI. CONCLUSION
To control and manage the resources in distributed multimedia applications, a QoS notion is necessary. QoS can be specifiedin terms of device parameters (resource level), characteristics of the output (presentationlevel), or an assessment modeling the value of a presentation to the user (user level). Throughout this paper, most quality notions are expressed at the presentation level. Anerror model can be used to interpret a presentation level description and map it to userlevel QoS.Providing good support for the resource management to multimedia applicationsrequires extensions of operating systems and networks by new resource managementfeatures. With support of all stages of a continuous media pipeline performance guarantee is possible. However, with Enhanced adaptive mechanism for resourcemanagement approachneeds to be taken. Feedback mechanisms allow doing this adaptationin systematic and controlled way improving resource utilization. Applications thatcan control several QoS dimensions are capable of adapting their resource consumption indifferent ways approximating the needs of the user more exactly.Supporting presentations that are composed of several streams from possibly differentservers requires coordination of timing and resource management M a r c h 1 9 , 2 0 1 4 among thestreams. Such complex presentations introduce the need of additional synchronization andprefetching mechanisms.