Anonymous agreement: the janus algorithm

  • Authors:
  • Zohir Bouzid;Pierre Sutra;Corentin Travers

  • Affiliations:
  • LIP6-CNRS 7606, University Pierre et Marie Curie - Paris 6, France;LIP6-CNRS 7606, University Pierre et Marie Curie - Paris 6, France;LaBRI University Bordeaux 1, France

  • Venue:
  • OPODIS'11 Proceedings of the 15th international conference on Principles of Distributed Systems
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

We consider the consensus problem in an n-process shared-memory distributed system when processes are anonymous, i.e., they have no identities and are programmed identically. We present Janus, a new anonymous consensus algorithm that reaches decision after $O(\sqrt{n})$ writes in every solo execution. The set of values that can be proposed is unbounded and the algorithm tolerates an arbitrary number of crash failures. The algorithm relies on an anonymous eventual leader election mechanism. Furthermore, during solo executions in which a non-faulty process is elected since the beginning, the individual step complexity of Janus is O(n), matching a recent lower bound by Aspnes and Ellen (SPAA 2011). The algorithm is then extended to the case of homonymous system in which c, 1≤c≤n, identities are available. In every solo execution, the modified algorithm achieves $O(\sqrt{n-c+1} + \frac{\log{c}}{\log{\log{c}}})$ individual write complexity and $O(n-c+\frac{\log{c}}{\log{\log{c}}})$ individual step complexity.