Continuous Consensus with Ambiguous Failures

  • Tal Mizrahi
  • Yoram Moses
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4904)

Abstract

Continuous consensus (CC) is the problem of maintaining an identical and up-to-date core of information about the past at all correct processes in the system [1]. This is a primitive that supports simultaneous coordination among processes, and eliminates the need of issuing separate instances of consensus for different tasks. Recent work has presented new simple and efficient optimum protocols for continuous consensus in the crash and (sending) omissions failure models. For every pattern of failures, these protocols maintain at each and every time point a core that subsumes that maintained by any other continuous consensus protocol. This paper considers the continuous consensus problem in the face of harsher failures: general omissions and authenticated Byzantine failures. Computationally efficient optimum protocols for CC do not exist in these models if \(P\ne NP\). A variety of CC protocols are presented. The first is a simple protocol that enters every interesting event into the core within t + 1 rounds (where t is the bound on the number of failures), provided there are a majority of correct processes. The second is a protocol that achieves similar performance so long as n > t (i.e., there is always guaranteed to be at least one correct process). The final protocol in the general omissions model makes use of active failure monitoring and failure detection to include events in the core much faster in many runs of interest. Its performance is established based on a nontrivial property of minimal vertex covers in undirected graphs. The results are adapted to the authenticated Byzantine failure model, in which it is assumed that faulty processes are malicious, but correct processes have unforgeable signatures. Finally, the problem of uniform CC is considered. It is shown that a straightforward version of uniform CC is not solvable in the setting under study. A weaker form of uniform CC is defined, and protocols achieving it are presented.

Keywords

Distributed computing fault tolerance consensus continuous consensus 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Mizrahi, T., Moses, Y.: Continuous consensus via common knowledge. Distributed Computing. In: The Proceedings of TARK X, pp. 236–252 (2005) (to appear, 2008)Google Scholar
  2. 2.
    Pease, M., Shostak, R., Lamport, L.: Reaching agreement in the presence of faults. Journal of the ACM 27(2), 228–234 (1980)MATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Dolev, D., Reischuk, R., Strong, H.R.: Eventual is earlier than immediate. In: Proc. 23rd IEEE Symp. on Foundations of Computer Science, pp. 196–203 (1982)Google Scholar
  4. 4.
    Dwork, C., Moses, Y.: Knowledge and common knowledge in a Byzantine environment: Crash failures. Information and Computation 88(2), 156–186 (1990)MATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Moses, Y., Tuttle, M.R.: Programming simultaneous actions using common knowledge. Algorithmica 3, 121–169 (1988)MATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Berman, P., Garay, J.A.: Cloture votes: n/4-resilient distributed consensus in t + 1 rounds. Mathematical Systems Theory 26(1), 3–19 (1993)MATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Garay, J.A., Moses, Y.: Fully polynomial byzantine agreement for n > 3t processors in t + 1 rounds. SICOMP: SIAM Journal on Computing 27, 247–290 (1998)MATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Tal Mizrahi
    • 1
  • Yoram Moses
    • 1
  1. 1.Department of Electrical Engineering TechnionIsrael

Personalised recommendations