DocumentCode
904658
Title
The information structure of indulgent consensus
Author
Guerraoui, Rachid ; Raynal, Michel
Author_Institution
LPD, Ecole Polytech. Fed. de Lausanne, Switzerland
Volume
53
Issue
4
fYear
2004
fDate
4/1/2004 12:00:00 AM
Firstpage
453
Lastpage
466
Abstract
To solve consensus, distributed systems have to be equipped with oracles such as a failure detector, a leader capability, or a random number generator. For each oracle, various consensus algorithms have been devised. Some of these algorithms are indulgent toward their oracle in the sense that they never violate consensus safety, no matter how the underlying oracle behaves. We present a simple and generic indulgent consensus algorithm that can be instantiated with any specific oracle and be as efficient as any ad hoc consensus algorithm initially devised with that oracle in mind. The key to combining genericity and efficiency is to factor out the information structure of indulgent consensus executions within a new distributed abstraction, which we call "Lambda". Interestingly, identifying this information structure also promotes a fine-grained study of the inherent complexity of indulgent consensus. We show that instantiations of our generic algorithm with specific oracles, or combinations of them, match lower bounds on oracle-efficiency, zero-degradation, and one-step-decision. We show, however, that no leader or failure detector-based consensus algorithm can be, at the same time, zero-degrading and configuration-efficient. Moreover, we show that leader-based consensus algorithms that are oracle-efficient are inherently zero-degrading, but some failure detector-based consensus algorithms can be both oracle-efficient and configuration-efficient. These results highlight some of the fundamental trade offs underlying each oracle.
Keywords
computational complexity; distributed processing; fault tolerant computing; asynchronous distributed system; crash failure; distributed abstraction; fault tolerance; indulgent consensus algorithm; information structure; leader oracle; modularity; random number generator; random oracle; unreliable failure detector; Algorithm design and analysis; Computer crashes; Detectors; Distributed computing; Fault detection; Fault tolerant systems; Random number generation; Resilience; Safety; System recovery;
fLanguage
English
Journal_Title
Computers, IEEE Transactions on
Publisher
ieee
ISSN
0018-9340
Type
jour
DOI
10.1109/TC.2004.1268403
Filename
1268403
Link To Document