## 2 Related Works  
Opportunistic network routing has been extensively studied, and various types of data-forwarding methods have been proposed. These methods were addressed for \"storage-carry-and-forward\" data transmission, with the goal of reducing the routing overhead and improving the data delivery rate of networks. In opportunistic networks, the current opportunistic network routing algorithms can be divided into normal types and social types, according to whether social information is required in data forwarding. The normal type of data-forwarding strategy is proposed in the early stages of the opportunistic network. The common feature of this kind of routing algorithm is that they only consider the effect of node movements on data forwarding and can be applied to various application scenarios of opportunistic networks. However, the three important metrics of packet delivery ratio, transmission delay and routing overhead can only satisfy one or two kinds. The Epidemic algorithm proposed in reference [15] is a typical diffusion propagation algorithm, and its data-forwarding process is similar to the propagation process of infectious diseases. In this routing algorithm, nodes which carry information pass their data to all the nodes they meet. This algorithm has a high packet delivery ratio and small transmission delay in some scenarios, but the routing overhead ratio is large, and the algorithm's adaptability and scalability are poor. Reference [16] proposes a passive waiting algorithm called direct transmission. This algorithm is a data transmission mechanism where the source node is always waiting for its target node. The direct transmission algorithm has the lowest routing overhead ratio of the existing algorithms, but also has a very low packet delivery ratio. In reference [17], a routing algorithm based on probabilities was proposed that uses the historical contact records of nodes. The ProPHET algorithm calculates the probability of forwarding through the history of node interaction and proposes the possible path of route forwarding. This algorithm has high packet delivery ratio, but its routing overhead is also high. Reference [18] proposed a multi-copy routing algorithm, the Spray and Wait algorithm. The Spray and wait algorithm divides the forwarding process for information into two steps. In the spray process, the source node copies the information n times. It then forwards half the number of data copies stored in the node cache to the encountered nodes in each transmission process. This algorithm has lower transmission delay than the direct transmission algorithm, but it can easily cause excessive flooding and data redundancy. The social type of opportunistic network routing has been proposed in recent years. Due to the influence of human activities on the opportunistic network, the interactivity of nodes is an important factor that needs to be considered. The social type of opportunistic routing takes the social attributes of nodes into account when forwarding data. In reference [19], a labeling strategy algorithm based on community structures for data forwarding is proposed. This algorithm uses the information about the community structure in the nodes history records to label each node with information about its community. Reference [20] proposed a community-based forwarding algorithm, the Bubble Rap algorithm. According to the historical records of interactive information between nodes, we can calculate the vitality of nodes. The algorithm ranks all nodes according to their vitality level and calculates global ranking and local ranking in the community. In the forward process, the nodes transfer data to the higher ranked nodes in the global ranking, until the data is forwarded to a node in the same community where the target node is located. Then, according to the local ranking, the data is forwarded in the community until the target node receives the messages. The Bubble Rap algorithm adopts a single-copy strategy, with low packet delivery ratio and high transmission delay.