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:
- 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 ]
- 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 .
- 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.
- 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
- The consideration of user preferences in conversational applications
is described in our report
in Sections 2, 3, 6, 7 and 8.1.
- In the case of multicasting in real time to a large number of listeners,
the sender may multicast several (logically equivalent) streams with different
qualities suitable for different subset of listeners. Some issues are shown
in the
slides above (Slides 9 through 18) << see also a paper [Boch 99b : G.
v. Bochmann and Z. Yang, Quality of service management for teleteaching
applications using the MPEG-4/DMIF, to be presented at Intern. Workshop
on Interactive Distr. Multimedia Systems and Telecom. Services, Toulouse,
Oct. 1999] describing a prototype system and a paper [ElKh
01a : K. El-Khatib, G. v. Bochmann and Y. Zhong, Selecting the QoS
parameters for multicast applications based on user profile and device capability,
Proc. Int. Conf. on Interactive Distributed Multimedia Systems (IDMS), Sept.
2001, Springer Verlag, pp. 221-232] discussing the selection of optimal
QoS parameters for a given number of simultaneous multicast streams >>
- The context of a mobile user using ad-hoc devices within his/her
"personal area network" is described here (see
also slides which
contain notes).
(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