Abstract
So far, the distributed computing community has either assumed that all the processes of a distributed system have distinct identifiers or, more rarely, that the processes are anonymous and have no identifiers. These are two extremes of the same general model: namely, \(n\) processes use \(\ell \) different identifiers, where \(1 \le \ell \le n\). In this paper, we ask how many identifiers are actually needed to reach agreement in a distributed system with \(t\) Byzantine processes. We show that having \(3t+1\) identifiers is necessary and sufficient for agreement in the synchronous case but, more surprisingly, the number of identifiers must be greater than \(\frac{n+3t}{2}\) in the partially synchronous case. This demonstrates two differences from the classical model (which has \(\ell =n\)): there are situations where relaxing synchrony to partial synchrony renders agreement impossible; and, in the partially synchronous case, increasing the number of correct processes can actually make it harder to reach agreement. The impossibility proofs use the fact that a Byzantine process can send multiple messages to the same recipient in a round. We show that removing this ability makes agreement easier: then, \(t+1\) identifiers are sufficient for agreement, even in the partially synchronous model, assuming processes can count the number of messages with the same identifier they receive in a round.
Similar content being viewed by others
References
Angluin, D: Local and global properties in networks of processors (extended abstract). In: Proceedings of the 12th ACM Symposium on Theory of Computing, pp. 82–93. ACM (1980)
Aspnes, J., Fich, F.E., Ruppert, E.: Relationships between broadcast and shared memory in reliable anonymous distributed systems. Distrib. Comput. 18(3), 209–219 (2006)
Attiya, H., Gorbach, A., Moran, S.: Computing in totally anonymous asynchronous shared memory systems. Inf. Comput. 173(2), 162–183 (2002)
Boldi, P., Vigna, S.: An effective characterization of computability in anonymous networks. In: Proceedings of the 15th International Conference on Distributed Computing, vol. 2180 of LNCS, pp. 33–47. Springer (2001)
Bonnet, F., Raynal, M.: The price of anonymity: optimal consensus despite asynchrony, crash, and anonymity. ACM Trans. Auton. Adapt. Syst. 6(4), 23:1–23:28 (2011)
Buhrman, H., Panconesi, A., Silvestri, R., Vitányi, P.M.B.: On the importance of having an identity or, is consensus really universal? Distrib. Comput. 18(3), 167–176 (2006)
Chaum, D., van Heyst, E.: Group signatures. In: Advances in Cryptology: EUROCRYPT ’91, vol. 547 of LNCS, pp. 257–265, (1991)
Delporte-Gallet, C., Fauconnier, H., Guerraoui, R., Kermarrec, A.-M., Ruppert, E., Tran-The, H.: Byzantine agreement with homonyms. In: Proceedings of the 30th ACM Symposium on Principles of Distributed Computing, pp. 21–30 (2011)
Delporte-Gallet, C., Fauconnier, H., Tielmann, A.: Fault-tolerant consensus in unknown and anonymous networks. In: Proceedings of the 29th IEEE International Conference on Distributed Computing Systems, pp. 368–375. IEEE Computer Society (2009)
Dwork, C., Lynch, N.A., Stockmeyer, L.: Consensus in the presence of partial synchrony. J. ACM 35(2), 288–323 (1988)
Fischer, M.J., Lynch, N.A., Merritt, M.: Easy impossibility proofs for distributed consensus problems. Distrib. Comput. 1(1), 26–39 (1986)
Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)
Garay, J.A., Yoram, M.: Fully polynomial byzantine agreement for \(n{>}3t\) processors in \(t+1\) rounds. SIAM J. Comput. 27(1), 247–290 (1998)
Guerraoui, R., Ruppert, E.: Anonymous and fault-tolerant shared-memory computing. Distrib. Comput. 20(3), 165–177 (2007)
Jayanti, P., Toueg, S.: Wakeup under read/write atomicity. In: van Leeuwen J., Santoro N., (eds.). Proceedings of the 4th International Workshop on Distributed Algorithms, vol. 486 of LNCS, pp. 277–288. Springer (1990)
Lamport, L., Shostak, R., Pease, M.: The Byzantine generals problem. ACM Trans. Program. Lang. Syst. 4(3), 382–401 (1982)
Okun, M.: Agreement among unacquainted Byzantine generals. In: Proceedings of the 19th International Conference on Distributed Computing, vol. 3724 of LNCS, pp. 499–500. Springer (2005)
Okun, M., Barak, A.: Efficient algorithms for anonymous Byzantine agreement. Theory Comput. Syst. 42(2), 222–238 (2008)
Okun, M., Barak, A., Gafni, E.: Renaming in synchronous message passing systems with Byzantine failures. Distrib. Comput. 20(6), 403–413 (2008)
Pease, M., Shostak, R., Lamport, L.: Reaching agreement in the presence of faults. J. ACM 27(2), 228–234 (1980)
Rowstron, A.I.T., Druschel, P.: Pastry: scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In: Middleware, vol. 2218 of LNCS, pp. 329–350 (2001)
Ruppert, E.: The anonymous consensus hierarchy and naming problems. In: Proceedings of the Principles of Distributed Systems, 11th International Conference, vol. 4878 of LNCS, pp. 386–400. Springer (2007)
Srikanth, T.K., Toueg, S.: Simulating authenticated broadcasts to derive simple fault-tolerant algorithms. Distrib. Comput. 2(2), 80–94 (1987)
Stoica, I., Morris, R., Liben-Nowell, D., Karger, D.R., Kaashoek, M.F., Dabek, F., Balakrishnan, H.: Chord: a scalable peer-to-peer lookup protocol for internet applications. IEEE/ACM Trans. Netw. 11(1), 17–32 (2003)
Yamashita, M., Kameda, T.: Computing on anonymous networks: part I-characterizing the solvable cases. IEEE Trans. Parallel Distrib. Syst. 7(1), 69–89 (1996)
Acknowledgments
We are grateful to Christian Cachin for his useful comments on our model with homonyms. We thank the anonymous reviewers for all of their very helpful comments. An abbreviated version of this paper appeared in [8]. Eric Ruppert received funding from the Natural Sciences and Engineering Research Council of Canada. This work is supported by the ERC Starting Grant GOSSPLE number 204742 and the ANR VERSO SHAMAN.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Delporte-Gallet, C., Fauconnier, H., Guerraoui, R. et al. Byzantine agreement with homonyms. Distrib. Comput. 26, 321–340 (2013). https://doi.org/10.1007/s00446-013-0190-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00446-013-0190-3