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 and general purpose, and can be used for any application 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.
- 1 EL ABBADI, A., AND TOUEO, S. Availability in partitioned replicated databases. In Proceedings of the Fifth ACM SIGACT-SIGMOD Symposium on Principles of Database Systems (Mar. 1986). ACM, New York, 1986, pp. 240-251. Google Scholar
- 2 BARBARA, D., AND GARCIA-MOLINA, H. Optimizing the reliability provided by voting mechanisms. In Proceedings of the Fourth International Conference on Distributed Computing Systems (San Francisco, Oct. 1984). IEEE, New York, 1984, pp. 340-346.Google Scholar
- 3 BERNSTEIN, P., AND GOODMAN, N. Concurrency control in distributed database systems. ACM Comput. Surv. 13, 2 (June 1981), 185-221. Google Scholar
- 4 CRISTIAN, F., AGHILI, H., STRONG, R., AND DOLEV, D. Atomic broadcast: From simple message diffusion to Byzantine agreement. In Proceedings of the Fifteenth International Symposium on Fault-Tolerant Computing (Ann Arbor, Mich., June 1985). IEEE, New York, 1985.Google Scholar
- 5 DAVCEV, D., AND BURKHARD, W. Consistency and recovery control for replicated files. In Proceedings of the Tenth ACM Symposium on Operating Systems Principles (Dec. 1985). ACM, New York, 1985, pp. 85-96. Google Scholar
- 6 DAVIDSON, S., GARCIA-MOLINA, H., AND SKEEN, D. Consistency in partitioned networks. ACM Comput. Surv. 17, 3 (Sept. 1985), 341-370. Google Scholar
- 7 FISCHER, M. J., LYNCH, N. A., AND PATERSON, M.S. Impossibility of distributed consensus with one faulty process. J. ACM 32, 2 (Apr. 1985), 374-382. Google Scholar
- 8 GARCIA-MOLINA, H. Elections in a distributed computing system. IEEE Trans. Comput. C-31, 1 (Jan. 1982), 48-59.Google Scholar
- 9 GARCIA-MOLINA, H. Reliability issues for fully replicated distributed databases. IEEE Comput. 15, 9 (Sept. 1982), 34-42.Google Scholar
- 10 GIFFORD, D.K. Weighted voting for replicated data. In Proceedings of the Seventh Symposium on Operating Systems Principles (Pacific Grove, Calif., Dec. 1979). ACM, New York, 1979, pp. 150-162. Google Scholar
- 11 GRAY, J.N. Notes on database operating sytems. In Operating Systems: An Advanced Course, Springer-Verlag, New York, 1978, pp. 393-481. Google Scholar
- 12 HERLIHY, M. Dynamic quorum adjustment for partitioned data. A CM Trans. Database Syst. 12, 2 (June 1987), 170-194. Google Scholar
- 13 JAJODIA, S., AND MUTCHLER, D. Dynamic voting. In Proceedings of the ACM SIGMOD International Conference on Management of Data (May 1987). ACM, New York, 1987, pp. 227-238. Google Scholar
- 14 JAJODIA, S., AND MUTCHLER, D. Enhancements to the voting algorithm. In Proceedings of the Thirteenth International Conference on Very Large Data Bases (Brighton, Eng., Sept. 1987). IEEE, New York, 1987. Google Scholar
- 15 JAJODIA, S., AND MUTCHLER, D. Integrating static and dynamic voting protocols to enhance file availability. In Proceedings of the Fourth International Conference on Data Engineering (Los Angeles, Feb. 1988). IEEE, New York, 1988, pp. 144-153. Google Scholar
- 16 PARIS, J.F. Voting with witnesses: A consistency scheme for replicated files. In Proceedings of the Sixth International Conference on Distributed Computing Systems (Cambridge, Mass., May 1986). IEEE, New York, 1986, pp. 606-612.Google Scholar
- 17 PARIS, J. F., AND LON6, D. D.E. Efficient dynamic voting algorithms. In Proceedings of the Fourth International Conference on Data Engineering (Los Angeles, Feb. 1988). IEEE, New York, 1988, pp. 268-275. Google Scholar
- 18 SCHLICHTING, R. D., AND SCHNEIDER, F.B. Fail-stop processors: An approach to designing fault-tolerant computing systems. ACM Trans. Comput. Syst. 1, 3 (1983), 222-238. Google Scholar
- 19 THOMAS, R.H. A majority consensus approach to concurrency control. ACM Trans. Database Syst. 4, 2 (June 1979), 180-209. Google Scholar
Index Terms
- Increasing availability under mutual exclusion constraints with dynamic vote reassignment
Recommendations
Fair group mutual exclusion
PODC '03: Proceedings of the twenty-second annual symposium on Principles of distributed computingIn the group mutual exclusion problem [6], which generalizes mutual exclusion [2], a process chooses a session when it requests entry to the Critical Section. A group mutual exclusion algorithm must ensure that the mutual exclusion property holds: If ...
A survey of permission-based distributed mutual exclusion algorithms
The problem of mutual exclusion in distributed systems has attracted considerable attention over the last two decades. The mutual exclusion problem requires that, at a time, only one of the contending processes be allowed to enter its critical section (...
Distributed mutual exclusion on hypercubes
Hypercube have been commercially available in the past few years to their high degree of connectivity, symmetry, and low degree of diameter. In this paper, we analyse the performance in number of messages on d-dimensional hypercube, for two groups of ...
Comments