# A Blockchain Network Communication Architecture Based on Information-Centric Networking
## 2 Related Works  
### Blockchain Network Communication Process  
The communication process between nodes in a blockchain network is shown in Figure 1. The blockchain nodes form a P2P network for communication, consisting of two phases: the network topology construction phase, marked by the black circle, and the message transmission phase, marked by the blue circle. The construction of the network topology mainly includes node discovery, node connection, and neighbor detection and maintenance. The different connection methods between blockchain nodes result in different network topology structures, which have different impacts on the broadcast delay and can be measured by the network connectivity and network diameter. Currently, mainstream blockchain network topologies are classified into unstructured network topologies, such as the Bitcoin network [1], and structured network topologies, such as the Kademlia network topology of Ethereum [9] and the Chord network topology of NKN [17]. In unstructured network topologies, nodes are randomly connected [18], resulting in a larger network diameter. To reduce the network diameter, the BCBPT protocol uses a proximity clustering algorithm based on network hops between nodes to connect physically close nodes [7]. However, the BCBPT algorithm has a high complexity, as each node needs to calculate the network hops to all other nodes. Compared to unstructured topologies, structured topologies have better network connectivity and can reduce bandwidth waste. However, they also have a larger network diameter, because the network latency between nodes is not considered when nodes attempt to establish connections. Swift [19] uses unsupervised learning and greedy algorithms to optimize the P2P network topology and broadcast algorithm based on a structured network. However, nodes need to perform a large amount of data processing and analysis using unsupervised learning, which introduces significant computational complexity and node overhead. In addition, creating a structured network topology for a large-scale blockchain network (e.g., Ethereum with a node count of 10k) incurs significant computational costs. As the network size grows further, these costs will increase significantly, and the network latency will also increase. Node failure detection refers to the use of a heartbeat mechanism [20] by the blockchain system to detect the existence of nodes when faults occur in the blockchain network. Here, the heartbeat mechanism refers to the keep-alive mechanism at the application layer. An application-layer heartbeat mechanism requires additional development, and users need to build a complex application logic to ensure the normal operation of the blockchain P2P network. Therefore, an application-layer heartbeat detection mechanism causes a significant amount of network bandwidth consumption, which affects the performance of the blockchain network. The process of message transmission mainly includes transaction and block broadcasting, block synchronization, and network routing. The gossip algorithm [6; 21] is a mainstream transaction and block broadcasting algorithm in blockchain networks. In a blockchain network, transactions and blocks are broadcast to neighboring nodes through an asynchronous and broadcast-based gossip algorithm. However, the multi-round broadcast of the gossip algorithm leads to a significant delay in block message broadcasting and redundant bandwidth waste. In order to accelerate blockchain broadcasting efficiency, some improved gossip broadcasting protocols [22; 23] have been proposed. Currently, Bitcoin adopts the flood algorithm [24] to broadcast data, while Ethereum adopts a gossip-based broadcasting algorithm [25]. However, these broadcasting protocols send redundant data multiple times before the end condition is reached, resulting in significant bandwidth waste. Moreover, the transmission of multiple messages in the broadcasting protocols reduces the efficiency of message broadcasting [21].