Skip to content

可靠广播

Reliable broadcast

保证有效性、一致性和完整性的广播抽象。

形式陈述

可靠广播让一个指定发送者广播消息,并保证正确进程之间一致交付。常见崩溃故障规格包括:有效性——若正确发送者广播 m,则所有正确进程最终交付 m;一致性——若某正确进程交付 m,则所有正确进程最终交付 m;完整性——每个消息至多交付一次,且只有发送者实际广播的消息才可交付。不同文献会把终止条件拆分或采用 uniform 版本,因此使用时应固定定义。

直觉

底层消息可能丢失、重复或因发送者中途崩溃只到达部分节点;可靠广播把这些不一致结果提升为“正确节点最终一起收到或一起不收到”。

例子与边界

发送者给所有节点发消息,接收者再转发首次收到的消息,可在适当可靠点对点信道和崩溃模型下实现简单一致传播。若发送者可拜占庭式地向不同人发送不同值,崩溃版协议和性质不足,需 Byzantine reliable broadcast 及额外回声/阈值规则。可靠广播不规定不同消息之间的交付顺序。

推论与应用

可靠广播是复制日志、组通信和原子广播的基础抽象。它把“是否共同交付”与 FIFO、因果或全序等排序性质分离,便于分层构造协议。

参考资料
  • Nancy A. Lynch, Distributed Algorithms, Morgan Kaufmann, 1996,Chs. 7–8, broadcast primitives under failures。
  • Hagit Attiya and Jennifer Welch, Distributed Computing: Fundamentals, Simulations, and Advanced Topics, 2nd ed., Wiley, 2004,Chs. 3–5, reliable communication and broadcast specifications。