24 Chapter 2 From Client-Server to Mobile Agents
protocols, and ontologies, but does not consider agent mobility. The basic
FIPA speciﬁcation for an abstract architecture (FIPA 00001) for an agent
system explicitly omits agent mobility.
In 2000 a new set of FIPA speciﬁcations, which included FIPA 00087 for
agent mobility, was released. In the appendix of the speciﬁcation some
issues are discussed related to the problem of integrating MASIF and FIPA.
However, the current status of this speciﬁcation is deprecated (May 2002).
Refer to Ametller et al.  for more information about the FIPA standard
and agent mobility issues.
2.3 Similar but Different Concepts
2.3.1 Internet Agents, Worms, and Spiders
Internet agents, also called worms, robots, spiders, or crawlers, are computer
programs used by search engines, such as www.google.com, to search the
Web and catalogWeb pages.When star ting the search engine, the user usually
deﬁnes some keywords and the search engine answers with a more or less
useful list of Web pages that contain the given words. We do not want to
discuss whether this kind of software is worthy of being called a software
agent; we only want to assess whether it is a mobile agent.
Let’s look at the actual techniques used by common search engines.
A Web robot is a program that works on the computer system of the search
engine provider. A robot continuously loads Web pages, parses them into
words, and stores the result in a very huge database. From each Web page,
all hyperlinks are traversed to get new Web pages to archive. When a user
wants to search for Web pages, this database is queried with ver y sophisti-
cated techniques to ﬁnd the relevant Web pages, that is, the Web pages with
the highest information value for the user.
Internet agents are, obviously, not mobile agents according to our deﬁ-
nition. They are hardly agents at all. Even if accepted as agents, they would
still lack the aspect of mobility, because they work only from the computer
system they were started on and never migrate to another platform.
2.3.2 Java Applets
Java applets are Java programs bound to a Web page that is written in
HTML. When a user views such a Web page with Web browser software that
has a Java plugin installed, the applet is downloaded from the Web server