Download presentation
Presentation is loading. Please wait.
Published byLeon Parks Modified over 9 years ago
1
Self-Stabilizing K-out-of-L Exclusion on Tree Networks Stéphane Devismes, VERIMAG Joint work with: – Ajoy K. Datta (Univ. Of Nevada) – Florian Horn (LIAFA) – Lawrence L. Larmore (Univ. Of Nevada)
2
May 18th 2009SHAMAN Meeting2 Roadmap Recall on Self-stabilization Definition of the problem The solution Conclusion and perspectives
3
May 18th 2009SHAMAN Meeting3 Roadmap Recall on Self-stabilization Definition of the problem The solution Conclusion and perspectives
4
May 18th 2009SHAMAN Meeting4 Self-Stabilization: Closure + Convergence States of the System Illegitimate States Legitimate States Convergence Closure
5
May 18th 2009SHAMAN Meeting5 Property: Tolerance to Transient Faults
6
May 18th 2009SHAMAN Meeting6 Roadmap Recall on Self-stabilization Definition of the problem The solution Conclusion and Perspectives
7
May 18th 2009SHAMAN Meeting7 K-out-of-L Exclusion [Raynal, 91] L resource units Requests from 1 to K resource units (K≤L)
8
May 18th 2009SHAMAN Meeting8 K-out-of-L Exclusion 3 property to ensure: –Safety –Fairness –Efficiency
9
May 18th 2009SHAMAN Meeting9 Safety At any time: –Each resource unit is used by at most one process –Each process uses at most K resource units –At most L resource units are available
10
May 18th 2009SHAMAN Meeting10 Fairness Each request (of at most K units) is satisfied in finite time (i.e. the process then uses the resource units it holds in a special section of code called critical section)
11
May 18th 2009SHAMAN Meeting11 Efficiency « As many requests as possible must be satisfied simultaneously » More formally: (K,L)-Liveness
12
May 18th 2009SHAMAN Meeting12 (K,L)-Liveness 3? 2? 1?
13
May 18th 2009SHAMAN Meeting13 Waiting Time « The maximum number of time, all other processes can enter in the critical section before some process p, starting from the moment requests the critical section »
14
May 18th 2009SHAMAN Meeting14 Roadmap Recall on Self-stabilization Definition of the problem The solution Conclusion and perspectives
15
May 18th 2009SHAMAN Meeting15 Model Message-passing Bounded process memories FIFO bidirectional links Topology : oriented tree Necessary condition [Gouda-Multari, 91]: –Bounded link capacity (CMAX)
16
May 18th 2009SHAMAN Meeting16 Approach Token-based (resource units = tokens) Modular: –Non Self-stabilizing K-out-of-L Exclusion –Self-stabilizing Controller
17
May 18th 2009SHAMAN Meeting17 DFS circulation
18
May 18th 2009SHAMAN Meeting18 First idea: K-out-of-L Exclusion = L-circulation 0 21 3? {0}{0,2}{0,2,2}
19
May 18th 2009SHAMAN Meeting19 Deadlocks r 3?2? 0 0 2 0 0 0 0 0 01 1 123 {1} {0} {0,0}
20
May 18th 2009SHAMAN Meeting20 Solution Circulation of a special token : the pusher Upon receiving the pusher: a node releases all its resource tokens if its request is not satisfied
21
May 18th 2009SHAMAN Meeting21 Livelock 0 00 1 1? 2? {0}
22
May 18th 2009SHAMAN Meeting22 Solution Circulation of a Priority Token: –A requesting process keeps the Priority Token while its request is unsatisfied –The Priority Token cancels the effect of the Pusher Token
23
May 18th 2009SHAMAN Meeting23 Self-Stabilization: The Controller After transient faults: –Some tokens may have disappeared –Some tokens may been duplicated Solution: a Controller Token counts and regulates the number of tokens
24
May 18th 2009SHAMAN Meeting24 Example: Count the Resource Tokens
25
May 18th 2009SHAMAN Meeting25 Example: Count the Resource Tokens 0 {0,1} 1 1 1 2 2 2 2
26
May 18th 2009SHAMAN Meeting26 Example: Count the Resource Tokens At the end of the traversal: –The number of token is known Too much tokens : RESET Lake of tokens : Creation at the root
27
May 18th 2009SHAMAN Meeting27 How to stabilize the Controller ? Implemented as a Self-Stabilizing DFTC using the Varghese Counter Flushing
28
May 18th 2009SHAMAN Meeting28 Self-Stabilizing DFTC 0 0 r 1 1 0 0 0 1 0 0 0 0 1 0 1 Stabilize using (n-1)(2CMAX+1)+1 values TokenHolder: Receive MesVal from a child and MyVal = MesVal Receive MesVal from Parent and MyVal ≠ MesVal
29
May 18th 2009SHAMAN Meeting29 Roadmap Recall on Self-stabilization Definition of the problem The solution Conclusion and perspectives
30
May 18th 2009SHAMAN Meeting30 Conclusion Waiting Time: L*(2n-3) 2 Oriented Tree -> Arbitrary Rooted Network (Huang-Chen BFS Tree) Bounded/Unbounded Link Capacity (Katz & Perry)
31
May 18th 2009SHAMAN Meeting31 Perspectives Compute the convergence time Enhance the waiting time ? Reactive solution ? Fault-Containment ?
32
May 18th 2009SHAMAN Meeting32 Thank you!
33
May 18th 2009SHAMAN Meeting33 (K,L)-Liveness Let V be the set of processes Let I be a subset of processes that execute their critical section forever (in particular they hold some resource units forever) Let be the number of resource units held by I Let R be the subset of V - I such that any process in R is a requestor Let r max by the maximal request of a process in R If R ≠Ø and r max ≤ L - then at least one member of R eventually satisfies its request
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.