A mobile agent is a program which represents a user in a network and is capable of migrating autonomously from node to node, performing computations on behalf of that user. Agents can also be used in low-level network maintenance,testing, fault diagnosis,and fordynamically upgrading the capabilities of existing services. This talk presents an overview of the Ajanta system architecture and its programming environment. Ajanta's programming environment isdefined in terms of a set of primitive operations for agent creation,dispatch, migration and remote control.
Agents can access server resources using a proxy-based access control mechanism.
We describe a s cheme for agent migration based on the composition of some basic migration patterns which incorporate exception handling mechanisms. Finally,we present two agent based distributed applications implemented using the Ajanta system. One is a middleware which supports file sharing over the Internet and the other is a distributed calendar manager. A mobile agent is an object that which can autonomously migrate in a distributed system to perform tasks on behalf of its creator. Security issues in regard to the protection of host resources, as well the agent themselves,raise significant obstacles i n practical applications of the agent paradigm.