Abstract
In this paper, we study a canonical distributed resource allocation problem arising in blockchains. While distributed resource allocation is a well-studied problem in networking, the blockchain setting additionally requires the solution to be resilient to adversarial behavior from a fraction of nodes. Scaling blockchain performance is a basic research topic; a plethora of solutions (under the umbrella of sharding) have been proposed in recent years. Although the various sharding solutions share a common thread (they cryptographically stitch together multiple parallel chains), architectural differences lead to differing resource allocation problems. In this paper we make three main contributions: (a) we categorize the different sharding proposals under a common architectural framework, allowing for the emergence of a new, uniformly improved, uni-consensus sharding architecture. (b) We formulate and exactly solve a core resource allocation problem in the uni-consensus sharding architecture-our solution, Free2shard, is adversary-resistant and achieves optimal throughput. The key technical contribution is a mathematical connection to the classical work of Blackwell approachability in dynamic game theory. (c) We implement the sharding architecture atop a full-stack blockchain in 3000 lines of code in Rust-we achieve a throughput of more than 250,000 transactions per second with 6 shards, a vast improvement over state-of-the-art.
Original language | English (US) |
---|---|
Article number | 11 |
Journal | Proceedings of the ACM on Measurement and Analysis of Computing Systems |
Volume | 6 |
Issue number | 1 |
DOIs | |
State | Published - Mar 2022 |
Externally published | Yes |
All Science Journal Classification (ASJC) codes
- Computer Science (miscellaneous)
- Computer Networks and Communications
- Hardware and Architecture
- Safety, Risk, Reliability and Quality
Keywords
- Game theory
- Sharding