Chop Chop: Byzantine Atomic Broadcast to the Network Limit
Martina Camaioni, Rachid Guerraoui, Matteo Monti, Pierre-Louis Roman, Manuel Vidigueira, Gauthier Voron
TL;DR
Chop Chop tackles the long-standing throughput gap in Byzantine Atomic Broadcast by introducing a distillation-based batching mechanism that compresses per-message authentication and sequencing information. It relies on an authenticated mempool and trusted-broker interactions to produce distilled batches that servers can verify in bulk, dramatically reducing CPU and network overhead. The authors prove safety and liveness under Byzantine faults, implement the system in Rust, and demonstrate near line-rate throughput (tens of millions of ops/s) with a mean end-to-end latency in the low seconds range across geo-distributed deployments, outperforming strong baselines by up to two orders of magnitude. They further validate three practical applications (Payment, Auction, Pixel War) achieving multi-million op/s throughput, underscoring Chop Chop’s potential for Internet-scale, Byzantine fault-tolerant state machine replication.
Abstract
At the heart of state machine replication, the celebrated technique enabling decentralized and secure universal computation, lies Atomic Broadcast, a fundamental communication primitive that orders, authenticates, and deduplicates messages. This paper presents Chop Chop, a Byzantine Atomic Broadcast system that uses a novel authenticated memory pool to amortize the cost of ordering, authenticating and deduplicating messages, achieving "line rate" (i.e., closely matching the complexity of a protocol that does not ensure any ordering, authentication or Byzantine resilience) even when processing messages as small as 8 bytes. Chop Chop attains this performance by means of a new form of batching we call distillation. A distilled batch is a set of messages that are fast to authenticate, deduplicate, and order. Batches are distilled using a novel interactive protocol involving brokers, an untrusted layer of facilitating processes between clients and servers. In a geo-distributed deployment of 64 medium-sized servers, Chop Chop processes 43,600,000 messages per second with an average latency of 3.6 seconds. Under the same conditions, state-of-the-art alternatives offer two orders of magnitude less throughput for the same latency. We showcase three simple Chop Chop applications: a Payment system, an Auction house and a "Pixel war" game, respectively achieving 32, 2.3 and 35 million operations per second.
