◄ WORLD V · SONNY 5DART 221 · a helldive at the net

THE ATOMIC BROADCAST everyone hears the same story in the same order

Total-order (atomic) broadcast demands that every correct node deliver the same set of messages in the same order — even though messages arrive at each node in whatever order the network chooses. Give each message a sequence number from an agreed source and deliver strictly in sequence, and every node reconstructs one identical timeline. The deep fact: this is equivalent to consensus — solving either solves the other — so a replicated state machine and an agreement protocol are two faces of one problem.

THE TECHNIQUE same messages, same order at every node; equivalent to consensus

Deliver the same messages to two nodes in scrambled arrival orders, but sort by sequence number — and both nodes reconstruct the identical delivery timeline, the property a replicated state machine needs to stay in lock-step: live demo


HISTORY & CREDIT Chandra & Toueg, 1996

“Ordering messages consistently is easier than full consensus.” — it is exactly as hard. Chandra–Toueg proved total-order broadcast and consensus are equivalent: each can be built from the other. So the moment you can agree on one value, you can agree on a whole ordered log, and vice-versa. cited

1987 · Birman & Joseph — the ISIS toolkit brings atomic broadcast into practice (virtual synchrony).
1996 · Chandra & Toueg — prove atomic broadcast is equivalent to consensus, via the weakest failure detector.
2004 · Défago, Schiper & Urbán — the definitive survey mapping dozens of total-order algorithms.

Because ordered delivery equals consensus, the replicated state machine — feed identical ordered commands to identical machines and they stay identical — is the universal recipe for fault-tolerant services. One ordered log, many machines, one truth. Chandra–Toueg 1996

RECOMMEND FOR I-13 scrambled arrival, identical delivery order, computed

On the canonical compiler, messages numbered 1,2,3 arriving as [3,1,2] at one node and [1,2,3] at another both deliver in the identical order after sequencing:

$ i13 run abcast.i13 # node1 arrival [3,1,2], node2 arrival [1,2,3] delivery order (both) = 1, 2, 3 same = 0 -- identical timeline at every node despite different arrival
Recommend: atomic broadcast is LIT for I-13 — verified two nodes with scrambled arrivals [3,1,2] and [1,2,3] both deliver 1,2,3 (difference 0). Because it is equivalent to consensus, this one sort is the engine of the replicated state machine — the batch's capstone: agree on the order, and identical machines stay identical.