Randomized mutual exclusion on a multiple access channel

Marcin Bienkowski, Marek Klonowski, Miroslaw Korzeniowski, Dariusz R. Kowalski

Research output: Contribution to journalArticle

3 Scopus citations

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 ε-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 ε. We show that there are channel settings, where the classic mutual exclusion is not feasible even for randomized algorithms, while the ε-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 ε-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.

Original languageEnglish (US)
Pages (from-to)341-359
Number of pages19
JournalDistributed Computing
Volume29
Issue number5
DOIs
StatePublished - Oct 1 2016
Externally publishedYes

    Fingerprint

Keywords

  • Distributed algorithms
  • Multiple access channel
  • Mutual exclusion

ASJC Scopus subject areas

  • Theoretical Computer Science
  • Hardware and Architecture
  • Computer Networks and Communications
  • Computational Theory and Mathematics

Cite this