Aglets (software)
Aglets was a Java-based mobile agent platform developed by IBM Research – Tokyo in the late 1990s and early 2000s. It provided a framework for creating, dispatching, and managing autonomous agents that could travel between networked computers, performing tasks on behalf of a user or application.
An Aglet, short for "agent applet," was a Java object that could serialize its state, including code and data, and move across a network to a remote Aglet server. Once arrived, the Aglet could execute on the remote host, interact with local resources, and potentially dispatch itself to another host.
Key characteristics of Aglets included:
- Mobility: The ability to relocate execution to different hosts on the network.
- Autonomy: The capacity to operate independently, without constant user intervention.
- Persistence: The ability to save and restore the agent's state, enabling it to survive disconnections and server restarts.
- Communication: Mechanisms for inter-agent communication and interaction with local resources.
- Security: Features aimed at controlling agent access and preventing malicious behavior.
The Aglets platform comprised a core API for creating and managing aglets, along with an Aglet server that provided the runtime environment. Development involved extending the Aglet
class and overriding methods to define the agent's behavior.
Although the Aglets platform is no longer actively maintained, it served as an influential early example of mobile agent technology and contributed to the research and development of distributed computing paradigms. Its concepts and principles have influenced subsequent mobile agent systems and related technologies.