Consensus is about all the machines coming to an agreement over a value. Atomic broadcast also says that a process emitting a msg should either be agreed by all or none
So what is the difference?
They are the same problem being looked at by different angles. The Atomic broadcast Wikipedia page even has a few paragraphs on the problems' equivalence. I'd pull up the reference used, but it is behind a paywall.
In practical terms, Atomic Broadcast discussions explicitly talk about sending multiple messages in an agreed-upon order, where Consensus discussions have historically talked about agreeing on only one value, and then abstracting that to multiple messages (e.g. Paxos (1 values), then MultiPaxos (multiple values)). More modern "consensus algorithms" now start out with agreeing on the order of multiple values (e.g Raft).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With