• 沒有找到結果。

4.4 Multi-self-stabilization

In [17], Dolev and Herman introduced superstabilizing algorithms for dynamic distributed system. An algorithm is superstabilizing if it is (i) self-stabilizing, meaning that it is guar-anteed to respond to any transient fault and eventually reach a legitimate configuration, and (ii) it is guaranteed to satisfy a passage predicate all the times when the system under-goes topology changes starting from a legitimate configuration. The passage configuration is a safety property that should hold while the algorithm makes progress towards the re-establishing legitimacy following a topology change. The illegitimate configurations are partitioned into two layers, depending on whether or not they satisfy a passage predicate.

The concept of fault containment of self-stabilizing algorithms was introduced by Ghosh et al. [25]. They gave a transformer which uses newly added local repair actions to modify the original self-stabilizing algorithm in order to improve the stabilization time when the system is subject to only one transient fault. It has been shown that the stabilization time of a fault-containing MIS self-stabilizing can be reduced to O(∆) moves [55]. For other variations of self-stabilization and transformers, see [7, 19, 20, 52, 62] for references.

Similarly to superstabilizing, Kakugawa and Masuzawa formulated a concept of safe convergence in the frame work of self-stabilization in [49]. A safely converging self-stabilizing system defines two layers of legitimate configurations. One is a set of configurations in which the property or service is feasible, i.e., minimum quality of service is guaranteed. The other is a set of configurations in which the property or service is optimal. The safe convergence property guarantees that, from any initial configuration, a system quickly converges to a feasible configuration, and then, it continuingly moves to an optimal configuration without leaving the feasible configurations.

Kakugawa et al. took the MDS problem as an example. They considered the minimal dominating set problem and gave an algorithm called Kakugawa with safe convergence in

CHAPTER 4. THE STABLENESS OF MDS ALGORITHMS 4.4. MULTI-SELF-STABILIZATION

which any dominating set is defined to be feasible; see Algorithm 6. In addition, Algorithm Kakugawa computes the lexicographically first minimal independent domination set which is defined to be optimal. Since there exists only one lexicographically first minimal independent domination set (MIDS) for a given graph, Algorithm Kakugawa is single-point-stable. The transition diagram of the algorithm Kakugawa is shown below; see Figure 4.2.

Algorithm 6 Kakugawa variables

Boolean di ∈ {0, 1}; // i is a dominator iff di= 1

pointer mi ∈ N[i]; // a dominator that node i depends on

macros

LocalM ax(i) ≡ ∀j ∈ N(i) : j < i; // true iff node i is the maximum among its neighbors

ExIndDomN br(i)≡ ∃j ∈ N(i) : (dj = 1)∧ (mj = j);

// true iff there exists an independent dominator neighbor

M axIndDomN br(i)≡ max{j ∈ N(i) : (dj = 1)∧ (mj = j)};

// the max independent dominator in neighbors; NIL if none exists

N oDepend(i)≡ ∀j ∈ N(i) : mj ̸= i; // true iff no neighbor depends on i

rules

1: if LocalM ax(i)∧ ((di ̸= 1) ∨ (mi ̸= i))

then di := 1; mi := i; // If i is the locally max, it becomes an independent dominator.

2: if ¬LocalMax(i) ∧ ¬ExIndDomNbr(i) ∧ ((di ̸= 1) ∨ (mi ̸= i))

then di := 1; mi := i; // If there is no independent dominator neighbor, i becomes an independent dominator.

3: if¬LocalMax(i)∧ExIndDomNbr(i)∧(MaxIndDomNbr(i) < i)∧((di ̸= 1)∨(mi ̸= i)) then di := 1; mi := i;// If i is the max among independent dominator neighbors, it becomes an independent dominator.

4: if ¬LocalMax(i) ∧ ExIndDomNbr(i) ∧ (MaxIndDomNbr(i) > i)

∧((MaxIndDomNbr ̸= mi)∨ (di ̸= 1))

then di := 1; mi := M axIndDomN br(i); // If i is not the max among independent dominator neighbors, // it becomes a dominator (for safety) and depends on the max independent dominator neighbor.

5: if ¬LocalMax(i) ∧ ExIndDomNbr(i) ∧ (MaxIndDomNbr(i) > i)

∧(MaxIndDomNbr = mi)∧ (di ̸= 0) ∧ NoDepend(i)

then di := 0; // i turns to be a dominatee only when (1) i is not the max independent dominator among neighbors, // (2) i depends on the max independent dominator neighbor, and (3) (for safety) no neighbor depends on i.

Under the synchronous daemon, Algorithm 6 converges to a domination set in one step, and further converges to the lexicographically first MIDS in at most 4D = O(D) steps,

CHAPTER 4. THE STABLENESS OF MDS ALGORITHMS 4.4. MULTI-SELF-STABILIZATION

where D denotes the diameter of the input graph. The authors conjectured their algorithm still works under the distributed daemon. It can be proved that their conjecture appears correct, since in each step the configuration moves toward the optimal one (which is the lexicographically first MIDS). Unfortunately, the number of moves can be exponential in n. If the input graph is a path of n nodes in the increasing order, and initially all di in Algorithm 6 are set to 0. A bad example of execution is given by letting the distributed daemon always choose the privileged node with the lowest ID first, one at each time. Then it takes Ω(2n) moves to reach the optimal configuration.

Γ DS

MDS

Figure 4.2: The transition diagram of the algorithm Kakugawa. A dominating set (DS) is feasible and a minimal dominating set (MDS) is optimal. The algorithm converges to a single point, which is the lexicographically first minimal independent domination set.

The concept of safe stabilization can be generalized as follows. Suppose there are a finite number of layers of legitimate configurations which we want the higher layer the better.

Let Λ0 = Γ and Λk be the k-th layer of legitimate configuration, and moreover, Λi ⊂ Λi−1

for all i = 1 to k. We say a distributed algorithm is multi-self-stabilizing with respect to 1, Λ2, . . . , Λk} if the following two properties hold for all i = 1 to k:

Convergence Starting from an arbitrary configuration in Λi−1, the distributed system

CHAPTER 4. THE STABLENESS OF MDS ALGORITHMS 4.4. MULTI-SELF-STABILIZATION

reaches a configuration in Λi in a finite time.

Closure For any configuration in Λi, any configuration that follows is also in Λi.

Algorithm Kakugawa is an example of a multi-self-stabilizing algorithm with respect to three layers of legitimate configurations; see Figure 4.3. The first layer of legitimacy is domination, which makes the service feasible. The second layer of legitimacy is minimality, which provides a better quality of service. And the third layer of legitimacy is independence, which further reduces the number of dominators. Note that the Λ0 is defined to be the set of all configurations. This makes the definition of multi-self-stabilizing and the original definition of self-stabilizing coincide and we can omit the prefix multi without confusion or ambiguity. Hence we merely say that Algorithm Kakugawa is self-stabilizing with respect to {DS, MDS, MIDS}.

Λ0 Λ1

Λ2 Λ3

Figure 4.3: The transition diagram of a multi-self-stabilizing system with respect to three layers of legitimacy.

CHAPTER 4. THE STABLENESS OF MDS ALGORITHMS 4.4. MULTI-SELF-STABILIZATION

Table4.3:Self-stabilizingindependentsetalgorithms. ReferenceOutputStablenessRequired topologyAnonymousUniformDaemonModelComplexity Shuklaetal.[67]MISS4ArbitraryYesYesCentralNormal2nmoves Ikedaetal.[45]MISS4ArbitraryNoYesDistributedNormal(n+2)(n+1) 4moves Hedetniemietal.[36]MISS4ArbitraryYesYesCentralNormal2nmoves Goddardetal.[32,30]MISS4ArbitraryNoYesSynchronousNormal≤nrounds Gairingetal.[21]M2PS4ArbitraryYesYesCentralDist-2O(n)moves Shietal.[66]1-MISS2TreeYesYesCentralNormal≤n2 moves Turau[75]MISS3ArbitraryNoYesDistributedNormal3nmoves Goddardetal.[30]MISS4ArbitraryNoYesSynchronousNormal≤nrounds

CHAPTER 4. THE STABLENESS OF MDS ALGORITHMS 4.4. MULTI-SELF-STABILIZATION

Table4.4:Self-stabilizingdominatingsetalgorithms. ReferenceOutputStablenessRequired topologyAnonymousUniformDaemonModelComplexity Hedetniemietal.[36]-1DSS1ArbitraryYesYesCentralNormal≤n−1moves Hedetniemietal.[36]-2MDSS2ArbitraryYesYesCentralNormal(2n+1)nmoves Xuetal.[83]MDSS2ArbitraryNoYesSynchronousNormal4nrounds Goddardetal.[28,29]MTDSS2ArbitraryNoYesCentralNormal2n moves Turau[75]MDSS2ArbitraryNoYesDistributedNormal9nmoves Goddardetal.[30]MDSS2ArbitraryNoYesDistributedNormal5nmoves Kameietal.[50]-1MkDSS1TreeYesYesCentralNormal≤n2 moves Kameietal.[50]-2MkDSS1TreeNoYesDistributedNormal3(n−1)2moves Huangetal.[43]M2DSS1ArbitraryYesYesCentralNormal10n+1moves Kameietal.[51]MkDSS1ArbitraryNoYesSynchronousNormal≤nrounds Huangetal.[44]M2DSS1ArbitraryNoYesDistributedNormal Gairingetal.[21]MDSS4ArbitraryYesYesCentralDist-22nmoves Turauetal.[76]MkDSS4ArbitraryYesYesCentralDist-22nmoves Belhouletal.[4]MTDSS4ArbitraryYesYesCentralDist-22nmoves Sec.3.2inthisthesisMDSS2ArbitraryNoYesDistributedNormal4n−2moves Sec.5.3inthisthesisMDSS4ArbitraryNoYesDistributedDist-22n−1moves

Chapter 5

The distance-2 model and

self-stabilizing MDS-silent algorithms

The purpose of this chapter is to develop a self-stabilizing MDS-silent algorithm. Let k be a positive integer. In the previous chapter, we have defined the distance-k model. Recall that the normal model is the distance-1 model. For convenience, we use the extended model to refer to the distance-2 model. In the extended model, a node can instantaneously access the information of all nodes within distance two from it. Clearly, if a distributed system is in the distance-(k + 1) model, then it is in the distance-k model. See also [21].

A distributed system in the normal model can be implemented on an ad hoc network by using the beacon messages and the neighbor list messages of a node to inform neighbors of its continued presence and the change of the local state [30]. In this chapter we give a generalization to implement the distance-2 model by enlarging the beacon messages to contain the local states of nodes in one’s neighborhood.

This chapter is organized as follows. Section 5.1 briefly reviews previous results in the distance-2 model. Section 5.2 generalizes the neighbor list messages in an ad hoc network to implements a distance-2 model by enlarging the beacon messages to contain the local states

相關文件