Peer-to-Peer Network Architecture of Bitcoin
Bitcoin, as a peer-to-peer network, means that the computers that are involved in the network are peers to one another - they are equal, and there are no "unique" nodes. That is, all nodes share the burden of the network and they all follow the same set of rules.
The network interconnects in a "flat" topology. There is no centralized server and no hierarchy among any members of the network. The nodes in this peer-to-peer network provide services and consume them as reciprocity acts as a form of incentive for engagement.
Peer-to-Peer networks are distributed, resilient, and open to participating members. Bitcoin's peer-to-peer network is more than a choice of topology. Basically, it is a digital cash system and the architecture of the network is a reflection of its core characteristics. The only way to achieve a decentralized control - which is the design principle of the Bitcoin network - is by a flat, peer-to-peer consensus network.
Furthermore, the term "Bitcoin network" implies that there are several nodes that are running the peer-to-peer consensus. Besides this, there are other protocols that are adopted in mining and mobile wallets. An example of this is Stratum. These protocols are created by routing servers that can access the network via the Bitcoin peer-to-peer protocol. Then, they extend the network to other nodes running other protocols. For instance, the aforementioned Stratum server connects several Stratum mining nodes, with the use of the Stratum protocol, to the Bitcoin network. This links the Stratum protocol to the peer-to-peer protocol of Bitcoin. The extended Bitcoin network refers to the network, as a whole, including the peer-to-peer protocol, Stratum protocol, and other similar protocols that link several components of the Bitcoin system.
Note: It is also worth noting that trading bitcoin has become easier. Several websites are available to provide a safe trading platform for users.
Types of Nodes and their roles
It has been established earlier that the nodes in the Bitcoin peer-to-peer network have no hierarchy. Yet, they may take on different functions. The Bitcoin node performs different functions:
- Full Blockchain database,
- Wallet services
All nodes perform the routing function to contribute to the network. They validate and transmit transactions and blocks.
Full nodes possess a complete copy of the Bitcoin Blockchain. This type of node can verify transactions without any external interference. However, some nodes can only maintain a part of the Blockchain and can verify any transaction via the Simplified Payment Verification (SPV).
Mining nodes generate new blocks through specialized hardware that is used to solve the proof-of-work algorithm. Some of these nodes are full nodes, which implies that they maintain a complete copy of the Blockchain. Others, however, are lightweight nodes that contribute to pool mining and they depend on the pool server to maintain a full node.
Bitcoin Relay Networks
Bitcoin peer-to-peer networks exhibit network latency that is too high for the specialized needs of the mining nodes. Miners participate in a time-sensitive competition to solve the proof-of-work algorithm and while doing so, they must minimize, as much as possible, the time between the propagation of a block and the commencement of another round of competition. In mining, the delay has a direct consequence on the profit margin.
Now, the Bitcoin Relay Network is tasked with minimizing the latency between block transmission among miners. The first Relay Network was developed in 2015 to ensure fast transmission of blocks with low latency. In 2016, this was replaced with the Fast Internet Bitcoin Relay Engine (FIBRE). This is a relay network that transmits blocks within a network of nodes. It adopts the principle of compact block optimization to minimize the latency of the network and the amount of transmitted data.
Additionally, there is another relay network called the Falcon. This adopts a "cut-through-routing" to minimize latency by transmitting part of the blocks once they are obtained, instead of waiting until a block is completely received.
These relay networks are not intended to replace the Bitcoin network. Rather, they provide extra connectivity among the nodes to reduce latency.
Did you find this article helpful? Share your thoughts with friends...