Why do two machines that process the same market event need to agree on the time? This note explains that requirement, using a CME futures update observed on two hosts as the public example, and describes what agreement is not.
When a machine stamps a message, it is claiming that its clock read a certain value at a certain moment in the handling of that message. A second machine that stamps the same message is making its own claim. If the clocks differ, the two claims cannot be placed on one timeline without a lie. Logs will disagree about which event came first. A replay on one host will not match a recording made on the other. The disagreement looks like a market mystery and is often a clock mystery.
Agreement is not a matter of both machines displaying similar civil time in a corner of a screen. It means a defined offset, a defined source, and a bound on how far the two clocks are allowed to drift before the system calls itself unhealthy. The source might be a shared reference distributed through the building. The bound has to be chosen and monitored. A stamp without a named source is a decoration. Two decorations do not agree. They merely coexist.
Two machines agree on the time when their stamps name one timescale, the offset between them is monitored, and stamps made outside the stated bound are marked as no longer comparable.
Consider one CME book update observed by two hosts that both receive the feed. Each host stamps the packet when that host sees it. Those stamps will not be identical, because the packets do not arrive at two places at one instant, and because the clocks are not the same object. The useful question is whether the difference stays inside the bound the design stated, and whether both stamps name the same timescale. If one host is synchronized to the reference and the other is free-running, the pair cannot be used to order events across machines. The tape and the log have become two stories.
The exchange has clocks of its own. A message may carry an exchange timestamp that means something specified by the feed, which is not the same fact as a local receipt stamp. Mixing them under one column called time is a common way to start an argument that cannot be finished. The column should say which clock. In the CME example, a receipt stamp answers when this host saw the packet. An exchange stamp answers what the feed says about the event. A study that wants one of those questions must not be handed the other.
Failure is supposed to be loud. If a host loses its reference and keeps stamping anyway, later analysis will trust a clock that has left the agreement. The healthier behavior is to mark the stamps as degraded or to stop publishing them as comparable. A quiet continuation is how a day becomes impossible to replay. Two machines agree on the time only while the monitoring says they do. The agreement is a status, not a permanent property of the hardware.
Setting both machines to the same time zone is not agreement. Copying one stamp into every downstream record is not agreement either. That copy can be useful as a lineage, so a later record points back to the receipt stamp, but the copy is not a new measurement. And a very precise-looking number is not evidence that two clocks match. Precision is how finely the counter is divided. Agreement is whether two counters are describing one timescale within a stated bound.
The CME update is the example because the same public message can be seen in more than one place, which forces the question. The requirement is general. Any two machines that both claim to have touched one event must name their clocks, monitor the offset, and refuse to pretend when the offset is unknown. Otherwise the log is a pile of numbers that only look like a sequence.
This piece does not claim that clocks are synchronized to a stated tolerance, that a timestamp makes a path fast, or that exchange time and receipt time are interchangeable. It says agreement is a monitored relationship between named clocks.