Participant-Restricted Consensus in Asynchronous Crash-Prone Read/Write Systems and Its Weakest Failure Detector
- 272 Downloads
A failure detector is a device (object) that provides the processes with information on failures. Failure detectors were introduced to enrich asynchronous systems so that it becomes possible to solve problems (or implement concurrent objects) that are otherwise impossible to solve in pure asynchronous systems where processes are prone to crash failures. The most famous failure detector (which is called “eventual leader” and denoted \(\varOmega \)) is the weakest failure detector which allows consensus to be solved in n-process asynchronous systems where up to \(t=n-1\) processes may crash in the read/write communication model, and up to \(t<n/2\) processes may crash in the message-passing communication model. In these models, all correct processes are supposed to participate in a consensus instance and in particular the eventual leader.
This paper considers the case where some subset of processes that do not crash (not predefined in advance) are allowed not to participate in a consensus instance. In this context \(\varOmega \) cannot be used to solve consensus as it could elect as eventual leader a non-participating process. This paper presents the weakest failure detector that allows correct processes not to participate in a consensus instance.This failure detector, denoted \(\varOmega ^*\), is a variant of \(\varOmega \). The paper presents also an \(\varOmega ^*\)-based consensus algorithm for the asynchronous read/write model, in which any number of processes may crash, and not all the correct processes are required to participate.
KeywordsAgreement Asynchronous system Atomic read/write register Concurrency Consensus Eventual leadership Failure detector Participating process Process crash Read/write shared memory Snapshot object Weakest information on failures
This work was partially supported by the French ANR project DESCARTES (16-CE40-0023-03) devoted to layered and modular structures in distributed computing. We want to thank the referees for their constructive comments.
- 3.Attiya, H., Welch, J.L.: Distributed Computing: Fundamentals, Simulations and Advanced Topics, 2nd edn. Wiley-Interscience, p. 414 (2004). ISBN 0-471-45324-2Google Scholar
- 4.Ben-Or, M.: Another advantage of free choice: completely asynchronous agreement protocols. In: Proceedings of 2nd ACM Symposium on Principles of Distributed Computing (PODC 1983), pp. 27–30. ACM Press (1983)Google Scholar
- 13.Loui, M., Abu-Amara, H.: Memory requirements for agreement among unreliable asynchronous processes. In: Preparata, F.P. (ed.) Advances in Computing Research, vol. 4, pp. 163–183. JAI Press, Greenwich (1987)Google Scholar
- 19.Taubenfeld, G.: Synchronization Algorithms and Concurrent Programming, p. 423. Upper Saddle River, Pearson Education/Prentice Hall (2006)Google Scholar