Presentation is loading. Please wait.

Presentation is loading. Please wait.

Self Stabilization Classical Results and Beyond… Elad Schiller CTI (Grece)

Similar presentations


Presentation on theme: "Self Stabilization Classical Results and Beyond… Elad Schiller CTI (Grece)"— Presentation transcript:

1 Self Stabilization Classical Results and Beyond… Elad Schiller CTI (Grece)

2 Self-Stabilization Shlomi Dolev MIT Press, 2000

3 Talk Outline Definitions of Computational Model Self-Stabilization Requirements Complexity Measures Example: Spanning-Tree Construction Example: Self-Stabilising Group Communication in Mobile Ad-Hoc Networks The mobile ad hoc settings and random walk Estimating the number of nodes Services implementation Conclutions

4 The Distributed System Model Denote : ¦ P i - the i th processor ¦ neighbor of P i ― a processor that can communicate with it PiPi PjPj Link P i P j = P i can communicate with P j Node i = Processor i A Distributed System is modeled by processors ― set of n state machines communicate with each other

5 Asynchronous Distributed Systems – Shared Memory ¦ Processors communicate l by the use of shared communication registers ¦ The configuration will be denoted by c = (s 1,s 2,…,s n,r 1,2,r 1,3,…r i,j,…r n,n-1 ) where s i = State of P i r i,j = Content of communication register i P1P1 P2P2 r 12

6 The distributed System – A Computation Step P1P1 P2P2 r 12 : m 1 P 1 writes P1P1 P2P2 r 12 : m 1 P 2 reads m1m1 P1P1 P2P2 m1m1 r 12 : x

7 The Interleaving model ¦ At each given time l only 1 processor executes a computation step ¦ Every state transition of a processor l is due to a communication-step execution ¦ A step will be denoted by a ¦ c 1 a  c 2 denotes the fact that l c 2 can be reached from c 1 by a single step a

8 ¦ Step a is applicable to configuration c l iff  c’ : c a  c’ ¦ An execution E = (c 1,a 1,c 2,a 2,…) l an alternating sequence such that c i-1 a  c i (i>1) ¦ A fair execution l every step that is applicable infinitely often is executed infinitely often The distributed System – more definitions

9 ¦ A desired legal behavior is a set of executions l denoted LE A self-stabilizing system can be started in any arbitrary configuration and will eventually exhibit a desired “legal” behavior Legal Behavior c 2 safe c 1 safe c k safe c cici c’ c ’’ cmcm clcl step c t safe c ’ safe c ’’ safe step legal execution

10 Time complexity ¦ Asynchronous round (round) in an execution E l 1 st round is the shortest prefix E’ of E such that each processor executes at least 1 step in E’, E=E’E’’. ¦ The number of rounds = time complexity

11 Time complexity (Cont.) ¦ A Self-Stabilizing algorithm is usually a do forever loop ¦ Asynchronous cycle (cycle) in an execution E ¦ 1 st cycle is the shortest prefix E’ of E l such that each processor executes at least 1 complete iteration of it’s do forever loop in E’, E=E’E’’. ¦ Note : each cycle spans O(  ) rounds l O(  ) is the number of steps required to execute 1 iteration where  is an upper bound on the number of neighbors of P i

12 Definitions of Computational Model Self-Stabilization Requirements Complexity Measures Example: Spanning-Tree Construction Example: Self-Stabilising Group Comm. in Mobile Ad-Hoc Net. The mobile ad hoc settings and random walk Estimating the number of nodes Services implementation Conclutions Talk Outline

13 Spanning-Tree Construction ¦ The root writes 0 to all it’s neighbors ¦ The rest – each processor l chooses the minimal distance of it’s neighbors, l adds 1 and updates it’s neighbors 0 1 3 2 1 1 2 2

14 Spanning-Tree, System and code ¦ The output tree is encoded by means of the registers 1 4 5 8 6 2 3 7 r 21 : parent = 1 dis = 1 r 58 : parent = 8 dis = 3 r 73 : parent = 2 dis = 3

15 Spanning-Tree Algorithm for P i Root: do forever for m := 1 to  do write r im :=  0,0  Other: do forever for m := 1 to  do write lr mi := read(r mi ) FirstFound := false dist := 1 + min  lr mi.dis  1  m    for m := 1 to  do if not FirstFound and lr mi.dis = dist -1 write r im :=  1,dist  FirstFound := true else write r im :=  0,dist   = # of processor’s neighbors i= the writing processor m= for whom the data is written lr ji (local register ji) the last value of r ji read by P i

16 Spanning-Tree Application RUN

17 Spanning-Tree, is Self-Stabilizing ¦ The legal task ST – l every configuration encodes a BFS tree of the communication graph ¦ Definitions : A floating distance is a value in r ij.dis smaller than the distance of P i from the root l The smallest floating distance in configuration c is the smallest value among the floating distance

18 Spanning-Tree, is Self-Stabilizing ¦ ( Lemma 1) For every k > 0 and for every configuration that follows  + 4k  rounds, it holds that: ¦ If there exists a floating distance, then l the value of the smallest floating distance is at least k l The value in the registers of every processor that is within distance k from the root is equal to its distance from the root

19 Spanning-Tree, is Self-Stabilizing ¦ Note l once a value in the register of every processor is equal to it’s distance from the root, l a processor Pi chooses its parent to be the parent in the first BFS tree. l this implies that : ¦ The algorithm presented is l Self-Stabilizing for ST

20 Talk Outline Definitions of Computational Model Self-Stabilization Requirements Complexity Measures Example: Spanning-Tree Construction Example: Self-Stabilising Group Communication in Mobile Ad-Hoc Networks The mobile ad hoc settings and random walk Estimating the number of nodes Services implementation Conclutions

21 Random walk for self-stabilising group communication in ad-hoc networks With: Shlomi Dolev BGU & Jennifer Welch TAMU IEEE Transactions on Mobile Computing, SRDS’02 and PODC’02

22 Mobile Ad Hoc Networks ¦ Wireless networking, mobile computing l No pre-existing infrastructure l Solely rely on wireless links l Computers re-location, connect, disconnect ¦ Unlikely not to have transmission faults ¦ Unlikely not to have transient faults l Violate the assumption made by the system designer

23 Coping with Chaos by Chaos ¦ Flooding? ¦ Distributed structure ( DAG in TORA )? ¦ Forcing nodes to move faster than others, according to a specific pattern? ¦ Random walk of a single agent !

24 ¦ We handle topology changes automatically ¦ Estimating the number of participating nodes ¦ User benefit l Don’t cope with lower level complications Contributions

25 Random Walk of an Agent ¦ Ensures that if an agent exists l it covers the system with high probability ¦ Time-outs are used l to guarantee the existence of at least one agent ¦ If several agents exist l random walk ensures collisions ¦ Self-stabilizes to work correctly

26 Fixed communication graph ¦ Frequency of changes w.r.t. l Communication radius l Speed of nodes / an agent l Cover time ¦ The meeting/cover time of a fixed graph O(n 3 )

27 Complete Random Change ¦ Graph can totally change between agent moves ¦ The choice of movement can be view as: l A choice of the current neighbors l Then a choice from the neighbors set ¦ Like a random walk on a complete graph ¦ Cover time for a complete graph is O(n lg n)

28 Estimating n (simplified ver.) ¦ Problem – the complexity is O( N 3 lg N ) l Replacement of N by n is wanted ! ¦ The agent list the nodes it visits l Order by most recently visited ¦ Remove nodes that are not visited l O(t 3 lg t) agent moves t is the order in the list ¦ Output the size of the list as n ID Mov 585 0 471 1 354 2 784 5 958 87 473 91 gap

29 Membership Service ¦ Establish a view l Whenever a node joins/leaves the group ¦ A node may voluntarily join/leave the system ¦ A node is removed from the members list l If not visited for a large number of agent moves

30 Multicast Service ¦ The agent carries message history ¦ Deliver messages by their sending order ¦ Add a best effort "victory" traversal l Safe delivery indication l View agreement

31 Conclusion ¦ Our new approach copes with l Uncertainty nature of ad-hoc networks ¦ Probabilistic group communication l Membership, and multicast l Requirements meet with high probability l Performance tuning by varying the probability


Download ppt "Self Stabilization Classical Results and Beyond… Elad Schiller CTI (Grece)"

Similar presentations


Ads by Google