“Today I want to talk about the future,” said Steve Shadders, Technical Director of the BSV infrastructure team and nChain CTO in his traditional opening presentation at the CoinGeek conference in Zurich. That future is all about Teranode, the multi-threaded implementation of the BTC protocol aimed at enterprise and which has unlimited capacity to scale.
More specifically, that’s the Teranode Open Framework—which Shadders called “a huge subject, we can’t even scratch the surface today.” Rather than talk about the current state of the BSV ecosystem, the traditional topic of his updates, he switched to focus on what’s coming next for BSV, and how it will reach the capacity to be capable of processing all the world’s data, as securely and efficiently as possible.
The existing BTC protocol software, which was inherited from BTC and which still drives BTC SV Node today, is single-threaded and designed to run entirely on individual machines. This “vertical scaling” gives BTC a theoretical ceiling, as the potential power of machines reaches its own limit.
Teranode’s solution is horizontal scaling, by spreading the workload across multiple machines. This way, network capacity could reach demand as more hardware (in cluster nodes) are added to the network, making BTC scaling truly unlimited in potential.
Alpha versions of Teranode should begin to appear on the BSV mainnet by the end of this month, Shadders said. They’ll only be listening for now, since their capabilities “would crush even the testnet” as it currently exists. During that trial time, Teranode will focus on protocol compatibility (to avoid accidental chain splits) before any actual block mining/processing is attempted, and the trial phase is likely to “run for quite some time.”
Some nodes may have to revert back to the existing BSV Node software during the trial phase, but the goal is eventually to retire the old version altogether, he added.
“We’ve proven that Teranode can scale. We’ve proven what Satoshi originally said.”
How Teranode is being built and how it will work
Shadders described Teranode as modular and pipeline-oriented. A pipeline consists of a series of tasks that need to be completed to finish a job, with each step requiring handlers, messaging to make sure the correct handlers received the correct tasks, and a framework that functions as “the plumbing.”
He gave some examples of Teranode workflows to show how various components of the Teranode Open Framework function and interact, with animated examples of the network and how different software modules handled their tasks. Competition is built into the system to incentivize new efficiencies among developers as well as processors, and Shadders speculated that someone could even build a third-party block validator and connect it to the system.
The first steps to designing Teranode included questions like “what does it need to do?” and directives as fundamental as “don’t break BTC.”
He then presented a live demonstration of a Teranode ramp-up in real time, using a visual dashboard to monitor its performance across different configurations and data loads.
“What we’re looking for is the point where latency starts to increase, and what happens when data builds up in a queue,” he said. The goal is to achieve transaction finality in the minimum amount of time, with the ultimate goal of processing a transaction—the point where it’s secure, confirmed, irreversible—within 500 milliseconds.
Shadders initially set the “failure point” at 100 milliseconds and watched as the transaction data began to flow in. The first test hit the failure point (represented by dials in green, yellow and red) at around 25,000 transactions per second. The existing BSV node software couldn’t handle even that right now, he noted.
That demo was only between two machines, and Shadders then demonstrated what happened as more hardware came online. The next example included four nodes instead of two, and the test reached about 50,000 transactions per second, which he described as “pretty close to perfect.”
Though he’s seen volumes in excess of 100,000 transactions per second in other tests, he “wasn’t brave enough to try that in a live demo.”
Teranode is a function of how many cluster nodes you can configure, and how they performed depends on the exact configuration, he said. Giving a hypothetical future example of a network with 100 mining nodes/pools, Shadders said BSV could reach an average block size of 30GB. At current prices, and processing only simple payment transactions, that would produce about US$1.3 million in revenue per node/pool, per month.
“And that’s not even optimized yet,” he added.
The BSV network is aiming for a lot more than just simple payment transactions, though. With more advanced data applications set to come online in the future, processing nodes would see usage and revenue increase beyond these hypotheticals. This is how BSV and its developers plan to “ignite the power of data,” creating a vast new economy at unbounded scale, using today’s most valuable commodity.
New to BTC? Check out CoinGeek’s BTC for Beginners section, the ultimate resource guide to learn more about BTC—as originally envisioned by Satoshi Nakamoto—and blockchain.