System Name: Aglets
Current Version: 1.0.3/1.1 beta 1
Organization: IBM Tokyo Research Laboratory
Entry status: authoritative
Supported platforms:
JDK 1.1.x on
Win32 (Windows95, Windows98, WindowsNT 4.0),
OS/2 Warp Version 3 and 4,
AIX 4.x,
Solaris for SPARC, and
Solaris for x86
MRJ SDK 2.0.1 on MacOS 8.x
Supported languages:
Java 1.1
Implemented standards: none (interfaces of MASIF are used internally but currently not compliant to MASIF)
Type of migration:
weak
How many threads or processes are possible per agent? An active aglet is associated with one thread.
Local communication mechanisms and format of data:
Aglet has a communication mechanism with messaging. A message, which is an object of com.ibm.aglet.Message or its extended class, is sent to other aglets. The hook method handleMessage(Message) of the receiver will be invoked with the sent message.
The system defined message is also provided. The SystemMessage is used for moving (dispatch, retrieve), cloning, storing and retrieving into/from second storage (inactivate, activate), and terminating (dispose). The system message occurs events, so that hook methods related to those events are invoked.
Global communication mechanisms:
Proxy objects are used for the communication with an aglet. All messages are sent to the proxies. The proxy transfers messages into the aglet. When the aglet is placed on the remote host, the proxies forward messages to the aglet via network. The aglet server who hosts the aglet retrieves messages and convert system messages into system events. The remains are sent to the aglet. At that time, security mechanism control messages pass or not.
How the communication partner can be addressed:
A proxy object (AgletProxy) is used as a partner of a communication. And every aglet has its own identifier (AgletID). An AgletID object can be converted into an AgletProxy object in an aglet server with AgletContext#getAglteProxy(AgletID) method.
Resource access control mechanism:
ASDK (Aglets Software Development Kit) version 1.0.3 supports simple privilege configurable preferences like Java 1.1 sandbox model; trusted aglets and untrusted aglets. ASDK 1.1 beta 1 realizes fine-grained access control with security policy file like Java2. Permission classes are provided. And access protection by each aglet is also provided. Individual aglet can set its own protection againt messages from other aglets. ASDK 1.1 also provides server authentication.
Agent tracking:
Logging facility is provided on the aglet server (Tahiti).
Directory of services:
A Finder as an experminental feature is provided with ASDK 1.1 beta 1.
Type of code migration:
Necessary classes are archived and transfered to the receiver. A Jar file is supported, all classes in a jar file are transfered as a bundle. Other classes are transfered on demand from code base server.
Other special features:
ASDK 1.1 beta 1 provides three security features;
Server authentication of Security Domain,
Access controlling like Java2 fine-grained authorization in security policy with Permission classes,
Access protection of messages from other aglets.
Availability:
binary
License terms:
See license terms in http://www.trl.ibm.co.jp/aglets/download10.html and http://www.trl.ibm.co.jp/aglets/download11b1.html
Article that describe the current system best:
The Aglet book "Programming and Deploying Java Mobile Agents with Aglets" by Danny Lange and Mitsuru Oshima, Addison-Wesley, http://cseng.awl.com/bookdetail.qry?ISBN=0-201-32582-9&ptype=0
"A Security Model for Aglets" by Guenter Karjoth, Danny B. Lange, and Mitsuru Oshima, IEEE Internet Computing, Vol. 1, No. 4, July/August 1997. http://computer.org/internet/ic1997/w4toc.htm
"Agent Design Patterns: Elements of Agent Applications Design" by Yariv Aridor and Danny B. Lange, Proc. of the Second International Conference on Autonomous Agents (Agents '98), May 1998.
"Infrastructure for Mobile Agents: Requirements and Design" by Yariv Aridor and Mitsuru Oshima, Proc. of 2nd International Workshop on Mobile Agents (MA '98), Springer Verlag, September 1998.
Year of first publication of systems description: 1996
Project URL: http://www.trl.ibm.co.jp/aglets/
Contacts Email Address: aglets@yamato.ibm.co.jp
Last modification date of this entry: Tue Oct 12 12:27:24 MET DST 1999