Using Maekawa’s Algorithm to Perform Distributed Mutual Exclusion in Quorums (original) (raw)

A Distributed Deadlock-Free Quorum-Based Algorithm for Mutual Exclusion

Quorum-based mutual exclusion algorithms enjoy many advantages such as low message complexity and high failure resiliency. The use of quorums is a well-known approach to achieving mutual exclusion in distributed environments. Several distributed based quorum mutual exclusion was presented. The number of messages required by these algorithms require between 3(sqrt of n) and 5(sqrt of n) , where n is the size of under- lying distributed system, and the deadlock can occur between requesting processes. In this paper, we present a quorum-based distributed mutual exclusion algorithm, free deadlock. Every group is organized as a logical ring of (sqrt of n) processes. A requesting process sends its request to its successor on the logical ring. When a process receives its own request after one round, it enters in the critical section. The algorithm requires 2 (sqrt of n -1) messages.

Comparative Study of Mutual Exclusion Algorithms in Distributed Systems

Mutual Exclusion is an important phenomenon in distributed systems. In this paper, we analyze and compare various mutual exclusion algorithms in distributed systems. In permission based mutual exclusion process waits for permission from other processes to enter into a critical section. In token based mutual exclusion, a special message called token is passed over the system and process holding the token can enter into the critical section. We present a comparative study of quorum based, token ring token asking and multiple token algorithms for mutual exclusion in distributed systems.

A Token-Based Distributed Group Mutual Exclusion Algorithm with Quorums

IEEE Transactions on Parallel and Distributed Systems, 2008

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.

Two new quorum based algorithms for distributed mutual exclusion

Proceedings of 17th International Conference on Distributed Computing Systems

Two novel suboptimal algorithms for mutual exclusion in distributed systems are p r esented. One is based on the modi cation of Maekawa's grid based quorum scheme. The size of quorums is approximately p 2 p N where N is the number of sites in a network, as compared t o 2 p N of the original method. The method i s simple and geometrically evident. The second one is based on the idea o f d i e r ence sets in combinatorial theory. The resulting scheme is very close to optimal in terms of quorum size.

A quorum-based extended group mutual exclusion algorithm without unnecessary blocking

2004

This paper presents a quorum-based distributed algorithm for the extended group mutual exclusion problem. In the group mutual exclusion problem, multiple processes can enter a critical section simultaneously if they belong to the same group. Processes in different groups cannot enter a critical section at the same time. In the extended group mutual exclusion, each process is a member of multiple groups at the same time. Each process can select which group it belongs at making a request. The algorithm for the group mutual exclusion cannot be applied for this extended problem, since there can be a case that two processes are prevented from entering a critical section simultaneously even when they are capable of doing so. We call the above situation unnecessary blocking. We present a quorum-based algorithm that prevents unnecessary blocking and show its correctness proof. 1 This definition allows that when a process makes a new request after using CD , the new request might be for CD .

A new voting-based mutual exclusion algorithm for distributed systems

2013 Nirma University International Conference on Engineering (NUiCONE), 2013

Concurrency control for a distributed system had been always challenging and is getting even more critical with the increasing sophistication of such systems. There are efficient approaches reported in the existing literature that selects one candidate process from many for allowing it to enter its critical section (CS) on the basis of the number of votes received by the processes. A simple principle that a process that gets majority of the total number of votes is only to be allowed for CS ensures safety for such an algorithm as no two processes can earn majority of the total number of polls. However, this may lead to a live-lock situation where no single process reaches the magic number of majority votes. In this paper, a new voting-based algorithm has been proposed to select a process from all the candidates for CS. The proposed algorithm helps increasing the availability of the distributed system.

Concurrency Control in Distributed System Using Mutual Exclusion

Studies in Systems, Decision and Control

The series "Studies in Systems, Decision and Control" (SSDC) covers both new developments and advances, as well as the state of the art, in the various areas of broadly perceived systems, decision making and control-quickly, up to date and with a high quality. The intent is to cover the theory, applications, and perspectives on the state of the art and future developments relevant to systems, decision making, control, complex processes and related areas, as embedded in the fields of engineering, computer science, physics, economics, social and life sciences, as well as the paradigms and methodologies behind them. The series contains monographs, textbooks, lecture notes and edited volumes in systems, decision making and control spanning the areas of Cyber

An Improved Token-Based and Starvation Free Distributed Mutual Exclusion Algorithm

Journal of Computer & Robotics, 2018

Distributed mutual exclusion is a fundamental problem of distributed systems that coordinates the access to critical shared resources. It concerns with how the various distributed processes access to the shared resources in a mutually exclusive manner. This paper presents fully distributed improved token based mutual exclusion algorithm for distributed system. In this algorithm, a process which has owing token, could enter to its critical section. The processes communicate to each other in an asynchronous message passing manner. We assume the distributed processes are organized in a wraparound two dimensional array. Also, the communication graph of the network is supposed to be a complete graph. The proposed algorithm uses three types of messages, namely ReqMsg, InfoMsg and RelMsg. Beside token-holding node, there are some nodes, we call them informed-nodes, which can know token-holding node and transmit request message to it directly. The number of messages, which are exchanged per each critical section entrance, is a key parameter to avoid posing additional overhead to the distributed system. In this paper, we obtain to 3√ − 1 messages per critical section access where N is the number of nodes in the system. The proposed algorithm outperforms other token based algorithms whilst fairness is kept and the proposed algorithm is starvation free.

A Review of various Mutual Exclusion Algorithms in Distributed Environment

In computer science, mutual exclusion (MUTEX) refers to a way of making sure that if one process is using shared modifiable data or resources then the other processes will be excluded from doing the same thing at the same time. A number of mutual exclusion algorithms are available in the literature, with different performance metrics and with different techniques. The Selection for a " good " mutual exclusion algorithm is a key point. These mutual exclusion algorithms can be broadly classified into token and non-token based algorithm. This paper surveys the algorithms which have been reported in the literature for Mutual exclusion in distributed systems and their comparison.