The first and most known cryptocurrency, Bitcoin is an electronic payment system implemented through blockchain technology. Blockchain is a decentralized digital ledger used to record transactions that are distributed across many computers, which makes accessing or altering any of the data very difficult. The transactions are packaged into blocks through a process called mining, and those blocks are cryptographically sealed and linked to each other to form a chain.
Since blockchain is a distributed technology, all the nodes which participate in the Bitcoin network keep a copy of the ledger. When a new block is mined (generated) in the network, it will be distributed through the network. All nodes receive this block and should add it to their ledger to keep the Bitcoin ledger consistent.
Node synchronization process
“Long delays in forwarding blocks and transactions cause security vulnerabilities that affect ledger consistency,” explains Motlagh, who recently published in IEEE Transactions on Network Science and Engineering. “The node that has dynamic participation in the network is called a churn node. A churning node can join and leave the network at arbitrary times. So what we call node churn impacts the block and transaction distribution time, because when a node leaves the network frequently, it impacts the distribution power of the network.”
Moreover, when a churning node rejoins the network, it should request to download blocks missing during its absence. As a result, some of the network resources would be used for the synchronization process, which results in fewer resources for block and transaction distribution. This effect should be considered in the design of a peer-to-peer (P2P) network and in the evaluation steps to have an accurate conclusion about the network.
Markov chain for a node with dynamic participation (churning node) in the Bitcoin network.
Motlagh and her team used a Continuous Time Markov Chain (CTMC) to describe the behaviour of a node, and then applied the results to model the changes in connectivity and the impact on network performance.
“To the best of our knowledge, our model is the first contribution that provides a comprehensive analytical model for the churning process in the Bitcoin network and analyzes its impact on data distribution time,” says Motlagh.
Average synchronization time for a single node after rejoining the network
The team’s results show that networks with less than 4000 nodes are sensitive to churn, while the impact of churn on the network with more than 4000 nodes is noticeable but small enough to make a vast Bitcoin network is fairly resilient to churn. In addition, the team demonstrated that synchronization times are rather quick. In other words, when a node’s absence ranges from two to 16 hours, it needs around one minute to download missing blocks and synchronize with the rest of the network.
With blockchain technology being adopted by and adapted to many different industries—including finance, healthcare and the global food supply chain—the team’s analysis may be extended to other blockchain-based systems beyond Bitcoin.
Motlagh continues to engage in research on the impact of churn nodes on the block and transaction distribution time. “Currently, we are working on the new protocol used in the Bitcoin network called compact block protocol to provide an analytical model for it and calculate block and transaction distribution time accordingly.”
This research was funded by Jelena Mišić and Vojislav Mišić’s NSERC Discovery Grant.