8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
1/20
Presented by - Abiola Famurewa & Samuel Idowu {[email protected]}
Lelia Blin, Shlomi Dolev, Maria Gradinariu, Potop-Butucaru and
Stephane Rovedakis
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
2/20
This paper is based on the extension ofGHS algorithm in self-
stabilizing setting
there already exists self-stabilizing solutions for the MSTconstruction, but none of them considered the extension of
Gallager, Humblet and Spira algorithm (GHS) to self-
Stabilizing settings.
Advantages Of Extending GHS Algorithm
It unifies the best properties of designing large scale MSTs
it is fast and totally decentralized
it does not rely on any global parameter of the system
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
3/20
Gupta and Srimani presented in a journal titled Self-stabilizingmulticast protocols for ad hoc networks the first stabilizing
algorithm for MST problem.
Executing the algorithm requires that every node should store the
cost of all paths from it to all the other nodes.
Assumptions:
Every node knows the number n of nodes in the network
Every node u stores the weight of the edge eu,vplaced in the
MST for every node v u
Algorithm requires (vu log (eu,v)) bits of memory at node u
Memory requirement at each node is (n log n) bits
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
4/20
Drawback
Lack of scalability Not scalable since each node has to know
and maintain information for all the nodes in the system
Time Complexity
The time complexity in synchronous setting is , O(n) round as
announced by the authors
In asynchronous setting the complexity is (n2) rounds
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
5/20
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
6/20
Drawback:
Its computation is expensive in large scale systems and even
harder in dynamic settings.
Time Complexity:
Time complexity of this approach is O(mD) rounds.
where m and D are the number of edges and the diameter of the
network respectively.
O(n3) rounds in the worst case.
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
7/20
The main challenge addresses in this paper is to design fast and
scalable self-stabilizing MSTwith little memory.
The paper extends the GHS algorithm to self-stabilizing settings
and keep compact its memory space by using a self-stabilizing
extension of the nearest common ancestor labeling scheme.
Assumption:
The proposed algorithm does not make any assumption on the
network size
No assumption on the existence of an priori known root.
Complexity:
The convergence time is O(n2) asynchronous rounds
Memory space complexity per node is O(log2
n) bits.
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
8/20
Connected network G = (V,E,)
y : E R + is a positive cost function
y Nodesprocessors and edges bidirectional
communication links
y G = (V,E, ) is a network in which the weight of the
communication links may change value.
Processors asynchronously execute their programs consisting of
a set ofvariables and a nite set of rules
Each guarded rule contains a Guard (Boolean) and anAction(node variable update)
A local state of a node is the value of the local variables of the
node and the state of its program counter
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
9/20
A conguration of the system G = (V,E) is the cross product of
the local states of all nodes in the system.
Execution of an action at a node leads to transition from a
configuration to the next one
Computation of the system:
y Weakly fair: if any action in G is continuously enabled along the
sequence, it is eventually chosen for execution
y maximal sequence of configurations: sequence is either innite,
or it is nite and no action of G is enabled in the nal global state.
* The system can start in any configuration. In a worst case, all
the nodes may start in a corrupted configuration, but these faults
can be tackled by using self-stabilization techniques.
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
10/20
paper propose to extend the Gallager, Humblet and Spira (GHS)
algorithm to self-stabilizing setting via a compact informative
labeling scheme.
Advantages of result:
y Appealing for large scale systemsy compact since it uses only logarithmic memory in the size of the network
y Scales well since it does not rely on any global parameter of the system
y It is fast its time complexity is the better known in self-stabilizing settings
y Additionally, it self-recovers from any transient fault.
FRAGMENT is the central notion in the GHS approach. It is a
partial spanning tree of the graph, i.e., a fragment is a tree
which spans a subset of nodes.
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
11/20
The GHS minimum spanning tree construction
y Initially each node is a fragment.
y fragment F, the GHS algorithm identies the MEF and merges the
two fragments endpoints of MEF
MEF - The minimum-weight outgoing edge of a fragment F
y
more than two fragments may be merged concurrently
y The merging process is recursively repeated until a single fragment
remains
y The result is a MST { blue rule for MST construction }
**The direct application of the blue rule allows the system to
reconstruct a MST and to recover from faults whichhave divided
the existing MST
With more severe faults, the application of blue-rule only is not
sufficient to reconstruct a MST
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
12/20
A combination ofblue-rule with another method, referred to as red-
rule. The red-rule removes the heaviest edge from every cycle
The resulting configuration contains a MST.
THE RED RULE
y Given a spanning tree TofG, edge e ofG T, e is added to T, thus
creating a (unique) cycle
y This cycle is called a fundamental cycle, denoted by Ce
y If e is not the edge of maximum weight in Ce
y The edge of maximum weight can be removed since it is not part of any
MST.
Proposed algorithm uses both blue-rule and red-rule
It uses the blue-rule to construct a spanning tree the red rule to
recover from invalid congurations.
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
13/20
Both red & blue rules use self-stabilizing labeling scheme algorithm
called NCA-L to identify both
fragments and fundamental cycles.
NCA-L : Nearest Common AncestorLabeling
For any node v V(G), we denote by N(v) the set of all neighbors ofvin
G.
Pv: the parent ofvin the current spanning tree
Lv : the label of v composed of a list of pairs of integers where each pair is
an identier and a distance
sizev : a pair of variables, the 1st one is an integer the number of nodes in
the sub-tree rooted at v and the 2nd is the identier of the child u of v with
the maximum number of nodes in the sub-tree rooted at u.
mwev : the minimum weighted edge composed by a pair of variables
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
14/20
heavy edge - is an edge between a node u and one of its children v of
maximum number of nodes in its sub-tree
light edges - The other edges between u and its other children
y heavy node: if the edge between v and its parent is a heavy edge,
otherwise v is called light node.
The idea of the scheme is as follows:
T is recursively divided into disjoint paths: heavy and light paths
each node v maintains a variable named sizev which is a pair of integers
based on the value of variable sizev at each node v T, each node ofT
can compute its label.
The label of a node v stored in lv is a list of pair of integers
Each pair of the list contains the identier of a node and a distance to the
root of the heavy path (i.e. path including only heavy edges)
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
15/20
NCA-L algorithm is used to find the minimum weighted edges
it is also used to detect and destroy cycles since the initial configuration
may not be a spanning tree.
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
16/20
NCA-L algorithm is composed of two rules
y Rule R creates a root or breaks cycles [Root creation]
y Rule Rl - produce a proper labeling [label correction]
A node vwith an incoherent parent or present in a cycle executes
R. Following the execution of this rule node vbecomes a root
node
Rule Rl helps a node vto compute the number of nodes in its
sub-tree (stored in variable sizev ) and provides to va coherent
label.
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
17/20
The algorithm executes two phases:
y The MST correctiony The MST fragments merging
**Assumptions: merging operations have a higher priority than the
recovering operations. i.e the system recovers from an invalidconfiguration if and only if no merging operations is possible.
The minimum weighted edge and MSTcorrection:
For two nodes u and v with e = (u,v), a non tree edge, if the nearestcommon ancestor does not exist then u and v are in two distinct
fragments. Otherwise u and v are in the same fragment F and the
addition of e to F generates a cycle
.
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
18/20
The minimum weighted edge and MSTcorrection:
Two rules used:
y Rule Rmin [Minimum computation]
y Rule R [MSTCorrection ]
Rule Rmin computes from the leaves to the root the minimum
outgoing edge e = (u,v)
**In general: Rule Rmin computes the outgoing-edges and the
fundamental cycles, while Rule R is used to recover from a false
tree.
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
19/20
FRAGMENTS MERGING
In this phase, 2 rules are executed:
y Rule R [merging]
y Rule R [End merging]
Wh
en a root r of Fu (fragment)h
as stabilized its variable mwe i.e.the weight of the edge and a common ancestor
** The information about e are stored in the variable mwe
it starts a merging phase (Rule R ), here the nodes in the path
between r and u are reoriented from r to u
The merging process is repeated until a single fragment is obtained
Rule R is executed
8/6/2019 Fast Self-stabilizing Minimum Spanning Tree Construction
20/20
The extension of GHS algorithm gave a result with
advantages appealing to large scale systems. Time
complexity is O(n2) rounds and space complexity is
o(log2n).
Top Related