Skip to main content
  • 2978 Accesses

Abstract

This chapter is on the association of consistent dates with events, local states, or global states of a distributed computation. Consistency means that the dates generated by a dating system have to be in agreement with the “causality” generated by the considered distributed execution. According to the view of a distributed execution we are interested in, this causality is the causal precedence order on events (relation \(\stackrel{ev}{\longrightarrow}\)), the causal precedence order on local states (relation \(\stackrel{\sigma}{\longrightarrow}\)), or the reachability relation in the lattice of global states (relation \(\stackrel{\varSigma }{\longrightarrow}\)), all introduced in the previous chapter. In all cases, this means that the date of a “cause” has to be earlier than the date of any of its “effects”. As we consider time-free asynchronous distributed systems, these dates cannot be physical dates. (Moreover, even if processes were given access to a global physical clock, the clock granularity should be small enough to always allow for a consistent dating.)

Three types of logical time are presented, namely, scalar (or linear) time, vector time, and matrix time. Each type of time is defined, its properties are stated, and illustrations showing how to use it are presented.

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 54.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 99.99
Price excludes VAT (USA)
  • Durable hardcover 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. A. Agarwal, V.K. Garg, Efficient dependency tracking for relevant events in concurrent systems. Distrib. Comput. 19(3), 163–183 (2007)

    Article  MathSciNet  Google Scholar 

  2. D. Agrawal, A. Malpini, Efficient dissemination of information in computer networks. Comput. J. 34(6), 534–541 (1991)

    Article  Google Scholar 

  3. E. Anceaume, J.-M. Hélary, M. Raynal, Tracking immediate predecessors in distributed computations, in Proc. 14th Annual ACM Symposium on Parallel Algorithms and Architectures (SPAA’002) (ACM Press, New York, 2002), pp. 210–219

    Google Scholar 

  4. E. Anceaume, J.-M. Hélary, M. Raynal, A note on the determination of the immediate predecessors in a distributed computation. Int. J. Found. Comput. Sci. 13(6), 865–872 (2002)

    Article  MATH  Google Scholar 

  5. H. Attiya, J.L. Welch, Sequential consistency versus linearizability. ACM Trans. Comput. Syst. 12(2), 91–122 (1994)

    Article  Google Scholar 

  6. R. Baldoni, G. Melideo, k-dependency vectors: a scalable causality-tracking protocol, in Proc. 11th Euromicro Workshop on Parallel, Distributed and Network-Based Processing (PDP’03) (2003), pp. 219–226

    Google Scholar 

  7. R. Baldoni, M. Raynal, Fundamentals of distributed computing: a practical tour of vector clock systems. IEEE Distrib. Syst. Online 3(2), 1–18 (2002)

    Google Scholar 

  8. K. Birman, T. Joseph, Reliable communication in the presence of failures. ACM Trans. Comput. Syst. 5(1), 47–76 (1987)

    Article  Google Scholar 

  9. B. Charron-Bost, Concerning the size of logical clocks in distributed systems. Inf. Process. Lett. 39, 11–16 (1991)

    Article  MathSciNet  MATH  Google Scholar 

  10. Cl. Diehl, Cl. Jard, Interval approximations of message causality in distributed executions, in Proc. 9th Annual Symposium on Theoretical Aspects of Computer Science (STACS’92). LNCS, vol. 577 (Springer, Berlin, 1992), pp. 363–374

    Google Scholar 

  11. C.J. Fidge, Timestamp in message passing systems that preserves partial ordering, in Proc. 11th Australian Computing Conference (1988), pp. 56–66

    Google Scholar 

  12. C.J. Fidge, Logical time in distributed computing systems. IEEE Comput. 24(8), 28–33 (1991)

    Article  Google Scholar 

  13. C.J. Fidge, Limitation of vector timestamps for reconstructing distributed computations. Inf. Process. Lett. 68, 87–91 (1998)

    Article  Google Scholar 

  14. M.J. Fischer, A. Michael, Sacrificing serializability to attain high availability of data, in Proc. First ACM Symposium on Principles of Database Systems (PODS’82) (ACM Press, New York, 1882), pp. 70–75

    Google Scholar 

  15. J. Fowler, W. Zwaenepoel, Causal distributed breakpoints, in Proc. 10th Int’l IEEE Conference on Distributed Computing Systems (ICDCS’90) (IEEE Press, New York, 1990), pp. 134–141

    Google Scholar 

  16. V.K. Garg, Principles of Distributed Systems (Kluwer Academic, Dordrecht, 1996), 274 pages

    Book  Google Scholar 

  17. V.K. Garg, S. Skawratananond, N. Mittal, Timestamping messages and events in a distributed system using synchronous communication. Distrib. Comput. 19(5–6), 387–402 (2007)

    Article  MATH  Google Scholar 

  18. J.-M. Hélary, M. Raynal, G. Melideo, R. Baldoni, Efficient causality-tracking timestamping. IEEE Trans. Knowl. Data Eng. 15(5), 1239–1250 (2003)

    Article  Google Scholar 

  19. Cl. Jard, G.-V. Jourdan, Incremental transitive dependency tracking in distributed computations. Parallel Process. Lett. 6(3), 427–435 (1996)

    Article  Google Scholar 

  20. J. Jefferson, Virtual time. ACM Trans. Program. Lang. Syst. 7(3), 404–425 (1985)

    Article  MathSciNet  Google Scholar 

  21. L. Lamport, Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21(7), 558–565 (1978)

    Article  MATH  Google Scholar 

  22. B. Liskov, R. Ladin, Highly available distributed services and fault-tolerant distributed garbage collection, in Proc. 5th ACM Symposium on Principles of Distributed Computing (PODC’86) (ACM Press, New York, 1986), pp. 29–39

    Chapter  Google Scholar 

  23. F. Mattern, Virtual time and global states of distributed systems, in Proc. Parallel and Distributed Algorithms Conference, ed. by M. Cosnard, P. Quinton, M. Raynal, Y. Robert (North-Holland, Amsterdam, 1988), pp. 215–226

    Google Scholar 

  24. J. Misra, Distributed discrete event simulation. ACM Comput. Surv. 18(1), 39–65 (1986)

    Article  Google Scholar 

  25. D.S. Parker, G.L. Popek, G. Rudisin, L. Stoughton, B.J. Walker, E. Walton, J.M. Chow, D.A. Edwards, S. Kiser, C.S. Kline, Detection of mutual inconsistency in distributed systems. IEEE Trans. Softw. Eng. SE9(3), 240–246 (1983)

    Article  Google Scholar 

  26. R. Prakash, M. Singhal, Dependency sequences and hierarchical clocks: efficient alternatives to vector clocks for mobile computing systems. Wirel. Netw. 3(5), 349–360 (1997)

    Article  Google Scholar 

  27. M. Raynal, A distributed algorithm to prevent mutual drift between n logical clocks. Inf. Process. Lett. 24, 199–202 (1987)

    Article  MathSciNet  MATH  Google Scholar 

  28. M. Raynal, Illustrating the use of vector clocks in property detection: an example and a counter-example, in Proc. 5th European Conference on Parallelism (EUROPAR’99). LNCS, vol. 1685 (Springer, Berlin, 1999), pp. 806–814

    Google Scholar 

  29. M. Raynal, S. Singhal, Logical time: capturing causality in distributed systems. IEEE Comput. 29(2), 49–57 (1996)

    Article  Google Scholar 

  30. S.K. Sarin, N.A. Lynch, Discarding obsolete information in a replicated database system. IEEE Trans. Softw. Eng. 13(1), 39–46 (1987)

    Article  Google Scholar 

  31. F. Schmuck, The use of efficient broadcast in asynchronous distributed systems. Doctoral Dissertation, Tech. Report TR88-928, Dept of Computer Science, Cornell University, 124 pages, 1988

    Google Scholar 

  32. R. Schwarz, F. Mattern, Detecting causal relationships in distributed computations: in search of the Holy Grail. Distrib. Comput. 7, 149–174 (1994)

    Article  MATH  Google Scholar 

  33. M. Singhal, A.D. Kshemkalyani, An efficient implementation of vector clocks. Inf. Process. Lett. 43, 47–52 (1992)

    Article  MATH  Google Scholar 

  34. R.E. Strom, S. Yemini, Optimistic recovery in distributed systems. ACM Trans. Comput. Syst. 3(3), 204–226 (1985)

    Article  Google Scholar 

  35. F.J. Torres-Rojas, M. Ahamad, Plausible clocks: constant size logical clocks for distributed systems. Distrib. Comput. 12(4), 179–195 (1999)

    Article  Google Scholar 

  36. G.T.J. Wuu, A.J. Bernstein, Efficient solutions to the replicated log and dictionary problems, in Proc. 3rd Annual ACM Symposium on Principles of Distributed Computing (PODC’84) (ACM Press, New York, 1984), pp. 233–242

    Chapter  Google Scholar 

  37. L.-Y. Yen, T.-L. Huang, Resetting vector clocks in distributed systems. J. Parallel Distrib. Comput. 43, 15–20 (1997)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Raynal, M. (2013). Logical Time in Asynchronous Distributed Systems. In: Distributed Algorithms for Message-Passing Systems. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-38123-2_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-38123-2_7

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-38122-5

  • Online ISBN: 978-3-642-38123-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics