Looking for the Weakest Failure Detector for k-Set Agreement in Message-Passing Systems: Is ${\it \Pi}_k$ the End of the Road?

  • Authors:
  • François Bonnet;Michel Raynal

  • Affiliations:
  • IRISA, Université de Rennes 1, Rennes, France 35042;IRISA, Université de Rennes 1, Rennes, France 35042

  • Venue:
  • SSS '09 Proceedings of the 11th International Symposium on Stabilization, Safety, and Security of Distributed Systems
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

In the k -set agreement problem, each process (in a set of n processes) proposes a value and has to decide a proposed value in such a way that at most k different values are decided. While this problem can easily be solved in asynchronous systems prone to t process crashes when k t , it cannot be solved when k ≤ t . Since several years, the failure detector-based approach has been investigated to circumvent this impossibility. While the weakest failure detector class to solve the k -set agreement problem in read/write shared-memory systems has recently been discovered (PODC 2009), the situation is different in message-passing systems where the weakest failure detector classes are known only for the extreme cases k = 1 (consensus) and k = n *** 1 (set agreement). This paper introduces a candidate for the general case. It presents a new failure detector class, denoted ${\it \Pi}_k$, and shows ${\it \Pi}_1={\it \Sigma}\times {\it \Omega}$ (the weakest class for k = 1), and ${\it \Pi}_{n-1}={\cal L}$ (the weakest class for k = n *** 1). Then, the paper investigates the structure of ${\it \Pi}_k$ and shows it is the combination of two failures detector classes denoted ${\it \Sigma}_k$ and ${\it \Omega}_k$ (that generalize the previous "quorums" and "eventual leaders" failure detectors classes). Finally, the paper proves that ${\it \Sigma}_k$ is a necessary requirement (as far as information on failure is concerned) to solve the k -set agreement problem in message-passing systems. The paper presents also a ${\it \Pi}_{n-1}$-based algorithm that solves the (n *** 1)-set agreement problem. This algorithm provides us with a new algorithmic insight on the way the (n *** 1)-set agreeement problem can be solved in asynchronous message-passing systems (insight from the point of view of the non-partitioning constraint defined by ${\it \Sigma}_{n-1}$).