Time, Clocks, and the Ordering of Events in a Distributed System
In a distributed system there is no global clock, only messages. Lamport defines the happened-before relation, shows how logical clocks give every event a consistent order, and uses that order to build a mutual-exclusion algorithm without any central coordinator.
Key ideas
- Happened-before is a partial order derived only from message flow
- A counter incremented on every event and every receive is enough for a consistent total order
- Physical clocks need bounded drift to make the order match real time
Why read it now
Every discussion of consistency, causality, and versioning in this course stands on this paper. It is short and every paragraph earns its place.
Question to keep in mind
Why can two events be concurrent even when one clearly happened first on a wall clock?