CMU-CS-98-116
Computer Science Department
School of Computer Science, Carnegie Mellon University



CMU-CS-98-116

Translucent Cache Management for Mobile Computing

Maria R. Ebeling

March 1998

Ph.D. Thesis

CMU-CS-98-116A.ps, CMU-CS-98-116B.ps,
CMU-CS-98-116C.ps, CMU-CS-98-116D.ps
CMU-CS-98-116E.ps, CMU-CS-98-116F.ps
CMU-CS-98-116G.ps, CMU-CS-98-116H.ps
CMU-CS-98-116I.ps, CMU-CS-98-116J.ps
CMU-CS-98-116K.ps, CMU-CS-98-116L.ps
CMU-CS-98-116M.ps, CMU-CS-98-116N.ps
CMU-CS-98-116O.ps (Whole Thesis = A->O)

CMU-CS-98-116.pdf


Keywords: Disconnected operation, distributed file systems, high availability, mobile computing, caching, transparency, optimistic replication, hoarding, user interface, Coda


Recently, distributed files systems have aggressively exploited caching to provide high availability to their clients. Such systems allow users to access and modify cached data even when clients become disconnected (e.g. a laptop removed from its docking station) or weakly connected (e.g. a laptop connected via a modem) to servers. In doing so, these file systems violate one of the key properties of caching: transparency.

When disconnected or weakly connected, these systems cannot always maintain the illusion of connectivity. For instance, the system may not be able to service a cache miss or may only be able to do so with a lengthy delay. When the illusion of connectivity breaks down, the usability of the system is undermined. Early designs of these systems either did not recognize or failed to appreciate the extent to which users would be affected. After extensive experience with the Coda file system, however, we have witnessed the arduous learning curve experienced by new Coda users. We have also observed occasional, but serious, confusion caused by model behaviors introduced to cope with the range of network connectivity encountered by mobile clients.

This disseration describes the design, implementation, and evaluation of the CodaConsole, a graphical interface that makes caching translucent to users of such systems. To make caching translucent, the interface exposes critical aspects of caching to support availability, while hiding noncritical details to preserve usability. For example, the system informs users about the availability of their tasks, but does not bother them with minutia of cache consistency. The interface also offers opportunities for users to control where network resources are spent.

To evaluate the Coda Console, I performed a usability test. This study showed that users were able to learn how to user the interface in about one hour. They were able to operate the interface with little difficulty. They were also able to understand problems indictated by the interface and then determine what actions might resolve those problems. Perhaps the most surprising result, however, was the fact that novice Coda users performed almost as well as expert Coda users.

This interface successfully makes caching, in the presence of disconnected or weakly connected operation, translucent.

463 pages


Return to: SCS Technical Report Collection
School of Computer Science homepage

This page maintained by reports@cs.cmu.edu