Ethereum network throughput under Shasper
The recent switch to implementing Casper (Ethereum’s version of Proof of Stake) alongside Sharding has led to many questions around the impact of the change and what it will eventually bring.
I’ve recently started diving deeper into the latest Casper+Sharding chain v2.1 spec and wanted to share some findings around the impact it will have on network throughput. To be clear, this is just my interpretation of the spec and what I think the impacts will likely be. I’m sure there are some deeper technical aspects I’m missing but I believe the numbers should be close regardless.
First, it’s important to understand the fundamentals around blocks, gas, and network capacity on the current Ethereum chain. Every transaction that occurs on Ethereum consumes a certain amount of “gas” which is the total computational power it took to execute the transaction. Every block that is mined includes a certain set of transactions. However, each block has a limit on the total gas it can include and that is called the “block gas limit”. The reason this limit exists is twofold: 1. it reduces block propagation times across the network and 2. it reduces centralization of mining.
This means that the Ethereum network has a capacity every block, and therefore every day, on how much it can process. Here is a look at the capacity on the current chain:
This will all change dramatically in Shasper due to the introduction of shards and Proof of Stake, both allowing for faster block times. The current spec calls for 1024 shards and slot times of 8 seconds. Every shard will be its own PoS chain where blocks are produced and transactions are stored. This means that the daily gas cap goes up ~1850x. The result is as follows:
As seen here, tx/sec capacity rises from 7 to 13,410, a huge improvement.
It’s possible in the future that block gas limit could also rise, thereby increasing throughput more, but Vitalik has suggested keeping that assumption at 8,000,000 for now.
An important note here is that this is just the first step to scaling the main “Layer 1” chain. After the initial spec of Shasper is implemented, the Layer 1 chain will gain further improvements such as quadratic sharding. On top of that, there are many Layer 2 scaling solutions on the horizon that will be built on top of the main chain for even higher throughput. The future of scaling on Ethereum looks bright.