上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.2 故障
同步系统的各种故障包括进程故障和链路(通道)故障。
一个进程可能在执行期间突然停止而产生停止故障。根据模型,进程可能在上面的步骤1)或步骤2)的某个实例之前或之后发生故障;另外,我们允许进程在执行步骤1)的过程中发生故障。这意味着进程有可能只把它预期要产生的消息的一个子集成功地放入消息通道。我们假设该子集可以是任意子集——我们并不认为进程是顺序地产生它的消息并且在序列中间某处发生故障。
一个进程还可能发生Byzantine故障,也就是说,它可能以随意的方式产生下一个消息和下一个状态,而不遵循它的消息生成函数和状态迁移函数指定的规则。
一个链路可能由于丢失消息而发生故障。根据模型,一个进程可能在执行步骤1)期间试图把消息放入通道,但是一个出错的链路则可能不记录该消息。