Hall of FameLeslie Lamport197836 min readpaperadvanced
Time, Clocks, and the Ordering of Events in a Distributed System
Summary
Lamport's paper defines the "happened before" partial ordering of events in a distributed system. It introduces logical clocks and an algorithm to extend this to a consistent total ordering, which can be used to solve synchronization problems.
- The "happened before" relation (a -> b) defines a partial ordering of events in a distributed system.
- Two events are concurrent if neither can causally affect the other (a -/-> b and b -/-> a).
- Logical clocks assign numbers to events, satisfying C1 (events in a process are ordered) and C2 (message send < message receipt).
- These logical clocks provide a consistent total ordering of events, useful for distributed synchronization.
This foundational paper is essential for anyone designing or debugging distributed systems, as it clarifies the fundamental challenges of event ordering and provides a robust framework for reasoning about time.
10/10