next up previous contents
Next: Repository Info Up: Communication Protocol Previous: Communication Protocol

Repository Proxy

The proxy is a replacement for the repository in the neighborhood of the mobile code (s. section [*]). The class RepositoryProxy implements a server loop similar to the server loop in the main() method of the Repository class listening for profile, class and library requests. The requests are satisfied with a cache, i.e. if the requested profiles, classes or libraries are cacheed, the contents of the cache is returned.

In the prototype implementation the proxies and the central repository can be inconsistent, if the implementation classes on the central repository are modified. In order to avoid inconsistencies the central repository could notify all proxy repositories. Therefore, it would be necessary that the central repository knows the addresses of existing proxies.

In an alternative approach the proxies could check the version of the implementation class by contacting the central repository before they deliver an implementation class to the mobile code. This approach would constrain the autonomy of the proxy repository.

A more suitable proposal could be the deployment of a limited lifetime for proxies. If a proxy does not receive a request for a certain period of time it dies. The next time the mobile code moves into the neighborhood of the dead proxy, then a new proxy is created with the current versions of implementation classes. This would also facilitate the management of the proxies, which are distributed over the network and are not needed any more.


next up previous contents
Next: Repository Info Up: Communication Protocol Previous: Communication Protocol
Copyright Munich Network Management Team