256 Chapter 7 Using Kalong
7.1.1 Kalong as a Software Component
As we already noted, Kalong was developed to be independent of any mobile
agent toolkit. It was our target to base Kalong on very few assumptions about
the environment (i.e., the mobile agent toolkit) in which Kalong can be used.
Therefore, it should be usable in almost all mobile agent software archi-
tectures and has already been successfully adapted to work with the Tracy2
architecture.We plan to integrate Kalong into other toolkits, such as Jade and
Semoa, in the near future.
Kalong deﬁnes four interfaces (see Fig. 7.1). On the left side of Kalong,
there are two interfaces used to communicate with the agent manager.
Interfaces on the right side are designed to communicate with the network
adapter. Interface IKalong deﬁnes the functions of Kalong, whereas inter-
face IAgentManager deﬁnes functions of the agent manager object used by
Kalong. On the other side, interface INetwork deﬁnes functions of the net-
work adapter used by Kalong, and interface INetworkServer deﬁnes the
functions of Kalong that can be used by the network server component to be
called when messages are received from the network.
Kalong can be easily adapted to any mobile agent toolkit because it is the
result of reducing all requirements on a migration component to a common
denominator. For example, Kalong’s only requirement for mobile agents is
that they be Java objects of type Serializable, which is at least necessary
in any mobile agent toolkit to marshal an object’s state.
In addition to the pure functional advantages of Kalong, its ﬂexible migra-
tion technique, and its ability to deﬁne ﬁne-grained migration strategies, we
see a major advantage in its migration component, which provides the abil-
ity to make two different mobile agent toolkits interoperable. This usually has
two distinct challenges. First, mobile agent toolkits must be able to commu-
nicate; that is, they must understand the same migration protocol. Second,
mobile agents of one system must be executable at another system. The ﬁrst
challenge is taken on by Kalong. The second challenge must be resolved by
the designer of the mobile agent toolkit. The ﬁrst promising results have been
reported by the Semoa research group at Fraunhofer Society in Darmstadt,
Figure 7.1 The Kalong software component and its interfaces.