Abstract
In this paper we consider the mutual exclusion problem on a multiple access channel. Mutual exclusion is one of the fundamental problems in distributed computing. In the classic version of this problem, n processes execute a concurrent program that occasionally triggers some of them to use shared resources, such as memory, communication channel, device, etc. The goal is to design a distributed algorithm to control entries and exits to/from the shared resource (also called a critical section), in such a way that at any time, there is at most one process accessing it. In our considerations, the shared resource is the shared communication channel itself (multiple access channel), and the main challenge arises because the channel is also the only mean of communication between these processes. We consider both the classic and a slightly weaker version of mutual exclusion, called $$\varepsilon $$?-mutual-exclusion, where for each period of a process staying in the critical section the probability that there is some other process in the critical section is at most $$\varepsilon $$?. We show that there are channel settings, where the classic mutual exclusion is not feasible even for randomized algorithms, while the $$\varepsilon $$?-mutual-exclusion is. In more relaxed channel settings, we prove an exponential gap between the makespan complexity of the classic mutual exclusion problem and its weaker $$\varepsilon $$?-exclusion version. We also show how to guarantee fairness of mutual exclusion algorithms, i.e., that each process that wants to enter the critical section will eventually succeed.
Highlights
In this paper, we consider randomized algorithms for mutual exclusion: one of the fundamental problems in distributed computing
To strengthen the quality of service guaranteed by mutual exclusion algorithms, the following property—stronger than no-deadlock—has been considered: No lockout: if a process p is in the entry section in round i, process p itself will enter the critical section eventually after round i
In many problems considered in this setting, one of the most important issues is to ensure that successful transmissions occur in the computation. These problems are often called selection problems. They differ from the mutual exclusion problem by the fact that they focus on successful transmissions within a bounded length period, while mutual exclusion provides control mechanism for dynamic and possibly unbounded executions
Summary
We consider randomized algorithms for mutual exclusion: one of the fundamental problems in distributed computing. To strengthen the quality of service guaranteed by mutual exclusion algorithms, the following property—stronger than no-deadlock—has been considered: No lockout: if a process p is in the entry section in round i, process p itself will enter the critical section eventually after round i. The makespan of an execution of a given deterministic mutual exclusion algorithm is defined as the maximum length of a time interval in which there is some process in the entry section and there is no process in the critical section. For a given mutual exclusion algorithm Alg and adversarial strategy P, we define L(Alg, P) as a random variable equal to the maximum length of a contiguous time interval in which there is some process in the entry section and there is no process in the critical section in an execution of Alg run against fixed strategy P. In the computation of the (expected) makespan, we neglect non-admissible executions
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have