Abstract for Fred Drake and Guido van Rossum
Abstract -- The Knowbot Operating Environment ---------------------------------------------
CNRI is developing a system to support mobile agents known as Knowbot Programs. Knowbot Programs are intended for use in widely distributed systems, where inter-node communication may be expensive or applications may consist of largely autonomous components. These agents could act, for example, as couriers to manage intellectual property rights associated with their payloads.
The system as a whole is known as the Knowbot Operating Environment (KOE). A prototype has been implemented in Python, but we are not picky about languages -- our architecture is designed to be language neutral and eventually a single service station will be able to service Knowbot Programs written in Java or Tcl (for example) as well.
What's new since we reported on the KOE last year?
- We are running the system on three (interconnected) locations, covering both coasts of the US.
- Using this setup, we have run a number of experiments:
- Dynamic client placement: it was demontrated that a mobile program to check bookmarks that chooses the best location to access each page from based on previous experienced response time, will perform better than checking all bookmarks from one location.
- Web crawling and indexing: using Knowbot Programs, we can save bandwidth up to a factor of 10, depending on the indexing strategy, compared to a central web crawler. Our implementation uses an Apache HTTP server embedded in a Knowbot Service Station.
- We expect to release an alpha version of the source code and documentation to the research and academic communities in the near future.
- Current and future work:
- Desigining a proper security architecture.
- Integrating multiple languages for writing Knowbot Programs.