While the very first consensus protocols for the synchronous model were designed to match the worst-case lower bound, deciding in exactly t+1 rounds in all runs, it was soon realized that they could be strictly improved upon by early stopping protocols. These dominate the first ones, by always deciding in at most t+1 rounds, but often much faster. A protocol is unbeatable if it can't be strictly dominated. Namely, if no protocol Q can decide strictly earlier than P against at least one adversary strategy, while deciding at least as fast as P in all cases. Unbeatability is often a much more suitable notion of optimality for distributed protocols than worst-case performance. Halpern, Moses and Waarts (2001), who introduced this notion, presented a general logic-based transformation of any consensus protocol to an unbeatable protocol that dominates it, and suggested a particular unbeatable consensus protocol. Their analysis is based on a notion of continual common knowledge , which is not easy to work with in practice. Using a more direct knowledge-based analysis, this paper studies unbeatability for both consensus and k-set consensus. We present unbeatable solutions to non-uniform consensus and k-set consensus, and uniform consensus in synchronous message-passing contexts with crash failures. Our consensus protocol strictly dominates the one suggested by Halpern, Moses and Waarts, showing that their protocol is in fact beatable. The k-set consensus problem is much more technically challenging than consensus, and its analysis has triggered the development of the topological approach to distributed computing. Worst-case lower bounds for this problem have required either techniques based on algebraic topology (Guerraoui et al., 2009), or reduction-based proofs (Alistarh et al., 2012; Gafni et al., 2011). Our proof of unbeatability is purely combinatorial, and is a direct, albeit nontrivial, generalization of the one for consensus. We also present an alternative topological unbeatability proof that allows to understand the connection between the connectivity of protocol complexes and the decision time of processes. All of our protocols make use of a notion of a hidden path of nodes relative to a process i at time m, in which a value unknown to i at m may be seen by others. This is a structure that can implicitly be found in lower bound proofs for consensus going back to the '80s (Dolev and Strong, 1982). Its use in our protocols sheds light on the mathematical structure underlying the consensus problem and its variants. For the synchronous model, only solutions to the uniform variant of k-set consensus have been offered. Based on our unbeatable protocols for uniform consensus and for non-uniform k-set consensus, we present a uniform k-set consensus protocol that strictly dominates all known solutions to this problem in the synchronous model.
[1]
Michel Raynal,et al.
Early-Stopping k-Set Agreement in Synchronous Systems Prone to Any Number of Process Crashes
,
2005,
PaCT.
[2]
André Schiper,et al.
Uniform consensus is harder than consensus
,
2004,
J. Algorithms.
[3]
Yoram Moses,et al.
Programming simultaneous actions using common knowledge
,
1987,
Algorithmica.
[4]
Rachid Guerraoui,et al.
The Complexity of Early Deciding Set Agreement
,
2011,
SIAM J. Comput..
[5]
Ronald Fagin,et al.
Reasoning about knowledge
,
1995
.
[6]
Danny Dolev,et al.
Requirements for Agreement in a Distributed System
,
1982,
DDB.
[7]
Yoram Moses,et al.
Brief announcement: pareto optimal solutions to consensus and set consensus
,
2013,
PODC '13.
[8]
Leslie Lamport,et al.
Reaching Agreement in the Presence of Faults
,
1980,
JACM.
[9]
Idit Keidar,et al.
A simple proof of the uniform consensus synchronous lower bound
,
2003,
Inf. Process. Lett..
[10]
Nancy A. Lynch,et al.
Tight bounds for k-set agreement
,
2000,
J. ACM.
[11]
Maurice Herlihy,et al.
Transforming worst-case optimal solutions for simultaneous tasks into all-case optimal solutions
,
2011,
PODC '11.
[12]
Michel Raynal,et al.
Optimal early stopping uniform consensus in synchronous systems with process omission failures
,
2004,
SPAA '04.
[13]
Jiannong Cao,et al.
A bivalency proof of the lower bound for uniform consensus
,
2005,
Inf. Process. Lett..
[14]
Danny Dolev,et al.
Early stopping in Byzantine agreement
,
1990,
JACM.
[15]
Vassos Hadzilacos,et al.
On the Relationship Between the Atomic Commitment and Consensus Problems
,
1990,
Fault-Tolerant Distributed Computing.
[16]
Joseph Y. Halpern,et al.
A characterization of eventual Byzantine agreement
,
1990,
PODC '90.
[17]
Yoram Moses,et al.
Knowledge and Common Knowledge in a Byzantine Environment I: Crash Failures
,
1986,
TARK.
[18]
Rachid Guerraoui,et al.
A topological treatment of early-deciding set-agreement
,
2009,
Theor. Comput. Sci..
[19]
Brian A. Coan,et al.
A communication-efficient canonical form for fault-tolerant distributed protocols
,
1986,
PODC '86.
[20]
Rida A. Bazzi,et al.
Using Knowledge to Optimally Achieve Coordination in Distributed Systems
,
1992,
Theor. Comput. Sci..
[21]
Joseph Y. Halpern,et al.
Knowledge and common knowledge in a distributed environment
,
1984,
JACM.
[22]
Dan Alistarh,et al.
Of Choices, Failures and Asynchrony: The Many Faces of Set Agreement
,
2011,
Algorithmica.
[23]
Rachid Guerraoui,et al.
Tight Bounds on Early Local Decisions in Uniform Consensus
,
2003,
DISC.
[24]
Rachid Guerraoui,et al.
The Complexity of Early Deciding Set Agreement: How can Topology help?
,
2009,
Electron. Notes Theor. Comput. Sci..
[25]
Maurice Herlihy,et al.
Unifying synchronous and asynchronous message-passing models
,
1998,
PODC '98.