Abstract
We describe the architecture and programming environment of Ajanta, a Java-based system for programming applications using mobile agents over the Internet. Agents are mobile objects which are hosted by servers on the network. Ajanta provides primitives for creating and dispatching agents, securely controlling agents at remote sites, and transferring agents from one server to another. For secure access to server resources by visiting agents, a proxy-based access control mechanism is used. The Ajanta design includes mechanisms to protect an agent's state and prevent misuse of its credentials. We describe the use of migration patterns for programming an agent's travel path. A pattern encapsulates the abstract notion of agent mobility. Pattern composition allows one to build complex travel plans using some basic migration patterns. Finally, we present agent-based distributed applications implemented using the Ajanta system to demonstrate Ajanta's functional capabilities. These include a distributed calendar management system, a middleware for sharing files over the Internet, an agent-based middleware for distributed collaborations, and an agent-based network monitoring system.
Original language | English (US) |
---|---|
Pages (from-to) | 123-140 |
Number of pages | 18 |
Journal | Journal of Systems and Software |
Volume | 62 |
Issue number | 2 |
DOIs | |
State | Published - May 15 2002 |
Bibliographical note
Funding Information:This work was partially supported by national science foundation grants ANIR 9813703, EIA 9818338, and ITR 0082215.
Keywords
- Distributed computing
- Fault-tolerance
- Internet agents
- Internet programming
- Migration patterns
- Mobile agents
- Mobile code
- Mobile objects
- Security