Operating System Support for Mobile Agents

Abstract

An agent is a process that may migrate through a computer network in order to satisfy requests made by its clients. Agents implement a computational metaphor that is analogous to how most people conduct business in their daily lives: visit a place, use a service (perhaps after some negotiation), and then move on. Thus, for the computer illiterate, agents are an attractive way to describe network-wide computations. Agents are also useful abstractions for programmers who must implement distributed applications. This is because in the agent metaphor, the processor or place the computation is performed is not hidden from the programmer, but the communications channels are. Contrast this with the traditional approach of employing a client at one site that communicates with servers at other sites. Communication is not hidden and must be programmed explicitly. Moreover, pieces of a computation performed at different sites must be coordinated, placing an added burden on the programmer. By structuring a system in terms of agents, applications can be constructed in which communication-network bandwidth is conserved. Data may be accessed only by an agent executing at the same site as the data resides. An agent typically will filter or otherwise reduce the data it reads, carrying with it only the relevant information as it roams the network; there is rarely a need to transmit raw data from one site to another. In contrast, when an application is built using a client and servers, raw data may have to be sent from one site to another if, for example, the client obtains its computing cycles from a different site than it obtains its data.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Jan 01, 1998
Accession Number
ADA572692

Entities

People

  • Dag Johansen
  • Fred B. Schneider
  • Robbert Van Renesse

Organizations

  • Cornell University

Tags

Communities of Interest

  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Commerce
  • Communication Channels
  • Computations
  • Computer Networks
  • Computer Programs
  • Computer Science
  • Computers
  • Electronic Commerce
  • Failure Mode And Effect Analysis
  • Fault Tolerance
  • Language
  • Networks
  • Operating Systems
  • Prototypes
  • Scheduling (Production)
  • Wide Area Networks

Readers

  • Artificial Intelligence
  • Computer Networking
  • Computer Science.