Skip to main content

Anonymity in Distributed Read/Write Systems: An Introductory Survey

  • Conference paper
  • First Online:
Networked Systems (NETYS 2018)

Part of the book series: Lecture Notes in Computer Science ((LNCCN,volume 11028))

Included in the following conference series:

Abstract

This paper is an algorithmic introduction to anonymity in asynchronous systems where processes communicate by reading and writing atomic read/write registers. Two types of anonymity are investigated: process-anonymity and memory-anonymity. Process-anonymity is when the processes cannot be distinguished the ones from the others (among other features, they do not have identifiers). Memory-anonymity is when the same memory locations can have different names at different processes (e.g., the location name A used by process \(p_i\) and the location name B used by another process \(p_j\) can correspond to the very same memory location X, and similarly for the names B at \(p_i\) and A at \(p_j\) which correspond to the same memory location \(Y\ne X\)). The paper shows how algorithms can cope with the uncertainty created by these two types of anonymity. To this end, taking examples from the literature, it presents anonymity-tolerant implementations of several concurrent objects, such as snapshot, consensus, and lock, each implementation satisfying a well-defined progress condition (obstruction-freedom, non-blocking, or wait-freedom). This paper must be considered as a short example-driven introductory tutorial on anonymous asynchronous read/write systems.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Afek, Y., Attiya, H., Dolev, D., Gafni, E., Merritt, M., Shavit, N.: Atomic snapshots of shared memory. J. ACM 40(4), 873–890 (1993)

    Article  Google Scholar 

  2. Anderson, J.: Multi-writer composite registers. Distrib. Comput. 7(4), 175–195 (1994)

    Article  Google Scholar 

  3. Angluin, D., Local and global properties in networks of processes. In: Proceedings 12th Symposium on Theory of Computing (STOC 2080), pp. 82–93. ACM Press (1980)

    Google Scholar 

  4. Aspnes, J., Fich, F.E., Ruppert, E.: Relationship between broadcast and shared memory in reliable anonymous distributed systems. Distrib. Comput. 18(3), 209–219 (2006)

    Article  Google Scholar 

  5. Attiya, H., Gorbach, A., Moran, S.: Computing in totally anonymous asynchronous shared-memory systems. Inf. Comput. 173(2), 162–183 (2002)

    Article  MathSciNet  Google Scholar 

  6. Attiya, H., Snir, M., Warmuth, M.K.: Computing on an anonymous ring. J. ACM 35(4), 845–875 (1988)

    Article  MathSciNet  Google Scholar 

  7. Bonnet, F., Raynal, M.: The price of anonymity: optimal consensus despite asynchrony, crash and anonymity. ACM Trans. Auton. Adapt. Syst. 6(4), 28 pages (2011)

    Article  Google Scholar 

  8. Bonnet, F., Raynal, M.: Anonymous asynchronous systems: the case of failure detectors. Distrib. Comput. 26(3), 141–158 (2013)

    Article  Google Scholar 

  9. Bouzid, Z., Raynal, M., Sutra, P.: Anonymous obstruction-free \((n, k)\)-set agreement with \((n-k+1)\) atomic read/write registers. Distrib. Comput. 31(2), 99–117 (2018)

    Google Scholar 

  10. Chandra, T.D., Polylog randomized wait-free consensus. In: Proceedings 15th ACM Symposium on Principles of Distributed Computing (PODC 1996), pp. 166–175. ACM Press (1996)

    Google Scholar 

  11. Dijkstra, E.W.: Solution of a problem in concurrent programming control. Commun. ACM 8(9), 569 (1965)

    Article  Google Scholar 

  12. Dijkstra, E.W.: Hierarchical ordering of sequential processes. Acta Inf. 1(1), 115–138 (1971)

    Article  MathSciNet  Google Scholar 

  13. Fich, F.E., Luchangco, V., Moir, M., Shavit, N.: Obstruction-free algorithms can be practically wait-free. In: Fraigniaud, P. (ed.) DISC 2005. LNCS, vol. 3724, pp. 78–92. Springer, Heidelberg (2005). https://doi.org/10.1007/11561927_8

    Chapter  Google Scholar 

  14. Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)

    Article  MathSciNet  Google Scholar 

  15. Garg, V.K., Ghosh, J., Symmetry in spite of hierarchy. In: Proceeding 10th International Conference on Distributed Computing Systems (ICDCS 1990), pp. 4–11. IEEE Computer Press (1990)

    Google Scholar 

  16. Guerraoui, R., Ruppert, E.: Anonymous and fault-tolerant shared-memory computations. Distrib. Comput. 20, 165–177 (2007)

    Article  Google Scholar 

  17. Harel, D., Feldman, Y.: Algorithmics: The Spirit of Computing, p. 572. Springer, Heidelberg (2012)

    MATH  Google Scholar 

  18. Herlihy, M.: Wait-free synchronization. ACM Trans. Program. Lang. Syst. 13(1), 124–149 (1991)

    Article  Google Scholar 

  19. Herlihy, M., Rajsbaum, S., Raynal, M.: Power and limits of distributed computing shared memory models. Theor. Comput. Sci. 509, 3–24 (2013)

    Article  MathSciNet  Google Scholar 

  20. Herlihy, M.P., Luchangco, V., Moir, M.: Obstruction-free synchronization: double-ended queues as an example. In: Proceedings 23th International IEEE Conference on Distributed Computing Systems (ICDCS 2003), pp. 522–529. IEEE Press (2003)

    Google Scholar 

  21. Herlihy, M.P., Shavit, N.: The topological structure of asynchronous computability. J. ACM 46(6), 858–923 (1999)

    Article  MathSciNet  Google Scholar 

  22. Herlihy, M.P., Wing, J.M.: Linearizability: a correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst. 12(3), 463–492 (1990)

    Article  Google Scholar 

  23. Imbs, D., Raynal, M.: Help when needed, but no more: an efficient partial snapshot algorithm. J. Parallel Distrib. Comput. 72(1), 1–12 (2012)

    Article  Google Scholar 

  24. Imbs, D., Raynal, M., Taubenfeld, G.: On asymmetric progress conditions. In: Proceedings 29th ACM Symposium on Principles of Distributed Computing (PODC 2010), pp. 55–64. ACM Press (2010)

    Google Scholar 

  25. Johnson, R.E., Schneider, F.B.: Symmetry and similarity in distributed systems. In: Proceedings 4th ACM Symposium on Principles of Distributed Computing (PODC 1985), pp. 13–22, ACM Press (1985)

    Google Scholar 

  26. Knuth, D.E.: Algorithmic thinking and mathematical thinking. Am. Math. Mon. 92(3), 170–181 (1985)

    Article  MathSciNet  Google Scholar 

  27. Loui, M.C., Abu-Amara, H.H.: Memory requirements for agreement among unreliable asynchronous processes. Adv. Comput. Res. 4, 163–183 (1987). Parallel and Distributed Computing

    MathSciNet  Google Scholar 

  28. Rabin, M.: The choice coordination problem. Acta Inf. 17(2), 121–134 (1982)

    Article  MathSciNet  Google Scholar 

  29. Raynal, M.: Concurrent Programming: Algorithms, Principles and Foundations. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-32027-9. ISBN 978-3-642-32026-2

    Book  MATH  Google Scholar 

  30. Taubenfeld, G.: Synchronization algorithms and concurrent programming, p. 243. Pearson Education/Prentice Hall, London (2006). ISBN 0-131-97259-6

    Google Scholar 

  31. Taubenfeld, G.: The computational structure of progress conditions. In: Lynch, N.A., Shvartsman, A.A. (eds.) DISC 2010. LNCS, vol. 6343, pp. 221–235. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-15763-9_23

    Chapter  Google Scholar 

  32. Taubenfeld G.: Coordination without prior agreement. In: Proceedings 36th ACM Symposium on Principles of Distributed Computing (PODC 2017), pp. 325–334 (2017)

    Google Scholar 

  33. Wing, J.: Computational thinking. Commun. ACM 49(3), 33–35 (2006)

    Article  Google Scholar 

  34. Yamashita, M., Kameda, T.: Computing on anonymous networks: part I -characterizing the solvable cases. IEEE Trans. Parallel Distrib. Syst. 7(1), 69–89 (1996)

    Article  Google Scholar 

  35. Yanagisawa, N.: Wait-Free solvability of colorless tasks in anonymous shared-memory model. In: Bonakdarpour, B., Petit, F. (eds.) SSS 2016. Lecture Notes in Computer Science, vol. 10083, pp. 415–429. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-49259-9_32

    Chapter  Google Scholar 

  36. Zhu L.: A tight space bound for consensus. In: Proceedings 48th Annual ACM Symposium on Theory of Computing (STOC 2016), pp. 345–350. ACM Press (2016)

    Google Scholar 

Download references

Acknowledgments

The first author was supported by the Franco-German DFG-ANR Project 14-CE35-0010-02 DISCMAT (devoted to connections between mathematics and distributed computing), the French ANR project 16-CE40-0023-03 DESCARTES (devoted to layered and modular structures in distributed computing), and Hong Kong Polytechnic University. The first author wants also to thank G. Taubenfeld for discussions on anonymous systems, and F. Taïani for his encouragement to write this article. A special thanks to the authors of the presented algorithms, without them this article would not exist!

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Michel Raynal .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Raynal, M., Cao, J. (2019). Anonymity in Distributed Read/Write Systems: An Introductory Survey. In: Podelski, A., Taïani, F. (eds) Networked Systems. NETYS 2018. Lecture Notes in Computer Science(), vol 11028. Springer, Cham. https://doi.org/10.1007/978-3-030-05529-5_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-05529-5_9

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-05528-8

  • Online ISBN: 978-3-030-05529-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics