On the complexity of fault-tolerant consensus
On the complexity of fault-tolerant consensus
复制标题
论容错共识的复杂性
DOI:
10.1007/978-3-030-31277-0_2
复制
发表时间:
2019
影响因子:
3.1
通讯作者:
Jaroslaw Mirek
中科院分区:
文献类型:
--
作者:
D. Kowalski;Jaroslaw Mirek
The paper studies the problem of reaching agreement in a distributed message-passing system prone to crash failures. Crashes are generated by \constrained\ adversaries - a \wadapt\ adversary, who has to fix in advance the set of $f$ crash-prone processes, or a \chainadapt\ adversary, who orders all the processes into $k$ disjoint chains and has to follow this pattern when crashing them. Apart from these constraints, both of them may crash processes in an adaptive way at any time. While commonly used \sadapt\ adversaries model attacks and \noadapt\ ones -- pre-defined faults, the constrained adversaries model more realistic scenarios when there are fault-prone dependent processes, e.g., in hierarchical or dependable software/hardware systems. We propose time-efficient consensus algorithms against such adversaries and also show how to improve the message complexity of proposed solutions. Finally, we show how to reach consensus against a \kthick\ adversary, limited by an arbitrary partial order \dk{with a maximal anti-chain of length $k$}. We complement our algorithmic results with (almost) tight lower bounds, and extend the one for \wadapt\ adversaries to hold also for (syntactically) weaker \noadapt\ adversaries. Together with the consensus algorithm against \wadapt\ adversaries (which automatically translates to \noadapt\ adversaries), these results extend the state-of-the-art of the popular class of \noadapt\ adversaries, in particular the result of Chor, Meritt and Shmoys~\cite{CMS}, and prove general separation between \sadapt\ and the constrained adversaries (including \noadapt) analyzed by Bar-Joseph and Ben-Or~\cite{BB} and others.