The rapid expansion of information and the high demand for timely data delivery have triggered the development of a large number of wireless information systems that enable users to access data from anywhere at anytime. These applications must face three major challenges: the limited bandwidth of wireless medium, intermittent network connectivity, and the fact that portable devices have limited CPU power, memory, and energy sources. Traditional distributed system design methods, such as the client/server-based computational model, cannot meet the aforementioned challenges very well. In contrast, a relatively new distributed system design paradigm, the mobile agent-based computation model, provides natural solutions to these problems. In this article, we will introduce the concept of mobile agent-based computing, review some examples of existing agent-based information systems, and discuss security issues that are related to them.
An agent is a computer program that acts autonomously on behalf of a person or organization (Lange & Oshima, 1998). A mobile agent is an agent that can move through the heterogeneous network autonomously, migrate from host to host, and interact with other agents (Gray, Kotz, Cybenko, & Rus, 2002). Agent-based distributed application design is gaining prevalence because it provides a single framework that allows a wide range of distributed applications to be implemented easily, efficiently, and robustly.
Mobile agents have many advantages (Lange & Oshima, 1998). We only highlight some of them that are closely related to distributed information system design.
Support Disconnected Operation: Mobile agents can roam the network and fulfill their tasks without the owner’s intervention. Thus, the owner only needs to maintain the physical connection during submission and retraction of the agent. This asset makes mobile agents desirable in the mobile computing environment where intermittent network connection is often inevitable.
Balance Workload: By migrating from the mobile device to the core network, the agents can take full advantage of the high bandwidth of the wired portion of the network and the high computation capability of servers/workstations. This feature enables mobile devices with limited resources to support functions beyond their original capability.
Reduce Network Traffic: Mobile agents’ migration capability allows them to handle tasks locally instead of passing messages among the data sources. This implies fewer messages and, consequently, reduced chances for loss of messages and the overhead of retransmission.
One should note that the agent-based computation model also has some limitations. For instance, the overhead of mobile agent execution and migration can sometimes overshadow the performance gain obtained by reduced communication costs. In addition, the ability to move and execute code fragments at remote sites could introduce serious security implications.
Key Terms in this Chapter
Repudiation Attack: Defined as one party participating in a transaction or communication, and later claiming that the transaction or communication never took place.
Agent: A computer program that acts autonomously on behalf of a person or organization.
Harassment Attack: Defined as annoying people with repeated attacks.
Denial of Service Attack: Defined as partially or completely impeding one or more computer services, or a mobile agent’s access to some resources or services.
Damage Attack: Defined as destruction or subversion of a host’s files, configuration, or hardware, or of a mobile agent or its mission.
Masquerade Attack: Defined as one party disguising its own identity or claiming a false identity in order to deceive the other party.
Mobile Agent: An agent that can move through the heterogeneous network autonomously, migrate from host to host, and interact with other agents.