Local Mutual Exclusion for Dynamic, Anonymous, Bounded Memory Message Passing Systems

Authors Joshua J. Daymude , Andréa W. Richa , Christian Scheideler



PDF
Thumbnail PDF

File

LIPIcs.SAND.2022.12.pdf
  • Filesize: 0.84 MB
  • 19 pages

Document Identifiers

Author Details

Joshua J. Daymude
  • Biodesign Center for Biocomputing, Security and Society, Arizona State University, Tempe, AZ, USA
Andréa W. Richa
  • School of Computing and Augmented Intelligence, Arizona State University, Tempe, AZ, USA
Christian Scheideler
  • Department of Computer Science, Universität Paderborn, Germany

Cite AsGet BibTex

Joshua J. Daymude, Andréa W. Richa, and Christian Scheideler. Local Mutual Exclusion for Dynamic, Anonymous, Bounded Memory Message Passing Systems. In 1st Symposium on Algorithmic Foundations of Dynamic Networks (SAND 2022). Leibniz International Proceedings in Informatics (LIPIcs), Volume 221, pp. 12:1-12:19, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2022)
https://doi.org/10.4230/LIPIcs.SAND.2022.12

Abstract

Mutual exclusion is a classical problem in distributed computing that provides isolation among concurrent action executions that may require access to the same shared resources. Inspired by algorithmic research on distributed systems of weakly capable entities whose connections change over time, we address the local mutual exclusion problem that tasks each node with acquiring exclusive locks for itself and the maximal subset of its "persistent" neighbors that remain connected to it over the time interval of the lock request. Using the established time-varying graphs model to capture adversarial topological changes, we propose and rigorously analyze a local mutual exclusion algorithm for nodes that are anonymous and communicate via asynchronous message passing. The algorithm satisfies mutual exclusion (non-intersecting lock sets) and lockout freedom (eventual success with probability 1) under both semi-synchronous and asynchronous concurrency. It requires 𝒪(Δ) memory per node and messages of size Θ(1), where Δ is the maximum number of connections per node. We conclude by describing how our algorithm can implement the pairwise interactions assumed by population protocols and the concurrency control operations assumed by the canonical amoebot model, demonstrating its utility in both passively and actively dynamic distributed systems.

Subject Classification

ACM Subject Classification
  • Theory of computation → Distributed algorithms
  • Theory of computation → Concurrency
  • Software and its engineering → Mutual exclusion
Keywords
  • Mutual exclusion
  • dynamic networks
  • message passing
  • concurrency

Metrics

  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    0
    PDF Downloads

References

  1. Karine Altisen, Stéphane Devismes, Anaïs Durand, Colette Johnen, and Franck Petit. Self-stabilizing Systems in Spite of High Dynamics. In International Conference on Distributed Computing and Networking 2021, pages 156-165, 2021. URL: https://doi.org/10.1145/3427796.3427838.
  2. Marta Andrés Arroyo, Sarah Cannon, Joshua J. Daymude, Dana Randall, and Andréa W. Richa. A stochastic approach to shortcut bridging in programmable matter. Natural Computing, 17(4):723-741, 2018. URL: https://doi.org/10.1007/s11047-018-9714-x.
  3. Dana Angluin, James Aspnes, Zoë Diamadi, Michael J. Fischer, and René Peralta. Computation in networks of passively mobile finite-state sensors. Distributed Computing, 18(4):235-253, 2006. URL: https://doi.org/10.1007/s00446-005-0138-3.
  4. Hagit Attiya, Alex Kogan, and Jennifer L. Welch. Efficient and Robust Local Mutual Exclusion in Mobile Ad Hoc Networks. IEEE Transactions on Mobile Computing, 9(3):361-375, 2010. URL: https://doi.org/10.1109/TMC.2009.137.
  5. Baruch Awerbuch, Michael Luby, Andrew V. Goldberg, and Serge A. Plotkin. Network decomposition and locality in distributed computation. In 30th Annual Symposium on Foundations of Computer Science, pages 364-369, 1989. URL: https://doi.org/10.1109/SFCS.1989.63504.
  6. Roberto Baldoni, Antonino Virgillito, and Roberto Petrassi. A distributed mutual exclusion algorithm for mobile ad-hoc networks. In Proceedings ISCC 2002 Seventh International Symposium on Computers and Communications, pages 539-544, 2002. URL: https://doi.org/10.1109/ISCC.2002.1021727.
  7. Mahfoud Benchaïba, Abdelmadjid Bouabdallah, Nadjib Badache, and Mohamed Ahmed-Nacer. Distributed Mutual Exclusion Algorithms in Mobile Ad Hoc Networks: An Overview. ACM SIGOPS Operating Systems Review, 38(1):74-89, 2004. URL: https://doi.org/10.1145/974104.974111.
  8. Michael A. Bender, Martin Farach-Colton, Simai He, Bradley C. Kuszmaul, and Charles E. Leiserson. Adversarial Contention Resolution for Simple Channels. In Proceedings of the Seventeenth Annual ACM Symposium on Parallelism in Algorithms and Architectures, pages 325-332, 2005. URL: https://doi.org/10.1145/1073970.1074023.
  9. Federico Cali, Marco Conti, and Enrico Gregori. IEEE 802.11 Protocol: Design and Performance Evaluation of an Adaptive Backoff Mechanism. IEEE Journal on Selected Areas in Communications, 18(9):1774-1786, 2000. URL: https://doi.org/10.1109/49.872963.
  10. John I. Capetanakis. Tree Algorithms for Packet Broadcast Channels. IEEE Transactions on Information Theory, 25(5):505-515, 1979. URL: https://doi.org/10.1109/TIT.1979.1056093.
  11. Arnaud Casteigts. A Journey through Dynamic Networks (with Excursions), 2018. HDR, available online at URL: https://hal.archives-ouvertes.fr/tel-01883384/.
  12. Arnaud Casteigts, Paola Flocchini, Walter Quattrociocchi, and Nicola Santoro. Time-Varying Graphs and Dynamic Networks. International Journal of Parallel, Emergent and Distributed Systems, 27(5):387-408, 2012. URL: https://doi.org/10.1080/17445760.2012.668546.
  13. Cameron Chalk, Austin Luchsinger, Eric Martinez, Robert Schweller, Andrew Winslow, and Tim Wylie. Freezing Simulates Non-freezing Tile Automata. In DNA Computing and Molecular Programming, volume 11145 of Lecture Notes in Computer Science, pages 155-172, 2018. URL: https://doi.org/10.1007/978-3-030-00030-1_10.
  14. Arjun Chandrasekhar, Deborah M. Gordon, and Saket Navlakha. A distributed algorithm to maintain and repair the trail networks of arboreal ants. Scientific Reports, 8(1):9297, 2018. URL: https://doi.org/10.1038/s41598-018-27160-3.
  15. Yu Chen and Jennifer L. Welch. Self-stabilizing dynamic mutual exclusion for mobile ad hoc networks. Journal of Parallel and Distributed Computing, 65(9):1072-1089, 2005. URL: https://doi.org/10.1016/j.jpdc.2005.03.009.
  16. Artur Czumaj and Andrzej Lingas. On Truly Parallel Time in Population Protocols. Available online at https://arxiv.org/abs/2108.11613, 2021.
  17. Joshua J. Daymude, Andréa W. Richa, and Christian Scheideler. The Canonical Amoebot Model: Algorithms and Concurrency Control. In 35th International Symposium on Distributed Computing (DISC 2021), volume 209 of Leibniz International Proceedings in Informatics (LIPIcs), pages 20:1-20:19, 2021. URL: https://doi.org/10.4230/LIPIcs.DISC.2021.20.
  18. Michael J. Demmer and Maurice P. Herlihy. The arrow distributed directory protocol. In Shay Kutten, editor, Distributed Computing, volume 1499 of Lecture Notes in Computer Science, pages 119-133, 1998. URL: https://doi.org/10.1007/BFb0056478.
  19. Zahra Derakhshandeh, Shlomi Dolev, Robert Gmyr, Andréa W. Richa, Christian Scheideler, and Thim Strothmann. Amoebot - a new model for programmable matter. In Proceedings of the 26th ACM Symposium on Parallelism in Algorithms and Architectures, pages 220-222, 2014. URL: https://doi.org/10.1145/2612669.2612712.
  20. E. W. Dijkstra. Solution of a problem in concurrent programming control. Communications of the ACM, 8(9):569, 1965. URL: https://doi.org/10.1145/365559.365617.
  21. Yuval Emek and Roger Wattenhofer. Stone age distributed computing. In Proceedings of the 2013 ACM Symposium on Principles of Distributed Computing, pages 137-146, Montréal, Québec, Canada, 2013. ACM. URL: https://doi.org/10.1145/2484239.2484244.
  22. Javier Esparza and Fabian Reiter. A Classification of Weak Asynchronous Models of Distributed Computing. In 31st International Conference on Concurrency Theory (CONCUR 2020), volume 171 of Leibniz International Proceedings in Informatics (LIPIcs), pages 10:1-10:16. Schloss Dagstuhl endash Leibniz-Zentrum für Informatik, 2020. URL: https://doi.org/10.4230/LIPIcs.CONCUR.2020.10.
  23. Michael Feldmann, Christian Scheideler, and Stefan Schmid. Survey on Algorithms for Self-stabilizing Overlay Networks. ACM Computing Surveys, 53(4):74:1-74:24, 2020. URL: https://doi.org/10.1145/3397190.
  24. Michael J. Fischer, Nancy A. Lynch, James E. Burns, and Allan Borodin. Resource allocation with immunity to limited process failure. In 20th Annual Symposium on Foundations of Computer Science (SFCS 1979), pages 234-254, 1979. URL: https://doi.org/10.1109/SFCS.1979.37.
  25. Paola Flocchini, Giuseppe Prencipe, and Nicola Santoro, editors. Distributed Computing by Mobile Entities: Current Research in Moving and Computing, volume 11340 of Lecture Notes in Computer Science. Springer International Publishing, Cham, 2019. URL: https://doi.org/10.1007/978-3-030-11072-7.
  26. Mohsen Ghaffari, Cameron Musco, Tsvetomira Radeva, and Nancy Lynch. Distributed House-Hunting in Ant Colonies. In Proceedings of the 2015 ACM Symposium on Principles of Distributed Computing, pages 57-66, 2015. URL: https://doi.org/10.1145/2767386.2767426.
  27. Abdolhamid Ghodselahi and Fabian Kuhn. Dynamic Analysis of the Arrow Distributed Directory Protocol in General Networks. In 31st International Symposium on Distributed Computing (DISC 2017), volume 91 of Leibniz International Proceedings in Informatics (LIPIcs), pages 22:1-22:16, 2017. URL: https://doi.org/10.4230/LIPICS.DISC.2017.22.
  28. Heiko Hamann. Swarm Robotics: A Formal Approach. Springer International Publishing, Cham, 2018. URL: https://doi.org/10.1007/978-3-319-74528-2.
  29. Maurice Herlihy. Wait-free synchronization. ACM Transactions on Programming Languages and Systems, 13(1):124-149, 1991. URL: https://doi.org/10.1145/114005.102808.
  30. Yuh-Jzer Joung. Asynchronous group mutual exclusion. Distributed Computing, 13(4):189-206, 2000. URL: https://doi.org/10.1007/PL00008918.
  31. Yuh-Jzer Joung. The congenial talking philosophers problem in computer networks. Distributed Computing, 15(3):155-175, 2002. URL: https://doi.org/10.1007/s004460100069.
  32. Pankaj Khanchandani and Roger Wattenhofer. The Arvy Distributed Directory Protocol. In The 31st ACM Symposium on Parallelism in Algorithms and Architectures, pages 225-235, 2019. URL: https://doi.org/10.1145/3323165.3323181.
  33. Fabian Kuhn, Yannic Maus, and Simon Weidner. Deterministic Distributed Ruling Sets of Line Graphs. In Structural Information and Communication Complexity, volume 11085 of Lecture Notes in Computer Science, pages 193-208, 2018. URL: https://doi.org/10.1007/978-3-030-01325-7_19.
  34. Leslie Lamport. Time, Clocks, and the Ordering of Events in a Distributed System. Communications of the ACM, 21(7):558-565, 1978. URL: https://doi.org/10.1145/359545.359563.
  35. Mamoru Maekawa. A √N algorithm for mutual exclusion in decentralized systems. ACM Transactions on Computer Systems, 3(2):145-159, 1985. URL: https://doi.org/10.1145/214438.214445.
  36. Othon Michail, George Skretas, and Paul G. Spirakis. Distributed Computation and Reconfiguration in Actively Dynamic Networks. Distributed Computing, 2021. URL: https://doi.org/10.1007/s00446-021-00415-5.
  37. Othon Michail and Paul G. Spirakis. Simple and efficient local codes for distributed stable network construction. Distributed Computing, 29(3):207-237, 2016. URL: https://doi.org/10.1007/s00446-015-0257-4.
  38. Othon Michail and Paul G. Spirakis. Connectivity preserving network transformers. Theoretical Computer Science, 671:36-55, 2017. URL: https://doi.org/10.1016/j.tcs.2016.02.040.
  39. Matthew J. Patitz. An introduction to tile-based self-assembly and a survey of recent results. Natural Computing, 13(2):195-224, 2014. URL: https://doi.org/10.1007/s11047-013-9379-4.
  40. Benoit Piranda and Julien Bourgeois. Designing a quasi-spherical module for a huge modular robot to create programmable matter. Autonomous Robots, 42:1619-1633, 2018. URL: https://doi.org/10.1007/s10514-018-9710-0.
  41. Kerry Raymond. A tree-based algorithm for distributed mutual exclusion. ACM Transactions on Computer Systems, 7(1):61-77, 1989. URL: https://doi.org/10.1145/58564.59295.
  42. Michel Raynal and Gadi Taubenfeld. Mutual exclusion in fully anonymous shared memory systems. Information Processing Letters, 158:105938, 2020. URL: https://doi.org/10.1016/j.ipl.2020.105938.
  43. Glenn Ricart and Ashok K. Agrawala. An optimal algorithm for mutual exclusion in computer networks. Communications of the ACM, 24(1):9-17, 1981. URL: https://doi.org/10.1145/358527.358537.
  44. Johannes Schneider, Michael Elkin, and Roger Wattenhofer. Symmetry breaking depending on the chromatic number or the neighborhood growth. Theoretical Computer Science, 509:40-50, 2013. URL: https://doi.org/10.1016/j.tcs.2012.09.004.
  45. Bharti Sharma, Ravinder Singh Bhatia, and Awadhesh Kumar Singh. A Token Based Protocol for Mutual Exclusion in Mobile Ad Hoc Networks. Journal of Information Processing Systems, 10(1):36-54, 2014. URL: https://doi.org/10.3745/JIPS.2014.10.1.036.
  46. Harisu Abdullahi Shehu, Md. Haidar Sharif, and Rabie A. Ramadan. Distributed Mutual Exclusion Algorithms for Intersection Traffic Problems. IEEE Access, 8:138277-138296, 2020. URL: https://doi.org/10.1109/ACCESS.2020.3012573.
  47. Mukesh Singhal. A Taxonomy of Distributed Mutual Exclusion. Journal of Parallel and Distributed Computing, 18(1):94-101, 1993. URL: https://doi.org/10.1006/jpdc.1993.1048.
  48. David Soloveichik, Matthew Cook, Erik Winfree, and Jehoshua Bruck. Computation with finite stochastic chemical reaction networks. Natural Computing, 7(4):615-633, 2008. URL: https://doi.org/10.1007/s11047-008-9067-y.
  49. Lili Su, Chia-Jung Chang, and Nancy Lynch. Spike-Based Winner-Take-All Computation: Fundamental Limits and Order-Optimal Circuits. Neural Computation, 31(12):2523-2561, 2019. URL: https://doi.org/10.1162/neco_a_01242.
  50. Jennifer E. Walter, Jennifer L. Welch, and Nitin H. Vaidya. A Mutual Exclusion Algorithm for Ad Hoc Mobile Networks. Wireless Networks, 7:585-600, 2001. URL: https://doi.org/10.1023/A:1012363200403.
  51. Damien Woods, Ho-Lin Chen, Scott Goodfriend, Nadine Dabby, Erik Winfree, and Peng Yin. Active self-assembly of algorithmic shapes and patterns in polylogarithmic time. In Proceedings of the 4th Conference on Innovations in Theoretical Computer Science, pages 353-354, 2013. URL: https://doi.org/10.1145/2422436.2422476.
  52. Weigang Wu, Jiebin Zhang, Aoxue Luo, and Jiannong Cao. Distributed Mutual Exclusion Algorithms for Intersection Traffic Control. IEEE Transactions on Parallel and Distributed Systems, 26(1):65-74, 2015. URL: https://doi.org/10.1109/TPDS.2013.2297097.
  53. Mark Yim, Wei-Min Shen, Behnam Salemi, Daniela Rus, Mark Moll, Hod Lipson, Eric Klavins, and Gregory S. Chirikjian. Modular Self-Reconfigurable Robot Systems [Grand Challenges of Robotics]. IEEE Robotics & Automation Magazine, 14(1):43-52, 2007. URL: https://doi.org/10.1109/MRA.2007.339623.
Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail