Bounds for self-stabilization in unidirectional networks

A distributed algorithm is self-stabilizing if after faults and attacks hit the system and place it in some arbitrary global state, the systems recovers from this catastrophic situation without external intervention in finite time. Unidirectional networks preclude many common techniques in self-stabilization from being used, such as preserving local predicates. In this paper, we investigate the intrinsic complexity of achieving self-stabilization in unidirectional networks, and focus on the classical vertex coloring problem. When deterministic solutions are considered, we prove a lower bound of $n$ states per process (where $n$ is the network size) and a recovery time of at least $n(n-1)/2$ actions in total. We present a deterministic algorithm with matching upper bounds that performs in arbitrary graphs. When probabilistic solutions are considered, we observe that at least $\Delta + 1$ states per process and a recovery time of $\Omega(n)$ actions in total are required (where $\Delta$ denotes the maximal degree of the underlying simple undirected graph). We present a probabilistically self-stabilizing algorithm that uses $\mathtt{k}$ states per process, where $\mathtt{k}$ is a parameter of the algorithm. When $\mathtt{k}=\Delta+1$, the algorithm recovers in expected $O(\Delta n)$ actions. When $\mathtt{k}$ may grow arbitrarily, the algorithm recovers in expected $O(n)$ actions in total. Thus, our algorithm can be made optimal with respect to space or time complexity.

[1]  Amos Israeli,et al.  Resource Bounds for Self-Stabilizing Message-Driven Protocols , 1997, SIAM J. Comput..

[2]  Mohamed G. Gouda,et al.  Stabilization of Routing in Directed Networks , 2001, WSS.

[3]  Shlomi Dolev,et al.  Memory requirements for silent stabilization , 1999, Acta Informatica.

[4]  Ajoy Kumar Datta,et al.  Self-Stabilizing Algorithms in DAG Structured Networks , 1999, Parallel Process. Lett..

[5]  Sébastien Tixeuil,et al.  Transient fault detectors , 1998, Distributed Computing.

[6]  Sébastien Tixeuil,et al.  Self-Stabilization with r-Operators revisited , 2005, J. Aerosp. Comput. Inf. Commun..

[7]  Anish Arora,et al.  Tolerance to unbounded Byzantine faults , 2002, 21st IEEE Symposium on Reliable Distributed Systems, 2002. Proceedings..

[8]  Maria Gradinariu Potop-Butucaru,et al.  Randomized self-stabilizing and space optimal leader election under arbitrary scheduler on rings , 2007, Distributed Computing.

[9]  Sébastien Tixeuil,et al.  Self-stabilizing Vertex Coloring of Arbitrary Graphs , 2000 .

[10]  Sébastien Tixeuil,et al.  On Fast Randomized Colorings in Sensor Networks , 2005 .

[11]  T. Masuzawa,et al.  Stabilizing Link-Coloration of Arbitrary Networks with Unbounded Byzantine Faults , 2007 .

[12]  Shlomi Dolev,et al.  Self Stabilization , 2004, J. Aerosp. Comput. Inf. Commun..

[13]  Sébastien Tixeuil,et al.  Self-Stabilizing Systems , 2003, Lecture Notes in Computer Science.

[14]  Sébastien Tixeuil,et al.  Optimal Randomized Self-stabilizing Mutual Exclusion on Synchronous Rings , 2004, DISC.

[15]  Sébastien Tixeuil,et al.  Self-stabilization with path algebra , 2003, Theor. Comput. Sci..

[16]  Sébastien Tixeuil On a Space-Optimal Distributed Traversal Algorithm , 2001, WSS.

[17]  Ajoy Kumar Datta,et al.  Self-stabilizing systems : 5th International Workshop, WSS 2001, Lisbon, Portugal, October 1-2, 2001 : proceedings , 2001 .

[18]  Sébastien Tixeuil,et al.  Self-stabilization with r-operators , 2001, Distributed Computing.

[19]  Shlomi Dolev,et al.  Self-stabilizing group communication in directed networks , 2003, Acta Informatica.

[20]  Yehuda Afek,et al.  Self-stabilizing unidirectional network algorithms by power-supply , 1997, SODA '97.

[21]  Yehuda Afek,et al.  Local Stabilizer , 2002, J. Parallel Distributed Comput..

[22]  Edsger W. Dijkstra,et al.  Self-stabilizing systems in spite of distributed control , 1974, CACM.

[23]  Amos Israeli,et al.  Resource bounds for self stabilizing message driven protocols , 1991, PODC '91.