Distributed Computing

We consider a problem of atomic broadcast in a dynamic setting where processes may join, leave voluntarily, or fail (by stopping) during the course of computation. We provide a formal definition of the Dynamic Atomic Broadcast problem and present and analyze a new algorithm for its solution in a variant of a synchronous model, where processes have approximately synchronized clocks. Our algorithm exhibits constant message delivery latency in the absence of failures, even during periods when participants join or leave. To the best of our knowledge, this is the first algorithm for totally ordered multicast in a dynamic setting to achieve constant latency bounds in the presence of joins and leaves. When failures occur, the latency bound is linear in the number of actual failures. Our algorithm uses a solution to a variation on the standard distributed consensus problem, in which participants do not know a priori who the other participants are. We define the new problem, which we call Consensus with Uncertain Participants, and give an early-deciding algorithm to solve it.

[1]  Bard Bloom Constructing Two-Writer Atomic Registers , 1988, IEEE Trans. Computers.

[2]  Nancy A. Lynch,et al.  Concurrent Timestamping Made Simple , 1992, ISTCS.

[3]  James H. Anderson,et al.  Multi-writer composite registers , 1994, Distributed Computing.

[4]  Evangelos Kranakis,et al.  Atomic Multireader Register , 1987, WDAG.

[5]  Karl R. Abrahamson On achieving consensus using a shared memory , 1988, PODC '88.

[6]  Nir Shavit,et al.  Bounded concurrrent time-stamp systems are constructible , 1989, STOC '89.

[7]  Krishnamurthy Vidyasankar,et al.  Counterexamples to a one writer multireader atomic variable construction of Burns and Peterson , 1992, OPSR.

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

[9]  Gary L. Peterson,et al.  Concurrent reading while writing II: The multi-writer case , 1987, 28th Annual Symposium on Foundations of Computer Science (sfcs 1987).

[10]  Krishnamurthy Vidyasankar,et al.  Simple extensions of 1-writer atomic variable constructions to multiwriter ones , 2009, Acta Informatica.

[11]  Amos Israeli,et al.  Optimal multi-writer multi-reader atomic register , 1992, PODC '92.

[12]  Richard Newman-Wolfe,et al.  A protocol for wait-free, atomic, multi-reader shared variables , 1987, PODC '87.

[13]  Krishnamurthy Vidyasankar,et al.  Buffer-Optimal Constructions of 1-Writer Multireader Multivalued Atomic Shared Variables , 1995, J. Parallel Distributed Comput..

[14]  Krishnamurthy Vidyasankar,et al.  Constructing 1-writer multireader multivalued atomic variables from regular variables , 1995, JACM.

[15]  Amos Israeli,et al.  A Concurrent Time-Stamp Scheme which is Linear in Time and Space , 1992, WDAG.

[16]  Gary L. Peterson,et al.  Constructing multi-reader atomic values from non-atomic values , 1987, PODC '87.

[17]  Gary L. Peterson,et al.  Concurrent Reading While Writing , 1983, TOPL.

[18]  Cynthia Dwork,et al.  Simple and efficient bounded concurrent timestamping and the traceable use abstraction , 1999, JACM.