Table of Contents
Fetching ...

Revisiting Lower Bounds for Two-Step Consensus

Fedor Ryabinin, Alexey Gotsman, Pierre Sutra

TL;DR

This work reexamines the classical lower bounds for two-step consensus in partially synchronous crash-prone systems by distinguishing practical fast-path behavior from Lamport's original definition. By separating consensus into task and object formulations, the authors derive tight, distinct lower bounds: $n \ge \max{2e+f, 2f+1}$ for tasks and $n \ge \max{2e+f-1, 2f+1}$ for objects, and provide matching upper-bound protocols that extend Fast Paxos with fast and slow ballot phases. The proposed protocol shows that, in practice, two fewer processes may suffice under the object formulation, potentially reducing coordination costs in wide-area settings. The results have practical impact by clarifying when and how fast two-step decisions can be achieved, depending on whether the system is modeled as a decision task or as an atomic consensus object.

Abstract

A seminal result by Lamport shows that at least $\max\{2e+f+1,2f+1\}$ processes are required to implement partially synchronous consensus that tolerates $f$ process failures and can furthermore decide in two message delays under $e$ failures. This lower bound is matched by the classical Fast Paxos protocol. However, more recent practical protocols, such as Egalitarian Paxos, provide two-step decisions with fewer processes, seemingly contradicting the lower bound. We show that this discrepancy arises because the classical bound requires two-step decisions under a wide range of scenarios, not all of which are relevant in practice. We propose a more pragmatic condition for which we establish tight bounds on the number of processes required. Interestingly, these bounds depend on whether consensus is implemented as an atomic object or a decision task. For consensus as an object, $\max\{2e+f-1,2f+1\}$ processes are necessary and sufficient for two-step decisions, while for a task the tight bound is $\max\{2e+f, 2f+1\}$.

Revisiting Lower Bounds for Two-Step Consensus

TL;DR

This work reexamines the classical lower bounds for two-step consensus in partially synchronous crash-prone systems by distinguishing practical fast-path behavior from Lamport's original definition. By separating consensus into task and object formulations, the authors derive tight, distinct lower bounds: for tasks and for objects, and provide matching upper-bound protocols that extend Fast Paxos with fast and slow ballot phases. The proposed protocol shows that, in practice, two fewer processes may suffice under the object formulation, potentially reducing coordination costs in wide-area settings. The results have practical impact by clarifying when and how fast two-step decisions can be achieved, depending on whether the system is modeled as a decision task or as an atomic consensus object.

Abstract

A seminal result by Lamport shows that at least processes are required to implement partially synchronous consensus that tolerates process failures and can furthermore decide in two message delays under failures. This lower bound is matched by the classical Fast Paxos protocol. However, more recent practical protocols, such as Egalitarian Paxos, provide two-step decisions with fewer processes, seemingly contradicting the lower bound. We show that this discrepancy arises because the classical bound requires two-step decisions under a wide range of scenarios, not all of which are relevant in practice. We propose a more pragmatic condition for which we establish tight bounds on the number of processes required. Interestingly, these bounds depend on whether consensus is implemented as an atomic object or a decision task. For consensus as an object, processes are necessary and sufficient for two-step decisions, while for a task the tight bound is .
Paper Structure (18 sections, 7 theorems, 4 equations, 1 figure, 2 algorithms)

This paper contains 18 sections, 7 theorems, 4 equations, 1 figure, 2 algorithms.

Key Result

Theorem 1

An $f$-resilient $e$-two-step consensus task is implementable iff $n \ge \max\{2e + f, 2f+1\}$.

Figures (1)

  • Figure 1: Consensus task at a process $p_i$. Red lines highlight the changes needed to implement a consensus object.

Theorems & Definitions (12)

  • Definition 1
  • Definition 2
  • Definition 3
  • Definition 4
  • Theorem 1
  • Theorem 2
  • Lemma 1
  • Definition 5
  • Lemma 2
  • Lemma 3
  • ...and 2 more