Blockchain Limitations And Performance Issues

Blockchain Limitations And Performance Issues

Blockchain
July 24, 2019 Editor's Desk
607
Introduction Have you noticed that when we talk about blockchain performance, we usually name approximate numbers? Where do 1000, 100,000 tx per second and other round numbers come from? Why don’t blockchain developers proudly claim 3,423 tx/sec on their websites after each blockchain code update? The truth is that it’s close to impossible to give
P2P Finance blockchain

Introduction

Have you noticed that when we talk about blockchain performance, we usually name approximate numbers? Where do 1000, 100,000 tx per second and other round numbers come from? Why don’t blockchain developers proudly claim 3,423 tx/sec on their websites after each blockchain code update?

The truth is that it’s close to impossible to give an accurate numerical performance estimate of a system that consists of tens and hundreds of computers, especially when they are scattered across the planet and connected by a network. A number of tx/sec will not reflect a huge variety of states of a large decentralized network.

Blockchain performance measurement is even more complicated than that of traditional services, for example, distributed databases. Let’s figure out why.

Below is a rough sequence of steps that the client software spends time on:

  • The user prepares and signs a transaction.
  • The user sends a transaction to the network and waits for confirmation of acceptance.
  • Network replicates information between network participants
  • Some of the participants generate new blocks including a user transaction and replicatenew blocks between network participants
  • The user receives information about a new block with his transaction from the networkClient transaction preparationAny blockchain transaction is digitally signed. Any data change request always involves small non-zero fees. Thus, transaction costs in blockchain are higher than in standard databases: a signature check must be paid by the processor work time, an increased transaction size – by the network bandwidth, any changes in the blockchain – by storage size.Peer to Peer networkingWhen a transaction is ready, the user sends it to the p2p network, through which all blockchain nodes communicate. In other words, the user sends it any available computer from the list of so-called peers – computers that do not trust each other. Having received a transaction, the peer immediately begins to distribute it between random peer neighbors from the list. After several transfers, a lot of peers have a transaction copy. Then computers that produce blocks (also called miners, block producers or BPs for short) include the transaction in the next block and distribute it across the network.As a result, information is distributed over the network twice.

Consensus algorithm

The consensus algorithm is another factor that affects transaction acceptance speed. Network nodes (miners, block-producers, validators) that are responsible for block and chain production, agree on correct blocks and those that should be discarded. Negotiating nodes exchange information about the blocks with the help of digital signatures, thus “voting” for one or several blocks.

Conclusion

Nowadays blockchains are reliable networks with malicious-resistant transactions. They are slower than their centralized counterparts — we cannot speak about millions of transactions per second. If you see messages about a million tx/sec, ask about the architecture. The creators of the ultra-fast “blockchains” often keep back a little, since millions of tx/sec usually mean middleware connection. In fact, such software is nothing but a common centralized service that meets such speeds requirements. In most cases, this is a L2 solution (Lightning, Plasma) or solutions that promise to assemble many parallel chains.

Related posts

Add a comment