Indexing the archive…
Your Universe of Digital Possibilities
Five machines, five drifting clocks, messages that take their time. Nobody can say which of two events came first — unless one could have caused the other. Lamport’s rule keeps an order that never contradicts causality, and a vector clock knows exactly when two events have none.
The only order a distributed system can know: a before b if a could have caused b — earlier on one machine, or linked by a chain of messages. Two events with no such chain either way are concurrent, a ∥ b, and no observer-independent order exists between them.
One integer per process, ticked on every event and pushed past every stamp it receives. It never contradicts causality — but the converse fails: C(a) < C(b) does not mean a could have caused b.
One counter per process instead of one in all. Each process ticks its own entry and takes the component-wise maximum of every stamp it receives; then a happened before b exactly when every entry of V(a) is at most V(b)’s — causality, captured both ways.
Send at T₁ by your clock, the server stamps T₂ and T₃, the reply lands at T₄. The midpoint estimate of the offset is wrong by at most half the round trip — whatever the split between the two directions — and Cristian’s version (T₂ = T₃) is the same bound.
Lamport’s happened-before is the causal structure of special relativity with messages for light: an event can only affect what lies inside its future cone, and two events outside each other’s cones have no order every observer agrees on. The 1978 paper says as much: the definition will look natural to anyone who knows the invariant space-time formulation of special relativity, where the order of events is defined by the messages that could be sent.
The Hash kept a map with no master; The Clock keeps an order with no master clock. Lamport saw that in a distributed system “before” can only mean “could have caused” — the same move special relativity made when it gave up absolute simultaneity, which is why this diagram is The Cone’s spacetime diagram with machines for observers. The order it keeps is what The Generals need to agree at all, and what The Rumor spreads in log n rounds.