形式陈述
因果广播在可靠广播基础上要求:若消息
直觉
回复必须在原消息之后出现,但彼此无因果关系的两条消息没有必要强行排成同一全序。
例子与边界
进程 A 广播“提交”,B 收到后广播“确认”,所有进程都应先交付提交再交付确认。若 C 和 D 同时广播独立更新,不同接收者可按不同顺序交付。因果广播弱于原子广播,因为后者还统一并发消息顺序。
推论与应用
因果广播用于协作编辑、因果一致存储、事件复制和调试分布式因果链。
参考资料
- Nancy A. Lynch, Distributed Algorithms, Morgan Kaufmann, 1996,Chs. 1–25。
- Leslie Lamport, “Time, Clocks, and the Ordering of Events in a Distributed System,” Communications of the ACM 21(7), 1978,Full paper。