Interaction between Mobile Agents and Web Services

Interaction between Mobile Agents and Web Services

Kamel Karoui
DOI: 10.4018/978-1-60566-014-1.ch097
OnDemand:
(Individual Chapters)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

With the interconnection of computers in networks, particularly through the Internet, it becomes possible to connect applications on distant computers. An application works perfectly whether it isdistant or local. Moreover, a distant applicationallows us to benefit from the following additional advantages: • Data and processes can be stored on a remote server that has a bigger storage capacity than the local host. Data can be shared between users using, for example, Remote Procedure Call (RPC), Remote Method Invocation (RMI), Java Message Service (JMS), and Enterprise JavaBeans (EJB) (Frénot, 2000): • Distant application can be used at the same time by several users; • Updating data and processes can be done only in one host; • Flexibility on distribution of the load: An application can be executed on the available machine; and • High availability: A faulty machine does not affect the others. Many approaches have been proposed and developed for communication between distant hosts on a network such as Message Passing (MP), Remote Evaluation (REV), Remote Object Invocation (ROI), Mobile Agents (MA), Common Object Request Broker Architecture (CORBA), Web Services (WS), RPC, and RMI (Dejan, LaForge, & Chauhan, 1998). In this article, we will focus on two particular paradigms: The Web Services and the Mobile Agents. WS defines a standard to invoke distant applications and to recover results across the Web. Its invocation is made in synchronous mode. MA has the faculty to move easily between a network’s hosts to execute user requests. MA communication is made in asynchronous mode. The fusion of these two complementary technologies will solve many problems. This article is composed of the following sections: In the first two sections, we introduce the concepts of WS and MA, their advantages and disadvantages. In the third section, we present different kinds of interaction between MA and WS. Finally, we study an example in the last section.
Chapter Preview
Top

Introduction

With the interconnection of computers in networks, particularly through the Internet, it becomes possible to connect applications on distant computers. An application works perfectly whether it isdistant or local. Moreover, a distant applicationallows us to benefit from the following additional advantages:

  • Data and processes can be stored on a remote server that has a bigger storage capacity than the local host.

Data can be shared between users using, for example, Remote Procedure Call (RPC), Remote Method Invocation (RMI), Java Message Service (JMS), and Enterprise JavaBeans (EJB) (Frénot, 2000):

  • Distant application can be used at the same time by several users;

  • Updating data and processes can be done only in one host;

  • Flexibility on distribution of the load: An application can be executed on the available machine; and

  • High availability: A faulty machine does not affect the others.

Many approaches have been proposed and developed for communication between distant hosts on a network such as Message Passing (MP), Remote Evaluation (REV), Remote Object Invocation (ROI), Mobile Agents (MA), Common Object Request Broker Architecture (CORBA), Web Services (WS), RPC, and RMI (Dejan, LaForge, & Chauhan, 1998). In this article, we will focus on two particular paradigms: The Web Services and the Mobile Agents.

WS defines a standard to invoke distant applications and to recover results across the Web. Its invocation is made in synchronous mode. MA has the faculty to move easily between a network’s hosts to execute user requests. MA communication is made in asynchronous mode. The fusion of these two complementary technologies will solve many problems.

This article is composed of the following sections: In the first two sections, we introduce the concepts of WS and MA, their advantages and disadvantages. In the third section, we present different kinds of interaction between MA and WS. Finally, we study an example in the last section.

Top

Web Services

Definition

WS are a technology that allows interaction between applications distantly via the Internet, and thus independently of the platforms and the languages that they use. They lean on standard Internet protocols (XML, HTTP) to communicate. This communication is based on the principle of calls and answers, performed with messages in XML (Daum & Merten, 2003; Windley, 2003)

Web Services Components

WS are based on the following group of XML technologies which work together (Champion, Ferris, Newcomer, & Orchard, 2000) (see Figure 1):

Figure 1.

WS functioning

978-1-60566-014-1.ch097.f01
  • SOAP (Simple Object Access Protocol) is a protocol, standardized by W3C, which allows the invocation of remote methods by the exchange of XML messages (Box et al., 2000);

  • WSDL (WS Description Language) is a norm derived from XML which represents the interface of the use of a WS. It provides specifications necessary for the use of a WS by explaining its methods, its parameters, and what it returns. WSDL is a services description language which represents the public interface of service and is accessible from a URL (Christensen, Curbera, Meredith, & Weerawarana, 1999); and

  • UDDI (Universal Description, Discovery, and Integration) is a specification defining the way to publish and discover WS on a network. These descriptions of services are centralized on a server, private or public, that users can access. Such a server can be seen as a yellow pages directory (Kurt, 2001).

Key Terms in this Chapter

WS-MA Interaction: It is an interaction in which a Web service invokes a mobile agent for a request execution.

Hybrid Interaction: It is a mixture of MA-WS interaction and WS-MA interaction.

MA-WS Interaction: It is an interaction in which a mobile agent invokes a Web service for a request execution.

Distributed Application: This is an application composed of distinct components running in separate runtime environments, usually on different platforms connected via a network.

Mobile Agent: It is a mobile software entity defined with a behavior, autonomy, a social aspect on communication level, reactivity, a degree of security, and a capacity to memorize information.

Aglets: This term refers to a Java-based mobile agent platform and library for building mobile agent-based applications.

Web Service: It is a paradigm that allows interaction between applications distantly via the Internet and thus independently of the platforms and the languages that they use.

Complete Chapter List

Search this Book:
Reset