Java active extensions: Scalable middleware for performance-isolated remote execution
We present the design and implementation of a highly scalable and easily deployed middleware system that provides performance-isolated execution environments for client and server application functionality. The Java Active Extensions system allows clients or servers to 'extend' their operation by hosting portions of their codes, called extensions, at network vantage points for improved performance and reliability, and by providing them with quality of service via rate-based resource reservations. This system is especially useful for wireless resource-limited clients, which can remotely locate filters, caches, monitors, buffers, etc., to act on their behalf and improve interactions with servers. Servers also benefit by moving some of their services close to their clients (e.g. those near a common base station) to reduce latency and improve bandwidth. In both cases, the client's or server's extended functionality executes with a specified fraction of the (remote) system's processor. The system design is based on a scalable distributed architecture that allows for incremental hardware growth, and is highly deployable, as it runs entirely at user level, including its rate-based scheduling system. (c) 2005 Elsevier B.V. All rights reserved.
remote execution quality of service resource control mobile code