Skip to main content
Log in

A self-adjusting algorithm for byzantine agreement

  • Published:
Distributed Computing Aims and scope Submit manuscript

Summary

Byzantine Agreement is important both in the theory and practice of distributed computing. However, protocols to reach Byzantine Agreement are usually expensive both in the time required as well as in the number of messages exchanged. In this paper, we present a self-adjusting approach to the problem. The Mostly Byzantine Agreement is proposed as a more restrictive agreement problem that requires that in the consecutive attempts to reach agreement, the number of disagreements (i.e., failures to reach Byzantine Agreement) is finite. Fort faulty processes, we give an algorithm that has at mostt disagreements for 4t or more processes. Another algorithm is given forn≧3t+1 processes with the number of disagreements belowt 2/2. Both algorithms useO(n 3) message bits for binary value agreement.

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.

Institutional subscriptions

Similar content being viewed by others

References

  1. Burns J, Gouda M, Miller R: Stabilization and pseudo-stabilization. Technical Report TR-90-13, Department of Computer Sciences, University of Texas at Austin, May 1990

  2. Chor B, Coan BA: A simple and efficient randomized byzantine agreement algorithm. IEEE trans software Eng SE-11 (6):531–539 (1985)

    Google Scholar 

  3. Dijkstra EW: Self-stabilizing system in spite of distributed control. CACM 17 (11):643–644 (1974). Also as EWD391 Dijkstra EW: Selected writings on computing: a personal perspective. Springer, Berlin Heidelberg New York 1982, 41–46

    Google Scholar 

  4. Coan BA: A communication-efficient canonical form for fault-tolerant distributed protocols. Proceedings of the 5th Annual ACM Symposium on Principles of Distributed Computing pp 63–71, 1986

  5. Dolev D: The byzantine generals strike again. J Algorithms 3 (1):14–30 (1982)

    Google Scholar 

  6. Dolev D, Fisher, MJ, Fowler R, Lynch NA, Strong HR: An efficient algorithm for Byzantine Agreement without authentication. Inf Cont 52 (3):257–274 (1982)

    Google Scholar 

  7. Dolev D, Strong HR: Polynomial algorithms for multiple processor agreement. Proceedings of the 14th Annual ACM Symposium on Theory Computing pp 401–407, 1982

  8. Dolev D, Strong HR: Requirements for agreement in a distributed system. Technique Report RJ 3418, IBM Research Laboratory, San Jose, CA 1982

    Google Scholar 

  9. Dolev D, Reischuk R, Strong HR: Eventual is earlier than Immediate. Proceedings of the 23rd Annual IEEE Symposium on Foundation of Computer Science 196–203, 1982

  10. Dolev D, Reischuk, R: Bounds on information exchanged for Byzantine Agreement. J Assoc Comput Mach 32 (1):191–204 (1985)

    Google Scholar 

  11. Dolev D, Lynch N, Pinter S, Stark E, Weihl W: Reaching approximate agreement in the presence of faults. J Assoc Comput Mach 33 (3):499–516 (1986)

    Google Scholar 

  12. Fekete A: Asymptotically optimal algorithms for approximate agreement. Proceedings of the 5th Annual ACM Symposium on Principles of Distributed Computer pp 73–87, 1986

  13. Fischer MJ, Lynch NA: A lower bound for the time to assure interactive consistency. Inf Process Lett 14 (4):183–186 (1982)

    Google Scholar 

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

    Google Scholar 

  15. Lynch NA, Fischer MJ, Fowler RJ: A simple and efficient byzantine generals algorithm. Proceedings of the 2nd IEEE Symposium on Reliability in Distributed Software and Database System pp 46–52, 1982

  16. Mahaney S, Schneider F: Inexact agreement: accuracy, precision, and graceful degradation. Proceedings of the 4th Annual ACM Symposium on Principles of Distributed Computing pp 237–249, 1985

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

    Google Scholar 

  18. Perry KJ: Randomized byzantine agreement. IEEE Trans Software Eng, SE-11 (6):539–546 (1985)

    Google Scholar 

  19. Rabin M: Randomized byzantine generals. In Proceedings of the 24th Symposium on Foundations of Computer Science pp 403–409, 1983

  20. Srikanth TK, Toueg S: Simulating authenticated broadcasts to derive simple fault-tolerant algorithms. Distrib Comput 2 (2):80–94 (1987)

    Google Scholar 

  21. Turpin R, Coan B: Extending binary Byzantine Agreement to multivalued Byzantine Agreement. Inf Process Lett 18:73–76 (1984)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Additional information

Yi Zhao is currently working on his Ph.D. degree in Computer Science at University of Houston. His research interests include fault tolerance, distributed computing, parallel computation and neural networks. He obtained his M.S. from University of Houston in 1988 and B.S. from Beijing University of Aeronautics and Astronautics in 1984, both in computer science.

Farokh B. Bastani received the B. Tech. degree in electrical engineering from the Indian Institute of Technology, Bombay, India, and the M.S. and Ph.D. degrees in electrical engineering and computer science from the University of California, Berkeley. He joined the University of Houston in 1980, where he is currently an Associate Professor of Computer Science. His research interests include software design and validation techniques, distributed systems, and fault-tolerant systems. He is a member of the ACM and the IEEE and is on the editorial board of theIEEE Transactions on Software Engineering.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Zhao, Y., Bastani, F.B. A self-adjusting algorithm for byzantine agreement. Distrib Comput 5, 219–226 (1992). https://doi.org/10.1007/BF02277668

Download citation

  • Received:

  • Accepted:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF02277668

Key words

Navigation