Fast reconciliations in fluid replication

Mobile users can increasingly depend on high speed connectivity. Despite this, using distributed file services across the wide area is painful. Fast approaches sacrifice one or more of safety, visibility, and consistency in the name of performance. Instead, we propose fluid replication, the ability to create replicas where and when needed. These replicas, called WayStations, maintain consistency with home servers through periodic reconciliations. Two techniques make reconciliation fast; this is crucial to the success of fluid replication. First, we defer propagation of updates, and only invalidate files during a reconciliation. Second, rather than depend on operation logs, we provide the subtrees in which all updates have occurred. These subtrees, named by their least common ancestors, or LCAs, can be constructed incrementally, and reduce the burden of checking serializability during a reconciliation. While these techniques provide better performance, they are not without risk. Bulk invalidation can lead to false sharing, optimistic updates are subject to conflict, and deferred updates may cause performance problems if they are needed elsewhere. To address these concerns, we performed a trace-based evaluation of our algorithms.

[1]  Assar Westerlund,et al.  The design of a multicast-based distributed file system , 1999, OSDI '99.

[2]  Leslie Lamport,et al.  Time, clocks, and the ordering of events in a distributed system , 1978, CACM.

[3]  Mendel Rosenblum,et al.  The design and implementation of a log-structured file system , 1991, SOSP '91.

[4]  J. Howard Et El,et al.  Scale and performance in a distributed file system , 1988 .

[5]  Mahadev Satyanarayanan,et al.  An Empirical Study of a Highly Available File System , 1994, SIGMETRICS.

[6]  Th,et al.  Vohunes: The Andrew File System Data Structuring Primitive , 2003 .

[7]  Brian D. Noble,et al.  Deferring trust in fluid replication , 2000, EW 9.

[8]  Mahadev Satyanarayanan,et al.  Flexible and Safe Resolution of File Conflicts , 1995, USENIX.

[9]  Brian D. Noble,et al.  A Case for Fluid Replication , 1999 .

[10]  Mahadev Satyanarayanan,et al.  An empirical study of a wide-area distributed file system , 1996, TOCS.

[11]  Mary Baker,et al.  Measurements of a distributed file system , 1991, SOSP '91.

[12]  Matt Blaze NFS Tracing By Passive Network Monitoring , 1992 .

[13]  Maria Ebling,et al.  Exploiting weak connectivity for mobile file access , 1995, SOSP.

[14]  ZHANGLi-xia,et al.  A reliable multicast framework for light-weight sessions and application level framing , 1995 .

[15]  Amin Vahdat,et al.  Design and evaluation of a continuous consistency model for replicated services , 2000, OSDI.

[16]  John S. Heidemann,et al.  Primarily disconnected operation: experiences with Ficus , 1992, [1992 Proceedings] Second Workshop on the Management of Replicated Data.

[17]  Butler W. Lampson,et al.  Hints for Computer System Design , 1983, IEEE Software.

[18]  Ben Y. Zhao,et al.  OceanStore: an architecture for global-scale persistent storage , 2000, SIGP.

[19]  Brian D. Noble,et al.  SANE: Stable Agile Network Estimation , 2000 .

[20]  LamportLeslie Time, clocks, and the ordering of events in a distributed system , 1978 .

[21]  Mahadev Satyanarayanan,et al.  Disconnected Operation in the Coda File System , 1999, Mobidata.

[22]  Ashish Goel,et al.  Perspectives on optimistically replicated, peer‐to‐peer filing , 1998, Softw. Pract. Exp..

[23]  Mahadev Satyanarayanan,et al.  Lightweight Recoverable Virtual Memory , 1993, SOSP.

[24]  W. Vogels File system usage in Windows NT 4.0 , 2000, OPSR.

[25]  Marvin Theimer,et al.  Flexible update propagation for weakly consistent replication , 1997, SOSP.