Skip to main content

Communication-Efficient Randomized Consensus

  • Conference paper
Distributed Computing (DISC 2014)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 8784))

Included in the following conference series:

Abstract

We consider the problem of consensus in the challenging classic model. In this model, the adversary is adaptive; it can choose which processors crash at any point during the course of the algorithm. Further, communication is via asynchronous message passing: there is no known upper bound on the time to send a message from one processor to another, and all messages and coin flips are seen by the adversary.

We describe a new randomized consensus protocol with expected message complexity O(n 2 log2 n) when fewer than n/2 processes may fail by crashing. This is an almost-linear improvement over the best previously known protocol, and within logarithmic factors of a known Ω(n 2) message lower bound. The protocol further ensures that no process sends more than O(nlog3 n) messages in expectation, which is again within logarithmic factors of optimal.We also present a generalization of the algorithm to an arbitrary number of failures t, which uses expected O(nt + t 2 log2 t) total messages. Our protocol uses messages of size O(log n), and can therefore scale to large networks.

Our approach is to build a message-efficient, resilient mechanism for aggregating individual processor votes, implementing the message-passing equivalent of a weak shared coin. Roughly, in our protocol, a processor first announces its votes to small groups, then propagates them to increasingly larger groups as it generates more and more votes. To bound the number of messages that an individual process might have to send or receive, the protocol progressively increases the weight of generated votes. The main technical challenge is bounding the impact of votes that are still “in flight” (generated, but not fully propagated) on the final outcome of the shared coin, especially since such votes might have different weights. We achieve this by leveraging the structure of the algorithm, and a technical argument based on martingale concentration bounds. Overall, we show that it is possible to build an efficient message-passing implementation of a shared coin, and in the process (almost-optimally) solve the classic consensus problem in the asynchronous message-passing model.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abrahamson, K.: On achieving consensus using a shared memory. In: Proceedings of the Seventh Annual ACM Symposium on Principles of Distributed Computing, PODC 1988, pp. 291–302. ACM, New York (1988)

    Chapter  Google Scholar 

  2. Aguilera, M.K., Toueg, S.: The correctness proof of Ben-Or’s randomized consensus algorithm. Distributed Computing 25(5), 371–381 (2012)

    Article  MATH  Google Scholar 

  3. Alistarh, D., Aspnes, J., King, V., Saia, J.: Communication-efficient randomized consensus (2014), Full version available at http://www.cs.yale.edu/homes/aspnes/papers/disc2014-submission.pdf

  4. Aspnes, J.: Lower bounds for distributed coin-flipping and randomized consensus. J. ACM 45(3), 415–450 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  5. Aspnes, J., Attiya, H., Censor, K.: Randomized consensus in expected O(n logn) individual work. In: PODC 2008: Proceedings of the Twenty-Seventh ACM Symposium on Principles of Distributed Computing, pp. 325–334 (August 2008)

    Google Scholar 

  6. Aspnes, J., Attiya, H., Censor-Hillel, K.: Polylogarithmic concurrent data structures from monotone circuits. J. ACM 59(1), 2 (2012)

    Article  MathSciNet  Google Scholar 

  7. Aspnes, J., Censor, K.: Approximate shared-memory counting despite a strong adversary. ACM Transactions on Algorithms 6(2), 1–23 (2010)

    Article  MathSciNet  Google Scholar 

  8. Aspnes, J., Censor-Hillel, K.: Atomic snapshots in O(log3 n) steps using randomized helping. In: Afek, Y. (ed.) DISC 2013. LNCS, vol. 8205, pp. 254–268. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  9. Aspnes, J., Herlihy, M.: Fast randomized consensus using shared memory. Journal of Algorithms 11(3), 441–461 (1990)

    Article  MathSciNet  MATH  Google Scholar 

  10. Aspnes, J., Waarts, O.: Randomized consensus in expected O(n log2 n) operations per processor. SIAM J. Comput. 25(5), 1024–1044 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  11. Attiya, H., Bar-Noy, A., Dolev, D.: Sharing memory robustly in message-passing systems. J. ACM 42(1), 124–142 (1995)

    Article  MATH  Google Scholar 

  12. Attiya, H., Censor, K.: Tight bounds for asynchronous randomized consensus. J. ACM 55(5), 20:1–20:26 (2008)

    Google Scholar 

  13. 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, pp. 27–30. ACM, New York (1983)

    Chapter  Google Scholar 

  14. Bracha, G.: An asynchronous [(n - 1)/3]-resilient consensus protocol. In: PODC 1984: Proceedings of the Third Annual ACM Symposium on Principles of Distributed Computing, pp. 154–162. ACM, New York (1984)

    Google Scholar 

  15. Bracha, G., Rachman, O.: Randomized consensus in expected O(n2log n) operations. In: Toueg, S., Spirakis, P.G., Kirousis, L.M. (eds.) WDAG 1991. LNCS, vol. 579, pp. 143–150. Springer, Heidelberg (1992)

    Chapter  Google Scholar 

  16. Chandra, T.D.: Polylog randomized wait-free consensus. In: Proceedings of the Fifteenth Annual ACM Symposium on Principles of Distributed Computing, Philadelphia, Pennsylvania, USA, May 23-26, pp. 166-175 (1996)

    Google Scholar 

  17. Chandra, T.D., Toueg, S.: Unreliable failure detectors for reliable distributed systems. J. ACM 43(2), 225–267 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  18. Chor, B., Israeli, A., Li, M.: On processor coordination using asynchronous hardware. In: Proceedings of the Sixth Annual ACM Symposium on Principles of Distributed Computing, PODC 1987, pp. 86–97. ACM, New York (1987)

    Chapter  Google Scholar 

  19. Dwork, C., Lynch, N., Stockmeyer, L.: Consensus in the presence of partial synchrony. J. ACM 35(2), 288–323 (1988)

    Article  MathSciNet  Google Scholar 

  20. Fich, F., Herlihy, M., Shavit, N.: On the space complexity of randomized synchronization. J. ACM 45(5), 843–862 (1998)

    Article  MathSciNet  MATH  Google Scholar 

  21. Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)

    Article  MathSciNet  MATH  Google Scholar 

  22. Grimmett, G.R., Stirzaker, D.R.: Probability and Random Processes. Oxford University Press (2001)

    Google Scholar 

  23. Hall, P., Heyde, C.: Martingale Limit Theory and Its Application. Academic Press (1980)

    Google Scholar 

  24. Karlin, A., Yao, A.: Probabilistic lower bounds for byzantine agreement and clock synchronization. Unpublished manuscript

    Google Scholar 

  25. Keralapura, R., Cormode, G., Ramamirtham, J.: Communication-efficient distributed monitoring of thresholded counts. In: Proceedings of the 2006 ACM SIGMOD International Conference on Management of Data, SIGMOD 2006, pp. 289–300. ACM, New York (2006)

    Chapter  Google Scholar 

  26. King, V., Saia, J.: Byzantine agreement in polynomial expected time. In: Proceedings of the ACM Symposium on Theory of Computing, STOC (2013)

    Google Scholar 

  27. King, V., Saia, J.: Faster agreement via a spectral method for detecting malicious behavior. In: Proceedings of the ACM-SIAM Symposium on Discrete Algorithms (SODA) (2014)

    Google Scholar 

  28. Lamport, L., Shostak, R., Pease, M.: The byzantine generals problem. ACM Trans. Program. Lang. Syst. 4(3), 382–401 (1982)

    Article  MATH  Google Scholar 

  29. Pease, M., Shostak, R., Lamport, L.: Reaching agreement in the presence of faults. J. ACM 27(2), 228–234 (1980)

    Article  MathSciNet  MATH  Google Scholar 

  30. Saks, M., Shavit, N., Woll, H.: Optimal time randomized consensus - making resilient algorithms fast in practice. In: Proc. of the 2nd ACM Symposium on Discrete Algorithms (SODA), pp. 351–362 (1991)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Alistarh, D., Aspnes, J., King, V., Saia, J. (2014). Communication-Efficient Randomized Consensus. In: Kuhn, F. (eds) Distributed Computing. DISC 2014. Lecture Notes in Computer Science, vol 8784. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-45174-8_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-45174-8_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-662-45173-1

  • Online ISBN: 978-3-662-45174-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics