340 likes | 454 Views
Snap-stabilizing Committee Coordination. Borzoo Bonakdarpour Stephane Devismes Franck Petit. May17, 2011. IEEE International Parallel and Distributed Processing Symposium (IPDPS’11). Motivation. Generation distributed code from high-level component-based models.
E N D
Snap-stabilizing Committee Coordination Borzoo Bonakdarpour StephaneDevismes Franck Petit May17, 2011 IEEE International Parallel and Distributed Processing Symposium (IPDPS’11)
Motivation • Generation distributed code from high-level component-based models. Synchronizing with a set of rendezvous interactions • Behavioral atomic components IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Simple Rendezvous Priorities: Interactions: sr1r2r3 s r1 r2 r3 Most processalgebrashave similarsyntax and semantics r2 r1 s r2 r3 Sender Receiver1 Receiver2 Receiver3 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Motivation How do we generate distributed code by starting from such high-level models? IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Motivation I1 I3 I2 C1 C2 C3 C4 C5 C6 C7 Conflictresolution (exclusion) IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Committee Coordination Problem Professorsin 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: • (synchronization) meeting of a committee may be started only if all members of that committee are waiting, and • (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 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Distributed Committee Coordination C2 C1 C3 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Committee Coordination Problem 1988 • Chandy and Misra propose a solution by reduction to dining/drinking philosophersproblem 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! IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Implementing Committee Coordination IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Why another Committee Coordination Algorithm? [1] B. Bonakdarpour, M. Bozga, M. Jaber, J. Quilbeuf, J. Sifakis, From high-level component-based models to distributed implementations, EMSOFT’10 IEEE International Parallel and Distributed Processing Symposium (IPDPS'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 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Maximal Concurrency • The meetings lasts indefinitely • An idle meeting eventually convenes C2 C1 C3 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Professor Fairness Every professor wants to participate in a committee meeting infinitely often. Assumption • Otherwise, distributed committee coordination is impossible [2] Fairness Every professor eventually participates in a committee meeting that it is a member of. [2] Y.-K. Tsay and R. Bagrodia. Some impossibility results in interprocess synchronization. Distributed Computing, 6(4):221–231, 1993. IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Impossibility of Fairness and Maximal Concurrency • Maximal • Concurrency • Maximal • Concurrency C2 We design an algorithm for each property C1 C3 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
2-Phase Discussion Time Phase1 Phase2 Essentialdiscussion (all professors have to participate) Voluntarydiscussion The meeting continues for a finite time C2 C1 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Snap-stabilization • A snap-stabilizingprotocol 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). IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Snap-stabilizing Committee Coordination • A snap-stabilizing committee coordinationprotocol 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. IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Snap-stabilization 2-Phase CC Our algorithm is parallel composition of two modules Self-stabilizing Circulating Token Committee Coordination || IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Snap-stabilizing 2-Phase CC Looking for a committee to participate Step1 L L C2 C1 L C3 L L L L IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Snap-stabilizing 2-Phase CC Choosing a committee, where all other members are also looking Step2 L L C2 C1 L C3 L L L L IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Snap-stabilizing 2-Phase CC Getting readyto participate in committee, where all members are looking or waiting Step3 L W L C2 W C1 L C3 L W L W L L IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Snap-stabilizing 2-Phase CC Committee meeting convenes, where all members are waiting. Step3 W L W W L C2 C1 W C3 W L W W L W L IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Snap-stabilizing 2-Phase CC with Maximal Concurrency After essential discussion, professors may leave the meeting. A token holder releases the token. Step4 W D D W W C2 D C1 W C3 W W W D L W IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Maximal Snap-stabilization 2-Phase CC with Maximal Concurrency ¬LegitimateStates(p) ∧ (State= idle) Pointer:= null; ¬LegitimateStates(p) ^ (State = idle) State:= looking, Pointer:= null; Stabilizing Actions IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
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. IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
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. Theorem IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Conclusion • Summary • Weconsidered the distributedcommittee coordination problem • Weshowedthatsatisfyingfairnessandmaximal concurrencyisimpossibleeven if professorsdesire to participate in meetings infinitelyoften in a non-stabilizing setting. • Weproposed a snap-stabilizingalgorithms for eachconflictingproperty. • Future work • Committee coordination withpriorities • Committee coordination in dynamic networks IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Maximal Concurrency .vs Fairness? Choosing the maximum ID? C2 C4 L 4 6 C1 1 3 C3 C5 L 2 5 7 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Maximal Concurrency .vs Fairness? Choosing the maximum ID? C2 C4 L 4 6 C1 1 3 C3 C5 L 2 5 7 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Maximal Concurrency .vs Fairness? Choosing the maximum ID? C2 C4 L 4 6 C1 1 3 C3 C5 L 2 5 7 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Maximal Concurrency .vs Fairness? Choosing the maximum ID? C2 C4 L 4 6 C1 1 3 C3 C5 L 2 5 7 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Maximal Concurrency .vs Fairness? Choosing the maximum ID? C2 C4 No progress! L 4 6 C1 1 3 C3 C5 L 2 5 7 IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)
Maximal Concurrency .vs Fairness? TOKEN CIRCULATION PROGRESS FAIRNESS • Snap-stabilization 2-Phase CC with Fairness • Snap-stabilization 2-Phase CC with Maximal Concurrency IEEE International Parallel and Distributed Processing Symposium (IPDPS'11)