Adaptive client side object replication for response time improvement in pervasive environments
As computers become pervasive in the home and community and homes become better connected, new applications will be deployed over the Internet. Interactive Distributed Applications involve users in multiple locations, across a wide area network, who interact and cooperate by manipulating shared objects. A timely response to user actions, which can potentially update the state of the objects, is an important requirement of interactive applications. Because of the inherent heterogeneity of the environment, distributed applications are built using technologies like distributed objects. Central server based implementations of distributed objects cannot meet the response time needs of interactive users because invocations are always subject to communication latencies. Our approach is to extend these technologies with aggressive caching and replication mechanisms to provide interactive response time and to improve scalability. A flexible caching framework is presented, where objects can be cached in an application specific manner. It provides multiple consistency protocols that enable tradeoffs between the consistency of a cached object’s state at a particular client, and the communication resources available to the client. At runtime, clients can specify their consistency requirements via a Quality of Service specification interface that is meaningful at the application level. This paper presents the caching framework, its implementation and some preliminary performance results.