[论文解读] XFT: Practical Fault Tolerance Beyond Crashes
本文提出了XFT(跨故障容错)这一新型容错模型,通过利用多数副本之间的同步通信,在不增加额外资源成本的前提下实现了实用的拜占庭容错。XPaxos是首个基于XFT的状态机复制协议,其性能达到CFT级别,同时可容忍拜占庭故障和网络异步,相较于CFT与BFT协议,在实际的全球复制部署中(最高可达五个九的可用性)表现更优。
Despite years of intensive research, Byzantine faulttolerant (BFT) systems have not yet been adopted in practice. This is due to additional cost of BFT in terms of resources, protocol complexity and performance, compared with crash fault-tolerance (CFT). This overhead of BFT comes from the assumption of a powerful adversary that can fully control not only the Byzantine faulty machines, but at the same time also the message delivery schedule across the entire network, effectively inducing communication asynchrony and partitioning otherwise correct machines at will. To many practitioners, however, such strong attacks appear irrelevant. In this paper, we introduce cross fault tolerance or XFT, a novel approach to building reliable and secure distributed systems and apply it to the classical state-machine replication (SMR) problem. In short, an XFT SMR protocol provides the reliability guarantees of widely used asynchronous CFT SMR protocols such as Paxos and Raft, but also tolerates Byzantine faults in combination with network asynchrony, as long as a majority of replicas are correct and communicate synchronously. This allows the development of XFT systems at the price of CFT (already paid for in practice), yet with strictly stronger resilience than CFT — sometimes even stronger than BFT itself. As a showcase for XFT, we present XPaxos, the first XFT SMR protocol. Although it offers much stronger resilience than CFT SMR at no extra resource cost, the performance of XPaxos matches that of the state-of-the art CFT protocols.
研究动机与目标
- 为解决尽管历经数十年研究,拜占庭容错(BFT)系统在实际部署中仍存在实用鸿沟的问题。
- 通过放松对完全协调攻击者的假设(即同时控制故障副本与网络行为),降低BFT的感知开销。
- 设计一种容错模型,在不增加资源成本的前提下,提供强于崩溃容错(CFT)的弹性能力。
- 证明在现实故障模型下,XFT可提供优于CFT与BFT的可靠性。
- 通过在全球范围、地理复制环境中的XPaxos部署,验证XFT的性能与可用性。
提出的方法
- 提出XFT,一种容错模型,只要多数副本保持正确并实现同步通信,即可容忍拜占庭故障与网络异步。
- 设计XPaxos,首个基于XFT的状态机复制协议,使用2t+1个副本(与CFT相同),同时在拜占庭故障下保证安全性和活性。
- 利用网络分区与拜占庭故障不会同时被协调的假设,减少传统BFT所需的3t+1个副本数量。
- 将XPaxos集成至Apache ZooKeeper中,评估其在Amazon EC2数据中心生产类环境下的真实世界性能。
- 采用概率可用性分析,比较XFT与CFT、BFT在独立同分布故障模型下的表现。
- 开展端到端评估,测量广域网优化、地理复制部署中的吞吐量与延迟。
实验结果
研究问题
- RQ1能否设计一种容错模型,在不增加资源成本的前提下,提供强于CFT的弹性能力?
- RQ2放松敌手模型(特别是假设网络分区与拜占庭故障不会同时协调)是否能实现CFT级别性能的实用BFT?
- RQ3在现实故障分布下,协议能否实现高于CFT与BFT的可用性?
- RQ4是否可能构建一种BFT协议,使其在真实部署中性能可与最先进的CFT协议(如Paxos)相媲美?
- RQ5当故障被建模为独立同分布的随机变量时,XFT的可用性与CFT和BFT相比如何?
主要发现
- 在t=1时,当机器可用性为0.999且良性故障率为0.99999时,XPaxos实现五个九的可用性(99.999%),相比CFT多出一个九的可用性。
- 对于t=1,XPaxos与BFT具有相同的可用性九次方数量级,但仅需2t+1个副本,而非BFT所需的3t+1个。
- 对于t=2,XPaxos相比BFT多出一个九的可用性,实现3×9available−1个九的可用性,而BFT仅实现3×9available−2个九的可用性。
- 在地理复制的EC2部署中,XPaxos在吞吐量与延迟方面与广域网优化的Paxos变体相当,且显著优于现有最佳BFT协议。
- XPaxos在Apache ZooKeeper中的原生CFT SMR协议表现更优,证明其在真实世界协调服务中的实际可行性。
- 分析表明,在独立同分布故障假设下,XPaxos提供的可靠性保证严格强于BFT,尤其在t≥2时更为显著。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。