Blockchain Scalability Explained : Challenges and Solutions
In my previous blog, "Web 3: Deep Dive", I covered everything about Web3, including its origin, history, how blockchain technology works & the latest trends in the ecosystem. I highly recommend giving it a read before proceeding with this one.
Let's get started ! 🔥
Basics of Blockchain Scalability
Setting Context
Blockchain's core functionality involves transactions where users interact with the blockchain by transferring assets, such as cryptocurrency, or by executing smart contracts and interacting with dApps, etc. It's similar to any web2 transaction systems like online banking, paypal or credit card payments.
Scalability
We know the benefits of decentralization (i.e. blockchain technology) but there is also a major disadvantage to this : ➡️ " Scalability ".
Scalability in terms of blockchain means how many transactions a blockchain network can handle per second ( also called TPS or Transactions Per Second).
In other words, it's blockchain's ability to handle growing amount of transactions within a network.
But why is scalability considered a disadvantage? 🤔
Issues with Blockchain Scalability
As of now, blockchains like Bitcoin and Ethereum, which are considered traditional blockchains, have relatively low transaction rates per second (TPS). 'Traditional' in the sense that they were among the first to implement blockchain technology. To understand how low their TPS rates are, here’s a comparison with Web2 transactions, such as those on the Visa network :
Bitcoin: Handles around 5-7 transactions per second (TPS).
Ethereum: Processes around 15-30 transactions per second (TPS).
Visa Network: Can handle up to 24,000 transactions per second (TPS).
Now, you must have noticed the stark difference between the TPS rates of traditional blockchains and those of payment networks, like Visa. It's very massive ! 🤯
This is where blockchain faces challenges: not only are transaction rates (TPS) often low, but transaction fees can also be very high.
- For e.g, for Bitcoin & Ethereum, average simple transaction fees generally fluctuate between $2 and $60, which is still high compared to Web2 transaction fees, which are usually a fraction of a cent to a few cents per transaction.
You might think, 'This is the underlying issue. So, why don't we just fix it & achieve scalability similar to Visa, with high transaction speeds, low fees, and higher TPS ?
And that's where we need to discuss the "Blockchain Trilemma".🫡
The Blockchain Trilemma
An ideal blockchain system should aim to achieve the following three properties :
a ) Decentralization: Meaning no single entity should control the network & it should be distributed across many participants.
b ) Security: It means to keep system secure from various attack vectors such as the 51% attacks or the Sybil attacks & ensure the transaction safety.
c ) Scalability: This means the system can grow while handling an increasing number of transactions or users, without sacrificing performance ( speed ) or significantly increasing operational ( running ) costs.
Blockchain Trilemma : The concept of 'Trilemma' was introduced by Vitalik Buterin, the co-founder of Ethereum. It states that a blockchain system can have only two out of these three properties.
This means if system is secure and decentralized then scalability will be sacrificed, resulting in fewer transactions per second. On the other hand, focusing on scalability might compromise decentralization or security.
For e.g, Ethereum is known for its strong decentralization and security, but faces scalablility issues as it can process only 15-30 TPS. And as Ethereum's gaining popularity the number of transactions have increased, causing delays & higher costs.
Users have to pay higher fees ( gas prices ) to speed up their transactions and move ahead in the queue ( a queue refers to the list of pending transactions that are waiting to be added to the blockchain ).
Scalability Solutions
Mainstream Adoption Challenge: For Ethereum and similar blockchains to be widely adopted, they need to find ways to reduce gas prices while still managing high transaction volumes ( i.e TPS). This would help make transactions faster and more affordable for everyone.
To solve the trilemma problem without sacrificing decentralization, security, or scalability, several solutions have been proposed, including Layer 2 (L2) solutions and Rollups. While other methods such as payment channels, consensus mechanisms & sidechains also exist, we will focus on L2 solutions and Rollups in this discussion.
Before addressing these solutions, we need to understand what Layer 0 (L0), Layer 1 (L1) and Layer 2 (L2) are. So, let’s take a look at them! 👀
Introduction to L0, L 1 and L 2
Layers of Blockchain :
A blockchain ecosystem is similar to a sandwich which includes different layers. In a sandwhich there's a base bread, the main fillings + toppings & the top bread.
Comparing to blockchain layers, the base bread is called Layer 0, the toppings and fillings is called the Layer 1 and the top bread is called Layer 2.
That’s the analogy. Now, let’s take a more technical look at these layers in depth.
Layer 0 ( L0 ) :
It's the base bread of the sandwich. This means it serves as support or foundation for the L1's and further L2's, similar to the sandwich, where without the base bread the fillings and top layer wouldn't exist.
OR
For more context, you could think of it as root of a tree which provides support and nutrients to growth and health of a tree. Just as the roots provide support and nutrients to the tree, Layer 0 ensures the foundational support necessary for the growth and functionality of Layer 1 and Layer 2 blockchains.
Foundational Infrastructure: It provides the underlying functionality for the blockchain including physical infrastructure like hardware, networking protocols and foundational software.
Interoperability: It has interoperability, meaning it enables communication in between different blockchains, allowing them to work together.
Examples of Layer 0 (L0) chains are Polkadot and Cosmos, as they provide the underlying architecture and enable multiple Layer 1 (L1) blockchains to work together by connecting them.
Layer 1 ( L1 ) :
Think of Layer 1 as the filling of a sandwich. Just as the filling is the core part of the sandwich, where all the essential ingredients are combined, Layer 1 is the core of the blockchain where all the main operations happen. It's basically the blockchain itself.
Just as the filling contains all the flavors and ingredients, Layer 1 handles all core blockchain functions like processing transactions, reaching consensus, and ensuring security.
While the filling (Layer 1) provides the main substance of the sandwich, it relies on the bread (Layer 0) to hold it together. The bread provides the foundational support that allows the filling to be enjoyed as part of the whole sandwich. Likewise, Layer 1 depends on Layer 0 for underlying infrastructure and connectivity.
Imagine that the filling is where all the key components come together to make the sandwich complete. Similarly, Layer 1 serves as the settlement layer where all transactions are finalized and recorded. Other layers or components (like the top and bottom slices of bread) interact with this core layer, sending their data to be confirmed and settled.
Examples of L1 chains are Ethereum, Solana, Bitcoin. They are basically hub of ecosystem.
Layer 2 ( L2 ) as Solution to Scalability :
Layer 2 is built on top of Layer 1 blockchains. This is similar to how the 'top bread' of a sandwich is placed on top of the fillings & toppings (L1).
L2 adds an extra layer that enhances the overall functionality & performance of the blockchain, much like how the top bread completes the sandwich.
It's a layer which is a proposed solution to solve scalability issues without compromising the principles of blockchain trilemma (i.e decentralization and security).
So, what these L2 solutions do is, they process the transactions from the L1 blockchain like the ones happening on Ethereum or Solana to other layer which is L2.
It's like offloading the transaction burden from Layer 1 blockchains, which were causing low TPS and slow speeds, to another layer. Think of Layer 1 as an overflowing river. Layer 2 acts like a diversion channel that redirects excess flow, preventing the river from overflowing. This approach addresses the scalability issues of the Layer 1 blockchain, which is why it is called a "Layer 2 Solution."
Example: Polygon is a Layer 2 scaling solution that operates as a sidechain. This means it runs parallel to the Layer 1 blockchain, such as Ethereum, and helps scale it by handling transactions off the main Ethereum chain.
Without Layer 2, This Is What You’d Be Paying. 😂
Rollups as Solution to Scalability :
Rollup is a type of L2 scaling solution that helps in increasing number of transaction capacity on L1 chains ( like Ethereum ) without increasing the gas cost per transaction.
When thousands of people send transactions regularly on a blockchain network, processing each transaction individually, as Ethereum (Layer 1) does, becomes costly and leads to low transaction rates per second (TPS).
What a Rollup does is it bundles or roll-up these individual transactions by compressing them into a single batch. This way instead of processing single transactions individually on L1 blockchain, rollups handle multiple transactions off-chain. The bundled transaction data is then sent to L1 chain.
This approach increases transaction volumes and reduces transaction fees, as the cost is distributed across the batch rather than applied to each transaction individually.
Example : Optimism, zKSync
There are two types of rollups : 1) Optimistic Rollups and 2) Zero-Knowledge (ZK) Rollups. Optimisic Rollups collect and process transactions off-chain and assume they’re correct. If someone thinks a transaction is wrong, they can challenge it with fraud proofs. Eg. Optimism, Arbitrum.
ZK Rollups bundle transactions off-chain and use cryptographic proofs to verify their validity before submitting bundled data to the main chain. E.g StarkNet, zkSync.
Wrap Up 🎬
This concludes our overview of "Scalability in Blockchains." 😮💨 We’ve covered the fundamental concepts of scalability, its issues, proposed solutions, and blockchain layers. My next blog will dive deeper into scalability solutions, focusing on rollups—both Optimistic and ZK Rollups—exploring their technical aspects in more detail. For now, this gives you a comprehensive overview of the problem and its solutions.
Thank you for giving it a read ! I am open to conversations, collaborations, or building new relationships. Feel free to shoot me a DM & reach out on any of these platforms :
If you feel my blog added value to your learning, you can give it a like, comment your insights and follow me for my upcoming blogs. Your support means a lot ! 🤗
Thank You ! 🙏
Subscribe to my newsletter
Read articles from Rohan Kapse directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
Rohan Kapse
Rohan Kapse
Heya, i'm into building web apps. Exploring web3, full stack and other stacks right now. Sharing my learnings here by crafting blogs : )