An adaptive protocol for implementing causally consistent distributed services

Distributed services that are accessed by widely distributed clients are becoming common place. Such services cannot be provided at the needed level of performance and availability without replicating the service at multiple nodes, and without allowing a relatively weak level of consistency among replicated copies of the state of a service. This paper explores causally consistent distributed services when multiple related services are replicated to meet performance and availability requirements. This consistency criterion is particularly well suited for some distributed services (e.g., cooperative document sharing), and it is attractive because of the efficient implementations allowed by it.

[1]  Mustaque Ahamad,et al.  A scalable technique for implementing multiple consistency levels for distributed objects , 1996, Proceedings of 16th International Conference on Distributed Computing Systems.

[2]  Michel Dubois,et al.  Memory access buffering in multiprocessors , 1998, ISCA '98.

[3]  John S. Heidemann,et al.  Implementation of the Ficus Replicated File System , 1990, USENIX Summer.

[4]  Colin J. Fidge,et al.  Timestamps in Message-Passing Systems That Preserve the Partial Ordering , 1988 .

[5]  Louise E. Moser,et al.  Totem: a fault-tolerant multicast group communication system , 1996, CACM.

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

[7]  Leslie Lamport,et al.  How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs , 2016, IEEE Transactions on Computers.

[8]  Atul Prakash,et al.  Concurrency control and view notification algorithms for collaborative replicated objects , 1997, Proceedings of 17th International Conference on Distributed Computing Systems.

[9]  Alley Stoughton,et al.  Detection of Mutual Inconsistency in Distributed Systems , 1983, IEEE Transactions on Software Engineering.

[10]  Richard D. Schlichting,et al.  Preserving and using context information in interprocess communication , 1989, TOCS.

[11]  André Schiper,et al.  From Causal Consistency to Sequential Consistency in Shared Memory Systems , 1995, FSTTCS.

[12]  Jörg M. Haake,et al.  Designing object-oriented synchronous groupware with COAST , 1996, CSCW '96.

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

[14]  Frédéric Ruget,et al.  Cheaper Matrix Clocks , 1994, WDAG.

[15]  Marvin Theimer,et al.  Session guarantees for weakly consistent replicated data , 1994, Proceedings of 3rd International Conference on Parallel and Distributed Information Systems.

[16]  Danny Dolev,et al.  The Transis approach to high availability cluster communication , 1996, CACM.

[17]  Anoop Gupta,et al.  Memory consistency and event ordering in scalable shared-memory multiprocessors , 1990, [1990] Proceedings. The 17th Annual International Symposium on Computer Architecture.

[18]  André Schiper,et al.  The Causal Ordering Abstraction and a Simple Way to Implement it , 1991, Inf. Process. Lett..

[19]  M. Frans Kaashoek,et al.  Rover: a toolkit for mobile information access , 1995, SOSP.

[20]  Maurice Herlihy,et al.  Linearizability: a correctness condition for concurrent objects , 1990, TOPL.

[21]  Liuba Shrira,et al.  Providing high availability using lazy replication , 1992, TOCS.

[22]  Mark D. Hill,et al.  Weak ordering—a new definition , 1998, ISCA '98.

[23]  Michel Raynal,et al.  Exploiting write semantics in implementing partially replicated causal objects , 1998, Proceedings of the Sixth Euromicro Workshop on Parallel and Distributed Processing - PDP '98 -.

[24]  Michel Raynal,et al.  An adaptive architecture for causally consistent distributed services , 1999, Distributed Syst. Eng..

[25]  André Schiper,et al.  Lightweight causal and atomic group multicast , 1991, TOCS.

[26]  Michael J. Fischer,et al.  Sacrificing serializability to attain high availability of data in an unreliable network , 1982, PODS.

[27]  Robbert van Renesse,et al.  Horus: a flexible group communication system , 1996, CACM.