Bosco: One-Step Byzantine Asynchronous Consensus

  • Yee Jiun Song
  • Robbert van Renesse
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5218)


Asynchronous Byzantine consensus algorithms are an important primitive for building Byzantine fault-tolerant systems. Algorithms for Byzantine consensus typically require at least two communication steps for decision; in many systems, this imposes a significant performance overhead. In this paper, we show that it is possible to design Byzantine fault-tolerant consensus algorithms that decide in one message latency under contention-free scenarios and still provide strong consistency guarantees when contention occurs. We define two variants of one-step asynchronous Byzantine consensus and show a lower bound on the number of processors needed for each. We present a Byzantine consensus algorithm, Bosco, for asynchronous networks that meets these bounds, even in the face of a strong network adversary.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Keidar, I., Rajsbaum, S.: On the cost of fault-tolerant consensus when there are no faults. SIGACT News 32(2), 45–63 (2001)CrossRefGoogle Scholar
  2. 2.
    Brasileiro, F.V., Greve, F., Mostéfaoui, A., Raynal, M.: Consensus in one communication step. In: Proc. of the 6th International Conference on Parallel Computing Technologies, pp. 42–50. Springer, London (2001)Google Scholar
  3. 3.
    Boichat, R., Dutta, P., Frolund, S., Guerraoui, R.: Reconstructing Paxos. ACM SIGACT News 34 (2003)Google Scholar
  4. 4.
    Charron-Bost, B., Schiper, A.: The Heard-Of model: Unifying all benign failures. Technical Report LSR-REPORT-2006-004, EPFL (2006)Google Scholar
  5. 5.
    Lamport, L.: Lower bounds for asynchronous consensus. Technical Report MSR-TR-2004-72, Microsoft Research (2004)Google Scholar
  6. 6.
    Lamport, L.: Fast Paxos. Distributed Computing 19(2), 79–103 (2006)CrossRefMathSciNetGoogle Scholar
  7. 7.
    Dobre, D., Suri, N.: One-step consensus with zero-degradation. In: DSN 2006: Proceedings of the International Conference on Dependable Systems and Networks, pp. 137–146. IEEE Computer Society, Washington (2006)CrossRefGoogle Scholar
  8. 8.
    Friedman, R., Mostefaoui, A., Raynal, M.: Simple and efficient oracle-based consensus protocols for asynchronous Byzantine systems. IEEE Transactions on Dependable and Secure Computing 2(1), 46–56 (2005)CrossRefMathSciNetGoogle Scholar
  9. 9.
    Lamport, L., Shostak, R., Pease, M.: The Byzantine generals problem. ACM Transactions on Programming Languages and Systems 4(3), 382–401 (1982)MATHCrossRefGoogle Scholar
  10. 10.
    Fischer, M., Lynch, N., Patterson, M.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)MATHCrossRefGoogle Scholar
  11. 11.
    Martin, J.P., Alvisi, L.: Fast Byzantine consensus. In: Proceedings of the International Conference on Dependable Systems and Networks, pp. 402–411 (June 2005)Google Scholar
  12. 12.
    Ben-Or, M.: Another advantage of free choice: Completely asynchronous agreement protocols. In: Proc. of the 2nd ACM Symp. on Principles of Distributed Computing, Montreal, Quebec, ACM SIGOPS-SIGACT, pp. 27–30 (August 1983)Google Scholar
  13. 13.
    Castro, M., Liskov, B.: Practical Byzantine fault tolerance. In: Proc. of the 3rd Symposium on Operating Systems Design and Implementation (OSDI), New Orleans, LA (February 1999)Google Scholar
  14. 14.
    Biely, M., Widder, J., Charron-Bost, B., Gaillard, A., Hutle, M., Schiper, A.: Tolerating corrupted communication. In: PODC 2007: Proceedings of the twenty-sixth annual ACM symposium on Principles of Distributed Computing, pp. 244–253. ACM, New York (2007)Google Scholar
  15. 15.
    Zielinski, P.: Optimistically terminating consensus: All asynchronous consensus protocols in one framework. In: ISPDC ’06: Proceedings of the Proceedings of The Fifth International Symposium on Parallel and Distributed Computing, Washington, DC, pp. 24–33. IEEE Computer Society Press, Los Alamitos (2006)CrossRefGoogle Scholar
  16. 16.
    Abd-El-Malek, M., Ganger, G.R., Goodson, G.R., Reiter, M.K., Wylie, J.J.: Fault-scalable Byzantine fault-tolerant services. SIGOPS Operating Systems Review 39(5), 59–74 (2005)CrossRefGoogle Scholar
  17. 17.
    Cowling, J., Myers, D., Liskov, B., Rodrigues, R., Shrira, L.: HQ replication: a hybrid quorum protocol for Byzantine fault tolerance. In: OSDI 2006: Proceedings of the 7th symposium on Operating Systems Design and Implementation, pp. 177–190. USENIX Association, Berkeley (2006)Google Scholar
  18. 18.
    Merideth, M.G., Reiter, M.K.: Probabilistic opaque quorum systems. In: Pelc, A. (ed.) DISC 2007. LNCS, vol. 4731, pp. 403–419. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  19. 19.
    Malkhi, D., Reiter, M.K., Wool, A., Wright, R.N.: Probabilistic quorum systems. Information and Computation 170(2), 184–206 (2001)MATHCrossRefMathSciNetGoogle Scholar
  20. 20.
    Hendricks, J., Ganger, G.R., Reiter, M.K.: Low-overhead Byzantine fault-tolerant storage. In: Proc. of twenty-first ACM SIGOPS Symposium on Operating Systems Principles, pp. 73–86. ACM, New York (2007)CrossRefGoogle Scholar
  21. 21.
    Kotla, R., Alvisi, L., Dahlin, M., Clement, A., Wong, E.: Zyzzyva: speculative Byzantine fault tolerance. In: Proc. of twenty-first ACM SIGOPS symposium on Operating Systems Principles, pp. 45–58. ACM, New York (2007)CrossRefGoogle Scholar
  22. 22.
    Lamport, L.: The part-time parliament. Trans. on Computer Systems 16(2), 133–169 (1998)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Yee Jiun Song
    • 1
  • Robbert van Renesse
    • 1
  1. 1.Cornell UniversityIthacaUSA

Personalised recommendations