Author Guidelines for 8 - Mohamed Bakhouya

vision is presented as the opposite of the virtual reality viewpoint [5]. ... pathogens that have entered the body. It detects the infection (i.e. ... recognize antigens invading a human body, such as virus, and .... satisfaction value by the following expression: ∆mij = µ(Sat ... Composition: State-of-the-Art and Research Directions”,.
173KB taille 4 téléchargements 322 vues
Service Discovery and Composition in Ubiquitous Computing M. Bakhouya, J. Gaber, A. Koukam Laboratoire SeT Université de Technologies de Belfort-Montbéliard, 90010 Belfort France [email protected], [email protected]

Abstract Large scale networks are distributed computing infrastructures that should be able to provide globally available network services. They continue to increase in size and complexity. However, to provide an almost ubiquitous availability of services, these distributed systems need to be highly flexible, self-organizing and adaptable in order to cope with the dynamically changing environment. In this paper, we describe an agent-based approach for service discovery and composition to carry out the ubiquitous computing paradigm. Inspired by natural immune system principles, scalability and adaptability capabilities can be achieved to cope with dynamic changes in network resources and user preferences.

1. Introduction Ubiquitous computing is an emergent paradigm that deals with providing globally available services in a network by giving users the ability to access services anytime and irrespective to their location. Proposed originally by Mark Weiser [1], ubiquitous computing vision is presented as the opposite of the virtual reality viewpoint [5]. Service discovery and composition are the most important issues for the implementation of Ubiquitous computing applications. Challenges are that these issues should incorporate two desirable features: the scalability and adaptability principles. Natural immune systems exhibit a useful set of organizing principles that can help us to design robust and practical solutions to meet these requirements. Indeed, current service discovery protocols like Jini, UPnP, SSDS, etc are based on the classical client-server approaches and support hierarchical or federated organizations which can be used to improve scalability through distribution [2, 3, and 4]. However, they cannot scale to the whole network. Also, increase in geographical spread and unreliable network connectivity pose problems for client-server implementations. Issues are that discovery protocols must be able to scale to billions of nodes and users, to adapt to dynamic conditions in the network.

Service composition protocols concentrates in combining different existing services. All proposed protocols such as eFlow system, ATL Postmaster, Ninja Platform, etc are based on a centralized broker who manages the service composition process [8, 11]. These protocols cannot scale to the whole network and will not work in a dynamically changing environment with unpredictable resources changes. However, they are appropriate for static environment. But, if billions of users attempt to access an increasing number of services distributed over the network, the broker quickly becomes a bottleneck. Our work is quite different from these approaches based on the classical client-server paradigm. In this paper, we present an autonomous decentralized system inspired by the immune system and based on mobile agents [13, 14]. The immune system has a set of organizing principles such as scalability, adaptability and availability that are useful for developing a networking model in highly dynamic and instable setting [9, 10]. In our approach, each user request is considered as an attack launched against the global network. The agent-based system reacts like an immune system against pathogens that have entered the body. It detects the infection (i.e., user request) and deliver an appropriate response to eliminate it (i.e., satisfy the user request). The rest of this paper is organized as follows. Section 2 presents an overview of immune system concepts. In section 3 we present our agent-based approach. Section 4 presents experimental results. We conclude in section 5.

2. Immune system: An overview The immune system defends the body against harmful diseases and infections. It is capable of recognizing most pathogens and eliminating them from the body. Jerne proposed the concept of the idiotypic network, which states that B-cells are not just isolated, but they are communicating to each other through stimulation/suppression chains that form a large-scaled network, and work as a self and non-self recognizer Bcells have receptors on their surface, which can recognize antigens invading a human body, such as virus, and produces antibodies specific to the recognized antigen [15, 16]. The key portion of the antigen recognized by the antibody is called an epitope (i.e.

antigen determinant). The key portion of the corresponding antibody that recognizes the antigen determinant is called a paratope such as depicted in figure 1. Each type of antibody has its own antigenic determinant, called idiotope. In fact, an antibody is recognized as an antigen by other antibodies. In this way, the immune system eliminating foreign antigens process is offered by the entire system in collective manner. This phenomenon is called emergent as it results from the interaction between these entities that show particular behavior that the individual entities cannot achieve on their own.

Figure 2: Agent-based architecture

3.1 Service composition A service is a software entity which accepts appropriate inputs and produces an output. Services are represented by B-agents that correspond to B-cells in the immune system such as illustrated in Figure 3. Each Bagent is considered as a peer agent. By similarity with Bcells in immune system the paratope describes the condition under which the B-agent is stimulated and the paratope describes the reference to stimulated B-agents in its environment (i.e. their identifiers, locations, service type, etc) and the degree of stimuli (i.e. affinity). Figure 1: The Jerne’s idiotypic network [15] The immune system is self-organizes, the structure of immune system is not fixed, but varies continuously according to dynamic changes of the environment. This function, called the metadynamics function, is mainly realized by incorporating newly generated cells or activated cells that proliferates and removing useless one. It turns out that this function works to maintain an appropriate repertoire of cells that cope with changes in the environment.

3. Agent-based approach In our agent-based approach, service management is abstracted to service composition and service discovery, such as depicted in figure 2. A mobile agent (i.e., Bagent) moves randomly by performing a random walk in the network and come back to its home site when it has fulfilled its objective. Also, B-agents collaborate between each other in order to select the required services. The first B-agent that encounters a request, in turn, query other B-agents until the required service is provided. This section presents the service composition and discovery protocol.

Figure 3: The B-agent description Through information stored in the paratope and idiotope record, the B-agent establishes a relationship with each other in order to construct an idiotypic network between services. The obtained idiotypic network is called a Cluster agent (C-agent). Such as shown in figure 5, the C-agent is not an entity; it refers to the composite service based on stimulation/suppression chains between B-agents. The network contains several C-agents, each with its own group of B-agents. These C-agents are created by a service dissemination process with mobile agent moving randomly in the network. Moreover diverse C-agents emerge through dynamically adding and removing Bagents to and from a C-agent. This function is similar to metadynamic function of immune system. Indeed, by adding and removing the B-cells, the immune system creates the diversity in order to recognize all antigens that enter in the body.

3.2 Service discovery The services are provided through interactions between B-agents in the C-agents. By similarity with immune system response, B-agents are not just isolated, but they are communicating to each and work as a self and non-self recognizer. Through these relationships, the idiotope of a B-agent is recognized by another B-agent as an (i.e. Request). Such as depicted in figure 4, when the first B-agent receives the request, it may contact other B-agents until the required service is found. Thus, the first B-agent that encounters the request, in turn, query other B-agents until the required service is provided. It turns out that a service emerges as a result of the interaction performed between B-agents. In this way, the service is offered in collective manner. This service discovery mechanism is therefore a highly decentralized mechanism. Affinity is a parameter that measures the priority during discovering process. It helps to select the Bagents that should be involved in the discovery process. In order to evolve effectively in a dynamically changing environment, the affinity is adjusted based on two level of satisfaction. The first level is a local satisfaction described by service offered by neighboring B-agents with respect to dynamically network changes of resources. The second level is a global satisfaction described by the user satisfaction with respect to end composite service provided. In this way, we consider two adaptation mechanisms: local and global. The local affinity adjustment is based on dynamically resources change and local service offer by neighboring B-agents (i.e. local satisfaction) and the global affinity adjustment is based on user satisfaction (i.e. global satisfaction) with the end service offered.

satisfaction value, each B-agent adjusts its relationship affinity with the other B-agent interacting with to provide the global required service. In the same way the local affinity adjustment is based on dynamically resources change and the local service provided by the neighboring B-agents. Whenever a Bagent receives a request from neighboring B-agent it sends the local service and resources to the sender. If the B-agent is satisfied it adjusts the affinity of its relationships with this B-agent. Hence, the affinity is either reinforced with positive or negative local satisfaction. For both local and global adaptation the affinity may vary from negative real to positive real as follows:

mij =mij +∆mij Where ∆mij is calculated based on the mij and the satisfaction value by the following expression: ∆mij = µ(Sat – f(mij)) Sat is the value of user satisfaction (local or global satisfaction) and µ is a positive value between 0 and 1. The value of affinity is mapped to a value between 0 and 1 by using the logistic equation: f (x) =

1 1 + e−x

This mechanism of reinforcement learning allows the B-agents to learn from user satisfaction, composed services or resources change and how coordinates, through stimulation/suppression chain to discover and select the required services in the most efficient way.

4. Experimental results The adaptation mechanism described above is implemented using NS2 [17]. With this adaptation mechanism, the C-agents can re-arrange at run-time by changing affinity values based on user satisfaction and dynamically change of resources. The experimental result depicted in figure 5 shows the effectiveness of service composition with adaptation compared to service composition without adaptation. The service composition shows its effectiveness when the adaptation mechanism is used.

0,9

Figure 4: Example of service discovery with local and global adaptation When a user is satisfied with a global provided service, the value of satisfaction is set to 1 (positive satisfaction) otherwise the value of satisfaction is set to 0 (negative satisfaction). When ever a user receives a service, it feedbacks a satisfaction value. This satisfaction value is forwarded to the B-agent involved in the composite service. Moreover, upon receiving a

Discovery time

0,8 0,7 0,6

Service discovery witout adaptation

0,5 0,4

Service discovery with adaptation

0,3 0,2 0,1 0 1 8 15 22 29 36 43 50 57 64 71 78 85 92 99 Simulator cycle

Figure 5. Discovery time with and without adaptation

5. Conclusion The increased network connectivity and the requirements to access to available services through the network make the service discovery and composition the most important factors for the implementation of ubiquitous computing applications. In this paper, we have presented an autonomous decentralized agentbased system inspired by the immune system concepts for service discovery and composition. The proposed model integrates several functionalities of the natural immune system. They exhibit self-organization with support for mobility, flexibility, and adaptability to user and network condition changes. Our further studies will proceed towards extension and formalization of this approach.

[11] D. Chakraborty, A. Joshi, “Dynamic Service Composition: State-of-the-Art and Research Directions”, citeseer.nj.nec.com/chakraborty01dynamic.html, 2001. [12] Bakhouya M. and Gaber J. and Koukam A. “ImmuneBased Middleware for Mobile Wireless Network”, IEEE Workshop on Applications and Services in Wireless Networks (ASWN2002). July 3rd - 5th, 2002, 75003 Paris. [13] Jens H. and Wei S. “Agent technology for future mobile networks”, Second Annual UCSD Conference on Wireless Communications, in cooperation with the IEEE Communications Society, San Diego, USA, March 1999. [15] Watanabe Y. et al., “Decentralized Behavior Arbitration Mechanism for Autonomous Mobile Robot Using Immune System”, Books Artificial Immune Systems and Their Applications, Springer-Verlag, ISBN 3-540-64390-7, 1999.

6. References

[16] Jerne, N.K, “Towards a network theory of the immune system”, Ann. Immunol. (Inst. Pasteur) 125C. 373, 1974.

[1] Weiser M., “ Ubiquitous Computing”, http://www.ubiquitous.com/hypertext/weiser/UbiHome.html.

[17] The Network http://www.isi.edu/nsnam/ns/.

[2] M. Robert, “Discovery and Its Discontents: Discovery Protocols for Ubiquitous Computing”, citeseer.nj.nec.com/mcgrath00discovery.html, 2000. [3] C. Bettstetter, C. Renner, “A Comparison of Service Discovery Protocols and Implementation of the Service Location Protocol”, Proceedings EUNICE 2000, Sixth EUNICE Open European Summer School, Twente, Netherlands, September 2000. [4] S. Czerwinski, B. Zhao, T. Hodes, A. Joseph, R. Katz, “An Architecture for a Secure Service Discovery Service”, Proceeding of ACM MobiCom’99, Sep. 1999. [5] Weiser M., Veizades J., and Day M., “Hot Topics: Ubiquitous Computing”, IEEE Computer 1998. [6] H. Baala, O. Flauzac, J. Gaber, M. Buid, T. El-Ghazawi, “A self-stabilizing distributed algorithm for spanning tree construction in wireless ad hoc networks”, Journal of Parallel and Distributed Computing, Volume 63, Issue 1, Pages 97-104, January 2003. [7] A. Z. Broder, A.R Karlin., “Bounds on the cover time”, SRC Rsearch Report 32, October 15, 1988. [8] Chakraborty D. and Joshi A., “Dynamic Service Composition: State-of-the-Art and Research Directions”, http://citeseer.nj.nec.com/chakraborty01dynamic.html. [9] A. Somayaji, S. Hofmeyr, S. Forrest, “Principles of a Computer Immune System”, In Proceedings of the Second New Security Paradigms Workshop, 1997. [10] M. Bakhouya, J. Gaber, A. Koukam, “Bio-inspired Model for Behavior Emergence: Modelling and Case Study”, In Procs. of Knowledge Grid and Grid Intelligence workshop (KGGI'03) at IEEE WI/IAT'03, 2003.

Simulator

NS2,