MobileAgentComponents
Responsible for all remote interactions among the agents. Manages the networking and transport layer of communciations. Ideally this should support CORBA IIOP, Java RMI, or plain socket communications. It should support asynchronous, synchronous, and multicast communication.
Management Service
Allows the management and monitoring of the agents. A user should be able to deploy, start or stop execution, and monitor the state of an agent. Ideally this could be using SNMP or CMIP but realistically no few if no agent platforms support this.
Persistence Service
A storage of agent state and places in the agent system. Not only should the agents be recoverable but the 'Agency' as well. A must for mobile agents to support intermittent connections.
Registration Service
Agents must be able to register with the 'Agency'. Beyond these requirements there is also a need for a region wide registry to maintain information about other 'Agencies'.
Security Service
The 'Agency' must support several models of security. There are 2 security issues to be concerned about: External security and Internal security.
Handles the mechanism for mobility of an agent. Current systems use code serialization for this. Certain code is not serializable (i.e. JESS uses java class Hash Table Enumerator that is not serializable).
[MobileAgentConcepts | MobileAgentComponents | MobileAgentPlatforms]