Arma is a Byzantine Fault Tolerant (BFT) consensus system designed to achieve horizontal scalability across all hardware resources: network bandwidth, CPU, and disk I/O. As opposed to preceding BFT protocols, Arma separates the dissemination and validation of client transactions from the consensus process, restricting the latter to totally ordering only metadata of batches of transactions. This separation enables each party to distribute compute and storage resources for transaction validation, dissemination and disk I/O among multiple machines, resulting in horizontal scalability. Additionally, Arma ensures censorship resistance by imposing a maximum time limit on the inclusion of client transactions. We built and evaluated two Arma prototypes. The first is an independent system handling over 200,000 transactions per second, the second integrated into Hyperledger Fabric, speeding its consensus by an order of magnitude.
翻译:Arma是一种拜占庭容错(BFT)共识系统,旨在实现跨所有硬件资源(网络带宽、CPU和磁盘I/O)的水平可扩展性。与先前的BFT协议不同,Arma将客户端交易的传播和验证与共识过程分离,将后者限制为仅对交易批次的元数据进行全序处理。这种分离使得每个参与方能够将用于交易验证、传播和磁盘I/O的计算和存储资源分布到多台机器上,从而实现水平可扩展性。此外,Arma通过对客户端交易的包含施加最大时间限制来确保抗审查性。我们构建并评估了两个Arma原型。第一个是独立系统,每秒处理超过200,000笔交易;第二个集成到Hyperledger Fabric中,将其共识速度提升了一个数量级。