A tree-based distributed algorithm for the K-entry critical section problem

We present a token-based algorithm for solving the K-entry critical section problem. Based on Raymond's (1989) tree-based approach, we regard the nodes as being arranged in a directed tree structure, and all messages used in the algorithm are sent along the directed edges of the tree. There are K tokens in the system; we use a bag structure at each node to record the collection of the neighboring nodes, possibly with multiple occurrences of the same node, through which the K tokens can be located. As a result, there are K paths from each node leading to the K tokens in the system. Our algorithm requires at most 2 KD messages for a node to enter the CS, where D is the diameter of the tree. Therefore, when the diameter D is much smaller than N, the number of nodes, e.g. D=O(1) as in a star or D=O(logN) as in a binary tree, our algorithm's upper bound on the number of messages per CS is smaller than those previously reported.

[1]  Ashok K. Agrawala,et al.  An optimal algorithm for mutual exclusion in computer networks , 1981, CACM.

[2]  Mukesh Singhal A Taxonomy of Distributed Mutual Exclusion , 1993, J. Parallel Distributed Comput..

[3]  Masaaki Mizuno,et al.  A token based distributed mutual exclusion algorithm based on quorum agreements , 1991, [1991] Proceedings. 11th International Conference on Distributed Computing Systems.

[4]  Ichiro Suzuki,et al.  A distributed mutual exclusion algorithm , 1985, TOCS.

[5]  Mukesh Singhal,et al.  A fault tolerant algorithm for distributed mutual exclusion , 1990, Proceedings Ninth Symposium on Reliable Distributed Systems.

[6]  Michel Raynal A simple taxonomy for distributed mutual exclusion algorithms , 1991, OPSR.

[7]  Kerry Raymond A Distributed Algorithm for Multiple Entries to a Critical Section , 1989, Inf. Process. Lett..

[8]  Kerry Raymond,et al.  A tree-based algorithm for distributed mutual exclusion , 1989, TOCS.

[9]  Pradip K. Srimani,et al.  Another Distributed Algorithm for Multiple Entries to a Critical Section , 1992, Inf. Process. Lett..

[10]  Leslie Lamport,et al.  Time, clocks, and the ordering of events in a distributed system , 1978, CACM.

[11]  Divyakant Agrawal,et al.  An efficient and fault-tolerant solution for distributed mutual exclusion , 1991, TOCS.

[12]  Hector Garcia-Molina,et al.  How to assign votes in a distributed system , 1985, JACM.

[13]  Mamoru Maekawa,et al.  A N algorithm for mutual exclusion in decentralized systems , 1985, TOCS.

[14]  Masaaki Mizuno,et al.  A DAG-based algorithm for distributed mutual exclusion , 1991, [1991] Proceedings. 11th International Conference on Distributed Computing Systems.

[15]  Robert H. Thomas,et al.  A Majority consensus approach to concurrency control for multiple copy databases , 1979, ACM Trans. Database Syst..

[16]  David K. Gifford,et al.  Weighted voting for replicated data , 1979, SOSP '79.

[17]  Dean Isaacson,et al.  Markov Chains: Theory and Applications , 1976 .