一句话:提出首个在数据中心达到微秒级延迟、仅需 2f+1 副本的拜占庭容错状态机复制系统 uBFT。
本文提出 uBFT,首个在数据中心实现微秒级延迟、且仅用 2f+1 个副本容忍 f 个拜占庭故障的状态机复制系统。针对真实系统故障模式复杂、纯崩溃假设不成立的问题,uBFT 以分离式内存作为小型、非定制的可信计算基,并引入 Consistent Tail Broadcast 抽象,在防止副本 equivocation 的同时限制内存消耗。系统基于 RDMA 分离式内存实现,端到端延迟低至 10 微秒,比基于 Intel SGX 的 MinBFT 快至少 50 倍;用于复制 Memcached、Redis 和 Liquibook 时仅增加约 10 微秒延迟,可信分离式内存开销小于 1 MiB。
We propose uBFT, the first State Machine Replication (SMR) system to achieve microsecond-scale latency in data centers, while using only 2f+1 replicas to tolerate f Byzantine failures. The Byzantine Fault Tolerance (BFT) provided by uBFT is essential as pure crashes appear to be a mere illusion with real-life systems reportedly failing in many unexpected ways. uBFT relies on a small non-tailored trusted computing base—disaggregated memory—and consumes a practically bounded amount of memory. uBFT is based on a novel abstraction called Consistent Tail Broadcast, which we use to prevent equivocation while bounding memory. We implement uBFT using RDMA-based disaggregated memory and obtain an end-to-end latency of as little as 10 us. This is at least 50× faster than MinBFT, a state-of-the-art 2f+1 BFT SMR based on Intel’s SGX. We use uBFT to replicate two KV-stores (Memcached and Redis), as well as a financial order matching engine (Liquibook). These applications have low latency (up to 20 us) and become Byzantine tolerant with as little as 10 us more. The price for uBFT is a small amount of reliable disaggregated memory (less than 1 MiB), which in our prototype consists of a small number of memory servers connected through RDMA and replicated for fault tolerance.
@inproceedings{paperbot10005,
title = {uBFT: Microsecond-Scale BFT using Disaggregated Memory},
author = {Marcos K. Aguilera and Naama Ben-David and Rachid Guerraoui and Antoine Murat and Athanasios Xygkis and Igor Zablotchi},
booktitle = {ASPLOS},
year = {2023},
doi = {10.1145/3575693.3575732}
}