Abstract:Assuming each process proposes a value, the consensus problem requires the non-faulty processes to agree on the same value that has to be a proposed value. Solutions to the consensus problem in synchronous systems are based on the round-based model, namely, the progress of the processes is according to synchronous rounds. Simultaneous consensus requires that the non-faulty processes decide not only on the same value, but decide during the very same round. It has been shown by Dwork and Moses that, in a synchronous system prone to t process crashes, the earliest round at which a common decision can be simultaneously obtained is (t + 1) − D where D is a non-negative integer determined by the actual failure pattern F .The condition-based approach to solve consensus assumes that the input vector belongs to a set C (a set of input vectors satisfying a property called legality). Interestingly, the conditions for synchronous consensus define a hierarchy of sets of conditions S This paper considers the synchronous condition-based consensus problem with simultaneous decision. It first presents a simple algorithm that directs the processes to decide simultaneously at the end of the round RS t,d,F = min((t + 1) − D, d + 1) (i.e., RS t,d,F = (t + 1) − max(D, δ) with δ = t − d). The paper then shows that RS t,d,F is a lower bound for the condition-based simultaneous consensus problem. It thus follows that the algorithm designed is optimal in each and every run, and not just in the worst case: For every choice of failure pattern by the adversary (and every input configuration), the algorithm reaches simultaneous as fast as any correct algorithm could do under the same conditions. This shows that, contrary to what could be hoped, when considering condition-based consensus with simultaneous decision, we can benefit from the best of both actual worlds (either the failure world when RS t,d,F = (t + 1) − D, or the condition world when RS t,d,F = d + 1), but we cannot benefit from the sum of savings offered by both. Only one discount applies.
Key-words:Agreement problem, Condition-based agreement, Consensus, Distributed algorithm, Early decision, Lower bound, Modularity, Process crash failure, Round-based computation model, Simultaneity, Synchronous message-passing system. Utiliser les conditions pour une décision simultanée donne peu de gain Résumé : Ce rapport montre qu'utiliser les conditions pour une décision simultanée ne donne qu'un gain limité.