Abstract
While consensus (and more generally agreement problems) is at the heart of many coordination problems in asynchronous distributed systems prone to process crashes, it has been shown to be impossible to solve in such systems where processes communicate by message-passing or by reading and writing a shared memory. Hence, these systems must be enriched with additional computational power for consensus to be solved on top of them. This article presents a new restriction of the classical basic computational model that combines process participation and a constraint on failure occurrences that can happen only while a predefined contention threshold has not yet been bypassed. This type of failure is called λ-constrained crashes, where λ defines the considered contention threshold. It appears that when assuming such contention-related crash failures and enriching the system with objects whose consensus number is x≥1, consensus for n processes can be solved for any n≥x assuming up to x failures. The article proceeds incrementally. It first presents an algorithm that solves consensus on top of read/write registers if at most one crash occurs before the contention threshold λ=n−1 has been bypassed. Then, the article considers two extensions. The first one assumes that the system is enriched with objects whose consensus number is x≥1, and shows that when λ=n−x, consensus can be solved despite up to x λ-constrained crashes, for any n≥x, and when λ=n−2x+1, consensus can be solved despite up to 2x−1 λ-constrained crashes, assuming x divides n. The second extension prolongs the previous results to the k-set agreement problem (which is a natural generalization of consensus). Impossibility results are also presented for the number of λ-constrained failures that can be tolerated.
Original language | English |
---|---|
Article number | 113982 |
Pages (from-to) | 113982 |
Journal | Theoretical Computer Science |
Volume | 966-967 |
DOIs | |
State | Published - 26 Jul 2023 |
Externally published | Yes |
Bibliographical note
Publisher Copyright:© 2023 Elsevier B.V.
Keywords
- Algorithm
- Asynchronous system
- Atomic register
- Concurrency
- Consensus
- Consensus number
- Contention
- Impossibility
- Participating process
- Process crash failure
- Read/write register
- k-Set agreement
- λ-Constrained failure