Tight Bounds on Channel Reliability via Generalized Quorum Systems (Extended Version)
Alejandro Naser-Pastoriza, Gregory Chockler, Alexey Gotsman, Fedor Ryabinin
TL;DR
The paper addresses the challenge of tolerating both process crashes and channel disconnections in distributed systems by introducing generalized quorum systems (GQS), which relax the need for bidirectional connectivity and replace it with unidirectional reachability between read and write quorums. It proves that the existence of a GQS is a tight characterization: it is sufficient and necessary to implement MWMR atomic registers, SWMR atomic snapshots, and lattice agreement under arbitrary fail-prone patterns, with wait-freedom guaranteed inside the relevant strongly connected component $U_f$. For the partially synchronous setting, the authors show that a GQS is also a tight bound for consensus, providing a Paxos-like protocol that uses view synchronization and rotating leaders to achieve agreement after a global stabilization time. To cope with weak connectivity in GQS, the paper introduces quorum access functions and novel clock-based mechanisms that enable up-to-date state tracking across unidirectionally connected quorums. These results significantly broaden the fault-tolerance guarantees for shared-memory abstractions in networks with unreliable channels and inform practical designs for robust distributed systems.
Abstract
Communication channel failures are a major concern for the developers of modern fault-tolerant systems. However, while tight bounds for process failures are well-established, extending them to include channel failures has remained an open problem. We introduce \emph{generalized quorum systems} - a framework that characterizes the necessary and sufficient conditions for implementing atomic registers, atomic snapshots, lattice agreement and consensus under arbitrary patterns of process-channel failures. Generalized quorum systems relax the connectivity constraints of classical quorum systems: instead of requiring bidirectional reachability for every pair of write and read quorums, they only require some write quorum to be \emph{unidirectionally} reachable from some read quorum. This weak connectivity makes implementing registers particularly challenging, because it precludes the traditional request/response pattern of quorum access, making classical solutions like ABD inapplicable. To address this, we introduce novel logical clocks that allow write and read quorums to reliably track state updates without relying on bi-directional connectivity.
