Course notes by Gregor v. Bochmann, University of Ottawa

Global quality of service management

(A) Different categories and dimensions for "Quality of Service" for different applications

Sometimes "quality of service" has a very broad meaning, referring to various non-functional requirements, such as server response time, system reliability, data accuracy and other issues. This general perspective of  "quality of service" is explored in my paper Quality of service management issues in electronic commerce applications (see Sections 2 and 3) in the context of e-commerce applications.

(B) Quality of service management at the application level: Example of the News-on-Demand project

We consider here the QoS management issues at the application level, including user preferences, client device limitations, server limitations, the quality of the stored MM documents, and available network QoS, as presented in these slides (see Slides 1 through 8). An example system is the News-on-Demand prototype described here (see Sections 1 and 2) [Hafi 99a :  A. Hafid and G. v. Bochmann, An approach to QoS management in distributed MM applications: Design and an implementation, Journal on Multimedia Tools and Applications, Vol. 9 (1999), pp.167-191 ]

(C) Quantifying user preferences

It is important to note that the constraints imposed on the application by the different system components (such as the client's workstation, the server, the network) often allow for many different choices of QoS parameters for the given application. Therefore it is useful to also consider user preferences during the selection of application parameters. In principle, the adaptive application should select the parameters in such a manner as to optimize the user's satisfaction. However, in order to do such an automatic adaptation, it is necessary to quantify the user preferences in such a manner that they can be taken into account by the QoS management agent.

Different appoaches for specifying user preferences have been proposed in the literature. One example is a degradation path: the user may specify that for the case that the best quality of video cannot be provided because of bandwidth restrictions, the following is the proposed steps in which the presentation should be degraded (until presentation quality satisfying the constraints is obtained): eliminate color, reduce frame rate to 10, reduce resolution  by factor 2, reduce frame rate to 2, reduce resolution by another factor of  2, only keep sound.

Another approach is to let the user specify  his/her satisfaction as a function of the quality parameters. To reduce the amount of information to be provided by the user, some people suggest that the satisfaction of the user can be characterized by two values: (a) minimal acceptable value of parameter, and (b) ideal value of parameter (which means further improvement to the quality will not provide any further satisfaction to the user). If the user satisfaction always lies between 0  and 1, then the minimal acceptable value corresponds to the satisfaction 0and the ideal value to satisfaction 1. This approach is well explained in a paper by Richards et al (see Sections 3 and 4), which also explains how these user preference parameters can be used to select technical QoS parameters which lead to optimum user satisfaction. In our work, we adopt a linear interpolation between these two extream points and also introduce weight factors for the different quality of service parameters in order to obtain an overall satisfaction of the user (see Section 9 in our report ). How this approach has been integrated into the News-on-Demand system mentioned above is explained in Section 3 in the paper mentioned above .

It is important to note that the user will always ask for the best QoS unless he/she has to pay for it. In order to avoid system overload (in the network and in the servers) it is therefore important to foresee some suitable charging scheme; without such cost constraints, the system will only be able to provide best effort service, like the current Internet. Therefore we have introduced the overall cost as another QoS parameter for which the user may indicate a limit of acceptability.

(D) An approach to top-down development of distributed multimedia systems

In the context of our work on the News-on-Demand prototype system, we have proposed a 4-step, top-down approach to the development of distributed multimedia systems which consists of the following steps:
  1. Abstract functional specifications identifying major system components/objects independently of their location in the distributed environment (see explanation for the News-on-Demand system in Section 3 of this paper  [Boch 96a :  G. v. Bochmann, B. Kerherve, A. Hafid, P. Dini and A. Pons, Architectural design of adaptive multimedia systems, proceedings of IEEE Workshop on Multimedia Software Development, Berlin, Germany, March 25-26, 1996 ]
  2. Architectural design of the system taking into account the distribution and the protocols used for communication. Simple performance models for stream processing (see this slide) may be used at this stage. The example of how the Version object identified in the News-on-Demand system under point (1) is shown here
  3. Functional design, based on the above architecture, defining the interfaces between components (at an abstract level) and the dynamic behavior of the components. Note that the interfaces include (a) request-response interfaces for system control (for which one may adopt the RPC paradigm or the paradigm of message passing where messages, also called "service primitives", are exchanged between the two components connected by the interface),  and (b) stream interfaces for sending or receiving multimedia data streams. 
  4. Implementation. Here the components and interfaces defined in Steps 2 and 3 should be tracable in the implementation. A sketch of the implementation structure of the News-on-Demand system is shown here ; several of the components identified in Figure 4 of the paper mentioned above can be found in this implementation structure; the thick ovals on this slide indicate interfaces that were identified as object interfaces in Figure 4. Note that the components dealing with stream interfaces are implemented as real-time threads realized through a real-time scheduler executing as a high-priority task within the Unix operating system (which itself does not support real-time process scheduling).

(E) QoS management for conversational applications, mobile users and ubiquitous devices

(F) Notes on different perspectives for system optimization

Different users may have different perspectives on their need for quality and their willingness to pay for it. The last slide of the  slides above shows two quite different functions that indicate the willingness to pay as a function of the quality obtained. Open question: Is willingness to pay directly comparable to user satisfaction, as discussed above ?

The service provider (either the provider of the communication service or the provider of a server-based service) usually has a quite different perspective on system optimization; usually this is related to the economic profit that can be obtained. There is many related issues related to e-commerce, profitability and competition which are not dealt with in this course.

<< Economic model of the commodity market: demand-supply curves; competitive advantages (see Slides numbered 16 through 24 from talk by Martin at CITR Annual Conference) >>


Last updated: November 4, 2004