Backoff protocols for distributed mutual exclusion and ordering
- 13 November 2002
- conference paper
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
Presents a simple and efficient protocol for mutual exclusion in synchronous message-passing distributed systems subject to failures. Our protocol borrows design principles from prior work in backoff protocols for multiple access channels such as the Ethernet. Our protocol is adaptive in that the expected amortized system response time - informally, the average time a process waits before entering the critical section - is a function only of the number of clients currently contending and is independent of the maximum number of processes that might contend. In particular, in the contention-free case, a process can enter the critical section after only one round-trip message delay. We use this protocol to derive a protocol for ordering operations on a replicated object in an asynchronous distributed system subject to failures. This protocol is always safe, is probabilistically live during periods of stability and is suitable for deployment in practical systems.Keywords
This publication has 18 references indexed in Scilit:
- An architecture for survivable coordination in large distributed systemsIEEE Transactions on Knowledge and Data Engineering, 2000
- Increasing the Resilience of Distributed and Replicated Database SystemsJournal of Computer and System Sciences, 1998
- Byzantine quorum systemsDistributed Computing, 1998
- The part-time parliamentACM Transactions on Computer Systems, 1998
- Fast timing-based algorithmsDistributed Computing, 1996
- A class of deadlock-free Maekawa-type algorithms for mutual exclusion in distributed systemsDistributed Computing, 1991
- Implementing fault-tolerant services using the state machine approach: a tutorialACM Computing Surveys, 1990
- The performance of spin lock alternatives for shared-money multiprocessorsIEEE Transactions on Parallel and Distributed Systems, 1990
- Time, clocks, and the ordering of events in a distributed systemCommunications of the ACM, 1978
- A method for obtaining digital signatures and public-key cryptosystemsCommunications of the ACM, 1978