The Bitcoin Masterclasses in Slovenia

The Bitcoin Masterclasses in Slovenia: The basics of IPv6 as it applies to Bitcoin

Getting your Trinity Audio player ready...

YouTube video

In the first session of the second The Bitcoin Masterclasses, Dr. Craig Wright delved into multicast, IPv6, and how both apply to Bitcoin. He outlined how these can create a truly distributed, permissionless peer-to-peer network with no scaling limit.

Multicast, anycast, IP-to-IP and Bitcoin

Dr. Wright explains that, in the morning session, he’ll be covering some of the basics of IPv6 as it applies to Bitcoin. He begins by explaining the basics, writing anycast, multicast, and IP-to-IP on the whiteboard.

“What IPv6 allows is something that was meant to be in IPv4 but never got there—a combination of these things,” he says before delving into further detail.

Multicast is “one too many,” he tells us. It allows us to form a group that people can actively subscribe to if they want to. E.g., Dr. Wright’s node sends out a packet to a router, and all group members get the packet via the internet.

He explains that multicast doesn’t require the three-way handshakes required by the Transmission Control Protocol (TCP). We can use the User Datagram Protocol (UDP) instead, provided we want to send a packet out without caring where it goes or who gets it. However, we can use the Reliable Data Protocol (RDP) for better results. It works with all the routers on the internet to ensure that group members get the packet when a data packet is sent from a node. Messages can even be sent back to say that only part of a packet was received and request to send it again.

Speaking of how Bitcoin works now, Dr. Wright says that, in gossip mode, his node needs to keep a list of all the machines that subscribe. This is due to the limitations of IPv4. With IPv6, this can be remedied, allowing anyone to request to join a multicast group without the need to maintain a list of machines. He says that someone ultimately has to keep a list of subscribers, but the ISP will be happy to do so because they’re paid to.

With IPv6, the biggest packet one can send is 4GB, Dr. Wright explains. “That’s a fair bit of information,” he rightly says. He dismisses the notion that the network can’t handle it—he can get a 100 Gigabit connection in London today. It’s a matter of spending the money to get the equipment, but that won’t be a problem for a profitable enterprise.

How many IP addresses are there on IPv6? There are enough to assign every atom in the known universe an IP address. This means that multicast groups can become massive. Combined with anycast, which makes sure nodes share information with the topographically closest node, we can create hyper-efficient networks on a global scale.

Better yet, and much to the chagrin of BTC advocates, nodes don’t get to choose who they share with. They will send to a multicast address, and all subscribers will get the information, making the network permissionless in a true sense. Nobody can stop anyone else from joining the network. This is true censorship resistance, although people like Luke from BTC Core would never admit it.

Nodes on BitcoinWhat they do and why they need to be efficient

What do nodes do in Bitcoin? They index transactions, form them in a time-ordered log and ensure other nodes get them. Dr. Wright’s node is going to want to send to other nodes on the network. Due to the way something like BTC is set up, that will take a lot of bandwidth since it’s inefficient. Dr. Wright demonstrates how it is literally impossible to scale due to the 10,000 home nodes. If we add multicast subscriptions into the mix, this problem becomes even worse.

To be able to handle mass quantities of data, we have to let go of the notion that every node will be able to see everything on the blockchain. Dr. Wright emphasizes the need for miners to be as efficient as possible, highlighting that every second counts.

For example, if it takes one miner 10 seconds to download a block and another one second, then the first miner has to do the same amount of work in 590 seconds that the second has to do in 599 (given 600 seconds per block). These may seem like small margins, but when profitability is 2% or 3%, it matters.

Watch: The Bitcoin Masterclasses provides a deeper understanding of the technology

YouTube video

New to blockchain? Check out CoinGeek’s Blockchain for Beginners section, the ultimate resource guide to learn more about blockchain technology.