Key requirements for Active Networks are their ability to integrate heterogeneous components; to rely on widely accepted programming
models, to support availability in case of failure, and to achieve good performance. However, those requirements are conflicting
- e.g. using Java based programming systems to provide heterogeneity, typically results in poor performance. We address this
problem by introducing a three-level architecture that a) makes a minor change in the conventional programming language model
- introduces the remote storage class to support code distribution and its parallel execution, b) uses a separate user interface to establish active
sessions, to specify the topology for a given distributed computation, and to replicate the sessions, and c) achieves efficient
run-time distribution through a new mechanism, called active network calls (ANC), that performs computations through low cost
asynchronous operations and active capsules. Data flow and operation flow are separated thus allowing a high degree of parallelism.
This research was supported by the National Science Foundation under grant INT-9910110