Abstract
In this paper, we present a general-purpose mobile agent framework, called Discovery developed at the Maryland Center for Telecommunications Research (MCTR) using the Java language. Mobile agents are small objects containing intelligent code, capable of moving around the network, reasoning, learning, and communcating with their peers and the environment. The popularity of mobile agents is a result of several application domains where the use of mobile based solutions promise to generate a robust, and flexible solution. Discovery defines an Agent Transfer Protocol (ATP) that implements agent serialization, transmission, authentication, error detection, and recovery. The agent runtime system provides a platform-independent execution environment for mobile agents, and defines an interface to create, clone, transport, suspend, resume, and termintae agents. This paper describes the key components of the Discovery framework, which includes an agent registry module, agent ocation tracking services, and the server\'s knowledge base. The Discovery architecture has been used to implement mobile agent based applications for network monitoring, intrusion detection, and ATM network management.