A new relay protocol for Bitcoin could significantly reduce node bandwidth, but does not yet represent a complete scaling solution.
The Erlay bitcoin transaction relay protocol:
* Reduces bandwidth used to announce new transactions by ~84%
* Increases global transaction relay time by ~80% (2.6 seconds)
* Has little impact on network privacy
* Is compatible with Dandelion relayhttps://t.co/TBlYlFTjpC pic.twitter.com/QcCUgfEoA1
— Jameson Lopp (@lopp) June 5, 2019
Erlay, developed by University of British Columbia researcher Gleb Naumenko with input from Bitcoin Core developers Greg Maxwell and Pieter Wuille, essentially cuts down the bandwidth requirements to run a node. According to Naumenko in the announcement, :
“The main idea is that instead of announcing every transaction to every peer, announcements are only sent directly over a small number of connections (only 8 outgoing ones). Further relay is achieved by periodically running a set reconciliation protocol over every connection between the sets of withheld announcements in both directions.
The set reconciliation protocol uses error correcting codes to communicate a set of transactions to a peer with an unknown but similar set using bandwidth only equal to the size of the difference and not the size of the sets themselves.
Results: we save half of the bandwidth a node consumes, allow increasing connectivity almost for free, and, as a side effect, better withstand timing attacks.
If outbound peer count were increased to 32, Erlay saves around 75% overall bandwidth compared to the current protocol.”
Bandwidth is one of the primary scaling limitations in running full nodes, presenting an issue both for massively scaling a blockchain, and maintaining a small network throughput on very small devices, the latter of which is a key use case for Erlay.
A single part of what is require to properly scale the network
According to Arizona State University blockchain researcher Dr. Darren Tapp, Erlay can cut down on the stress of running nodes, however by itself may not represent an on-chain scaling solution:
The Erlay transaction relay protocol for Bitcoin could enable users to run full nodes on their cell phones with sub-optimal Internet connectivity, with a modest increase in latency as the main trade off. Seems like a no brainer. Thoughts?
— Morgan Polotan (@morganpolotan) May 30, 2019
“The Erlay protocol would save bandwidth generally used with node operation. However, this might not help block propagation without reducing bandwidth or latency during block propagation. Erlay without a “reconciliation protocol” would most likely increase latency. A well constructed reconciliation protocol could remove this concern.”
Additional approaches to cutting down on bandwidth usage have been explored by several other research teams, according to Tapp, however some of these can also be more readily applicable towards block propagation and scaling the network:
“Alternative ways of saving bandwidth have been considered by other research teams. For example research at UMass Amherst considered maintaining a bloom filter for every connection. Each bloom filter would keep track of transactions known by a specific node. This would be used to cut down on network bandwidth, as in Erlay, but also allow missing transactions to be predicted and sent at time of block propagation.
Concern about mempool divergence slowing down graphene propagation has led ASU and UMass researchers to consider mempool synchronization techniques. The most obvious synchronization technique could be borrowed from the Xthin protocol.”
Dr. Tapp has been involved in research for efficient on-chain scaling of blockchain networks, particularly Dash, to mass-market levels required to support a global mainstream user base. He has published several shorter explanations of block propagation research and techniques for Dash News, including on bloom filters and their opposite counterpart invertible bloom lookup tables (IBLTs), the Graphene propagation protocol and its potential challenge in the form of the poison block attack, and the Velocity Protocol which addresses this issue.
Dash’s approach combines on-chain scaling with a robust decentralized infrastructure
In contrast to the Bitcoin approach of attempting to maintain network decentralization by allowing any hobbyist to easily run a full node at the expense of on-chain transaction capacity, the Dash approach consists of mass on-chain scaling combined with a network of incentivized masternodes, addressing concerns of nodes becoming too expensive for individuals to run (and therefore being run exclusively by third parties) by having the network directly incentivize nodes. Research from Arizona State University shows that the Dash can easily scale to over half PayPal’s current transaction levels, with significantly higher levels easily expected.