Increasing availability under mutual exclusion constraints with dynamic vote reassignment
- 1 November 1989
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Computer Systems
- Vol. 7 (4) , 394-426
- https://doi.org/10.1145/75104.75107
Abstract
Voting is used commonly to enforce mutual exclusion in distributed systems. Each node is assigned a number of votes, and only the group with a majority of votes is allowed to perform a restricted operation. This paper describes techniques for dynamically reassigning votes upon node or link failure, in an attempt to make the system more resilient to future failures. We focus on autonomous methods for achieving this, that is, methods that allow the nodes to make independent choices about changing their votes and picking new vote values, rather than group consensus techniques that require tight coordination among the remaining nodes. Protocols are given which allow nodes to install new vote values while still maintaining mutual exclusion requirements. The lemmas and theorems to validate the protocols are presented. A simple example shows how to apply the method to a database object-locking scheme; the protocols, however, are versatile andgeneral purpose, and can be used foranyapplication requiring mutual exclusion. In addition, policies are presented that allow nodes to autonomously select their new vote values. Simulation results are presented comparing the autonomous methods to static vote assignments and to group consensus strategies. These results demonstrate that under high failure rates, dynamic vote reassignment shows great improvement over a static assignment of votes in terms of availability. In addition, many autonomous methods for determining a new vote assignment yield almost as much availability as a group consensus method and at the same time are faster and more flexible.Keywords
This publication has 14 references indexed in Scilit:
- Efficient dynamic voting algorithmsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2003
- Dynamic quorum adjustment for partitioned dataACM Transactions on Database Systems, 1987
- Dynamic votingPublished by Association for Computing Machinery (ACM) ,1987
- Consistency in a partitioned network: a surveyACM Computing Surveys, 1985
- Impossibility of distributed consensus with one faulty processJournal of the ACM, 1985
- Fail-stop processorsACM Transactions on Computer Systems, 1983
- Concurrency Control in Distributed Database SystemsACM Computing Surveys, 1981
- A Majority consensus approach to concurrency control for multiple copy databasesACM Transactions on Database Systems, 1979
- Weighted voting for replicated dataPublished by Association for Computing Machinery (ACM) ,1979
- Notes on data base operating systemsPublished by Springer Nature ,1978