1. Introduction 2. Basis Model - CiteSeerX

2 downloads 0 Views 114KB Size Report
concept behind the logical disk interface introduced in ... of the QoS negotiation process and the virtual host ... A virtual host is a meta-object that spans several.
An Architecture for a QOS-based Mobile Agent System

Mamadou Tadiou Kone and Tatsuo Nakajima fmamadou,[email protected] Japan Advanced Institute of Science and Technology T923-12 Ishikawa-ken, Nomi-gun, Tatsunokuchi-machi,Asahidai 1-1 TEL: +81-0761-51-1699 FAX: +81-0761-51-1360 Abstract

Improving Quality of Service (QoS) has always been a challenging task. On one hand a user or an application makes subjective QoS requests; on the other hand, a number of host machines are ready to provide resources to satisfy these requests. The architecture we propose in this paper helps build an ecient link between a user and the resource providers. this architecture implements the mobile agent technology and the concept behind the logical disk interface introduced in [1] by clearly separating QoS negotiation and resource management. Here, the mobile agent system takes care of the QoS negotiation process and the virtual host manages - allocates, reserves and deallocates - needed resources. Mobile agents help reduce network trac through remote programming and virtual hosts handle environmental changes transparently. Key words: Mobile agents, Quality of Service (QoS), QoS negotiation, Virtual Host, Place, Resource managers.

and consistency. A service provider tries to satisfy user requests with resources available (CPU time, secondary storage, memory space). Some systems based on agents like in [2] or brokerage described in [3] have been designed to deal with the issues of QoS control and management but few address the problems related to communication congestion and QoS adaptation to changing environments. In this paper we propose a simple architecture of a mobile agent system for dealing with these issues. In our context, a mobile agent is an object characterized by its attributes and methods which performs operations. A meta-object like in the Apertos Operating System described in [4] is an abstraction for the set of methods that operate on appropriate resource managers when satisfying several QoS. The foundation of our architecture lies on three concepts:

agent is an object that negotiate QoS on behalf of the user.

 An

virtual host is a meta-object that spans several resource managers.

 A

place is a dynamic virtual location inside a virtual host where mobile agents use some services.

 A 1. Introduction

A mobile agent is a program that can migrate autonomously across a heterogeneous network. At anytime it can halt, move together with its state and data to a new machine, and resume execution at the point where it stopped. Mobile agents are a new kind of abstraction in the client/server communications world. The mobile agent technology has found many interesting applications in areas where QoS control and management is an important issue. Distributed multimedia systems, real-time systems, mobile computing, factory automation and mission-critical systems are some examples. The concepts of QoS can be expressed formally in terms like accuracy, timeliness, precision, availability

The rst section of this paper introduces the foundation and motivations behind our mobile agent system architecture. Section 2 describes the architecture of our system. In section 4, we expose some related works and compare di erent approaches. Finally, Section 5 presents some concluding remarks and gives some hints to our future work. 2. Basis Model

In the design of the proposed architecture, four entities come into play: a virtual host, a virtual host interface, a place and a resource manager. A place, located inside a virtual host, is responsible for providing the ad-

equate computation resources for the execution of an agent and grants it the desired QoS. A place con nes the actions of the agent to a restricted environment for portability and security reasons. Each place is con gured specially by an interface according to the requests submitted by the mobile agent. This interface is the virtual host interface which is also in charge of translating the subjective user de ned QoS parameters into system compliant parameters.The virtual host interface receives mobile agents and translates their data (subjective QoS ) into system de ned QoS . With this data, it con gures an adequate place inside a virtual host. Then, the mobile agent enters that place and uses the services provided there. Agent

Timeliness precision Availability Consistency Place

Client Application

Agent Virtual Host Interface Agent

Timeliness precision Availability Consistency

Agent

Agent

Timeliness Availability Consistency

Consistency precision Acurracy

virtual host

virtual host

Place

virtual host

Heteregeneous Network

Resource Manager

Resource Manager

Resource Manager

Physical host

Physical host

Physical host

Figure 2: A client view of the mobile agent system virtual host 3. Agent architecture 3.1. QoS assumption

physical host

physical host physical host

Figure 1: A virtual host spanning multiple machines The virtual host interface separates the responsibilities of QoS negotiation and resources management. That is to say: the mobile agent system takes care of QoS negotiation at the user level while the virtual host deals with resource management at the machine level. The wholesystem acts more like a split-QOS server. In fact, we propose in this paper a protocol for QoS control that relies on the movements of mobile agents inside and between places. In order to satisfy its owner's QoS request, the mobile agent in our system implements an e ective policy of QoS control inside places created on demand. For example, when an application with strict time constraints like a video application makes a timeliness request together with accuracy, precision and consistency; the system gives precedence to the timeliness QOS and assigns it a high prirority. In addition, if each of these QOS type is expressed in terms of \hard" or \soft" guaranty, then some tradeo becomes necessary and the agent might visit several virtual hosts to achieve the best possible result.

In this model, we assume that a client application targets a xed number of QoS: timeliness for systems with time constraints, accuracy, precision, availability and consistency. We assume also that a number of host machines scattered across the network have the necessary resources to satisfy the user needs. Each place inside a virtual host in conjunction with the adequate resource managers located inside the host machine provides several types of QoS but not necessarily the entire set of QoS. In addition, in our context we assume that a resource reservation scheme exists at the level of each physical host machine. For matter of simplicity, here we do not deal with the case of multiple applications competing for the same resources. 3.2. Agents movements

A client application with multiple QoS requests expressed as timeliness, accuracy, precision, availability and consistency may need several resources in order to be satis ed. In this case, the mobile agent in charge migrate with these requests to an appropriate virtual host. Before any operation, the subjective QoS is translated by the virtual host interface into system de ned QoS. With this data, the interface con gures a suitable place within the virtual host. Each virtual host spans, over the network, a number of resource managers and host machines that contain the needed re-

sources. When a place is built, the mobile agent freely enters it. Then, it tries to secure the available QoS and migrate - if necessary - to other places to satisfy the complete set of requested QoS. In particular, when a strict time constraint is set by the client application, the mobile agent must assign a high priority to the timeliness parameter and lower priority to other QoS. Assuming that the execution environment is reliable, the agent migrates throughout the entire network, from virtual host to virtual host in order to satisfy all QoS requests. Client application

Mobile Agent

Virtual host

Resource manager

Physical host

1.QoS satisfaction request

rearrange available resources and maintain user satisfaction. On the other hand, as mobile agents are bound to perform many operations and use the services provided by multiple hosts, some concerns naturally arise about the reliability of the agent itself, its execution environment, the host machine and the network it uses. To deal with these issues we propose a simple scheme for failure recovery. At the time it leaves a place, an agent creates a checkpoint on a persistent store. This way, when a host crashes together with an agent or the network fails, the last host visited can completely recreate this agent with its state. 3.4. Inter-agents communication

Agent A at Place P 1

Agent B at Place P 2

2. Subjective QoS request Subjective QoS translation

Timeliness (CPU time) status request

3. Local resource allocation request 4. Local resource reservation request 7. Available QoS granted System QoS translation

5. Local resource commitment

CPU time available information

Agent A migration to Place P 2

6. Available local resource granted 8. Available QoS satisfaction

CPU time not available information

Target Place redirection

QoS negotiation phase Resources management phase

Figure 3: The QoS negotiation process

3.3. Adaptation

On one hand, during the execution of an agent at a place, resources at physical hosts can be added, removed or simply fail unexpectedly. In such cases, the virtual host interface recon gures a new place inside the related virtual host and reassigns the agent to this new place or the agent simply travels to another place. Here the only impact on the mobile agent movement is the change of path taking in account the new event.This simple and straigthforward strategy helps

Figure 4: Inter-agents communication As many agents migrate across the network on behalf of their owner to satisfy di erent QoS requests, they need to cooperate for optimization purposes. Agents communicate with one another by passing messages about new environmental conditions at their respective place. This way, an agent can have an impact on the computation of other agents. For example, when an agent, on behalf of the real time system user, plans to migrate to a place where timeliness (CPU time) used to be available, another agent staying at the targeted place knows that a failure of the local resource makes this QoS no longer satis able. So the latter agent, upon

request, sends a message to the rst agent which then changes its path.Also, the level of QoS available locally may not be sucient and the agent in need looks elsewhere for better service. The inter-agent communication is achieved through asynchronous messages rather than Remote Procedure calls (RPC) for exibility purposes. In this scheme, an agent calls a communication primitive and supplies the identity of the receiving agent and the message as arguments. 4. Related work

An agent-Based Approach for Quality of Service Negotiation and Management in Distributed Multimedia Systems can be found in [2]. In this system concepts of contract and QoS agency is introduced in relation to several classes of agents. In [2] neither the issue of reliability nor the changes in the environment are addressed. In addition, Although our basic architecture is similar in principle to the Telescript model in [?], the concept of virtual hosts in our system separating the responsibilities of QoS negotiation and resource management is new. The mobile agent technology used in our system implements the remote programming paradigm. 5. Conclusion

The main achievement of the architecture proposed in this paper is to o er signi cant advantages over classical methods in the QoS negotiation process. We borrowed the concept of Logical Disk from the operating system eld and applied it together with the mobile agent technology in the QoS negotiation and management area. Although we haven't yet implemented this model to support our claims, we are con dent that applying the mobile agent technology brings better results than others methods. The mobile agent technology is well suited to applications which execute on a network with high latency or applications which operate on a partially connected basis. We are planing to use the architecture proposed here as a support to a new type of migratory and adaptive real-time applications in further direction of research. References

[1] Wiebren de Jonge, M. Frans Kaashoek and Wilson C. Hsieh \The Logical Disk: A New Approach to Improving File Systems," In Proceedings of the

Fourteenth ACM Symposium on Operating Systems Principles, December, 1993, pp 15-28.

[2] Luiz A.G. Oliveira, Paulo C. Oliveira and Eleri Cardozo. \An Agent-Based Approach for Quality of Service Negotiation and Management in distributed systems," In Mobile Agents, Proceedings of the First International Workshop,MA '97, Berlin, Germany, April 1997, pp 1-12. [3] Klara Nahrsted and Jonathan M Smith, \The QoS Broker," In IEEE Multimedia, Spring 1995, pp. 53-67. [4] Yasuhiko Yokote, \The Apertos Re ective Operating System: The concept and Its Implementation", In ACM OOPSLA'92, pp. 414-434. [5] \Telescript Technology and Mobile Agents," In

URL: http://www.genmagic.com/Telescript

[6] Edward K. Lee and Chandramohan A. Thekkath, \Petal: Distributed Virtual Disks," In ACM Pro-

ceedings of the 7th International C onference on Architectural Support for Programming Languages and Operating Systems.

[7] Hermann de Meer and Jan-Peter Richer, A. Pulia to and O. To marchio, \Tunnel Agents for Enhanced Internet QoS," In IEEE Concurrency, April-June,1998. pp. 3 0-39.

Suggest Documents