A method of flying ad hoc networking and a communication node

By employing a speed-weighted OLSR protocol in ad hoc flight networks, the relative speeds between nodes are predicted to determine link quality, suitable MPR nodes are selected, and the sending intervals of TC packets and Hello messages are adaptively adjusted. This solves the data packet loss problem caused by untimely routing table updates in ad hoc flight networks, improving network reliability and reducing packet loss rate.

CN119300116BActive Publication Date: 2025-10-24SOUTHWEAT UNIV OF SCI & TECH +2
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411574991.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-06
Publication Date
2025-10-24
Estimated Expiration
2044-11-06

AI Technical Summary

Technical Problem

In ad hoc networks, due to the high speed of node movement, the existing OLSR protocol causes the routing table to be updated in a timely manner, resulting in data packet loss.

Method used

The speed-weighted OLSR protocol (SW-OLSR) is adopted to determine link quality by predicting the relative speed between nodes, select appropriate MPR nodes, and adaptively adjust the sending interval of TC packets and Hello messages to improve network reliability and reduce packet loss rate.

Benefits of technology

It effectively reduced packet loss due to link interruption, improved data forwarding success rate, and reduced network overhead.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119300116B_ABST
    Figure CN119300116B_ABST
Patent Text Reader

Abstract

The application discloses a kind of flying ad hoc network method and communication node, suitable for airplane automatic network formation. The method includes: the first node determines the relative speed between the first node and at least one adjacent node at the second time at the first time, obtains at least one relative speed, wherein the second time is later than the first time;Determine the link quality between the first node and at least one adjacent node according to at least one relative speed, obtain at least one link quality;Determine MPR set according to at least one link quality, and send TC packet through the MPR node in MPR set;According to the topology information of TC packet forwarding, update local networking topology table and routing table. Through the method, the node and the adjacent node link can be reduced as much as possible in the case of being disconnected, and data transmission is still carried out, thereby reducing the packet loss rate and network overhead.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of self-organizing network routing technology, and particularly relates to a flying self-organizing network method and a communication node. BACKGROUND

[0002] A self-organizing network can be implemented based on an optimized link state routing (OLSR) protocol. In the process of implementing the self-organizing network based on the OLSR protocol, a routing table is established according to a shortest path. However, in a flying self-organizing network, nodes have a large moving speed, and a problem of untimely updating of the routing table may occur, thereby causing data packet loss. Therefore, a speed weighted OLSR (SW-OLSR) protocol is proposed.

[0003] The SW-OLSR protocol refers to introducing speed weighting into link quality, and determining a best routing path based on the link quality obtained based on the speed weighting, including two processes of link quality calculation and routing decision. The link quality calculation needs a certain time, and a case that a node and a neighbor node link has been disconnected but still transmits data may occur, thereby finally causing packet loss. SUMMARY

[0004] The flying self-organizing network method and the communication node provided in the present application can reduce network overhead of routing decision and effectively reduce a probability of packet loss caused by link interruption.

[0005] In a first aspect, a flying self-organizing network method is provided. An execution subject of the method is a flying device (for example, a drone) or a device capable of realizing a flying function. The method includes: determining, by a first node at a first time, relative speeds between the first node and at least one adjacent node at a second time, obtaining at least one relative speed, wherein the second time is later than the first time; determining link qualities between the first node and the at least one adjacent node according to the at least one relative speed, obtaining at least one link quality; determining a multipoint relay (MPR) set according to the at least one link quality, and broadcasting a topology control (TC) packet through an MPR node in the MPR set; and updating a local networking topology table and a routing table according to topology information forwarded by the TC packet.

[0006] This method predicts the relative speed between a first node and an adjacent node at a next moment (e.g., a second moment) at a current moment (e.g., a first time). The link quality between the first and adjacent nodes is determined based on the predicted relative speed. This method is suitable for rapidly changing networks. Compared to calculating link quality based on a weighted calculation of the node's current speed, determining link quality based on the predicted relative speed increases the useful life of the link quality, thereby minimizing the selection of routing paths with broken links and, consequently, reducing packet loss.

[0007] In a possible implementation, determining the MPR set based on at least one link quality also includes: determining the MPR set based on the distance between at least one adjacent node and the first node at the second time, wherein the at least one adjacent node includes a first adjacent node, and if the first adjacent node is within the communication distance range of the first node at the second time, the first adjacent node can be selected as the MPR node.

[0008] In this method, when determining the MPR set, in addition to considering the predicted relative speed between nodes to calculate the link quality, the distance between the nodes is also considered. In this way, the link quality between the nodes in the MPR set can be guaranteed to be good as much as possible, thereby enhancing the reliability of the network and further improving the success rate of data forwarding. In a possible implementation, determining the MPR set based on at least one link quality also includes: determining a multi-node relay MPR set based on the reachability of at least one adjacent node, wherein the adjacent node with the highest node reachability among at least one adjacent node is used as a node in the MPR set. The at least one adjacent node includes a first adjacent node, and the reachability of the first adjacent node is used to indicate the number of two-hop nodes that the first node can cover through the first adjacent node.

[0009] In this method, suitable MPR nodes are also determined according to the node reachability, which can minimize the number of flooding times and reduce the network overhead of determining the MPR nodes.

[0010] In a possible implementation, the link quality RETX between the first node and the first adjacent node i,j Reachability to the first adjacent node j Satisfy between:

[0011]

[0012] Where ε is RETX i,j The weighting factor of Re j The weighting factor of , and ε+γ=1; represents the distance between node i and node j at the next moment, R represents the communication distance of the nodes; N w Represents the probability of a node being selected as an MPR node.

[0013] In a possible implementation, the method further includes: sending the first TC packet according to a first time interval; and sending the second TC packet according to a second time interval, wherein, in the first time interval, the number of nodes in the MPR set that change is greater than a first threshold, and the second time interval is different from the first time interval; or, in the first time interval, the number of nodes in the MPR set that change is less than or equal to the first threshold, and the second time interval is the same as the first time interval.

[0014] In the method, the interval of sending the TC packet can be adaptively adjusted according to the degree of change of the nodes in the MPR set. For example, if the link changes greatly, the sending interval is short; if the link changes slightly, the sending interval is long. In this way, the network topology can be forwarded through the TC packet as timely as possible, and the data packet loss rate is reduced.

[0015] In a possible implementation, in the first time interval, the number of nodes in the MPR set that change is greater than the first threshold, and the second time interval is a sum of the first time interval and a second offset, and the second offset is less than 0.

[0016] In a possible implementation, the first time interval is a set minimum time interval, and if the number of nodes in the MPR set that change in the first time interval is 0, the second time interval is a sum of the first time interval and a third offset, and the third offset is greater than 0.

[0017] In a possible implementation, the method further includes: determining a link change degree in a first time length, determining a first offset of sending the Hello message according to the link change degree, and sending the Hello message when a first time arrives. The link change degree is used to indicate the degree of change of the link state. The Hello message is used for the detection of the link awareness and the neighbor nodes in the network. The first time is a sum of the sending period of the Hello message and the first offset.

[0018] In the method, the sending interval of the Hello message can be adjusted according to the degree of change of the link. If the link changes greatly, the sending interval is short; if the link changes slightly, the sending interval is long. Compared with sending the Hello message according to a fixed period, the link can be sensed more timely or the neighbor nodes cannot be detected timely, so that the network topology can be forwarded through the TC packet in time, and the data packet loss rate is reduced. In addition, the sending of unnecessary Hello messages can be reduced, the network resource overhead is reduced, and the network throughput is improved.

[0019] In a possible implementation, the routing table includes a first path, and the first path is a path with the longest link retention time among paths from the first node to all reachable nodes, and the link retention time is a time during which two nodes remain connected.

[0020] In the method, the path with the longest link maintenance time in the paths from the first node to all reachable nodes can be regarded as the optimal path, and the data packet loss rate can be reduced.

[0021] In a second aspect, a communication system is provided, which includes a plurality of nodes including a first node. The first node is configured to: determine relative speeds between the first node and at least one neighboring node at a second time respectively, obtain at least one relative speed, the second time being later than the first time; determine link qualities between the first node and the at least one neighboring node according to the at least one relative speed, obtain at least one link quality; determine an MPR set according to the at least one link quality, and send a TC packet through a first relay node in the MPR set; and update a local networking topology table and a routing table according to topology information of TC packet forwarding.

[0022] In a third aspect, an electronic device is provided, which includes functional modules for performing the method of the first aspect. For example, the communication device includes a processing unit (sometimes also referred to as a processing module or a processor) and / or a transceiving unit (sometimes also referred to as a transceiving module or a transceiver). These units (modules) can perform the corresponding functions in the method examples of the first aspect described above, and specific reference is made to the detailed description in the method examples, which will not be repeated here.

[0023] Optionally, the communication device further includes a memory. The memory is configured to store computer programs or instructions or data. The processing unit is coupled to the memory and the transceiving unit, and when the processing unit reads the computer programs or instructions or data, the communication device performs the method performed by the receiver in the method embodiments described above.

[0024] In a fourth aspect, the present application provides a computer readable storage medium, which stores a computer program. When the computer program is executed, the method in the first aspect is implemented.

[0025] In a fifth aspect, a computer program product is provided, which includes computer program code. When the computer program code is executed, the method in the first aspect is performed. BRIEF DESCRIPTION OF DRAWINGS

[0026] Figure 1 Architecture diagram of a communication system applicable to embodiments of the present application;

[0027] Figure 2 Flowchart of an OLSR protocol-based ad hoc network;

[0028] Figure 3 Process diagram for implementing link awareness based on a HELLO packet;

[0029] Figure 4 A flowchart of a flying ad hoc network provided by an embodiment of the present application;

[0030] Figure 5 A flowchart of MPR set selection provided by an embodiment of the present application;

[0031] Figure 6 A flowchart of Hello message adaptive sending interval provided by an embodiment of the present application;

[0032] Figures 7A-7F Several formats involved in OLSR protocol provided by an embodiment of the present application.

[0033] Figure 8 A flowchart of optimized routing provided by an embodiment of the present application;

[0034] Figure 9 A structure diagram of a communication node provided by an embodiment of the present application. DETAILED DESCRIPTION

[0035] The technical solution provided by the embodiments of the present application can be applied to a flying ad hoc network. The flying ad hoc network refers to a self-organizing network composed of multiple aircrafts, and the aircrafts can exchange information through a wireless communication protocol.

[0036] For reference Figure 1 An exemplary architecture diagram of a communication system to which the embodiments of the present application are applicable can include multiple aircrafts and base stations. Optionally, the base stations can be ground base stations or satellite base stations, Figure 1 Taking the base stations as an example, the base stations include ground base stations and satellite base stations. The aircrafts can be unmanned aerial vehicles Figure 1 For example), or other devices that can have the functions of flying and communicating. The multiple aircrafts can form a network, and each aircraft can be a communication node in the network. The aircrafts can communicate with each other, or one aircraft can communicate with other aircrafts through another aircraft. In other words, the aircrafts in the network can act as relays. The communication between a source node and a target node can be achieved through one or more aircrafts. For example, a ground base station or a satellite base station can communicate with a certain aircraft to send information to any aircraft in the network, or receive information sent by any aircraft.

[0037] It should be noted that Figure 1 This is only an example, and the embodiments of the present application do not limit the types and quantities of the aircrafts included in the communication system, and do not limit the types and quantities of the devices included in the communication system. For example, the communication system can also include terminal devices and the like.

[0038] To facilitate understanding of the schemes provided by the embodiments of the present application, first, some concepts involved in the embodiments of the present application are introduced.

[0039] (1) TC packet

[0040] The TC packet is a grouping manner of an optimized link state routing (OLSR) routing protocol, and is used for node to establish a topology. For example, in an ad hoc network, the TC packet is used to group communication nodes according to different traffic characteristics, and through the TC packet, selection and update of an MPR can be performed to adjust the connection relationship between nodes in the network. Generally, the OLSR routing protocol selects an MPR set by a method of maximizing node connectivity, and the MPR nodes in the MPR set forward the TC packet to realize sharing of network topology.

[0041] (2) HELLO packet

[0042] The HELLO packet refers to a message used for communication between nodes, and is commonly used in routing protocols and ad hoc networks. The HELLO packet is a control message used for discovery and maintenance of neighbor nodes in the network. Alternatively, the HELLO message is used for link sensing and detection of neighbor nodes, and nodes can establish their own local connection library and neighbor information library by exchanging the HELLO message. How the HELLO message is used to realize link sensing and detection of neighbor nodes will be introduced below, and will not be introduced herein.

[0043] (3) OLSR routing protocol

[0044] The OLSR protocol performs link sensing and detection of neighbor nodes based on the HELLO packet, and performs selection and update of MPR nodes based on the TC packet, so as to realize sharing of network topology information and maintenance of routing of the protocol.

[0045] Please refer to Figure 2 , a flow of an ad hoc network based on the OLSR protocol is shown. As shown in Figure 2 , the running process of the OLSR routing protocol mainly includes a link sensing and detection of neighbor nodes process, an MPR selection process, a TC packet processing process, and a routing table establishment and maintenance process, which are introduced in turn as follows.

[0046] (3-1) Link sensing and detection of neighbor nodes

[0047] A unidirectional link cannot transmit information, and therefore, the link between two nodes that can transmit information must be symmetric. However, due to the uncertainty of wireless propagation, the link between a certain or certain neighbor nodes can be considered as unidirectional, and therefore, link sensing is needed to ensure that the link between two nodes that can transmit information is symmetric.

[0048] In an implementation, link awareness can be achieved through periodic exchange of HELLO messages. Upon receiving a HELLO message, any node updates its local link information table and neighbor information base according to the link state and node type in the HELLO message.

[0049] For example, see Figure 3 , which shows the process of link awareness. Figure 3 Take the exchange of HELLO messages between node A and node B as an example. Node A sends a HELLO message to node B. Upon receiving the HELLO message from node A, node B puts node A into the neighbor set / neighbor table and marks the state of node A as asymmetric. Node B then sends a HELLO message to node A. Upon receiving the HELLO message from node B, node A puts node B into the neighbor set / neighbor table and marks the state of node B as asymmetric. Finally, node A sends a HELLO message to node B again. Upon receiving the HELLO message from node A, node B updates the link state between node A to symmetric, and thus node A and node B confirm the link between each other.

[0050] Upon detection by a neighbor node, any node can obtain a one-hop neighbor table of the node, and the information of the node contained in the one-hop neighbor table is the information of the one-hop neighbor node of the node.

[0051] (3-2) MPR selection

[0052] Upon detection by a neighbor node, each node can obtain the information of the one-hop neighbor node in the one-hop neighbor table. Take Figure 3 , for example. After node A and node B are identified as symmetric links, node A sends a HELLO message to all one-hop neighbor nodes other than node B, and thus obtains the information of the two-hop neighbor nodes of node B, i.e., a two-hop neighbor table. Based on the one-hop neighbor table and the two-hop neighbor table, the MPR set can be calculated.

[0053] To calculate the MPR set, the reachability of a node needs to be obtained. Take node i as an example. The reachability of node i is the number of two-hop neighbor nodes that node i can reach through its one-hop neighbor node j. When calculating the MPR set, the reachability of each node is calculated until all two-hop nodes are covered. The node with the highest reachability is selected from the one-hop neighbor nodes as an MPR node, and the MPR set is obtained.

[0054] (3) TC packet processing

[0055] The MPR node can forward the TC packet. After the MPR node forwards the TC packet, the node receiving the TC packet updates the topology information table in the node, and thus the network topology is updated.

[0056] (4) Routing table establishment and maintenance

[0057] Each node in the OLSR protocol needs to calculate and maintain a routing table for information forwarding. Among them, each node establishes a routing table based on the shortest path according to the information stored in the local link information base and the topology information table. Figure 2 The various table entries in include the local link information base and the topology information table. Since the routing table is established based on the information in the local link information base and the topology information table, when the topology in the network changes, such as link breakage, topology change, link expiration, etc., the content of the local link information base or the topology information table of the node will also change accordingly, which will automatically trigger the node to recalculate the routing table.

[0058] As described above, an ad hoc network can be implemented based on the OLSR protocol. In the process of the ad hoc network based on the OLSR protocol, the routing table is established according to the shortest path, but in the flight ad hoc network, the node moves at a high speed, which may cause the problem of not timely updating the routing table, and further cause data packet loss. Therefore, a speed weighted OLSR (SW-OLSR) protocol is proposed

[0059] The SW-OLSR protocol refers to introducing speed weighting based on link quality, and determining the best routing path based on the link quality obtained by speed weighting, including two processes of link quality calculation and routing decision.

[0060] (1) Link quality calculation

[0061] The link quality between nodes can be represented by the expected transmission count (ETX). ETX can also be considered as the expected transmission number of a data packet from a source node to a destination node. For example, the link quality between nodes i and j can satisfy formula (2-1):

[0062]

[0063] Wherein, R is the number of routes contained in a routing path. It should be understood that there can be multiple routing paths between nodes, and the link quality of each routing path can be calculated according to formula (2-1). Wherein, r f (n) is the probability of successful reception of a data packet after n hops, also known as the forwarding reception ratio; r r (n) is the probability of successful reception of a data packet, also known as the reverse reception ratio.

[0064] The forwarding reception ratio can be estimated by the Hello message, for example, the one-hop forwarding reception ratio satisfies formula (2-2):

[0065]

[0066] in,

[0067] In formula (2-2), α is a weight parameter determined by the accuracy of the link quality estimate and the response speed. The calculation method for the reverse reception ratio is similar to that for the forward reception ratio and will not be repeated here.

[0068] Because calculating the forward-receive ratio takes time, it's possible for a node to continue transmitting data even when the link with its neighbor is disconnected, ultimately leading to packet loss. Therefore, we propose a speed-weighted approach to calculating link quality, as shown in Formula (2-4).

[0069]

[0070] in, It represents the relative speed between node i and node j, β represents the weight of speed weighting, and the value of β determines the proportion of speed factor in EXT.

[0071] (2) Routing Decision

[0072] When making routing decisions, the forwarding reception ratio r f (n), reverse reception ratio r r (n), speed-weighted The node's 3D coordinates are added to a Hello message (also called a new Hello message) and a TC message (also called a new TC message). The new Hello message and TC message are then sent. MPR nodes exchange new TC messages to share network topology. After receiving each new Hello message, the velocity-weighted EXT is calculated and the location information in the neighbor table is updated.

[0073] When making routing decisions, selecting the path with the smallest EXT value for forwarding can effectively improve routing performance. It should be understood that a smaller EXT requires a larger forward acceptance ratio and reverse acceptance ratio, which results in a smaller numerator after speed weighting. A smaller speed weighting indicates a smaller relative speed. A negative relative speed indicates that nodes are close together. Therefore, routing decisions tend to select closely spaced paths for storage in the routing table, improving data forwarding success rates.

[0074] However, the speed-weighted link quality calculation in the SW-OLSR routing protocol takes time, which can cause packets to be transmitted along a path with a broken link, leading to packet loss. Furthermore, formula (2-4) cannot accurately determine whether two nodes are close to each other.

[0075] Therefore, the technical scheme provided by the embodiments of the present application is provided. In the embodiments of the present application, the link quality between nodes is calculated according to the predicted relative speed and weighted based on the link quality between the speed prediction nodes, the calculation time for determining the MRP set can be saved, so as to reduce the packet loss caused by link interruption in the calculation time as much as possible. In addition, the appropriate MRP node can also be determined based on the distance between nodes to ensure that the determined link quality between nodes is the better link quality as much as possible. The appropriate MRP node can also be determined based on the reachability of the node to reduce the number of flooding as much as possible and reduce the network overhead for determining the MRP node.

[0076] The technical scheme provided by the embodiments of the present application will be described in detail below with reference to the drawings.

[0077] Please refer to Figure 4 The flowchart of the method for the flying ad hoc network provided by the embodiments of the present application is shown. The method can be applied to a system composed of multiple aircrafts, and each aircraft can be regarded as a communication node. The method can be executed by any communication node, and for the convenience of description, the method is taken as an example executed by the first node. Specifically, the flow of the method for the flying ad hoc network provided by the embodiments of the present application is described as follows:

[0078] S401, determining the relative speed between the first node and at least one adjacent node at a second time from the first node at a first time, obtaining at least one relative speed, the second time is later than the first time.

[0079] The first time can be regarded as the current time, and the second time can be regarded as a time after the first time. The interval between the first time and the second time is not limited in the embodiments of the present application. Before networking, the first node can select other appropriate nodes. Specifically, the first node can predict the relative speed between other nodes and the first node at the second time, and determine the appropriate nodes for networking based on the relative speed between nodes. For example, the first node determines the relative speed between the first node and at least one adjacent node at a second time from the first node at a first time, obtaining at least one relative speed.

[0080] It should be understood that the height change of the unmanned aerial vehicle when doing the task is very small, so the following prediction does not consider the influence of the height change, that is, the position prediction in the two-dimensional plane. The Kalman filtering algorithm is used to predict the mobility of the adjacent node at the next time, and the actual mobility and the predicted mobility of the node at the n time are represented as X(n) and X(n|n-1) respectively. The Kalman filtering prediction process is regarded as a discrete time state space model, wherein S(n) is a multi-dimensional vector, satisfying formula (3.1), p, v and a represent the position, speed and acceleration respectively, and x and y represent the x direction and y direction in the two-dimensional plane.

[0081] S(n) = [p x , py x y x y T (3.1)

[0082] The state equation and vector corresponding to formula (3.1) satisfy formula (3.2), wherein A is a state transition matrix, and w(n) represents system noise, which is generally a 0-mean Gaussian white noise. It is assumed that a prediction vector is represented as formula (3.3).

[0083] S(n+1)=A·S(n)+w(n)(3.2)

[0084]

[0085] An observation vector can be represented as formula (3.4), wherein H is a transition matrix, and u(n) is a measurement Gaussian white noise with a mean of 0. Further, the observation vector can be represented as formula (3.5).

[0086] X(n)=H·S(n)+u(n)(3.4)

[0087]

[0088] Without considering the influence of the system on the estimated value, the prior estimated value can be predicted according to the state equation As formula (3.6), wherein, represents a prediction estimated value at the current n time.

[0089]

[0090] The covariance matrix of the prior estimated value satisfies formula (3.7), P(n) is a covariance matrix of the last time, and Q is a covariance matrix of the system noise w(n), which is known to the system.

[0091] P(n+1|n)=AP(n)A T +Q(3.7)

[0092] The prior estimated value can be directly calculated, and after the prior estimated value is obtained, the Kalman gain can be updated to obtain formula (3.8), wherein R is a covariance matrix of u(n).

[0093] K(n+1)=P(n+1|n)·H T ·(H·P(n+1|n)·H T +R) -1 (3.8)

[0094] ​​​​​After obtaining K(n+1), the prior estimate can be corrected to obtain the posterior estimate, and the posterior estimate is the optimal estimate value, satisfying formula (3.9).

[0095]

[0096] The covariance matrix of the posterior estimate satisfies formula (3.10):

[0097] P(n+1)=P(n+1|n)-K(n+1)·H·P(n+1|n)(3.10)

[0098] In the actual task process, the speed of the unmanned aerial vehicle can be regarded as uniform acceleration motion, and therefore the state transition matrix can satisfy formula (3.11).

[0099]

[0100] Suppose that the GPS positioning vector received by the sensor satisfies formula (3.5), the conversion matrix H can be obtained as follows:

[0101]

[0102] In the specific implementation process, the speed information of a node at the next time can be calculated by using Kalman filtering, and the speed information of all one-hop nodes at the next time can be obtained through HELLO packet broadcasting, so that the relative speed between two adjacent nodes at the next time can be calculated.

[0103] In this way, the first node can determine / predict the relative speed between the first node and at least one adjacent node at the second time at the first time, and obtain at least one relative speed.

[0104] S402, determine the link quality between the first node and at least one adjacent node according to at least one relative speed, and obtain at least one link quality.

[0105] In the embodiment of the present application, the link quality between nodes can be calculated by weighting according to the predicted relative speed, so as to reduce the time delay of calculating the link quality, thereby reducing the data packet loss rate. For example, the link quality between node i and node j can be calculated according to formula (3.13).

[0106]

[0107] wherein, indicates the relative speed at the next time.

[0108] It should be understood that the smaller the ETX, the better the link quality, and the closer the nodes, the better the link quality. Therefore, when calculating the link quality between nodes, the distance between nodes (or whether the nodes are close) can also be considered, for example, determining the MPR set according to at least one link quality further comprises: determining the MPR set according to distances between at least one adjacent node and the first node at the second time, respectively, wherein the at least one adjacent node includes a first adjacent node, and the first adjacent node can be selected as an MPR node if the first adjacent node is within the communication distance range of the first node at the second time.

[0109] Since the change trend of RETX cannot represent whether the nodes are close to each other at the next moment. Therefore, the link quality between nodes can be further calculated according to formula (3.14).

[0110]

[0111]

[0112] As can be seen from formula (3.14) and formula (3.15), the link quality is better if the two nodes are close to each other.

[0113] S403, determining the MPR set according to at least one link quality.

[0114] The first node can determine the MPR set according to the obtained at least one link quality. Further, the appropriate MPR node can also be determined according to the reachability of the node, which can minimize the number of flooding and reduce the network overhead of determining the MPR node. Wherein, the reachability is used to represent the number of two-hop nodes that can be covered through the neighbor node j, which can be represented as Re j , which represents the reachability of the neighbor node j. For example, when determining the MPR set according to at least one link quality, the multi-node relay MPR set is also determined according to the reachability of at least one adjacent node, wherein the adjacent node with the highest reachability among the at least one adjacent node is used as one node in the MPR set. Wherein, the at least one adjacent node includes a first adjacent node, and the reachability of the first adjacent node is used to indicate the number of two-hop nodes that can be covered by the first node through the first adjacent node.

[0115] Specifically, the link quality based on speed prediction is calculated by weighting the reachability. Since the change trend of RETX i,j is opposite to Re j , the reciprocal of the link quality is processed to obtain formula (3.16).

[0116]

[0117] Wherein, ε, γ represent weighting factors, satisfying ε+γ=1, the weight can be adjusted according to actual task requirements. represents the distance between two nodes at next time, R represents the communication distance of the unmanned aerial vehicle. If the unmanned aerial vehicle node j is still within the communication range of node i at next time, j can be selected as an MPR node; if the unmanned aerial vehicle j is not within the communication range of i at next time, j must not be selected as an MPR node. N w The greater the value is, the more likely the node is to be selected as an MPR node, so that the determined MPR set is more stable, and the network overhead caused by frequent MPR calculation can be reduced.

[0118] In the specific implementation process, the specific selection process of the MPR set is as shown in Figure 5 As shown in Figure 5 , first, the depth of the one-hop neighbor node can be calculated, and the two-hop neighbor nodes are judged to determine whether there is a one-hop neighbor node having a unique path with the two-hop neighbor node. If there is a one-hop neighbor node having a unique path with the two-hop neighbor node, the node is added to the quasi-MPR set, and the nodes covered in the two-hop neighbor set are removed; and it is judged whether the quasi-MPR set covers all two-hop neighbor tables; if the quasi-MPR set covers all two-hop neighbor tables, the quasi-MPR set is the final MPR set, and the MPR set selection is completed. If the quasi-MPR set cannot cover all two-hop neighbor tables, or if there is no one-hop neighbor node having a unique path with the two-hop neighbor node, the N w of each node in the remaining one-hop neighbor node is calculated. The largest node in the one-hop neighbor set is added to the quasi-MPR set, and it is judged whether the quasi-MPR set covers all two-hop neighbor tables; if the quasi-MPR set covers all two-hop neighbor tables, the quasi-MPR set is the final MPR set, and the MPR set selection is completed. If the quasi-MPR set cannot cover all two-hop neighbor tables, the largest node in the one-hop neighbor set is continuously added to the quasi-MPR set, and it is judged whether the quasi-MPR set covers all two-hop neighbor tables, until the MPR set selection is completed.

[0119] S404, sending the TC packet through the first relay node in the MPR set.

[0120] After the first node determines the MPR set, the TC packet can be sent through the nodes in the MPR set to forward the network topology. For example, the first node sends the TC packet through the first relay node in the MPR set.

[0121] If the nodes transmit the TC packet in a fixed period, the TC packet forwarding network topology and the routing table updating will not be timely due to the high node moving speed in the flying ad hoc network, and thus a high data packet loss rate is caused. Therefore, the interval of transmitting the TC packet can be adaptively adjusted according to the degree of change of the nodes in the MPR. For example, the first node transmits the first TC packet according to the first time interval and transmits the second TC packet according to the second time interval. In the first time interval, the number of changed nodes in the MPR is greater than the first threshold, and the second time interval is different from the first time interval. Or, in the first time interval, the number of changed nodes in the MPR is less than or equal to the first threshold, and the second time interval is the same as the first time interval. That is, if the link changes greatly, the transmission interval is short; if the link changes little, the transmission interval is long. In this way, the TC packet forwarding network topology information can be transmitted in time as much as possible, and the data packet loss rate is reduced.

[0122] In the first time interval, the number of changed nodes in the MPR is greater than the first threshold, and the second time interval is the sum of the first time interval and the second offset, and the second offset is less than 0. That is, when the link changes greatly, the transmission interval is shortened. If the first time interval is the set minimum time interval, and if the number of changed nodes in the MPR in the first time interval is 0, the second time interval is the sum of the first time interval and the third offset, and the third offset is greater than 0. That is, when the link changes little or even not, the transmission interval is increased.

[0123] Specifically, the number of nodes in the MPR can be monitored, and a range of the TC packet time interval is set. It is assumed that the current time interval of transmitting the TC packet is TC_H L , and the next time interval of transmitting the TC packet is TC_H, which satisfies formula (3.23).

[0124]

[0125] TC_H is in the range of [H min ,H max ]. At the beginning, the TC packet time interval is set to the minimum value H min , and the change of the MPR nodes is monitored in the time interval. If the MPR nodes do not change in the time interval, the transmission time interval is increased by 1, and the maximum value cannot exceed H max . When the changed nodes are less than or equal to two, it is indicated that the network topology has changed, but the change is not drastic, and the TC packet can continue to be transmitted in the time interval. When the changed nodes are more than two, it is indicated that the network topology changes drastically, and the transmission time interval needs to be appropriately reduced, so that the current time interval is reduced by 1.

[0126] In addition, if the node sends the Hello message according to a fixed period, the network topology update is not timely, and the route table is not timely updated, and the packet loss rate is high. Therefore, in the embodiment of the application, the node can adjust the sending interval of the Hello message according to the degree of link change. If the link change is large, the sending interval is short; if the link change is small, the sending interval is long. Compared with sending the Hello message according to a fixed period, the link can be sensed in time or the neighbor node cannot be detected in time, so that the TC packet timely forwards the network topology, and the data packet loss rate is reduced. Alternatively, the sending of unnecessary Hello messages can be reduced, the network resource overhead is reduced, and the network throughput is improved. In addition, the time interval of the TC packet can be adjusted according to the number of changes of the MPR central node, so that the TC packet timely forwards the network topology information, and the data packet loss rate is reduced.

[0127] For example, the first node determines the link change degree within the first time length, determines the first offset of sending the Hello message according to the link change degree, and sends the Hello message at the first time. The link change degree is used to indicate the degree of change of the link state. The Hello message is used for link sensing and neighbor node detection in the network. The first time is the sum of the sending period of the Hello message and the first offset.

[0128] Specifically, the link change degree within a sending interval can be defined as LCC, and LCC represents the number of link changes within a sending interval. The link change degree is closely related to the link state change, and the change value of LCC is the number of HELLO packets sent according to the link state change. Taking three link states including a bidirectional symmetric link (L_SYM_time), a unidirectional symmetric link (L_ASYM_time), and a failed link (L_time) as an example, the link state can have four changes, and the corresponding LCC change value also has four

[0129] ①When a new neighbor node is added to the local link information table, LCC increases by 3, and the number of added neighbor nodes is L1;

[0130] ②When the link state in the local link information table changes from ASYM_time to SYM_time, LCC increases by 1, and the number of links that appear the state change is L2;

[0131] ③When the link state in the local link information table changes from SYM_time to ASYM_time, LCC increases by 2, and the number of links that appear the state change is L3;

[0132] ④When a link in the local link information table is deleted or identified as LOST_LINK, LCC increases by 0.

[0133] The link change degree can satisfy formula (3.20):

[0134] LCC = 3L1 + L2 + 2L3 (3.20)

[0135] The current link state change is related to the link state change at the previous time, and the link state change needs to be sent at most three times HELLO packet, so the link change degree in three time intervals is weighted average, and the weighted factor is given according to the degree of influence on the current link change degree, and the weighted average link change degree is represented by WLCC.

[0136] WLCC = 0.5LCC1 + 0.3LCC2 + 0.2LCC3 (3.21)

[0137] Suppose the given sending HELLO packet time period HELLO_INTERVAL is 2s, then the HELLO packet time interval satisfies formula (3.22), wherein ΔH represents the sending time interval increment (i.e. the first offset mentioned above), the specific value can be determined according to the actual network situation.

[0138]

[0139] Formula (3.22) divides WLCC into three intervals, when WLCC is less than 1, it indicates that the current network topology change is small, and it is in a stable state, so an increment is added to the sending interval period; when WLCC is in the interval [1, 2], the network is in a normal state, so the time interval is increased or decreased according to the WLCC on the basis of the sending interval; when WLCC is greater than 2, it indicates that the network change is relatively severe, and an increment is reduced on the basis of the sending interval period.

[0140] Specifically, the flow of hello message adaptive sending interval is as shown in Figure 6 . Start can initialize LCC and H hello , update the value of LCC, judge whether it is the first time to calculate H hello . If it is the first time to calculate H hello , the value of H hello is set to HELLO_INTERVAL. If it is not the first time to calculate H hello , calculate LCC, calculate the value of H hello according to LCC. Obtain the value of H hello , judge whether the protocol is ended, if not, update the protocol sending LEEOO packet interval to H hello .

[0141] It should be understood that the establishment and updating of the local link information base, the one-hop neighbor node table, the two-hop neighbor node table, the topology information table, and the routing table are all achieved through broadcasting the Hello message and the TC packet, and the first node can adaptively update the local networking topology table and the routing table.

[0142] In the embodiments of the present application, during the routing calculation, the link holding time (i.e. the time for two nodes to keep connection) can be considered, so as to monitor the link holding time in real time, and the routing path with long link holding time can be selected to be stored in the routing table, thereby effectively reducing the packet loss caused by link breakage in the transmission process. For example, it can be judged whether there are multiple paths with the same hop count in the routing table; if there are no multiple paths with the same hop count, the path with the least hop count is selected as the transmission path from the source node to the destination node; if there are multiple paths with the same hop count, the path with the longest link duration is selected as the transmission path from the source node to the destination node. Taking the routing table including a first path as an example, the first path can be the path with the longest link holding time among the paths from the first node to all reachable nodes.

[0143] In the specific implementation process, the link holding time can be defined as LET (Link Expiration Time). Assuming that two adjacent nodes move at a constant speed in a straight line, the LET can be estimated by relative motion. For example, the LET satisfies formula (3.17)

[0144]

[0145] wherein,

[0146]

[0147] When there are multiple paths from the source node to the destination node, and there is only one path with the shortest hop count, the path with the shortest hop count is selected; when there are multiple paths with the shortest hop count from the source node to the destination node, the path with the longest link holding time is selected, until the paths to all reachable nodes and the link holding time are stored in the routing table.

[0148] As described above, the OLSR protocol needs to be modified, for example, the following five information table formats need to be adaptively modified.

[0149] (1) Modify the HELLO packet table format

[0150] The current position of the node, the predicted position at the next time, the current speed, the predicted speed at the next time, RETX, and LTE are added on the basis of the original. The modified HELLO packet format is shown in Figure 7A .

[0151] (2) Modify the local link information table

[0152] The local link information table adds RETX and LTE to the original field. The modified local link table is shown in Figure 7B .

[0153] (3) Modify the neighbor table

[0154] Add RETX and LTE values to the one-hop neighbor table and the two-hop neighbor table. The modified one-hop neighbor table is shown in Figure 7C , and the modified two-hop neighbor table is shown in Figure 7D .

[0155] (4) Modify the TC packet table format

[0156] Add RETX of each node in the TC packet. The modified TC packet table format is shown in Figure 7E .

[0157] (5) Modify the routing table format

[0158] Add a R_keeping_time field in the routing table, which represents the route keeping time. The modified routing table format is shown in Figure 7F .

[0159] S405, update the local networking topology table and the routing table according to the topology information transferred by the TC packet.

[0160] It should be understood that the establishment and update of the local link information library, the one-hop neighbor node table, the two-hop neighbor node table, the topology information table, and the routing table are all achieved through the broadcast of the HELLO packet and the TC packet. Therefore, the first node can update the local networking topology table and the routing table according to the topology information transferred by the TC packet.

[0161] Specifically, the flow of optimizing the route is shown in Figure 8 . First, empty the routing table, add the one-hop neighbor node to the routing table, and determine whether there is an unprocessed two-hop node. If there is an unprocessed two-hop node, determine whether there are multiple paths with the same number of hops; if there are multiple paths with the same number of hops, select the path with the longest link duration; if there are not multiple paths with the same number of hops, select the path.

[0162] If there is no unprocessed two-hop node, determine whether there is a previous hop entry to the destination address, and determine whether there is an unscanned entry. If there is a previous hop entry to the destination address, determine whether there are multiple previous hop entries to the destination address; if there are multiple previous hop entries to the destination address, determine whether there are multiple paths with the same number of hops; if there are multiple paths with the same number of hops, select the path with the longest link duration; if there are not multiple paths with the same number of hops, select the path with the shortest number of hops. If there are not multiple previous hop entries to the destination address, select the path.

[0163] If there is no previous hop entry reaching the destination address or there is an unscanned entry, it is determined whether the destination address exists in the routing table, and if so, it is determined whether the link holding time is updated. If the link holding time is not updated, the entry is removed from the to-be-scanned entry. If the link holding time is updated, the routing table is updated.

[0164] The device used to implement the above method in the embodiments of the present application will be described below with reference to the accompanying drawings. Therefore, the content in the foregoing can be used in the subsequent embodiments, and the repeated content will not be described again.

[0165] Please refer to Figure 9 The embodiments of the present application also provide an aircraft for implementing the functions of the above-mentioned method embodiments. The aircraft at least includes a transceiver module 910 and a processing module 920.

[0166] The processing module 920 is configured to determine relative speeds between the first node and at least one neighboring node at a second time respectively, obtain at least one relative speed, wherein the second time is later than the first time; determine link qualities between the first node and the at least one neighboring node according to the at least one relative speed, obtain at least one link quality; determine a multi point relay (MPR) set according to the at least one link quality, and send a topology control (TC) packet through a first relay node in the MPR set; and update a local networking topology table and a routing table according to topology information forwarded by the TC packet.

[0167] In a possible implementation, the processing module 920 is further configured to determine the MPR set according to distances between the at least one neighboring node and the first node at the second time, wherein the at least one neighboring node includes a first neighboring node, and the first neighboring node can be selected as an MPR node if the first neighboring node is located within a communication distance range of the first node at the second time.

[0168] In a possible implementation, the processing module 920 is further configured to determine the MPR set according to reachabilities of the at least one neighboring node, wherein a neighboring node with the highest reachability among the at least one neighboring node is a node in the MPR set. The at least one neighboring node includes a first neighboring node, and the reachability of the first neighboring node indicates a number of two-hop nodes that can be covered by the first node through the first neighboring node.

[0169] In a possible implementation, the link quality RETX between the communication device 900 and the first neighboring node is i,j Reachability to the first adjacent node j Satisfy between:

[0170]

[0171] Where ε is RETX i,j The weighting factor of Re j The weighting factor of , and ε+γ=1; represents the distance between node i and node j at the next moment, R represents the communication distance of the nodes; N w Represents the probability of a node being selected as an MPR node.

[0172] In a possible implementation, the transceiver module 910 is configured to send a first TC packet according to a first time interval; and send a second TC packet according to a second time interval; wherein, within the first time interval, the number of nodes in the MPR set that have changed is greater than a first threshold, and the second time interval is different from the first time interval; or, within the first time interval, the number of nodes in the MPR set that have changed is less than or equal to the first threshold, and the second time interval is the same as the first time interval.

[0173] In a possible implementation, within a first time interval, the number of nodes in the MPR set that have changed is greater than a first threshold, the second time interval is the sum of the first time interval and a second offset, and the second offset is less than 0.

[0174] In a possible implementation, the first time interval is a set minimum time interval. If the number of nodes changed in the MPR set within the first time interval is 0, the second time interval is the sum of the first time interval and the third offset, and the third offset is greater than 0.

[0175] In a possible implementation, processing module 920 is further configured to: determine a link variability within a first duration, determine a first offset for sending a Hello message based on the link variability, and send the Hello message at a first time. The link variability indicates the extent of a change in link status. Hello messages are used for link awareness and neighbor node detection in the network. The first time is the sum of the Hello message transmission period and the first offset.

[0176] In a possible implementation, the routing table includes a first path, where the first path is a path with the longest link holding time among paths from the first node to all reachable nodes, and the link holding time is the time during which two nodes maintain connection.

[0177] The embodiment of the present application further provides a communication system, comprising a plurality of nodes, and the steps performed by the plurality of nodes are similar. Taking the plurality of nodes comprising a first node as an example, the first node is configured to: determine relative speeds between the first node and at least one adjacent node at a second time, obtain at least one relative speed, and the second time is later than the first time; determine link qualities between the first node and the at least one adjacent node according to the at least one relative speed, and obtain at least one link quality; determine an MPR set according to the at least one link quality, and send a TC packet through a first relay node in the MPR set; and update a local networking topology table and a routing table according to topology information forwarded by the TC packet.

[0178] The embodiment of the present application further provides a computer readable storage medium, comprising instructions, when the instructions are executed on a computer, the computer is caused to execute the method in the method example, and specific reference can be made to the detailed description in the method example, and details are not repeated here.

[0179] In order to implement the functions in the method provided by the embodiment of the present application, the electronic device for processing spatial radio signals can include hardware structures and / or software modules to implement the functions in the form of hardware structures, software modules, or hardware structures plus software modules. Whether a certain function in the functions is implemented in the form of hardware structures, software modules, or hardware structures plus software modules depends on specific application and design constraints of the technical solution.

[0180] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the division of the above-mentioned functional modules is taken as an example, and in actual application, the above-mentioned functions can be completed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. The specific working process of the system, device and unit described above can refer to the corresponding process in the foregoing method embodiments, which will not be repeated here.

[0181] In the embodiments of the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic, for example, the division of the modules or units is only a logical function division, and actual implementation can have another division manner, for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the units or components shown or discussed can be indirect coupling or communication connection through some interfaces, devices or units, and can be electrical, mechanical or other forms.

[0182] The units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, i.e. may be located in one place, or may be distributed on multiple network units. Part or all of the units may be selected according to actual needs to achieve the purpose of the embodiment scheme.

[0183] In addition, each functional unit in the embodiment of the application can be integrated in one processing unit, or each unit can exist physically, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of a software functional unit.

[0184] The integrated unit, if realized in the form of a software functional unit and sold or used as an independent product, can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the present application essentially or the part of the prior art that contributes to the technical solutions or all or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to execute all or part of the steps of the method described in the various embodiments of the present application. The aforementioned storage medium includes: a universal serial bus flash disk (USB), a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and various program code storage media.

[0185] The various illustrative logical units and circuits described in the embodiments of the present application can be realized or operated by a general processor, a digital signal processor, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or a design of any combination of the above. The general processor can be a microprocessor, and optionally, the general processor can also be any conventional processor, controller, microcontroller or state machine. The processor can also be realized by a combination of computing devices, such as a digital signal processor and a microprocessor, multiple microprocessors, one or more microprocessors combined with a digital signal processor core, or any other similar configuration.

[0186] The steps of a method or algorithm described in connection with the embodiments disclosed herein can be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module can reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is tangible. In addition, the storage medium can be connected to the processor, so that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium can be integral to the processor. The processor and the storage medium can reside in an ASIC.

[0187] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks. Figure 1 Figure 1 The flowchart blocks or blocks in the multiple flowcharts and / or blocks in the one or more flowcharts and / or blocks in the one or more blocks specify the functions of the embodiments described herein.

[0188] Obviously, numerous modifications and variations of the present application are possible in light of the above teachings. It is therefore to be understood that within the scope of the claims and their equivalents, the application can be practiced otherwise than as specifically described herein.​

Claims

1. A method of a flying ad hoc network, characterized by, The method comprises: determining relative speeds between the first node and at least one adjacent node at a first time and at a second time, obtaining at least one relative speed, the second time being later than the first time; determining link qualities between the first node and the at least one adjacent node according to the at least one relative speed, obtaining at least one link quality; determining a multi-node relay (MPR) set according to the at least one link quality, and sending a topology control (TC) packet through an MPR node in the MPR set; updating a local networking topology table and a routing table according to topology information of the TC packet, and sending the TC packet; According to the at least one link quality, the MPR set is determined further comprising: determining the MPR set according to distances between the at least one neighboring node and the first node at the second time and reachability of the at least one neighboring node; wherein the at least one neighboring node comprises a first neighboring node, if the first neighboring node is within a communication distance range of the first node at the second time, the first neighboring node can be selected as an MPR node; a neighboring node with the highest reachability among the at least one neighboring node is as one node in the MPR set; the at least one neighboring node comprises a first neighboring node, the reachability of the first neighboring node is used to indicate a number of two-hop nodes that can be covered by the first node through the first neighboring node; the link quality RETX i,j between the first node and the first neighboring node satisfies:Re j wherein ε is a weighting factor for RETX i,j , γ is a weighting factor for Re j , and ε + γ = 1. denotes the distance between node i and node j at next time, R denotes the communication distance of a node; w denotes the probability of a node being selected as an MPR node. wherein sending the TC packet comprises: sending the TC packet according to a second time interval according to a number of changes in nodes in the MPR set; wherein, in a first time interval, the number of changes in nodes in the MPR set is greater than a first threshold, the second time interval is different from the first time interval; and, in the first time interval, the number of changes in nodes in the MPR set is less than or equal to the first threshold, the second time interval is the same as the first time interval, and the first time interval is a time interval of a last time of sending the TC packet.

2. The method of claim 1, wherein, In the first time interval, the number of changes in nodes in the MPR set is greater than the first threshold, and the second time interval is a sum of the first time interval and a second offset, and the second offset is less than 0.

3. The method of claim 2, wherein, The first time interval is a set minimum time interval, and if the number of changes in nodes in the MPR set in the first time interval is 0, the second time interval is a sum of the first time interval and a third offset, and the third offset is greater than 0.

4. The method of claim 1, wherein, The method further comprises: determining a link change degree in a first time period, the link change degree being used to indicate a degree of change in a link state; determining a first offset of sending a Hello message according to the link change degree, the Hello message being used for link sensing and neighbor node detection in a network; arriving at a first time, sending the Hello message, the first time being a sum of a sending period of the Hello message and the first offset.

5. The method of claim 1, wherein, The routing table comprises a first path, wherein the first path is a path with a longest link maintenance time among paths from the first node to all reachable nodes, and the link maintenance time is a time of maintaining connection between two nodes.

6. A communication system characterized by The communication system comprises a plurality of nodes, and the plurality of nodes comprise a first node; wherein the first node is configured to: determine relative speeds between the first node and at least one adjacent node at a first time and at a second time, obtaining at least one relative speed, the second time being later than the first time; determine link qualities between the first node and the at least one adjacent node according to the at least one relative speed, obtaining at least one link quality; determine a multi-node relay (MPR) set according to the at least one link quality, and send a topology control (TC) packet through a first relay node in the MPR set; and update a local networking topology table and a routing table according to topology information of TC packet forwarding, and send the TC packet. The first node is configured to determine the MPR set according to the at least one link quality, specifically, the MPR set is determined according to distances between the at least one neighboring node and the first node at the second time and reachability of the at least one neighboring node; the at least one neighboring node includes a first neighboring node, if the first neighboring node is located within a communication distance range of the first node at the second time, the first neighboring node can be selected as an MPR node; a neighboring node with the highest reachability among the at least one neighboring node is taken as one node in the MPR set; the at least one neighboring node includes a first neighboring node, the reachability of the first neighboring node is used to indicate a number of two-hop nodes that can be covered by the first node through the first neighboring node; the link quality RETX i,j between the first node and the first neighboring node satisfies: j Re wherein ε is a weighting factor for RETX i,j , γ is a weighting factor for Re j , and ε + γ = 1. denotes the distance between node i and node j at next time, R denotes the communication distance of a node; w denotes the probability of a node being selected as an MPR node. The sending of the TC packet comprises: sending the TC packet according to a second time interval according to the number of nodes in the MPR set that have changed; wherein, in a first time interval, the number of nodes in the MPR set that have changed is greater than a first threshold, the second time interval is different from the first time interval; or, in the first time interval, the number of nodes in the MPR set that have changed is less than or equal to the first threshold, the second time interval is the same as the first time interval, and the first time interval is a time interval of the last sending of the TC packet.