TY - JOUR
T1 - Empire of colonies
T2 - Self-stabilizing and self-organizing distributed algorithm
AU - Dolev, Shlomi
AU - Tzachar, Nir
N1 - Funding Information:
Many thanks to Noga Alon for helpful discussions. The first author was partially supported by IBM, Israeli ministry of science, Deutsche Telekom, Rita Altura Trust Chair in Computer Sciences. The second author was partially supported by Deutsche Telekom, Israeli Grid Consortium and the Lynne and William Frankel Center for Computer Sciences.
PY - 2009/2/28
Y1 - 2009/2/28
N2 - Self-stabilization ensures automatic recovery from an arbitrary state; we define self-organization as a property of algorithms which display local attributes. More precisely, we say that an algorithm is self-organizing if (1) it converges in sublinear time and (2) reacts "fast" to topology changes. If s (n) is an upper bound on the convergence time and d (n) is an upper bound on the convergence time following a topology change, then s (n) ∈ o (n) and d (n) ∈ o (s (n)). The self-organization property can then be used for gaining, in sub-linear time, global properties and reaction to changes. We present self-stabilizing and self-organizing algorithms for many distributed algorithms, including distributed snapshot and leader election. We present a new randomized self-stabilizing distributed algorithm for cluster definition in communication graphs of bounded degree processors. These graphs reflect sensor networks deployment. The algorithm converges in O (log n) expected number of rounds, handles dynamic changes locally and is, therefore, self-organizing. Applying the clustering algorithm to specific classes of communication graphs, in O (log n) levels, using an overlay network abstraction, results in a self-stabilizing and self-organizing distributed algorithm for hierarchy definition. Given the obtained hierarchy definition, we present an algorithm for hierarchical distributed snapshots. The algorithms are based on a new basic snap-stabilizing snapshot algorithm, designed for message passing systems in which a distributed spanning tree is defined and in which processors communicate using bounded links capacity. The algorithm is on-demand self-stabilizing when no such distributed spanning tree is defined. Namely, it stabilizes regardless of the number of snapshot invocations. The combination of the self-stabilizing and self-organizing distributed hierarchy construction and the snapshot algorithm forms an efficient self-stabilizer transformer. Given a distributed algorithm for a specific task, we are able to convert the algorithm into a self-stabilizing algorithm for the same task with an expected convergence time of O (log2 n) rounds.
AB - Self-stabilization ensures automatic recovery from an arbitrary state; we define self-organization as a property of algorithms which display local attributes. More precisely, we say that an algorithm is self-organizing if (1) it converges in sublinear time and (2) reacts "fast" to topology changes. If s (n) is an upper bound on the convergence time and d (n) is an upper bound on the convergence time following a topology change, then s (n) ∈ o (n) and d (n) ∈ o (s (n)). The self-organization property can then be used for gaining, in sub-linear time, global properties and reaction to changes. We present self-stabilizing and self-organizing algorithms for many distributed algorithms, including distributed snapshot and leader election. We present a new randomized self-stabilizing distributed algorithm for cluster definition in communication graphs of bounded degree processors. These graphs reflect sensor networks deployment. The algorithm converges in O (log n) expected number of rounds, handles dynamic changes locally and is, therefore, self-organizing. Applying the clustering algorithm to specific classes of communication graphs, in O (log n) levels, using an overlay network abstraction, results in a self-stabilizing and self-organizing distributed algorithm for hierarchy definition. Given the obtained hierarchy definition, we present an algorithm for hierarchical distributed snapshots. The algorithms are based on a new basic snap-stabilizing snapshot algorithm, designed for message passing systems in which a distributed spanning tree is defined and in which processors communicate using bounded links capacity. The algorithm is on-demand self-stabilizing when no such distributed spanning tree is defined. Namely, it stabilizes regardless of the number of snapshot invocations. The combination of the self-stabilizing and self-organizing distributed hierarchy construction and the snapshot algorithm forms an efficient self-stabilizer transformer. Given a distributed algorithm for a specific task, we are able to convert the algorithm into a self-stabilizing algorithm for the same task with an expected convergence time of O (log2 n) rounds.
KW - Clustering
KW - Communication and routing
KW - Self-organizing
KW - Self-stabilizing
UR - http://www.scopus.com/inward/record.url?scp=58549100289&partnerID=8YFLogxK
U2 - 10.1016/j.tcs.2008.10.006
DO - 10.1016/j.tcs.2008.10.006
M3 - Article
AN - SCOPUS:58549100289
SN - 0304-3975
VL - 410
SP - 514
EP - 532
JO - Theoretical Computer Science
JF - Theoretical Computer Science
IS - 6-7
ER -