snap-stabilizing committee coordination borzoo bonakdarpour stephane devismes franck petit ieee...
TRANSCRIPT
![Page 1: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/1.jpg)
Snap-stabilizing Committee Coordination
Borzoo BonakdarpourStephane DevismesFranck Petit
IEEE International Parallel and Distributed Processing Symposium (IPDPS’11)
May17, 2011
![Page 2: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/2.jpg)
2
Motivation
• Generation distributed code from high-level component-
based models.
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Behavioral atomic
components
Synchronizing with a set of rendezvous interactions
![Page 3: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/3.jpg)
3
Simple Rendezvous
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
s
Sender
r1
Receiver1
Interactions: sr1r2r3
Priorities:
s r1
r2
Receiver2
r2
r3
Receiver3
r3
r2Most process algebras have similar syntax and semantics
![Page 4: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/4.jpg)
4
Motivation
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
How do we generate distributed code by starting from such high-level models?
![Page 5: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/5.jpg)
5
Motivation
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1 C4C2 C3 C6C5 C7
I1 I2 I3
Conflict resolution(exclusion)
![Page 6: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/6.jpg)
6
Committee Coordination Problem
Professors in a certain university have organized themselves into committees. Each committee has an unchanging membership roster of one or more professors. From time to time a professor may decide to attend a committee meeting; it starts waiting and remains waiting until a meeting of a committee of which it is a member is started. All meetings terminate in finite time. The restrictions on convening a meeting are as follows:
1. (synchronization) meeting of a committee may be started only if all members of that committee are waiting, and
2. (exclusion) no two committees may convene simultaneously, if they have a common member.
The problem is to ensure that if all members of a committee are waiting, then a meeting involving some member of this committee is convened
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
![Page 7: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/7.jpg)
7
Distributed Committee Coordination
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1 C3C2
![Page 8: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/8.jpg)
8
Committee Coordination Problem
1988• Chandy and Misra propose a solution by reduction to dining/drinking
philosophers problem
1989• Bagrodia introduces a solution based on message counts to ensure
synchronization and reduction to dining/drinking philosophers problems to solve exclusion
• Bagrodia presents simulation results to analyze the tradeoff between decentralization and communication overhead
1990• The line of research dies!
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
![Page 9: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/9.jpg)
9
Implementing Committee Coordination
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
![Page 10: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/10.jpg)
10
Why another Committee Coordination Algorithm?
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
[1] B. Bonakdarpour, M. Bozga, M. Jaber, J. Quilbeuf, J. Sifakis, From high-level component-based models to distributed implementations, EMSOFT’10
![Page 11: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/11.jpg)
11
Current Open Questions
• Number of components that can run simultaneously• Maximal/maximum concurrency
• Each component/interaction eventually gets an execution chance• Fairness
• Starting from an arbitrary configuration the systems reaches a legitimate configuration• Self-stabilization
• The amount of time that some component must wait for execution• Waiting time
• The number of rounds a component must wait• Service time
• The effect of time spent in an interaction• Utilization
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
![Page 12: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/12.jpg)
13
Maximal Concurrency
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1 C3C2
The meetings lasts
indefinitely
An idle meeting
eventually convenes
![Page 13: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/13.jpg)
14
Professor Fairness
Every professor wants to participate in a committee meeting infinitely often.
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Every professor eventually participates in a committee meeting that it is a member of.
Assumption
Fairness
Otherwise, distributed committee
coordination is impossible [2]
[2] Y.-K. Tsay and R. Bagrodia. Some impossibility results in interprocesssynchronization. Distributed Computing, 6(4):221–231, 1993.
![Page 14: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/14.jpg)
15
Impossibility of Fairness and Maximal Concurrency
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1 C3C2
MaximalConcurrency
MaximalConcurrency
We design an algorithm for each property
![Page 15: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/15.jpg)
16
2-Phase Discussion Time
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1 C2
Phase1Essential discussion
(all professors have to participate)
Phase2Voluntary discussion
The meeting continues for a finite time
![Page 16: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/16.jpg)
17
Snap-stabilization
• A snap-stabilizing protocol guarantees that, starting from an arbitrary system configuration, the protocol always behaves according to its specification.
• Thus, a snap-stabilizing protocol is a time optimal self-stabilizing protocol (because it stabilizes in 0 rounds).
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
![Page 17: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/17.jpg)
18
Snap-stabilizing Committee Coordination
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
• A snap-stabilizing committee coordination protocol guarantees that, every meeting convened after the last transient faults satisfy every requirement of the committee coordination.
Note that a snap-stabilizing committee coordination protocol provides no guarantee for the meetings started during the transient faults, except that they do not interfere with the execution of the other meetings.
![Page 18: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/18.jpg)
19
Snap-stabilization 2-Phase CC
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
CommitteeCoordination
Self-stabilizing Circulating
Token||
Our algorithm is parallel composition of two modules
![Page 19: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/19.jpg)
20
Snap-stabilizing 2-Phase CC
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1 C3C2
Step1 Looking for a committee to participate
L
L
L
L
L
L
L
![Page 20: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/20.jpg)
21
Snap-stabilizing 2-Phase CC
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1 C3C2
Step2 Choosing a committee, where all other members are also looking
L
L
L
L
L
L
L
![Page 21: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/21.jpg)
22
Snap-stabilizing 2-Phase CC
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1 C3C2
Step3 Getting ready to participate in committee, where all members are looking or waiting
L
L
L
L
L
L
L
W
W
W
W
![Page 22: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/22.jpg)
23
Snap-stabilizing 2-Phase CC
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1 C3C2
Step3 Committee meeting convenes, where all members are waiting.
L
L
L
W
W
W
W
L
L
W
W
W
W
![Page 23: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/23.jpg)
24
Snap-stabilizing 2-Phase CC with Maximal Concurrency
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1 C3C2
Step4 After essential discussion, professors may leave the meeting. A token holder releases the token.
L
W
W
W
W
W
W
W
W
D
DD
D
![Page 24: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/24.jpg)
25
Maximal Snap-stabilization 2-Phase CC with Maximal Concurrency
¬LegitimateStates(p) (∧ State = idle)
Pointer := null;
¬LegitimateStates (p) ^ (State = idle)
State := looking, Pointer := null;
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Stabilizing Actions
![Page 25: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/25.jpg)
26
Snap-stabilization 2-Phase CC with Fairness• The algorithm is similar to the previous algorithm, except
that we use the token circulation to ensure fairness.
• Let A be a committee coordination algorithm that satisfies Professor Fairness. Let professors remain in the meeting for infinite time. Under such assumption the system reaches a quiescent state where the status of all professors do not change any more. The Degree of Fair Concurrency of A is then the minimum number of meetings held in a quiescent state.
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
![Page 26: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/26.jpg)
27
Snap-stabilization 2-Phase CC with Fairness
The degree of fair concurrency for a committee coordination algorithm that satisfies professor fairness is the size of minimum maximal matching of the system.
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Theorem
![Page 27: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/27.jpg)
28
Conclusion
• Summary– We considered the distributed committee coordination problem– We showed that satisfying fairness and maximal concurrency is
impossible even if professors desire to participate in meetings infinitely often in a non-stabilizing setting.
– We proposed a snap-stabilizing algorithms for each conflicting property.
• Future work– Committee coordination with priorities– Committee coordination in dynamic networks
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
![Page 28: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/28.jpg)
THANK YOU !
![Page 29: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/29.jpg)
30
Maximal Concurrency .vs Fairness?
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1
C2
L
1
2
3
L C3
C4
C5
4
5
6
7
Choosing the maximum ID?
![Page 30: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/30.jpg)
31
Maximal Concurrency .vs Fairness?
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1
C2
L
1
2
3
L C3
C4
C5
4
5
6
7
Choosing the maximum ID?
![Page 31: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/31.jpg)
32
Maximal Concurrency .vs Fairness?
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1
C2
L
1
2
3
L C3
C4
C5
4
5
6
7
Choosing the maximum ID?
![Page 32: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/32.jpg)
33
Maximal Concurrency .vs Fairness?
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1
C2
L
1
2
3
L C3
C4
C5
4
5
6
7
Choosing the maximum ID?
![Page 33: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/33.jpg)
34
Maximal Concurrency .vs Fairness?
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
C1
C2
L
1
2
3
L C3
C4
C5
4
5
6
7
Choosing the maximum ID?
No progress!
![Page 34: Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium](https://reader038.vdocuments.mx/reader038/viewer/2022110319/56649c7e5503460f94933c76/html5/thumbnails/34.jpg)
35
Maximal Concurrency .vs Fairness?
May 17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
TOKEN CIRCULATION
PRO
GR
ESS
Snap-stabilization 2-Phase CC with
Maximal Concurrency
FAIR
NESS
Snap-stabilization 2-Phase CC with
Fairness