TY - JOUR

T1 - Consensus and mutual exclusion in a multiple access channel

AU - Czyzowicz, Jurek

AU - Gasieniec, Leszek

AU - Kowalski, Dariusz R.

AU - Pelc, Andrzej

N1 - Funding Information:
J. Czyzowicz, L. Gasieniec, and D. Kowalski were partly supported by NSERC discovery grant, the Royal Society International Joint Project IJP—2007/R1, and the Engineering and Physical Sciences Research Council [grant number EP/G023018/1], respectively, and A. Pelc was supported by NSERC discovery grant and by the Research Chair in Distributed Computing at the Université du Québec en Outaouais. A preliminary version of this work appeared in the Proc. 23rd International Symposium on Distributed Computing (DISC), 2009, Lecture Notes in Computer Science, vol. 5805, pp. 512-526.

PY - 2011/3/17

Y1 - 2011/3/17

N2 - We consider deterministic feasibility and time complexity of two fundamental tasks in distributed computing: consensus and mutual exclusion. Processes have different labels and communicate through a multiple access channel. The adversary wakes up some processes in possibly different rounds. In any round, every awake process either listens or transmits. The message of a process i is heard by all other awake processes, if i is the only process to transmit in a given round. If more than one process transmits simultaneously, there is a collision and no message is heard. We consider three characteristics that may or may not exist in the channel: collision detection (listening processes can distinguish collision from silence), the availability of a global clock showing the round number, and the knowledge of the number n of all processes. If none of the above three characteristics is available in the channel, we prove that consensus and mutual exclusion are infeasible; if at least one of them is available, both tasks are feasible, and we study their time complexity. Collision detection is shown to cause an exponential gap in complexity: if it is available, both tasks can be performed in time logarithmic in n, which is optimal, and without collision detection both tasks require linear time. We then investigate both consensus and mutual exclusion in the absence of collision detection, but under alternative presence of the two other features. With global clock, we give an algorithm whose time complexity linearly depends on n and on the wake-up time, and an algorithm whose complexity does not depend on the wake-up time and differs from the linear lower bound only by a factor O(log2 n). If n is known, we also show an algorithm whose complexity differs from the linear lower bound only by a factor O(log2 n).

AB - We consider deterministic feasibility and time complexity of two fundamental tasks in distributed computing: consensus and mutual exclusion. Processes have different labels and communicate through a multiple access channel. The adversary wakes up some processes in possibly different rounds. In any round, every awake process either listens or transmits. The message of a process i is heard by all other awake processes, if i is the only process to transmit in a given round. If more than one process transmits simultaneously, there is a collision and no message is heard. We consider three characteristics that may or may not exist in the channel: collision detection (listening processes can distinguish collision from silence), the availability of a global clock showing the round number, and the knowledge of the number n of all processes. If none of the above three characteristics is available in the channel, we prove that consensus and mutual exclusion are infeasible; if at least one of them is available, both tasks are feasible, and we study their time complexity. Collision detection is shown to cause an exponential gap in complexity: if it is available, both tasks can be performed in time logarithmic in n, which is optimal, and without collision detection both tasks require linear time. We then investigate both consensus and mutual exclusion in the absence of collision detection, but under alternative presence of the two other features. With global clock, we give an algorithm whose time complexity linearly depends on n and on the wake-up time, and an algorithm whose complexity does not depend on the wake-up time and differs from the linear lower bound only by a factor O(log2 n). If n is known, we also show an algorithm whose complexity differs from the linear lower bound only by a factor O(log2 n).

KW - Collision detection

KW - Consensus

KW - Multiple access channel

KW - Mutual exclusion

UR - http://www.scopus.com/inward/record.url?scp=79952707663&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=79952707663&partnerID=8YFLogxK

U2 - 10.1109/TPDS.2010.162

DO - 10.1109/TPDS.2010.162

M3 - Article

AN - SCOPUS:79952707663

VL - 22

SP - 1092

EP - 1104

JO - IEEE Transactions on Parallel and Distributed Systems

JF - IEEE Transactions on Parallel and Distributed Systems

SN - 1045-9219

IS - 7

M1 - 5567097

ER -