ABSTRACT
We propose a general self-stabilizing scheme for solving any synchronization problem whose safety specification can be defined using a local property. We demonstrate the versatility of our scheme by showing that very memory-efficient solutions to many well-known problems (e.g., asynchronous phase clock, local mutual exclusion, local reader-writers, and local group mutual exclusion) can be derived using the proposed framework. We show that all these algorithms use a phase clock whose minimum size in terms of number of states per process is equal to CG + TG - 1, where CG is the length of the maximal cycle of the shortest maximum cycle basis if the graph contains cycles and 2 (otherwise) for tree networks, and TG is the length of the longest chordless cycle (i.e., hole) if the graph contains cycles and 2 for tree networks. In particular, for the asynchronous phase clock problem, our solution significantly improves all existing self-stabilizing solutions---all of them require quadratic space in terms of the number of states.As a by-product of our scheme, we present a silent bounded algorithm which can be used to transform any serial system into a distributed one. Thus, it answers an open question in [16], if there exists a bounded system transformation which is silent.
- A Arora and MG Gouda. Distributed reset. IEEE Transactions on Computers, 43:1026--1038, 1994. Google ScholarDigital Library
- B. Awerbuch. Complexity of network synchronization. Journal of the Association of the Computing Machinery, 32(4):804--823, 1985. Google ScholarDigital Library
- B Awerbuch, S Kutten, Y Mansour, B Patt-Shamir, and G Varghese. Time optimal self-stabilizing synchronization. In Proceedings of the 25th Annual ACM Symposium on Theory of Computing (STOC '93), pages 652--661, 1993. Google ScholarDigital Library
- J Beauquier, A.K. Datta, M Gradinariu, and F Magniette. Self-stabilizing local mutual exclusion and daemon refinement. In Proceedings of the 14th International Conference on Distributed Computing (DISC 2000), Springer-Verlag LNCS:1914, pages 223--237, 2000. Google ScholarDigital Library
- C Berge. Graphs and hypergraphs. Elsevier Science Publishers B.V. (North-Holland), 1989. Google ScholarDigital Library
- C Boulinier, S Cantarell, F Petit, and V Villain. A note on a self-stabilizing local mutual exclusion algorithm. Technical Report RR03-02, LaRIA, University of Picardie Jules Verne, 2003.Google Scholar
- C Boulinier, F Petit, and V Villain. About bounded self-stabilizing local mutual exclusion algorithms. Technical Report RR04-02, LaRIA, University of Picardie Jules Verne, 2004.Google Scholar
- S Cantarell. Group Mutual Exclusion and Self-Stabilization. PhD thesis, LRI, Université de Paris-Sud, Orsay, France, 2003.Google Scholar
- DM Chickering, D Geiger, and D Heckerman. On finding a cycle basis with a shortest maximal cycle. Information Processing Letters, 54:55--58, 1995. Google ScholarDigital Library
- A Cournier, AK Datta, F Petit, and V Villain. Snap-stabilizing PIF algorithm in arbitrary networks. In IEEE 22nd International Conference on Distributed Computing Systems (ICDCS 02), pages 199--206. IEEE Computer Society Press, 2002. Google ScholarDigital Library
- P.J. Courtois, F. Heymans, and D.L. Parnas. Concurrent control with readers and writers. Communications of the Association of the Computing Machinery, 14(10):667--668, 1971. Google ScholarDigital Library
- JM Couvreur, N Francez, and M Gouda. Asynchronous unison. In Proceedings of the 12th IEEE International Conference on Distributed Computing Systems (ICDCS'92), pages 486--493, 1992.Google ScholarCross Ref
- EW Dijkstra. Self stabilizing systems in spite of distributed control. Communications of the Association of the Computing Machinery, 17:643--644, 1974. Google ScholarDigital Library
- S Dolev. Self-Stabilization. The MIT Press, 2000. Google ScholarDigital Library
- S. Dolev, MG Gouda, and M Schneider. Memory requirements for silent stabilization. In PODC96 Proceedings of the 15th Annual ACM Symposium on Principles of Distributed Computing, pages 27--34, 1996. Google ScholarDigital Library
- M Gouda and F Haddix. The alternator. In Proceedings of the Fourth Workshop on Self-Stabilizing Systems, pages 48--53. IEEE Computer Society Press, 1999. Google ScholarDigital Library
- Y.-J. Joung. Asynchronous group mutual exclusion (extended abstract). In ACM Press, editor, Proceedings of the 17th Annual ACM Symposium on Principles of Distributed Computing (PODC 98), pages 51--60, 1998. Google ScholarDigital Library
- H Kakugawa and M Yamashita. Self-stabilizing local mutual exclusion on networks in which process identifiers are not distinct. In Proceedings of the 21st Symposium on Reliable Distributed Systems (SRDS2002), pages 202--211, 2002. Google ScholarDigital Library
- M Nesterenko and A Arora. Stabilization-preserving atomicity refinement. Journal of Parallel and Distributed Computing, 62(5):766--791, 2002. Google ScholarDigital Library
- G Varghese. Self-stabilization by local checking and correction (Ph.D. thesis). Technical Report MIT/LCS/TR-583, MIT, 1993. Google ScholarDigital Library
Index Terms
- When graph theory helps self-stabilization
Recommendations
A Thin Self-Stabilizing Asynchronous Unison Algorithm with Applications to Fault Tolerant Biological Networks
PODC'21: Proceedings of the 2021 ACM Symposium on Principles of Distributed ComputingIntroduced by Emek and Wattenhofer (PODC 2013), the stone age (SA) model provides an abstraction for network algorithms distributed over randomized finite state machines. This model, designed to resemble the dynamics of biological processes in cellular ...
Self-stabilization
In 1973 Dijkstra introduced to computer science the notion of self-stabilization in the context of distributed systems. He defined a system as self-stabilizing when “regardless of its initial state, it is guaranteed to arrive at a legitimate state in a ...
Timer-based composition of fault-containing self-stabilizing protocols
One of the desired properties of distributed systems is self-adaptability against faults. Self-stabilizing protocols provide autonomous recovery from any finite number of transient faults. However, in practice, catastrophic faults rarely occur, while ...
Comments