A highly available replication control protocol using volatile witnesses

We propose a highly available replication control protocol tailored to environments where network partitions are always the result of a gateway failure. Our protocol divides nodes holding replicas into local nodes that can communicate directly with each other and non-local nodes that communicate with other nodes through one or more gateways. While local nodes are assumed to remain up to date as long as they don't crash, non-local nodes are required to maintain a volatile witness on the same network segment as the local nodes and must poll this witness before answering any user request. To speed up recovery from a total failure, each site maintains a list of replicas that were available the last time the data were updated or a replica recovered from a crash. Markov models are used to compare the performance of our protocol with that of the dynamic-linear voting protocol (DLV), which is the best replication control protocol tolerating communication failures. We also observe that volatile witness placement has a strong impact on data availability and gateway nodes are the best location for them.<<ETX>>

[1]  Philip A. Bernstein,et al.  An algorithm for concurrency control and recovery in replicated distributed databases , 1984, TODS.

[2]  Dale Skeen Determining the last process to fail , 1983, PODS '83.

[3]  Darrell D. E. Long,et al.  The Performance of Available Copy Protocols for the Management of Replicated Data , 1990, Perform. Evaluation.

[4]  Walter A. Burkhard,et al.  Consistency and recovery control for replicated files , 1985, SOSP '85.

[5]  Sushil Jajodia,et al.  Enhancements to the Voting Algorithm , 1987, VLDB.

[6]  Walter A. Burkhard,et al.  Consistency and recovery control for replicated files , 1985, SOSP 1985.

[7]  Jehan-François Pâris,et al.  Voting with Witnesses: A Constistency Scheme for Replicated Files , 1986, ICDCS.

[8]  Robbert van Renesse,et al.  Voting with ghosts , 1988, [1988] Proceedings. The 8th International Conference on Distributed.

[9]  Calton Pu,et al.  Regeneration of replicated objects: A technique and its Eden implementation , 1986, 1986 IEEE Second International Conference on Data Engineering.

[10]  Darrell D. E. Long,et al.  Voting with regenerable volatile witnesses , 1991, [1991] Proceedings. Seventh International Conference on Data Engineering.

[11]  David K. Gifford,et al.  Weighted voting for replicated data , 1979, SOSP '79.