Distributed Computing

, Volume 18, Issue 5, pp 325–343 | Cite as

Synchronous condition-based consensus

  • Achour Mostefaoui
  • Sergio Rajsbaum
  • Michel Raynal
Regular Paper

Abstract

The condition-based approach studies restrictions on the inputs to a distributed problem, called conditions, that facilitate its solution. Previous work considered mostly the asynchronous model of computation. This paper studies conditions for consensus in a synchronous system where processes can fail by crashing. It describes a full classification of conditions for consensus, establishing a continuum between the asynchronous and synchronous models, with the following hierarchy \({\cal S}_t^{[-t]}\subset\cdots\subset {\cal S}_t^{[0]}\subset\cdots\subset {\cal S}_t^{[t]}\) where \({\cal S}_t^{[t]}\) includes all conditions (and in particular the trivial one made up of all possible input vectors). For a condition \(C \in{\cal S}_t^{[d]}$, $-t \leq d \leq t\), we have:
  • For values of \(d \leq 0\) consensus is solvable in an asynchronous system with t failures, and we obtain the known hierarchy of conditions that allows solving asynchronous consensus with more and more efficient protocols as we go from d = 0 to d = −t.

  • For values of \(d \leq 0\) consensus is solvable in an asynchronous system with t failures, and we obtain the known hierarchy of conditions that allows solving asynchronous consensus with more and more efficient protocols as we go from d = 0 to d = −t.

  • For values of d<0 consensus is known not solvable in an asynchronous system with t failures, but we obtain a hierarchy of conditions that allows solving synchronous consensus with protocols that can take more and more rounds, as we go from d = 0 to d = t.

  • d = 0 is the borderline case where consensus can be solved in an asynchronous system with t failures, and can be solved optimally in a synchronous system.

After having established the complete hierarchy, the paper concentrates on the two last items: \(0\leq d\leq t\). The main result is that the necessary and sufficient number of rounds needed to solve uniform consensus for a condition \(C \in {\cal S}_t^{[d]}\) (such that \(C\notin {\cal S}_t^{[d-1]}\)) is d +1.

In more detail, the paper presents a generic synchronous early-deciding uniform consensus protocol that enjoys the following properties. Let f be the number of actual crashes, I the input vector and \(C \in {\cal S}_t^{[d]}\) the condition the protocol is instantiated with. The protocol terminates in two rounds when \(I\in C\) and \(f\leq t-d\), and in at most d +1 rounds when \(I\in C\) and \(f>t-d\). (It also terminates in one round when \(I\in C\) and \(d=f=0\).) Moreover, whether I belongs or not to C, no process requires more than min\((t+1,f+2)\) rounds to decide. The paper then proves a corresponding lower bound stating that at least d +1 rounds are necessary to get a decision in the worst case when \(I\in C\) (for \(C \in {\cal S}_t^{[d]}\) and \(C \notin {\cal S}_t^{[d-1]}\)).

Keywords

Consensus Early deciding Input vector Process crash failure Synchronous distributed system 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Aguilera, M.K., Toueg, S.: A Simple bivalency proof that t-resilient consensus requires t+1 rounds. Information Processing of Letters 71, 155–178 (1999)CrossRefMathSciNetGoogle Scholar
  2. 2.
    Attiya, H., Avidor, Z.: Wait-free n-set consensus when inputs are restricted. In: Malkhi, D. (ed.). Proceeding of 16th International Symposium on Distributed Computing (DISC’02), Springer Verlag LNCS 2508, pp 326–338, Toulouse. (2002)Google Scholar
  3. 3.
    Attiya, H., Welch, J.: Distributed computing: fundamentals, simulations and advanced topics. McGraw-Hill (1998)Google Scholar
  4. 4.
    Ben Or, M.: Another advantage of free choice: Completely Asynchronous Agreement Protocols. In: Proceedings of 2nd ACM Symposium on Principles of Distributed Computing (PODC’83), pp. 27–30, Montréal (1983).Google Scholar
  5. 5.
    Chandra, T.K., Toueg, S.: Unreliable failure detectors for reliable distributed systems. J. ACM 43(2), 225–267 (1996)CrossRefMathSciNetGoogle Scholar
  6. 6.
    Charron-Bost, B., Schiper, A.: Uniform consensus is harder than consensus. Journal of Algorithms 51(1), 15–37 (2004)CrossRefMathSciNetGoogle Scholar
  7. 7.
    Chaudhuri, S.: More choices allow more faults: set Consensus Problems in Totally Asynchronous Systems. Information and Computation. 105, 132–158 (1993)CrossRefMATHMathSciNetGoogle Scholar
  8. 8.
    Dolev, D., Lynch, N.A., Pinter, S.S., Stark, E.W., Weihl, W.E.: Reaching approximate agreement in the presence of faults. Journal of the ACM 33(3), 499–516 (1986)CrossRefMathSciNetGoogle Scholar
  9. 9.
    Dolev, D., Reischuk, R., Strong, R.: Early stopping in byzantine agreement. J. ACM 37(4), 720–741 (1990)CrossRefMathSciNetGoogle Scholar
  10. 10.
    Dwork, C., Lynch, N., Stockmeyer, L.: Consensus in the presence of partial synchrony. J. ACM 35(2), 288–323 (1988)CrossRefMathSciNetGoogle Scholar
  11. 11.
    Dwork, C., Moses, Y.: Knowledge and common knowledge in a byzantine environment: Crash failures. Information Computation 88(2), 156–186 (1990)CrossRefMathSciNetGoogle Scholar
  12. 12.
    Fischer, M.J., Lynch, N.: A lower bound for the time to assure interactive consistency. Information Processing Letters 71, 183–186 (1982)CrossRefMathSciNetGoogle Scholar
  13. 13.
    Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)CrossRefMathSciNetGoogle Scholar
  14. 14.
    Friedman, R., Mostefaoui, A., Rajsbaum, S., Raynal, M.: Asynchronous distributed agreement and its relation with error correcting codes. In: Malkhi, D. (ed.). Proceedings of 16th International Symposium on Distributed Computing (DISC’02), Springer Verlag LNCS 2508, pp 63–87, Toulouse (2002)Google Scholar
  15. 15.
    Gafni, E.: Round-by-round fault detectors: Unifying synchrony and asynchrony. In: Proceedings of 17th ACM Symposium on Principles of Distributed Computing (PODC’98), pp 143–152, Puerto Vallarta (1998)Google Scholar
  16. 16.
    Guerraoui, R., Raynal, M.: The information structure of indulgent consensus. IEEE Transactions on Computers 53(4), 453–466 (2004)CrossRefGoogle Scholar
  17. 17.
    Herlihy, M.P.: Wait-free synchronization. ACM Transactions on Programming Languages and Systems 11(1), 124–149 (1991)CrossRefGoogle Scholar
  18. 18.
    Herlihy, M.P., Rajsbaum, S., Tuttle, M.R.: Unifying synchronous and asynchronous message-passing models. In: Proceedings of 17th ACM Symposium on Principles of Distributed Computing (PODC’98), pp 133–142, Puerto Vallarta (1998)Google Scholar
  19. 19.
    Hurfin, M., Mostefaoui, A., Raynal, M.: A versatile family of consensus protocols based on chandra-toueg’s unreliable failure detectors. IEEE Transactions on Computers 51(4), 395–408 (2002)CrossRefGoogle Scholar
  20. 20.
    Izumi, T., Masuzawa, T.: Synchronous condition-based consensus adapting to input-vector legality. In: Guerraoui, R. (ed.). Proceedings of 18th International Symposium on Distributed Computing (DISC’04), Springer Verlag LNCS 3274, pp 16–29, Amsterdam (2004)Google Scholar
  21. 21.
    Izumi, T., Masuzawa, T.: An improved algorithm for adaptive condition-based consensus. In: Pelc, A., Raynal, M. (eds.). Proceedings of 12th Colloquium on Structural Information and Communication Complexity (SIROCCO’05), Springer Verlag LNCS 2499, 170–184, Le Mont-Saint-Michel (2005)Google Scholar
  22. 22.
    Keidar, I., Rajsbaum, S.: A simple proof of the uniform consensus synchronous lower bound. Information Processing Letters 85, 47–52 (2003)CrossRefMathSciNetGoogle Scholar
  23. 23.
    Lamport, L., Fischer, M.: Byzantine generals and transaction commit protocols. Unpublished manuscript. 16 (1982)Google Scholar
  24. 24.
    Lynch, N.A.: Distributed algorithms. Morgan Kaufmann Pub. San Fransisco (1996)Google Scholar
  25. 25.
    Moses, Y., Rajsbaum, S.: A layered analysis of consensus. SIAM Journal of Computing 31(4), 989–1021 (2002)CrossRefMathSciNetGoogle Scholar
  26. 26.
    Mostefaoui, A., Rajsbaum, S., Raynal, M.: Conditions on input vectors for consensus solvability in asynchronous distributed systems. Journal of the ACM 50(6), 922–954 (2003)CrossRefMathSciNetGoogle Scholar
  27. 27.
    Mostefaoui, A., Rajsbaum, S., Raynal, M.: Using conditions to expedite consensus in synchronous systems. In: Fich, F. (ed.). Proceedings of 17th International Symposium on Distributed Computing (DISC’03), Springer-Verlag LNCS 2848, 249–263, Sorrento (2003)Google Scholar
  28. 28.
    Mostefaoui, A., Rajsbaum, S., Raynal, M.: The synchronous condition-based consensus hierarchy. In: Guerraoui, R.(ed.). Proceedings of 18th International Symposium on Distributed Computing (DISC’04), Springer-Verlag LNCS 3274, pp 1–15 (Amsterdam 2004)Google Scholar
  29. 29.
    Mostefaoui, A., Rajsbaum, S., Raynal, M., Roy, M.: Condition-based consensus solvability: a Hierarchy of Conditions and Efficient Protocols. Distributed Computing 17, 1–20 (2004)CrossRefGoogle Scholar
  30. 30.
    Mostefaoui, A., Raynal, M.: Leader-based consensus. Parallel Processing Letters 11(1), 95–107 (2001)CrossRefMathSciNetGoogle Scholar
  31. 31.
    Raynal M.: Consensus in synchronous systems: A concise guided tour. In: Proceedings of 9th IEEE Pacific Rim International Symposium on Dependable Computing (PRDC’02), 221–228, IEEE Computer Press, Tsukuba (2002)Google Scholar
  32. 32.
    Zibin, Y.: Condition-based consensus in synchronous systems. In: F. Fich (ed.). Proceedings of 17th Int’l Symposium on Distributed Computing (DISC’03), Springer-Verlag LNCS 2848, 239–248, Sorrento (2003)Google Scholar

Copyright information

© Springer-Verlag 2005

Authors and Affiliations

  • Achour Mostefaoui
    • 1
  • Sergio Rajsbaum
    • 2
  • Michel Raynal
    • 1
  1. 1.IRISARennes CedexFrance
  2. 2.Instituto de Matem´ticas, UNAMD. F.Mexico

Personalised recommendations