On Self-stabilizing Synchronous Actions Despite Byzantine Attacks

  • Danny Dolev
  • Ezra N. Hoch
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4731)


Consider a distributed network of n nodes that is connected to a global source of “beats”. All nodes receive the “beats” simultaneously, and operate in lock-step. A scheme that produces a “pulse” every Cycle beats is shown. That is, the nodes agree on “special beats”, which are spaced Cycle beats apart. Given such a scheme, a clock synchronization algorithm is built. The “pulsing” scheme is self-stabilized despite any transient faults and the continuous presence of up to \(f < \frac{n}{3}\) Byzantin nodes. Therefore, the clock synchronization built on top of the “pulse” is highly fault tolerant. In addition, a highly fault tolerant general stabilizer algorithm is constructed on top of the “pulse” mechanism.

Previous clock synchronization solutions, operating in the exact same model as this one, either support \(f < \frac{n}{4}\) and converge in linear time, or support \(f < \frac{n}{3}\) and have exponential convergence time that also depends on the value of max-clock (the clock wrap around value). The proposed scheme combines the best of both worlds: it converges in linear time that is independent of max-clock and is tolerant to up to \(f < \frac {n}{3}\) Byzantin nodes. Moreover, considering problems in a self-stabilizing, Byzantin tolerant environment that require nodes to know the global state (clock synchronization, token circulation, agreement, etc.), the work presented here is the first protocol to operate in a network that is not fully connected.


Dine Nism Alse 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Afek, Y., Dolev, S.: Local stabilizer. In: ISTCS 1997. Proc. of the 5th Israeli Symposium on Theory of Computing Systems, Bar-Ilan, Israel (June 1997)Google Scholar
  2. 2.
    Arora, A., Dolev, S., Gouda, M.G.: Maintaining digital clocks in step. Parallel Processing Letters 1, 11–18 (1991)CrossRefGoogle Scholar
  3. 3.
    Daliot, A., Dolev, D.: Self-stabilization of byzantine protocols. In: Tixeuil, S., Herman, T. (eds.) SSS 2005. LNCS, vol. 3764, Springer, Heidelberg (2005)CrossRefGoogle Scholar
  4. 4.
    Daliot, A., Dolev, D., Parnas, H.: Linear time byzantine self-stabilizing clock synchronization. In: Papatriantafilou, M., Hunel, P. (eds.) OPODIS 2003. LNCS, vol. 3144, Springer, Heidelberg (2004), http://arxiv.org/abs/cs.DC/0608096 Google Scholar
  5. 5.
    Dolev, D.: The byzantine generals strike again. Journal of Algorithms 3, 14–30 (1982)MATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Dolev, D., Halpern, J.Y., Simons, B., Strong, R.: Dynamic fault-tolerant clock synchronization. J. Assoc. Computing Machinery 42(1), 143–185 (1995)MATHGoogle Scholar
  7. 7.
    Dolev, S.: Possible and impossible self-stabilizing digital clock synchronization in general graphs. Journal of Real-Time Systems 12(1), 95–107 (1997)CrossRefGoogle Scholar
  8. 8.
    Dolev, S., Welch, J.L.: Wait-free clock synchronization. Algorithmica 18(4), 486–511 (1997)MATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Dolev, S., Welch, J.L.: Self-stabilizing clock synchronization in the presence of byzantine faults. Journal of the ACM 51(5), 780–799 (2004)CrossRefMathSciNetGoogle Scholar
  10. 10.
    Gopal, A.S., Perry, K.J.: Unifying self-stabilization and fault-tolerance. In: IEEE Proceedings of the 12th annual ACM symposium on Principles of distributed computing, Ithaca, New York (1993)Google Scholar
  11. 11.
    Herman, T.: Phase clocks for transient fault repair. IEEE Transactions on Parallel and Distributed Systems 11(10), 1048–1057 (2000)CrossRefGoogle Scholar
  12. 12.
    Hoch, E.N., Dolev, D., Daliot, A.: Self-stabilizing byzantine digital clock synchronization. In: Datta, A.K., Gradinariu, M. (eds.) SSS 2006. LNCS, vol. 4280, Springer, Heidelberg (2006)CrossRefGoogle Scholar
  13. 13.
    Katz, S., Perry, K.J.: Self-stabilizing extensions for message-passing systems. Distributed Computing 7(1), 17–26 (1993)CrossRefGoogle Scholar
  14. 14.
    Nesterenko, M., Arora, A.: Dining philosophers that tolerate malicious crashes. In: 22nd Int. Conference on Distributed Computing Systems (2002)Google Scholar
  15. 15.
    Nesterenko, M., Arora, A.: Tolerance to unbounded byzantine faults. In: SRDS, p. 22 (2002)Google Scholar
  16. 16.
    Papatriantafilou, M., Tsigas, P.: On self-stabilizing wait-free clock synchronization. Parallel Processing Letters 7(3), 321–328 (1997)CrossRefMathSciNetGoogle Scholar
  17. 17.
    Sakurai, Y., Ooshita, F., Masuzawa, T.: A self-stabilizing link-coloring protocol resilient to byzantine faults in tree networks. In: Higashino, T. (ed.) OPODIS 2004. LNCS, vol. 3544, pp. 283–298. Springer, Heidelberg (2005)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Danny Dolev
    • 1
  • Ezra N. Hoch
    • 1
  1. 1.School of Engineering and Computer Science, The Hebrew University of JerusalemIsrael

Personalised recommendations