Supporting disconnection operations through cooperative hoarding
The problem of disconnection from network is one that mobile users always have to face in mobile computing environment. Disconnected operation is one approach to ease this problem by allowing client computers to work solely on cached files in the local disks. However, a cache miss in disconnected operation is often critical, and usually causes the user to stop work on the current task until reconnecting to the server. To save such situations, we propose an approach called Cache Cooperation, which resolves cache misses in a coordinated manner among the clients. Cache cooperation allows each client to retrieve missing data from the other remote clients when the client is disconnected from the server but not isolated from others. We describe the design of our prototype implementation, its performance measurement, and the results of vast numbers of simulations that we conducted with system-call traces recorded over 3-month period. The measured performance shows that the overhead of our approach is almost comparable to that of the normal client-server file operations. Moreover, the simulation results confirm that our approach can effectively decrease cache misses when multiple client caches can be utilized. Especially, in ideal cases where major files are shared by multiple clients, our approach saves almost all of cache misses for over 70 percent of simulation runs.