A Quorum-Based Group Mutual Exclusion Algorithm for a Distributed System with Dynamic Group Set

The group mutual exclusion problem extends the traditional mutual exclusion problem by associating a type (or a group) with each critical section. In this problem, processes requesting critical sections of the same type can execute their critical sections concurrently. However, processes requesting critical sections of different types must execute their critical sections in a mutually exclusive manner. We present a distributed algorithm for solving the group mutual exclusion problem based on the notion of surrogate-quorum. Intuitively, our algorithm uses the quorum that has been successfully locked by a request as a surrogate to service other compatible requests for the same type of critical section. Unlike the existing quorum-based algorithms for group mutual exclusion, our algorithm achieves a low message complexity of O(q) and a low (amortized) bit-message complexity of O(bqr), where q is the maximum size of a quorum, b is the maximum number of processes from which a node can receive critical section requests, and r is the maximum size of a request while maintaining both synchronization delay and waiting time at two message hops. As opposed to some existing quorum-based algorithms, our algorithm can adapt without performance penalties to dynamic changes in the set of groups. Our simulation results indicate that our algorithm outperforms the existing quorum-based algorithms for group mutual exclusion by as much as 45 percent in some cases. We also discuss how our algorithm can be extended to satisfy certain desirable properties such as concurrent entry and unnecessary blocking freedom.

[1]  Allan Borodin,et al.  Resource allocation with immunity to limited process failure , 1979, 20th Annual Symposium on Foundations of Computer Science (sfcs 1979).

[2]  Krishnamurthy Vidyasankar A highly concurrent group mutual l-exclusion algorithm0 , 2002, PODC '02.

[3]  Yuh-Jzer Joung,et al.  Asynchronous group mutual exclusion , 2000, Distributed Computing.

[4]  Ajoy Kumar Datta,et al.  Token based group mutual exclusion for asynchronous rings , 2001, Proceedings 21st International Conference on Distributed Computing Systems.

[5]  Friedemann Mattern,et al.  Global Quiescence Detection Based on Credit Distribution and Recovery , 1989, Inf. Process. Lett..

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

[7]  Ajoy Kumar Datta,et al.  Group mutual exclusion in tree networks , 2002, Ninth International Conference on Parallel and Distributed Systems, 2002. Proceedings..

[8]  Ajoy Kumar Datta,et al.  Group Mutual Exclusion in Token Rings , 2005, Comput. J..

[9]  Vassos Hadzilacos A note on group mutual exclusion , 2001, PODC '01.

[10]  Edsger W. Dijkstra,et al.  Hierarchical ordering of sequential processes , 1971, Acta Informatica.

[11]  Yuh-Jzer Joung Quorum-Based Algorithms for Group Mutual Exclusion , 2001, DISC.

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

[13]  Neeraj Mittal,et al.  A Dynamic Group Mutual Exclusion Algorithm Using Surrogate-Quorums , 2005, 25th IEEE International Conference on Distributed Computing Systems (ICDCS'05).

[14]  Edsger W. Dijkstra,et al.  Solution of a problem in concurrent programming control , 1965, CACM.

[15]  R. Stephenson A and V , 1962, The British journal of ophthalmology.

[16]  K. Mani Chandy,et al.  The drinking philosophers problem , 1984, ACM Trans. Program. Lang. Syst..

[17]  Yuh-Jzer Joung,et al.  The congenial talking philosophers problem in computer networks , 2002, Distributed Computing.

[18]  Yoshifumi Manabe,et al.  A quorum-based extended group mutual exclusion algorithm without unnecessary blocking , 2004, Proceedings. Tenth International Conference on Parallel and Distributed Systems, 2004. ICPADS 2004..

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

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

[21]  Krishnamurthy Vidyasankar,et al.  A Highly Concurrent Group Mutual L-exclusion Algorithm , 2006, Parallel Process. Lett..

[22]  Yuh-Jzer Joung,et al.  Asynchronous group mutual exclusion in ring networks , 1999, Proceedings 13th International Parallel Processing Symposium and 10th Symposium on Parallel and Distributed Processing. IPPS/SPDP 1999.

[23]  K. Mani Chandy,et al.  Parallel program design - a foundation , 1988 .

[24]  Krishnamurthy Vidyasankar,et al.  A simple group mutual l-exclusion algorithm , 2003, Inf. Process. Lett..

[25]  Mark Moir,et al.  A Simple Local-Spin Group Mutual Exclusion Algorithm , 2001, IEEE Trans. Parallel Distributed Syst..

[26]  Sayaka Kamei,et al.  A quorum-based distributed algorithm for group mutual exclusion , 2003, Proceedings of the Fourth International Conference on Parallel and Distributed Computing, Applications and Technologies.

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