Trader's Quality of Service Specifications and Effects on System Performance for Video-on-Demand

13
Trader’s Quality of Service Specifications and Effects on System Performance for Video-on-Demand. Eduard Babulak B.Sc. M.Sc. Ph.D. Candidate School of Information Technology and Engineering University of Ottawa 161 Louis Pasteur Ottawa, ON K1N 6N5 CANADA Abstract In this paper we present a detailed review on the Trader’s Quality of Service Specifications and the Effects on System Performance for Video-on-Demand Multimedia Applications, based on server-fault initiated session switch. Enhanced Trader lists the resources necessary to support the application’s QoS requirements and makes them available for the Session Manager, which co-ordinates the session switching. Our work demonstrates that all the components of distributed multimedia system should be involved in the QoS management process. The client’s requirements related to QoS must be adapted to various constraints supported by the distributed multimedia system components: client machines, server machines and transport system. Our studies in contrast to the existing ones present a comprehensive view on the System Performance with relation to the session switching delay. Part I. I. Introduction Increasing demands for interoperability and quality of service on current multimedia communications encourages developers to look for new solutions and technologies. CORBA is well established industry standard and offers number of service including a trading service, which constitutes founding mechanism for our approach to QoS provision within the distributed heterogeneous platforms. We briefly review the trading service and define the QoS specifications essential for our research. Based on the QoS specifications and Session Switching delay we evaluate the system Performance. Open system standards are important for the integration of distributed multimedia (MM) system support in order to achieve unified communications architecture. Quality of Service (QoS) provides a unifying theme on which the functionality and facilities of new integrated standards can be constructed. For future applications, especially those, which are highly interactive and rely on MM information, it is essential that QoS be guaranteed for the whole system. Enhanced communications protocol support such as end-to-end QoS negotiation, renegotiations, degradation and co-ordination over multiple connections is required. Design of distributed multimedia applications, such as system for access to remote MM databases or teleconferencing, requires careful consideration of QoS issues, due to the networking bandwidth and processing power required by the presentation quality of live media, such as video. For applications running in shared environment, the allocation and management of these resources is very important. In general, the best-effort approaches offered by most existing systems are not suitable for distributed MM, because some users may be ready to pay some higher price for obtaining maximum quality, while others may prefer low-cost presentations with lower quality. Emerging standards for distributed integrated environments, like the Common Object Request Broker Architecture (CORBA) from the Object Management Group (OMG) provide a software bus for a distributed MM applications [CORBA 96]. The paper is structured in four parts. First part has three sections, Introduction, Motivation and QoS Problem Statement. Second part consists of eight sections, Proposed Solution, Use of Trading Service, Application Scenario Fundamentals, Adaptive Multimedia Architecture, User Interface Session Mobility, Service Provision and Session Mobility via Trader in Video-on-demand Application, Server Failure initiated Session Switch, and Process of Session Switching from 25 to 5 fps (frames per second). Third part of the paper consists of six sections, Enhanced Trader’s Specifications, Locating the Service and Display, Enhanced Trader’s QoS Specifications, Effects on System Performance, Evaluation of Global Session Switching Delay and QoS Optimization under Resource Constraints. Last part of the paper presents Conclusions, Acknowledgements and References. II. Motivation Today's mission-critical distributed systems in military, government or business applications have a specific functional and performance requirements being reflected by string QoS constrains ([ACL+ 97], [ACH+ 97], [Geo 97]). Multimedia research explore human-computer interaction by making use of text, images, graphs, animation, sound, speech, and video ([BKH+ 96], [BDG+ 95]). When combined, developing distributed QoS-constrained MM applications (e.g., Audio/Video Conferencing) is a difficult task because of the strict requirements on system resources and the great diversity of multimedia standards and devices ([Mas 91], [AHS 91], [AEH 88]). Quality of Service is becoming increasingly important in distributed multimedia

Transcript of Trader's Quality of Service Specifications and Effects on System Performance for Video-on-Demand

Trader’s Quality of Service Specifications and Effects on System Performance for Video-on-Demand.

Eduard Babulak B.Sc. M.Sc. Ph.D. Candidate

School of Information Technology and EngineeringUniversity of Ottawa

161 Louis PasteurOttawa, ON

K1N 6N5 CANADA

Abstract

In this paper we present a detailed review on theTrader’s Quality of Service Specifications and the Effects onSystem Performance for Video-on-Demand MultimediaApplications, based on server-fault initiated session switch.Enhanced Trader lists the resources necessary to support theapplication’s QoS requirements and makes them availablefor the Session Manager, which co-ordinates the sessionswitching.

Our work demonstrates that all the components ofdistributed multimedia system should be involved in the QoSmanagement process. The client’s requirements related toQoS must be adapted to various constraints supported by thedistributed multimedia system components: client machines,server machines and transport system.

Our studies in contrast to the existing ones present acomprehensive view on the System Performance withrelation to the session switching delay.

Part I.

I. Introduction

Increasing demands for interoperability and qualityof service on current multimedia communications encouragesdevelopers to look for new solutions and technologies.CORBA is well established industry standard and offersnumber of service including a trading service, whichconstitutes founding mechanism for our approach to QoSprovision within the distributed heterogeneous platforms. Webriefly review the trading service and define the QoSspecifications essential for our research. Based on the QoSspecifications and Session Switching delay we evaluate thesystem Performance.

Open system standards are important for theintegration of distributed multimedia (MM) system supportin order to achieve unified communications architecture.Quality of Service (QoS) provides a unifying theme on whichthe functionality and facilities of new integrated standardscan be constructed. For future applications, especially those,which are highly interactive and rely on MM information, itis essential that QoS be guaranteed for the whole system.

Enhanced communications protocol support such asend-to-end QoS negotiation, renegotiations, degradation andco-ordination over multiple connections is required. Designof distributed multimedia applications, such as system for

access to remote MM databases or teleconferencing, requirescareful consideration of QoS issues, due to the networkingbandwidth and processing power required by the presentationquality of live media, such as video. For applications runningin shared environment, the allocation and management ofthese resources is very important. In general, the best-effortapproaches offered by most existing systems are not suitablefor distributed MM, because some users may be ready to paysome higher price for obtaining maximum quality, whileothers may prefer low-cost presentations with lower quality.

Emerging standards for distributed integratedenvironments, like the Common Object Request BrokerArchitecture (CORBA) from the Object Management Group(OMG) provide a software bus for a distributed MMapplications [CORBA 96].

The paper is structured in four parts. First part hasthree sections, Introduction, Motivation and QoS ProblemStatement. Second part consists of eight sections, ProposedSolution, Use of Trading Service, Application ScenarioFundamentals, Adaptive Multimedia Architecture, UserInterface Session Mobility, Service Provision and SessionMobility via Trader in Video-on-demand Application, ServerFailure initiated Session Switch, and Process of SessionSwitching from 25 to 5 fps (frames per second). Third part ofthe paper consists of six sections, Enhanced Trader’sSpecifications, Locating the Service and Display, EnhancedTrader’s QoS Specifications, Effects on System Performance,Evaluation of Global Session Switching Delay and QoSOptimization under Resource Constraints. Last part of thepaper presents Conclusions, Acknowledgements andReferences.

II. Motivation

Today's mission-critical distributed systems inmilitary, government or business applications have a specificfunctional and performance requirements being reflected bystring QoS constrains ([ACL+ 97], [ACH+ 97], [Geo 97]).Multimedia research explore human-computer interaction bymaking use of text, images, graphs, animation, sound,speech, and video ([BKH+ 96], [BDG+ 95]). Whencombined, developing distributed QoS-constrained MMapplications (e.g., Audio/Video Conferencing) is a difficulttask because of the strict requirements on system resourcesand the great diversity of multimedia standards and devices([Mas 91], [AHS 91], [AEH 88]). Quality of Service isbecoming increasingly important in distributed multimedia

ii

systems ([SN 95], [BD 94]). The nature of distributedmultimedia applications is such that they require peer-to-peercommunication support mechanisms ([Kuh 95], [QoS 95b]).Multimedia traffic needs to be delivered to end-systems,networks and end-users in a form that they can handle whilesatisfying the constraints imposed by the applications ([Sch95], [SM 92], [CCH 94]).

Quality of Service mechanisms are required toensure high quality media playout at high-performanceworkstations while at the same time providing appropriatelyfiltered lower quality media playout at low-end systems, i.e.adaptive QoS ([Ray 95], [YD 95]). Existing supportmechanisms such as multicast protocols are performancedeficient. They provide the service based on the least capablelink or node involved in the multicast session ([Dee 91], [Sha92], [Doa 93]).

III. QoS Problem Statement.

Quality of Service is not new concept; traditionallyit is employed within the domain of computer networks tospecify a set of parameters assigned to transport connections.As a rule, QoS is established through negotiation betweenservice users and providers. The process of negotiation issimple if the resources are managed by a centralized entity(e.g. an operating system) or by a set of homogeneousentities. Unfortunately, in distributed MM applications thenegotiation and management of resources is a difficult tasksince resources are very diverse, dispersed and maintained byheterogeneous entities.

Much attention has been paid to the use of CORBATrader at the initial stage of our work, but less to the use ofmore general trading mechanism that would relate to asession mobility function, QoS re-negotiation and QoSadaptability.

Part II.

I. Proposed Solution

Our work is motivated by the challenge of providingthe dynamic adaptation of QoS parameters during the MMapplication set-up. In order to satisfy user’s QoS needs wemay apply trading services1 to allocate resources necessary[QoS 95a]. The trading service would provide resourcescorresponding to optimum QoS connection2. The customerssubscribe through their account to the specific QoSparameters. According to the account privileges, the clientwill be allocated device and network resources through theproposed QoS Provisioning and Session Mobility via TradingFramework, which will search for the QoS relevantspecification provisions by using the notion of trading.

1 Trading service represents the process of arbitration of services.2 Providing we have “high bandwidth” ATM connection it makes sense to makeuse of high quality end-devices, such as terminals, workstations, video andaudio devices. In case of having a very poor connection available, the use ofhigh quality end-device may not improve the quality of service expected.

II. Use of Trading Service

The growth of computer networks and transmissioncapacity facilitates an increased amount of service offers indistributed systems ([SZ 93], [SPM 94], [SM 93]). One of theCORBA services is the trading service, which supportsclients in searching for suitable services. To support a clientin searching for a special service, a trader can be used. Thistrader has a service directory, which contains availableservices specified by service type and service property values.If a client requests a service, the trader procures a convenientone [TL 97]. In case of MM application, CORBA couldprovide access to the remote objects requested by theapplication [Sie 96]. The selection of objects andcommunication resource allocation must be optimized for thedesired QoS. Trading problem in particular could beapproached from three different angles:• clients searching for the suitable service,• integrating different local trader functions in order to

extend service access support beyond local networkboundaries, or

• The service that would take into the consideration thequality of services aspects dynamically. Because of thegrowing quality needs of many communication services,a trader should be able to allow service request withquality of service aspects.Trading could be useful in underlying infrastructures. In

other words, the QoS will reflect on what we want ascompared to what we get and how that relates to the totalresource capacity.

A trader is a third party object that enables clients tofind information about suitable services and servers. Servicesprovided by service providers can be advertised, or exported,in a trader. Such advertisements, known as service offers, arestored in the trader’s database. The advertising object (theservice provider or object acting on behalf of the serviceprovider) is called an exporter. Potential service users(importers) can import the trader who means obtaininginformation on available service and their accessibility. Thetrader tries to match the importer’s request against theservice offers in its database. After a successful match theimporter can interact with the service provider. Therelationships between trader, importer, exporter, andadministrator are illustrated in Figure 1.

Figure 1. Trader Function

iii

III. Application Scenarios Fundamentals

This section presents possible application scenariosillustrating the use of trader described in the previoussection, to allow for the session mobility. We introduce theServer and Client side application scenarios where session isswitched due to the server failure or due to the client initiatedrequest. In our approach we extend Dr. Bochmann’s work onQoS Negotiation and Adaptation [BKH+ 96] by introducinga theoretical framework of a trading mechanism, whichallows for the resource allocation necessary to support theapplication QoS requirements across distributedheterogeneous platforms. While current work in multimediasession mobility has usually been concerned withmaintaining the network connection of a mobile client, it isbelieved that session hand-off between terminal devices orservice providers is essential as well.

Session Mobility in general is the ability tosimultaneously utilize the multiple display devices allows fora new application scenarios that will ease the restrictions ofsession playback on a portable multimedia device. On theother hand, the ability to transparently re-bind a multimediaservice provider, allows the system to scale well with respectto the number of mobile clients, and will result in betterutilization of the board-band network infrastructure of thefuture. Multimedia session mobility can be broadly classifiedinto:• Mobility caused by the actual movement of a device, and• Mobility caused by session transfer from one device to

another.Most current work in multimedia falls into the first

category, and is usually restricted to maintaining the networkconnectivity of a mobile device. However, we believe that theuser rather than the mobile device is central to multimediasession mobility, which can even be achieved without thephysical movement of any device. Session mobility betweendisplay devices may be necessary because of the userpreference or physical limitations of portable mobile devices,while session mobility between remote service providers maybe needed to balance the utilization of the networkinfrastructure and improve scalability.

The limitations of portable multimedia device ariseprimarily because of its small form factor. For instance, thephysical dimensions of a portable display device will neverbe the same as thoise of a large screen. In the scenario ofmultimedia presentation or video-on-demand where the slideshow has been prepared on a portable device, it is beneficialto move the session to an available large screen in order for itto be better visible to large audience (see Figure 2). Clearly,it is often desirable to utilize alternate display devices duringa mobile multimedia session.

Figure 2. Session Mobility Scenario for display switching.

We may expect some some performance gains in asystem with portable multimedia devices, where selecting amedia service based on proximity to the device will result inreduced latency, and possibly cost. From the system point ofview, utilizing nearby media services will also better utilizethe network, resulting in a system which scales well withincreasing number of mobile users. Furthermore, such mediaservice rebinding may be necessary because the changes of adisplay device requires different service parameters. It isclearly an advantage, and often necessary, to change mediaservices during a long-running mobile multimedia session.Both, multimedia content providers, and publicly accessibledisplay devices are essential in order to fully realize thepotential of portable mobile multimedia (see Figure 3).

Figure 3. Reflection on Multimedia Session Mobility.

IV. Adaptive Multimedia Architecture

The increasing diversity of available hardware andistalled networks makes it imperative that multimediaapplications adapt to available resources (add tobibliography). Furthermore, application adaptiveness must bedynamic in order to adjust to an increasingly variableavailability of resources.

The principal pattern of interaction betweencomponents in adaptive multimedia architecture formultimedia application software is a service contract betweena service provider and a service consumer. This patternprovides a powerful framework to decompose a multimediaapplication into a hierarchy of services. Components higher

iv

up in the hierarchy are associated with more abstract notions,resulting in the hiding of detail and therefore, a simplerapplication. The same service may be provided by more thatone server, and service providers can be changed in order tomaintain a service contract. In this architecture, verticalinteraction betweeen components at different levels of thehierarchy can be considered control related, while interactionbetween components at the same level, typically the lowest, isefficient data movement.

Consider the video-on-demand application shown inFigure 4. At the highest layer, the application is composed ofa user interface components (UIC) and media servicecomponent (MSC). Both the UIC and MSC play the role of aservice provider to the top layer of the application, whichmaintains contracts with each of them. The user in turnutilizes a display and an audio playback device. The contractbetween the user interface and the application is decomposedinto contracts with the audio device and the video display.Similarly, the media service component decomposes itscontract with the application into contracts with the networkand video server.

Although the primary motivation for thisarchitecture was to solve the problem of decomposing anabstract notion of QoS into low-level QoS parameters, thearchitecture can also be form the basis for distributedcomponents of an application.

Figure 4. Architecture of Video-on-Demand Application

Details of specific service providers can beeffectively hidden from higher layers of the application. Forinstance, the top layer of the video-on-demand application inFigure 4, need not to know the existence of video serveralternatives or which alternative is being currently used. Thisknowledge is hidden by the intermediate media service,which can transparently choose a different video server whenconditions make this necessary. In the figure the red arrowindicated devices for display, audio and video server arerepresent those currently being used.The need for dynamically changing service provider can beseen in the scenario of a mobile user, who wants to redirect a

media session from the LCD display of his palm-topcomputer to a locally available large screen television. Incontrast to most other work in session redirection, we specifythis redirection as a re-binding to a different display service.

Typically, the capability of the new display isdetermined, and is used to adjust existing contractsthroughout the system. For instance, the new display mayhave the capability of displaying better quality video track(eg. HDTV) from the video server. The current server maynot support the desired format, and the media service mustchoose a different server which can provide the video streamin the desired format. Changing the display provider in thisapplication has included changes throughout the system,requiring a change in even the video service provider.

Described architecture of hierarchical contracts is apowerful basis for building adaptiveness into a multimediaapplication. The architecture is generic, unifying theadaptiveness (mobility) necessary for quality of service,resource variability, and changes in service providers.

V. User Interface Session Mobility.

We believe that session transfer from one display deviceto another must be user initiated for many reasons includingsecurity and privacy. It is important to consider user-interfacedesign issues when building a system that supportsmultimedia session migration. The important factors to beconsidered are:• The herogeneity of alternative display devices;• Making the user aware of devices in his proximity;• Initiating session transfer;• Preserving the ability to control the session.

The user-interface model, represents a multimediasession consisting of a set of application objects, each with itsown capabilities for sending and receiving media data. Adisplay device is also associated with the capabilities forpresenting media data. For example, a movie object iscapable of both audio and viceo output, while a pair ofheadphones is capable only of presenting the audio output. Acapability can be represented as a plane (see Figure 5), with aregion on the plane representing the range of quality whichcan be supported. A device is considerd capable o fpresenting the data associated with a media object if thedevice and object capabilities intersects. Furthermore, thepresentation of a media object on a particular device isconstrained to the range of quality determined by theintersection of their respective capabilities. When a sessioncontaining a movie object, which has the inherentcapabilities of video and audio output, is transferred to aloud-speaker, obviously only the audio track of that moviewill be heard.

v

Figure 5. Multimedia Capabilities.

VI. Service Provision & Session Mobility via Trader inVideo-on-demand Application.

We illustrate a case of a service provision andsession mobility via server-failure initiated request. In case ofserver- failure the session is switched automatically in orderto continue providing the service of video delivery to clientfrom the next available server registered with the traderdatabase, allowing client to view the video clip withminimum QoS degradation.

VII. Server Failure Initiated Session Switch.

This is a typical scenario of the video-on-demandapplication where the video clip is delivered to the client atpre-determined frame-rate per second and client captures anddisplays the image with display resolution reflecting on theapplication level QoS parameters. In figure 6 we illustratethe video-on-demand session, where two different serversdelivering the video clip with two different frame rates of 25and 5 frames/second are available. Client is running aSession Manager and Trader database. Video Server number1 is sending stored video of 25 frames/sec to the client(socket). Client displays the received video stream. We useavailable Motion JPEG Encoder & Decoder and IBMSoftware installed on CITR_C IBM machine.

Figure 6. Video-on-demand Session.

Video Server uses the Motion JPEG Cardaccompanied by the IBM software allowing for the frame-rate of video stream delivery to be switched from Servicenumber1 (25 frames/sec) to Service number 2 (5 frames/sec).We illustrate the scenario where the Server number 1 goesdown (dies), the session is switched from Server number 1 toServer number 2. Both Servers number 1 and number 2 QoSparameters (e.g., frame-rate) are registered with the trader(See Figure 7).

Figure 7. Video Server registry with the Trader.

Figure 8 illustrated the event when Server number 1dies (is faulty). The Client notices image degradation, whichtriggers the Session Manager to fix the problem. Importantissue is the Cell loss caused due to the session switchingdelay. For example: if 1 second in our scenario we loose 25frames if no buffer is used. The QoS agent detects the imagedeterioration caused by server failure to deliver video framesto the client (see Figure 8).

QoS Agent invokes the Session Manager via eventfunction. Session Manager inquires the trader about theavailable resource to switch the session so that Client maycontinue viewing the video clip even if it is 5 frames/sec.

vi

Figure 8. Event of faulty Video Server Number 1.

QoS specifications for lieted Video Server number 2(i.e., frame rate delivery) must qualify for video framesdelivery to the client. Session Manager exports the offerprovided by Server number 2. Figure 9 illustrates the processof trader inquiry and offer export by Session Manager.

Figure 9. Trader inquiry and offer export by SessionManager

Session Manager invokes (connects) the Servernumber 2 (e.g., via socket reconfiguration), which is capableof delivering 5 frame/sec only and disconnects the faultyServer number 1 (see Figure 10).

Figure 10. Session Manager connects Server number 2 anddisconnects faulty Server.

At this stage the process of session switching iscomplete. Session was switched successfully from faultyserver to new available server. Server number 2 is delivering5 frames/sec to the Client who is displaying the 5 frames/secvideo clip over Ethernet (see Figure 11).

The session was successfully switched from thefaulty server #1 to a new server #2, which continuesdelivering the video clip with lower frame-rate of 5 Fps.

Figure 11. Successful Session Switch.

In the following section we study in details of thevideo-on-demand application, implemented in our laboratoryon the CITR_C IBM Client/Server system.

VIII. Process of Session Switching from 25 to 5 fps.

As far as the switch from 25 to 5 fps goes onexisting CITR_C IBM Client/Server system, it all dependedon what was recorded from the input source (i.e., VCR). For

vii

the video clips that were 5 fps we simply recorded them at 5fps, for the 25 fps we recorded them at 25 fps. The tools thatcame with the MJPEG card for AIX were capable of settingthe recording parameters. There was a bit of a trick to it sincewe had to make sure that the initial frame would line up witheach other to ensure that during a switchover, it would be atthe same point in the clip.

During playback there were presentation scenario'sthat described all of the temporal relationships invoked by"pres_scen". We used also another file that contained otherinformation on the total # of frames in the clip (i.e., locatedin CBC_*country*). Basically these 2 files would setup theplayback, so as long as we load up the CMFS we’re ok.The setup for CMFS or local readers, was supposed to readdata from the CMFS (using CMFSRead()), or at an earlierpoint, we had everything reading from local datafiles, but itis not being there in the end.

In order to switch the session from 15 to 5 fps we had todo the following:1. Figure out the position in the clip (i.e., are we 8 seconds,

33 seconds, etc., from the start?);2. Then we stop playing (all media streams);3. Then we open a CMFS connection (or file) to the

appropriate clip we wish to switch to;4. Then we start retrieving data from the new connection;5. Then finally we play that data.

The good thing is we had wrappers for all of that stuff tomake it easier. The process of switching was invoked by"switch.*over" command. Then into that we just pass theappropriate CMFS id, and those id's were read from a datafile.

The data file is all part of the server, and the server readsthe data file to find out how many fps to play the data comingfrom the CMFS at. The video, audio, and text are stored inthe CMFS across the network, and the server has it's ownlittle "database" which consists of the various datafiles,CMFS id's, etc... It was either storing that informationlocally, or in the CMFS or database itself.

Storing it in UofO's database meant a whole bunch ofwork in the database schema and wouldn't have provided anyvisible advantage, and since the datafiles were simple ASCIIfiles, they were quick to setup, quick to edit, and required justa few lines of code.

Part III.

I. Enhanced Trader’s Specifications

Trading Service advertises the state of networkobjects. Let us consider network elements QoS, theapplication selects the appropriate resources for execution.QoS could be considered as a usage of resources wherebyapplying the appropriate control mechanism, trading serviceselects the appropriate resource that would satisfy the userrequirements (e.g., user should express the quality of servicerequirements).

Let us assume the scenario where we wish toprovide a fast printing without taking care of the quality ofservice. If we advertise the printer through the tradingservice, we will select one of the advertised printers as fast.Or similarly we may register two services, if we have twomechanisms to transport data, one over TCP and one overUDP (user data packet). In case that we start the applicationthat requires the fast delivery then the trader would be able toselect between the data transport resources available (i.e.,TCP or UDP). In order to access the information about thenetwork resources we could store the data in a local MIB(management information base).

In case we may want to reserve bandwidth and at thesame time we want to ensure the QoS in this way, we mayconsider to provide the gateway to the RSVP, which shouldbe activated in case of providing the appropriate QoSparameters. The selection of the RSVP would be enablethrough the use of trading service. The mechanism thatwould provide a control of trader is in fact a program, whichis involved with the trader. This program, running as aCORBA object or having a CORBA gateway, is advertised tothe trader. Trader must provide following answers:• Why? Service user must find service provider at

run-time.• What? Trading service provides match making

between objects. Service Users consult the TradingService to obtain information about suitable service.Client & Server are the Application Programs. Serverhas objects with specific methods that are registered withtrader through a Service Offer. Client doesn’t knowwhat Server has to offer, so Trader has a list of ObjectServices Contained in Server (see Figure 12 bellow).

Figure 12. Trading Service

In case we want to chose between ATM and FastEthernet or Ethernet, we should have the control programinto the switch. If we would have for example a backboneand then we can use FDDI, Ethernet, and ATM Networks,we would have the server object into the router (similar toRSVP, which is installed in on the router and the client runs

viii

on the host). Then we can use as selection criteria not onlythe type of the link but also the state.

Simple view of locating of a remote service providerthat could be carried out by use of trading service is shown inFigure 13. The proncipal operations involve the offer export,import, and final process of binding.

Figure 13. Locating a Remote Service Provider

In such architectures, each service provider firstexports its availability to a trading service. A client imports aprovider based on the specifications of a required service,which is indicated in the standard specification format.URN's3 can be considered an attempt towards such auniversal format for location independent names. A tradingservice usually also provides a directory service to determinethe available service of a particualr type.

The existence of multiple service providers ordevices result in a heterogeneous environment in which itbecomes necessary to determine a service or devicecapability. It is believed that while a user may desire to retaincontrol over the session transfer between terminal devices, hewould be relatively uniterested in controlling session transferbetween servers. Server session transfer should therefore behidden from the user, and the triggered by changes to globalparameters such as relative server load and network load, orimplicitly by the users mobility. System support is necessaryto trigger such server transfer.

II. Locating a Service and Display

Locating a nearby terminal device is substlydifferent from locating a nearby server in that the physicalproximity of a terminal device may be an insufficientcriterion. For instance, a display screen that is few metersaway is useless in a situation where a user, and the group hewants to share the information with, are located behind thescreen. On the other hand, the same screen may be useful ifthe user intends displaying information to communicate with

3 R. Moats. RFC 2141: URN syntax, May 1997.

large audience seated in front of the large screen. Clearly theorientation of the display screen with respect to the user is animportant criterion.

There are two approaches to locating the nearbydevices and services: using the physical characteristics of awireless technology to determine proximity, and using adirectory service for which the physical location of the clientis a parameter. It is believed that neither of these approachesis sufficiently general for locating display devices andservices. For instance, a directory service is unsuitable tolocate an appropriate display device because it may beimpossible to determine if the device is visible from themobile users location, or whether it had been occluded by atemporary partition. Infra-red technology, which may besuitable to advertise the location and orientation of such adisplay device, would be unsuitable to advertise the presenceof a nearby printer which may be in a printer-room nextdoor.

III. Enhanced Trader’s QoS Specifications

In order to design a system where multipleapplications coexist within a QoS management framework, itis necessary for them to either have a common understandingof how QoS should be specified, or to be able to map theirindividual specifications into a common one. To support theintegrated resource management that will be required for theefficient and dependable operation of future distributedsystems, research is needed in the areas of application-levelQoS, application-specific QoS trade-offs and resourcemanagement algorithms.

A considerable amount of work is in progress in thearea of providing QoS guarantees mover high-speednetworks [FV 90, LT 90, SCF 96, ZDE+ 93]. The ongoingwork mainly concentrates on the problem of bandwidthmanagement and switch-based scheduling to providedeterministic or statistical guarantees on end-to-end delay,throughput, and packet losses. The solutions proposed in thisarea are valuable in ensuring certain QoS for network traffic.However, another aspect of QoS management, namely, theproblem of end-system QoS management is also important. Itis not sufficient to ensure that the network traffic is deliveredwith desired QoS across a path through the network, but it isalso essential to supplement the network QoS withmechanisms that ensure that data can be delivered (andprocessed) in a timely fashion across the data path inside theend-system. The data (and control) path inside the end-system connects the network interface with the source (orsink) of network communication such as multimediaapplication running in the user space. To guarantee end-system QoS support one must consider contention forresources such as network interface, CPU (time), memory,and bus bandwidth.

Compare to the research in the area of network-levelQoS guarantees, relatively little work has been done in thearea of end-system architectures for QoS management [CCH93, NCK 93, Ram+ 93, and WW 94]. Currently, general-

ix

purpose operating system (OS) such as Unix do not includesupport for QoS specifications or include policies andmechanisms to provide predictable service and guaranteedaccess to end-system resources. The traditional OS model ofensuring fair, on-demand sharing of resources is inadequateto provide such predictive QoS guarantees [Gov 92].

In our work we are currently investigating a newarchitecture for managing resources within the distributedheterogeneous system via trader. The architecture provides acommon framework for managing resources, such asVideoServers, Client’s Display Monitors, and CPU, networkinterface, bandwidth taking into account the adaptive anddynamic nature of multimedia applications.

The principal task of trader is to provide theresource allocation. For the purpose of QoS provision wemust define clearly the service parameters at both theapplication and the network level as shown in Figure 14below.

Figure 14. QoS Specifications for Trader

The Application-level QoS parameters aredependent on Network-level QoS or Server-level QoS. In ourstudies assume that:1. The Session Manager is machine independent (i.e.

independent of Operating System, Video Player,etc.);

2. Network is bottleneck free;• if not the we would have consider additional

network delay,3. Jitter (i.e. delay variation) is introduced by network

and physical distance between the Client and Server.4. We must consider both Network-level and

Application-level QoS parameters.

IV. Trading Effects on System Performance

It is to a great advantage to use trading service tosolve the problem of interoperability within the distributedheterogeneous environments, but it does introduce the

additional functionality to the system, which in effectcontributes to system global delay as shown in Figure 15.

Figure 15. Effects on Session Switch on System Performance

In our application scenario we study the process ofsession switching from the faulty Server #1 delivering videowith 25 fps, with the available Server #2 delivering videowith 5 fps. The Session Manager controls the session switch.The Session Manager conducts the server connects anddisconnects via trader. In normal system state clientexchanges messages with Server #1, such as Request Video,Send of First Block, Request n bytes and finally send n bytes.The event indicating the Server #1 as faulty, triggers theSession Manager, which inquires the trader about availabilityof Server #2 according to its QoS specifications.Consequently the client will export the service offer andconnect to Server #2. Once client is connected to the Server#2 it starts to request the video and the process of the sessionswitching is complete. Server #2 is now ready to send thefirst block of video to the client. The process of sessionswitch introduces a delay, which we simple identify as theSession Switching Delay “D”. The process of sessionswitching is describer in the Section VII in part II of thispaper.

The distributed heterogeneous environment mayintroduce the requirement of registering more that one VideoServer, as well as creating the federation of tradersdepending on the location and the availability of theresources necessary for the application specified QoS. In caseof having more than one resource or trader we must study theissues of global session switching delay, which constitute thematerial covered in the next section.

V. Evaluation of Global Session Switching Delay

Client may receive the video clip from number ofdifferent Video Servers, or the Server #2 in our applicationscenario may die and there is a need to reconnect to theServer #3.

x

Figure 16. Global Session Switching Delay caused by ServerReconnect

As illustrated in Figure 16, the Global SessionSwitching Delay depends entirely on the system stability andthe duration of reconnect process. This automatically impactsthe system QoS by lost of frames and introduced delays dueto the Session Switch steps necessary to keep the sessionalive.

The Session Switching latency has negative effectson the frame loss, but give advantage of facilitating thesession across the heterogeneous environment (i.e., the clientis not aware neither of a location nor of the configuration ofdifferent servers sitting at different platforms such as, Unix,Windows, etc.) Based on the trading policies we wish toelaborate the Session Switching algorithm, with optimizedQoS adaptability process.

In our scenario we have 2 different servers capableof delivering a video streams with two different frame-rates.Our theoretical concept allows for “n” number of differentservers to be employed and deliver the video clip to theclient. In case of server #2 failure the Session Managerconnects to the next available server regardless of its locationor the operating system.

The CITR_C IBM Client/Server systemimplemented in our lab uses the Motion JPEG card, whichallows for more flexibility and minimizes the loss of framesdue to the efficiency of its compression algorithm. WithMotion JPEG card each picture is compressed individually soin case of fast switching we will loose a minimum number offrames or any frame (see Figure 17).

Figure 17. Implementation Scenario with the use of MotionJPEG

Session Switching Delay impacts the loss of frames andmust be taken into consideration in the process of definingthe session switching policies. Policies on session switchingwith or without the buffer is a choice that we have to makebased on the following facts:1. What is the switching latency?2. At what frame-rate Server #2 operates?3. What switching frequency we are dealing with?4. What buffer sizes we are allowed to use?5. Cost factor $?6. Minimize the cell loss due to session switch without the

buffer.7. Display delay caused by buffering policies.

Figure 18 illustrates the Session Switching Policies and theirimpact of the system performance.

Figure 18. Session Switching Policies and their impact on theSystem Performance

xi

VI. QoS Optimization under Resource Constraints

In this section we address QoS optimization underresource constraints in distributed real-time multimediaservices. Even though resources such as network bandwidthand CPU power become more and more readily available, itis naive to assume that these resources will be sufficient atany time to satisfy all user requirements. Therefore, amechanism to adapt to changes in resource availability isrequired. We assume that for each medium of a multimediaservice there exists a set of implementations, both withdiffering resource consumption and provided QoS. Forexample, different implementations of a video or audiochannel may vary parameters such as frame or sampling rate,sample resolution etc. Choosing one implementation for eachmedium configures a service. Using both resource-resourceand resource-QoS trade-offs, a service can adapt to changingamounts of available resources by selecting a different set ofimplementations:1. Higher utilization of one resource may be traded against

lower utilization of another without QoS degradation.For example, computing motion vectors in MPEG videocompression saves network throughput at the expense ofCPU time.

2. The QoS of one or more media may be traded againstlower resource consumption. For example, droppingincoming frames will save CPU time in exchange for amore jerky display, while reducing the luminance -chrominance ratio in MPEG video compression savesnetwork throughput at the expense of lower colorresolution.

Part IV.

Conclusions

The objective of this research was to addressthe problem of Quality of Service Provision and the SessionMobility for the CORBA-based Distributed Multimediaacross Heterogeneous Platforms via enhanced Trader. Wehave presented a comprehensive view on the effects onSystem Performance, resulting from the session switchingdelay.

We have studied most typical scenario of the video-on-demand multimedia applications and illustrated the caseof the server-failure initiated session switch.

Major contribution of our research is in providingdetailed studies on the concept of the Session Switching andthe QoS Provision via Trader. We allow for different serversand clients to run on different platforms connected throughinter-connected networks.

Result of our research leads to further analyticalstudies on system performance measures and efforts to solvethe optimum QoS provision, based on the network resourceavailability and the applications-defined QoS requirements.

Acknowledgments

Author is grateful for guidance given to him duringhis visit at the University of Ottawa. All including, Dr. N.D.Georganas the Thesis Director, Dr. Ionescu the Thesis Co-Director and Dr. Groza have contributed to this research.

Author is currently a full-time Faculty at theDepartment of Electrical & Computer Engineering atPennState Erie at the Behrend College. Author wishes toexpress his sincere gratitude to Dr. R. Progelhof, the Directorof School of Engineering & Engineering Technology for hisguidance and motivation, to Dr. R. Ford, In Charge ofDepartment of Electrical & Computer Engineering for hissupport and supervision. Finally, my gratitude goes to mycolleagues including, Dr. R. Weissbach for hisencouragement and Dr. Chris Coulston for his criticalreview.

REFERENCES

[ACH 97] C. Aurrecoechea, A. Campbell, and L.Hauw. “Survey of QoS Architectures.”Multimedia Systems Journal, Special Issueon QoS Architectures, 1997.

[ACL+ 97] C. M. Adam, M.C. Chan, A. A. Lazar, J.-F. Huard and K. S. Lim, “The BindingInterface Base Specification Revision 2.0”,OPENSIG Workshop on Open Signallingfor ATM, Internet and Mobile Networks,The Moller Centre, Cam-bridge, UK, April17-18, 1997; also CTR Technical Report#475-97-09,Center forTelecommunications Research, ColumbiaUniversity, New York, April 16, 1997,available under URL:http://comet.ctr.columbia.edu/publications/standard_contributions/BIB.html.

[AEH 88] Ahuja, S., Ensor, J. and Horn, D.N. “TheRapport multimedia conferencing system”Conf. On Office Info. Syst. Palo Alto, CA.,March, 1988, pp. 1-8.

[AHS 91] D. Anderson, R. Herwitch and C. Schaefer,SRP: A resource Reservation Protocol forGuaranteed-Performance Communicationsin the Internet, The International ComputerScience Institute, Berkley, 1991.

[And 95] Andrea V. et al. “Distributed Multimediaand QoS: A Survey,” IEEE Multimedia,Summer 1995.

[BD 94] Towards an Architecture for DistributedMultimedia Applications Support;Proceedings of the InternationalConference on Multimedia Computing andSystems, Boston, Massachusetts, May 1994

[BDG+ 95] G.v.Bochmann, R.Dssouli, J.Gecsei andB.Kerherve Posters on: ” Quality of ServiceNegotiation and Adaptation: Project

xii

Overview “ The Third Annual CITRhttp://www.iro.umontreal.ca/labs/citr/posters.html, 29 Sep 1995.

[BDG+ 96] P.G. Bosco (CSELT), E. Dahle (Telenor),M. Gien (Chorus), A. Grace(BritishTelecom), N. Mercouroff, N.Perdigues (Alcatel Alshtom Recherche),J.B.Stefani (France Telecom) “TheReTINA Project: An Overview”, ReTINATechnical Report 96-15, May 1996.

[BKH+ 96] G.V. Bochmann, B. Kerherve, A. Hafid, P.Dini and A. Pons, Functional Design ofAdaptive Systems. In Proceedings of theIEEE Workshop on Multimedia SoftwareDevelopment, Berlin, Germany 1996.

[Bla 95] U. Black “ATM: Foundation forBroadband Networks”, Prentice Hall, 1995.

[CCH 94] A. Campbell, G. Coulson and D.Hutchison, A Quality of ServiceArchitecture, ACM SIGCOM ComputerCommunication Review, Vol. 24, No. 2, pp.6-27, April 1994.

[CORBA 96] Object Management Group “CORBA 2.0Specification”, OMG Technical DocumentPTC/96-03-04, USA, March 1996.

[Dee 91] S. Deering. Multicast Routing in aDatagram Internetwork. Ph.D. thesis,Stanford University, 1991.

[Doa 93] J.M.S. Doar “Multicast in theAsynchronous Transfer ModeEnvironment”, PhD Dissertation, St.John’s College, University of Cambridge,January 1993.

[Geo 97] N.D.Georganas, "Multimedia ApplicationsDevelopment: Experiences", J.MultimediaTools and Applications, Vol. 4, No. 3, May1997, pp.313-332 (Invited)

[HLK 95] A. T. Halteren, P. Leydekkers and H.B.Korte, “ Specification and Realization ofStream Interfaces for the TINA-DPE”,KPN Research, Proceedings of TINA-95,February 1995.

[Kuh 95] P. J. Kuhn, “ Quality of Service in ATMNetworks”, Slides, 1995.

[IMA 94] IMA – Interactive Multimedia Association“IMA Recommended Practice –Multimedia Systems Service”, SecondDraft, September 1994.

[Laz 97] Lazar, A.A., "ProgrammingTelecommunication Networks", IEEENetwork, September/October 1997, pp. 2-12. This paper is a Revised Version of thekeynote address given by the author at theInternational Workshop on Quality ofService, Columbia University, New York,May 21-23, 1997. Published in theworkshop proceedings (pp. 3-23).

[LLM 95a] "Binding Model: Motivation andDescription", Lazar, A.A., Lim, K.S. andMarconcini, F., CTR Technical Report #411-95-17, Center for TelecommunicationsResearch, Columbia University, New York,June 1995.

[LLM 95b] "The Binding Interface Base", Lazar, A.A.,Lim, K.S. and Marconcini, F., CTRTechnical Report # 412-95-18, Center forTelecommunications Research, ColumbiaUniversity, New York, June 1995.

[LLM 96] Lazar, A.A., Lim, K.S and Marconcini, F.,"Realizing a Foundation forProgrammability of ATM Networks withthe Binding Architecture", Journal ofSelected Areas in Communications, Vol.14,No.7, September 1996, pp. 1214-1227.

[Mas 91] Masaki, S., et al. “ Personal multimedia-multipoint teleconferencing system forbroadband ISDN”, 3rd IFIP WG6.4 Conf.On High Speed Networking, Berlin,Germany (March 18-22, 1991) pp.263-278).

[MJ 95] P. Leydekkers and M. Mikael Jorgensen,“Stream Interfaces”, TINA-C, Contributionto OMG Telecommunications SpecialInterest Group (TELSIG), December 1995.

[Onv 95] R. O. Onvural “Asynchronous TransferMode Networks - Performance Issues”,Artech House, Second Edition, 1995.

[QoS 95a] Quality of Service – Framework, ISO/IECCD 13236.2, October 1995.

[QoS 95b] ISO/IEC JTC1/SC21/N9309: Open SystemInterconnection, data management andOpen Distributed Processing – Quality ofService, Basic Framework – WorkingDraft, January 1995.

[Per 95] Perrow, G.S., et al. “The AbstractionModeling of Management Agents” Proc.Of the Int. Symposium on IntegratedNetwork Management, ISINM95, May1995.

[PSW 96] Popien, C., Schürman, G., Weiß, K.-H.:Distributed Processing in Open Systems (inGerman). Teubner, 1996.

[Ray 95] K. Raymond, “Stream and Qos: a WhitePaper”, Contribution to OMGTelecommunications Special InterestGroup (TELSIG), December 1995.

[RB 93] K. Ravindran and V. Bansal, “ DelayCompensation Protocols ForSynchronization of Multimedia DataStreams”, IEEE Transactions onKnowledge and Data Engineering, SpecialIssue on Multimedia Information Systems,August 1993.

xiii

[RCC+ 94] P. Robin, G. Coulson, A. Campbell, G.S.Blair, and M. Papathomas. “Implementinga QoS controlled ATM basedcommunications system in Chorus”. InProceedings of 4th International Workshopon Protocols for High Speed Networks,Vancouver, Canada, 1994.

[RROW 95] D. Raychaudhuri, D. Reininger, M. Ott,and G. Welling. Multimedia processingand transport for the wireless personalterminal scenario. In Proceedings of theSPIE Visual Communications and ImageProcessing Conference, VCIP’95, Taipei,Taiwan, May 1995.

[Sch 95] J. T. Schuilenga, “ QoS Monitoring andModelling of Continuos Streams in aDistributed Environment”, M.Sc. ThesisKPN Research/ University of Twente, April1995.

[Sha 92] N. Shacham. Multipoint communication behierarchically encoded data. In IEEEInfocom’92, pages 2107-2114, 1992.

[Sie 96] Jon Siegel, “CORBA fundamentals andProgramming”, John Willey & Sons, Inc.1996.

[SM 92] Steinmetz, R., and Meyer, T., “Modelingdistributed multimedia applications”, Int.Workshop on Advanced Communicationsand Applications for High Speed Networks,Munich, Germany (March 16-19, 1992).

[SM 93] Schill, A., Mock, M.: DC++: DistributedObject-Oriented System Support on top ofOSF DCE; Distributed SystemsEngineering Journal, Vol. 1, No. 2, 1993.

[SN 95] R. Steinmetz and K. Nahrstedt,Multimedia: Computing, Communicationsand Applications, Prentice Hall, 1995.

[SPM 94] Spaniol, O., Popien, C., Meyer, B.:Services and Service Trading inClient/Server Systems (in German).Thomson Publishing GmBH, 1994.

[SZ 93] Schill, A., Zitterbart, M.: A SystemFramework for Open DistributedProcessing; Journal of Network andSystems Management, Vol. 1, No.1, pp. 71-93, 1993.

[TH 92] Tawbi, W., and Horlait, E., “Video Codingand Quality of Service”, MASI InternalReport, University of Paris VI, France(1992).

[TL 97] D. Thißen, C. Linnhoff-Popien, “FindingOptimal Service Within a CORBATrader,” to appear.

[XBIND 97] "The xbind Project at ColumbiaUniversity", Lazar, A.A., Web Site, athttp://comet.ctr.columbia.edu/xbind

[Yag 95] Yagi, H., et al. “TINA-C ServiceComponents,” Proc. TINA95 IntegartingTelecommunications and DistributedComputing-from Concept to Reality,February, 1995.

[YD 95] Zhonghua Yang and Keith Duddy,"Distributed Object Computing withCORBA", DSTC Technical Report23, June, 1995.

[ZM 97] Nuncio M.S. Zuquello and Edmundo R.M.Madeira. “A mechanism to ProvideInteroperability between ORBs withRelocation Transparency”. In IEEE 1997.

Edward Babulak received theHigh National Diploma inElectronics in 1976 and theB.Sc. Degree in ElectricalEngineering in 1982, both fromthe Slovak TechnicalUniversity. Edward worked 10years in industry as a projectmanager, consultant and a

system engineer. He received a High National Certificate inComputer Aided Engineering from Brighton College ofTechnology, U.K. in 1990 and a Master of Science Degree inComputer Science from the University of East London, U.K. in1991. Edward is currently a part-time graduate student at theUniversity of Ottawa, working on the completion of his doctoralthesis in Electrical Engineering. He has been a faculty member inElectrical and Computer Engineering at Penn State Erie sinceAugust 1999 and holds the rank of a lecturer. His research interestsare in the areas of QoS Provision for a CORBA-based MMapplications, distributed heterogeneous systems and parallelcomputing. He is a Member of the IEEE, Professional Member ofACM, Member of American Mathematical Society (AMS) andMember of the Mathematical Association of America (MAA).