Next: Java for Mobile Agents
Up: Mobile Agents
Previous: Mobility
  Contents
The advantages
of
Mobile Agents are
depending on their goals or on the tasks they have to achieve. The main advantage
is to work locally on a system and not to be dependent on a connection to this
system. This can improve the monitoring of systems or processes, which can be
done locally on a machine.
One field of use can be locally monitoring the status of a computer or a segment
of a network. Instead of monitoring the segment from a special computer in a
centralized way, Agents can travel to a certain segment and watch locally the
status of that segment. When an error occurs, another Agent with special knowledge
for this error can travel to the system and try to correct it, also, the watching
Agent can alert the human administrator of the error. Since the normal monitoring
process requires polling the system status every certain period of time, it
uses a lot of bandwidth. Sending Agents to the target system and letting them
monitor the status locally saves this bandwidth and gives at the same time the
possibility to let the Agent (or another, more specialized Agent) try to correct
the error on the system. Another benefit of this approach is that it will work
even when there are network problems, since the Agent executes locally and is
not dependent on a continuous connection. Another field of use are systems which
are not easy to access by humans because of their locality. This can be, e.g. the
nodes of a wide area network which are normally located in the underground and
far away from their supporter.
Whenever a new version of the Agent is produced, it just travels to the target
system and then replaces the old Agent there. So there is no need of locally
installing any piece of software once an Agent System is installed on the machine.
The same technique can also be used to distribute a software update in a large
network of computers. Just by sending a Mobile Agent with the knowledge
how to update the systems this task will be done without human interaction.
The Agent should have enough intelligence to choose the best installing method
on every machine depending on the information it gets from its environment.
This method is not limited to computers, it can be used for any kind of Mobile
Agents enabled devices e.g. network components like routers, switches etc.
The second main advantage of Mobile Agents is the collecting and processing
of information. The collecting of information is still done in a very centralized
way. This means that you have a central point which collects all information
and then processes it on the central machine. This is very dependent on a good
connection to all of the information providers. If the connection fails, then
the result is probably unusable. With the use of Mobile Agents you get
a much more rough version to collect information. Since the Agent depends on
a connection just to travel to and from the system which provides the information,
it does not depend very much on a good connection. The search for the specific
kind of information is done locally and also the first filtering of the information.
The Agent will then only carry with it the really relevant information. So the
Agent can process the information on the same machine where it has collected
them and return back with just the results of this process. Almost the whole
process is independent of the connection. The connection can be down some time
or can change its protocols or ways through the network ,without having any
effects on the Agent and the information itself.
Next: Java for Mobile Agents
Up: Mobile Agents
Previous: Mobility
  Contents
Thomas Letsch
2001-02-21