21st International Conference on Principles of Distributed Systems (OPODIS 2017), OPODIS 2017, December 18-20, 2017, Lisbon, Portugal
OPODIS 2017
December 18-20, 2017
Lisbon, Portugal
International Conference on Principles of Distributed Systems
OPODIS
http://www.opodis.net
https://dblp.org/db/conf/opodis
Leibniz International Proceedings in Informatics
LIPIcs
https://www.dagstuhl.de/dagpub/1868-8969
https://dblp.org/db/series/lipics
1868-8969
James
Aspnes
James Aspnes
Alysson
Bessani
Alysson Bessani
Pascal
Felber
Pascal Felber
João
Leitão
João Leitão
Schloss Dagstuhl – Leibniz-Zentrum für Informatik
95
2018
978-3-95977-061-3
https://www.dagstuhl.de/dagpub/978-3-95977-061-3
Front Matter, Table of Contents, Preface, Conference Organization
Front Matter, Table of Contents, Preface, Conference Organization
Front Matter
Table of Contents
Preface
Conference Organization
0:i-0:xx
Front Matter
James
Aspnes
James Aspnes
Alysson
Bessani
Alysson Bessani
Pascal
Felber
Pascal Felber
João
Leitão
João Leitão
10.4230/LIPIcs.OPODIS.2017.0
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Causality for the Masses: Offering Fresh Data, Low Latency, and High Throughput
The problem of ensuring consistency in applications that manage replicated data is one of the main challenges of distributed computing. Among the several invariants that may be enforced, ensuring that updates are applied and made visible respecting causality has emerged as a key ingredient among the many consistency criteria and client session guarantees that have been proposed and implemented in the last decade.
Techniques to keep track of causal dependencies, and to subsequently ensure that messages are delivered in causal order, have been widely studied. It is today well known that, in order to accurately capture causality one may need to keep a large amounts of metadata, for instance, one vector clock for each data object. This metadata needs to be updated and piggybacked on update messages, such that updates that are received from remote datacenters can be applied locally without violating causality. This metadata can be compressed; ultimately, it is possible to preserve causal order using a single scalar as metadata, i.e., a Lamport’s clock. Unfortunately, when compressing metadada it may become impossible to distinguish if two events are concurrent or causally related. We denote such scenario a false dependency. False dependencies introduce unnecessary delays and impair the latency of update propagation. This problem is exacerbated when one wants to support partial replication.
Therefore, when building a geo-replicated large-scale system one is faced with a dilemma: one can use techniques that maintain few metadata and that fail to capture causality accurately, or one can use techniques that require large metadata (to be kept and exchanged) but have precise information about which updates are concurrent. The former usually offer good throughput at the cost of latency, while the latter offer lower latencies sacrificing throughput. This talk reports on Saturn[1] and Eunomia[2], two complementary systems that break this tradeoff by providing simultaneously high-throughput and low latency, even in face of partial replication. The key ingredient to the success of our approach is to decouple the metadata path from the data path and to serialize concurrent events (to reduce metadata), in the metadata path, in a way that minimizes the impact on the latency perceived by clients.
Distributed Systems
Causal Consistency
1:1-1:1
Regular Paper
Luís
Rodrigues
Luís Rodrigues
10.4230/LIPIcs.OPODIS.2017.1
Manuel Bravo, Luís Rodrigues, and Peter van Roy. Saturn: a distributed metadata service for causal consistency. In Proceedings of the EuroSys 2017, Belgrade, Serbia, 2017.
Chathuri Gunawardhana, Manuel Bravo, and Luís Rodrigues. Unobtrusive deferred update stabilization for efficient geo-replication. In Proceedings of the 2017 USENIX Annual Technical Conference (ATC), Santa Clara (CA), USA, 2017.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
piChain: When a Blockchain meets Paxos
We present a new fault-tolerant distributed state machine to inherit the best features of its “parents in spirit”: Paxos, providing strong consistency, and a blockchain, providing simplicity and availability. Our proposal is simple as it does not include any heavy weight distributed failure handling protocols such as leader election. In addition, our proposal has a few other valuable features, e.g., it is responsive, it scales well, and it does not send any overhead messages.
Consensus
Crash Failures
Availability
Network Partition
Consistency
2:1-2:13
Regular Paper
Conrad
Burchert
Conrad Burchert
Roger
Wattenhofer
Roger Wattenhofer
10.4230/LIPIcs.OPODIS.2017.2
Atul Adya, William J Bolosky, Miguel Castro, Gerald Cermak, Ronnie Chaiken, John R Douceur, Jon Howell, Jacob R Lorch, Marvin Theimer, and Roger P Wattenhofer. Farsite: Federated, available, and reliable storage for an incompletely trusted environment. ACM SIGOPS Operating Systems Review (OSR), 2002.
Mahesh Balakrishnan, Dahlia Malkhi, Vijayan Prabhakaran, Ted Wobbler, Michael Wei, and John D. Davis. CORFU: A shared log design for flash clusters. In Symposium on Networked Systems Design and Implementation (NSDI 12), 2012.
Eric A Brewer. Towards robust distributed systems. In ACM Symposium on Principles of Distributed Computing (PODC), 2000.
Mike Burrows. The chubby lock service for loosely-coupled distributed systems. In Symposium on Operating systems design and implementation (OSDI), 2006.
Miguel Castro, Barbara Liskov, et al. Practical byzantine fault tolerance. In USENIX Symposium on Operating Systems Design and Implementation (OSDI), 1999.
Tushar D Chandra, Robert Griesemer, and Joshua Redstone. Paxos made live: an engineering perspective. In ACM Symposium on Principles of Distributed Computing (PODC), 2007.
James C. Corbett, Jeffrey Dean, Michael Epstein, Andrew Fikes, Christopher Frost, JJ Furman, Sanjay Ghemawat, Andrey Gubarev, Christopher Heiser, Peter Hochschild, Wilson Hsieh, Sebastian Kanthak, Eugene Kogan, Hongyi Li, Alexander Lloyd, Sergey Melnik, David Mwaura, David Nagle, Sean Quinlan, Rajesh Rao, Lindsay Rolig, Yasushi Saito, Michal Szymaniak, Christopher Taylor, Ruth Wang, and Dale Woodford. Spanner: Google’s globally-distributed database, 2012.
Kyle Croman, Christian Decker, Ittay Eyal, Adem Efe Gencer, Ari Juels, Ahmed Kosba, Andrew Miller, Prateek Saxena, Elaine Shi, Emin Gun Sirer, Dawn Song, and Roger Wattenhofer. On scaling decentralized blockchains. In 3rd Workshop on Bitcoin Research (BITCOIN), 2016.
Christian Decker, Jochen Seidel, and Roger Wattenhofer. Bitcoin meets strong consistency. In International Conference on Distributed Computing and Networking (ICDCN), 2016.
Christian Decker and Roger Wattenhofer. Information Propagation in the Bitcoin Network. In 13th IEEE International Conference on Peer-to-Peer Computing (P2P), Trento, Italy, September 2013.
Evan Duffield and Daniel Diaz. Dash: A privacy-centric crypto-currency, 2014.
Leslie Lamport et al. Paxos made simple. ACM Sigact News, 32(4):18-25, 2001.
Arthur Gervais, Ghassan O. Karame, Karl Wüst, Vasileios Glykantzis, Hubert Ritzdorf, and Srdjan Capkun. On the security and performance of proof of work blockchains. In ACM Conference on Computer and Communications Security (CCS), 2016.
Patrick Hunt, Mahadev Konar, Flavio Paiva Junqueira, and Benjamin Reed. Zookeeper: Wait-free coordination for internet-scale systems. In USENIX annual technical conference (USENIX ATC), 2010.
Ramakrishna Kotla, Lorenzo Alvisi, Mike Dahlin, Allen Clement, and Edmund Wong. Zyzzyva: speculative byzantine fault tolerance. In ACM SIGOPS Operating Systems Review (OSR), 2007.
Leslie Lamport. The part-time parliament. ACM Transactions on Computer Systems (TOCS), 16(2):133-169, 1998.
Leslie Lamport. Fast paxos. Distributed Computing, 19(2):79-103, 2006.
Leslie Lamport. Byzantizing paxos by refinement. In International Symposium on Distributed Computing (DISC), 2011.
Leslie Lamport and Mike Massa. Cheap paxos. In International Conference on Dependable Systems and Networks (DSN), 2004.
Leslie Lamport, Robert Shostak, and Marshall Pease. The byzantine generals problem. ACM Transactions on Programming Languages and Systems (TOPLAS), 1982.
Iulian Moraru, David G Andersen, and Michael Kaminsky. Paxos quorum leases: Fast reads without sacrificing writes. In ACM Symposium on Cloud Computing, 2014.
Satoshi Nakamoto. Bitcoin: A peer-to-peer electronic cash system, 2008.
Diego Ongaro and John Ousterhout. In search of an understandable consensus algorithm. In USENIX Annual Technical Conference (USENIX ATC), 2014.
Marshall Pease, Robert Shostak, and Leslie Lamport. Reaching agreement in the presence of faults. Journal of the ACM (JACM), 1980.
Jun Rao, Eugene J Shekita, and Sandeep Tata. Using paxos to build a scalable, consistent, and highly available datastore. In International Conference on Very Large Data Bases (VLDB), 2011.
Dale Skeen and Michael Stonebraker. A formal model of crash recovery in a distributed system. IEEE Transactions on Software Engineering, SE-9(3):219-228, 1983.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Broadcasting in an Unreliable SINR Model
We investigate distributed algorithms for broadcasting in unreliable wireless networks. Our basic setting is the signal to noise and interference ratio (SINR) model, which captures the physical key characteristics of wireless communication. We consider a dynamic variant of this model in which an adversary can adaptively control the model parameters for each individual transmission. Moreover, we assume that the network devices have no information about the geometry or the topology of the network and do neither know the exact model parameters nor do they have any control over them.
Our model is intended to capture the inherently unstable and unreliable nature of real wireless transmission, where signal quality and reception depends on many different aspects that are often hard to measure or predict. We show that with moderate adaptations, the broadcast algorithm of Daum et al. [DISC 13] also works in such an adversarial, much more dynamic setting. The algorithm allows to broadcast a single message in a network of size n in time O(D·polylog(n+R)), where D is the diameter and R describes the granularity of the communication graph.
radio networks
wireless networks
broadcast
SINR model
unreliable communication
dynamic networks
3:1-3:21
Regular Paper
Fabian
Kuhn
Fabian Kuhn
Philipp
Schneider
Philipp Schneider
10.4230/LIPIcs.OPODIS.2017.3
L. Anantharamu, B. S. Chlebus, D. R. Kowalski, and M. A. Rokicki. Medium access control for adversarial channels with jamming. In Proceedings of the 18th International Conference on Structural Information and Communication Complexity, SIROCCO quotesingle11, 2011.
Baruch Awerbuch, Andréa W. Richa, and Christian Scheideler. A jamming-resistant MAC protocol for single-hop wireless networks. In Rida A. Bazzi and Boaz Patt-Shamir, editors, Proceedings of the Twenty-Seventh Annual ACM Symposium on Principles of Distributed Computing, PODC 2008, Toronto, Canada, August 18-21, 2008, pages 45-54. ACM, 2008. URL: http://dx.doi.org/10.1145/1400751.1400759.
http://dx.doi.org/10.1145/1400751.1400759
Keren Censor-Hillel, Seth Gilbert, Fabian Kuhn, Nancy A. Lynch, and Calvin C. Newport. Structuring unreliable radio networks. Distributed Computing, 27(1):1-19, 2014. URL: http://dx.doi.org/10.1007/s00446-013-0198-8.
http://dx.doi.org/10.1007/s00446-013-0198-8
Sebastian Daum, Seth Gilbert, Fabian Kuhn, and Calvin C. Newport. Broadcast in the ad hoc SINR model. In Yehuda Afek, editor, Distributed Computing - 27th International Symposium, DISC 2013, Jerusalem, Israel, October 14-18, 2013. Proceedings, volume 8205 of Lecture Notes in Computer Science, pages 358-372. Springer, 2013. URL: http://dx.doi.org/10.1007/978-3-642-41527-2_25.
http://dx.doi.org/10.1007/978-3-642-41527-2_25
Shlomi Dolev, Seth Gilbert, Rachid Guerraoui, and Calvin C. Newport. Secure communication over radio channels. In Rida A. Bazzi and Boaz Patt-Shamir, editors, Proceedings of the Twenty-Seventh Annual ACM Symposium on Principles of Distributed Computing, PODC 2008, Toronto, Canada, August 18-21, 2008, pages 105-114. ACM, 2008. URL: http://dx.doi.org/10.1145/1400751.1400767.
http://dx.doi.org/10.1145/1400751.1400767
P. Erdös, P. Frankl, and Z. Füredi. Families of finite sets in which no set is covered by the union of r others. Israel Journal of Mathematics, 51(1), 1985. URL: http://dx.doi.org/10.1007/BF02772959.
http://dx.doi.org/10.1007/BF02772959
Mohsen Ghaffari, Erez Kantor, Nancy A. Lynch, and Calvin C. Newport. Multi-message broadcast with abstract MAC layers and unreliable links. In Magnús M. Halldórsson and Shlomi Dolev, editors, ACM Symposium on Principles of Distributed Computing, PODC '14, Paris, France, July 15-18, 2014, pages 56-65. ACM, 2014. URL: http://dx.doi.org/10.1145/2611462.2611492.
http://dx.doi.org/10.1145/2611462.2611492
Mohsen Ghaffari, Nancy A. Lynch, and Calvin C. Newport. The cost of radio network broadcast for different models of unreliable links. In Panagiota Fatourou and Gadi Taubenfeld, editors, ACM Symposium on Principles of Distributed Computing, PODC '13, Montreal, QC, Canada, July 22-24, 2013, pages 345-354. ACM, 2013. URL: http://dx.doi.org/10.1145/2484239.2484259.
http://dx.doi.org/10.1145/2484239.2484259
Seth Gilbert, Rachid Guerraoui, and Calvin C. Newport. Of malicious motes and suspicious sensors: On the efficiency of malicious interference in wireless networks. In Alexander A. Shvartsman, editor, Principles of Distributed Systems, 10th International Conference, OPODIS 2006, Bordeaux, France, December 12-15, 2006, Proceedings, volume 4305 of Lecture Notes in Computer Science, pages 215-229. Springer, 2006. URL: http://dx.doi.org/10.1007/11945529_16.
http://dx.doi.org/10.1007/11945529_16
Olga Goussevskaia, Thomas Moscibroda, and Roger Wattenhofer. Local broadcasting in the physical interference model. In Michael Segal and Alexander Kesselman, editors, Proceedings of the DIALM-POMC Joint Workshop on Foundations of Mobile Computing, Toronto, Canada, August 18-21, 2008, pages 35-44. ACM, 2008. URL: http://dx.doi.org/10.1145/1400863.1400873.
http://dx.doi.org/10.1145/1400863.1400873
Magnús M. Halldórsson, Stephan Holzer, and Nancy A. Lynch. A local broadcast layer for the SINR network model. In Chryssis Georgiou and Paul G. Spirakis, editors, Proceedings of the 2015 ACM Symposium on Principles of Distributed Computing, PODC 2015, Donostia-San Sebastián, Spain, July 21 - 23, 2015, pages 129-138. ACM, 2015. URL: http://dx.doi.org/10.1145/2767386.2767432.
http://dx.doi.org/10.1145/2767386.2767432
Magnús M. Halldórsson and Pradipta Mitra. Towards tight bounds for local broadcasting. In Fabian Kuhn and Calvin C. Newport, editors, FOMC'12, The Eighth ACM International Workshop on Foundations of Mobile Computing (part of PODC 2012), Funchal, Portugal, July 19, 2012, Proceedings, page 2. ACM, 2012. URL: http://dx.doi.org/10.1145/2335470.2335472.
http://dx.doi.org/10.1145/2335470.2335472
Tomasz Jurdzinski and Dariusz R. Kowalski. Distributed backbone structure for algorithms in the SINR model of wireless networks. In Marcos K. Aguilera, editor, Distributed Computing - 26th International Symposium, DISC 2012, Salvador, Brazil, October 16-18, 2012. Proceedings, volume 7611 of Lecture Notes in Computer Science, pages 106-120. Springer, 2012. URL: http://dx.doi.org/10.1007/978-3-642-33651-5_8.
http://dx.doi.org/10.1007/978-3-642-33651-5_8
Tomasz Jurdzinski and Dariusz R. Kowalski. Distributed randomized broadcasting in wireless networks under the SINR model. In Encyclopedia of Algorithms, pages 577-580. Springer, 2016. URL: http://dx.doi.org/10.1007/978-1-4939-2864-4_604.
http://dx.doi.org/10.1007/978-1-4939-2864-4_604
Tomasz Jurdzinski, Dariusz R. Kowalski, Michal Rozanski, and Grzegorz Stachowiak. On the impact of geometry on ad hoc communication in wireless networks. In Magnús M. Halldórsson and Shlomi Dolev, editors, ACM Symposium on Principles of Distributed Computing, PODC '14, Paris, France, July 15-18, 2014, pages 357-366. ACM, 2014. URL: http://dx.doi.org/10.1145/2611462.2611487.
http://dx.doi.org/10.1145/2611462.2611487
Fabian Kuhn, Nancy A. Lynch, and Calvin C. Newport. The abstract MAC layer. Distributed Computing, 24(3-4):187-206, 2011. URL: http://dx.doi.org/10.1007/s00446-010-0118-0.
http://dx.doi.org/10.1007/s00446-010-0118-0
Fabian Kuhn, Nancy A. Lynch, Calvin C. Newport, Rotem Oshman, and Andréa W. Richa. Broadcasting in unreliable radio networks. In Andréa W. Richa and Rachid Guerraoui, editors, Proceedings of the 29th Annual ACM Symposium on Principles of Distributed Computing, PODC 2010, Zurich, Switzerland, July 25-28, 2010, pages 336-345. ACM, 2010. URL: http://dx.doi.org/10.1145/1835698.1835779.
http://dx.doi.org/10.1145/1835698.1835779
Nathan Linial. Locality in distributed graph algorithms. SIAM J. Comput., 21(1):193-201, 1992. URL: http://dx.doi.org/10.1137/0221015.
http://dx.doi.org/10.1137/0221015
Nancy A. Lynch and Calvin Newport. A (truly) local broadcast layer for unreliable radio networks. In Chryssis Georgiou and Paul G. Spirakis, editors, Proceedings of the 2015 ACM Symposium on Principles of Distributed Computing, PODC 2015, Donostia-San Sebastián, Spain, July 21 - 23, 2015, pages 109-118. ACM, 2015. URL: http://dx.doi.org/10.1145/2767386.2767411.
http://dx.doi.org/10.1145/2767386.2767411
Dominic Meier, Yvonne Anne Pignolet, Stefan Schmid, and Roger Wattenhofer. Speed dating despite jammers. In Bhaskar Krishnamachari, Subhash Suri, Wendi Rabiner Heinzelman, and Urbashi Mitra, editors, Distributed Computing in Sensor Systems, 5th IEEE International Conference, DCOSS 2009, Marina del Rey, CA, USA, June 8-10, 2009. Proceedings, volume 5516 of Lecture Notes in Computer Science, pages 1-14. Springer, 2009. URL: http://dx.doi.org/10.1007/978-3-642-02085-8_1.
http://dx.doi.org/10.1007/978-3-642-02085-8_1
T. Moscibroda, R. Wattenhofer, and Y. Weber. Protocol design beyond graph-based models. In Proceedings of the ACM Workshop on Hot Topics in Networks (HotNets-V), 2006.
Calvin C. Newport, David Kotz, Yougu Yuan, Robert S. Gray, Jason Liu, and Chip Elliott. Experimental evaluation of wireless simulation assumptions. Simulation, 83(9):643-661, 2007. URL: http://dx.doi.org/10.1177/0037549707085632.
http://dx.doi.org/10.1177/0037549707085632
Adrian Ogierman, Andréa W. Richa, Christian Scheideler, Stefan Schmid, and Jin Zhang. Competitive MAC under adversarial SINR. In 2014 IEEE Conference on Computer Communications, INFOCOM 2014, Toronto, Canada, April 27 - May 2, 2014, pages 2751-2759. IEEE, 2014. URL: http://dx.doi.org/10.1109/INFOCOM.2014.6848224.
http://dx.doi.org/10.1109/INFOCOM.2014.6848224
A. Richa, Ch. Scheideler, S. Schmid, and J. Zhang. A jamming-resistant MAC protocol for multi-hop wireless networks. In Proceedings of the 24th International Conference on Distributed Computing, DISC quotesingle10. Springer-Verlag, 2010.
D. Yu, Q. Hua, Y. Wang, and F. C. M. Lau. An O(log n) distributed approximation algorithm for local broadcasting in unstructured wireless networks. In IEEE 8th International Conference on Distributed Computing in Sensor Systems, ICDCS quotesingle12. IEEE, 2012. URL: http://dx.doi.org/10.1109/dcoss.2012.39.
http://dx.doi.org/10.1109/dcoss.2012.39
Dongxiao Yu, Qiang-Sheng Hua, Yuexuan Wang, Haisheng Tan, and Francis C. M. Lau. Distributed multiple-message broadcast in wireless ad hoc networks under the SINR model. Theor. Comput. Sci., 610:182-191, 2016. URL: http://dx.doi.org/10.1016/j.tcs.2014.06.043.
http://dx.doi.org/10.1016/j.tcs.2014.06.043
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Deterministic Subgraph Detection in Broadcast CONGEST
We present simple deterministic algorithms for subgraph finding and enumeration in the broadcast CONGEST model of distributed computation:
- For any constant k, detecting k-paths and trees on k nodes can be done in O(1) rounds.
- For any constant k, detecting k-cycles and pseudotrees on k nodes can be done in O(n)
rounds.
- On d-degenerate graphs, cliques and 4-cycles can be enumerated in O(d + log n) rounds, and
5-cycles in O(d2 + log n) rounds.
In many cases, these bounds are tight up to logarithmic factors. Moreover, we show that the algorithms for d-degenerate graphs can be improved to O(d/logn) and O(d2/logn), respect- ively, in the supported CONGEST model, which can be seen as an intermediate model between CONGEST and the congested clique.
distributed computing
subgraph detection
CONGEST model
lower bounds
4:1-4:16
Regular Paper
Janne H.
Korhonen
Janne H. Korhonen
Joel
Rybicki
Joel Rybicki
10.4230/LIPIcs.OPODIS.2017.4
Noga Alon, Raphael Yuster, and Uri Zwick. Color-coding. J. ACM, 42(4):844-856, 1995. URL: http://dx.doi.org/10.1145/210332.210337.
http://dx.doi.org/10.1145/210332.210337
Leonid Barenboim and Michael Elkin. Sublogarithmic distributed MIS algorithm for sparse graphs using nash-williams decomposition. Distributed Computing, 22(5-6):363-379, 2010. URL: http://dx.doi.org/10.1007/s00446-009-0088-2.
http://dx.doi.org/10.1007/s00446-009-0088-2
Leonid Barenboim and Michael Elkin. Distributed Graph Coloring: Fundamentals and Recent Developments. Synthesis Lectures on Distributed Computing Theory. Morgan & Claypool Publishers, 2013. URL: http://dx.doi.org/10.2200/S00520ED1V01Y201307DCT011.
http://dx.doi.org/10.2200/S00520ED1V01Y201307DCT011
Leonid Barenboim, Michael Elkin, Seth Pettie, and Johannes Schneider. The locality of distributed symmetry breaking. J. ACM, 63(3):20:1-20:45, 2016. URL: http://dx.doi.org/10.1145/2903137.
http://dx.doi.org/10.1145/2903137
Nadja Betzler, Michael R. Fellows, Christian Komusiewicz, and Rolf Niedermeier. Parameterized algorithms and hardness results for some graph motif problems. In Proc. 19th Annual Symposium on Combinatorial Pattern Matching (CPM 2008), pages 31-43. Springer, 2008.
Andreas Björklund, Thore Husfeldt, Petteri Kaski, and Mikko Koivisto. Narrow sieves for parameterized paths and packings. J. Comput. Syst. Sci., 87:119-139, 2017. URL: http://dx.doi.org/10.1016/j.jcss.2017.03.003.
http://dx.doi.org/10.1016/j.jcss.2017.03.003
Andreas Björklund, Petteri Kaski, Lukasz Kowalik, and Juho Lauri. Engineering motif search for large graphs. In Ulrik Brandes and David Eppstein, editors, Proceedings of the Seventeenth Workshop on Algorithm Engineering and Experiments, ALENEX 2015, San Diego, CA, USA, January 5, 2015, pages 104-118. SIAM, 2015. URL: http://dx.doi.org/10.1137/1.9781611973754.10.
http://dx.doi.org/10.1137/1.9781611973754.10
Keren Censor-Hillel, Eldar Fischer, Gregory Schwartzman, and Yadu Vasudev. Fast distributed algorithms for testing graph properties. In Cyril Gavoille and David Ilcinkas, editors, Distributed Computing - 30th International Symposium, DISC 2016, Paris, France, September 27-29, 2016. Proceedings, volume 9888 of Lecture Notes in Computer Science, pages 43-56. Springer, 2016. URL: http://dx.doi.org/10.1007/978-3-662-53426-7_4.
http://dx.doi.org/10.1007/978-3-662-53426-7_4
Keren Censor-Hillel, Petteri Kaski, Janne H. Korhonen, Christoph Lenzen, Ami Paz, and Jukka Suomela. Algebraic methods in the congested clique. In Proc. ACM Symposium on Principles of Distributed Computing (PODC 2015), pages 143-152, 2015.
Marek Chrobak and David Eppstein. Planar orientations with low out-degree and compaction of adjacency matrices. Theor. Comput. Sci., 86(2):243-266, 1991. URL: http://dx.doi.org/10.1016/0304-3975(91)90020-3.
http://dx.doi.org/10.1016/0304-3975(91)90020-3
Danny Dolev, Christoph Lenzen, and Shir Peled. "tri, tri again": Finding triangles and small subgraphs in a distributed setting - (extended abstract). In Marcos K. Aguilera, editor, Distributed Computing - 26th International Symposium, DISC 2012, Salvador, Brazil, October 16-18, 2012. Proceedings, volume 7611 of Lecture Notes in Computer Science, pages 195-209. Springer, 2012. URL: http://dx.doi.org/10.1007/978-3-642-33651-5_14.
http://dx.doi.org/10.1007/978-3-642-33651-5_14
Rodney G. Downey and Michael R. Fellows. Parameterized computational feasibility. In Feasible Mathematics II, pages 219-244, 1994. URL: http://dx.doi.org/10.1007/978-1-4612-2566-9_7.
http://dx.doi.org/10.1007/978-1-4612-2566-9_7
Andrew Drucker, Fabian Kuhn, and Rotem Oshman. On the power of the congested clique model. In Magnús M. Halldórsson and Shlomi Dolev, editors, ACM Symposium on Principles of Distributed Computing, PODC '14, Paris, France, July 15-18, 2014, pages 367-376. ACM, 2014. URL: http://dx.doi.org/10.1145/2611462.2611493.
http://dx.doi.org/10.1145/2611462.2611493
P. Erdős, A. Hajnal, and J. W. Moon. A problem in graph theory. The American Mathematical Monthly, 71(10):1107-1110, 1964. URL: http://dx.doi.org/10.2307/2311408.
http://dx.doi.org/10.2307/2311408
Guy Even, Orr Fischer, Pierre Fraigniaud, Tzlil Gonen, Reut Levi, Moti Medina, Dennis Olivetti Pedro Montealegre, Rotem Oshman, Ivan Rapaport, and Ioan Todinca. Three notes on distributed property testing. In Proc. 31st International Symposium on Distributed Computing (DISC 2017), 2017.
Guy Even, Reut Levi, and Moti Medina. Faster and simpler distributed algorithms for testing and correcting graph properties in the CONGEST-model, 2017. arXiv:1705.04898 [cs.DC].
Orr Fischer, Tzlil Gonen, and Rotem Oshman. Distributed property testing for subgraph-freeness revisited, 2017. arXiv:1705.04033 [cs.DS].
Fedor V. Fomin, Daniel Lokshtanov, and Saket Saurabh. Efficient computation of representative sets with applications in parameterized and exact algorithms. In 25th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 2014), pages 142-151, 2014.
Pierre Fraigniaud, Pedro Montealegre, Dennis Olivetti, Ivan Rapaport, and Ioan Todinca. Distributed subgraph detection, 2017. arXiv:1706.03996 [cs.DC].
Pierre Fraigniaud, Ivan Rapaport, Ville Salo, and Ioan Todinca. Distributed testing of excluded subgraphs. In Cyril Gavoille and David Ilcinkas, editors, Distributed Computing - 30th International Symposium, DISC 2016, Paris, France, September 27-29, 2016. Proceedings, volume 9888 of Lecture Notes in Computer Science, pages 342-356. Springer, 2016. URL: http://dx.doi.org/10.1007/978-3-662-53426-7_25.
http://dx.doi.org/10.1007/978-3-662-53426-7_25
Taisuke Izumi and François Le Gall. Triangle finding and listing in CONGEST networks. In Elad Michael Schiller and Alexander A. Schwarzmann, editors, Proceedings of the ACM Symposium on Principles of Distributed Computing, PODC 2017, Washington, DC, USA, July 25-27, 2017, pages 381-389. ACM, 2017. URL: http://dx.doi.org/10.1145/3087801.3087811.
http://dx.doi.org/10.1145/3087801.3087811
Janne H. Korhonen and Joel Rybicki. Deterministic subgraph detection in broadcast CONGEST, 2017. arXiv:1705.10195 [cs.DC].
Dániel Marx. A parameterized view on matroid optimization problems. Theoretical Computer Science, 410(44):4471-4479, 2009.
Burkhard Monien. How to find long paths efficiently. North-Holland Mathematics Studies, 109:239-254, 1985.
Crispin Nash-Williams. Decomposition of finite graphs into forests. Journal of the London Mathematical Society, s1-39(1):12-12, 1964. URL: http://dx.doi.org/10.1112/jlms/s1-39.1.12.
http://dx.doi.org/10.1112/jlms/s1-39.1.12
Gopal Pandurangan, Peter Robinson, and Michele Scquizzato. Tight bounds for distributed graph computations, 2016. arXiv:1602.08481 [cs.DC].
David Peleg. Distributed Computing: A Locality-Sensitive Approach. SIAM Monographs on Discrete Mathematics and Applications. SIAM, Philadelphia, 2000.
Oleg Pikhurko. A note on the Turán function of even cycles. Proceedings of the Americal Mathematical Society, 140:3687-3692, 2012. URL: http://dx.doi.org/10.1090/S0002-9939-2012-11274-2.
http://dx.doi.org/10.1090/S0002-9939-2012-11274-2
Stefan Schmid and Jukka Suomela. Exploiting locality in distributed SDN control. In Nate Foster and Rob Sherwood, editors, Proceedings of the Second ACM SIGCOMM Workshop on Hot Topics in Software Defined Networking, HotSDN 2013, The Chinese University of Hong Kong, Hong Kong, China, Friday, August 16, 2013, pages 121-126. ACM, 2013. URL: http://dx.doi.org/10.1145/2491185.2491198.
http://dx.doi.org/10.1145/2491185.2491198
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Distributed Distance-Bounded Network Design Through Distributed Convex Programming
Solving linear programs is often a challenging task in distributed settings. While there are good algorithms for solving packing and covering linear programs in a distributed manner (Kuhn et al. 2006), this is essentially the only class of linear programs for which such an algorithm is known. In this work we provide a distributed algorithm for solving a different class of convex programs which we call “distance-bounded network design convex programs”. These can be thought of as relaxations of network design problems in which the connectivity requirement includes a distance constraint (most notably, graph spanners). Our algorithm runs in O((D/ε) log n) rounds in the LOCAL model and with high probability finds a (1+ε)-approximation to the optimal LP solution for any 0 < ε ≤ 1, where D is the largest distance constraint.
While solving linear programs in a distributed setting is interesting in its own right, this class of convex programs is particularly important because solving them is often a crucial step when designing approximation algorithms. Hence we almost immediately obtain new and improved distributed approximation algorithms for a variety of network design problems, including Basic 3- and 4-Spanner, Directed k-Spanner, Lowest Degree k-Spanner, and Shallow-Light Steiner Network Design with a spanning demand graph. Our algorithms do not require any “heavy” computation and essentially match the best-known centralized approximation algorithms, while previous approaches which do not use heavy computation give approximations which are worse than the best-known centralized bounds.
distributed algorithms
approximation algorithms
convex programming
5:1-5:19
Regular Paper
Michael
Dinitz
Michael Dinitz
Yasamin
Nazari
Yasamin Nazari
10.4230/LIPIcs.OPODIS.2017.5
Amy Babay, Emily Wagner, Michael Dinitz, and Yair Amir. Timely, reliable, and cost-effective internet transport service using dissemination graphs. In 37th IEEE International Conference on Distributed Computing Systems, (ICDCS), pages 1-12, 2017.
Leonid Barenboim, Michael Elkin, and Cyril Gavoille. A fast network-decomposition algorithm and its applications to constant-time distributed computation. Theoretical Computer Science, 2016.
Yair Bartal. Probabilistic approximations of metric spaces and its algorithmic applications. In FOCS'96, pages 184-193, 1996.
Yair Bartal, John W. Byers, and Danny Raz. Global optimization using local information with applications to flow control. In FOCS, pages 303-312, 1997.
Piotr Berman, Arnab Bhattacharyya, Konstantin Makarychev, Sofya Raskhodnikova, and Grigory Yaroslavtsev. Improved approximation for the directed spanner problem. In ICALP Part I, pages 1-12, 2011.
Eden Chlamtác and Michael Dinitz. Lowest-degree k-spanner: Approximation and hardness. Theory of Computing, 12(1):1-29, 2016.
Eden Chlamtác, Michael Dinitz, Guy Kortsarz, and Bundit Laekhanukit. Approximating spanners and directed steiner forest: Upper and lower bounds. In SODA, 2017.
Michael Dinitz, Guy Kortsarz, and Ran Raz. Label cover instances with large girth and the hardness of approximating basic k-spanner. ACM Trans. Algorithms, 12(2):1-16, 2016.
Michael Dinitz and Robert Krauthgamer. Directed spanners via flow-based linear programs. In STOC'11, pages 323-332, 2011.
Michael Dinitz and Robert Krauthgamer. Fault-tolerant spanners: better and simpler. In PODC'11, pages 169-178, 2011.
Michael Dinitz and Zeyu Zhang. Approximating low-stretch spanners. In Proceedings of the Twenty-Seventh Annual ACM-SIAM Symposium on Discrete Algorithms, SODA, 2016.
Yevgeniy Dodis and Sanjeev Khanna. Design networks with bounded pairwise distance. In STOC '99, pages 750-759, 1999.
Michael Elkin. Personal Communication, 2017.
Michael Elkin and Ofer Neiman. Distributed strong diameter network decomposition: Extended abstract. In PODC '16, pages 211-216, 2016.
Patrik Floréen, Marja Hassinen, Joel Kaasinen, Petteri Kaski, Topi Musto, and Jukka Suomela. Local approximability of max-min and min-max linear programs. Theory of Computing Systems, 2011.
R. G. Gallager, P. A. Humblet, and P. M. Spira. A distributed algorithm for minimum-weight spanning trees. ACM Trans. Program. Lang. Syst., 5(1):66-77, 1983.
Martin Grötschel, Lászlo Lovász, and Alexander Schrijver. Geometric Algorithms and Combinatorial Optimization, volume 2 of Algorithms and Combinatorics. Springer, 1988.
Anupam Gupta, Mohammad T. Hajiaghayi, and Harald Räcke. Oblivious network design. In SODA '06, pages 970-979, 2006.
M. Reza Khani and Mohammad R. Salavatipour. Improved approximations for buy-at-bulk and shallow-light k-steiner trees and (k,2)-subgraph. Journal of Combinatorial Optimization, 31(2):669-685, Feb 2016.
Robert Krauthgamer, James R. Lee, Manor Mendel, and Assaf Naor. Measured descent: A new embedding method for finite metrics. In Proceedings of the 45th Annual IEEE Symposium on Foundations of Computer Science, FOCS, pages 434-443, 2004.
Fabian Kuhn, Thomas Moscibroda, and Roger Wattenhofer. The price of being near-sighted. In SODA '06, pages 980-989, 2006.
Nathan Linial and Michael Saks. Low diameter graph decompositions. Combinatorica, 13(4):441-454, Dec 1993.
Christos H. Papadimitriou and Mihalis Yannakakis. Linear programming without the matrix. In STOC '93, pages 121-129, 1993.
David Peleg. Distributed Computing: A Locality-Sensitive Approach. Society for Industrial and Applied Mathematics, 2000.
David Peleg and Alejandro A. Schäffer. Graph spanners. Journal of Graph Theory, 13(1):99-116, 1989.
David Peleg and Jeffrey D. Ullman. An optimal synchronizer for the hypercube. In PODC'87, pages 77-85, 1987.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Lower Bounds for Subgraph Detection in the CONGEST Model
In the subgraph-freeness problem, we are given a constant-sized graph H, and wish to de- termine whether the network graph contains H as a subgraph or not. Until now, the only lower bounds on subgraph-freeness known for the CONGEST model were for cycles of length greater than 3; here we extend and generalize the cycle lower bound, and obtain polynomial lower bounds for subgraph-freeness in the CONGEST model for two classes of subgraphs.
The first class contains any graph obtained by starting from a 2-connected graph H for which we already know a lower bound, and replacing the vertices of H by arbitrary connected graphs. We show that the lower bound on H carries over to the new graph. The second class is constructed by starting from a cycle Ck of length k ≥ 4, and constructing a graph H ̃ from Ck by replacing each edge {i, (i + 1) mod k} of the cycle with a connected graph Hi, subject to some constraints on the graphs H_{0}, . . . , H_{k−1}. In this case we obtain a polynomial lower bound for the new graph H ̃, depending on the size of the shortest cycle in H ̃ passing through the vertices of the original k-cycle.
subgraph freeness
CONGEST
lower bounds
6:1-6:16
Regular Paper
Tzlil
Gonen
Tzlil Gonen
Rotem
Oshman
Rotem Oshman
10.4230/LIPIcs.OPODIS.2017.6
Amir Abboud, Keren Censor-Hillel, Seri Khoury, and Christoph Lenzen. Fooling views: A new lower bound technique for distributed computations under congestion. CoRR, abs/1711.01623, 2017.
Noga Alon, Raphael Yuster, and Uri Zwick. Color-coding. J. ACM, 42(4):844-856, 1995.
Zvika Brakerski and Boaz Patt-Shamir. Distributed discovery of large near-cliques. Distributed Computing, 24(2):79-89, 2011.
Keren Censor-Hillel, Eldar Fischer, Gregory Schwartzman, and Yadu Vasudev. Fast Distributed Algorithms for Testing Graph Properties, pages 43-56. Springer, Berlin, Heidelberg, 2016. URL: http://dx.doi.org/10.1007/978-3-662-53426-7_4.
http://dx.doi.org/10.1007/978-3-662-53426-7_4
Keren Censor-Hillel, Petteri Kaski, Janne H. Korhonen, Christoph Lenzen, Ami Paz, and Jukka Suomela. Algebraic methods in the congested clique. In Proceedings of the 2015 ACM Symposium on Principles of Distributed Computing, PODC 2015, pages 143-152, 2015.
Danny Dolev, Christoph Lenzen, and Shir Peled. "Tri, Tri Again": Finding Triangles and Small Subgraphs in a Distributed Setting, pages 195-209. Springer, Berlin, Heidelberg, 2012. URL: http://dx.doi.org/10.1007/978-3-642-33651-5_14.
http://dx.doi.org/10.1007/978-3-642-33651-5_14
Andrew Drucker, Fabian Kuhn, and Rotem Oshman. On the power of the congested clique model. In Proceedings of the 2014 ACM Symposium on Principles of Distributed Computing, PODC '14, pages 367-376, 2014.
Guy Even, Orr Fischer, Pierre Fraigniaud, Tzlil Gonen, Reut Levi, Moti Medina, Pedro Montealegre, Dennis Olivetti, Rotem Oshman, Ivan Rapaport, and Ioan Todinca. Three Notes on Distributed Property Testing. In 31st International Symposium on Distributed Computing (DISC 2017), volume 91 of Leibniz International Proceedings in Informatics (LIPIcs), pages 15:1-15:30, 2017.
Guy Even, Reut Levi, and Moti Medina. Faster and simpler distributed algorithms for testing and correcting graph properties in the congest-model. CoRR, abs/1705.04898, 2017.
Orr Fischer, Tzlil Gonen, and Rotem Oshman. Distributed property testing for subgraph-freeness revisited. CoRR, abs/1705.04033, 2017.
Pierre Fraigniaud, Pedro Montealegre, Dennis Olivetti, Ivan Rapaport, and Ioan Todinca. Distributed subgraph detection. CoRR, abs/1706.03996, 2017.
Pierre Fraigniaud, Ivan Rapaport, Ville Salo, and Ioan Todinca. Distributed Testing of Excluded Subgraphs, pages 342-356. Springer, Berlin, Heidelberg, 2016. URL: http://dx.doi.org/10.1007/978-3-662-53426-7_25.
http://dx.doi.org/10.1007/978-3-662-53426-7_25
Eugene C. Freuder. A sufficient condition for backtrack-bounded search. J. ACM, 32(4):755-761, 1985.
Zoltán Füredi and Miklós Simonovits. The History of Degenerate (Bipartite) Extremal Graph Problems, pages 169-264. Springer, Berlin, Heidelberg, 2013.
Taisuke Izumi and François Le Gall. Triangle finding and listing in congest networks. In Proceedings of the ACM Symposium on Principles of Distributed Computing, PODC '17, pages 381-389, 2017.
Bala Kalyanasundaram and Georg Schnitger. The probabilistic communication complexity of set intersection. SIAM J. Discrete Math., 5(4):545-557, 1992.
Janne H. Korhonen and Joel Rybicki. Deterministic subgraph detection in broadcast CONGEST. CoRR, abs/1705.10195, 2017.
Eyal Kushilevitz and Noam Nisan. Communication Complexity. Cambridge University Press, 1997.
Felix Lazebnik, Vasiliy A. Ustimenko, and Andrew J. Woldar. A new series of dense graphs of high girth. Bull. Amer. Math. Soc., 32(1):73-39, 1995.
Alexander A. Razborov. On the distributional complexity of disjointness. Theor. Comput. Sci., 106(2):385-390, 1992.
J. R. Ullmann. An algorithm for subgraph isomorphism. J. ACM, 23(1):31-42, 1976.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Extending Transactional Memory with Atomic Deferral
This paper introduces atomic deferral, an extension to TM that allows programmers to move long-running or irrevocable operations out of a transaction while maintaining serializability: the transaction and its de- ferred operation appear to execute atomically from the perspective of other transactions. Thus, program- mers can adapt lock-based programs to exploit TM with relatively little effort and without sacrificing scalability by atomically deferring the problematic operations. We demonstrate this with several use cases for atomic deferral, as well as an in-depth analysis of its use on the PARSEC dedup benchmark, where we show that atomic deferral enables TM to be competitive with well-designed lock-based code.
Transactional Memory
Concurrency
Synchronization
I/O
7:1-7:17
Regular Paper
Tingzhe
Zhou
Tingzhe Zhou
Victor
Luchangco
Victor Luchangco
Michael
Spear
Michael Spear
10.4230/LIPIcs.OPODIS.2017.7
Christian Bienia, Sanjeev Kumar, Jaswinder Pal Singh, and Kai Li. The PARSEC Benchmark Suite: Characterization and Architectural Implications. In Proceedings of the 17th PACT, Toronto, ON, Canada, oct 2008.
Brian D. Carlstrom, Austen McDonald, Hassan Chafi, JaeWoong Chung, Chi Cao Minh, Christos Kozyrakis, and Kunle Olukotun. The Atomos Transactional Programming Language. In Proceedings of the 27th PLDI, jun 2006.
Brian Demsky and Navid Tehrany. Integrating File Operations into Transactional Memory. Journal of Parallel and Distributed Computing, 71(10):1293-1304, 2011.
Nuno Diegues, Paolo Romano, and Luis Rodrigues. Virtues and Limitations of Commodity Hardware Transactional Memory. In Proceedings of the 23rd PACT, Edmonton, AB, Canada, aug 2014.
Free Software Foundation. Transactional Memory in GCC [online]. 2016. URL: http://gcc.gnu.org/wiki/TransactionalMemory.
http://gcc.gnu.org/wiki/TransactionalMemory
Tim Harris, Simon Marlow, Simon Peyton Jones, and Maurice Herlihy. Composable Memory Transactions. In Proceedings of the 10th PPoPP, Chicago, IL, jun 2005.
Ahmed Hassan, Roberto Palmieri, and Binoy Ravindran. Optimistic Transactional Boosting. In Proceedings of the 19th PPoPP, Orlando, FL, feb 2014.
Maurice Herlihy and Eric Koskinen. Transactional boosting: A methodology for highly-concurrent transactional objects. In Proceedings of the 13th PPoPP, Salt Lake City, UT, feb 2008.
Maurice P. Herlihy and J. Eliot B. Moss. Transactional Memory: Architectural Support for Lock-Free Data Structures. In Proceedings of the 20th ISCA, San Diego, CA, 1993.
ISO/IEC JTC 1/SC 22/WG 21. Technical Specification for C++ Extensions for Transactional Memory, May 2015.
Tomas Karnagel, Roman Dementiev, Ravi Rajwar, Konrad Lai, Thomas Legler, Benjamin Schlegel, and Wolfgang Lehner. Improving In-Memory Database Index Performance with Intel Transactional Synchronization Extensions. In Proceedings of the 20th HPCA, Orlando, FL, February 2014.
Matthew Kilgore, Stephen Louie, Chao Wang, Tingzhe Zhou, Wenjia Ruan, Yujie Liu, , and Michael Spear. Transactional Tools for the Third Decade. In Proceedings of the 10th TRANSACT, Portland, OR, jun 2015.
Yujie Liu, Stephan Diestelhorst, and Michael Spear. Delegation and Nesting in Best Effort Hardware Transactional Memory. In Proceedings of the 24th SPAA, Pittsburgh, PA, jun 2012.
Takuya Nakaike, Rei Odaira, Matthew Gaudet, Maged M. Michael, and Hisanobu Tomari. Quantitative Comparison of Hardware Transactional Memory for Blue Gene/Q, zEnterprise EC12, Intel Core, and POWER8. In Proceedings of the 42nd ISCA, Portland, OR, June 2015.
Yang Ni, Vijay Menon, Ali-Reza Adl-Tabatabai, Antony Hosking, Rick Hudson, Eliot Moss, Bratin Saha, and Tatiana Shpeisman. Open Nesting in Software Transactional Memory. In Proceedings of the 12th PPoPP, San Jose, CA, mar 2007.
Yang Ni, Adam Welc, Ali-Reza Adl-Tabatabai, Moshe Bach, Sion Berkowits, James Cownie, Robert Geva, Sergey Kozhukow, Ravi Narayanaswamy, Jeffrey Olivier, Serguei Preis, Bratin Saha, Ady Tal, and Xinmin Tian. Design and Implementation of Transactional Constructs for C/C++. In Proceedings of the 23rd OOPSLA, Nashville, TN, USA, 2008.
Christopher J. Rossbach, Owen S. Hofmann, Donald E. Porter, Hany E. Ramadan, Aditya Bhandari, and Emmett Witchel. TxLinux: Using and Managing Transactional Memory in an Operating System. In Proceedings of the 21st SOSP, Stevenson, WA, oct 2007.
Wenjia Ruan, Trilok Vyas, Yujie Liu, and Michael Spear. Transactionalizing Legacy Code: An Experience Report Using GCC and Memcached. In Proceedings of the 19th ASPLOS, Salt Lake City, UT, mar 2014.
Michael Spear, Virendra Marathe, Luke Dalessandro, and Michael Scott. Privatization Techniques for Software Transactional Memory (POSTER). In Proceedings of the 26th PODC, Portland, OR, 2007.
Haris Volos, Andres Jaan Tack, Neelam Goyal, Michael Swift, and Adam Welc. xCalls: Safe I/O in Memory Transactions. In Proceedings of the EuroSys2009 Conference, Nuremberg, Germany, March 2009.
Chao Wang, Yujie Liu, and Michael Spear. Transaction-Friendly Condition Variables. In Proceedings of the 26th SPAA, Prague, Czech Republic, jun 2014.
Lingxiang Xiang and Michael Scott. Software Partitioning of Hardware Transactions. In Proceedings of the 20th PPoPP, San Francisco, CA, feb 2015.
Tingzhe Zhou, Victor Luchangco, and Michael Spear. Brief Announcement: Extending Transactional Memory with Atomic Deferral. In Proceedings of the 29th SPAA, Washington DC, July 2017.
Tingzhe Zhou and Michael Spear. The Mimir Approach to Transactional Output. In Proceedings of the 11th TRANSACT, Barcelona, Spain, mar 2016.
Tingzhe Zhou, PanteA Zardoshti, and Michael Spear. Practical Experience with Transactional Lock Elision. In Proceedings of the 46th ICPP, Bristol, UK, August 2017.
Craig Zilles and Lee Baugh. Extending Hardware Transactional Memory to Support Non-Busy Waiting and Non-Transactional Actions. In Proceedings of the 1st TRANSACT, Ottawa, ON, Canada, jun 2006.
Ferad Zyulkyarov, Vladimir Gajinov, Osman Unsal, Adrian Cristal, Eduard Ayguade, Tim Harris, and Mateo Valero. Atomic Quake: Using Transactional Memory in an Interactive Multiplayer Game Server. In Proceedings of the 14th PPoPP, Raleigh, NC, feb 2009.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Lock Oscillation: Boosting the Performance of Concurrent Data Structures
In combining-based synchronization, two main parameters that affect performance are the com- bining degree of the synchronization algorithm, i.e. the average number of requests that each com- biner serves, and the number of expensive synchronization primitives (like CAS, Swap, etc.) that it performs. The value of the first parameter must be high, whereas the second must be kept low.
In this paper, we present Osci, a new combining technique that shows remarkable perform- ance when paired with cheap context switching. We experimentally show that Osci significantly outperforms all previous combining algorithms. Specifically, the throughput of Osci is higher than that of previously presented combining techniques by more than an order of magnitude. Notably, Osci’s throughput is much closer to the ideal than all previous algorithms, while keep- ing the average latency in serving each request low. We evaluated the performance of Osci in two different multiprocessor architectures, namely AMD and Intel.
Based on Osci, we implement and experimentally evaluate implementations of concurrent queues and stacks. These implementations outperform by far all current state-of-the-art concur- rent queue and stack implementations. Although the current version of Osci has been evaluated in an environment supporting user-level threads, it would run correctly on any threading library, preemptive or not (including kernel threads).
Synchronization
concurrent data structures
combining
8:1-8:17
Regular Paper
Panagiota
Fatourou
Panagiota Fatourou
Nikolaos D.
Kallimanis
Nikolaos D. Kallimanis
10.4230/LIPIcs.OPODIS.2017.8
Java threads in the solaris environment - earlier releases. URL: http://docs.oracle.com/cd/E19455-01/806-3461/6jck06gqe/.
http://docs.oracle.com/cd/E19455-01/806-3461/6jck06gqe/
User-mode scheduling in windows operating synstem. URL: http://msdn.microsoft.com/en-us/library/windows/desktop/dd627187.
http://msdn.microsoft.com/en-us/library/windows/desktop/dd627187
Thomas E Anderson, Brian N Bershad, Edward D Lazowska, and Henry M Levy. Scheduler activations: Effective kernel support for the user-level management of parallelism. ACM Transactions on Computer Systems (TOCS), 10(1):53-79, 1992.
Emery D. Berger, Kathryn S. McKinley, Robert D. Blumofe, and Paul R. Wilson. Hoard: A Scalable Memory Allocator for Multithreaded Applications. In Proceedings of the 9th International Conference on Architectural Support for Programming Languages and Operating Systems, pages 117-128, 2000.
Neil CC Brown. C++ csp2: A many-to-many threading model for multicore architectures. Communicating Process Architectures 2007: WoTUG-30, pages 183-205, 2007.
Irina Calciu, Justin E Gottschlich, and Maurice Herlihy. Using elimination and delegation to implement a scalable numa-friendly stack. In Usenix Workshop on Hot Topics in Parallelism (HotPar), 2013.
T. S. Craig. Building FIFO and priority-queueing spin locks from atomic swap. Technical Report TR 93-02-02, Department of Computer Science, University of Washington, 1993.
Panagiota Fatourou and Nikolaos D. Kallimanis. A Highly-Efficient Wait-Free Universal Construction. In Proceedings of the 23nd Annual ACM Symposium on Parallel Algorithms and Architectures, pages 325-334, 2011.
Panagiota Fatourou and Nikolaos D. Kallimanis. Revisiting the combining synchronization technique. In Proceedings of the 17th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pages 257-266. ACM, 2012.
Matteo Frigo, Charles E Leiserson, and Keith H Randall. The implementation of the cilk-5 multithreaded language. In ACM Sigplan Notices, volume 33, pages 212-223. ACM, 1998.
J. R. Goodman, M.K. Vernon, and P. J. Woest. Efficient synchronization primitives for large-scale cache-coherent multiprocessors. In Proceedings of the Third International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), pages 64-75, April 1989.
Panagiotis E Hadjidoukas and Vassilios V Dimakopoulos. Nested parallelism in the ompi openmp/c compiler. In Euro-Par 2007 Parallel Processing, pages 662-671. Springer, 2007.
Danny Hendler, Itai Incze, Nir Shavit, and Moran Tzafrir. The source code for flat-combining. URL: http://github.com/mit-carbon/Flat-Combining.
http://github.com/mit-carbon/Flat-Combining
Danny Hendler, Itai Incze, Nir Shavit, and Moran Tzafrir. Flat combining and the synchronization-parallelism tradeoff. In Proceedings of the 22nd Annual ACM Symposium on Parallel Algorithms and Architectures, pages 355-364, 2010.
Maurice Herlihy and Jeannette M. Wing. Linearizability: A Correctness Condition for Concurrent Objects. ACM Transactions on Programming Languages and Systems, 12(3):463-492, 1990.
Brandon Holt, Jacob Nelson, Brandon Myers, Preston Briggs, Luis Ceze, Simon Kahan, and Mark Oskin. Flat combining synchronized global data structures. In 7th International Conference on PGAS Programming Models, 2013.
Randy H Katz, Susan J Eggers, David A Wood, CL Perkins, and Robert G Sheldon. Implementing a cache consistency protocol, volume 13. ACM, 1985.
David Klaftenegger, Konstantinos Sagonas, and Kjell Winblad. Queue delegation locking. 2014.
Peter S. Magnusson, Anders Landin, and Erik Hagersten. Queue Locks on Cache Coherent Multiprocessors. In Proceedings of the 8th International Parallel Processing Symposium, pages 165-171, 1994.
Simon Marlow, S Peyton Jones, et al. The glasgow haskell compiler, 2004.
John M. Mellor-Crummey and Michael L. Scott. Algorithms for Scalable Synchronization on Shared-Memory Multiprocessors. ACM Transactions on Computer Systems, 9(1):21-65, 1991.
Maged M. Michael and Michael L. Scott. Simple, Fast, and Practical Non-Blocking and Blocking Concurrent Queue Algorithms. In Proceedings of the 15th ACM Symposium on Principles of Distributed Computing, pages 267-275, 1996.
Seung-Hyun Min, Kwang-Ho Chun, Young-Rok Yang, and Myoung-Jun Kim. A soft real-time guaranteed java m: N thread mapping method. In Knowledge-Based Intelligent Information and Engineering Systems, pages 1075-1080. Springer, 2005.
Adam Morrison and Yehuda Afek. The source code for LCRQ. . URL: http://mcg.cs.tau.ac.il/projects/lcrq.
http://mcg.cs.tau.ac.il/projects/lcrq
Adam Morrison and Yehuda Afek. Fast concurrent queues for x86 processors. In Proceedings of the 18th ACM SIGPLAN symposium on Principles and practice of parallel programming, pages 103-112. ACM, 2013.
Y. Oyama, K. Taura, and A. Yonezawa. Executing parallel programs with synchronization bottlenecks efficiently. In Proceedings of International Workshop on Parallel and Distributed Computing for Symbolic and Irregular Applications, pages 182-204, 1999.
R. K. Treiber. Systems programming: Coping with parallelism. Technical Report RJ 5118, IBM Almaden Research Center, April 1986.
Philippas Tsigas and Yi Zhang. A simple, fast and scalable non-blocking concurrent FIFO queue for shared memory multiprocessor systems. In SPAA, pages 134-143, 2001. URL: http://dx.doi.org/10.1145/378580.378611.
http://dx.doi.org/10.1145/378580.378611
Philippas Tsigas, Yi Zhang, Daniel Cederman, and Tord Dellsen. Wait-free queue algorithms for the real-time java specification. In 12th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS 2006), 4-7 April 2006, San Jose, California, USA, pages 373-383. IEEE Computer Society, 2006. URL: http://dx.doi.org/10.1109/RTAS.2006.45.
http://dx.doi.org/10.1109/RTAS.2006.45
Kyle B Wheeler, Richard C Murphy, and Douglas Thain. Qthreads: An api for programming with millions of lightweight threads. In Parallel and Distributed Processing, 2008. IPDPS 2008. IEEE International Symposium on, pages 1-8. IEEE, 2008.
Pen-Chung Yew, Nian-Feng Tzeng, and Duncan H. Lawrie. Distributing hot-spot addressing in large-scale multiprocessors. Computers, IEEE Transactions on, 100(4):388-395, 1987.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Progress-Space Tradeoffs in Single-Writer Memory Implementations
Many algorithms designed for shared-memory distributed systems assume the single-writer multi- reader (SWMR) setting where each process is provided with a unique register that can only be written by the process and read by all. In a system where computation is performed by a bounded number n of processes coming from a large (possibly unbounded) set of potential participants, the assumption of an SWMR memory is no longer reasonable. If only a bounded number of multi- writer multi-reader (MWMR) registers are provided, we cannot rely on an a priori assignment of processes to registers. In this setting, implementing an SWMR memory, or equivalently, ensuring stable writes (i.e., every written value persists in the memory), is desirable.
In this paper, we propose an SWMR implementation that adapts the number of MWMR registers used to the desired progress condition. For any given k from 1 to n, we present an algorithm that uses n + k − 1 registers to implement a k-lock-free SWMR memory. In the special case of 2-lock-freedom, we also give a matching lower bound of n + 1 registers, which supports our conjecture that the algorithm is space-optimal. Our lower bound holds for the strictly weaker progress condition of 2-obstruction-freedom, which suggests that the space complexity for k-obstruction-free and k-lock-free SWMR implementations might coincide.
Single-writer memory implementation
comparison-based algorithms
space complexity
progress conditions
9:1-9:17
Regular Paper
Damien
Imbs
Damien Imbs
Petr
Kuznetsov
Petr Kuznetsov
Thibault
Rieutord
Thibault Rieutord
10.4230/LIPIcs.OPODIS.2017.9
Yehuda Afek, Hagit Attiya, Danny Dolev, Eli Gafni, Michael Merritt, and Nir Shavit. Atomic snapshots of shared memory. J. ACM, 40(4):873-890, 1993. URL: http://dx.doi.org/10.1145/153724.153741.
http://dx.doi.org/10.1145/153724.153741
Hagit Attiya, Amotz Bar-Noy, Danny Dolev, David Peleg, and Rüdiger Reischuk. Renaming in an asynchronous environment. J. ACM, 37(3):524-548, 1990. URL: http://dx.doi.org/10.1145/79147.79158.
http://dx.doi.org/10.1145/79147.79158
Zohir Bouzid, Michel Raynal, and Pierre Sutra. Anonymous obstruction-free (n, k)-set agreement with n-k+1 atomic read/write registers. In 19th International Conference on Principles of Distributed Systems, OPODIS '15, pages 18:1-18:17, 2015.
James E Burns and Nancy A Lynch. Bounds on shared memory for mutual exclusion. Information and Computation, 107(2):171-184, 1993.
Victor Bushkov and Rachid Guerraoui. Safety-liveness exclusion in distributed computing. In 34th ACM Symposium on Principles of Distributed Computing, PODC '15, pages 227-236, 2015.
Carole Delporte-Gallet, Hugues Fauconnier, Eli Gafni, and Leslie Lamport. Adaptive register allocation with a linear number of registers. In International Symposium on Distributed Computing, DISC '13, pages 269-283, 2013.
Carole Delporte-Gallet, Hugues Fauconnier, Eli Gafni, and Sergio Rajsbaum. Black art: Obstruction-free k-set agreement with |mwmr registers| less |proccesses|. In 1st International Conference on Networked Systems, NETYS '13, pages 28-41, 2013.
Carole Delporte-Gallet, Hugues Fauconnier, Eli Gafni, and Sergio Rajsbaum. Linear space bootstrap communication schemes. Theoretical Computer Science, 561:122-133, 2015.
Carole Delporte-Gallet, Hugues Fauconnier, Petr Kuznetsov, and Eric Ruppert. On the space complexity of set agreement? In 34th ACM Symposium on Principles of Distributed Computing, PODC '15, pages 271-280, 2015.
Panagiota Fatourou, Faith Ellen Fich, and Eric Ruppert. Time-space tradeoffs for implementations of snapshots. In 38th ACM Symposium on Theory of Computing, STOC '06, pages 169-178, 2006.
Maurice Herlihy, Victor Luchangco, and Mark Moir. Obstruction-free synchronization: Double-ended queues as an example. In 23rd International Conference on Distributed Computing Systems, ICDCS '03, pages 522-529, 2003.
Prasad Jayanti, King Tan, and Sam Toueg. Time and space lower bounds for non-blocking implementations (preliminary version). In 15th ACM Symposium on Principles of Distributed Computing, PODC '96, pages 257-266, 1996.
Leslie Lamport. On interprocess communication; part I and II. Distributed Computing, 1(2):77-101, 1986.
F. P. Ramsey. On a problem of formal logic. Proceedings of the London Mathematical Society, 30:264–286, 1930.
Gadi Taubenfeld. Contention-sensitive data structures and algorithms. In 23rd International Conference on Distributed Computing, DISC'09, pages 157-171, 2009.
Nayuta Yanagisawa. Wait-free solvability of colorless tasks in anonymous shared-memory model. In 18th International Symposium on Stabilization, Safety, and Security of Distributed Systems, SSS '06, pages 415-429, 2016.
Leqi Zhu. A tight space bound for consensus. In 48th ACM Symposium on Theory of Computing, STOC '16, pages 345-350, 2016.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
The Teleportation Design Pattern for Hardware Transactional Memory
We identify a design pattern for concurrent data structures, called teleportation, that uses best- effort hardware transactional memory to speed up certain kinds of legacy concurrent data struc- tures. Teleportation unifies and explains several existing data structure designs, and it serves as the basis for novel approaches to reducing the memory traffic associated with fine-grained locking, and with hazard pointer management for memory reclamation.
Hardware transactional memory
concurrent data structures
10:1-10:16
Regular Paper
Nachshon
Cohen
Nachshon Cohen
Maurice
Herlihy
Maurice Herlihy
Erez
Petrank
Erez Petrank
Elias
Wald
Elias Wald
10.4230/LIPIcs.OPODIS.2017.10
Wonsun Ahn, Shanxiang Qi, M. Nicolaides, Josep Torrellas, Jae-Woo Lee, Xing Fang, Samuel P. Midkiff, and David C. Wong. Bulkcompiler: high-performance sequential consistency through cooperative compiler and hardware support. In David H. Albonesi, Margaret Martonosi, David I. August, and José F. Martínez, editors, 42st Annual IEEE/ACM International Symposium on Microarchitecture (MICRO-42 2009), December 12-16, 2009, New York, New York, USA, pages 133-144. ACM, 2009. URL: http://dx.doi.org/10.1145/1669112.1669131.
http://dx.doi.org/10.1145/1669112.1669131
Dan Alistarh, Patrick Eugster, Maurice Herlihy, Alexander Matveev, and Nir Shavit. Stacktrack: an automated transactional approach to concurrent memory reclamation. In Dick C. A. Bulterman, Herbert Bos, Antony I. T. Rowstron, and Peter Druschel, editors, Ninth Eurosys Conference 2014, EuroSys 2014, Amsterdam, The Netherlands, April 13-16, 2014, pages 25:1-25:14. ACM, 2014. URL: http://dx.doi.org/10.1145/2592798.2592808.
http://dx.doi.org/10.1145/2592798.2592808
Dan Alistarh, William M Leiserson, Alexander Matveev, and Nir Shavit. Threadscan: Automatic and scalable memory reclamation. In SPAA, pages 123-132, 2015.
R. Bayer and M. Schkolnick. Concurrency of operations on b-trees. Acta Informatica, 9:1-21, 1977.
Anastasia Braginsky, Alex Kogan, and Erez Petrank. Drop the anchor: lightweight memory management for non-blocking data structures. In Guy E. Blelloch and Berthold Vöcking, editors, 25th ACM Symposium on Parallelism in Algorithms and Architectures, SPAA '13, Montreal, QC, Canada - July 23 - 25, 2013, pages 33-42. ACM, 2013. URL: http://dx.doi.org/10.1145/2486159.2486184.
http://dx.doi.org/10.1145/2486159.2486184
Trevor Alexander Brown. Reclaiming memory for lock-free data structures: There has to be a better way. In PODC, PODC '15, pages 261-270, 2015.
Harold W. Cain, Maged M. Michael, Brad Frey, Cathy May, Derek Williams, and Hung Q. Le. Robust architectural support for transactional memory in the power architecture. In Avi Mendelson, editor, The 40th Annual International Symposium on Computer Architecture, ISCA'13, Tel-Aviv, Israel, June 23-27, 2013, pages 225-236. ACM, 2013. URL: http://dx.doi.org/10.1145/2485922.2485942.
http://dx.doi.org/10.1145/2485922.2485942
Nachshon Cohen and Erez Petrank. Automatic memory reclamation for lock-free data structures. In OOPSLA, OOPSLA '15, pages 260-279, 2015.
Nachshon Cohen and Erez Petrank. Efficient memory management for lock-free data structures with optimistic access. In SPAA, SPAA '15, pages 254-263, 2015.
David L. Detlefs, Paul A. Martin, Mark Moir, and Guy L. Steele, Jr. Lock-free reference counting. In PODC, PODC '01, pages 190-199, 2001.
Aleksandar Dragojevic, Maurice Herlihy, Yossi Lev, and Mark Moir. On the power of hardware transactional memory to simplify memory management. In PODC, pages 99-108, 2011.
Keir Fraser. Practical lock-freedom. Technical Report UCAM-CL-TR-579, University of Cambridge, Computer Laboratory, 2004. URL: http://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-579.pdf.
http://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-579.pdf
Anders Gidenstam, Marina Papatriantafilou, Håkan Sundell, and Philippas Tsigas. Efficient and reliable lock-free memory reclamation based on reference counting. IEEE Trans. Parallel Distrib. Syst., 20(8):1173-1187, 2009. URL: http://dx.doi.org/10.1109/TPDS.2008.167.
http://dx.doi.org/10.1109/TPDS.2008.167
Tim Harris. A pragmatic implementation of non-blocking linked-lists. In DISC, pages 300 - -314, 2001.
Thomas E. Hart, Paul E. McKenney, Angela Demke Brown, and Jonathan Walpole. Performance of memory reclamation for lockless synchronization. J. Parallel Distrib. Comput., 67(12):1270-1285, 2007. URL: http://dx.doi.org/10.1016/j.jpdc.2007.04.010.
http://dx.doi.org/10.1016/j.jpdc.2007.04.010
Steve Heller, Maurice Herlihy, Victor Luchangco, Mark Moir, William N. Scherer III, and Nir Shavit. A lazy concurrent list-based set algorithm. In OPODIS, pages 3-16, 2005.
Maurice Herlihy, Victor Luchangco, and Mark Moir. The repeat offender problem: A mechanism for supporting dynamic-sized, lock-free data structures. In DISC, DISC '02, pages 339-353, 2002.
Maurice Herlihy and J. Eliot B. Moss. Transactional memory: architectural support for lock-free data structures. In ISCA, pages 289-300, 1993.
Maurice Herlihy and Nir Shavit. The Art of Multiprocessor Programming. Morgan Kaufmann, 2008. URL: http://www.worldcat.org/isbn/0123705916.
http://www.worldcat.org/isbn/0123705916
Intel Corporation. Transactional Synchronization in Haswell. Retrieved from http://software.intel.com/en-us/blogs/2012/02/07/transactional-synchronization-in-haswell/, 8 September 2012.
http://software.intel.com/en-us/blogs/2012/02/07/transactional-synchronization-in-haswell/
Nancy Lynch and Mark Tuttle. An Introduction to Input/Output automata. Technical Memo MIT/LCS/TM-373, Massachusetts Institute of Technology, nov 1988.
Darko Makreshanski, Justin Levandoski, and Ryan Stutsman. To lock, swap, or elide: On the interplay of hardware transactional memory and lock-free indexing. In VLDB, volume 8, No. 11, 2015. URL: https://www.microsoft.com/en-us/research/publication/to-lock-swap-or-elide-on-the-interplay-of-hardware-transactional-memory-and-lock-free-indexing/.
https://www.microsoft.com/en-us/research/publication/to-lock-swap-or-elide-on-the-interplay-of-hardware-transactional-memory-and-lock-free-indexing/
P.E. McKenney and J.D. Slingwine. Read-copy update: Using execution history to solve concurrency problems. In PDCS, pages 509-518, 1998.
Maged M. Michael. Hazard pointers: Safe memory reclamation for lock-free objects. IEEE Trans. Parallel Distrib. Syst., 15(6):491-504, 2004. URL: http://dx.doi.org/10.1109/TPDS.2004.8.
http://dx.doi.org/10.1109/TPDS.2004.8
R. Rajwar and J. Goodman. Speculative lock elision: Enabling highly concurrent multithreaded execution. In MICRO, pages 294-305, 2001. URL: https://citeseer.nj.nec.com/rajwar01speculative.html.
https://citeseer.nj.nec.com/rajwar01speculative.html
R. Rajwar and J. Goodman. Transactional lock-free execution of lock-based programs. In ASPLOS, pages 5-17, 2002.
Hakan Sundell. Wait-free reference counting and memory management. In IPDPS, IPDPS '05, pages 24.2-, 2005.
J. Valois. Lock-free linked lists using compare-and-swap. In PODC, pages 214-222, 1995. URL: http://citeseer.nj.nec.com/valois95lockfree.html.
http://citeseer.nj.nec.com/valois95lockfree.html
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Evacuating an Equilateral Triangle in the Face-to-Face Model
Consider k robots initially located at the centroid of an equilateral triangle T of sides of length one. The goal of the robots is to evacuate T through an exit at an unknown location on the boundary of T. Each robot can move anywhere in T independently of other robots with maximum speed one. The objective is to minimize the evacuation time, which is defined as the time required for all k robots to reach the exit. We consider the face-to-face communication model for the robots: a robot can communicate with another robot only when they meet in T.
In this paper, we give upper and lower bounds for the face-to-face evacuation time by k robots. We show that for any k, any algorithm for evacuating k >= 1 robots from T requires at least sqrt(3) time. This bound is asymptotically optimal, as we show that a straightforward strategy of evacuation by k robots gives an upper bound of sqrt(3) + 3/k. For k = 3, 4, 5, 6, we
show significant improvements on the obvious upper bound by giving algorithms with evacuation times of 2.0887, 1.9816, 1.876, and 1.827, respectively. For k = 2 robots, we give a lower bound of 1 + 2/sqrt(3) ~= 2.154, and an algorithm with upper bound of 2.3367 on the evacuation time.
Distributed algorithms
Robots evacuation
Face-to-face communication
Equilateral triangle
11:1-11:16
Regular Paper
Huda
Chuangpishit
Huda Chuangpishit
Saeed
Mehrabi
Saeed Mehrabi
Lata
Narayanan
Lata Narayanan
Jaroslav
Opatrny
Jaroslav Opatrny
10.4230/LIPIcs.OPODIS.2017.11
R. Ahlswede and I. Wegener. Search problems. Wiley-Interscience, 1987.
R. A. Baeza-Yates, J. C. Culberson, and G. J. E. Rawlins. Searching with uncertainty (extended abstract). In Proceedings of the 1st Scandinavian Workshop on Algorithm Theory (SWAT 88), pages 176-189, 1988.
R. A. Baeza-Yates and R. Schott. Parallel searching in the plane. Computational Geometry, 5:143-154, 1995.
A. Beck. On the linear search problem. Israel Journal of Mathematics, 2(4):221-228, 1964.
A. Bonato and R. Nowakowski. The Game of Cops and Robbers on Graphs. American Mathematical Society, 2011.
S. Brandt, K.-T. Forster, B. Richner, and R. Wattenhofer. Wireless evacuation on m rays with k searchers. In Proceedings of SIROCCO 2017, to appear, 2017.
M. Chrobak, L. Gasieniec, T. Gorry, and R. Martin. Group search on the line. In Proceedings of SOFSEM 2015: 41st International Conference on Current Trends in Theory and Practice of Computer Science, pages 164-176, 2015.
J. Czyzowicz, L. Gasieniec, T. Gorry, E. Kranakis, R. Martin, and D. Pajak. Evacuating robots via unknown exit in a disk. In Proceedings of the 28th International Symposium on Distributed Computing (DISC 2014), Austin, TX, USA, pages 122-136, 2014.
J. Czyzowicz, K. Georgiou, M. Godon, E. Kranakis, D. Krizanc, W. Rytter, and M. Wlodarczyk. Evacuation from a disc in the presence of a faulty robot. In Proceedings of SIROCCO 2017, to appear, 2017.
J. Czyzowicz, K. Georgiou, E. Kranakis, L. Narayanan, J. Opatrny, and B. Vogtenhuber. Evacuating robots from a disk using face-to-face communication (extended abstract). In Proceedings of the 9th International Conference on Algorithms and Complexity (CIAC 2015), Paris, France, pages 140-152, 2015.
J. Czyzowicz, E. Kranakis, D. Krizanc, L. Narayanan, J. Opatrny, and S. M. Shende. Wireless autonomous robot evacuation from equilateral triangles and squares. In Proceedings of the 14th International Conference on Ad-hoc, Mobile, and Wireless Networks (ADHOC-NOW 2015), Athens, Greece, pages 181-194, 2015.
Y. Emek, T. Langner, J. Uitto, and R. Wattenhofer. Solving the ANTS problem with asynchronous finite state machines. In Proceedings of the 41st International Colloquium on Automata, Languages, and Programming, (ICALP 2014), Part II, pages 471-482, 2014.
O. Feinerman and A. Korman. Theoretical distributed computing meets biology: A review. In Proceedings of the 9th International Conference on Distributed Computing and Internet Technology, (ICDCIT 2013), Bhubaneswar, India, pages 1-18, 2013.
O. Feinerman, A. Korman, Z. Lotker, and J.-S. Sereni. Collaborative search on the plane without communication. In ACM Symposium on Principles of Distributed Computing (PODC 2012), Funchal, Madeira, Portugal, pages 77-86, 2012.
P. Flocchini, G. Prencipe, N. Santoro, and P. Widmayer. Gathering of asynchronous robots with limited visibility. Theor. Comput. Sci., 337(1-3):147-168, 2005.
S. K. Ghosh and R. Klein. Online algorithms for searching and exploration in the plane. Computer Science Review, 4(4):189-201, 2010.
L. Hua and E. K. P. Chong. Search on lines and graphs. In Proceedings of the 48th IEEE Conference on Decision and Control, CDC 2009, China, pages 5780-5785, 2009.
A. Jez and J. Lopuszanski. On the two-dimensional cow search problem. Information Processing Letters, 109(11):543-547, 2009.
C. Lenzen, N. A. Lynch, C. C. Newport, and T. Radeva. Trade-offs between selection complexity and performance when searching the plane without communication. In ACM Symposium on Principles of Distributed Comp. (PODC 2014),, pages 252-261, 2014.
A. López-Ortiz and G. Sweet. Parallel searching on a lattice. In Proceedings of the 13th Canadian Conference on Computational Geometry (CCCG 2001), pages 125-128, 2001.
P. Nahin. Chases and Escapes: The Mathematics of Pursuit and Evasion. Princeton University Press, 2012.
L. D. Stone. Theory of Optimal Search. Academic Press New York, 1975.
I. Thompson. Understanding Maple. Cambridge University Press, 2016.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Model Checking of Robot Gathering
Recent advances in distributed computing highlight models and algorithms for autonomous mo- bile robots that self-organize and cooperate together in order to solve a global objective. As results, a large number of algorithms have been proposed. These algorithms are given together with proofs to assess their correctness. However, those proofs are informal, which are error prone. This paper presents our study on formal verification of mobile robot algorithms. We first propose a formal model for mobile robot algorithms on anonymous ring shape network under multiplicity and asynchrony assumptions. We specify this formal model in Maude, a specification and pro- gramming language based on rewriting logic. We then use its model checker to formally verify an algorithm for robot gathering problem on ring enjoys some desired properties. As the result of the model checking, counterexamples have been found. We detect the sources of some unforeseen design errors. We, furthermore, give our interpretations of these errors.
Mobile Robot
Robot Gathering
Formal Verification
Model Checking
Maude
12:1-12:16
Regular Paper
Ha Thi Thu
Doan
Ha Thi Thu Doan
François
Bonnet
François Bonnet
Kazuhiro
Ogata
Kazuhiro Ogata
10.4230/LIPIcs.OPODIS.2017.12
Our Maude source files. URL: https://figshare.com/s/3c0a6fdb0e4fec3b0b08.
https://figshare.com/s/3c0a6fdb0e4fec3b0b08
T. Balabonski, A. Delga, L. Rieg, S. Tixeuil, and X. Urbain. Synchronous gathering without multiplicity detection: A certified algorithm. In Proceedings of the 18th International Symposium on Stabilization, Safety, and Security of Distributed Systems, volume 10083 of LNCS, pages 7-19. Springer, 2016.
B. Bérard, P. Lafourcade, L. Millet, M. Potop-Butucaru, Y. Thierry-Mieg, and S. Tixeuil. Formal verification of mobile robot protocols. Distributed Computing, 29(6):459-487, 2016.
L. Blin, A. Milani, M. Potop-Butucaru, and S. Tixeuil. Exclusive perpetual ring exploration without chirality. In Proceedings of the 24th International Symposium on Distributed Computing, volume 6343 of LNCS, pages 312-327. Springer, 2010.
F. Bonnet, M. Potop-Butucaru, and S. Tixeuil. Asynchronous gathering in rings with 4 robots. In Proceedings of the 15th International Conference on Ad-hoc, Mobile, and Wireless Networks, volume 9724 of LNCS, pages 311-324. Springer, 2016.
M. Clavel, F. Durán, S. Eker, P. Lincoln, N. Martí-Oliet, J. Meseguer, and C. Talcott. All About Maude, volume 4350 of LNCS. Springer, 2007.
P Courtieu, L. Rieg, S Tixeuil, and X. Urbain. Certified universal gathering in r² for oblivious mobile robots. In Proceedings of the 30th International Symposium on Distributed Computing, volume 9888 of LNCS, pages 187-200. Springer, 2016.
G. D'Angelo, G. Di Stefano, and A. Navarra. Gathering on rings under the look-compute-move model. Distributed Computing, 27:255-285, March 2014.
G. D'Angelo, G. Di Stefano, A. Navarra, N. Nisse, and K. Suchan. Computing on rings by oblivious robots: A unified approach for different tasks. Algorithmica, 72(4):1055-1096, 2015.
G. D'Angelo, A. Navarra, and N. Nisse. A unified approach for gathering and exclusive searching on rings under weak assumptions. Distributed Computing, 28(1):17-48, 2017.
H. T. T. Doan, F. Bonnet, and K. Ogata. Model checking of a mobile robots perpetual exploration algorithm. In Proceedings of the 6th International Workshop on Structured Object-Oriented Formal Language and Method (SOFL+MSVL 2016), volume 10189 of LNCS, pages 201-219. Springer, 2017.
H. T. T. Doan, F. Bonnet, and K. Ogata. Specifying a distributed snapshot algorithm as a meta-program and model checking it at meta-level. In Proceedings of The 37th IEEE International Conference on Distributed Computing Systems (ICDCS 2017), pages 1586-1596, 2017.
H. T. T. Doan, W. Zhang, M. Zhang, and K. Ogata. Model checking chandy-lamport distributed snapshot algorithm revisited. In Proceedings of the 2nd International Symposium on Dependable Computing and Internet of Things, pages 7-19, 2015.
P. Flocchini, D. Ilcinkas, A. Pelc, and N. Santoro. Computing without communicating: Ring exploration by asynchronous oblivious robots. Algorithmica, 65(3):562-583, 2013.
P. Flocchini, G. Prencipe, and N. Santoro. Distributed Computing by Oblivious Mobile Robots. Morgan & Claypool Publishers, 2012.
Michael Huth and Mark Ryan. Logic in Computer Science: Modelling and Reasoning about Systems. Cambridge University Press, 2004.
I. Konnov, H. Veith, and J. Widder. On the completeness of bounded model checking for threshold-based distributed algorithms: Reachability. Information and Computation, 252:95-109, 2017.
I. Suzuki and M. Yamashita. Distributed anonymous mobile robots: Formation of geometric patterns. SIAM Journal on Computing, 28(4):1347-1363, 1999.
T. Tsuchiya and A. Schiper. Verification of consensus algorithms using satisfiability solving. Distributed Computing, 23(5):341-358, 2011.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Plane Formation by Synchronous Mobile Robots without Chirality
We consider a distributed system consisting of autonomous mobile computing entities called robots moving in the three-dimensional space (3D-space). The robots are anonymous, oblivious, fully-synchronous and have neither any access to the global coordinate system nor any explicit communication medium. Each robot cooperates with other robots by observing the positions of other robots in its local coordinate system. One of the most fundamental agreement problems in 3D-space is the plane formation problem that requires the robots to land on a common plane, that is not predefined. This problem is not always solvable because of the impossibility of symmetry breaking. While existing results assume that the robots agree on the handedness of their local coordinate systems, we remove the assumption and consider the robots without chirality. The robots without chirality can never break the symmetry consisting of rotation symmetry and reflection symmetry. Such symmetry in 3D-space is fully described by 17 symmetry types each of which forms a group. We extend the notion of symmetricity [Suzuki and Yamashita, SIAM J. Compt. 1999] [Yamauchi et al., PODC 2016] to cover these 17 symmetry groups. Then we give a characterization of initial configurations from which the fully-synchronous robots without chirality can form a plane in terms of symmetricity.
Autonomous mobile robots
plane formation problem
symmetry breaking
group theory
13:1-13:17
Regular Paper
Yusaku
Tomita
Yusaku Tomita
Yukiko
Yamauchi
Yukiko Yamauchi
Shuji
Kijima
Shuji Kijima
Masafumi
Yamashita
Masafumi Yamashita
10.4230/LIPIcs.OPODIS.2017.13
Dana Angluin, James Aspnes, Zoe Diamadi, Michael J. Fischer, and René Peralta. Computation in networks of passively mobile finite-state sensors. In Proceedings of the 23rd annual ACM symposium on Principles of distributed computing (PODC 2004), pages 290-299, 2004. URL: http://dx.doi.org/10.1145/1011767.1011810.
http://dx.doi.org/10.1145/1011767.1011810
Mark A. Armstrong. Groups and symmetry. Springer-Verlag New York Inc., 1988.
Aaron Becker, Erik D. Demaine, Sándor P. Fekete, Golnaz Habibi, and James McLurkin. Reconfiguring massive particle swarms with limited, global control. In Proceedings of the 9th International Symposium on Algorithms and Experiments for Sensor Systems, Wireless Networks and Distributed Robotics (ALGOSENSORS 2013), pages 51-66, 2013. URL: http://dx.doi.org/10.1007/978-3-642-45346-5_5.
http://dx.doi.org/10.1007/978-3-642-45346-5_5
Serafino Cicerone, Gabriele Di Stefano, and Alfredo Navarra. Asynchronous embedded pattern formation without orientation. In Proceedings of the 30th International SymposiumDistributed on Computing (DISC 2016), pages 85-98, 2016. URL: http://dx.doi.org/10.1007/978-3-662-53426-7_7.
http://dx.doi.org/10.1007/978-3-662-53426-7_7
Mark Cieliebak, Paola Flocchini, Giuseppe Prencipe, and Nicola Santoro. Distributed computing by mobile robots: gathering. SIAM Journal on Computing, 41(4):829-879, 2012. URL: http://dx.doi.org/10.1137/100796534.
http://dx.doi.org/10.1137/100796534
Peter R. Cromwell. Polyhedra. University Press, 1997.
Zahra Derakhshandeh, Shlomi Dolev, Robert Gmyr, Andréa W. Richa, Christian Scheideler, and Thim Strothmann. Brief announcement: 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: http://dx.doi.org/10.1145/2612669.2612712.
http://dx.doi.org/10.1145/2612669.2612712
Zahra Derakhshandeh, Robert Gmyr, Andréa W. Richa, Christian Scheideler, and Thim Strothmann. Universal shape formation for programmable matter. In Proceedings of the 28th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA 2016), pages 289-299, 2016. URL: http://dx.doi.org/10.1145/2935764.2935784.
http://dx.doi.org/10.1145/2935764.2935784
Yoann Dieudonné, Franck Petit, and Vincent Villain. Leader election problem versus pattern formation problem. In Proceedings of the 24th International Symposium on Distributed Computing (DISC 2010), pages 267-281, 2010. URL: http://dx.doi.org/10.1007/978-3-642-15763-9_26.
http://dx.doi.org/10.1007/978-3-642-15763-9_26
Paola Flocchini, Giuseppe Prencipe, and Nicola Santoro. Distributed computing by oblivious mobile robots. Morgan &Claypool, 2012.
Paola Flocchini, Giuseppe Prencipe, Nicola Santoro, and Giovanni Viglietta. Distributed computing by mobile robots: Solving the uniform circle formation problem. In Proceedings of the 18th International Conference on Principles of Distributed Systems (OPODIS 2014), pages 217-232, 2014. URL: http://dx.doi.org/10.1007/978-3-319-14472-6_15.
http://dx.doi.org/10.1007/978-3-319-14472-6_15
Nao Fujinaga, Yukiko Yamauchi, Hirotaka Ono, Shuji Kijima, and Masafumi Yamashita. Pattern formation by oblivious asynchronous mobile robots. SIAM Journal on Computing, 44(3):740-785, 2015. URL: http://dx.doi.org/10.1137/140958682.
http://dx.doi.org/10.1137/140958682
Marcello Mamino and Giovanni Viglietta. Square formation by asynchronous oblivious robots. In Proceedings of the 28th Canadian Conference on Computational Geometry (CCCG 2016), pages 1-6, 2016.
Sheryl Manzoor, Samuel Sheckman, Jarrett Lonsford, Hoyeon Kim, Min Jun Kim, and Aaron T. Becker. Parallel self-assembly of polyominoes under uniform control inputs. IEEE Robotics and Automation Letters, 2(4):2040-2047, 2017. URL: http://dx.doi.org/10.1109/LRA.2017.2715402.
http://dx.doi.org/10.1109/LRA.2017.2715402
Ichiro Suzuki and Masafumi Yamashita. Distributed anonymous mobile robots: Formation of geometric patterns. SIAM Journal on Computing, 28(4):1347-1363, 1999. URL: http://dx.doi.org/10.1137/S009753979628292X.
http://dx.doi.org/10.1137/S009753979628292X
Taichi Uehara, Yukiko Yamauchi, Shuji Kijima, and Masafumi Yamashita. Plane formation by semi-synchronous robots in the three dimensional euclidean space. In Proceedings of the 18th International Symposium on Stabilization, Safety, and Security of Distributed Systems (SSS 2016), pages 383-398, 2016. URL: http://dx.doi.org/10.1007/978-3-319-49259-9_30.
http://dx.doi.org/10.1007/978-3-319-49259-9_30
Masafumi Yamashita and Ichiro Suzuki. Characterizing geometric patterns formable by oblivious anonymous mobile robots. Theoretical Computer Science, 411:2433-2453, 2010. URL: http://dx.doi.org/10.1016/j.tcs.2010.01.037.
http://dx.doi.org/10.1016/j.tcs.2010.01.037
Yukiko Yamauchi, Taichi Uehara, Shuji Kijima, and Masafumi Yamashita. Plane formation by synchronous mobile robots in the three dimensional euclidean space. Journal of the ACM, 64(16), 2017. URL: http://dx.doi.org/10.1145/3060272.
http://dx.doi.org/10.1145/3060272
Yukiko Yamauchi, Taichi Uehara, and Masafumi Yamashita. Brief announcement: Pattern formation problem for synchronous mobile robots in the three dimensional euclidean space. In Proceedings of the 2016 ACM Symposium on Principles of Distributed Computing (PODC 2016), pages 447-449, 2016. URL: http://dx.doi.org/10.1145/2933057.2933063.
http://dx.doi.org/10.1145/2933057.2933063
Yukiko Yamauchi and Masafumi Yamashita. Pattern formation by mobile robots with limited visibility. In Proceedings of the 20th International Colloquium on Structural Information and Communication Complexity (SIROCCO 2013), pages 201-212, 2013. URL: http://dx.doi.org/10.1007/978-3-319-03578-9_17.
http://dx.doi.org/10.1007/978-3-319-03578-9_17
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Treasure Hunt with Barely Communicating Agents
We consider the problem of fault-tolerant parallel exhaustive search, a.k.a. “Treasure Hunt”, introduced by Fraigniaud, Korman and Rodeh in [13]: Imagine an infinite list of “boxes”, one of which contains a “treasure”. The ordering of the boxes reflects the importance of finding the treasure in a given box. There are k agents, whose goal is to locate the treasure in the least amount of time. The system is synchronous; at every step, an agent can ”open” a box and see whether the treasure is there. The hunt finishes when the first agent locates the treasure.
The original paper [13] considers non-cooperating randomized agents, out of which at most f can fail, with the failure pattern determined by an adversary. In this paper, we consider deterministic agents and investigate two failure models: The failing-agents model from [13] and a “black hole” model: At most f boxes contain “black holes”, placed by the adversary. When an agent opens a box containing a black hole, the agent disappears without an observable trace.
The crucial distinction, however, is that we consider “barely communicating” or “indirectly weakly communicating” agents: When an agent opens a box, it can tell whether the box has been previously opened. There are no other means of direct or indirect communication between the agents.
We show that adding even such weak means of communication has very strong impact on the solvability and complexity of the Treasure Hunt problem. In particular, in the failing agents model it allows the agents to be 1-competitive w.r.t. an optimal algorithm which does not know the location of the treasure, but is instantly notified of agent failures. In the black holes model
(where there is no deterministic solution for non-communicating agents even in the presence of a single black hole) we show a lower bound of 2f + 1 and an upper bound of 4f + 1 for the number of agents needed to solve Treasure Hunt in presence of up to f black holes, as well as partial results about the hunt time in the presence of few black holes.
parallel exhaustive search
treasure hunt
fault-tolerant search
weak coordination
black holes
14:1-14:16
Regular Paper
Stefan
Dobrev
Stefan Dobrev
Rastislav
Královic
Rastislav Královic
Dana
Pardubská
Dana Pardubská
10.4230/LIPIcs.OPODIS.2017.14
Steve Alpern and Shmuel Gal. The Theory of Search Games and Rendezvous. International Series in Operations Research &Management Science. Springer US, 2006.
David P. Anderson. Boinc: A system for public-resource computing and storage. In 5th IEEE/ACM International Workshop on Grid Computing, pages 4-10, 2004. URL: http://boinc.berkeley.edu.
http://boinc.berkeley.edu
Ricardo Baeza-Yates and René Schott. Parallel searching in the plane. Computational Geometry, 5(3):143-154, 1995. URL: http://dx.doi.org/10.1016/0925-7721(95)00003-R.
http://dx.doi.org/10.1016/0925-7721(95)00003-R
Ricardo A. Baeza-Yates, Joseph C. Culberson, and Gregory J. E. Rawlins. Searching with uncertainty extended abstract, pages 176-189. Springer Berlin Heidelberg, Berlin, Heidelberg, 1988. URL: http://dx.doi.org/10.1007/3-540-19487-8_20.
http://dx.doi.org/10.1007/3-540-19487-8_20
Ricardo A. Baeza-Yates, Joseph C. Culberson, and Gregory J.E. Rawlins. Searching in the plane. Inf. Comput., 106(2):234-252, 1993. URL: http://dx.doi.org/10.1006/inco.1993.1054.
http://dx.doi.org/10.1006/inco.1993.1054
Hans-Joachim Böckenhauer, Juraj Hromkovic, Dennis Komm, Richard Královic, and Peter Rossmanith. On the power of randomness versus advice in online computation. In Henning Bordihn, Martin Kutrib, and Bianca Truthe, editors, Languages Alive - Essays Dedicated to Jürgen Dassow on the Occasion of His 65th Birthday, volume 7300 of Lecture Notes in Computer Science, pages 30-43. Springer, 2012. URL: http://dx.doi.org/10.1007/978-3-642-31644-9_2.
http://dx.doi.org/10.1007/978-3-642-31644-9_2
Marek Chrobak, Leszek Gąsieniec, Thomas Gorry, and Russell Martin. Group Search on the Line, pages 164-176. Springer Berlin Heidelberg, Berlin, Heidelberg, 2015. URL: http://dx.doi.org/10.1007/978-3-662-46078-8_14.
http://dx.doi.org/10.1007/978-3-662-46078-8_14
Lihi Cohen, Yuval Emek, Oren Louidor, and Jara Uitto. Exploring an infinite space with finite memory scouts. In Philip N. Klein, editor, Proceedings of the Twenty-Eighth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2017, Barcelona, Spain, Hotel Porta Fira, January 16-19, pages 207-224. SIAM, 2017. URL: http://dx.doi.org/10.1137/1.9781611974782.14.
http://dx.doi.org/10.1137/1.9781611974782.14
Stefan Dobrev, Paola Flocchini, Giuseppe Prencipe, and Nicola Santoro. Searching for a black hole in arbitrary networks: optimal mobile agents protocols. Distributed Computing, 19(1):1-99999, 2006. URL: http://dx.doi.org/10.1007/s00446-006-0154-y.
http://dx.doi.org/10.1007/s00446-006-0154-y
Stefan Dobrev, Paola Flocchini, Giuseppe Prencipe, and Nicola Santoro. Mobile search for a black hole in an anonymous ring. Algorithmica, 48(1):67-90, 2007. URL: http://dx.doi.org/10.1007/s00453-006-1232-z.
http://dx.doi.org/10.1007/s00453-006-1232-z
Yuval Emek, Tobias Langner, Jara Uitto, and Roger Wattenhofer. Solving the ANTS Problem with Asynchronous Finite State Machines, pages 471-482. Springer Berlin Heidelberg, Berlin, Heidelberg, 2014. URL: http://dx.doi.org/10.1007/978-3-662-43951-7_40.
http://dx.doi.org/10.1007/978-3-662-43951-7_40
Ofer Feinerman, Amos Korman, Zvi Lotker, and Jean-Sebastien Sereni. Collaborative search on the plane without communication. In Proceedings of the 2012 ACM Symposium on Principles of Distributed Computing, PODC '12, pages 77-86, New York, NY, USA, 2012. ACM. URL: http://dx.doi.org/10.1145/2332432.2332444.
http://dx.doi.org/10.1145/2332432.2332444
Pierre Fraigniaud, Amos Korman, and Yoav Rodeh. Parallel exhaustive search without coordination. In Daniel Wichs and Yishay Mansour, editors, Proceedings of the 48th Annual ACM SIGACT Symposium on Theory of Computing, STOC 2016, Cambridge, MA, USA, June 18-21, 2016, pages 312-323. ACM, 2016. URL: http://dx.doi.org/10.1145/2897518.2897541.
http://dx.doi.org/10.1145/2897518.2897541
Chryssis Georgiou. Do-All Computing in Distributed Systems: Cooperation in the Presence of Adversity. Springer Publishing Company, Incorporated, 1st edition, 2010.
Nicolas Hanusse, Dimitris J. Kavvadias, Evangelos Kranakis, and Danny Krizanc. Memoryless search algorithms in a network with faulty advice. Theor. Comput. Sci., 402(2-3):190-198, 2008. URL: http://dx.doi.org/10.1016/j.tcs.2008.04.034.
http://dx.doi.org/10.1016/j.tcs.2008.04.034
Ming-Yang Kao, John H. Reif, and Stephen R. Tate. Searching in an unknown environment: An optimal randomized algorithm for the cow-path problem. In Proceedings of the Fourth Annual ACM-SIAM Symposium on Discrete Algorithms, SODA '93, pages 441-447, Philadelphia, PA, USA, 1993. Society for Industrial and Applied Mathematics. URL: http://dl.acm.org/citation.cfm?id=313559.313848.
http://dl.acm.org/citation.cfm?id=313559.313848
Dénes König. Über graphen und ihre anwendung auf determinantentheorie und mengenlehre. Mathematische Annalen, 77(4):453-465, 1916. URL: http://dx.doi.org/10.1007/BF01456961.
http://dx.doi.org/10.1007/BF01456961
Amos Korman and Yoav Rodeh. Parallel linear search with no coordination for a randomly placed treasure. CoRR, abs/1602.04952, 2016. URL: http://arxiv.org/abs/1602.04952.
http://arxiv.org/abs/1602.04952
Amos Korman and Yoav Rodeh. Parallel search with no coordination. In Structural Information and Communication Complexity - 24th International Colloquium, SIROCCO 2017, Porquerolles, France, June 19-22, 2017, page to appear, 2017.
Tobias Langner, Jara Uitto, David Stolz, and Roger Wattenhofer. Fault-Tolerant ANTS, pages 31-45. Springer Berlin Heidelberg, Berlin, Heidelberg, 2014. URL: http://dx.doi.org/10.1007/978-3-662-45174-8_3.
http://dx.doi.org/10.1007/978-3-662-45174-8_3
Christoph Lenzen, Nancy Lynch, Calvin Newport, and Tsvetomira Radeva. Searching without communicating: tradeoffs between performance and selection complexity. Distributed Computing, pages 1-23, 2016. URL: http://dx.doi.org/10.1007/s00446-016-0283-x.
http://dx.doi.org/10.1007/s00446-016-0283-x
Nancy A. Lynch. Distributed Algorithms. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA, 1996.
Andrzej Pelc. Searching games with errors - fifty years of coping with liars. Theor. Comput. Sci., 270(1-2):71-109, 2002. URL: http://dx.doi.org/10.1016/S0304-3975(01)00303-6.
http://dx.doi.org/10.1016/S0304-3975(01)00303-6
Mengfei Peng, Wei Shi, Jean-Pierre Corriveau, Richard Pazzi, and Yang Wang. Black hole search in computer networks: State-of-the-art, challenges and future directions. Journal of Parallel and Distributed Computing, 88:1-15, 2016. URL: http://dx.doi.org/10.1016/j.jpdc.2015.10.006.
http://dx.doi.org/10.1016/j.jpdc.2015.10.006
Amnon Ta-Shma and Uri Zwick. Deterministic rendezvous, treasure hunts, and strongly universal exploration sequences. ACM Trans. Algorithms, 10(3):12:1-12:15, 2014. URL: http://dx.doi.org/10.1145/2601068.
http://dx.doi.org/10.1145/2601068
Qin Xin. Faster treasure hunt and better strongly universal exploration sequences. CoRR, abs/1204.5442, 2012. URL: http://arxiv.org/abs/1204.5442.
http://arxiv.org/abs/1204.5442
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Anonymous Processors with Synchronous Shared Memory: Monte Carlo Algorithms
We consider synchronous distributed systems in which processors communicate by shared read- write variables. Processors are anonymous and do not know their number n. The goal is to assign individual names by all the processors to themselves. We develop algorithms that accomplish this for each of the four cases determined by the following independent properties of the model: concurrently attempting to write distinct values into the same shared memory register either is allowed or not, and the number of shared variables either is a constant or it is unbounded. For each such a case, we give a Monte Carlo algorithm that runs in the optimum expected time and uses the expected number of O(n log n) random bits. All our algorithms produce correct output upon termination with probabilities that are 1−n^{−Ω(1)}, which is best possible when terminating almost surely and using O(n log n) random bits.
anonymous processors
synchrony
shared memory
read-write registers
naming
Monte Carlo algorithms
15:1-15:17
Regular Paper
Bogdan S.
Chlebus
Bogdan S. Chlebus
Gianluca
De Marco
Gianluca De Marco
Muhammed
Talo
Muhammed Talo
10.4230/LIPIcs.OPODIS.2017.15
Dan Alistarh, James Aspnes, Keren Censor-Hillel, Seth Gilbert, and Rachid Guerraoui. Tight bounds for asynchronous renaming. Journal of the ACM, 61(3):18:1-18:51, 2014.
Dan Alistarh, Hagit Attiya, Seth Gilbert, Andrei Giurgiu, and Rachid Guerraoui. Fast randomized test-and-set and renaming. In Proceedings of the 24th International Symposium on Distributed Computing (DISC), volume 6343 of Lecture Notes in Computer Science, pages 94-108. Springer, 2010.
Dana Angluin. Local and global properties in networks of processors. In Proceedings of the 12th ACM Symposium on Theory of Computing (STOC), pages 82-93, 1980.
James Aspnes, Faith Ellen Fich, and Eric Ruppert. Relationships between broadcast and shared memory in reliable anonymous distributed systems. Distributed Computing, 18(3):209-219, 2006.
James Aspnes, Gauri Shah, and Jatin Shah. Wait-free consensus with infinite arrivals. In Proceedings of the 34th ACM Symposium on Theory of Computing (STOC), pages 524-533, 2002.
Hagit Attiya, Amotz Bar-Noy, Danny Dolev, David Peleg, and Rüdiger Reischuk. Renaming in an asynchronous environment. Journal of the ACM, 37(3):524-548, 1990.
Hagit Attiya, Alla Gorbach, and Shlomo Moran. Computing in totally anonymous asynchronous shared memory systems. Information and Computation, 173(2):162-183, 2002.
Hagit Attiya and Jennifer Welch. Distributed Computing: Fundamentals, Simulations, and Advanced Topics. John Wiley, 2nd edition, 2004.
Paolo Boldi and Sebastiano Vigna. An effective characterization of computability in anonymous networks. In Proceedings of the 15th International Conference on Distributed Computing (DISC), volume 2180 of Lecture Notes in Computer Science, pages 33-47. Springer, 2001.
François Bonnet and Michel Raynal. The price of anonymity: Optimal consensus despite asynchrony, crash, and anonymity. ACM Transactions on Autonomous and Adaptive Systems, 6(4):23, 2011.
Harry Buhrman, Alessandro Panconesi, Riccardo Silvestri, and Paul Vitanyi. On the importance of having an identity or, is consensus really universal? Distributed Computing, 18(3):167-176, 2006.
Bogdan S. Chlebus, Gianluca De Marco, and Muhammed Talo. Anonymous processors with synchronous shared memory: Las Vegas algorithms. Submitted.
Bogdan S. Chlebus, Gianluca De Marco, and Muhammed Talo. Anonymous processors with synchronous shared memory. CoRR, abs/1507.02272, 2015.
Bogdan S. Chlebus and Dariusz R. Kowalski. Asynchronous exclusive selection. In Proceedings of the 27th ACM Symposium on Principles of Distributed Computing (PODC), pages 375-384, 2008.
Ömer Eğecioğlu and Ambuj K. Singh. Naming symmetric processes using shared variables. Distributed Computing, 8(1):19-38, 1994.
Peter van Emde Boas. Machine models and simulation. In Handbook of Theoretical Computer Science, Volume A: Algorithms and Complexity (A), pages 1-66. The MIT Press, 1990.
Yuval Emek, Jochen Seidel, and Roger Wattenhofer. Computability in anonymous networks: Revocable vs. irrecovable outputs. In Proceedings of the 41st International Colloquium on Automata, Languages, and Programming (ICALP), Part II, volume 8573 of Lecture Notes in Computer Science, pages 183-195. Springer, 2014.
Faith E. Fich and Eric Ruppert. Hundreds of impossibility results for distributed computing. Distributed Computing, 16(2-3):121-163, 2003.
Rachid Guerraoui and Eric Ruppert. Anonymous and fault-tolerant shared-memory computing. Distributed Computing, 20(3):165-177, 2007.
Joseph JáJá. An Introduction to Parallel Algorithms. Addison-Wesley, 1992.
Prasad Jayanti and Sam Toueg. Wakeup under read/write atomicity. In Proceedings of the 4th International Workshop on Distributed Algorithms (WDAG), volume 486 of Lecture Notes in Computer Science, pages 277-288. Springer, 1990.
Shay Kutten, Rafail Ostrovsky, and Boaz Patt-Shamir. The Las-Vegas processor identity problem (How and when to be unique). Journal of Algorithms, 37(2):468-494, 2000.
Richard J Lipton and Arvin Park. The processor identity problem. Information Processing Letters, 36(2):91-94, 1990.
Alessandro Panconesi, Marina Papatriantafilou, Philippas Tsigas, and Paul M. B. Vitányi. Randomized naming using wait-free shared variables. Distributed Computing, 11(3):113-124, 1998.
Eric Ruppert. The anonymous consensus hierarchy and naming problems. In Proceedings of the 11th International Conference on Principles of Distributed Systems (OPODIS), volume 4878 of Lecture Notes in Computer Science, pages 386-400. Springer, 2007.
Naoshi Sakamoto. Comparison of initial conditions for distributed algorithms on anonymous networks. In Proceedings of the 18th ACM Symposium on Principles of Distributed Computing (PODC), pages 173-179, 1999.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Lower Bounds on the Amortized Time Complexity of Shared Objects
The amortized step complexity of an implementation measures its performance as a whole, rather than the performance of individual operations. Specifically, the amortized step complexity of an implementation is the average number of steps performed by invoked operations, in the worst case, taken over all possible executions. The amortized step complexity of a wide range of known lock- free implementations for shared data structures, like stacks, queues, linked lists, doubly-linked lists and binary trees, includes an additive factor linear in the point contention—the number of processes simultaneously active in the execution.
This paper shows that an additive factor, linear in the point contention, is inherent in the amortized step complexity for lock-free implementations of many distributed data structures, including stacks, queues, heaps, linked lists and search trees.
monotone objects
stacks and queues
trees
step complexity
remote memory references
16:1-16:18
Regular Paper
Hagit
Attiya
Hagit Attiya
Arie
Fouren
Arie Fouren
10.4230/LIPIcs.OPODIS.2017.16
James H Anderson, Yong-Jik Kim, and Ted Herman. Shared-memory mutual exclusion: major research trends since 1986. Distributed Computing, 16(2):75-110, 2003.
Richard J. Anderson and Heather Woll. Wait-free parallel algorithms for the union-find problem. In Proceedings of the Twenty-third Annual ACM Symposium on Theory of Computing, STOC '91, pages 370-380, New York, NY, USA, 1991. ACM. URL: http://dx.doi.org/10.1145/103418.103458.
http://dx.doi.org/10.1145/103418.103458
Hagit Attiya and Arie Fouren. Poly-logarithmic adaptive algorithms require revealing primitives. Journal of Parallel and Distributed Computing, 109:102-116, 2017. URL: http://dx.doi.org/10.1016/j.jpdc.2017.05.010.
http://dx.doi.org/10.1016/j.jpdc.2017.05.010
Rudolf Bayer and Mario Schkolnick. Concurrency of operations on b-trees. Acta informatica, 9(1):1-21, 1977.
Faith Ellen, Panagiota Fatourou, Joanna Helga, and Eric Ruppert. The amortized complexity of non-blocking binary search trees. In Proceedings of the 2014 ACM Symposium on Principles of Distributed Computing, PODC '14, pages 332-340, New York, NY, USA, 2014. ACM. URL: http://dx.doi.org/10.1145/2611462.2611486.
http://dx.doi.org/10.1145/2611462.2611486
Mikhail Fomitchev and Eric Ruppert. Lock-free linked lists and skip lists. In Proceedings of the Twenty-third Annual ACM Symposium on Principles of Distributed Computing, PODC '04, pages 50-59, New York, NY, USA, 2004. ACM. URL: http://dx.doi.org/10.1145/1011767.1011776.
http://dx.doi.org/10.1145/1011767.1011776
Timothy Harris. A pragmatic implementation of non-blocking linked-lists. Distributed Computing, pages 300-314, 2001.
Steve Heller, Maurice Herlihy, Victor Luchangco, Mark Moir, William N Scherer, and Nir Shavit. A lazy concurrent list-based set algorithm. In Proceedings of the 9th international conference on Principles of Distributed Systems, pages 3-16. Springer-Verlag, 2005.
Maurice Herlihy and Nir Shavit. The art of multiprocessor programming. Morgan Kaufmann, 2011.
Yong-Jik Kim and James H Anderson. A time complexity lower bound for adaptive mutual exclusion. Distributed Computing, 24(6):271-297, 2012.
Maged M Michael. High performance dynamic lock-free hash tables and list-based sets. In Proceedings of the fourteenth annual ACM symposium on Parallel algorithms and architectures, pages 73-82. ACM, 2002.
Eric Ruppert. Analysing the average time complexity of lock-free data structures. In Workshop on Complexity and Analysis of Distributed Algorithms, 2016. [http://www.birs.ca/events/2016/5-day-workshops/16w5152/videos/watch/201612011630-Ruppert.html; accessed 22-Mar-2017].
http://www.birs.ca/events/2016/5-day-workshops/16w5152/videos/watch/201612011630-Ruppert.html
Niloufar Shafiei. Non-Blocking Data Structures Handling Multiple Changes Atomically. PhD thesis, York University, 2015.
R. Kent Treiber. Systems programming: Coping with parallelism. International Business Machines Incorporated, Thomas J. Watson Research Center, 1986.
P. Turan. On an extremal problem in graph theory (in Hungarian). Mat. Fiz. Lapok, 48:436-452, 1941.
John D Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing, pages 214-222. ACM, 1995.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Mutual Exclusion Algorithms with Constant RMR Complexity and Wait-Free Exit Code
Two local-spinning queue-based mutual exclusion algorithms are presented that have several de- sired properties: (1) their exit codes are wait-free, (2) they satisfy FIFO fairness, (3) they have constant RMR complexity in both the CC and the DSM models, (4) it is not assumed that the number of processes, n, is a priori known, that is, processes may appear or disappear intermit- tently, (5) they use only O(n) shared memory locations, and (6) they make no assumptions on what and how memory is allocated.
The algorithms are inspired by J. M. Mellor-Crummey and M. L. Scott famous MCS queue- based algorithm [13] which, except for not having a wait-free exit code, satisfies similar properties. A drawback of the MCS algorithm is that executing the exit code (i.e., releasing a lock) requires spinning – a process executing its exit code may need to wait for the process that is behind it in the queue to take a step before it can proceed. The two new algorithms overcome this drawback while preserving the simplicity and elegance of the original algorithm.
Our algorithms use exactly the same atomic instruction set as the original MCS algorithm, namely: read, write, fetch-and-store and compare-and-swap. In our second algorithm it is possible to recycle memory locations so that if there are L mutual exclusion locks, and each process accesses at most one lock at a time, then the algorithm needs only O(L + n) space, as compared to O(Ln) needed by our first algorithm.
Mutual exclusion
locks
local-spinning
cache coherent
distributed shared memory
RMR complexity
17:1-17:16
Regular Paper
Rotem
Dvir
Rotem Dvir
Gadi
Taubenfeld
Gadi Taubenfeld
10.4230/LIPIcs.OPODIS.2017.17
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Remote Memory References at Block Granularity
The cost of accessing shared objects that are stored in remote memory, while neglecting accesses to shared objects that are cached in the local memory, can be evaluated by the number of remote memory references (RMRs) in an execution. Two flavours of this measure—cache-coherent (CC) and distributed shared memory (DSM)—model two popular shared-memory architectures. The number of RMRs, however, does not take into account the granularity of memory accesses, namely, the fact that accesses to the shared memory are performed in blocks.
This paper proposes a new measure, called block RMRs, counting the number of remote memory references while taking into account the fact that shared objects can be grouped into blocks. On the one hand, this measure reflects the fact that the RMR incurred for bringing a shared object to the local memory might save another RMR for bringing another object placed at the same block. On the other hand, this measure accounts for false sharing: the fact that an RMR may be incurred when accessing an object due to a concurrent access to another object in the same block.
This paper proves that in both the CC and the DSM models, finding an optimal placement is NP-hard when objects have different sizes, even for two processes. In the CC model, finding an optimal placement, i.e., grouping of objects into blocks, is NP-hard when a block can store three objects or more; the result holds even if the sequence of accesses is known in advance. In the DSM model, the answer depends on whether there is an efficient mechanism to inform processes that the data in their local memory is no longer valid, i.e., cache coherence is supported. If coherence is supported with cheap invalidation, then finding an optimal solution is NP-hard. If coherence is not supported, an optimal placement can be achieved by placing each object in the memory of the process that accesses it most often, if the sequence of accesses is known in advance.
false sharing
cache coherence
distributed shared memory
NP-hardness
18:1-18:17
Regular Paper
Hagit
Attiya
Hagit Attiya
Gili
Yavneh
Gili Yavneh
10.4230/LIPIcs.OPODIS.2017.18
Yehuda Afek, Dave Dice, and Adam Morrison. Cache index-aware memory allocation. SIGPLAN Not., 46(11):55-64, 2011. URL: http://dx.doi.org/10.1145/2076022.1993486.
http://dx.doi.org/10.1145/2076022.1993486
Dan Alistarh, James Aspnes, Seth Gilbert, and Rachid Guerraoui. The complexity of renaming. In IEEE 52nd Annual Symposium on Foundations of Computer Science (FOCS), pages 718-727, 2011.
James H. Anderson, Yong-Jik Kim, and Ted Herman. Shared-memory mutual exclusion: Major research trends since 1986. Distrib. Comput., 16(2-3):75-110, 2003. URL: http://dx.doi.org/10.1007/s00446-003-0088-6.
http://dx.doi.org/10.1007/s00446-003-0088-6
Lars Arge, Michael A. Bender, Erik D. Demaine, Bryan Holland-Minkley, and J. Ian Munro. Cache-oblivious priority queue and graph algorithm applications. In Proceedings of the Thiry-fourth Annual ACM Symposium on Theory of Computing, STOC, pages 268-276, 2002. URL: http://dx.doi.org/10.1145/509907.509950.
http://dx.doi.org/10.1145/509907.509950
Guy E. Blelloch, Jeremy T. Fineman, Phillip B. Gibbons, and Harsha Vardhan Simhadri. Scheduling irregular parallel computations on hierarchical caches. In Proceedings of the 23rd Annual ACM Symposium on Parallelism in Algorithms and Architectures, SPAA, pages 355-366, 2011. URL: http://dx.doi.org/10.1145/1989493.1989553.
http://dx.doi.org/10.1145/1989493.1989553
William J. Bolosky and Michael L. Scott. False sharing and its effect on shared memory performance. In USENIX Experiences with Distributed and Multiprocessor Systems - Volume 4, 1993. URL: http://dl.acm.org/citation.cfm?id=1295480.1295483.
http://dl.acm.org/citation.cfm?id=1295480.1295483
Gerth Stølting Brodal, Rolf Fagerberg, and Gabriel Moruz. Cache-aware and cache-oblivious adaptive sorting. In Proceedings of the 32nd International Conference on Automata, Languages and Programming, ICALP, pages 576-588, 2005. URL: http://dx.doi.org/10.1007/11523468_47.
http://dx.doi.org/10.1007/11523468_47
Brad Calder, Chandra Krintz, Simmi John, and Todd Austin. Cache-conscious data placement. SIGPLAN Not., 33(11):139-149, 1998. URL: http://dx.doi.org/10.1145/291006.291036.
http://dx.doi.org/10.1145/291006.291036
Trishul M. Chilimbi, Mark D. Hill, and James R. Larus. Cache-conscious structure layout. In Proceedings of the ACM Conference on Programming Language Design and Implementation, PLDI, pages 1-12, 1999.
Rezaul Alam Chowdhury, Vijaya Ramachandran, Francesco Silvestri, and Brandon Blakeley. Oblivious algorithms for multicores and networks of processors. Journal of Parallel and Distributed Computing, 73(7):911-925, 2013.
Susan J. Eggers and Tor E. Jeremiassen. Eliminating false sharing. In Proceedings of the International Conference on Parallel Processing, ICPP. Volume I: Architecture/Hardware, pages 377-381, 1991.
Rolf Fagerberg, Anna Pagh, and Rasmus Pagh. External string sorting: Faster and cache-oblivious. In Proceedings of the 23rd Annual Conference on Theoretical Aspects of Computer Science, STACS, pages 68-79, 2006. URL: http://dx.doi.org/10.1007/11672142_4.
http://dx.doi.org/10.1007/11672142_4
Arash Farzan, Paolo Ferragina, Gianni Franceschini, and J. Ian Munro. Cache-oblivious comparison-based algorithms on multisets. In Proceedings of the 13th Annual European Conference on Algorithms, ESA, pages 305-316, 2005. URL: http://dx.doi.org/10.1007/11561071_29.
http://dx.doi.org/10.1007/11561071_29
Matteo Frigo, Charles E. Leiserson, Harald Prokop, and Sridhar Ramachandran. Cache-oblivious algorithms. In Proceedings of the 40th Annual Symposium on Foundations of Computer Science (FOCS), pages 285-297, 1999.
Michael R. Garey and David S. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman &Co., New York, NY, USA, 1979.
Wojciech Golab, Danny Hendler, and Philipp Woelfel. An O(1) RMRs leader election algorithm. SIAM J. Comput., 39(7):2726-2760, 2010.
Laurent Hyafil and Ronald L. Rivest. Graph partitioning and constructing optimal decision trees are polynomial complete problems. Technical Report Rapport de Recherche no. 33, IRIA - Laboratoire de Recherche en Informatique et Automatique, October 1973.
Rahman Lavaee. The hardness of data packing. In Proceedings of the 43rd Annual ACM Symposium on Principles of Programming Languages, POPL, pages 232-242, 2016. URL: http://dx.doi.org/10.1145/2837614.2837669.
http://dx.doi.org/10.1145/2837614.2837669
Bill Nitzberg and Virginia Lo. Distributed shared memory: A survey of issues and algorithms. Computer, 24(8):52-60, aug 1991. URL: http://dx.doi.org/10.1109/2.84877.
http://dx.doi.org/10.1109/2.84877
Erez Petrank and Dror Rawitz. The hardness of cache conscious data placement. SIGPLAN Not., 37(1):101-112, 2002. URL: http://dx.doi.org/10.1145/565816.503283.
http://dx.doi.org/10.1145/565816.503283
M.D. Plummer and L. Lovász. Matching Theory. North-Holland Mathematics Studies. Elsevier Science, 1986. URL: https://books.google.co.il/books?id=mycZP-J344wC.
https://books.google.co.il/books?id=mycZP-J344wC
Harald Prokop. Cache-oblivious algorithms. Master’s thesis, Massacusetts Institute if Technology, Cambridge, MA, 7 1999.
Josep Torrellas, HS Lam, and John L. Hennessy. False sharing and spatial locality in multiprocessor caches. IEEE Transactions on Computers, 43(6):651-663, 1994.
P. van Emde Boas. Preserving order in a forest in less than logarithmic time. In Proceedings of the 16th Symposium on Foundations of Computer Science, pages 75-84, 1975.
Jae-Heon Yang and James H. Anderson. A fast, scalable mutual exclusion algorithm. Distributed Computing, 9(1):51-60, 1995. URL: http://dx.doi.org/10.1007/BF01784242.
http://dx.doi.org/10.1007/BF01784242
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Constant-Space Population Protocols for Uniform Bipartition
In this paper, we consider a uniform bipartition problem in a population protocol model. The goal of the uniform bipartition problem is to divide a population into two groups of the same size. We study the problem under various assumptions: 1) a population with or without a base station, 2) weak or global fairness, 3) symmetric or asymmetric protocols, and 4) designated or arbitrary initial states. As a result, we completely clarify constant-space solvability of the uniform bipartition problem and, if solvable, propose space-optimal protocols.
population protocol
uniform bipartition
distributed protocol
19:1-19:17
Regular Paper
Hiroto
Yasumi
Hiroto Yasumi
Fukuhito
Ooshita
Fukuhito Ooshita
Ken'ichi
Yamaguchi
Ken'ichi Yamaguchi
Michiko
Inoue
Michiko Inoue
10.4230/LIPIcs.OPODIS.2017.19
Dan Alistarh, James Aspnes, David Eisenstat, Rati Gelashvili, and Ronald L Rivest. Time-space trade-offs in population protocols. In Proc. of the 28th Annual ACM-SIAM Symposium on Discrete Algorithms, pages 2560-2579, 2017.
Dan Alistarh and Rati Gelashvili. Polylogarithmic-time leader election in population protocols. In Proc. of the 42nd International Colloquium on Automata, Languages, and Programming, pages 479-491, 2015.
Dan Alistarh, Rati Gelashvili, and Milan Vojnović. Fast and exact majority in population protocols. In Proc. of the 2015 ACM Symposium on Principles of Distributed Computing, pages 47-56, 2015.
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.
Dana Angluin, James Aspnes, and David Eisenstat. Fast computation by population protocols with a leader. Distributed Computing, 21(3):183-199, 2008.
Dana Angluin, James Aspnes, and David Eisenstat. A simple population protocol for fast robust approximate majority. Distributed Computing, 21(2):87-102, 2008.
Dana Angluin, James Aspnes, David Eisenstat, and Eric Ruppert. The computational power of population protocols. Distributed Computing, 20(4):279-304, 2007.
Dana Angluin, James Aspnes, Michael J Fischer, and Hong Jiang. Self-stabilizing population protocols. In International Conference On Principles Of Distributed Systems, pages 103-117. Springer, 2005.
James Aspnes, Joffroy Beauquier, Janna Burman, and Devan Sohier. Time and space optimal counting in population protocols. In Proc. of International Conference on Principles of Distributed Systems, pages 13:1-13:17, 2016.
James Aspnes and Eric Ruppert. An introduction to population protocols. In Middleware for Network Eccentric and Mobile Applications, pages 97-120, 2009.
Joffroy Beauquier, Janna Burman, Simon Claviere, and Devan Sohier. Space-optimal counting in population protocols. In Proc. of International Symposium on Distributed Computing, pages 631-646, 2015.
Joffroy Beauquier, Julien Clement, Stephane Messika, Laurent Rosaz, and Brigitte Rozoy. Self-stabilizing counting in mobile sensor networks with a base station. In Proc. of International Symposium on Distributed Computing, pages 63-76, 2007.
Amanda Belleville, David Doty, and David Soloveichik. Hardness of computing and approximating predicates and functions with leaderless population protocols. In Proc. of 44th International Colloquium on Automata, Languages, and Programming, pages 141:1-141:14, 2017.
Olivier Bournez, Jérémie Chalopin, Johanne Cohen, and Xavier Koegler. Playing with population protocols. In Proc. of the International Workshop on the Complexity of Simple Programs, pages 3-15, 2008.
Shukai Cai, Taisuke Izumi, and Koichi Wada. How to prove impossibility under global fairness: On space complexity of self-stabilizing leader election on a population protocol model. Theory of Computing Systems, 50(3):433-445, 2012.
Carole Delporte-Gallet, Hugues Fauconnier, Rachid Guerraoui, and Eric Ruppert. When birds die: Making population protocols fault-tolerant. Distributed Computing in Sensor Systems, pages 51-66, 2006.
David Doty and David Soloveichik. Stable leader election in population protocols requires linear time. In Proc. of International Symposium on Distributed Computing, pages 602-616, 2015.
Leszek Gasieniec, David Hamilton, Russell Martin, Paul G Spirakis, and Grzegorz Stachowiak. Deterministic population protocols for exact majority and plurality. In Proc. of International Conference on Principles of Distributed Systems, pages 14:1-14:14, 2016.
Taisuke Izumi. On space and time complexity of loosely-stabilizing leader election. In Proc. of International Colloquium on Structural Information and Communication Complexity, pages 299-312, 2015.
Tomoko Izumi, Keigo Kinpara, Taisuke Izumi, and Koichi Wada. Space-efficient self-stabilizing counting population protocols on mobile sensor networks. Theoretical Computer Science, 552:99-108, 2014.
Anissa Lamani and Masafumi Yamashita. Realization of periodic functions by self-stabilizing population protocols with synchronous handshakes. In Proc. of International Conference on Theory and Practice of Natural Computing, pages 21-33, 2016.
Satoshi Murata, Akihiko Konagaya, Satoshi Kobayashi, Hirohide Saito, and Masami Hagiya. Molecular robotics: A new paradigm for artifacts. New Generation Computing, 31(1):27-45, 2013.
Yuichi Sudo, Toshimitsu Masuzawa, Ajoy K Datta, and Lawrence L Larmore. The same speed timer in population protocols. In Proc. of International Conference on Distributed Computing Systems, pages 252-261, 2016.
Yuichi Sudo, Junya Nakamura, Yukiko Yamauchi, Fukuhito Ooshita, Hirotsugu Kakugawa, and Toshimitsu Masuzawa. Loosely-stabilizing leader election in a population protocol model. Theoretical Computer Science, 444:100-112, 2012.
Yuichi Sudo, Fukuhito Ooshita, Hirotsugu Kakugawa, and Toshimitsu Masuzawa. Loosely-stabilizing leader election on arbitrary graphs in population protocols without identifiers nor random numbers. In Proc. of International Conference on Principles of Distributed Systems, pages 14:1-14:16, 2015.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Fast Detection of Stable and Count Predicates in Parallel Computations
Enumerating all consistent states of a parallel computation that satisfy a given predicate is an important problem in debugging and verification of parallel programs. We give a fast algorithm to enumerate all consistent states of a parallel computation that satisfy a stable predicate. In addi- tion, we define a new category of global predicates called count predicates and give an algorithm to enumerate all consistent states (of the computation) that satisfy it. All existing predicate detection algorithms, such as BFS, DFS and Lex algorithms, do not exploit the knowledge about the nature of the predicates, and thus may visit all global states of the computation in the worst case. In comparison, our algorithms only visit the states that satisfy the given predicate, and thus take time and space that is a polynomial function of the number of states of interest. In doing so, they provide a significant reduction — exponential in many cases — in time complexities in comparison to existing algorithms.
Algorithms
Theory
Predicate Detection
Parallel Programs
20:1-20:21
Regular Paper
Himanshu
Chauhan
Himanshu Chauhan
Vijay K.
Garg
Vijay K. Garg
10.4230/LIPIcs.OPODIS.2017.20
S. Alagar and S. Venkatesan. Techniques to Tackle State Explosion in Global Predicate Detection. IEEE Transactions on Software Engineering (TSE), 27(8):704-714, AUG 2001.
Lucio Bianco, Paolo Dell ‘Olmo, and Stefano Giordani. An optimal algorithm to find the jump number of partially ordered sets. Computational Optimization and Applications, 8(2):197-210, 1997.
K. M. Chandy and L. Lamport. Distributed Snapshots: Determining Global States of Distributed Systems. ACM Transactions on Computer Systems, 3(1):63-75, FEB 1985.
Yen-Jung Chang and Vijay K. Garg. A parallel algorithm for global states enumeration in concurrent systems. In Proceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2015, pages 140-149. ACM, 2015.
Yen-Jung Chang and Vijay K. Garg. Quicklex: A fast algorithm for consistent global states enumeration of distributed computations. In 19th International Conference on Principles of Distributed Systems, OPODIS 2015, December 14-17, 2015, Rennes, France, pages 25:1-25:17, 2015.
Himanshu Chauhan and Vijay K. Garg. Fast detection of stable and counting predicates in parallel computations. Extended Version, 2017. URL: http://users.ece.utexas.edu/~garg/dist/opodis17.pdf.
http://users.ece.utexas.edu/~garg/dist/opodis17.pdf
Himanshu Chauhan and Vijay K. Garg. Space efficient breadth-first and level traversals of consistent global states of parallel programs. In 17th International Conference on Runtime Verification (RV 2017), pages 138-154, 2017.
Himanshu Chauhan, Vijay K Garg, Aravind Natarajan, and Neeraj Mittal. A distributed abstraction algorithm for online predicate detection. In Reliable Distributed Systems (SRDS), 2013 IEEE 32nd International Symposium on, pages 101-110. IEEE, 2013.
M Chein and M Habib. The jump number of dags and posets: an introduction. Annals of Discrete Mathematics, 9:189-194, 1980.
Feng Chen, Traian Florin Serbanuta, and Grigore Roşu. jPredictor: a predictive runtime analysis tool for java. In Proceedings of the International Conference on Software Engineering, pages 221-230, 2008.
R. Cooper and K. Marzullo. Consistent detection of global predicates. In Proc. of the Workshop on Parallel and Distributed Debugging, pages 163-173, 1991.
B. A. Davey and H. A. Priestley. Introduction to Lattices and Order. Cambridge University Press, Cambridge, UK, 1990.
C. J. Fidge. Timestamps in Message-Passing Systems that Preserve the Partial-Ordering. In K. Raymond, editor, Proceedings of the 11th Australian Computer Science Conference (ACSC), pages 56-66, FEB 1988.
Cormac Flanagan and Stephen N. Freund. FastTrack: efficient and precise dynamic race detection. In Proceedings of the Conference on Programming Language Design and Implementation, pages 121-133, 2009.
David Gale and Lloyd S Shapley. College admissions and the stability of marriage. The American Mathematical Monthly, 69(1):9-15, 1962.
Bernhard Ganter. Two basic algorithms in concept analysis. In Proceedings of the International Conference on Formal Concept Analysis, pages 312-340, 2010.
Vijay K. Garg. Enumerating global states of a distributed computation. In Proceedings of the International Conference on Parallel and Distributed Computing Systems, pages 134-139, 2003.
Vijay K. Garg and B. Waldecker. Detection of weak unstable predicates in distributed programs. IEEE Transactions on Parallel and Distributed Systems, 5(3):299-307, 1994.
Dan Gusfield and Robert W Irving. The stable marriage problem: structure and algorithms. MIT press, 1989.
Michel Habib, Raoul Medina, Lhouari Nourine, and George Steiner. Efficient algorithms on distributive lattices. Discrete Appl. Math., 110(2-3):169-187, 2001.
Jeff Huang and Charles Zhang. Persuasive prediction of concurrency access anomalies. In Proceedings of the International Symposium on Software Testing and Analysis, pages 144-154, 2011.
Roland Jegou, Raoul Medina, and Lhouari Nourine. Linear space algorithm for on-line detection of global predicates. In Proc. of the International Workshop on Structures in Concurrency Theory, pages 175-189, 1995.
L. Lamport. Time, Clocks, and the Ordering of Events in a Distributed System. Communications of the ACM (CACM), 21(7):558-565, JUL 1978.
Leslie Lamport. Paxos made simple. ACM Sigact News, 32(4):18-25, 2001.
Shan Lu, Joseph Tucek, Feng Qin, and Yuanyuan Zhou. AVIO: detecting atomicity violations via access interleaving invariants. In Proceedings of the International Conference on Architectural Support for Programming Languages and Operating Systems, pages 37-48, 2006.
F. Mattern. Virtual Time and Global States of Distributed Systems. In Parallel and Distributed Algorithms: Proceedings of the Workshop on Distributed Algorithms (WDAG), pages 215-226, 1989.
N. Mittal and V. K. Garg. Techniques and Applications of Computation Slicing. Distributed Computing (DC), 17(3):251-277, MAR 2005.
N. Mittal, A. Sen, and V. K. Garg. Solving Computation Slicing using Predicate Detection. IEEE Transactions on Parallel and Distributed Systems (TPDS), 18(12):1700-1713, DEC 2007.
Gara Pruesse and Frank Ruskey. Gray codes from antimatroids. Order 10, pages 239-252, 1993.
Matthew B. Squire. Enumerating the ideals of a poset. In PhD Dissertation, Department of Computer Science, North Carolina State University, 1995.
George Steiner. An algorithm to generate the ideals of a partial order. Oper. Res. Lett., 5(6):317-320, 1986.
Maciej M Sysło. Minimizing the jump number for partially ordered sets: A graph-theoretic approach. Order, 1(1):7-19, 1984.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Fast Distributed Approximation for TAP and 2-Edge-Connectivity
The tree augmentation problem (TAP) is a fundamental network design problem, in which the input is a graph G and a spanning tree T for it, and the goal is to augment T with a minimum set of edges Aug from G, such that T ∪ Aug is 2-edge-connected.
TAP has been widely studied in the sequential setting. The best known approximation ratio of 2 for the weighted case dates back to the work of Frederickson and JáJá, SICOMP 1981. Recently, a 3/2-approximation was given for the unweighted case by Kortsarz and Nutov, TALG 2016, and recent breakthroughs by Adjiashvili, SODA 2017, and by Fiorini et al., 2017, give approximations better than 2 for bounded weights.
In this paper, we provide the first fast distributed approximations for TAP. We present a distributed 2-approximation for weighted TAP which completes in O(h) rounds, where h is the height of T . When h is large, we show a much faster 4-approximation algorithm for the unweighted case, completing in O(D + (√n) log^{*} n) rounds, where n is the number of vertices and D is the diameter of G.
Immediate consequences of our results are an O(D)-round 2-approximation algorithm for the minimum size 2-edge-connected spanning subgraph, which significantly improves upon the running time of previous approximation algorithms, and an O(hMST + (√n)log^{*} n)-round 3- approximation algorithm for the weighted case, where hMST is the height of the MST of the graph. Additional applications are algorithms for verifying 2-edge-connectivity and for augment- ing the connectivity of any connected spanning subgraph to 2.
Finally, we complement our study with proving lower bounds for distributed approximations of TAP.
approximation algorithms
distributed network design
connectivity augmentation
21:1-21:20
Regular Paper
Keren
Censor-Hillel
Keren Censor-Hillel
Michal
Dory
Michal Dory
10.4230/LIPIcs.OPODIS.2017.21
David Adjiashvili. Beating approximation factor two for weighted tree augmentation with bounded costs. In Proceedings of the Twenty-Eighth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), pages 2384-2399. SIAM, 2017.
Stephen Alstrup, Cyril Gavoille, Haim Kaplan, and Theis Rauhe. Nearest common ancestors: A survey and a new algorithm for a distributed environment. Theory of Computing Systems, 37(3):441-456, 2004.
Keren Censor-Hillel and Michal Dory. Fast distributed approximation for TAP and 2-edge-connectivity. arXiv:1711.03359, 2017. URL: https://arxiv.org/abs/1711.03359.
https://arxiv.org/abs/1711.03359
Keren Censor-Hillel, Mohsen Ghaffari, and Fabian Kuhn. Distributed connectivity decomposition. In Proceedings of the 2014 ACM symposium on Principles of distributed computing (PODC), pages 156-165. ACM, 2014.
Joseph Cheriyan and Zhihan Gao. Approximating (unweighted) tree augmentation via lift-and-project, part II. Algorithmica, pages 1-44, 2015.
Michael Elkin. An unconditional lower bound on the time-approximation trade-off for the distributed minimum spanning tree problem. SIAM Journal on Computing, 36(2):433-456, 2006.
Michael Elkin. A simple deterministic distributed MST algorithm, with near-optimal time and message complexities. In Elad Michael Schiller and Alexander A. Schwarzmann, editors, Proceedings of the ACM Symposium on Principles of Distributed Computing, PODC 2017, Washington, DC, USA, July 25-27, 2017, pages 157-163. ACM, 2017. URL: http://dx.doi.org/10.1145/3087801.3087823.
http://dx.doi.org/10.1145/3087801.3087823
Samuel Fiorini, Martin Groß, Jochen Könemann, and Laura Sanità. A 3/2-approximation algorithm for tree augmentation via chvátal-gomory cuts. CoRR, abs/1702.05567, 2017. URL: http://arxiv.org/abs/1702.05567.
http://arxiv.org/abs/1702.05567
Greg N Frederickson and Joseph JáJá. Approximation algorithms for several graph augmentation problems. SIAM Journal on Computing, 10(2):270-283, 1981.
Robert G. Gallager, Pierre A. Humblet, and Philip M. Spira. A distributed algorithm for minimum-weight spanning trees. ACM Transactions on Programming Languages and systems (TOPLAS), 5(1):66-77, 1983.
Juan A Garay, Shay Kutten, and David Peleg. A sublinear time distributed algorithm for minimum-weight spanning trees. SIAM Journal on Computing, 27(1):302-316, 1998.
Mohsen Ghaffari and Merav Parter. Near-optimal distributed algorithms for fault-tolerant tree structures. In Proceedings of the 28th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pages 387-396. ACM, 2016.
Michel X Goemans, Andrew V Goldberg, Serge A Plotkin, David B Shmoys, Eva Tardos, and David P Williamson. Improved approximation algorithms for network design problems. In SODA, volume 94, pages 223-232, 1994.
P Humblet. A distributed algorithm for minimum weight directed spanning trees. IEEE Transactions on Communications, 31(6):756-762, 1983.
Kamal Jain. A factor 2 approximation algorithm for the generalized steiner network problem. Combinatorica, 21(1):39-60, 2001.
Maleq Khan, Fabian Kuhn, Dahlia Malkhi, Gopal Pandurangan, and Kunal Talwar. Efficient distributed approximation algorithms via probabilistic tree embeddings. Distributed Computing, 25(3):189-205, 2012.
Samir Khuller. Approximation algorithms for finding highly connected subgraphs. In Approximation algorithms for NP-hard problems, pages 236-265. PWS Publishing Co., 1996.
Samir Khuller and Ramakrishna Thurimella. Approximation algorithms for graph augmentation. Journal of Algorithms, 14(2):214-225, 1993.
Samir Khuller and Uzi Vishkin. Biconnectivity approximations and graph carvings. Journal of the ACM (JACM), 41(2):214-235, 1994.
Guy Kortsarz and Zeev Nutov. Approximating minimum cost connectivity problems. In Dagstuhl Seminar Proceedings. Schloss Dagstuhl-Leibniz-Zentrum für Informatik, 2010.
Guy Kortsarz and Zeev Nutov. A simplified 1.5-approximation algorithm for augmenting edge-connectivity of a graph from 1 to 2. ACM Transactions on Algorithms (TALG), 12(2):23, 2016.
Sven O Krumke, Peter Merz, Tim Nonner, and Katharina Rupp. Distributed approximation algorithms for finding 2-edge-connected subgraphs. In International Conference On Principles Of Distributed Systems (OPODIS), pages 159-173. Springer, 2007.
Shay Kutten and David Peleg. Fast distributed construction of k-dominating sets and applications. In Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing (PODC), pages 238-251. ACM, 1995.
Christoph Lenzen and Boaz Patt-Shamir. Improved distributed steiner forest construction. In Proceedings of the 2014 ACM symposium on Principles of distributed computing (PODC), pages 262-271. ACM, 2014.
Nathan Linial. Locality in distributed graph algorithms. SIAM J. Comput., 21(1):193-201, 1992. URL: http://dx.doi.org/10.1137/0221015.
http://dx.doi.org/10.1137/0221015
Hiroshi Nagamochi and Toshihide Ibaraki. A linear-time algorithm for finding a sparse k-connected spanning subgraph of a k-connected graph. Algorithmica, 7(1):583-596, 1992.
Danupon Nanongkai and Hsin-Hao Su. Almost-tight distributed minimum cut algorithms. In International Symposium on Distributed Computing, pages 439-453. Springer, 2014.
Gopal Pandurangan, Peter Robinson, and Michele Scquizzato. A time-and message-optimal distributed algorithm for minimum spanning trees. In Proceedings of the 49th Annual ACM SIGACT Symposium on Theory of Computing (STOC), pages 743-756. ACM, 2017.
David Peleg. Distributed Computing: A Locality-Sensitive Approach. SIAM, 2000.
David Pritchard. Robust network computation. Master’s thesis, MIT, 2005.
David Pritchard and Ramakrishna Thurimella. Fast computation of small cuts via cycle space sampling. ACM Transactions on Algorithms (TALG), 7(4):46, 2011.
Atish Das Sarma, Stephan Holzer, Liah Kor, Amos Korman, Danupon Nanongkai, Gopal Pandurangan, David Peleg, and Roger Wattenhofer. Distributed verification and hardness of distributed approximation. SIAM Journal on Computing, 41(5):1235-1265, 2012.
Ramakrishna Thurimella. Sub-linear distributed algorithms for sparse certificates and biconnected components. In Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing (PODC), pages 28-37. ACM, 1995.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Schlegel Diagram and Optimizable Immediate Snapshot Protocol
In the topological study of distributed systems, the immediate snapshot is the fundamental computation block for the topological characterization of wait-free solvable tasks. However, in reality, the immediate snapshot is not available as a native built-in operation on shared memory distributed systems. Borowsky and Gafni have proposed a wait-free multi-round protocol that implements the immediate snapshot using more primitive operations, namely the atomic reads and writes.
In this paper, up to an appropriate reformulation on the original protocol by Borowsky and Gafni, we establish a tight link between each round of the protocol and a topological operation of subdivision using Schlegel diagram. Due to the fact shown by Kozlov that the standard chromatic subdivision is obtained by iterated subdivision using Schlegel diagram, the reformulated version is proven to compute the immediate snapshot in a topologically smoother way. We also show that the reformulated protocol is amenable to optimization: Since each round restricts the possible candidates of output to an iteratively smaller region of finer subdivision, each process executing the protocol can decide at an earlier round, beyond which the same final output is reached no matter how the remaining rounds are executed. This reduces the number of read and write operations involved in the overall execution of the protocol, relieving the bottleneck of access to shared memory.
Immediate snapshot protocol
Schlegel diagram
chromatic subdivision
program specialization
22:1-22:16
Regular Paper
Susumu
Nishimura
Susumu Nishimura
10.4230/LIPIcs.OPODIS.2017.22
Hagit Attiya and Sergio Rajsbaum. The combinatorial structure of wait-free solvable tasks. SIAM J. Comput., 31(4):1286-1313, 2002.
Fernando Benavides and Sergio Rajsbaum. The read/write protocol complex is collapsible. In LATIN 2016: Theoretical Informatics - 12th Latin American Symposium, volume 9644 of LNCS, pages 179-191. Springer, 2016.
Richard Bird. Pearls of Functional Algorithm Design. Cambridge University Press, 2010.
Elizabeth Borowsky and Eli Gafni. Generalized FLP impossibility result for t-resilient asynchronous computations. In Proceedings of the 25th Annual ACM Symposium on Theory of Computing, STOC, pages 91-100. ACM, 1993.
Elizabeth Borowsky and Eli Gafni. Immediate atomic snapshots and fast renaming (extended abstract). In Proceedings of the 12th Annual ACM Symposium on Principles of Distributed Computing, pages 41-51. ACM, 1993.
Elizabeth Borowsky and Eli Gafni. A simple algorithmically reasoned characterization of wait-free computations. In Proc. of the 16th ACM Symposium on Principles of Distributed Computing, pages 189-198, 1997.
Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction to Algorithms. MIT Press, 3rd edition, 2009.
Eli Gafni, Yuan He, Petr Kuznetsov, and Thibault Rieutord. Read-write memory and k-set consensus as an affine task. In 20th International Conference on Principles of Distributed Systems (OPODIS 2016), pages 6:1-6:17, 2016.
Eli Gafni, Petr Kuznetsov, and Ciprian Manolescu. A generalized asynchronous computability theorem. In ACM Symposium on Principles of Distributed Computing, PODC '14, pages 222-231. ACM, 2014.
Eli Gafni and Sergio Rajsbaum. Recursion in distributed computing. In Stabilization, Safety, and Security of Distributed Systems: 12th International Symposium, SSS 2010, volume 6366 of LNCS, pages 362-376. Springer, 2010.
Maurice Herlihy, Dmitry N. Kozlov, and Sergio Rajsbaum. Distributed Computing Through Combinatorial Topology. Morgan Kaufmann, 2013.
Maurice Herlihy and Sergio Rajsbaum. Set consensus using arbitrary objects (preliminary version). In Proceedings of the 13th Annual ACM Symposium on Principles of Distributed Computing, pages 324-333. ACM, 1994.
Maurice Herlihy and Nir Shavit. The topological structure of asynchronous computability. Journal of the ACM, 46(6):858-923, 1999.
Gunnar Hoest and Nir Shavit. Toward a topological characterization of asynchronous complexity. SIAM J. Comput., 36(2):457-497, 2006.
Neil D. Jones, Carsten K. Gomard, and Peter Sestoft. Partial evaluation and automatic program generation. Prentice Hall, 1993.
Dmitry Kozlov. Combinatorial Algebraic Topology. Springer, 2008.
Dmitry N. Kozlov. Chromatic subdivision of a simplicial complex. Homology, Homotopy and Applications, 14(2):197-209, 2012.
Vikram Saraph, Maurice Herlihy, and Eli Gafni. Asynchronous computability theorems for t-resilient systems. In Distributed Computing - 30th International Symposium, DISC 2016, pages 428-441, 2016.
Günter M. Ziegler. Lectures on Polytopes, volume 152 of Graduate Texts in Mathematics. Springer, 1995.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Designing a Planetary-Scale IMAP Service with Conflict-free Replicated Data Types
Modern geo-replicated software serving millions of users across the globe faces the consequences of the CAP dilemma, i.e., the inevitable conflicts that arise when multiple nodes accept writes on shared state. The underlying problem is commonly known as fault-tolerant multi-leader replica- tion; actively researched in the distributed systems and database communities. As a more recent theoretical framework, Conflict-free Replicated Data Types (CRDTs) propose a solution to this problem by offering a set of always converging primitives. However, modeling non-trivial system state with CRDT primitives is a challenging and error-prone task. In this work, we propose a solution for a geo-replicated online service with fault-tolerant multi-leader replication based on CRDTs. We chose IMAP as use case due to its prevalence and simplicity. Therefore, we modeled an IMAP-CRDT and verified its correctness with the interactive theorem prover Isabelle/HOL. In order to bridge the gap between theory and practice, we implemented an open-source proto- type pluto and an IMAP benchmark for write-intensive workloads. We evaluated our prototype against the standard IMAP server Dovecot on a multi-continent public cloud. The results ex- pose the limitations of Dovecot with respect to response time performance and replication lag. Our prototype was able to leverage its conceptual advantages and outperformed Dovecot. We find that our approach is promising when facing the multitude of potential concurrency bugs in development of systems at planetary scale.
Geo-Replication
CRDT
Distributed Systems
IMAP
Isabelle/HOL
23:1-23:17
Regular Paper
Tim
Jungnickel
Tim Jungnickel
Lennart
Oldenburg
Lennart Oldenburg
Matthias
Loibl
Matthias Loibl
10.4230/LIPIcs.OPODIS.2017.23
Mehdi Ahmed-Nacer, Claudia-Lavinia Ignat, Gérald Oster, Hyun-Gul Roh, and Pascal Urso. Evaluating CRDTs for Real-time Document Editing. In ACM Symposium on Document Engineering, DocEng'11, pages 103-112, 2011.
Peter Bailis and Kyle Kingsbury. The Network is Reliable. Commun. ACM, 57(9):48-55, 2014.
Carlos Baquero, Paulo Sérgio Almeida, and Ali Shoker. Making Operation-Based CRDTs Operation-Based. In Distributed Applications and Interoperable Systems, DAIS'14, pages 126-140, 2014.
Eric Brewer. Spanner, TrueTime and the CAP Theorem. Technical report, Google, 2017.
Fay Chang, Jeffrey Dean, Sanjay Ghemawat, et al. Bigtable: A Distributed Storage System for Structured Data. In USENIX Symposium on Operating Systems Design and Implementation, OSDI'06, pages 15-15, 2006.
James C. Corbett, Jeffrey Dean, Michael Epstein, et al. Spanner: Google’s Globally-distributed Database. In USENIX Conference on Operating Systems Design and Implementation, OSDI'12, pages 251-264, 2012.
Mark R. Crispin. INTERNET MESSAGE ACCESS PROTOCOL - VERSION 4rev1. RFC 3501, University of Washington, 2003. URL: https://www.rfc-editor.org/rfc/rfc3501.txt.
https://www.rfc-editor.org/rfc/rfc3501.txt
Giuseppe DeCandia, Deniz Hastorun, Madan Jampani, et al. Dynamo: Amazon’s Highly Available Key-value Store. In ACM Symposium on Operating Systems Principles, SOSP'07, pages 205-220, 2007.
C. A. Ellis and S. J. Gibbs. Concurrency Control in Groupware Systems. SIGMOD Rec., 18(2):399-407, 1989.
Colin J. Fidge. Timestamps in Message-Passing Systems That Preserve the Partial Ordering. In Proceedings of the 11th Australian Computer Science Conference. Australian National University. Department of Computer Science, 1987.
Seth Gilbert and Nancy Lynch. Brewer’s Conjecture and the Feasibility of Consistent, Available, Partition-tolerant Web Services. SIGACT News, 33(2):51-59, 2002.
Victor B. F. Gomes, Martin Kleppmann, Dominic P. Mulligan, and Alastair R. Beresford. A framework for establishing Strong Eventual Consistency for Conflict-free Replicated Datatypes. Archive of Formal Proofs, 2017. URL: http://isa-afp.org/entries/CRDT.html.
http://isa-afp.org/entries/CRDT.html
Victor B. F. Gomes, Martin Kleppmann, Dominic P. Mulligan, and Alastair R. Beresford. Verifying Strong Eventual Consistency in Distributed Systems. Proc. ACM Program. Lang., 1(109):1-28, 2017.
Tim Jungnickel and Lennart Oldenburg. Pluto: The CRDT-Driven IMAP Server. In International Workshop on Principles and Practice of Consistency for Distributed Data, PaPoC'17, pages 1-5, 2017.
Tim Jungnickel, Lennart Oldenburg, and Matthias Loibl. The IMAP CmRDT. Archive of Formal Proofs, 2017. URL: http://isa-afp.org/entries/IMAP-CRDT.html.
http://isa-afp.org/entries/IMAP-CRDT.html
M. Kleppmann and A. R. Beresford. A Conflict-Free Replicated JSON Datatype. IEEE Transactions on Parallel and Distributed Systems, 28(10):2733-2746, 2017.
Martin Kleppmann. Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems. O'Reilly Media, Inc., 2017.
Avinash Lakshman and Prashant Malik. Cassandra: A Decentralized Structured Storage System. SIGOPS Oper. Syst. Rev., 44(2):35-40, 2010.
Frederic Lardinois. Gmail Now Has More Than 1B Monthly Active Users. techcrunch.com, 2016. [Online; posted February 1, 2016]. URL: https://tcrn.ch/1nJbAAe.
https://tcrn.ch/1nJbAAe
Mihai Letia, Nuno M. Preguiça, and Marc Shapiro. CRDTs: Consistency without concurrency control. Operating Systems Review, 44(2):29-34, 2010. URL: http://dx.doi.org/10.1145/1773912.1773921.
http://dx.doi.org/10.1145/1773912.1773921
Friedemann Mattern. Virtual Time and Global States of Distributed Systems. International Workshop on Parallel and Distributed Algorithms, pages 215-226, 1989.
Brice Nédelec, Pascal Molli, Achour Mostefaoui, and Emmanuel Desmontils. LSEQ: an Adaptive Structure for Sequences in Distributed Collaborative Editing. In ACM Symposium on Document Engineering, DocEng'13, pages 37-46, 2013.
Marc Shapiro, Nuno Preguiça, Carlos Baquero, and Marek Zawirski. A comprehensive study of Convergent and Commutative Replicated Data Types. Technical report, Inria, 2011. URL: https://hal.inria.fr/inria-00555588/file/techreport.pdf.
https://hal.inria.fr/inria-00555588/file/techreport.pdf
Marc Shapiro, Nuno Preguiça, Carlos Baquero, and Marek Zawirski. Conflict-Free Replicated Data Types. In International Symposium on Stabilization, Safety, and Security of Distributed Systems, SSS'11, pages 386-400, 2011.
D. B. Terry, M. M. Theimer, Karin Petersen, A. J. Demers, M. J. Spreitzer, and C. H. Hauser. Managing Update Conflicts in Bayou, a Weakly Connected Replicated Storage System. In ACM Symposium on Operating Systems Principles, SOSP'95, pages 172-182, 1995.
Werner Vogels. Eventually Consistent. Commun. ACM, 52(1):40-44, 2009.
Peter Zeller, Annette Bieniusa, and Arnd Poetzsch-Heffter. Formal Specification and Verification of CRDTs. In Formal Techniques for Distributed Objects, FORTE'14, pages 33-48, 2014.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Non-Uniform Replication
Replication is a key technique in the design of efficient and reliable distributed systems. As information grows, it becomes difficult or even impossible to store all information at every replica. A common approach to deal with this problem is to rely on partial replication, where each replica maintains only a part of the total system information. As a consequence, a remote replica might need to be contacted for computing the reply to some given query, which leads to high latency costs particularly in geo-replicated settings. In this work, we introduce the concept of non- uniform replication, where each replica stores only part of the information, but where all replicas store enough information to answer every query. We apply this concept to eventual consistency and conflict-free replicated data types. We show that this model can address useful problems and present two data types that solve such problems. Our evaluation shows that non-uniform replication is more efficient than traditional replication, using less storage space and network bandwidth.
Non-uniform Replication
Partial Replication
Replicated Data Types
Eventual Consistency
24:1-24:19
Regular Paper
Gonçalo
Cabrita
Gonçalo Cabrita
Nuno
Preguiça
Nuno Preguiça
10.4230/LIPIcs.OPODIS.2017.24
Paulo Sérgio Almeida, Ali Shoker, and Carlos Baquero. Delta state replicated data types. J. Parallel Distrib. Comput., 111:162-173, 2018. URL: http://dx.doi.org/10.1016/j.jpdc.2017.08.003.
http://dx.doi.org/10.1016/j.jpdc.2017.08.003
Sérgio Almeida, João Leitão, and Luís E. T. Rodrigues. Chainreaction: a causal+ consistent datastore based on chain replication. In Zdenek Hanzálek, Hermann Härtig, Miguel Castro, and M. Frans Kaashoek, editors, Eighth Eurosys Conference 2013, EuroSys '13, Prague, Czech Republic, April 14-17, 2013, pages 85-98. ACM, 2013. URL: http://dx.doi.org/10.1145/2465351.2465361.
http://dx.doi.org/10.1145/2465351.2465361
Gustavo Alonso. Partial database replication and group communication primitives. In Proc. European Research Seminar on Advances in Distributed Systems, 1997.
Daniel Barbará-Millá and Hector Garcia-Molina. The Demarcation Protocol: A Technique for Maintaining Constraints in Distributed Database Systems. The VLDB Journal, 3(3):325-353, jul 1994. URL: http://dx.doi.org/10.1007/BF01232643.
http://dx.doi.org/10.1007/BF01232643
James C. Corbett, Jeffrey Dean, Michael Epstein, Andrew Fikes, Christopher Frost, J. J. Furman, Sanjay Ghemawat, Andrey Gubarev, Christopher Heiser, Peter Hochschild, Wilson Hsieh, Sebastian Kanthak, Eugene Kogan, Hongyi Li, Alexander Lloyd, Sergey Melnik, David Mwaura, David Nagle, Sean Quinlan, Rajesh Rao, Lindsay Rolig, Yasushi Saito, Michal Szymaniak, Christopher Taylor, Ruth Wang, and Dale Woodford. Spanner: Google’s Globally-distributed Database. In Proc. 10th USENIX Conference on Operating Systems Design and Implementation, OSDI'12, 2012.
Tyler Crain and Marc Shapiro. Designing a causally consistent protocol for geo-distributed partial replication. In Carlos Baquero and Marco Serafini, editors, Proceedings of the First Workshop on Principles and Practice of Consistency for Distributed Data, PaPoC@EuroSys 2015, Bordeaux, France, April 21, 2015, pages 6:1-6:4. ACM, 2015. URL: http://dx.doi.org/10.1145/2745947.2745953.
http://dx.doi.org/10.1145/2745947.2745953
Giuseppe DeCandia, Deniz Hastorun, Madan Jampani, Gunavardhan Kakulapati, Avinash Lakshman, Alex Pilchin, Swaminathan Sivasubramanian, Peter Vosshall, and Werner Vogels. Dynamo: amazon’s highly available key-value store. In Thomas C. Bressoud and M. Frans Kaashoek, editors, Proceedings of the 21st ACM Symposium on Operating Systems Principles 2007, SOSP 2007, Stevenson, Washington, USA, October 14-17, 2007, pages 205-220. ACM, 2007. URL: http://dx.doi.org/10.1145/1294261.1294281.
http://dx.doi.org/10.1145/1294261.1294281
Alan J. Demers, Daniel H. Greene, Carl Hauser, Wes Irish, John Larson, Scott Shenker, Howard E. Sturgis, Daniel C. Swinehart, and Douglas B. Terry. Epidemic algorithms for replicated database maintenance. In Fred B. Schneider, editor, Proceedings of the Sixth Annual ACM Symposium on Principles of Distributed Computing, Vancouver, British Columbia, Canada, August 10-12, 1987, pages 1-12. ACM, 1987. URL: http://dx.doi.org/10.1145/41840.41841.
http://dx.doi.org/10.1145/41840.41841
Patrick Th. Eugster, Rachid Guerraoui, Anne-Marie Kermarrec, and Laurent Massoulié. Epidemic information dissemination in distributed systems. IEEE Computer, 37(5):60-67, 2004. URL: http://dx.doi.org/10.1109/MC.2004.1297243.
http://dx.doi.org/10.1109/MC.2004.1297243
Konstantinos Kloudas, Margarida Mamede, Nuno Preguiça, and Rodrigo Rodrigues. Pixida: Optimizing Data Parallel Jobs in Wide-area Data Analytics. Proc. VLDB Endow., 9(2):72-83, 2015. URL: http://dx.doi.org/10.14778/2850578.2850582.
http://dx.doi.org/10.14778/2850578.2850582
Avinash Lakshman and Prashant Malik. Cassandra: a decentralized structured storage system. Operating Systems Review, 44(2):35-40, 2010. URL: http://dx.doi.org/10.1145/1773912.1773922.
http://dx.doi.org/10.1145/1773912.1773922
Leslie Lamport. Time, clocks, and the ordering of events in a distributed system. Commun. ACM, 21(7):558-565, 1978. URL: http://dx.doi.org/10.1145/359545.359563.
http://dx.doi.org/10.1145/359545.359563
Leslie Lamport. The part-time parliament. ACM Trans. Comput. Syst., 16(2):133-169, 1998. URL: http://dx.doi.org/10.1145/279227.279229.
http://dx.doi.org/10.1145/279227.279229
Cheng Li, Daniel Porto, Allen Clement, Johannes Gehrke, Nuno Preguiça, and Rodrigo Rodrigues. Making geo-replicated systems fast as possible, consistent when necessary. In Proceedings of the 10th USENIX Conference on Operating Systems Design and Implementation, OSDI'12, pages 265-278, 2012.
Wyatt Lloyd, Michael J. Freedman, Michael Kaminsky, and David G. Andersen. Don't settle for eventual: scalable causal consistency for wide-area storage with COPS. In Ted Wobber and Peter Druschel, editors, Proceedings of the 23rd ACM Symposium on Operating Systems Principles 2011, SOSP 2011, Cascais, Portugal, October 23-26, 2011, pages 401-416. ACM, 2011. URL: http://dx.doi.org/10.1145/2043556.2043593.
http://dx.doi.org/10.1145/2043556.2043593
Wyatt Lloyd, Michael J. Freedman, Michael Kaminsky, and David G. Andersen. Stronger Semantics for Low-latency Geo-replicated Storage. In Proc. 10th USENIX Conference on Networked Systems Design and Implementation, nsdi'13, 2013.
Hatem Mahmoud, Faisal Nawab, Alexander Pucher, Divyakant Agrawal, and Amr El Abbadi. Low-latency Multi-datacenter Databases Using Replicated Commit. Proc. VLDB Endow., 6(9), jul 2013. URL: http://dx.doi.org/10.14778/2536360.2536366.
http://dx.doi.org/10.14778/2536360.2536366
Henrique Moniz, João Leitão, Ricardo J. Dias, Johannes Gehrke, Nuno M. Preguiça, and Rodrigo Rodrigues. Blotter: Low latency transactions for geo-replicated storage. In Rick Barrett, Rick Cummings, Eugene Agichtein, and Evgeniy Gabrilovich, editors, Proceedings of the 26th International Conference on World Wide Web, WWW 2017, Perth, Australia, April 3-7, 2017, pages 263-272. ACM, 2017. URL: http://dx.doi.org/10.1145/3038912.3052603.
http://dx.doi.org/10.1145/3038912.3052603
David Navalho, Sérgio Duarte, and Nuno M. Preguiça. A study of crdts that do computations. In Carlos Baquero and Marco Serafini, editors, Proceedings of the First Workshop on Principles and Practice of Consistency for Distributed Data, PaPoC@EuroSys 2015, Bordeaux, France, April 21, 2015, pages 1:1-1:4. ACM, 2015. URL: http://dx.doi.org/10.1145/2745947.2745948.
http://dx.doi.org/10.1145/2745947.2745948
Patrick E. O'Neil. The escrow transactional method. ACM Trans. Database Syst., 11(4):405-430, 1986. URL: http://dx.doi.org/10.1145/7239.7265.
http://dx.doi.org/10.1145/7239.7265
Yasushi Saito and Marc Shapiro. Optimistic replication. ACM Comput. Surv., 37(1):42-81, 2005. URL: http://dx.doi.org/10.1145/1057977.1057980.
http://dx.doi.org/10.1145/1057977.1057980
Nicolas Schiper, Pierre Sutra, and Fernando Pedone. P-store: Genuine partial replication in wide area networks. In 29th IEEE Symposium on Reliable Distributed Systems (SRDS 2010), New Delhi, Punjab, India, October 31 - November 3, 2010, pages 214-224. IEEE Computer Society, 2010. URL: http://dx.doi.org/10.1109/SRDS.2010.32.
http://dx.doi.org/10.1109/SRDS.2010.32
Marc Shapiro, Nuno Preguiça, Carlos Baquero, and Marek Zawirski. Conflict-free Replicated Data Types. In Proc. 13th International Conference on Stabilization, Safety, and Security of Distributed Systems, SSS'11, 2011.
Yair Sovran, Russell Power, Marcos K. Aguilera, and Jinyang Li. Transactional storage for geo-replicated systems. In Ted Wobber and Peter Druschel, editors, Proceedings of the 23rd ACM Symposium on Operating Systems Principles 2011, SOSP 2011, Cascais, Portugal, October 23-26, 2011, pages 385-400. ACM, 2011. URL: http://dx.doi.org/10.1145/2043556.2043592.
http://dx.doi.org/10.1145/2043556.2043592
Douglas B. Terry, Vijayan Prabhakaran, Ramakrishna Kotla, Mahesh Balakrishnan, Marcos K. Aguilera, and Hussam Abu-Libdeh. Consistency-based service level agreements for cloud storage. In Michael Kaminsky and Mike Dahlin, editors, ACM SIGOPS 24th Symposium on Operating Systems Principles, SOSP '13, Farmington, PA, USA, November 3-6, 2013, pages 309-324. ACM, 2013. URL: http://dx.doi.org/10.1145/2517349.2522731.
http://dx.doi.org/10.1145/2517349.2522731
Albert van der Linde, João Leitão, and Nuno M. Preguiça. Δ-crdts: making Δ-crdts delta-based. In Peter Alvaro and Alysson Bessani, editors, Proceedings of the 2nd Workshop on the Principles and Practice of Consistency for Distributed Data, PaPoC@EuroSys 2016, London, United Kingdom, April 18, 2016, pages 12:1-12:4. ACM, 2016. URL: http://dx.doi.org/10.1145/2911151.2911163.
http://dx.doi.org/10.1145/2911151.2911163
Werner Vogels. Eventually consistent. Commun. ACM, 52(1):40-44, 2009. URL: http://dx.doi.org/10.1145/1435417.1435432.
http://dx.doi.org/10.1145/1435417.1435432
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Solida: A Blockchain Protocol Based on Reconfigurable Byzantine Consensus
The decentralized cryptocurrency Bitcoin has experienced great success but also encountered many challenges. One of the challenges has been the long confirmation time. Another chal- lenge is the lack of incentives at certain steps of the protocol, raising concerns for transaction withholding, selfish mining, etc. To address these challenges, we propose Solida, a decentralized blockchain protocol based on reconfigurable Byzantine consensus augmented by proof-of-work. Solida improves on Bitcoin in confirmation time, and provides safety and liveness assuming the adversary control less than (roughly) one-third of the total mining power.
Cryptocurrency
Blockchain
Byzantine fault tolerance
Reconfiguration
25:1-25:19
Regular Paper
Ittai
Abraham
Ittai Abraham
Dahlia
Malkhi
Dahlia Malkhi
Kartik
Nayak
Kartik Nayak
Ling
Ren
Ling Ren
Alexander
Spiegelman
Alexander Spiegelman
10.4230/LIPIcs.OPODIS.2017.25
Ittai Abraham and Dahlia Malkhi. BVP: Byzantine vertical paxos, 2016.
Joseph A Akinyele, Christina Garman, Ian Miers, Matthew W Pagano, Michael Rushanan, Matthew Green, and Aviel D Rubin. Charm: a framework for rapidly prototyping cryptosystems. Journal of Cryptographic Engineering, 3(2):111-128, 2013.
Alysson Bessani, João Sousa, and Eduardo EP Alchieri. State machine replication for the masses with bft-smart. In Dependable Systems and Networks (DSN), 2014 44th Annual IEEE/IFIP International Conference on, pages 355-362. IEEE, 2014.
Dan Boneh, Ben Lynn, and Hovav Shacham. Short signatures from the weil pairing. pages 514-532. Springer, 2001.
Miguel Castro and Barbara Liskov. Practical byzantine fault tolerance. In Proceedings of the third symposium on Operating systems design and implementation, pages 173-186. USENIX Association, 1999.
Jing Chen and Silvio Micali. Algorand: The efficient and democratic ledger, 2016. URL: https://arxiv.org/pdf/1607.01341.pdf.
https://arxiv.org/pdf/1607.01341.pdf
CoinDesk. Average number of transactions per block, accessed Aug, 2016. URL: https://www.coindesk.com/data/bitcoin-number-transactions-per-block/.
https://www.coindesk.com/data/bitcoin-number-transactions-per-block/
Christian Decker, Jochen Seidel, and Roger Wattenhofer. Bitcoin meets strong consistency. In Proceedings of the 17th International Conference on Distributed Computing and Networking, page 13. ACM, 2016.
Ittay Eyal, Adem Efe Gencer, Emin Gün Sirer, and Robbert Van Renesse. Bitcoin-NG: A scalable blockchain protocol. In 13th USENIX Symposium on Networked Systems Design and Implementation (NSDI 16), pages 45-59, 2016.
Ittay Eyal and Emin Gün Sirer. Majority is not enough: Bitcoin mining is vulnerable. In International Conference on Financial Cryptography and Data Security, pages 436-454. Springer, 2014.
Bryan Ford. Untangling mining incentives in bitcoin and byzcoin, 2016. URL: http://bford.github.io/2016/10/25/mining/.
http://bford.github.io/2016/10/25/mining/
Juan Garay, Aggelos Kiayias, and Nikos Leonardos. The Bitcoin backbone protocol: Analysis and applications. In Annual International Conference on the Theory and Applications of Cryptographic Techniques, pages 281-310. Springer, 2015.
Flavio P Junqueira, Benjamin C Reed, and Marco Serafini. Zab: High-performance broadcast for primary-backup systems. In Dependable Systems &Networks (DSN), 2011 IEEE/IFIP 41st International Conference on, pages 245-256. IEEE, 2011.
Jonathan Katz and Chiu-Yuen Koo. On expected constant-round protocols for byzantine agreement. J. Comput. Syst. Sci., 75(2):91-112, 2009.
Eleftherios Kokoris Kogias, Philipp Jovanovic, Nicolas Gailly, Ismail Khoffi, Linus Gasser, and Bryan Ford. Enhancing Bitcoin security and performance with strong consistency via collective signing. In 25th USENIX Security Symposium, pages 279-296. USENIX Association, 2016.
Leslie Lamport. The part-time parliament. ACM Transactions on Computer Systems (TOCS), 16(2):133-169, 1998.
Leslie Lamport, Dahlia Malkhi, and Lidong Zhou. Vertical paxos and primary-backup replication. In Proceedings of the 28th ACM symposium on Principles of distributed computing, pages 312-313. ACM, 2009.
Leslie Lamport, Robert Shostak, and Marshall Pease. The byzantine generals problem. ACM Transactions on Programming Languages and Systems (TOPLAS), 4(3):382-401, 1982.
Yoad Lewenberg, Yonatan Sompolinsky, and Aviv Zohar. Inclusive block chain protocols. In International Conference on Financial Cryptography and Data Security, pages 528-547. Springer, 2015.
Shengyun Liu, Christian Cachin, Vivien Quéma, and Marko Vukolic. XFT: practical fault tolerance beyond crashes. In 12th USENIX Symposium on Operating Systems Design and Implementation, pages 485-500. USENIX Association, 2016.
Loi Luu, Viswesh Narayanan, Chaodong Zheng, Kunal Baweja, Seth Gilbert, and Prateek Saxena. A secure sharding protocol for open blockchains. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, pages 17-30. ACM, 2016.
Satoshi Nakamoto. Bitcoin: A peer-to-peer electronic cash system, 2008.
Kartik Nayak, Srijan Kumar, Andrew Miller, and Elaine Shi. Stubborn mining: Generalizing selfish mining and combining with an eclipse attack. In 2016 IEEE European Symposium on Security and Privacy (EuroS&P), pages 305-320. IEEE, 2016.
Diego Ongaro and John K Ousterhout. In search of an understandable consensus algorithm. In USENIX Annual Technical Conference, pages 305-319, 2014.
Rafael Pass, Lior Seeman, and Abhi Shelat. Analysis of the blockchain protocol in asynchronous networks. In Advances in Cryptology - EUROCRYPT 2017, pages 643-673. Springer International Publishing, 2017.
Rafael Pass and Elaine Shi. Hybrid consensus: Efficient consensus in the permissionless model. 2016. Cryptology ePrint Archive, Report 2016/917.
Rafael Pass and Elaine Shi. Fruitchains: A fair blockchain. In Proceedings of the ACM Symposium on Principles of Distributed Computing, pages 315-324. ACM, 2017.
Joseph Poon and Thaddeus Dryja. The Bitcoin lightning network: Scalable off-chain instant payments. Technical Report., 2015. URL: https://lightning.network.
https://lightning.network
Ling Ren, Kartik Nayak, Ittai Abraham, and Srinivas Devadas. Practical synchronous byzantine consensus. Cryptology ePrint Archive, Report 2017/307, 2017. URL: http://eprint.iacr.org/2017/307.
http://eprint.iacr.org/2017/307
Rodrigo Rodrigues, Barbara Liskov, Kathryn Chen, Moses Liskov, and David Schultz. Automatic reconfiguration for large-scale reliable storage systems. IEEE Transactions on Dependable and Secure Computing, 9(2):145-158, 2012.
Yonatan Sompolinsky, Yoad Lewenberg, and Aviv Zohar. SPECTRE: A fast and scalable cryptocurrency protocol, 2016.
Yonatan Sompolinsky and Aviv Zohar. Secure high-rate transaction processing in bitcoin. In International Conference on Financial Cryptography and Data Security, pages 507-527. Springer, 2015.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Efficient and Modular Consensus-Free Reconfiguration for Fault-Tolerant Storage
Quorum systems are useful tools for implementing consistent and available storage in the presence of failures. These systems usually comprise of a static set of servers that provide a fault-tolerant read/write register accessed by a set of clients. We consider a dynamic variant of these systems and propose FreeStore, a set of fault-tolerant protocols that emulates a register in dynamic asynchronous systems in which processes are able to join/leave the set of servers during the execution. These protocols use a new abstraction called view generators, that captures the agreement requirements of reconfiguration and can be implemented in different system models with different properties. Particularly interesting, we present a reconfiguration protocol that is modular, efficient, consensus-free and loosely coupled with read/write protocols. An analysis and an experimental evaluation show that the proposed protocols improve the overall system performance when compared with previous solutions.
Distributed Systems
Reconfiguration
Fault-Tolerant Quorum Systems
26:1-26:17
Regular Paper
Eduardo
Alchieri
Eduardo Alchieri
Alysson
Bessani
Alysson Bessani
Fabíola
Greve
Fabíola Greve
Joni da Silva
Fraga
Joni da Silva Fraga
10.4230/LIPIcs.OPODIS.2017.26
Marcos K. Aguilera, Idit Keidar, Dahlia Malkhi, Jean-Philippe Martin, and Alexander Shraer. Reconfiguring replicated atomic storage: A tutorial. Bulletin of EATCS: The Distributed Computing Column, 2010.
Marcos K. Aguilera, Idit Keidar, Dahlia Malkhi, and Alexander Shraer. Dynamic atomic storage without consensus. Journal of the ACM, 58:7:1-7:32, 2011.
Eduardo Alchieri, Alysson Bessani, Fabiola Greve, and Joni Fraga. Efficient and modular consensus-free reconfiguration for fault-tolerant storage. ArXiv, 2016. URL: http://arxiv.org/abs/1607.05344.
http://arxiv.org/abs/1607.05344
Hagit Attiya, Amotz Bar-Noy, and Danny Dolev. Sharing memory robustly in message-passing systems. Journal of the ACM, 42(1):124-142, 1995.
Kenneth Birman and Thomas Joseph. Exploiting virtual synchrony in distributed systems. In Proc. of the 11th ACM Symp. on Operating Systems Principles (SOSP'87), 1987.
C. Cachin, R. Guerraoui, and L. Rodrigues. Introduction to Reliable and Secure Distributed Programming (2nd Edition). Springer-Verlag, 2011.
Tushar Chandra and Sam Toueg. Unreliable failure detectors for reliable distributed systems. Journal of the ACM, 43(2):225-267, 1996.
Partha Dutta, Rachid Guerraoui, Ron R. Levy, and Marko Vukolić. Fast access to distributed atomic memory. SIAM Journal on Computing, 39(8):3752-3783, 2010.
Cyntia Dwork, Nancy A. Lynch, and Larry Stockmeyer. Consensus in the presence of partial synchrony. Journal of ACM, 35(2):288-322, 1988.
Rui Fan and Nancy Lynch. Efficient replication of large data objects. In Proc. of the 17th Int. Symp. on Distributed Computing (DISC'03), 2003.
Michael J. Fischer, Nancy A. Lynch, and Michael S. Paterson. Impossibility of distributed consensus with one faulty process. Journal of the ACM, 32(2):374-382, 1985.
Eli Gafni and Dahlia Malkhi. Elastic configuration maintenance via a parsimonious speculating snapshot solution. In Proc. of the 29th Int. Symp. on Distributed Computing (DISC'15), 2015.
David Gifford. Weighted voting for replicated data. In Proc. of the 7th ACM Symp. on Operating Systems Principles (SOSP'79), 1979.
Seth Gilbert, Nancy Lynch, and Alex Shvartsman. Rambo: A robust, reconfigurable atomic memory service for dynamic networks. Distributed Computing, 23(4), 2010.
Maurice Herlihy. Wait-free synchronization. ACM Transactions on Programing Languages and Systems, 13(1), 1991.
Leander Jehl and Hein Meling. The case for reconfiguration without consensus. In Proc. of the 20th Int. Conf. on Principles of Distributed Systems (OPODIS'16), 2016.
Leander Jehl, Roman Vitenberg, and Hein Meling. Smartmerge: A new approach to reconfiguration for atomic storage. In Proc. of the 29th Int. Symp. on Distributed Computing (DISC'15), 2015.
Leslie Lamport. On interprocess communication (part II). Distributed Computing, 1(1):203-213, 1986.
Leslie Lamport. The part-time parliament. ACM Transactions Computer Systems, 16(2):133-169, 1998.
Jean-Philippe Martin and Lorenzo Alvisi. A framework for dynamic Byzantine storage. In Proc. of the 34th Int. Conf. on Dependable Systems and Networks (DSN'04), 2004.
Alexander Spiegelman, Idit Keidar, and Dahlia Malkhi. Dynamic Reconfiguration: A Tutorial. In Proc. of the 19th Int. Conf. on Principles of Distributed Systems (OPODIS'15), 2015.
Brian White et. al. An integrated experimental environment for distributed systems and networks. In Proc. of the 5th Symp. on Operating Systems Design and Implementations (OSDI'02), 2002.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Hardening Cassandra Against Byzantine Failures
Cassandra is one of the most widely used distributed data stores. In this work, we analyze Cassandra’s vulnerabilities when facing Byzantine failures and propose protocols for hardening Cassandra against them. We examine several alternative design choices and compare between them both qualitatively and empirically by using the Yahoo! Cloud Serving Benchmark (YCSB) performance benchmark.
Some of our proposals include novel combinations of quorum access protocols with MAC signatures arrays and elliptic curve public key cryptography so that in the normal data path, there are no public key verifications and only a single relatively cheap elliptic curve signature made by the client. Yet, these enable data recovery and authentication despite Byzantine failures and across membership configuration changes. In the experiments, we demonstrate that our best design alternative obtains roughly half the performance of plain (non-Byzantine) Cassandra.
Cassandra
Byzantine Fault Tolerance
Distributed Storage
27:1-27:20
Regular Paper
Roy
Friedman
Roy Friedman
Roni
Licher
Roni Licher
10.4230/LIPIcs.OPODIS.2017.27
Riak. URL: http://basho.com/products/riak-kv/.
http://basho.com/products/riak-kv/
Marcos K Aguilera and Ram Swaminathan. Remote storage with byzantine servers. In Proc. of ACM SPAA, pages 280-289, 2009.
Yair Amir, Brian Coan, Jonathan Kirsch, and John Lane. Prime: Byzantine replication under attack. IEEE Trans. on Dependable and Secure Computing, 8(4):564-577, 2011.
Leonardo Aniello, Silvia Bonomi, Marta Breno, and Roberto Baldoni. Assessing Data Availability of Cassandra in the Presence of non-accurate Membership. In Proc. of the 2nd ACM International Workshop on Dependability Issues in Cloud Computing, 2013.
Apache. Cassandra. URL: http://cassandra.apache.org/.
http://cassandra.apache.org/
Roberto Baldoni, Marco Platania, Leonardo Querzoni, and Sirio Scipioni. A peer-to-peer filter-based algorithm for internal clock synchronization in presence of corrupted processes. In Proc. of the IEEE PRDC, pages 64-72, 2008.
Alysson Bessani, João Sousa, and Eduardo EP Alchieri. State machine replication for the masses with BFT-SMaRt. In Proc. of the Annual IEEE/IFIP DSN, pages 355-362, 2014.
Ken Birman and Roy Friedman. Trading Consistency for Availability in Distributed Systems. Technical Report TR96-1579, Cornell University, 1996.
Edward Bortnikov, Maxim Gurevich, Idit Keidar, Gabriel Kliot, and Alexander Shraer. Brahms: Byzantine resilient random membership sampling. Computer Networks, 53(13):2340-2359, 2009.
Christian Cachin, Dan Dobre, and Marko Vukolić. Separating data and control: Asynchronous BFT storage with 2t+ 1 data replicas. In Stabilization, Safety, and Security of Distributed Systems, pages 1-17. Springer, 2014.
Miguel Castro and Barbara Liskov. Practical Byzantine fault tolerance and proactive recovery. ACM TOCS, 20(4):398-461, 2002.
Fay Chang, Jeffrey Dean, Sanjay Ghemawat, Wilson C Hsieh, Deborah A Wallach, Mike Burrows, Tushar Chandra, Andrew Fikes, and Robert E Gruber. Bigtable: A distributed storage system for structured data. ACM TOCS, 26(2), 2008.
Allen Clement, Manos Kapritsos, Sangmin Lee, Yang Wang, Lorenzo Alvisi, Mike Dahlin, and Taylor Riche. Upright cluster services. In 22nd ACM SOSP, pages 277-290, 2009.
Brian F Cooper, Adam Silberstein, Erwin Tam, Raghu Ramakrishnan, and Russell Sears. Benchmarking cloud serving systems with YCSB. In Proc. of the ACM Symposium on Cloud Computing, pages 143-154, 2010.
Miguel Correia, Daniel Gómez Ferro, Flavio P. Junqueira, and Marco Serafini. Practical Hardening of Crash-tolerant Systems. In Proc. of the USENIX Annual Technical Conference, ATC, pages 41-41, 2012.
Inc DataStax. Apache Cassandra 2.2. URL: http://docs.datastax.com/en/cassandra/2.2/.
http://docs.datastax.com/en/cassandra/2.2/
Giuseppe DeCandia, Deniz Hastorun, Madan Jampani, Gunavardhan Kakulapati, Avinash Lakshman, Alex Pilchin, Swaminathan Sivasubramanian, Peter Vosshall, and Werner Vogels. Dynamo: Amazon’s highly available key-value store. ACM OSR, 41(6):205-220, 2007.
John R Douceur. The sybil attack. In Peer-to-peer Systems, pages 251-260. Springer, 2002.
Cynthia Dwork, Nancy Lynch, and Larry Stockmeyer. Consensus in the Presence of Partial Synchrony. J. ACM, 35(2):288-323, 1988.
D Eastlake and Tony Hansen. US secure hash algorithms (SHA and HMAC-SHA). Technical report, RFC 4634, July, 2006.
Christof Fetzer and Flaviu Cristian. Integrating external and internal clock synchronization. Real-Time Systems, 12(2):123-171, 1997.
Roy Friedman and Roni Licher. Hardening cassandra against byzantine failures. CoRR, abs/1610.02885, 2016. URL: http://arxiv.org/abs/1610.02885.
http://arxiv.org/abs/1610.02885
Aishwarya Ganesan, Ramnatthan Alagappan, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau. Redundancy Does Not Imply Fault Tolerance: Analysis of Distributed Storage Reactions to Single Errors and Corruptions. In Proc. of the 15th Usenix Conference on File and Storage Technologies, FAST, pages 149-165, 2017.
Rachid Guerraoui, Nikola Knežević, Vivien Quéma, and Marko Vukolić. The next 700 BFT protocols. In Proc. of the 5th ACM European Conference on Computer Systems, pages 363-376, 2010.
Maurice Peter Herlihy. Replication methods for abstract data types. Technical report, DTIC Document, 1984.
Håvard D Johansen, Robbert Van Renesse, Ymir Vigfusson, and Dag Johansen. Fireflies: A secure and scalable membership and gossip service. ACM TOCS, 33(2), 2015.
Don Johnson, Alfred Menezes, and Scott Vanstone. The elliptic curve digital signature algorithm (ECDSA). International Journal of Information Security, 1(1):36-63, 2001.
Avinash Lakshman and Prashant Malik. Cassandra: a decentralized structured storage system. ACM SIGOPS OSR, 44(2):35-40, 2010.
Leslie Lamport. Time, clocks, and the ordering of events in a distributed system. Communications of the ACM, 21(7):558-565, 1978.
Leslie Lamport, Robert Shostak, and Marshall Pease. The Byzantine generals problem. ACM Trans. on Programming Languages and Systems (TOPLAS), 4(3):382-401, 1982.
Barbara Liskov and Rodrigo Rodrigues. Byzantine clients rendered harmless. In Distributed Computing, pages 487-489. Springer, 2005.
Prince Mahajan, Srinath Setty, Sangmin Lee, Allen Clement, Lorenzo Alvisi, Mike Dahlin, and Michael Walfish. Depot: Cloud storage with minimal trust. ACM TOCS, 29(4), 2011.
Dahlia Malkhi and Michael Reiter. Byzantine quorum systems. Distributed Computing, 11(4):203-213, 1998.
David Mills, Jim Martin, Jack Burbank, and William Kasch. Network time protocol version 4: Protocol and algorithms specification. IETF RFC5905, June, 2010.
F. Pedone, N. Schiper, and J. E. Armendáriz-Iñigo. Byzantine Fault-Tolerant Deferred Update Replication. In Proc. of the 5th Latin-American Symposium on Dependable Computing (LADC), pages 7-16, 2011.
Karin Petersen, Mike Spreitzer, Douglas B. Terry, Marvin Theimer, and Alan J. Demers. Flexible update propagation for weakly consistent replication. In Michel Banâtre, Henry M. Levy, and William M. Waite, editors, Proceedings of the Sixteenth ACM Symposium on Operating System Principles, SOSP 1997, St. Malo, France, October 5-8, 1997, pages 288-301. ACM, 1997. URL: http://dx.doi.org/10.1145/268998.266711.
http://dx.doi.org/10.1145/268998.266711
Ronald L Rivest, Adi Shamir, and Len Adleman. A method for obtaining digital signatures and public-key cryptosystems. Communications of the ACM, 21(2):120-126, 1978.
Atul Singh et al. Eclipse attacks on overlay networks: Threats and defenses. In In IEEE INFOCOM, 2006.
Atul Singh, Pedro Fonseca, Petr Kuznetsov, Rodrigo Rodrigues, Petros Maniatis, et al. Zeno: Eventually consistent byzantine-fault tolerance. In NSDI, pages 169-184, 2009.
Emil Sit and Robert Morris. Security considerations for peer-to-peer distributed hash tables. In Peer-to-Peer Systems, pages 261-269. Springer, 2002.
Robbert Van Renesse, Yaron Minsky, and Mark Hayden. A gossip-style failure detection service. In Middleware, pages 55-70. Springer, 1998.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Vulnerability-Tolerant Transport Layer Security
SSL/TLS communication channels play a very important role in Internet security, including cloud computing and server infrastructures. There are often concerns about the strength of the encryption mechanisms used in TLS channels. Vulnerabilities can lead to some of the cipher suites once thought to be secure to become insecure and no longer recommended for use or in urgent need of a software update. However, the deprecation/update process is very slow and weeks or months can go by before most web servers and clients are protected, and some servers and clients may never be updated. In the meantime, the communications are at risk of being intercepted and tampered by attackers.
In this paper we propose an alternative to TLS to mitigate the problem of secure commu- nication channels being susceptible to attacks due to unexpected vulnerabilities in its mechan- isms. Our solution, called Vulnerability-Tolerant Transport Layer Security (vtTLS), is based on diversity and redundancy of cryptographic mechanisms and certificates to ensure a secure communication even when one or more mechanisms are vulnerable. Our solution relies on a combination of k cipher suites which ensure that even if k − 1 cipher suites are insecure or vul- nerable, the remaining cipher suite keeps the communication channel secure. The performance and cost of vtTLS were evaluated and compared with OpenSSL, one of the most widely used implementations of TLS.
Secure communication channels
Transport layer security
SSL/TLS
Diversity
Redundancy
Vulnerability tolerance
28:1-28:16
Regular Paper
André
Joaquim
André Joaquim
Miguel L.
Pardal
Miguel L. Pardal
Miguel
Correia
Miguel Correia
10.4230/LIPIcs.OPODIS.2017.28
D. Adrian, K. Bhargavan, Z. Durumeric, P. Gaudry, M. Green, J. Halderman, N. Heninger, D. Springall, E. Thomé, L. Valenta, B. Vandersloot, E. Wustrow, and S. Paul. Imperfect forward secrecy: How Diffie-Hellman fails in practice. In Proceedings of the 22nd ACM Conference on Computer and Communications Security, pages 5-1, 2015.
M. R. Albrecht, J. P. Degabriele, T. B. Hansen, and K. G. Paterson. A surfeit of SSH cipher suites. In Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, pages 1480-1491, 2016.
A. Avižienis and L. Chen. On the implementation of N-version programming for software fault tolerance during execution. In Proceedings of the IEEE International Computer Software and Applications Conference, pages 149-155, 1977.
L. Bilge and T. Dumitras. Before we knew it: an empirical study of zero-day attacks in the real world. In Proceedings of the ACM Conference on Computer and Communications Security, pages 833-844, 2012.
A. Bogdanov, D. Khovratovich, and C. Rechberger. Biclique cryptanalysis of the full AES. In Proceedings of the 17th International Conference on the Theory and Application of Cryptology and Information Security, volume LNCS 7073, pages 344-371, 2011.
M. Carvalho, J. DeMott, R. Ford, and D. Wheeler. Heartbleed 101. IEEE Security & Privacy, 12(4):63-67, 2014.
M. Carvalho and R. Ford. Moving-target defenses for computer networks. IEEE Security and Privacy, 12(2):73-76, 2014.
R. Carvalho. Authentication security through diversity and redundancy for cloud computing. Master’s thesis, Instituto Superior Técnico, Lisbon, Portugal, 2014.
T. Dierks and E. Rescorla. The Transport Layer Security (TLS) Protocol, Version 1.2 (RFC 5246), 2008.
ENISA. Algorithms, key size and parameters report - 2014, nov 2014.
D. Evans, A. Nguyen-Tuong, and J. Knight. Effectiveness of moving target defenses. In Moving Target Defense, volume 54, pages 29-48. Springer, 2011.
N. Ferguson, J. Kelsey, S. Lucks, B. Schneier, M. Stay, D. Wagner, and D. Whiting. Improved cryptanalysis of Rijndael. In Gerhard Goos, Juris Hartmanis, Jan van Leeuwen, and Bruce Schneier, editors, Proceedings of Fast Software Encryption, volume LNCS 1978, pages 213-230. Springer, 2001.
M. Garcia, A. Bessani, I. Gashi, N. Neves, and R. Obelheiro. OS diversity for intrusion tolerance: Myth or reality? In Proceedings of the IEEE/IFIP 41st International Conference on Dependable Systems and Networks, pages 383-394, 27-30 June 2011.
V. Gupta, S. Gupta, S. Chang, and D. Stebila. Performance analysis of elliptic curve cryptography for SSL. In Proceedings of the 1st ACM Workshop on Wireless Security, pages 87-94, 2002.
A. Homescu, S. Neisius, P. Larsen, S. Brunthaler, and M. Franz. Profile-guided automated software diversity. In Proceedings of the 2013 IEEE/ACM International Symposium on Code Generation and Optimization, pages 1-11, 2013.
A. Joaquim, M. L. Pardal, and M. Correia. vtTLS: A vulnerability-tolerant communication protocol. In Proceedings of the 15th IEEE International Symposium on Network Computing and Applications, pages 212-215, 2016.
S. Kanno and M. Kanda. Addition of the Camellia cipher suites to transport layer security (TLS) (RFC 6367), 2011.
S. Kent and K. Seo. Security architecture for the internet protocol (RFC 4301), 2005.
T. Kleinjung, K. Aoki, J. Franke, A. Lenstra, E. Thomé, J. Bos, P. Gaudry, A. Kruppa, P. Montgomery, D. Osvik, H. Te Riele, A. Timofeev, and P. Zimmermann. Factorization of a 768-bit RSA modulus. In Proceedings of the 30th Annual Conference on Advances in Cryptology, volume LNCS 6223, pages 333-350, 2010.
P. Larsen, A. Homescu, S. Brunthaler, and M. Franz. SoK: Automated software diversity. In Proceedings of the 2014 IEEE Symposium on Security and Privacy, pages 276-291, 2014.
B. Littlewood and L. Strigini. Redundancy and diversity in security. In Computer Security - ESORICS 2004, 9th European Symposium on Research Computer Security, pages 227-246, 2004.
A. Menezes, P. van Oorschot, and S. Vanstone. Hash functions and data integrity. In Handbook of Applied Cryptography, chapter 9. CRC Press, 1996.
A. Menezes, P. van Oorschot, and S. Vanstone. Public-key encryption. In Handbook of Applied Cryptography, chapter 8. CRC Press, 1996.
R. C. Merkle. Secrecy, Authentication, and Public Key Systems. PhD thesis, Stanford, CA, USA, 1979.
V. Rijmen and J. Daemen. Advanced encryption standard. U.S. National Institute of Standards and Technology (NIST), 2009:8-12, 2001.
Tom Roeder and Fred B. Schneider. Proactive obfuscation. ACM Trans. Comput. Syst., 28(2):4:1-4:54, 2010. URL: http://dx.doi.org/10.1145/1813654.1813655.
http://dx.doi.org/10.1145/1813654.1813655
R. Seggelmann, M. Tuexen, and M. Williams. Transport layer security (TLS) and datagram transport layer security (DTLS) heartbeat extension (RFC 6520), 2012.
Y. Sheffer, R. Holz, and P. Saint-Andre. Summarizing Known Attacks on Transport Layer Security (TLS) and Datagram TLS (DTLS) (RFC 7457), 2015.
P. Shor. Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM Journal on Scientific and Statistical Computing, 26:1484, 1995.
P. Sousa, A. N. Bessani, M. Correia, N. F. Neves, and P. Verissimo. Highly available intrusion-tolerant services with proactive-reactive recovery. IEEE Transactions on Parallel and Distributed Systems, 21(4):452-465, 2010.
M. Stevens. Attacks on Hash Functions and Applications. PhD thesis, Mathematical Institute, Leiden University, 2012.
M. Stevens, E. Bursztein, P. Karpman, A. Albertini, and Y. Markov. The first collision for full SHA-1. IACR Cryptology ePrint Archive, 2017:190, 2017.
M. Stevens, P. Karpman, and T. Peyrin. Freestart collision on full SHA-1. Cryptology ePrint Archive, Report 2015/967, 2015.
Paulo Veríssimo, Nuno Ferreira Neves, and Miguel Correia. Intrusion-tolerant architectures: Concepts and design. In Rogério de Lemos, Cristina Gacek, and Alexander B. Romanovsky, editors, Architecting Dependable Systems [the book is a result of the ICSE 2002 Workshop on Software Architectures for Dependable Systems], volume 2677 of Lecture Notes in Computer Science, pages 3-36. Springer, 2002. URL: http://dx.doi.org/10.1007/3-540-45177-3_1.
http://dx.doi.org/10.1007/3-540-45177-3_1
J. Viega, M. Messier, and P. Chandra. Network Security with OpenSSL: Cryptography for Secure Communications. O'Reilly, 2002.
X. Wang, Y. Yin, and H. Yu. Finding collisions in the full SHA-1. In Proceedings of the 25th Annual International Conference on Advances in Cryptology, pages 17-36. Springer-Verlag, 2005.
J. Xu, Z. Kalbarczyk, and R. K. Iyer. Transparent runtime randomization for security. In Proceedings of the 22nd International Symposium on Reliable Distributed Systems, pages 260-269, 2003.
T. Ylonen and C. Lonvick. The secure shell (SSH) protocol architecture (RFC 4251), 2006.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Asynchronous Message Orderings Beyond Causality
In the asynchronous setting, distributed behavior is traditionally studied through computa- tions, the Happened-Before posets of events generated by the system. An equivalent perspective considers the linear extensions of the generated computations: each linear extension defines a sequence of events, called an execution. Both perspective were leveraged in the study of asyn- chronous point-to-point message orderings over computations; yet neither allows us to interpret message orderings defined over executions. Can we nevertheless make sense of such an ordering, maybe even use it to understand asynchronicity better?
We provide a general answer by defining a topology on the set of executions which captures the fundamental assumptions of asynchronicity. This topology links each message ordering over executions with two sets of computations: its closure, the computations for which at least one linear extension satisfies the predicate; and its interior, the computations for which all linear ex- tensions satisfy it. These sets of computations represent respectively the uncertainty brought by asynchronicity – the computations where the predicate is satisfiable – and the certainty available despite asynchronicity – the computations where the predicate must hold. The paper demon- strates the use of this topological approach by examining closures and interiors of interesting orderings over executions.
Asynchronous computations
Point-to-point message orderings
Causality
Topology
Interior
Closure
29:1-29:20
Regular Paper
Adam
Shimi
Adam Shimi
Aurélie
Hurault
Aurélie Hurault
Philippe
Quéinnec
Philippe Quéinnec
10.4230/LIPIcs.OPODIS.2017.29
Bowen Alpern and Fred B. Schneider. Defining liveness. Inf. Process. Lett., 21(4):181-185, 1985. URL: http://dx.doi.org/10.1016/0020-0190(85)90056-0.
http://dx.doi.org/10.1016/0020-0190(85)90056-0
Samik Basu, Tevfik Bultan, and Meriem Ouederni. Synchronizability for verification of asynchronously communicating systems. In Viktor Kuncak and Andrey Rybalchenko, editors, Verification, Model Checking, and Abstract Interpretation - 13th International Conference, VMCAI 2012, Philadelphia, PA, USA, January 22-24, 2012. Proceedings, volume 7148 of Lecture Notes in Computer Science, pages 56-71. Springer, 2012. URL: http://dx.doi.org/10.1007/978-3-642-27940-9_5.
http://dx.doi.org/10.1007/978-3-642-27940-9_5
Ido Ben-Zvi and Yoram Moses. Beyond lamport’s Happened-before: On time bounds and the ordering of events in distributed systems. J. ACM, 61(2):13:1-13:26, 2014. URL: http://dx.doi.org/10.1145/2542181.
http://dx.doi.org/10.1145/2542181
Kenneth P. Birman and Thomas A. Joseph. Reliable communication in the presence of failures. ACM Trans. Comput. Syst., 5(1):47-76, 1987. URL: http://dx.doi.org/10.1145/7351.7478.
http://dx.doi.org/10.1145/7351.7478
K. Mani Chandy and Leslie Lamport. Distributed snapshots: Determining global states of distributed systems. ACM Trans. Comput. Syst., 3(1):63-75, 1985. URL: http://dx.doi.org/10.1145/214451.214456.
http://dx.doi.org/10.1145/214451.214456
K. Mani Chandy and Jayadev Misra. How processes learn. Distributed Computing, 1(1):40-52, 1986. URL: http://dx.doi.org/10.1007/BF01843569.
http://dx.doi.org/10.1007/BF01843569
Bernadette Charron-Bost, Carole Delporte-Gallet, and Hugues Fauconnier. Local and temporal predicates in distributed systems. ACM Trans. Program. Lang. Syst., 17(1):157-179, 1995. URL: http://dx.doi.org/10.1145/200994.201005.
http://dx.doi.org/10.1145/200994.201005
Bernadette Charron-Bost, Friedemann Mattern, and Gerard Tel. Synchronous, asynchronous, and causally ordered communication. Distributed Computing, 9(4):173-191, 1996. URL: http://dx.doi.org/10.1007/s004460050018.
http://dx.doi.org/10.1007/s004460050018
Bernadette Charron-Bost, Sam Toueg, and Anindya Basu. Revisiting safety and liveness in the context of failures. In Catuscia Palamidessi, editor, CONCUR 2000 - Concurrency Theory, 11th International Conference, University Park, PA, USA, August 22-25, 2000, Proceedings, volume 1877 of Lecture Notes in Computer Science, pages 552-565. Springer, 2000. URL: http://dx.doi.org/10.1007/3-540-44618-4_39.
http://dx.doi.org/10.1007/3-540-44618-4_39
David R. Cheriton and Dale Skeen. Understanding the limitations of causally and totally ordered communication. SIGOPS Oper. Syst. Rev., 27(5):44-57, 1993. URL: http://dx.doi.org/10.1145/173668.168623.
http://dx.doi.org/10.1145/173668.168623
Florent Chevrou, Aurélie Hurault, and Philippe Quéinnec. On the diversity of asynchronous communication. Formal Asp. Comput., 28(5):847-879, 2016. URL: http://dx.doi.org/10.1007/s00165-016-0379-x.
http://dx.doi.org/10.1007/s00165-016-0379-x
Robert Cooper and Keith Marzullo. Consistent detection of global predicates. SIGPLAN Not., 26(12):167-174, dec 1991. URL: http://dx.doi.org/10.1145/127695.122774.
http://dx.doi.org/10.1145/127695.122774
Ronald Fagin, Joseph Y. Halpern, Moshe Y. Vardi, and Yoram Moses. Reasoning About Knowledge. MIT Press, Cambridge, MA, USA, 1995.
Colin J. Fidge. Timestamps in message-passing systems that preserve the partial ordering. Proceedings of the 11th Australian Computer Science Conference, 10(1):56–66, 1988.
Joseph Y. Halpern and Yoram Moses. Knowledge and common knowledge in a distributed environment. J. ACM, 37(3):549-587, 1990. URL: http://dx.doi.org/10.1145/79147.79161.
http://dx.doi.org/10.1145/79147.79161
Maurice Herlihy. Wait-free synchronization. ACM Trans. Program. Lang. Syst., 13(1):124-149, 1991. URL: http://dx.doi.org/10.1145/114005.102808.
http://dx.doi.org/10.1145/114005.102808
Maurice Herlihy, Dmitry Kozlov, and Sergio Rajsbaum. Distributed Computing Through Combinatorial Topology. Morgan Kaufmann Publishers Inc., 1st edition, 2013.
Maurice Herlihy and Nir Shavit. The topological structure of asynchronous computability. J. ACM, 46(6):858-923, 1999. URL: http://dx.doi.org/10.1145/331524.331529.
http://dx.doi.org/10.1145/331524.331529
Ajay D. Kshemkalyani and Mukesh Singhal. Necessary and sufficient conditions on information for causal message ordering and their optimal implementation. Distributed Computing, 11(2):91-111, 1998. URL: http://dx.doi.org/10.1007/s004460050044.
http://dx.doi.org/10.1007/s004460050044
Leslie Lamport. Time, clocks, and the ordering of events in a distributed system. Commun. ACM, 21(7):558-565, 1978. URL: http://dx.doi.org/10.1145/359545.359563.
http://dx.doi.org/10.1145/359545.359563
Friedemann Mattern. Virtual time and global states of distributed systems. In Parallel and Distributed Algorithms, pages 215-226. North-Holland, 1989.
Venkatesh V. Murty and Vijay K. Garg. Characterization of message ordering specifications and protocols. In Proceedings of the 17th International Conference on Distributed Computing Systems, Baltimore, MD, USA, May 27-30, 1997, pages 492-499. IEEE Computer Society, 1997. URL: http://dx.doi.org/10.1109/ICDCS.1997.603392.
http://dx.doi.org/10.1109/ICDCS.1997.603392
Michel Raynal, André Schiper, and Sam Toueg. The causal ordering abstraction and a simple way to implement it. Inf. Process. Lett., 39(6):343-350, 1991. URL: http://dx.doi.org/10.1016/0020-0190(91)90008-6.
http://dx.doi.org/10.1016/0020-0190(91)90008-6
André Schiper, Jorge Eggli, and Alain Sandoz. A new algorithm to implement causal ordering. In Jean-Claude Bermond and Michel Raynal, editors, Distributed Algorithms, 3rd International Workshop, Nice, France, September 26-28, 1989, Proceedings, volume 392 of Lecture Notes in Computer Science, pages 219-232. Springer, 1989. URL: http://dx.doi.org/10.1007/3-540-51687-5_45.
http://dx.doi.org/10.1007/3-540-51687-5_45
Reinhard Schwarz and Friedemann Mattern. Detecting causal relationships in distributed computations: In search of the holy grail. Distributed Computing, 7(3):149-174, 1994. URL: http://dx.doi.org/10.1007/BF02277859.
http://dx.doi.org/10.1007/BF02277859
Terunao Soneoka and Toshihide Ibaraki. Logically instantaneous message passing in asynchronous distributed systems. IEEE Trans. Computers, 43(5):513-527, 1994. URL: http://dx.doi.org/10.1109/12.280800.
http://dx.doi.org/10.1109/12.280800
Ashis Tarafdar and Vijay K. Garg. Addressing false causality while detecting predicates in distributed programs. In Proceedings of the 18th International Conference on Distributed Computing Systems, Amsterdam, The Netherlands, May 26-29, 1998, pages 94-101. IEEE Computer Society, 1998. URL: http://dx.doi.org/10.1109/ICDCS.1998.679491.
http://dx.doi.org/10.1109/ICDCS.1998.679491
William T. Trotter. Combinatorics and Partially Ordered Sets. The Johns Hopkins University Press, 1992.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Constant Space and Non-Constant Time in Distributed Computing
While the relationship of time and space is an established topic in traditional centralised com- plexity theory, this is not the case in distributed computing. We aim to remedy this by studying the time and space complexity of algorithms in a weak message-passing model of distributed com- puting. While a constant number of communication rounds implies a constant number of states visited during the execution, the other direction is not clear at all. We show that indeed, there exist non-trivial graph problems that are solvable by constant-space algorithms but that require a non-constant running time. Somewhat surprisingly, this holds even when restricted to the class of only cycle and path graphs. Our work provides us with a new complexity class for distributed computing and raises interesting questions about the existence of further combinations of time and space complexity.
distributed computing
space complexity
constant-space algorithms
weak models
Thue-Morse sequence
30:1-30:16
Regular Paper
Tuomo
Lempiäinen
Tuomo Lempiäinen
Jukka
Suomela
Jukka Suomela
10.4230/LIPIcs.OPODIS.2017.30
Yehuda Afek, Noga Alon, Ziv Bar-Joseph, Alejandro Cornejo, Bernhard Haeupler, and Fabian Kuhn. Beeping a maximal independent set. In Proc. 25th International Symposium on Distributed Computing (DISC 2011), volume 6950 of Lecture Notes in Computer Science, pages 32-50. Springer, 2011. URL: http://dx.doi.org/10.1007/978-3-642-24100-0_3.
http://dx.doi.org/10.1007/978-3-642-24100-0_3
Dana Angluin. Local and global properties in networks of processors. In Proc. 12th Annual ACM Symposium on Theory of Computing (STOC 1980), pages 82-93. ACM, 1980. URL: http://dx.doi.org/10.1145/800141.804655.
http://dx.doi.org/10.1145/800141.804655
Alkida Balliu, Juho Hirvonen, Janne H. Korhonen, Tuomo Lempiäinen, Dennis Olivetti, and Jukka Suomela. New classes of distributed time complexity, 2017. URL: http://arxiv.org/abs/1711.01871.
http://arxiv.org/abs/1711.01871
Sebastian Brandt, Orr Fischer, Juho Hirvonen, Barbara Keller, Tuomo Lempiäinen, Joel Rybicki, Jukka Suomela, and Jara Uitto. A lower bound for the distributed Lovász local lemma. In Proc. 48th Annual ACM Symposium on Theory of Computing (STOC 2016), pages 479-488. ACM, 2016. http://dx.doi.org/10.1145/2897518.2897570. URL: http://arxiv.org/abs/1511.00900.
http://arxiv.org/abs/1511.00900
Sebastian Brandt, Juho Hirvonen, Janne H. Korhonen, Tuomo Lempiäinen, Patric R. J. Östergård, Christopher Purcell, Joel Rybicki, Jukka Suomela, and Przemysław Uznański. LCL problems on grids. In Proc. 36th Annual ACM Symposium on Principles of Distributed Computing (PODC 2017), pages 101-110. ACM, 2017. http://dx.doi.org/10.1145/3087801.3087833. URL: http://arxiv.org/abs/1702.05456.
http://arxiv.org/abs/1702.05456
Yi-Jun Chang, Tsvi Kopelowitz, and Seth Pettie. An exponential separation between randomized and deterministic complexity in the LOCAL model. In Proc. 57th Annual IEEE Symposium on Foundations of Computer Science (FOCS 2016), pages 615-624. IEEE, 2016. http://dx.doi.org/10.1109/FOCS.2016.72. URL: http://arxiv.org/abs/1602.08166.
http://arxiv.org/abs/1602.08166
Yi-Jun Chang and Seth Pettie. A time hierarchy theorem for the LOCAL model. In Proc. 58th Annual IEEE Symposium on Foundations of Computer Science (FOCS 2017), pages 156-167. IEEE, 2017. http://dx.doi.org/10.1109/FOCS.2017.23. URL: http://arxiv.org/abs/1704.06297.
http://arxiv.org/abs/1704.06297
Lihi Cohen, Yuval Emek, Oren Louidor, and Jara Uitto. Exploring an infinite space with finite memory scouts. In Proc. 28th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 2017), pages 207-224. SIAM, 2017. http://dx.doi.org/10.1137/1.9781611974782.14. URL: http://arxiv.org/abs/1704.02380.
http://arxiv.org/abs/1704.02380
Alejandro Cornejo and Fabian Kuhn. Deploying wireless networks with beeps. In Proc. 24th International Symposium on Distributed Computing (DISC 2010), volume 6343 of Lecture Notes in Computer Science, pages 148-162. Springer, 2010. URL: http://dx.doi.org/10.1007/978-3-642-15763-9_15.
http://dx.doi.org/10.1007/978-3-642-15763-9_15
Yuval Emek, Tobias Langner, Jara Uitto, and Roger Wattenhofer. Solving the ANTS problem with asynchronous finite state machines. In Proc. 41st International Colloquium on Automata, Languages, and Programming (ICALP 2014), pages 471-482. Springer, 2014. http://dx.doi.org/10.1007/978-3-662-43951-7_40. URL: http://arxiv.org/abs/1311.3062.
http://arxiv.org/abs/1311.3062
Yuval Emek and Roger Wattenhofer. Stone age distributed computing. In Proc. 32nd Annual ACM Symposium on Principles of Distributed Computing (PODC 2013), pages 137-146. ACM, 2013. http://dx.doi.org/10.1145/2484239.2484244. URL: http://arxiv.org/abs/1202.1186.
http://arxiv.org/abs/1202.1186
Martin Gardner. The fantastic combinations of John Conway’s new solitaire game "life". Scientific American, 223(4):120-123, 1970.
Mohsen Ghaffari, Fabian Kuhn, and Yannic Maus. On the complexity of local distributed graph problems. In Proc. 49th Annual ACM Symposium on Theory of Computing (STOC 2017), pages 784-797. ACM, 2017. http://dx.doi.org/10.1145/3055399.3055471. URL: http://arxiv.org/abs/1611.02663.
http://arxiv.org/abs/1611.02663
Mika Göös, Juho Hirvonen, and Jukka Suomela. Lower bounds for local approximation. Journal of the ACM, 60(5):39:1-23, 2013. http://dx.doi.org/10.1145/2528405. URL: http://arxiv.org/abs/1201.6675.
http://arxiv.org/abs/1201.6675
Lauri Hella, Matti Järvisalo, Antti Kuusisto, Juhana Laurinharju, Tuomo Lempiäinen, Kerkko Luosto, Jukka Suomela, and Jonni Virtema. Weak models of distributed computing, with connections to modal logic. Distributed Computing, 28(1):31-53, 2015. http://dx.doi.org/10.1007/s00446-013-0202-3. URL: http://arxiv.org/abs/1205.2051.
http://arxiv.org/abs/1205.2051
Fabian Kuhn, Thomas Moscibroda, and Roger Wattenhofer. Local computation: lower and upper bounds. Journal of the ACM, 63(2):17:1-17:44, 2016. http://dx.doi.org/10.1145/2742012. URL: http://arxiv.org/abs/1011.5470.
http://arxiv.org/abs/1011.5470
Antti Kuusisto. Infinite networks, halting and local algorithms. In Proc. 5th International Symposium on Games, Automata, Logics and Formal Verification (GandALF 2014), volume 161 of Electronic Proceedings in Theoretical Computer Science, pages 147-160, 2014. http://dx.doi.org/10.4204/EPTCS.161.14. URL: http://arxiv.org/abs/1408.5963.
http://arxiv.org/abs/1408.5963
Antti Kuusisto and Fabian Reiter. Emptiness problems for distributed automata. In Proc. 8th International Symposium on Games, Automata, Logics and Formal Verification (GandALF 2017), volume 256 of Electronic Proceedings in Theoretical Computer Science, pages 210-222, 2017. http://dx.doi.org/10.4204/EPTCS.256.15. URL: http://arxiv.org/abs/1705.02609.
http://arxiv.org/abs/1705.02609
Nathan Linial. Locality in distributed graph algorithms. SIAM Journal on Computing, 21(1):193-201, 1992. URL: http://dx.doi.org/10.1137/0221015.
http://dx.doi.org/10.1137/0221015
Moni Naor and Larry Stockmeyer. What can be computed locally? SIAM Journal on Computing, 24(6):1259-1277, 1995. URL: http://dx.doi.org/10.1137/S0097539793254571.
http://dx.doi.org/10.1137/S0097539793254571
Fabian Reiter. Distributed graph automata. In Proc. 30th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS 2015), pages 192-201. IEEE, 2015. http://dx.doi.org/10.1109/LICS.2015.27. URL: http://arxiv.org/abs/1404.6503.
http://arxiv.org/abs/1404.6503
Fabian Reiter. Asynchronous distributed automata: a characterization of the modal mu-fragment. In Proc. 44th International Colloquium on Automata, Languages, and Programming (ICALP 2017), pages 100:1-100:14. Schloss Dagstuhl - Leibniz Center for Informatics, 2017. https://dx.doi.org/10.4230/LIPIcs.ICALP.2017.100. URL: http://arxiv.org/abs/1611.08554.
http://arxiv.org/abs/1611.08554
John von Neumann. Theory of Self-Reproducing Automata. University of Illinois Press, 1966.
Stephen Wolfram. A New Kind of Science. Wolfram Media, 2002.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Shape Formation by Programmable Particles
Shape formation (or pattern formation) is a basic distributed problem for systems of compu- tational mobile entities. Intensively studied for systems of autonomous mobile robots, it has recently been investigated in the realm of programmable matter, where entities are assumed to be small and with severely limited capabilities. Namely, it has been studied in the geometric Amoebot model, where the anonymous entities, called particles, operate on a hexagonal tessella- tion of the plane and have limited computational power (they have constant memory), strictly local interaction and communication capabilities (only with particles in neighboring nodes of the grid), and limited motorial capabilities (from a grid node to an empty neighboring node); their activation is controlled by an adversarial scheduler. Recent investigations have shown how, start- ing from a well-structured configuration in which the particles form a (not necessarily complete) triangle, the particles can form a large class of shapes. This result has been established under several assumptions: agreement on the clockwise direction (i.e., chirality), a sequential activation schedule, and randomization (i.e., particles can flip coins to elect a leader).
In this paper we provide a characterization of which shapes can be formed deterministically starting from any simply connected initial configuration of n particles. The characterization is constructive: we provide a universal shape formation algorithm that, for each feasible pair of shapes (S_0,S_F), allows the particles to form the final shape SF (given in input) starting from the initial shape S_0, unknown to the particles. The final configuration will be an appropriate scaled-up copy of S_F depending on n.
If randomization is allowed, then any input shape can be formed from any initial (simply connected) shape by our algorithm, provided that there are enough particles.
Our algorithm works without chirality, proving that chirality is computationally irrelevant for shape formation. Furthermore, it works under a strong adversarial scheduler, not necessarily sequential.
We also consider the complexity of shape formation both in terms of the number of rounds and the total number of moves performed by the particles executing a universal shape formation algorithm. We prove that our solution has a complexity of O(n^2) rounds and moves: this number of moves is also asymptotically worst-case optimal.
Shape formation
pattern formation
programmable matter
Amoebots
leader election
distributed algorithms
31:1-31:16
Regular Paper
Giuseppe A.
Di Luna
Giuseppe A. Di Luna
Paola
Flocchini
Paola Flocchini
Nicola
Santoro
Nicola Santoro
Giovanni
Viglietta
Giovanni Viglietta
Yukiko
Yamauchi
Yukiko Yamauchi
10.4230/LIPIcs.OPODIS.2017.31
H. Ando, I. Suzuki, and M. Yamashita. Formation and agreement problems for synchronous mobile robots with limited visibility. In Proc. of ISIC, pages 453-460, 1995.
S. Cannon, J.J. Daymude, D. Randall, and A.W. Richa. A Markov chain algorithm for compression in self-organizing particle systems. In Proc. of PODC, pages 279-288, 2016.
G. Chirikjian. Kinematics of a metamorphic robotic system. In Proc. of ICRA, pages 1:449-1:455, 1994.
S. Das, P. Flocchini, N. Santoro, and M. Yamashita. Forming sequences of geometric patterns with oblivious mobile robots. Distrib. Comput., 28(2):131-145, 2015.
J.J. Daymude, Z. Derakhshandeh, R. Gmyr, A. Porter, A.W. Richa, C. Scheideler, and T. Strothmann. On the runtime of universal coating for programmable matter. In Proc. of DNA, pages 148-164, 2016.
J.J. Daymude, R. Gmyr, A.W. Richa, C. Scheideler, and T. Strothmann. Improved leader election for self-organizing programmable matter. arXiv, 2017. URL: https://arxiv.org/abs/1701.03616.
https://arxiv.org/abs/1701.03616
Z. Derakhshandeh, R. Gmyr, A.W. Richa, C. Scheideler, and T. Strothmann. An algorithmic framework for shape formation problems in self-organizing particle systems. In Proc. of NanoCom, pages 21:1-21:2, 2015.
Z. Derakhshandeh, R. Gmyr, A.W. Richa, C. Scheideler, and T. Strothmann. Universal shape formation for programmable matter. In Proc. of SPAA, pages 289-299, 2016.
Z. Derakhshandeh, R. Gmyr, A.W. Richa, C. Scheideler, and T. Strothmann. Universal coating for programmable matter. Theor. Comput. Sci., 671:56-68, 2017.
Z. Derakhshandeh, R. Gmyr, T. Strothmann, R.A. Bazzi, A.W. Richa, and C. Scheideler. Leader election and shape formation with self-organizing programmable matter. In Proc. of DNA, pages 117-132, 2015.
S. Dolev, S. Frenkel, M. Rosenbli, P. Narayanan, and K.M. Venkateswarlu. In-vivo energy harvesting nano robots. In Proc. of ICSEE, pages 1-5, 2016.
P. Flocchini, G. Prencipe, N. Santoro, and P. Widmayer. Arbitrary pattern formation by asynchronous, anonymous, oblivious robots. Theor. Comput. Sci., 407(1):412-447, 2008.
N. Fujinaga, Y. Yamauchi, H. Ono, S. Kijima, and M. Yamashita. Pattern formation by oblivious asynchronous mobile robots. SIAM J. Comput., 44(3):740-785, 2016.
G.A. Di Luna, P. Flocchini, G. Prencipe, N. Santoro, and G. Viglietta. Line recovery by programmable particles. In Proc. of ICDCN, to appear.
G.A. Di Luna, P. Flocchini, N. Santoro, G. Viglietta, and Y. Yamauchi. Shape formation by programmable particles. arXiv, 2017. URL: https://arxiv.org/abs/1705.03538.
https://arxiv.org/abs/1705.03538
O. Michail, G. Skretas, and P.G. Spirakis. On the transformation capability of feasible mechanisms for programmable matter. In Proc. of ICALP, pages 136:1-136:15, 2017.
A. Naz, B. Piranda, J. Bourgeois, and S.C. Goldstein. A distributed self-reconfiguration algorithm for cylindrical lattice-based modular robots. In Proc. of NCA, pages 254-263, 2016.
M.J. Patitz. An introduction to tile-based self-assembly and a survey of recent results. Nat. Comput., 13(2):195-224, 2014.
P.W. Rothemund. Folding DNA to create nanoscale shapes and patterns. Nature, 440(7082):297-302, 2006.
M. Rubenstein, A. Cornejo, and R. Nagpal. Programmable self-assembly in a thousand-robot swarm. Science, 345(6198):795-799, 2014.
N. Schiefer and E. Winfree. Universal computation and optimal construction in the chemical reaction network-controlled tile assembly model. In Proc. of DNA, pages 34-54, 2015.
I. Suzuki and M. Yamashita. Distributed anonymous mobile robots: formation of geometric patterns. SIAM J. Comput., 28(4):1347-1363, 1999.
T. Toffoli and N. Margolus. Programmable matter: concepts and realization. Physica D, 47(1):263-272, 1991.
J.E. Walter, J.L. Welch, and N.M. Amato. Distributed reconfiguration of metamorphic robot chains. Distrib. Comput., 17(2):171-189, 2004.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode
Synthesis of Distributed Algorithms with Parameterized Threshold Guards
Fault-tolerant distributed algorithms are notoriously hard to get right. In this paper we introduce an automated method that helps in that process: the designer provides specifications (the problem to be solved) and a sketch of a distributed algorithm that keeps arithmetic details unspecified. Our tool then automatically fills the missing parts.
Fault-tolerant distributed algorithms are typically parameterized, that is, they are designed to work for any number n of processes and any number t of faults, provided some resilience condition holds; e.g., n > 3t. In this paper we automatically synthesize distributed algorithms that work for all parameter values that satisfy the resilience condition. We focus on threshold- guarded distributed algorithms, where actions are taken only if a sufficiently large number of messages is received, e.g., more than t or n/2. Both expressions can be derived by choosing the right values for the coefficients a, b, and c, in the sketch of a threshold a·n+b·t+c. Our method takes as input a sketch of an asynchronous threshold-based fault-tolerant distributed algorithm — where the guards are missing exact coefficients—and then iteratively picks the values for the coefficients.
Our approach combines recent progress in parameterized model checking of distributed algo- rithms with counterexample-guided synthesis. Besides theoretical results on termination of the synthesis procedure, we experimentally evaluate our method and show that it can synthesize sev- eral distributed algorithms from the literature, e.g., Byzantine reliable broadcast and Byzantine one-step consensus. In addition, for several new variations of safety and liveness specifications, our tool generates new distributed algorithms.
fault-tolerant distributed algorithms
byzantine faults
parameterized model checking
program synthesis
32:1-32:20
Regular Paper
Marijana
Lazic
Marijana Lazic
Igor
Konnov
Igor Konnov
Josef
Widder
Josef Widder
Roderick
Bloem
Roderick Bloem
10.4230/LIPIcs.OPODIS.2017.32
Rajeev Alur, Rastislav Bodík, Garvit Juniwal, Milo M. K. Martin, Mukund Raghothaman, Sanjit A. Seshia, Rishabh Singh, Armando Solar-Lezama, Emina Torlak, and Abhishek Udupa. Syntax-guided synthesis. In FMCAD, pages 1-8, 2013.
K. Apt and D. Kozen. Limits for automatic verification of finite-state concurrent systems. IPL, 15:307-309, 1986.
Clark Barrett, Christopher L. Conway, Morgan Deters, Liana Hadarean, Dejan Jovanovic, Tim King, Andrew Reynolds, and Cesare Tinelli. CVC4. In CAV, pages 171-177, 2011.
Benjamin Bisping, Paul-David Brodmann, Tim Jungnickel, Christina Rickmann, Henning Seidler, Anke Stüber, Arno Wilhelm-Weidner, Kirstin Peters, and Uwe Nestmann. A constructive proof for FLP. Archive of Formal Proofs, 2016.
Roderick Bloem, Nicolas Braud-Santoni, and Swen Jacobs. Synthesis of self-stabilising and Byzantine-resilient distributed systems. In CAV, volume 9779 of LNCS, pages 157-176, 2016.
Roderick Bloem, Swen Jacobs, Ayrat Khalimov, Igor Konnov, Sasha Rubin, Helmut Veith, and Josef Widder. Decidability of Parameterized Verification. Synthesis Lectures on Distributed Computing Theory. Morgan & Claypool Publishers, 2015.
Tushar Deepak Chandra and Sam Toueg. Unreliable failure detectors for reliable distributed systems. J. ACM, 43(2):225-267, 1996.
Bernadette Charron-Bost and André Schiper. The heard-of model: computing in distributed systems with benign faults. Distributed Computing, 22(1):49-71, 2009.
Kaustuv Chaudhuri, Damien Doligez, Leslie Lamport, and Stephan Merz. Verifying safety properties with the TLA+ proof system. In IJCAR, volume 6173 of LNCS, pages 142-148, 2010.
Edmund M. Clarke, Orna Grumberg, and Doron A. Peled. Model Checking. MIT Press, 1999.
Leonardo De Moura and Nikolaj Bjørner. Z3: An efficient SMT solver. In TACAS, volume 1579 of LNCS, pages 337-340. Springer Berlin Heidelberg, 2008.
Danny Dolev, Keijo Heljanko, Matti Järvisalo, Janne H. Korhonen, Christoph Lenzen, Joel Rybicki, Jukka Suomela, and Siert Wieringa. Synchronous counting and computational algorithm design. J. Comput. Syst. Sci., 82(2):310-332, 2016.
Cezara Drăgoi, Thomas A. Henzinger, Helmut Veith, Josef Widder, and Damien Zufferey. A logic-based framework for verifying consensus algorithms. In VMCAI, volume 8318 of LNCS, pages 161-181, 2014.
Fathiyeh Faghih and Borzoo Bonakdarpour. SMT-based synthesis of distributed self-stabilizing systems. TAAS, 10(3):21:1-21:26, 2015.
Fathiyeh Faghih, Borzoo Bonakdarpour, Sébastien Tixeuil, and Sandeep S. Kulkarni. Specification-based synthesis of distributed self-stabilizing protocols. In FORTE, volume 9688 of LNCS, pages 124-141, 2016.
Adrià Gascón and Ashish Tiwari. A synthesized algorithm for interactive consistency. In NFM, volume 8430 of LNCS, pages 270-284. Springer, 2014.
Chris Hawblitzel, Jon Howell, Manos Kapritsos, Jacob R. Lorch, Bryan Parno, Michael L. Roberts, Srinath Setty, and Brian Zill. Ironfleet: Proving safety and liveness of practical distributed systems. Commun. ACM, 60(7):83-92, 2017.
Swen Jacobs and Roderick Bloem. Parameterized synthesis. LMCS, 10(1:12), 2014.
Igor Konnov, Marijana Lazić, Helmut Veith, and Josef Widder. A short counterexample property for safety and liveness verification of fault-tolerant distributed algorithms. In POPL, pages 719-734, 2017.
Igor Konnov, Helmut Veith, and Josef Widder. SMT and POR beat counter abstraction: Parameterized model checking of threshold-based distributed algorithms. In CAV (Part I), volume 9206 of LNCS, pages 85-102, 2015.
Igor Konnov, Josef Widder, Francesco Spegni, and Luca Spalazzi. Accuracy of message counting abstraction in fault-tolerant distributed algorithms. In VMCAI, pages 347-366, 2017.
Leslie Lamport. Specifying systems: The TLA+ language and tools for hardware and software engineers. Addison-Wesley, 2002.
Mohsen Lesani, Christian J. Bell, and Adam Chlipala. Chapar: certified causally consistent distributed key-value stores. In POPL, pages 357-370, 2016.
Nancy Lynch. Distributed Algorithms. Morgan Kaufman, 1996.
Ognjen Maric, Christoph Sprenger, and David A. Basin. Cutoff bounds for consensus algorithms. In CAV, pages 217-237, 2017.
Laure Millet, Maria Potop-Butucaru, Nathalie Sznajder, and Sébastien Tixeuil. On the synthesis of mobile robots algorithms: The case of ring gathering. In SSS, volume 8756 of LNCS, pages 237-251, 2014.
Achour Mostéfaoui, Eric Mourgaya, Philippe Raipin Parvédy, and Michel Raynal. Evaluating the condition-based approach to solve consensus. In DSN, pages 541-550, 2003.
Yee Jiun Song and Robbert van Renesse. Bosco: One-step Byzantine asynchronous consensus. In DISC, volume 5218 of LNCS, pages 438-450, 2008.
T.K. Srikanth and Sam Toueg. Simulating authenticated broadcasts to derive simple fault-tolerant algorithms. Dist. Comp., 2:80-94, 1987.
Josef Widder and Ulrich Schmid. Booting clock synchronization in partially synchronous systems with hybrid process and link failures. Dist. Comp., 20(2):115-140, 2007.
James R. Wilcox, Doug Woos, Pavel Panchekha, Zachary Tatlock, Xi Wang, Michael D. Ernst, and Thomas E. Anderson. Verdi: a framework for implementing and formally verifying distributed systems. In PLDI, pages 357-368, 2015.
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode