The information structure of distributed mutual exclusion algorithms
ACM Transactions on Computer Systems (TOCS)
Consensus in the presence of partial synchrony
Journal of the ACM (JACM)
On characterization and correctness of distributed deadlock detection
Journal of Parallel and Distributed Computing
A General Scheme for Token- and Tree-Based Distributed Mutual Exclusion Algorithms
IEEE Transactions on Parallel and Distributed Systems
Impossibility of distributed consensus with one faulty process
Journal of the ACM (JACM)
Deadlock models and a general algorithm for distributed deadlock detection
Journal of Parallel and Distributed Computing
Unreliable failure detectors for reliable distributed systems
Journal of the ACM (JACM)
The weakest failure detector for solving consensus
Journal of the ACM (JACM)
Round-by-round fault detectors (extended abstract): unifying synchrony and asynchrony
PODC '98 Proceedings of the seventeenth annual ACM symposium on Principles of distributed computing
ACM Transactions on Computer Systems (TOCS)
Information Processing Letters
Fault-tolerant broadcasts and related problems
Distributed systems (2nd Ed.)
Failure Detection and Randomization: A Hybrid Approach to Solve Consensus
SIAM Journal on Computing
Solvability in Asynchronous Environments II: Finite Interactive Tasks
SIAM Journal on Computing
Indulgent algorithms (preliminary version)
Proceedings of the nineteenth annual ACM symposium on Principles of distributed computing
The Byzantine Generals Problem
ACM Transactions on Programming Languages and Systems (TOPLAS)
Distributed computing: fundamentals, simulations and advanced topics
Distributed computing: fundamentals, simulations and advanced topics
Conditions on input vectors for consensus solvability in asynchronous distributed systems
STOC '01 Proceedings of the thirty-third annual ACM symposium on Theory of computing
Distributed Algorithms
A Versatile Family of Consensus Protocols Based on Chandra-Toueg's Unreliable Failure Detectors
IEEE Transactions on Computers
ACM SIGACT News
The Best of Both Worlds: A Hybrid Approach to Solve Consensus
DSN '00 Proceedings of the 2000 International Conference on Dependable Systems and Networks (formerly FTCS-30 and DCCA-8)
A Versatile and Modular Consensus Protoco
DSN '02 Proceedings of the 2002 International Conference on Dependable Systems and Networks
Another advantage of free choice (Extended Abstract): Completely asynchronous agreement protocols
PODC '83 Proceedings of the second annual ACM symposium on Principles of distributed computing
Early consensus in an asynchronous system with a weak failure detector
Distributed Computing
The combined power of conditions and failure detectors to solve asynchronous set agreement
Proceedings of the twenty-fourth annual ACM symposium on Principles of distributed computing
Irreducibility and additivity of set agreement-oriented failure detector classes
Proceedings of the twenty-fifth annual ACM symposium on Principles of distributed computing
Timeliness, failure-detectors, and consensus performance
Proceedings of the twenty-fifth annual ACM symposium on Principles of distributed computing
Time-Free and Timer-Based Assumptions Can Be Combined to Obtain Eventual Leadership
IEEE Transactions on Parallel and Distributed Systems
Condition Adaptation in Synchronous Consensus
IEEE Transactions on Computers
The notion of a timed register and its application to indulgent synchronization
Proceedings of the nineteenth annual ACM symposium on Parallel algorithms and architectures
An Adaptive Programming Model for Fault-Tolerant Distributed Computing
IEEE Transactions on Dependable and Secure Computing
Asynchronous Agreement and Its Relation with Error-Correcting Codes
IEEE Transactions on Computers
Using asynchrony and zero degradation to speed up indulgent consensus protocols
Journal of Parallel and Distributed Computing
Local Terminations and Distributed Computability in Anonymous Networks
DISC '08 Proceedings of the 22nd international symposium on Distributed Computing
A general characterization of indulgence
ACM Transactions on Autonomous and Adaptive Systems (TAAS)
A simple and communication-efficient Omega algorithm in the crash-recovery model
Information Processing Letters
A general characterization of indulgence
SSS'06 Proceedings of the 8th international conference on Stabilization, safety, and security of distributed systems
From an intermittent rotating star to a leader
OPODIS'07 Proceedings of the 11th international conference on Principles of distributed systems
Probabilistic quorum systems in wireless Ad Hoc networks
ACM Transactions on Computer Systems (TOCS)
Accessing probabilistic quorums in dynamic networks
Proceedings of the Third International Workshop on Reliability, Availability, and Security
Rewriting: sleeping to get there faster
HotDep'05 Proceedings of the First conference on Hot topics in system dependability
Communication-efficient leader election in crash-recovery systems
Journal of Systems and Software
In search of the holy grail: looking for the weakest failure detector for wait-free set agreement
OPODIS'06 Proceedings of the 10th international conference on Principles of Distributed Systems
One-step consensus solvability
DISC'06 Proceedings of the 20th international conference on Distributed Computing
Building and using quorums despite any number of process of crashes
EDCC'05 Proceedings of the 5th European conference on Dependable Computing
Specifying and implementing an eventual leader service for dynamic systems
International Journal of Web and Grid Services
On the message complexity of indulgent consensus
DISC'07 Proceedings of the 21st international conference on Distributed Computing
From a store-collect object and Ω to efficient asynchronous consensus
Euro-Par'12 Proceedings of the 18th international conference on Parallel Processing
Hi-index | 14.99 |
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. This paper presents 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,