Why Bitcoin's 'Nervous System' is Getting an Upgrade

in #crypto-news8 years ago

 A long-running effort to increase the time in which data for  bitcoin's transaction blocks around the world has received an upgrade. Since bitcoin was released, an array of services or solutions have  emerged to meet the needs of those using the digital currency. These  include exchanges that allow bitcoin to be bought and sold for  government-issued currencies; mining pools, which grew as miners sought to collectivize for greater profit; and new kinds of wallets that delivered better functionality and security. But, some of the needs of the distributed network are not readily apparent to observers. As Bitcoin Core developer Greg Maxwell puts it, the Bitcoin Relay  Network, the brainchild of fellow Bitcoin Core contributor Matt Corallo,  arose several years ago in response to a need to propagate bitcoin  block data more quickly among miners, or those who process its  transactions. "A couple years ago as blocks started getting above 250k regularly we  saw what looked like a rapid consolidation of miners towards the most  popular pools. One of the reasons was smaller pools were experiencing  high orphaning," Maxwell recalls. He told CoinDesk: 

"It seemed like we were rapidly on a trend where only a single pool would exist."

However, he said Corallo sprung into action, developing the original  relay network and delivering what Maxwell called "radically improved  block propagation speed". The Bitcoin Relay Network ultimately materialized as a network of  nodes positioned in China, Europe, North America, Russia and Southeast  Asia. Each of the nodes sports a robust internet connection, and in  theory acts as a railroad for block data. The data is compressed and  then transmitted via the Transmission Control Protocol, or TCP. That system has been described as bitcoin's vascular or nervous  system – a critical component to delivering information throughout the  body. Now, an enhanced successor has been released. 

Enter FIBRE

Corallo recently unveiled the Fast Internet Bitcoin Relay Engine (FIBRE), an effort aimed at building a more capable version to the Bitcoin Relay Network. The idea is that, by improving the speed at which this information is  conveyed, miners can reduce the amount of orphan blocks, or transaction  blocks that are rejected by the network in favor of another created  around that time. Corallo, who operated the original network and designed the new  version, said that the initiative also helped increase the cost of selfish mining and cut down on the amount of empty blocks generated through SPV mining. But according to Corallo, the existing relay network began to "show  its age" in the last year, prompting work on the new software in the  past several months. He told CoinDesk: 

"Over the past few years of running it and very carefully  benchmarking it, I've found that you just can't get the kind of  reliable low-latency relay you want when using TCP in any form. A few  months ago I finally got around to starting from scratch to build a new  fast-relay protocol, building Compact Blocks as the foundation and early  versions of FIBRE at the same time."

At issue, Corallo explained, was that the network that functioned via  TCP was susceptible to data loss, which would require additional  processing (and thus increasing the time it takes to relay blocks). He  explained in his blog post introducing FIBRE that, with TCP, data  packets can get lost along the way. "Only then will the sender retransmit the lost packets, allowing the  receiver to (potentially) reconstruct the original transmission," he  wrote. These extra round-trip times ultimately caused spikes in relay time on the original Relay Network, he explained. 

FIBRE's upgrade

To sidestep this problem of latency – the time in which it takes  packets of data from one point to another (in this case, from node to  node), Corallo said he turned to another protocol, the User Datagram  Protocol (UDP). "Instead of using TCP to send the data required to transmit a block  once and relying on full round-trips to detect and resend lost packets,  FIBRE sends the data using UDP with additional Forward Error Correction  (FEC) data (ie data which allows you to reconstruct the full transmitted  data even though some was lost)," he told CoinDesk. It’s this latter element, FEC, that Maxwell referred to as "a bit of technology magic". FIBRE's makeup also involves BIP 152, a proposal for "compact blocks" aimed at cutting down the amount of bandwidth used when block data moves from node to node. "This way, even if some parts are lost, the block is still received  very quickly and without back and forth communication," Maxwell  explained. "It also retains its speed even if the block doesn't look  very much like the receivers mempool." 

Network effects

Yet for all the enhancements, FIBRE’s most ambitious aim is, perhaps,  an effort to get people around the world to run more networks. Originally, the network was maintained under the auspices of Corallo  himself, meaning that its operation – as with any bitcoin node – was  contingent on his ability to maintain it. Despite its code being freely available, Corallo said that there  wasn’t much of an appetite to stand up additional networks. Ultimately,  the success of a network (or system of networks) is arguably dependent  on getting more people to actually run them. FIBRE seeks to change this dynamic. The software is designed to  function as an add-on to Bitcoin Core, offering an avenue for more  people to come into contact with the code and potentially launch their  own relay networks. According to Corallo, work is underway to encourage other parties to  create their own FIBRE-based relay networks – an effort he said is  needed to keep things decentralized. Corallo has also published a guide for setting up FIBRE networks. In the meantime, he said new groups are now interested in setting up  relay systems, and he is, for now, cautiously optimistic more users will  help the cause. He continued: 

"I'm not sure if I should mention them by name yet, but  I'm confident at least two or so will stand something up and make it  publicly available soonish."


Source : Coindesk