4.2 Classiﬁcation of Communication Models for Mobile Agents 137
applications or the home agency, which must be periodically contacted to
refresh living energy. In addition to this straightforward concept, several
optimizations and design issues can be considered. We refer to the given
literature for more information.
4.2 Classiﬁcation of Communication Models for Mobile Agents
As for software agents in general, communication techniques for mobile
agents can be classiﬁed into two kinds of communication models.
4.2.1 Message Passing
The ﬁrst type of communication model is message passing, which allows
agents to send messages to each other. It is a form of direct communication in
which the sender of a message must know the receiver by name and its current
location. Message passing is a powerful communication concept that forms a
ﬂexible foundation for any kind of complex communication strategy. It does
not deﬁne the structure and the semantics of the message content. Therefore,
this technique can be used as a foundation to implement an exchange of text
messages, Java objects, or any other message structure according to some
Agent Communication Language (ACL), such as KQML or FIPA.
As part of the message-passing model, there must be some kind of service
in which agents can ﬁnd names of other agents with respect to the descr ip-
tions of services that other agents provide. If no service is available that
provides this information, then this type of communication is practicable
only for a group of agents who know each other in advance.
The simplest form of message passing is a point-to-point connection in
which a single agent sends messages to exactly one receiver agent. The sender
asks the agency (to be exact, a software component responsible to provide
this kind of communication) to deliver a message to the receiver’s message
box. Only the receiver agent will be able to read the message. Messages can be
removed from the mailbox and delivered to the addressee agent in two ways.
With the push technique the mailbox actively delivers messages to agents.
With the pull technique an agent retrieves messages from its mailbox. If the
receiver agent is not available locally, the message component is responsible
for locating the receiver agent and delivering the message to it. Techniques
for locating agents are discussed in the following section.