ITINERANT AGENTS FOR MOBILE COMPUTING

Citation
D. Chess et al., ITINERANT AGENTS FOR MOBILE COMPUTING, IEEE personal communications, 2(5), 1995, pp. 34-49
Citations number
28
Categorie Soggetti
Engineering, Eletrical & Electronic",Telecommunications
ISSN journal
10709916
Volume
2
Issue
5
Year of publication
1995
Pages
34 - 49
Database
ISI
SICI code
1070-9916(1995)2:5<34:IAFMC>2.0.ZU;2-C
Abstract
This article describes an abstract framework for itinerant agents that can be used to implement secure, remote applications in large, public networks such as the Internet or the IBM Global Network. Itinerant ag ents are programs, dispatched from a source computer, that roam among a set of networked servers until they accomplish their task. This is a n extension to the client/server model in which the client sends a por tion of itself to the server for execution. An additional feature of i tinerant agents is their ability to migrate from server to server, per haps seeking one that can help with the user's task or perhaps collect ing information from all of them. A major focus of this article is the Agent Meeting Point, an abstraction that supports the interaction of agents with each other and server based resources. Why is this extende d form of client/server computing desirable or valuable? There are man y detailed motivations for using itinerant agents [6]. They fall broad ly into two categories: 1) support for mobile computers or lightweight devices and 2) the emerging need in rapidly evolving networks for an asynchronous method of searching for information or transaction servic es. For example: The reduction of overall communication traffic over t he low bandwidth, high latency, high cost access networks typically em ployed by mobile computers. The ability of the agent to engage in high bandwidth communication (with a server, for example) to search throug h large, free text data bases. The ability of lightweight mobile compu ters to interact with heavyweight applications without prior detailed knowledge of the remote server's capabilities. The ability of the agen t to integrate knowledge from the client and server and perform infere ncing at the server. The ability of the user to create ''personalized services'' by customizing agents that take up residence at a server. T hese claimed advantages are, at present, hypothetical, and we are perf orming experiments to determine if they can be realized. We believe th ey merit initial exploration. Public networks already contain an enorm ous number of computers capable of providing specific services. This n umber will continue to grow. These servers employ a wide variety of pr ocessors, operating systems, data bases, application frameworks, and a pplications. An itinerant agent framework enables these numerous, hete rogeneous servers to offer many advantages. These include a host-indep endent execution environment for itinerant agent programs, standard co mmunication languages with which agents and servers can engage in dial ogues, a method of employing public security services to enable authen ticated access to server resources, and secure auditing and error reco very mechanisms.' This article is structured as follows: it begins wit h an overview of the operation of an itinerant agent framework (first section) and a review of previous work (second section). In the third section we consider likely applications of itinerant agents and discus s one specific example in detail. The fourth section is an architectur al description of the structure of itinerant agents, the languages emp loyed to create them, and the execution environments required at the s ervers. In the fifth section we give a detailed description of how an itinerant agent is processed at a server. The sixth section discusses security issues, always important in network services and especially s o in this case. Finally, in the seventh section, we describe the techn ical advantages of the itinerant agent framework and the services it e nables.