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.
Publisher Copyright:
© 2011 IEEE.
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
SN - 1045-9219
VL - 22
SP - 1092
EP - 1104
JO - IEEE Transactions on Parallel and Distributed Systems
JF - IEEE Transactions on Parallel and Distributed Systems
IS - 7
M1 - 5567097
ER -