Skip to main content
Log in

Uniform atomic broadcast and consensus in fully anonymous synchronous systems with crash failures

  • Regular Paper
  • Published:
Computing Aims and scope Submit manuscript

Abstract

Uniform Atomic Broadcast is one of the most important fault-tolerant communication abstractions for distributed systems. It ensures that processes deliver messages in the same order, even when processes may fail by crashing. On the other hand, Uniform Consensus is a fundamental abstraction in fault-tolerant distributed systems. It guarantees that, despite of failures by crashing, the processes decide on the same value among those proposed by all the processes in the system. These two abstractions have been extensively studied in the literature over the years. Traditionally, works on Uniform Atomic Broadcast and Consensus focus on classic systems, that is, systems where the processes have a univocal identity. Due to its advantages in security, among other properties, a different line has emerged to study these two abstractions in anonymous distributed systems where processes are indistinguishable because they do not have identifiers or any other way to tell them apart. So far, in these anonymous systems, Uniform Atomic Broadcast and Consensus have been studied considering the knowledge of two important parameters: f and n. The parameter f represents the maximum number of processes that can fail by crashing in an execution. The other parameter n indicates the total number of processes in the system. It is easy to see that these two parameters are also very important regarding security problems. This knowledge about the total number of processes (n) or the maximum number of processes that can fail (f) may compromise the security of the system. In this paper we study, for the first time in the literature, these two important problems in fully anonymous systems, that is, not only where processes are anonymous, but where the values of f and n are totally unknown. Although it is known in the literature that many agreement problems are impossible to solve in anonymous systems (even if n and f are known), we present in this paper algorithms to solve both abstractions in fully anonymous synchronous systems and we also present algorithms to show that they are also equivalent problems in these fully anonymous synchronous systems, just as they are in classical systems, as is well known in the literature.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

Notes

  1. A failure detector is a distributed device which provides the processes with information related with crashed processes.

  2. A coin is a distributed device which provides the processes with random binary values.

References

  1. Birman KP, Joseph TA (1987) Reliable communication in the presence of failures. ACM Trans Comput Syst 5(1):47–76. https://doi.org/10.1145/7351.7478

    Article  Google Scholar 

  2. Angluin D (1980) Local and global properties in networks of processors (extended abstract). In: Proceedings of the twelfth annual ACM symposium on theory of computing. STOC ’80, pp. 82–93. Association for Computing Machinery, New York, NY, USA. https://doi.org/10.1145/800141.804655

  3. Yamashita M, Kameda T (1996) Computing on anonymous networks: part i-characterizing the solvable cases. IEEE Trans Parallel Distrib Syst 7(1):69–89. https://doi.org/10.1109/71.481599

    Article  Google Scholar 

  4. Yamashita M, Kameda T (1996) Computing on anonymous networks: part ii-decision and membership problems. IEEE Trans Parallel Distrib Syst 7(1):90–96. https://doi.org/10.1109/71.481600

    Article  Google Scholar 

  5. Chandra TD, Toueg S (1996) Unreliable failure detectors for reliable distributed systems. J ACM 43(2):225–267. https://doi.org/10.1145/226643.226647

    Article  MathSciNet  MATH  Google Scholar 

  6. Défago X, Schiper A, Urbán P (2004) Total order broadcast and multicast algorithms: taxonomy and survey. ACM Comput Surv 36(4):372–421. https://doi.org/10.1145/1041680.1041682

    Article  Google Scholar 

  7. Hadzilacos V, Toueg S (1994) A modular approach to fault-tolerant broadcasts and related problems. Technical report, Cornell University, Ithaca (USA), TR #94–1425, p 83

  8. Raynal M (2010) Communication and agreement abstractions for fault-tolerant asynchronous distributed systems. Synthesis lectures on distributed computing theory. Morgan & Claypool Publishers, Breinigsville, PA USA. https://doi.org/10.2200/S00236ED1V01Y201004DCT002

  9. Attiya H, Welch J (2004) Distributed computing: fundamentals, simulations and advanced topics: Wiley series on parallel and distributed computing. Wiley, Hoboken

    Google Scholar 

  10. Baldoni R, Cimmino S, Marchetti C (2006) A classification of total order specifications and its application to fixed sequencer-based implementations. J Parallel Distrib Comput 66(1):108–127. https://doi.org/10.1016/j.jpdc.2005.06.021

    Article  MATH  Google Scholar 

  11. Chang J, Maxemchuk NF (1984) Reliable broadcast protocols. ACM Trans Comput Syst 2(3):251–273. https://doi.org/10.1145/989.357400

    Article  Google Scholar 

  12. Garcia-Molina H, Spauster A (1991) Ordered and reliable multicast communication. ACM Trans Comput Syst 9(3):242–271. https://doi.org/10.1145/128738.128741

    Article  Google Scholar 

  13. Jiménez E, Arévalo S, Tang J (2015) Fault-tolerant broadcast in anonymous systems. J Supercomput 71(11):4172–4191. https://doi.org/10.1007/s11227-015-1512-y

    Article  Google Scholar 

  14. Lynch NA (1996) Distributed Algorithms. Morgan Kaufmann Publishers Inc., San Francisco

    MATH  Google Scholar 

  15. Raynal M (2002) Consensus in synchronous systems: a concise guided tour. In: Proceedings of the 2002 pacific rim international symposium on dependable computing. PRDC ’02, p. 221. IEEE Computer Society, USA. https://doi.org/10.1109/PRDC.2002.1185641

  16. Arévalo S, Anta AF, Imbs D, Jiménez E, Raynal M (2015) Failure detectors in homonymous distributed systems (with an application to consensus). J Parallel Distri Comput 83:83–95. https://doi.org/10.1016/j.jpdc.2015.05.007

    Article  Google Scholar 

  17. Jiménez E, Arévalo S, Herrera C, Tang J (2015) Eventual election of multiple leaders for solving consensus in anonymous systems. J Supercomput 71(10):3726–3743. https://doi.org/10.1007/s11227-015-1460-6

    Article  Google Scholar 

  18. Jiménez E, López-Presa JL, Martín-Rueda J (2019) Hybrid binary consensus in anonymous asynchronous systems using coins and failure detectors. J Supercomput 75(12):8262–8292. https://doi.org/10.1007/s11227-019-03001-6

    Article  Google Scholar 

  19. Bonnet F, Raynal M (2011) The price of anonymity: optimal consensus despite asynchrony, crash, and anonymity. TAAS 6(4):23–12328. https://doi.org/10.1145/2019591.2019592

    Article  MATH  Google Scholar 

  20. Bonnet F, Raynal M (2013) Anonymous asynchronous systems: the case of failure detectors. Distrib Comput 26(3):141–158. https://doi.org/10.1007/s00446-012-0169-5

    Article  MATH  Google Scholar 

  21. Bouzid Z, Travers C (2012) Anonymity, failures, detectors and consensus. working paper or preprint. https://hal.inria.fr/hal-00723309

  22. Bouzid Z, Travers C (2012) Brief announcement: anonymity, failures, detectors and consensus. In: Aguilera MK (ed) Distributed computing: lecture notes in computer science, vol 7611. Springer, Berlin, pp 427–428. https://doi.org/10.1007/978-3-642-33651-5_41

    Chapter  Google Scholar 

  23. Khanchandani P, Wattenhofer R (2021) Byzantine agreement with unknown participants and failures. In: 2021 IEEE international parallel and distributed processing symposium (IPDPS), pp 952–961. https://doi.org/10.1109/IPDPS49936.2021.00104

  24. Fischer MJ, Lynch NA, Paterson MS (1985) Impossibility of distributed consensus with one faulty process. J ACM 32(2):374–382. https://doi.org/10.1145/3149.214121

    Article  MathSciNet  MATH  Google Scholar 

  25. Okun M (2005) Agreement among unacquainted byzantine generals. In: Proceedings of the 19th international conference on distributed computing. DISC’05, pp. 499–500. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11561927_40

  26. Angluin D, Aspnes J, Eisenstat D, Ruppert E (2005) On the power of anonymous one-way communication. In: Proceedings of the 9th international conference on principles of distributed systems. OPODIS’05, pp 396–411. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11795490_30

  27. Akyildiz IF, Su W, Sankarasubramaniam Y, Cayirci E (2002) Wireless sensor networks: a survey. Comput Netw 38(4):393–422. https://doi.org/10.1016/S1389-1286(01)00302-4

    Article  Google Scholar 

  28. Angluin D, Aspnes J, Diamadi Z, Fischer MJ, Peralta R (2006) Computation in networks of passively mobile finite-state sensors. Distrib Comput 18(4):235–253. https://doi.org/10.1007/s00446-005-0138-3

    Article  MATH  Google Scholar 

  29. Durresi A, Paruchuri V, Durresi M, Barolli L (2005) A hierarchical anonymous communication protocol for sensor networks. In: Proceedings of the 2005 international conference on embedded and ubiquitous computing. EUC’05, pp 1123–1132. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11596356_111

  30. Ould-Ahmed-Vall E, Blough DM, Heck-Ferri BS, Riley GF (2009) Distributed global ID assignment for wireless sensor networks. Ad Hoc Netw 7(6):1194–1216. https://doi.org/10.1016/j.adhoc.2008.10.006

    Article  Google Scholar 

  31. Fischer MJ, Lynch NA (1982) A lower bound for the time to assure interactive consistency. Inf Process Lett 14(4):183–186. https://doi.org/10.1016/0020-0190(82)90033-3

    Article  MathSciNet  MATH  Google Scholar 

  32. Aguilera MK, Toueg S (1999) A simple bivalency proof that t-resilient consensus requires t + 1 rounds. Inf Process Lett 71(3–4):155–158. https://doi.org/10.1016/S0020-0190(99)00100-3

    Article  MathSciNet  MATH  Google Scholar 

  33. Dolev D, Strong HR (1983) Authenticated algorithms for byzantine agreement. SIAM J Comput 12(4):656–666. https://doi.org/10.1137/0212045

    Article  MathSciNet  MATH  Google Scholar 

  34. Attiya H, Snir M, Warmuth MK (1988) Computing on an anonymous ring. J ACM 35(4):845–875. https://doi.org/10.1145/48014.48247

    Article  MathSciNet  MATH  Google Scholar 

  35. Gopal A, Toueg S (1989) Reliable broadcast in synchronous and asynchronous environments (preliminary version). In: Bermond J-C, Raynal M (eds) Distributed algorithms. Springer, Berlin, Heidelberg, pp 110–123

    Chapter  Google Scholar 

  36. Srikanth TK, Toueg S (1987) Simulating authenticated broadcasts to derive simple fault-tolerant algorithms. Distrib Comput 2(2):80–94. https://doi.org/10.1007/BF01667080

    Article  Google Scholar 

Download references

Acknowledgements

This work has been partially funded by the Ministry of Economy and Competitiveness (MINECO) under project QoSDATA (PID2020-119461GB-I00) and by the Regional Government of Madrid (CM) under project EDGEDATA (P2018/TCS-4499).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ernesto Jiménez.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Jiménez, E., López-Presa, J.L. & Patiño-Martínez, M. Uniform atomic broadcast and consensus in fully anonymous synchronous systems with crash failures. Computing 105, 1165–1187 (2023). https://doi.org/10.1007/s00607-022-01135-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00607-022-01135-9

Keywords

Mathematics Subject Classification

Navigation