1 / 62

Self-Stabilizing Algorithm with S afe C onvergence building an ( f , g )-Alliance

Self-Stabilizing Algorithm with S afe C onvergence building an ( f , g )-Alliance. Fabienne Carrier Ajoy K. Datta Stéphane Devismes Lawrence L. Larmore Yvan Rivierre. Co- Autors. Ajoy K. Datta & Lawrence L. Larmore. Fabienne Carrier & Yvan Rivierre. Roadmap.

kamal
Download Presentation

Self-Stabilizing Algorithm with S afe C onvergence building an ( f , g )-Alliance

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Self-Stabilizing Algorithm with Safe Convergence building an (f,g)-Alliance Fabienne Carrier Ajoy K. Datta Stéphane Devismes Lawrence L. Larmore YvanRivierre

  2. Co-Autors Ajoy K. Datta & Lawrence L. Larmore Fabienne Carrier & YvanRivierre

  3. Roadmap • Self-stabilization • Safe convergence • The problem • Contribution • Algorithm • Perspectives

  4. Self-Stabilization [Dijkstra,74]

  5. Self-Stabilization [Dijkstra,74] Transient Faults, e.g., memory corruption, message lost …

  6. Self-Stabilization [Dijkstra,74]

  7. Self-Stabilization [Dijkstra,74]

  8. Self-Stabilization [Dijkstra,74]

  9. Self-Stabilization [Dijkstra,74]

  10. Self-Stabilization [Dijkstra,74]

  11. Self-Stabilization [Dijkstra,74] Recover after any number of transient faults

  12. Pros and Cons • Tolerate any finite number of transient faults • No initialization • Large-scale network • Self-organization in sensor network • Dynamicity • Topological change ≈ Transient fault • Tolerate onlytransient faults • Eventual safety • No stabilization detection

  13. Pros and Cons • Tolerate any finite number of transient faults • No initialization • Large-scale network • Self-organization in sensor network • Dynamicity • Topological change ≈ Transient fault • Tolerate onlytransient faults • Eventual safety • No stabilization detection

  14. Related Work • Enhancing safety: • Fault-containment [Ghoshet al, PODC’96] • Superstabilization[Dolev & Herman, CJTCS’97] • Time-adaptive Self-stabilization [Kutten & Patt-Shamir, PODC’97] • Self-Stab + safe convergence [Kakugawa & Masuzawa, IPDPS’06] • Etc.

  15. Back to self-stabilization

  16. Back to self-stabilization No safety guarantee

  17. Back to self-stabilization Ω(D)

  18. Back to self-stabilization Are all illegitimate configurations identically bad ?

  19. Back to self-stabilization Are all illegitimate configurations identically bad ? Of course, NO !

  20. Self-stabilization + Safe Convergence Really bad No so bad good

  21. Self-stabilization + Safe Convergence Quick convergence time

  22. Self-stabilization + Safe Convergence • Optimal LC ⊆ feasable LC • Set of feasable LC: CLOSED • Set of optimal LC: CLOSED • Quick convergence to a feasable LC • (O(1) expected) • Convergence to an optimal LC

  23. The problem: (f,g)-Alliance[Douradoet al, SSS’11] • Alliance: subset of nodes • f, g: 2 functions mapping nodes to natural integers • For every process p: • p ∉ Alliance ⇒ at leastf(p) neighbors ∈ Alliance • p ∈ Alliance ⇒ at least g(p) neighbors ∈ Alliance

  24. Example: (f,g)-Alliance Red nodes form a (1,0)-Alliance

  25. Example: (f,g)-Alliance Red nodes DO NOT form a (1,0)-Alliance

  26. (f,g)-Alliance: generalization of several problems • Dominating sets • K-dominating sets • K-tuple dominating sets • Global defensive alliance • Global offensive alliance

  27. Minimality & 1-Minimality • Let A be a set of nodes • A is a minimal (f,g)-Alliance iffevery proper subset of A is not an (f,g)-Alliance • A is a 1-minimal (f,g)-Alliance iff ∀p ∈ A, A-{p} is not an (f,g)-Alliance

  28. Example: (0,1)-Alliance Red nodes form NEITHER a minimal NOR a 1-minimal (0,1)-Alliance

  29. Example: (0,1)-Alliance Red nodes form a 1-minimal (0,1)-Alliance but not a minimal one

  30. Example: (0,1)-Alliance Red nodes (empty set) both form a minimal AND a 1-minimal (0,1)-Alliance

  31. Property[Douradoet al, SSS’11] • Every minimal (f,g)-Alliance is a 1-minimal (f,g)-Alliance • If for every node p, f(p) ≥ g(p), then • A is a minimal (f,g)-Alliance iff A is a 1-minimal (f,g)-Alliance

  32. Contribution • Self-Stabilizing Safe Converging Algorithm for computing the minimal (f,g)-Alliance in identified networks: • Safe Convergence • Stabilization in 4 rounds to a configuration, where an (f,g)-Alliance is defined • Stabilization in 4n+4 additional rounds to a configuration, where minimal (f,g)-Alliance is defined • Assumptions: • If for every node p, f(p) ≥ g(p) and δ(p) ≥ g(p) • Locally shared memory model, unfair daemon • Other complexities • Memory requirement: O(logn) bits per process • Step complexity: O(Δ3n) (number of state changes)

  33. Locally Shared Memory Model

  34. Locally Shared Memory Model

  35. Locally Shared Memory Model

  36. Locally Shared Memory Model Choices of the scheduler (daemon) Unfair daemon: no fairness assumption

  37. Algorithm’s main ideas

  38. ``Naïve Idea” • One boolean • Red: ∈ A • Green: ∉ A • Two actions: • Join • Leave

  39. ``Naïve Idea” To obtain safe convergence, it should be harder to leave than to join • One boolean • Red: ∈ A • Green: ∉ A • Two actions: • Join • Leave

  40. Leave the alliance • p can leaves if : • At least f(p) neighbors ∈ A after pleaves AND • Each neighbor still have enough neighbors ∈ A after pleaves

  41. At least f(p) neighbors ∈ A after pleaves • Leaving should be locally sequential • Example: (2,2)-Alliance p Neighbors

  42. At least f(p) neighbors ∈ A after pleaves • Leaving should be locally sequential • Example: (2,2)-Alliance p p Neighbors Neighbors

  43. At least f(p) neighbors ∈ A after pleaves • Leaving should be locally sequential • Example: (2,2)-Alliance p p Neighbors Neighbors

  44. Pointer: authorization to leave Nil p Neighbors

  45. Each neighbor still have enough neighbor ∈ A after pleaves • A neighbor q gives an authorization only if q still have enough neighbors ∈ A without p p (1,0)-Alliance q

  46. Each neighbor still have enough neighbor ∈ A after pleaves • A neighbor q gives an authorization only if q still have enough neighbors ∈ A without p p (1,0)-Alliance If q has several choices ID breaks ties q

  47. Deadlock problems Nil Nil (1,0)-Alliance

  48. Deadlock problems Busy ! Nil Nil (1,0)-Alliance

  49. Deadlock problems Busy ! Nil Nil (1,0)-Alliance

  50. Deadlock problems Busy ! Nil Nil Tie break ! (1,0)-Alliance

More Related