deutsch english

Uni K'lautern
Dept.ofComputerScience
[Homepage]

[News]
[Staff]
[Research]
[Lectures]
[Publications]

[Ara]
   Documents
   Members
   Related Projects

[GeneSys]
[B10]
[Squirrel]
[SFB 501]
[SysAdmin]

[CaberNet]
[Links]


  webmaster

   

Status of the Ara development

Time: April 1997.

Achieved:
  • The Ara core can run agents concurrently using a fast thread package, with each interpreted agent running in a separate address space (implemented completely in software); agents compiled to native machine code share the same address space. Agents are scheduled under a time slicing policy.
  • All core services work uniformly for all agents without regard to their implementation languages.
  • Agents are equipped with an allowance for resource access in the form of quantitative or qualitative limits for each resource. Any access is debited to rsp. checked against the accessing agent's allowance. Currently, only the resources "CPU time" and "memory" are covered by allowances.
  • The core offers a concept of agent interaction whereby client agents can meet local server agents at "service points" under symbolic names and synchronously exchange arbitrary requests and replies.
  • Mobile agents can migrate to remote nodes at any point in their execution and continue from the exact state they left in, even between heterogeneous machine architectures.
  • Mobile agents are transmitted using TCP (one data packet sent, one acknowledgement received).
  • The following interpreted languages have been adapted to Ara, making them usable for mobile agent programming:
    • Tcl (version 7.4)
    • C/C++ by means of precompilation to MACE, an interpretable byte code.
  • Agents can clone themselves, duplicating their internal state.
  • Agents can checkpoint their internal state to disk for later restoration.
  • Agent migration can be routed over a wireless link (19.2kBd radio modem), depending on the destination place.
  • The system has been tested on SparcStations (SunOS 4.1, Solaris 2.4 and 2.5) and Intel-based PCs (Linux 1.2 and 2.0).
  • Version 1.0a has been released in source code.


In the works:

  • Adapting Java to Ara to make it usable for mobile agent programming
  • Multiple, user-defined places with security policies programmable by application code in the form of issuing individual local allowances to entering agents
  • Make all important resources subject to allowances: Files, network connections, disk space, network bandwidth, visited places
  • Agent transmission by SMTP (i.e. e-mail), in addition to TCP.
  • Access to files and network connections to be scheduled and authorized by the core (currently direct calls to the host operating system are used)
  • Encryption and authentication of migrating agents
  • Unreliable asynchronous inter-agent messaging
  • Better error handling for agents failing remotely
  • A distributed monitor and debugger for agents and nodes
  • An application for distributed information research in the Usenet news system
  • Further source code releases


Planned or considered:

  • Global yellow pages service
  • Comfortable graphical user interface access
  • Adapting Pascal and Lisp to Ara
  • An on-the-fly compiler from the MACE byte code to native machine code
  • An application for meeting scheduling for mobile users
  • Porting the system to Windows '95 and/or Windows NT

Here are the current performance figures of the system.


copyright © 1997 The University of Kaiserslautern.

Holger Peine