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)

Abstract

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.

Keywords

Dine Nism Alse 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  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