On the Complexity of Fault-Tolerant Consensus

  • Dariusz R. Kowalski
  • Jarosław MirekEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11704)


We consider the problem of reaching agreement in a distributed message-passing system prone to crash failures. Crashes are generated by Constrained adversaries - a Weakly-Adaptive adversary, who has to fix, in advance, the set of f crash-prone processes, and a k-Chain-Ordered adversary, who orders all the processes into k disjoint chains and has to follow this order when crashing them. Apart from these constraints, both of them may crash processes in an adaptive way at any time. While commonly used Strongly-Adaptive adversaries model attacks and Non-Adaptive ones - pre-defined faults, Constrained adversaries model more realistic scenarios when there are fault-prone dependent processes, e.g., in hierarchical or dependable software/hardware systems. In this view, our approach helps to understand better the crash-tolerant consensus in more realistic executions. We propose time-efficient consensus algorithms against such adversaries. We complement our algorithmic results with (almost) tight lower bounds, and extend the one for Weakly-Adaptive adversaries to hold also for (syntactically) weaker Non-Adaptive adversaries. Together with the consensus algorithm against Weakly-Adaptive adversaries (which automatically translates to the Non-Adaptive adversaries), these results extend the state-of-the-art of the popular class of Non-Adaptive adversaries, in particular, the result of Chor, Meritt and Shmoys [7], and prove separation gap between Constrained adversaries (including Non-Adaptive ones) and Strongly-Adaptive adversaries, analyzed by Bar-Joseph and Ben-Or [3] and others.


  1. 1.
    Aspnes, J.: Randomized protocols for asynchronous consensus. Distrib. Comput. 16(2–3), 165–175 (2003)CrossRefGoogle Scholar
  2. 2.
    Attiya, H., Welch, J.: Distributed Computing: Fundamentals, Simulations and Advanced Topics. John Wiley & Sons Inc., USA (2004)CrossRefGoogle Scholar
  3. 3.
    Bar-Joseph, Z., Ben-Or, M.: A tight lower bound for randomized synchronous consensus. In: Proceedings of the Seventeenth Annual ACM Symposium on Principles of Distributed Computing, PODC 1998, New York, NY, USA, pp. 193–199. ACM (1998)Google Scholar
  4. 4.
    Ben-Or, M.: Another advantage of free choice (extended abstract): completely asynchronous agreement protocols. In: Proceedings of the Second Annual ACM Symposium on Principles of Distributed Computing, PODC 1983, New York, NY, USA, pp. 27–30. ACM (1983)Google Scholar
  5. 5.
    Bracha, G., Toueg, S.: Asynchronous consensus and broadcast protocols. J. ACM 32(4), 824–840 (1985)MathSciNetCrossRefGoogle Scholar
  6. 6.
    Chlebus, B.S., Kowalski, D.R.: Locally scalable randomized consensus for synchronous crash failures. In: Proceedings of the Twenty-First Annual Symposium on Parallelism in Algorithms and Architectures, SPAA 2009, New York, NY, USA, pp. 290–299. ACM (2009)Google Scholar
  7. 7.
    Chor, B., Merritt, M., Shmoys, D.B.: Simple constant-time consensus protocols in realistic failure models. J. ACM 36(3), 591–614 (1989)MathSciNetCrossRefGoogle Scholar
  8. 8.
    Dilworth, R.P.: A decomposition theorem for partially ordered sets. Ann. Math. 51(1), 161–166 (1950)MathSciNetCrossRefGoogle Scholar
  9. 9.
    Feldman, P., Micali, S.: An optimal probabilistic protocol for synchronous byzantine agreement. SIAM J. Comput. 26(4), 873–933 (1997)MathSciNetCrossRefGoogle Scholar
  10. 10.
    Fischer, M.J., Lynch, N.A.: A lower bound for the time to assure interactive consistency. Inf. Process. Lett. 14(4), 183–186 (1982)MathSciNetCrossRefGoogle Scholar
  11. 11.
    Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)MathSciNetCrossRefGoogle Scholar
  12. 12.
    Garay, J.A., Moses, Y.: Fully polynomial byzantine agreement in t + 1 rounds. In: Proceedings of the Twenty-Fifth Annual ACM Symposium on Theory of Computing, STOC 1993, New York, NY, USA, pp. 31–41. ACM (1993)Google Scholar
  13. 13.
    Gilbert, S., Kowalski, D.R.: Distributed agreement with optimal communication complexity. In: Proceedings of the Twenty-First Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2010, Austin, Texas, USA, 17–19 January 2010, pp. 965–977 (2010)Google Scholar
  14. 14.
    Klonowski, M., Kowalski, D.R., Mirek, J.: Ordered and delayed adversaries and how to work against them on a shared channel. Distrib. Comput. 1–25, September 2018Google Scholar
  15. 15.
    Kowalski, D.R., Mirek, J.: On the complexity of fault-tolerant consensus. CoRR, abs/1905.07063 (2019)Google Scholar
  16. 16.
    Kowalski, D.R., Mosteiro, M.A.: Polynomial counting in anonymous dynamic networks with applications to anonymous dynamic algebraic computations. In: 45th International Colloquium on Automata, Languages, and Programming, ICALP 2018, 9–13 July 2018, Prague, Czech Republic, pp. 156:1–156:14 (2018)Google Scholar
  17. 17.
    Loui, M.C., Abu-Amara, H.H.: Memory requirements for agreement among unreliable asynchronous processes. Adv. Comput. Res. 4(163183), 31 (1987)Google Scholar
  18. 18.
    Rabin, M.O.: Randomized byzantine generals. In: 24th Annual Symposium on Foundations of Computer Science (FOCS 1983), pp. 403–409 (1983)Google Scholar
  19. 19.
    Robinson, P., Scheideler, C., Setzer, A.: Breaking the \(\Omega (\sqrt{n})\) barrier: fast consensus under a late adversary. In: Proceedings of the 30th on Symposium on Parallelism in Algorithms and Architectures, SPAA 2018, Vienna, Austria, 6–18 July 2018, pp. 173–182 (2018)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.School of Computer and Cyber SciencesAugusta UniversityAugustaUSA
  2. 2.Department of Computer ScienceUniversity of LiverpoolLiverpoolUK

Personalised recommendations