This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
A Token-Based Distributed Group Mutual Exclusion Algorithm with Quorums
September 2008 (vol. 19 no. 9)
pp. 1153-1166
The group mutual exclusion problem is a generalization of mutual exclusion problem such that a set of processes in the same group can enter critical section simultaneously. In this paper, we propose a distributed algorithm for the group mutual exclusion problem in asynchronous message passing distributed systems. Our algorithm is based on tokens, and a process that obtains a token can enter critical section. For reducing message complexity, it uses coterie as a communication structure when a process sends a request messages. Informally, coterie is a set of quorums, each of which is a subset of the process set, and any two quorums share at least one process. The message complexity of our algorithm is $O(|Q|)$ in the worst case, where $|Q|$ is a quorum size that the algorithm adopts. Performance of the proposed algorithm is presented by analysis and discrete event simulation. Especially, the proposed algorithm achieves high concurrency, which is a performance measure for the number of processes that can be in critical section simultaneously.

[1] Y.-J. Joung, “Asynchronous Group Mutual Exclusion,” Distributed Computing, vol. 13, pp. 189-206, 2000.
[2] Y.-J. Joung, “The Congenial Talking Philosophers Problem in Computer Networks,” Distributed Computing, vol. 15, pp. 155-175, 2002.
[3] Y.-J. Joung, “Quorum-Based Algorithms for Group Mutual Exclusion,” IEEE Trans. Parallel and Distributed Systems, vol. 14, no. 5, pp. 463-476, May 2003.
[4] H. Garcia-Molina and D. Barbara, “How to Assign Votes in a Distributed System?” J. ACM, vol. 32, no. 4, pp. 841-860, Oct. 1985.
[5] N. Mittal and P.K. Mohan, “A Priority-Based Distributed Group Mutual Exclusion Algorithm When Group Access Is Non-Uniform,” J. Parallel and Distributed Computing, vol. 67, pp. 797-815, 2007.
[6] R. Atreya, N. Mittal, and S. Peri, “A Quorum-Based Group Mutual Exclusion Algorithm for a Distributed System with Dynamic Group Set,” IEEE Trans. Parallel and Distributed Systems, vol. 18, no. 10, pp. 1345-1360, Oct. 2007.
[7] M. Mizuno, M.L. Neilsen, and R. Rao, “A Token-Based Distributed Mutual Exclusion Algorithm Based on Quorum Agreements,” Proc. 11th IEEE Int'l Conf. Distributed Computing Systems (ICDCS '91), pp. 361-368, 1991.
[8] M. Maekawa, “A $\sqrt{N}$ Algorithm for Mutual Exclusion in Decentralized Systems,” ACM Trans. Computer Systems, vol. 3, no. 2, pp. 145-159, Mar. 1985.
[9] Y.-J. Joung, “Quorum-Based Algorithms for Group Mutual Exclusion,” Proc. 15th Int'l Conf. Distributed Computing (DISC '01), pp. 16-32, 2001.
[10] H. Kakugawa, S. Fujita, M. Yamashita, and T. Ae, “A Distributed $k\hbox{-}{\rm Mutual}$ Exclusion Algorithm Using $k\hbox{-}{\rm Coterie}$ ,” Information Processing Letters, vol. 49, no. 2, pp. 213-218, 1994.
[11] H. Kakugawa and M. Yamashita, “Local Coteries and a Distributed Resource Allocation Algorithm,” Trans. Information Processing Soc. Japan, vol. 37, no. 8, pp. 1487-1496, 1996.
[12] D. Malkhi, M.K. Reiter, and R.N. Wright, “Probabilistic Quorum Systems,” Proc. 16th Ann. ACM Symp. Principles of Distributed Computing (PODC '97), pp. 267-273, 1997.
[13] K. Miura, T. Tagawa, and H. Kakugawa, “A Quorum-Based Protocol for Searching Objects in Peer-to-Peer Networks,” IEEE Trans. Parallel and Distributed Systems, vol. 17, no. 1, pp. 25-37, Jan. 2006.
[14] R. Atreya and N. Mittal, “A Dynamic Group Mutual Exclusion Algorithm Using Surrogate Quorums,” Proc. 25th IEEE Int'l Conf. Distributed Computing Systems (ICDCS '05), pp. 251-260, 2005.
[15] D. Barbara and H. Garcia-Molina, “The Reliability of Voting Mechanisms,” IEEE Trans. Computers, vol. 36, no. 10, pp.1197-1208, Oct. 1987.
[16] S.-T. Huang, J.-R. Jiang, and Y.-C. Kuo, “$k\hbox{-}{\rm Coteries}$ for Fault-Tolerant $k$ Entries to a Critical Section,” Proc. 13th IEEE Int'l Conf. Distributed Computing Systems (ICDCS '93), pp. 362-369, 1993.
[17] Y. Manabe, R. Baldoni, M. Raynal, and S. Aoyagi, “$k\hbox{-}{\rm Arbiter}$ : A Safe and General Scheme for $h\hbox{-}{\rm out}\hbox{-}{\rm of}\hbox{-}k$ Mutual Exclusion,” Theoretical Computer Science, vol. 193, no. 1/2, pp. 97-112, Feb. 1998.
[18] G. Ricart and A.K. Agrawala, “An Optimal Algorithm for Mutual Exclusion in Computer Network,” Comm. ACM, vol. 24, no. 1, pp.9-17, Jan. 1981.
[19] J.W. Havender, “Avoiding Deadlocks in Multi-Tasking Systems,” IBM Systems J., vol. 7, no. 2, pp. 78-84, 1968.
[20] I. Suzuki and T. Kasami, “A Distributed Mutual Exclusion Algorithm,” ACM Trans. Computer Systems, vol. 3, no. 4, pp.344-349, Nov. 1985.

Index Terms:
Distributed systems, Distributed data structures, Mutual exclusion, Synchronization
Citation:
Hirotsugu Kakugawa, Sayaka Kamei, Toshimitsu Masuzawa, "A Token-Based Distributed Group Mutual Exclusion Algorithm with Quorums," IEEE Transactions on Parallel and Distributed Systems, vol. 19, no. 9, pp. 1153-1166, Sept. 2008, doi:10.1109/TPDS.2008.22
Usage of this product signifies your acceptance of the Terms of Use.