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.
Similar content being viewed by others
Notes
A failure detector is a distributed device which provides the processes with information related with crashed processes.
A coin is a distributed device which provides the processes with random binary values.
References
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
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
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
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
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
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
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
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
Attiya H, Welch J (2004) Distributed computing: fundamentals, simulations and advanced topics: Wiley series on parallel and distributed computing. Wiley, Hoboken
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
Chang J, Maxemchuk NF (1984) Reliable broadcast protocols. ACM Trans Comput Syst 2(3):251–273. https://doi.org/10.1145/989.357400
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
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
Lynch NA (1996) Distributed Algorithms. Morgan Kaufmann Publishers Inc., San Francisco
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
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
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
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
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
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
Bouzid Z, Travers C (2012) Anonymity, failures, detectors and consensus. working paper or preprint. https://hal.inria.fr/hal-00723309
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
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
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
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
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
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
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
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
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
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
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
Dolev D, Strong HR (1983) Authenticated algorithms for byzantine agreement. SIAM J Comput 12(4):656–666. https://doi.org/10.1137/0212045
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
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
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
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
Corresponding author
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.
About this article
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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00607-022-01135-9
Keywords
- Consensus
- Atomic broadcast
- Crash failures
- Anonymous systems
- Unknown size of membership
- Unknown maximum number of failures
- Synchronous distributed systems