This is what Teranode is about (+50k TPS)

This is what Teranode is about (+50k TPS)

This week CoinGeek opened to an excited crowd in Zurich. While other conferences happening on the other side of the world were busy screaming, tearing up money and throwing chairs around, (and other sorts of behavior more suited to a rock concert) the markedly more professional crowd gathered in Zurich were excited to hear about the industry development in the BSV enterprise blockchain in the last six months.

At an auditorium which had restricted in-person guests to only 100 due to COVID-19 safety measures, Steve Shadders, head of the Teranode project had an update that would be of interest to not only technologists, but also those of us who want to see the global scaling that we were all promised. The CTO of nChain unveiled some preliminary numbers from an early testing of the project, a framework which promises to bring global levels of scaling to BSV, pushing some processing rates yet unheard of in the industry.

Teranode, if you believe the developers for what they claim, is the framework which will allow for unprecedented horizontal scaling on BSV. One of the historical bottlenecks with Bitcoin (all forks) since the original inception in 2009 is the fact that the server is a monolithic server which is largely single threaded. The original release software was really just a prototype that was meant to show the world what could be done on Bitcoin without being good at any particular thing. Henceforth, it had to perform all the needed functions of Bitcoin being both a workable server and a client wallet.

The Bitcoin server (bitcoind), from a technology perspective, is actually an amalgamation of several components:

  1. Networking Messaging (line protocol)

  2. Peer to Peer networking connectivity

  3. Client wallet

  4. Block construction (m/ining)

  5. Transaction validation

  6. Consensus protocol

  7. Local RPC server

All of these could rightly be separated out into their own independent servers. Realizing that the bottleneck was due to the highly constricted serial flow of transactions in the node, Teranode is designed to split apart the functions between the components of the code which handled acceptance, fee checking, validation, addition to block template, etc. When the transaction processing pipeline is restricted, it quickly creates spaghetti bowl of mutual locking conditions which bogs down the server no matter how powerful a processor or how much memory is thrown at it.

This is what Teranode is about. Separate out all the components of a Bitcoin node, and make them separate parts of a cluster. That way, if you want to up the processing capability of the node, just spin up another cluster.

 Sounds easy right? Well it isn’t that straight forward, as there is always some overhead that is required as new clusters must commit some of their processing power to coordinating between their horizontal peers, but, it looks like the Teranode team seems to have pulled it off. On a day which saw the Demo-Gods’ smile upon him, Steve Shadders was able to demonstrate a 2-cluster Teranode process over 20k txn/s (yes more than 20,000 transactions/sec!) before the latency delay rose above 100ms. (The amount of time above which payments will seem ‘too slow’ to live users). 

Then he spun up a 4-cluster Teranode and blasted it with the linear txn test load and we saw it hit over 50k txn/s. Which is just absolutely astounding. Keep in mind, the VISA network routinely processes about 2k txn/s and at peaks 50k txn/s globally! So it looks like if Teranode continues down this path and can be fully implemented and rolled out by early next year, BSV will have finally realized the long goal of Bitcoin to surpass the VISA network in processing power. Compare and contrast, BTC tops out at 7 txn/s.

The goal of a global scalable Bitcoin is coming true, and it seems like BSV is on track to fulfill its original vision as a global electronic cash system usable by all.

Watch Steve Shadders full presentation below:

New to Bitcoin? Check out CoinGeek’s Bitcoin for Beginners section, the ultimate resource guide to learn more about Bitcoin—as originally envisioned by Satoshi Nakamoto—and blockchain.

[id^="_form"]
[id^="_form"]
[id$="_submit"]
[id$="_submit"]
[^;]
[^;]
[?&]
[?&]
[^&#]
[^&#]
[(d+)]
[(d+)]
[elem.name]
[elem.name]
[+_a-z0-9-'&=]
[+_a-z0-9-'&=]
[+_a-z0-9-']
[+_a-z0-9-']
[a-z0-9-]
[a-z0-9-]
[a-z]
[a-z]
[el.name]
[el.name]
[id^="_form"]
[id^="_form"]
[id$="_submit"]
[id$="_submit"]
[^;]
[^;]
[?&]
[?&]
[^&#]
[^&#]
[(d+)]
[(d+)]
[elem.name]
[elem.name]
[+_a-z0-9-'&=]
[+_a-z0-9-'&=]
[+_a-z0-9-']
[+_a-z0-9-']
[a-z0-9-]
[a-z0-9-]
[a-z]
[a-z]
[el.name]
[el.name]