Advertisement

Early Decision and Stopping in Synchronous Consensus: A Predicate-Based Guided Tour

  • Armando Castañeda
  • Yoram Moses
  • Michel Raynal
  • Matthieu Roy
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10299)

Abstract

Consensus is the most basic agreement problem encountered in fault-tolerant distributed computing: each process proposes a value and non-faulty processes must agree on the same value, which has to be one of the proposed values. While this problem is impossible to solve in asynchronous systems prone to process crash failures, it can be solved in synchronous (round-based) systems where all but one process might crash in any execution. It is well-known that \((t+1)\) rounds are necessary and sufficient in the worst case execution scenario for the processes to decide and stop executing, where \(t < n\) is a system parameter denoting the maximum number of allowed process crashes and n denotes the number of processes in the system.

Early decision and stopping considers the case where \(f<t\) processes actually crash, f not being known by processes. It has been shown that the number of rounds that have to be executed in the worst case is then \(\mathsf{min}(f+2,t+1)\). Following Castañeda, Gonczarowski and Moses (DISC 2014), the paper shows that this value is an upper bound attained only in worst execution scenarios. To this end, it investigates a sequence of three early deciding/stopping predicates \(P_1=P_\mathsf{count}\), \(P_2=P_\mathsf{dif}\) and \(P_3=P_\mathsf{pref0}\), of increasing power, which differ in the information obtained by the processes from the actual failure, communication and data pattern. It is shown that each predicate \(P_i\) is better than the previous one \(P_{i-1}\), \(i\in \{2,3\}\), in the sense that there are executions where \(P_i\) allows processes to reach a decision earlier than \(P_{i-1}\), while \(P_{i-1}\) never allows a process to decide earlier than \(P_i\). Moreover, \(P_3=P_\mathsf{pref0}\) is an unbeatable predicate in the sense that it cannot be strictly improved: if there is an early deciding/stopping predicate \(P'\) that improves the decision time of a process with respect to \(P_\mathsf{pref0}\) in a given execution, then there is at least one execution in which a process decides with \(P'\) strictly later than with \(P_\mathsf{pref0}\).

Keywords

Agreement Consensus Early decision Early stopping Process crash Round-based algorithm Synchronous message-passing system t-Resilience 

Notes

Acknowledgements

Armando Castañeda is supported by UNAM-PAPIIT project IA102417. Yoram Moses is the Israel Pollak chair at the Technion. Michel Raynal is supported by the French ANR project DESCARTES devoted to distributed software engineering.

References

  1. 1.
    Aguilera, M.K., Toueg, S.: A simple bi-valency proof that \(t\)-resilient consensus requires \(t+1\) rounds. Inf. Process. Lett. 71, 155–158 (1999)CrossRefMATHGoogle Scholar
  2. 2.
    Berman, P., Garay, J.A., Perry, K.J.: Optimal early stopping in distributed consensus. In: Segall, A., Zaks, S. (eds.) WDAG 1992. LNCS, vol. 647, pp. 221–237. Springer, Heidelberg (1992). doi: 10.1007/3-540-56188-9_15 CrossRefGoogle Scholar
  3. 3.
    Castañeda, A., Gonczarowski, Y.A., Moses, Y.: Unbeatable consensus. In: Kuhn, F. (ed.) DISC 2014. LNCS, vol. 8784, pp. 91–106. Springer, Heidelberg (2014). doi: 10.1007/978-3-662-45174-8_7 Google Scholar
  4. 4.
    Castañeda A., Gonczarowski Y.A., Moses, Y.: Unbeatable set consensus via topological and combinatorial reasoning. In: Proceedings of the 35th ACM Symposium on Principles of Distributed Computing (PODC 2016), pp. 107–116. ACM Press (2016)Google Scholar
  5. 5.
    Chaudhuri, S.: More choices allow more faults: set consensus problems in totally asynchronous systems. Inf. Comput. 105, 132–158 (1993)MathSciNetCrossRefMATHGoogle Scholar
  6. 6.
    Dolev, D., Reischuk, R., Strong, H.R.: Early stopping in Byzantine agreement. J. ACM 37(4), 720–741 (1990)MathSciNetCrossRefMATHGoogle Scholar
  7. 7.
    Dwork, C., Moses, Y.: Knowledge and common knowledge in a Byzantine environment: crash failure. Inf. Comput. 88(2), 156–186 (1990)MathSciNetCrossRefMATHGoogle Scholar
  8. 8.
    Dutta, P., Guerraoui, R., Pochon, B.: Fast non-blocking atomic commit: an inherent tradeoff. Inf. Process. Lett. 91(4), 195–200 (2004)CrossRefMATHGoogle Scholar
  9. 9.
    Fagin, R., Halpern, J.Y., Moses, Y., Vardi, M.Y.: Reasoning about Knowledge. MIT Press, Cambridge (2003)Google Scholar
  10. 10.
    Fischer, M., Lynch, N.: A lower bound for the time to ensure interactive consistency. Inf. Process. Lett. 14, 183–186 (1982)CrossRefMATHGoogle Scholar
  11. 11.
    Fischer, M., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)MathSciNetCrossRefMATHGoogle Scholar
  12. 12.
    Halpern, J.Y., Moses, Y., Waarts, O.: A characterization of eventual Byzantine agreement. SIAM J. Comput. 31(3), 838–865 (2001)MathSciNetCrossRefMATHGoogle Scholar
  13. 13.
    Keidar, I., Rajsbaum, S.: A simple proof of the uniform consensus synchronous lower bound. Inf. Process. Lett. 85(1), 47–52 (2003)MathSciNetCrossRefMATHGoogle Scholar
  14. 14.
    Lamport, L., Shostack, R., Pease, M.: The Byzantine generals problem. ACM Trans. Prog. Lang. Syst. 4(3), 382–401 (1982)CrossRefMATHGoogle Scholar
  15. 15.
    Moses, Y., Tuttle, M.R.: Programming simultaneous actions using common knowledge. Algorithmica 3, 121–169 (1988)MathSciNetCrossRefMATHGoogle Scholar
  16. 16.
    Pease, M., Shostak, R.R., Lamport, L.: Reaching agreement in the presence of faults. J. ACM 27, 228–234 (1980)MathSciNetCrossRefMATHGoogle Scholar
  17. 17.
    Lynch, N.A.: Distributed algorithms, 872 p. Morgan Kaufmann Publishers, San Francisco (1996). ISBN 1-55860-384-4Google Scholar
  18. 18.
    Raïpin Parvédy, Ph., Raynal, M.: Optimal early stopping uniform consensus in synchronous systems with process omission failures. In: Proceedings of the 16th ACM Symposium on Parallel Algorithms and Architectures (SPAA 2004), pp. 302–310. ACM Press (2004)Google Scholar
  19. 19.
    Raynal, M.: Fault-tolerant agreement in synchronous message-passing systems, 189 p. Morgan & Claypool Publishers (2010). ISBN 978-1-60845-525-6Google Scholar
  20. 20.
    Raynal, M.: Concurrent Programming: Algorithms, Principles and Foundations, 515 p. Springer, Heidelberg (2013). ISBN 978-3-642-32026-2Google Scholar
  21. 21.
    Raynal, M.: Set Agreement, 2nd edn. Encyclopedia of Algorithms, pp. 1956–1959. Springer, New York (2016)Google Scholar
  22. 22.
    Wang, X., Teo, Y.M., Cao, J.: A bivalency proof of the lower bound for uniform consensus. Inf. Process. Lett. 96, 167–174 (2005)MathSciNetCrossRefMATHGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Armando Castañeda
    • 1
  • Yoram Moses
    • 2
  • Michel Raynal
    • 3
    • 4
  • Matthieu Roy
    • 5
  1. 1.Instituto de MatemáticasUNAMMexico CityMexico
  2. 2.TechnionHaifaIsrael
  3. 3.Institut Universitaire de FranceParisFrance
  4. 4.IRISAUniversité de RennesRennesFrance
  5. 5.LAAS, CNRSUniversité de ToulouseToulouseFrance

Personalised recommendations