Canopus and RCanopus: Scalable Consensus for Permissioned Blockchains – University of Waterloo

April 24, 2019 @ 10:00 am – 11:00 am
Small Lecture Theatre
Microsoft Research Ltd, 21 Station Road, Cambridge
Microsoft Research Cambridge Talks Admins

A critical problem with the consensus protocols underlying blockchains is that they do not scale well. As the number of transactions needing linearization increases, network traffic from topology-oblivious broadcasts can quickly overwhelm the network or a central coordinator. Thus, achieving strong linearizabiilty is typically restricted to a handful of participants, or systems must resort to weaker forms of consensus, such as those using proof of work. To address this problem, we propose Canopus, a highly-parallel consensus protocol that exploits modern data center network topology, parallelism, and consensus semantics to achieve scalability. Our key insight is to make network communication patterns topology-aware. In our prototype implementation, Canopus achieves rates as high as 5m linearizable transactions/second over 21 nodes distributed across 7 datacenters. I will also outline an extension, Resilient Canopus, that makes Canopus Byzantine Fault Tolerant as well as network partition tolerant.