TY - GEN
T1 - Brief Announcement
T2 - 44th ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing, PODC 2025
AU - Ryabinin, Fedor
AU - Gotsman, Alexey
AU - Sutra, Pierre
N1 - Publisher Copyright:
© 2025 Copyright is held by the owner/author(s). Publication rights licensed to ACM.
PY - 2025/6/13
Y1 - 2025/6/13
N2 - 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 f 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}.
AB - 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 f 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}.
KW - consensus
KW - distributed algorithms
KW - lower bounds
UR - https://www.scopus.com/pages/publications/105026963239
U2 - 10.1145/3732772.3733541
DO - 10.1145/3732772.3733541
M3 - Conference contribution
AN - SCOPUS:105026963239
T3 - Proceedings of the Annual ACM Symposium on Principles of Distributed Computing
SP - 58
EP - 61
BT - PODC 2025 - Proceedings of the 2025 ACM Symposium on Principles of Distributed Computing
PB - Association for Computing Machinery
Y2 - 16 June 2025 through 20 June 2025
ER -