Data Transmission Method, Device, Storage Medium and Node in Ad Hoc Network
By collecting all-domain situation information in the ad hoc network and making routing decisions, the problem of low data transmission reliability in the ad hoc network is solved, and the data transmission reliability in large-scale ad hoc networks is improved.
Patent Information
- Application Number
- CN202510443692.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-10
- Publication Date
- 2025-06-27
- Estimated Expiration
- 2045-04-10
AI Technical Summary
There is a problem of low reliability in data transmission in the ad hoc network, especially when the target node exceeds the communication range of the source node, multiple hops of intermediate nodes need to be relayed and forwarded, making it difficult for service data to reliably reach the target node.
By collecting the entire domain situation information in each node, including real-time situation information within the domain and under-real-time situation information outside the domain, routing decisions are made in response to data transmission instructions. If the target node is in a predetermined area, it will make active routing decisions and data forwarding based on the real-time situation information in the domain; if the target node is outside the predetermined area, it will perform directed deep routing search and data forwarding of the instant-transmission formula based on the real-time situation information in the domain and the low-real-time situation information outside the domain.
The reliability of data transmission in large-scale ad hoc networks is improved, and by accurately and timely tracking intra-domain topological changes and roughly tracking out-domain topological changes, it ensures that data can be accurately transmitted to the target node.
Smart Images

Figure CN119997141B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technologies, and in particular, to a data transmission method, apparatus, storage medium, and node in an ad hoc network. Background Art
[0002] With the development of technologies, taking a cluster of unmanned aerial vehicle (UAV) devices as an example, the networking scale of an ad hoc network is getting larger and larger. There is usually a need for data transmission between nodes in the ad hoc network. For example, a node in the ad hoc network may need to forward service data to one or more target nodes. In practice, when transmitting data in an ad hoc network, node trajectory planning and preset matching of the optimal data transmission path are usually carried out by presetting information such as the initial positions and altitudes of all nodes in the ad hoc network, the positions and altitudes of all target nodes, and preset trajectories.
[0003] At present, this way of presetting information still has many limitations in practical applications, especially in data transmission decision-making, and lacks flexibility. The communication distances of each node in a large-scale ad hoc network are usually limited. When the target node is outside the communication range of the source node and multi-hop intermediate nodes are required for relay forwarding, due to the dynamic nature of the ad hoc network topology and the time-varying nature of the wireless transmission channel, it is very easy for service data to be difficult to reach the target node reliably. Therefore, there is a problem of low reliability in data transmission in the current ad hoc network. Summary of the Invention
[0004] An embodiment of this application provides a solution that can effectively improve the reliability of data transmission in an ad hoc network.
[0005] The embodiments of this application provide the following technical solutions:
[0006] According to an embodiment of this application, a data transmission method in an ad hoc network, where the ad hoc network includes multiple nodes, and the method is applied to each of the nodes. The method includes: respectively collecting global situation information, where the global situation information includes in-domain real-time situation information and out-of-domain less real-time situation information. The in-domain real-time situation information is obtained based on the node real-time situation information of the nodes within a predetermined area where each node is located, and the out-of-domain less real-time situation information is obtained based on the node less real-time situation information of the nodes outside the predetermined area; in response to a data transmission instruction, if the target node is within the predetermined area, then based on the in-domain real-time situation information, perform proactive routing decision-making and data forwarding; if the target node is outside the predetermined area, then combine the in-domain real-time situation information and the out-of-domain less real-time situation information to perform directed depth routing search and data forwarding in an as-transmitted-as-calculated manner.
[0007] According to an embodiment of the present application, a data transmission device in an ad-hoc network, the ad-hoc network includes multiple nodes, the device is applied to each of the nodes, and the device includes: an acquisition module, configured to: respectively acquire global situation information, the global situation information includes in-domain real-time situation information and out-of-domain less real-time situation information, the in-domain real-time situation information is obtained based on the node real-time situation information of the nodes within the predetermined area where each node is located, and the out-of-domain less real-time situation information is obtained based on the node less real-time situation information of the nodes outside the predetermined area; a transmission module, configured to: in response to a data transmission instruction, if the target node is within the predetermined area, perform proactive routing decision-making and data forwarding based on the in-domain real-time situation information; if the target node is outside the predetermined area, perform directed depth routing search and data forwarding in an immediate transmission and calculation manner by combining the in-domain real-time situation information and the out-of-domain less real-time situation information.
[0008] According to another embodiment of the present application, a storage medium stores a computer program thereon, and when the computer program is executed by a processor of a node, the node is caused to execute the method described in the embodiment of the present application.
[0009] According to another embodiment of the present application, a node may include: a memory storing a computer program; a processor reading the computer program stored in the memory to execute the method described in the embodiment of the present application.
[0010] According to another embodiment of the present application, a computer program product or a computer program, the computer program product or the computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. A processor of a node reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the node executes the method provided in various alternative implementation manners described in the embodiment of the present application.
[0011] In the embodiment of the present application, each node in the ad-hoc network may execute: respectively acquire global situation information, the global situation information includes in-domain real-time situation information and out-of-domain less real-time situation information, the in-domain real-time situation information is obtained based on the node real-time situation information of the nodes within the predetermined area where each node is located, and the out-of-domain less real-time situation information is obtained based on the node less real-time situation information of the nodes outside the predetermined area; in response to a data transmission instruction, if the target node is within the predetermined area, perform proactive routing decision-making and data forwarding based on the in-domain real-time situation information; if the target node is outside the predetermined area, perform directed depth routing search and data forwarding in an immediate transmission and calculation manner by combining the in-domain real-time situation information and the out-of-domain less real-time situation information.
[0012] In this way of the embodiments of the present application, each node in the ad hoc network realizes accurate and timely in-domain tracking of the topological changes of the nodes in a predetermined area by maintaining the in-domain real-time situation information. When the target node is located within the predetermined area, active routing decisions and data forwarding are performed based on the in-domain real-time situation information, and the data can be accurately forwarded to the target node. Further, each node in the ad hoc network can perform rough out-of-domain tracking of the topological changes of the nodes outside the predetermined area by maintaining the out-of-domain less real-time situation information. When the target node is located outside the predetermined area, directed depth routing search and data forwarding in an immediate transmission and calculation manner are performed by combining the in-domain real-time situation information and the out-of-domain less real-time situation information. That is, accurate transmission of data in an immediate transmission and calculation manner can be achieved by combining in-domain accurate and timely tracking and out-of-domain rough tracking, effectively improving the reliability of data transmission in a large-scale ad hoc network as a whole. BRIEF DESCRIPTION OF THE DRAWINGS
[0013] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for the description of the embodiments. Obviously, the following drawings are only some embodiments of the present application. For those skilled in the art, without creative efforts, other drawings can be obtained based on these drawings.
[0014] Figure 1 The flowchart of the data transmission method in the ad hoc network according to an embodiment of the present application is shown.
[0015] Figure 2 The schematic diagram of the network topology according to an embodiment of the present application is shown.
[0016] Figure 3 The flowchart of the cycle calculation according to an embodiment of the present application is shown.
[0017] Figure 4 The flowchart of the duration calculation according to an embodiment of the present application is shown.
[0018] Figure 5 The schematic diagram of the network topology according to another embodiment of the present application is shown.
[0019] Figure 6 The flowchart of the path analysis according to an embodiment of the present application is shown.
[0020] Figure 7 The schematic diagram of the network topology according to another embodiment of the present application is shown.
[0021] Figure 8 The flowchart of the set construction according to an embodiment of the present application is shown.
[0022] Figure 9 The flowchart of the node screening according to an embodiment of the present application is shown.
[0023] Figure 10 Shows a schematic diagram of a network topology according to another embodiment of the present application.
[0024] Figure 11 Shows a schematic diagram of a network topology according to another embodiment of the present application.
[0025] Figure 12 Shows a block diagram of a data transmission device in an ad hoc network according to an embodiment of the present application.
[0026] Figure 13 Shows a block diagram of a node according to an embodiment of the present application. Detailed implementation manners
[0027] The following further details the present disclosure in conjunction with the accompanying drawings and embodiments. It should be understood that the embodiments provided herein are only used to explain the present disclosure and are not used to limit the present disclosure. In addition, the embodiments provided below are partial embodiments for implementing the present disclosure, rather than all embodiments for implementing the present disclosure. Without conflict, the technical solutions described in the embodiments of the present disclosure can be implemented in any combined manner.
[0028] It should be noted that in the embodiments of the present disclosure, the term "comprise", "include" or any other variant thereof is intended to cover a non-exclusive inclusion, such that a method or device including a series of elements not only includes the elements expressly recited, but also includes other elements not expressly listed, or further includes elements inherent to the implementation of the method or device. Without further limitation, an element defined by the statement "including one..." does not exclude the existence of additional related elements in the method or device including the element (such as steps in a method or units in a device, and the units can be partial circuits, partial processors, partial programs or software, etc.).
[0029] For example, the data transmission method in the ad hoc network provided by the embodiments of the present disclosure includes a series of steps, but the data transmission method in the ad hoc network provided by the embodiments of the present disclosure is not limited to the recited steps. Similarly, the data transmission device in the ad hoc network provided by the embodiments of the present disclosure includes a series of units, but the device provided by the embodiments of the present disclosure is not limited to including the expressly recited units, and may further include units required for obtaining relevant information or processing based on the information.
[0030] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the technical field to which this disclosure belongs. The terms used herein are only for the purpose of describing specific embodiments and are not intended to limit this disclosure.
[0031] It is understandable that in the specific embodiments of the present application, when related data is involved and the embodiments of the present application are applied to specific products or technologies, user permission or consent is required, and the collection, use, and processing of related data need to comply with relevant laws, regulations, and standards in relevant countries and regions.
[0032] Figure 1 The flowchart of the data transmission method in the ad hoc network according to an embodiment of the present application is schematically shown. The ad hoc network usually includes multiple nodes, and the execution subject of the data transmission method in the embodiment of the present application can be any node in the ad hoc network.
[0033] Among them, the ad hoc network can be: a wireless ad hoc network composed of multiple unmanned aerial vehicles as nodes, or a wireless ad hoc network composed of multiple vehicle-mounted devices as nodes, or a wireless ad hoc network composed of multiple user devices (such as watches, mobile phones, etc.) as nodes, and so on.
[0034] Each node in the ad hoc network can execute the data transmission method in the ad hoc network as shown in Figure 1 As shown, the data transmission method in the ad hoc network can include step S110 to step S130. Figure 1 As shown, the data transmission method in the ad hoc network can include step S110 to step S130.
[0035] Step S110, respectively collect the global situation information, where the global situation information includes in-domain real-time situation information and out-of-domain less real-time situation information. The in-domain real-time situation information is obtained based on the node real-time situation information of the nodes within the predetermined area where each node is located, and the out-of-domain less real-time situation information is obtained based on the node less real-time situation information of the nodes outside the predetermined area;
[0036] Step S120, in response to a data transmission instruction, if the target node is within the predetermined area, then perform proactive routing decision-making and data forwarding based on the in-domain real-time situation information;
[0037] Step S130, if the target node is outside the predetermined area, then perform directed depth routing search and data forwarding in an immediate transmission and calculation manner by combining the in-domain real-time situation information and the out-of-domain less real-time situation information.
[0038] Each node in the ad hoc network can respectively collect the global situation information centered on itself. The global situation information is an information set containing the node-related situation information of all nodes in the ad hoc network. For example, the ad hoc network may include node A, node B, and other nodes. Node A can collect the global situation information A-X centered on itself, and node B can collect the global situation information B-X centered on itself.
[0039] The global situation information maintained by each node includes in-domain real-time situation information and out-of-domain less real-time situation information. The in-domain real-time situation information is obtained based on the node real-time situation information of the nodes within the predetermined area where each node is located, and the out-of-domain less real-time situation information is obtained based on the node less real-time situation information of the nodes outside the predetermined area. For each node, the "node real-time situation information of the nodes within the predetermined area where the node is located" can be obtained more quickly compared to the "node less real-time situation information of the nodes outside the predetermined area where the node is located". The node-related situation information of the nodes within the predetermined area can be called node real-time situation information, and the node-related situation information of the nodes outside the predetermined area can be called node less real-time situation information.
[0040] Thus, the real-time nature of the in-domain real-time situation information maintained by each node is higher than that of the out-of-domain less real-time situation information. That is to say, the out-of-domain less real-time situation information has less real-time nature, and the in-domain real-time situation information has a high degree of real-time nature. Through the in-domain real-time situation information, the topological changes of the nodes within the predetermined area can be accurately and timely tracked, and through the out-of-domain less real-time situation information, the topological changes of the nodes outside the predetermined area can be roughly tracked.
[0041] Taking node A as an example, the global situation information A-X may include in-domain real-time situation information A-X1 and out-of-domain less real-time situation information A-X2. The in-domain real-time situation information A-X1 is obtained based on the node real-time situation information of the nodes within the predetermined area where node A is located, and the out-of-domain less real-time situation information A-X2 is obtained based on the node less real-time situation information of the nodes outside the predetermined area where node A is located. Herein, the predetermined area where node A is located may specifically refer to the k-hop range of node A, and the value of k can be set according to the actual situation.
[0042] Similarly, taking node B as an example, the global situation information B-X may include in-domain real-time situation information B-X1 and out-of-domain less real-time situation information B-X2. The in-domain real-time situation information B-X1 is obtained based on the node real-time situation information of the nodes within the predetermined area where node B is located, and the out-of-domain less real-time situation information B-X2 is obtained based on the node less real-time situation information of the nodes outside the predetermined area where node B is located. Herein, the predetermined area where node B is located may specifically refer to the k-hop range of node B, and the value of k can be set according to the actual situation.
[0043] Further, each node in the ad hoc network can, in response to a data transmission instruction, determine the target node to which data needs to be transmitted according to the data transmission instruction, and determine whether the target node is located within the predetermined area Ka where it is located according to the global situation information it maintains. For example, if node A receives a data transmission instruction to transmit data to target node M, node A can determine whether target node M is located within the predetermined area where node A is located according to the global situation information A-X. If node B receives a data transmission instruction to transmit data to target node N, node B can determine whether target node N is located within the predetermined area Kb where node B is located according to the global situation information B-X.
[0044] Further, if the target node is located within the predetermined area, an active routing decision and data forwarding are performed based on the real-time situation information within the domain. The active routing decision means that "the source node that receives the data transmission instruction decides the data transmission path from itself to the target node". For example, node A decides the final data transmission path from node A itself to target node M according to the real-time situation information A-X1 within the domain. Then, the service data is transmitted from node A itself to target node M through this data transmission path, where all the nodes in this data transmission path are located within the predetermined area where node A is located.
[0045] Further, if the target node is located outside the predetermined area, an on-the-fly directed depth routing search and data forwarding are performed by combining the real-time situation information within the domain and the less real-time situation information outside the domain. The on-the-fly directed depth routing search and data forwarding means that "starting from the source node, each node sequentially determines its next-hop node through a directed depth routing search and forwards the notification data to the next-hop node, and finally the service data is forwarded from the source node to the target node, where the notification data at least includes the service data and the node information of the target node".
[0046] For example, node A combines the real-time situation information A-X1 within the domain and the less real-time situation information A-X2 outside the domain to perform a directed depth routing search and obtains the next-hop node as B. Then, node A transmits the notification data including the service data and the node information of the target node to node C. Then, node C combines the real-time situation information C-X1 within the domain and the less real-time situation information C-X2 outside the domain in the global situation information C-X it maintains to perform a directed depth routing search and obtains the next-hop node as node G. Then, node C transmits the notification data to node G, and node G continues the directed depth routing search and data forwarding, and so on, until the service data is finally forwarded from node A to target node D.
[0047] In this way of the embodiments of the present application, each node in the ad-hoc network can accurately and timely track the topological changes of the nodes within a predetermined area by maintaining the real-time situation information within the domain. When the target node is within the predetermined area, active routing decision-making and data forwarding are performed based on the real-time situation information within the domain, and the data can be accurately forwarded to the target node. Further, each node in the ad-hoc network can roughly track the topological changes of the nodes outside the predetermined area by maintaining the less real-time situation information outside the domain. When the target node is outside the predetermined area, directed depth routing search and data forwarding in an immediate transmission and calculation manner are performed by combining the real-time situation information within the domain and the less real-time situation information outside the domain, that is, accurate transmission in an immediate transmission and calculation manner can be achieved by combining the accurate and timely tracking within the domain and the rough tracking outside the domain, effectively improving the reliability of data transmission in a large-scale ad-hoc network as a whole.
[0048] The following description Figure 1 In the embodiments, when data is transmitted in the ad-hoc network, specific embodiments that are further optional for each step are described.
[0049] In one embodiment, the respectively collecting the global situation information may include: each of the nodes respectively shares the situation information in a one-hop fusion and forwarding manner at an elastic period, so that each of the nodes respectively collects the global situation information.
[0050] In this embodiment, each node in the ad-hoc network respectively "shares the situation information at an elastic period" and "shares the situation information in a one-hop fusion and forwarding manner". Specifically, each node in the ad-hoc network can maintain the global situation information in the local situation information library. "The information sharing range of each node is one-hop range (that is, each node only shares information with its adjacent nodes that are one-hop connected to itself)" and "each node further forwards the updated situation information updated within the elastic period in the local situation information library to the adjacent nodes after fusion".
[0051] Wherein, after a node receives the node situation information of a certain node forwarded by an adjacent node, it can judge whether the node situation information of the certain node has been maintained in the local situation information library. If it has been maintained, then compare the timestamp 1 in the currently received node situation information with the timestamp 2 in the maintained node situation information. If timestamp 1 is after timestamp 2, then the node situation information of the certain node maintained in the local situation information library can be updated with the currently received node situation information. Wherein, the timestamp carried in the node situation information of the certain node may specifically be the moment when the certain node shares its own node situation information.
[0052] In this implementation manner, situation information sharing is carried out in the ad hoc network through an elastic cycle periodic one-hop fusion forwarding manner, which can effectively avoid the broadcast flooding of shared information in the ad hoc network, keep the communication quality of the whole network more stable, and improve the controllability of the overhead during information routing in the ad hoc network.
[0053] It can be understood that in other embodiments, collecting global situation information respectively may include: each node shares information by using a two-hop or multi-hop transmission method, or each node may share information without fusing information, etc.
[0054] Further, in one embodiment, each of the nodes periodically shares situation information through a one-hop fusion forwarding manner according to an elastic cycle, which may further include: each of the nodes shares the updated situation information of the nodes within different hop count ranges received according to the elastic cycle corresponding to the hop count range through a one-hop fusion forwarding manner, where the elastic cycle corresponding to the hop count range farther from each of the nodes is longer.
[0055] Refer to Figure 2 , taking the first node 200 as an example, multiple different hop count ranges can be drawn with the first node 200 as the center: the first hop count range 210 from the center to 2 hops, the second hop count range 220 from 2 hops to k hops, and the third hop count range 230 beyond k hops. Each hop count range can determine a corresponding elastic cycle, and the elastic cycle corresponding to the hop count range farther from node A is longer, that is, the elastic cycles corresponding to the first hop count range 210, the second hop count range 220, and the third hop count range 230 are longer.
[0056] In one example, the elastic cycle corresponding to the first hop count range 210 is 1 second, the elastic cycle corresponding to the second hop count range 220 is 1 minute, and the elastic cycle corresponding to the third hop count range 230 is ten minutes. Thus, the first node 200 can fuse and forward the updated situation information of the nodes in the first hop count range 210 in the local situation information database to its adjacent nodes every 1 second, the first node 200 can fuse and forward the updated situation information of the nodes in the second hop count range 220 in the local situation information database to its adjacent nodes every 1 minute, and the first node 200 can fuse and forward the updated situation information of the nodes in the third hop count range 230 in the local situation information database to its adjacent nodes every ten minutes. By analogy, each node in the ad hoc network can share information in this way.
[0057] In this way, each node in the ad hoc network shares situation information according to the corresponding elastic cycle for different hop count ranges, and the elastic cycle corresponding to the hop count range farther from each node is longer, which can further keep the communication quality of the whole network more stable and improve the communication reliability in the ad hoc network.
[0058] Further, in one embodiment, each of the nodes uses the link layer to sense the real-time situation information within the domain, and each of the nodes uses the application layer to sense the less real-time situation information outside the domain.
[0059] In this embodiment, each node uses the link layer to sense the real-time situation information within the domain. That is, each node uses the link layer to statistically process the node situation information of the nodes received within the predetermined area and transmits it to a predetermined layer (such as the network layer) for further maintenance as the real-time situation information within the domain.
[0060] Each node uses the application layer to sense the less real-time situation information outside the domain. That is, each node uses the application layer to statistically process the node situation information of the nodes received outside the predetermined area and transmits it to a predetermined layer (such as the network layer) for further maintenance as the real-time situation information outside the domain.
[0061] When using the link layer for sensing, the sensing period can be shorter than the sensing period when using the application layer. For example, when using the link layer for sensing, the sensing period is in milliseconds, while when using the application layer for sensing, the sensing period is in seconds. The link layer can use a message transfer method with a high compression ratio to transfer the sensed information to a predetermined layer. The application layer can use header compression to transfer the sensed information and transmit it in the form of service data messages. The application layer and the link layer can adaptively adjust the sensing mode and the sensing period.
[0062] In one embodiment, each of the nodes periodically shares the situation information according to a fixed elastic period.
[0063] Further, in some embodiments, each of the nodes can adaptively adjust the elastic period to share the situation information. Specifically, refer to Figure 3 , each of the nodes can determine the elastic period in the following manner: Step S310, dynamically determine the planned period according to the load status and the network status; Step S320, obtain the elastic period according to the planned period.
[0064] In this embodiment, each node can dynamically determine a matching planned period according to its own load status and network status. For example, the node can query the planned period matching its current own load status and network status from a predetermined period table.
[0065] The node obtains the elastic period according to the planned period dynamically determined by the load status and the network status, realizes that the node adaptively updates the load status and dynamically adjusts the elastic period according to the network status, and further improves the communication reliability in the ad hoc network.
[0066] Further, each node can dynamically determine the planned period matching different hop count ranges according to its own load status and network status. For example, the node can query the planned period matching its current load status and network status in different hop count ranges from a predetermined period table. Thus, the elastic period matching different hop count ranges can be further obtained, where the elastic period corresponding to the hop count range farther from each node can be longer.
[0067] In one embodiment, obtaining the elastic period according to the planned period may include one of the following methods:
[0068] First, adding the planned period and the forwarding jitter time to obtain the elastic period; second, determining the planned period as the elastic period.
[0069] When sharing and sending situation information, adjacent nodes may attempt to send situation information simultaneously at the same period, resulting in information loss. Through the first method, adding the planned period and the forwarding jitter time to obtain the elastic period, that is, adopting the strategy of adding jitter time when nodes send periodically, to avoid the problem of information loss caused by adjacent nodes synchronously sending messages at the same time.
[0070] Specifically, T’ = T + T j , T j ∈ (min - jitter1, max - jitter1), where T’ is the elastic period, T is the planned period, and T j is the jitter period, and the value range of T j is [min - jitter1, max - jitter1], min - jitter1 is a predetermined first minimum value, max - jitter1 is a predetermined first maximum value, and the magnitudes of min - jitter1 and max - jitter1 can be set according to actual situations.
[0071] Further, in one embodiment, the method may further include: each of the nodes locally stores the received node situation information for a target effective retention duration, where the target effective retention duration is greater than the elastic period.
[0072] Taking a certain node M as an example, when the node situation information of node M is fused and forwarded by one hop with the elastic period of the nodes in the ad - hoc network, the node situation information should be stored at the receiving node for the target effective retention duration, where the target effective retention duration is greater than the elastic period determined by the receiving node. For example, refer to Figure 2After the first node 200 receives the node situation information of node M, if node M is within the third hop count range 230, the first node 200 will locally store the node situation information of node M for a target effective retention duration that is at least greater than the elastic period corresponding to the third hop count range 230.
[0073] In this way, each node locally stores the received node situation information for a target effective retention duration greater than the elastic period, which can further improve the reliability of information sharing in the one-hop fusion forwarding manner of the elastic period.
[0074] Further, in one embodiment, refer to Figure 4 , each of the nodes determines the target effective retention duration in the following manner: Step S410, determine the predetermined effective retention duration that matches the received node situation information; Step S420, add the predetermined effective retention duration and the retention jitter time to obtain the target effective retention duration for locally storing the received node situation information.
[0075] The node determines the predetermined effective retention duration that matches the received node situation information, and the predetermined effective retention duration is greater than or equal to the elastic duration corresponding to the node from which the received node situation information is sourced. For example, refer to Figure 2 , after the first node 200 receives the node situation information of node M, it can determine the elastic period Tm corresponding to the third hop count range 230 where node M is located, and allocate a predetermined effective retention duration that is greater than or equal to the elastic period Tm. Then, the node can further use the duration obtained by adding the predetermined effective retention duration and the retention jitter time as the target effective retention duration for locally storing the received node situation information.
[0076] Further, if the time interval during which the first node 200 that has received the node situation information of node M does not receive the relevant situation information of node M forwarded by the neighboring nodes of the first node 200 exceeds the target effective retention duration, the node situation information of node M is deleted from the local situation information database, thereby avoiding data transmission errors in the ad hoc network and further improving data transmission reliability.
[0077] In the embodiments of the present application, in different ad hoc network node scales and network application scenarios, the situation information perception mode and update period can be initialized and custom-set according to the node mode option on the preset network management system.
[0078] In one way, the situation information perception mode for real-time situation information within the configuration domain can be initialized as a periodic update mode, and the update period is from microseconds to seconds; the situation information perception mode for less-than-real-time situation information outside the configuration domain can be initialized as a combined update mode, that is, a combination of a periodic update mode and an event-based incremental update mode. The periodic update mode means sharing information periodically according to an elastic period, and the event-based incremental update mode means sharing information triggered by events. In this way, the overhead of periodic control in the ad hoc network can be further reduced.
[0079] Further, in an embodiment of the present application, the in-domain real-time situation information may specifically include the in-domain network topology information of the nodes within the predetermined area and the routing decision resource information, and the routing decision resource information includes the node real-time state information and the link information between nodes; the out-of-domain less-than-real-time situation information may specifically include the node orientation information of each node outside the predetermined area.
[0080] The ad hoc network may include node A. Node A can collect and maintain the global situation information A-X with itself as the center. The global situation information A-X may include the in-domain real-time situation information A-X1 and the out-of-domain less-than-real-time situation information A-X2. The in-domain real-time situation information A-X1 is obtained based on the node situation information of the nodes within the predetermined area where node A is located, and the out-of-domain less-than-real-time situation information A-X2 is obtained based on the node situation information of the nodes outside the predetermined area where node A is located.
[0081] Specifically, the in-domain real-time situation information A-X1 may include the in-domain network topology information A-X1-1 of the nodes within the predetermined area where node A is located and the routing decision resource information A-X1-2. The in-domain network topology information A-X1-1 is the connection information of all nodes within the predetermined area, and the routing decision resource information A-X1-2 may include the node real-time state information of the nodes within the predetermined area and the link information between nodes. The node real-time state information may include state information reflecting the node itself such as node ID, node QoS priority queue mapping bitmap, node capability level, node load level, and node orientation information. The link information between nodes may include information reflecting the link quality between nodes such as link signal-to-noise ratio, stability, timeliness, and utilization rate. The out-of-domain less-than-real-time situation information A-X2 only includes a small amount of information such as the node orientation information and node capability level of each node outside the predetermined area. Among them, the node orientation information may include azimuth information such as node geographical location information and node movement mode (including movement direction and movement speed).
[0082] In this way, each node in the ad hoc network can reliably achieve accurate and timely tracking of the topological changes of nodes within a predetermined area by maintaining real-time situation information within the domain, and can roughly track the topological changes of nodes outside the predetermined area by maintaining less real-time situation information outside the domain.
[0083] In one embodiment, the real-time situation information within the domain includes the in-domain network topology information and routing decision resource information of the nodes within the predetermined area; the active routing decision and data forwarding based on the real-time situation information within the domain include: determining a set of candidate paths from the present node to the target node according to the in-domain network topology information; screening paths from the set of candidate paths according to the routing decision resource information to obtain a data transmission path; and sending service data to the target node through the data transmission path.
[0084] The real-time situation information within the domain is obtained according to the real-time situation information of the nodes within the predetermined area where each node is located. If the target node is within the predetermined area, an active routing decision based on the real-time situation information within the domain can be used to determine the data transmission path within the predetermined area and perform data forwarding. The active routing decision means that "the source node that receives the data transmission instruction decides the data transmission path from itself to the target node".
[0085] Refer to Figure 5 , taking the second node 510 as an example. When the second node 510 determines that the target node is the third node 520 according to the received data transmission instruction, the second node 510 can construct the in-domain routing (i.e., the network topology within the predetermined area) as shown in Figure 5 and determine a set of candidate paths from the present node (i.e., the second node 510) to the target node (i.e., the third node 520) therefrom. For example, the set of candidate paths may include Path 1, Path 2, and other candidate paths. The second node 510 can further screen paths from the set of candidate paths according to the routing decision resource information, select a one-hop path as the data transmission path, and then send the service data to the target node through the data transmission path.
[0086] The real-time situation information within the domain has a high degree of real-time nature. Making an active routing decision based on the real-time situation information within the domain can accurately select a reliable data transmission path, and the service data can be reliably transmitted to the target node through this data transmission path.
[0087] Furthermore, in one embodiment, refer to Figure 6, the routing decision resource information includes node real-time status information and inter-node link information; the process of screening paths from the candidate path set according to the routing decision resource information to obtain a data transmission path includes: Step S610, if there are at least two paths in the candidate path set, determine paths that meet the requirements of a predetermined quality of service (QoS) metric from the candidate path set to obtain a preselected path set; Step S620, if there are at least two paths in the preselected path set, calculate the combined weights of the paths in the preselected path set according to the node real-time status information and inter-node link information; Step S630, determine the path with the highest combined weight in the preselected path set as the data transmission path.
[0088] If there are at least two paths in the candidate path set, first determine paths that meet the requirements of a predetermined quality of service (QoS) metric from the candidate path set to obtain a preselected path set composed of paths that meet the requirements of the predetermined quality of service (QoS) metric. The requirements of the predetermined quality of service (QoS) metric are the preset service quality (QoS) constraint conditions for selecting paths. For example, determining paths that meet the requirements of the predetermined quality of service (QoS) metric can be "paths in the candidate path set with the number of nodes less than a predetermined threshold" or "paths in the candidate path set ranked before a predetermined rank in ascending order of the number of nodes", etc.
[0089] If there are still at least two paths in the preselected path set, further calculate the combined weights of the paths in the preselected path set according to the node real-time status information and inter-node link information; and determine the path with the highest combined weight in the preselected path set as the final data transmission path, so as to perform service quality (QoS) routing decision according to the node routing decision resource information in a predetermined area, realize elastic routing with service quality (QoS) awareness, and improve data transmission reliability.
[0090] The node real-time status information may include node ID, node QoS priority queue mapping bitmap, node capability level, node load level, node orientation information, etc., which reflect the status information of the node itself. The inter-node link information may include information such as the signal-to-noise ratio, stability, timeliness, and utilization rate of the links between nodes, which reflect the link quality between nodes. Calculating the combined weights of the paths in the preselected path set according to the node real-time status information and inter-node link information may specifically be: performing weighted summation calculation according to the node real-time status information and inter-node link information of the nodes included in each path in the preselected path set to obtain the combined weights of the paths. The lower the node load level of the nodes in the path, the higher the node capability level, the lower the signal-to-noise ratio of the links between nodes, the higher the stability, the better the timeliness, and the higher the utilization rate, the higher the combined weight of the path.
[0091] In one embodiment, the on-the-fly directed depth routing search and data forwarding by combining the in-domain real-time situation information and the out-of-domain less real-time situation information may include: performing a directed search among the nodes in the predetermined area according to the in-domain real-time situation information and the out-of-domain less real-time situation information to obtain a candidate node set composed of nodes that meet the data forwarding requirements; performing a depth-first search among the candidate node set to obtain a target next-hop node; and sending notification data containing service data to the target next-hop node, so that the target next-hop node continues to perform the on-the-fly directed depth routing search and data forwarding.
[0092] If the target node is located outside the predetermined area, the on-the-fly directed depth routing search and data forwarding are performed by combining the in-domain real-time situation information and the out-of-domain less real-time situation information, where the on-the-fly directed depth routing search and data forwarding mean "starting from the source node as a decision node, the decision node determines its own target next-hop node through a directed depth routing search and forwards the notification data to the target next-hop node, and then, the target next-hop node serves as a decision node and continues to perform the on-the-fly directed depth routing search and data forwarding until the service data is finally forwarded from the source node to the target node, where the notification data at least includes service data and node information of the target node".
[0093] That the decision node determines its own target next-hop node through a directed depth routing search and forwards the notification data to the target next-hop node may specifically be: the decision node performs a directed search among the nodes in the predetermined area according to the in-domain real-time situation information and the out-of-domain less real-time situation information it maintains to obtain a candidate node set composed of nodes that meet the data forwarding requirements, and then, the decision node performs a depth-first search among the candidate node set to obtain a target next-hop node; then, the notification data containing service data is sent to the target next-hop node, and the target next-hop node serves as a decision node and continues to perform the on-the-fly directed depth routing search and data forwarding.
[0094] For example, refer to Figure 7, first, the fourth node 710 performs directed depth routing search and data forwarding in an on-the-fly manner as a decision node. Specifically, the fourth node 710, as a decision node, conducts a directed search in combination with the in-domain real-time situation information and out-of-domain less real-time situation information it maintains, obtaining a candidate node set composed of nodes that meet the data forwarding requirements. Then, it performs a depth-first search in the candidate node set to obtain the target next-hop node as the fifth node 720, and then transmits the notification data to the fifth node 720. Further, the fifth node 720 continues to perform directed depth routing search and data forwarding in an on-the-fly manner. Specifically, the fifth node 720 continues to be a decision node and conducts a directed search in combination with the in-domain real-time situation information and out-of-domain less real-time situation information it maintains, obtaining a candidate node set composed of nodes that meet the data forwarding requirements. Then, it performs a depth-first search in the candidate node set to obtain the target next-hop node as the sixth node 730, and then transmits the notification data to the sixth node 730. And so on, until the notification data is transmitted to the seventh node 740, and the seventh node 740 further transmits the service data to the eighth node 750.
[0095] The out-of-domain less real-time situation information has less real-time nature, while the in-domain real-time situation information has a high degree of real-time nature. Through the in-domain real-time situation information, the topological changes of nodes within the predetermined area can be accurately and timely tracked, and through the out-of-domain less real-time situation information, the topological changes of nodes outside the predetermined area can be roughly tracked. Combining the accurate and timely in-domain tracking and the rough out-of-domain tracking can achieve accurate on-the-fly data transmission. When the target node moves dynamically, it can also be advanced to the nodes near the target node in this way, and the nodes near the target node can accurately track the target node and accurately transmit the service data to the target node.
[0096] Further, in one embodiment, refer to Figure 8 , the in-domain real-time situation information includes the in-domain network topological information of the nodes within the predetermined area, and the out-of-domain less real-time situation information includes the node orientation information of each node outside the predetermined area; the directed search from the nodes within the predetermined area according to the in-domain real-time situation information and the out-of-domain less real-time situation information to obtain a candidate node set composed of nodes that meet the data forwarding requirements may include:
[0097] Step S810, determine whether there is one or more routes from the current node to the target node within the predetermined area according to the in-domain real-time topological relationship and the out-of-domain virtual topological relationship, where the in-domain real-time topological relationship is constructed according to the in-domain network topological information, and the out-of-domain virtual topological relationship is constructed according to the node orientation information in the out-of-domain less real-time situation information;
[0098] Step S820: If any exist, add the next-hop nodes after this node in the one or more routes to the direct forwarding subset;
[0099] Step S830: If none exist, select the neighboring nodes from the neighboring node set of this node whose Euclidean distance from this node is less than the Euclidean distance from this node to the target node, and add them to the Euclidean forwarding subset;
[0100] Step S840: Select the nodes with a next-hop within the predetermined area from the Euclidean forwarding subset, and add them to the priority forwarding subset.
[0101] The in-domain real-time situation information includes the in-domain network topology information of the nodes within the predetermined area. Based on this in-domain network topology information, the in-domain real-time topology relationship can be constructed, which can accurately reflect the network topology relationship between the nodes within the predetermined area. The out-of-date out-of-domain situation information includes the node orientation information of each node outside the predetermined area. Based on the node orientation information of each node outside the predetermined area, the topology relationship between the nodes outside the predetermined area (i.e., the out-of-domain virtual topology relationship) can be virtualized according to the predetermined virtual strategy, and this out-of-domain virtual topology relationship can roughly reflect the network topology relationship between the nodes outside the predetermined area.
[0102] When the target node is located outside the predetermined area, based on the in-domain real-time topology relationship and the out-of-domain virtual topology relationship, it is possible to roughly determine whether there is one or more routes from this node (i.e., the decision node) to the target node within the predetermined area (e.g., within k hops). For example, referring to Figure 7 , when the fourth node 710 determines that the eighth node 750 as the target node is located outside the predetermined area, by combining the in-domain real-time topology relationship and the out-of-domain virtual topology relationship, it is possible to roughly determine whether there is one or more routes from this node (i.e., the fourth node 710 as the decision node) to the eighth node 750 within the predetermined area.
[0103] If any exist (i.e., there is one or more routes from this node to the target node within the predetermined area), add the next-hop nodes after this node in the one or more routes to the direct forwarding subset .
[0104] If not (that is, there is no one or more routes from the current node to the target node within the predetermined area), then from the set of neighboring nodes composed of the neighboring nodes of the current node, a neighboring node whose Euclidean distance from the current node (the Euclidean distance between the neighboring node and the current node can be calculated based on the node orientation information of the neighboring node and the current node) is less than the Euclidean distance from the current node to the target node (the Euclidean distance between the current node and the target node can be calculated based on the node orientation information of the current node and the target node) can be selected through a greedy search method, and the neighboring nodes whose Euclidean distance from the current node is less than the Euclidean distance from the current node to the target node are added to the Euclidean forwarding subset. 。
[0105] If the Euclidean forwarding subset is selected ,further select from the Euclidean forwarding subset a node that has a next hop within the predetermined area (for example, there is a node J in it, and node J is located within the predetermined area. It can be determined whether there is a node connected to the next hop for node J within the predetermined area. If so, it means that node J is a node that has a next hop within the predetermined area). If a node that has a next hop within the predetermined area is selected from the Euclidean forwarding subset ,add the nodes in the Euclidean forwarding subset that have a next hop within the predetermined area to the priority forwarding subset 。
[0106] Thus, the candidate node set composed of nodes that meet the data forwarding requirements can include the "direct forwarding subset " or the "Euclidean forwarding subset and the priority forwarding subset ". Different cases are used to collect candidate next-hop nodes in these subsets, which can effectively ensure that a suitable target next-hop node can be obtained in the subsequent search.
[0107] Furthermore, in one embodiment, referring to Figure 9 ,the in-domain real-time situation information includes the routing decision resource information of the nodes within the predetermined area, and the routing decision resource information includes node real-time state information and inter-node link information; the depth-first search from the candidate node set to obtain the target next-hop node may include:
[0108] Step S910, if the direct forwarding subset is not empty, calculate the quality of service metric scores respectively according to the node real-time state information and inter-node link information of each node in the direct forwarding subset, and select the node with the highest quality of service metric score in the direct forwarding subset as the target next-hop node;
[0109] Step S920: If the direct forwarding subset is empty and the priority forwarding subset is non-empty, calculate the quality of service metric scores respectively according to the node real-time status information and the inter-node link information of each node in the priority forwarding subset, and select the node with the highest quality of service metric score in the priority forwarding subset as the target next-hop node;
[0110] Step S930: Otherwise, calculate the quality of service metric scores respectively according to the node real-time status information and the inter-node link information of each node in the Euclidean forwarding subset, and select the node with the highest quality of service metric score in the Euclidean forwarding subset as the target next-hop node.
[0111] First, if the direct forwarding subset is non-empty, then according to the node real-time status information and the inter-node link information of each node in the direct forwarding subset, the quality of service metric scores of each node in the direct forwarding subset can be calculated respectively, and the node with the highest quality of service metric score in the direct forwarding subset is selected as the target next-hop node. For example, referring to Figure 7 , if the direct forwarding subset includes a fifth node 720 and other nodes 760, the fourth node 710 can calculate the quality of service metric score Q1 according to the node real-time status information of the fifth node 720 and the inter-node link information between the fourth node 710 and the fifth node 720, and the fourth node 710 can calculate the quality of service metric score Q2 according to the node real-time status information of other nodes 760 and the inter-node link information between the fourth node 710 and other nodes 760. If Q1 is the highest, the fifth node 720 is taken as the target next-hop node after the fourth node 710.
[0112] Since when there is one or more routes from the current node to the target node within the predetermined area, the next-hop nodes after the current node in the one or more routes are added to the direct forwarding subset , any node in the direct forwarding subset will have relatively high transmission reliability as the target next-hop node. And further considering calculating the quality of service metric scores respectively according to the routing decision resource information of each node in the direct forwarding subset, and further screening the node with the highest quality of service metric score in the direct forwarding subset as the target next-hop node can further improve the quality of service of data transmission in the ad hoc network and further enhance the data transmission reliability.
[0113] Further, if the direct forwarding subset is empty and the priority forwarding subset is non-empty, then according to the priority forwarding subset The node real-time status information of each node and the link information between nodes in [the set] can be used to calculate the quality of service metric scores of each node in the preferred forwarding subset respectively, and select the preferred forwarding subset. The node with the highest quality of service metric score in [the set] is selected as the target next-hop node.
[0114] Since each node in the preferred forwarding subset further has a next-hop node within a predetermined area, selecting the node with the highest quality of service metric score in the preferred forwarding subset as the target next-hop node can ensure that the selected target next-hop node further has a next-hop node, thus avoiding the problem of routing holes in the routing decision-making process and further improving the reliability of data transmission. Refer to Figure 10 When the ninth node 1001 obtains the preferred forwarding subset through directed search, it will determine that the tenth node 1002 further has no next-hop node within the predetermined area, while the eleventh node 1003 has a next-hop twelfth node 1004 within the predetermined area. Therefore, only the eleventh node 1003 will be added to the preferred forwarding subset, and then as Figure 10 shown in (b) of [the reference], the eleventh node 1003 can be selected from the preferred forwarding subset as the target next-hop node of the ninth node 1001. In the related art, as Figure 10 shown in (a) of [the reference], if only the tenth node 1002 with the nearest Euclidean distance is selected as the target next-hop node through the greedy search method, and there is no next-hop node after the tenth node 1002, the data transmission will be aborted at the tenth node 1002, resulting in data transmission failure.
[0115] Furthermore, otherwise (that is, the direct forwarding subset is empty and the preferred forwarding subset is empty, while the Euclidean forwarding subset is non-empty), according to the node real-time status information of each node and the link information between nodes in the Euclidean forwarding subset the quality of service metric scores of each node in the Euclidean forwarding subset can be calculated respectively, and the node with the highest quality of service metric score in the Euclidean forwarding subset is selected as the target next-hop node. Taking the nodes in the Euclidean forwarding subset as the lowest-level selection, in the case of adding neighbor nodes whose Euclidean distance to this node is less than the Euclidean distance from this node to the target node to the Euclidean forwarding subset it is possible to ensure that an effective target next-hop node is searched as much as possible when the first two subsets are empty.
[0116] Among the steps in this embodiment, the manner in which the decision node (i.e., the aforementioned this node, which is the node that is making a decision on the next-hop node of the target) calculates the quality of service metric scores based on the real-time node state information of each node in the subset and the link information between nodes can be as follows: For each node, a weighted sum calculation is respectively performed according to the "real-time node state information of each node" and the "link information between each node and the decision node" to obtain the quality of service metric scores of each node. Among them, the lower the node load level of the node, the higher the node capability level, the lower the signal-to-noise ratio of the link between the node and the decision node, the higher the stability, the better the timeliness, and the higher the utilization rate, the higher the quality of service metric score of the node.
[0117] Further, in an embodiment, when the candidate node set is empty, the method further includes: obtaining a plurality of neighboring nodes around this node within the predetermined area through perimeter search; calculating the quality of service metric scores of each of the neighboring nodes according to the real-time node state information of each neighboring node and the link information between the neighboring node and this node; and selecting the neighboring node with the highest quality of service metric score among the plurality of neighboring nodes as the target next-hop node.
[0118] The decision node (i.e., the aforementioned this node, which is the node that is making a decision on the next-hop node of the target) discovers that the candidate node set is empty during the decision-making process, indicating that a routing hole has occurred. For example, as Figure 11 shown, when the thirteenth node 1101 is the decision node, a routing hole appears ahead. Among them, if the direct forwarding subset is empty and the Euclidean forwarding subset is empty after performing steps S810 to S830 in the aforementioned embodiment, it indicates that the candidate node set is empty.
[0119] When the candidate node set is empty (i.e., a routing hole has occurred), the decision node further obtains a plurality of neighboring nodes around this node within the predetermined area (for example, within the k-hop range of the decision node) through perimeter search. As Figure 11 shown, when the thirteenth node 1101 is the decision node, the neighboring nodes around this node (i.e., the thirteenth node 1101) within the predetermined area (for example, within the k-hop range of the decision node) obtained through perimeter search are respectively the fourteenth node 1102, the fifteenth node 1103, the sixteenth node 1104, and the seventeenth node 1105. Among them, during perimeter search, the neighboring nodes around the thirteenth node 1101 can be specifically selected in a clockwise manner with the thirteenth node 1101 as the center according to the right-hand rule.
[0120] When a routing hole appears before a decision node, the decision node calculates the quality-of-service metric scores of each neighboring node respectively according to the real-time status information of each neighboring node and the inter-node link information between the neighboring node and itself (i.e., the decision node). Then, it selects the neighboring node with the highest quality-of-service metric score among multiple neighboring nodes as the target next-hop node. Refer to Figure 11 the (c) part in Figure 11 so that the thirteenth node 1101 can combine perimeter search and quality-of-service metric, and finally select the seventeenth node 1105 with the highest quality-of-service metric score as the target next-hop node. In this implementation manner, a data transmission path of the thirteenth node 1101, the seventeenth node 1105, the eighteenth node 1106, and the nineteenth node 1107 can be finally formed. In the related art, refer to
[0121] the (b) part in
[0122] For the convenience of better implementing the data transmission method in the ad hoc network provided by the embodiments of the present application, the embodiments of the present application also provide a data transmission device in the ad hoc network based on the above data transmission method in the ad hoc network. The meanings of the nouns are the same as those in the above data transmission method in the ad hoc network, and the specific implementation details can refer to the description in the method embodiments. Figure 12 The block diagram of the data transmission device in the ad hoc network according to an embodiment of the present application is shown.
[0123] As Figure 12The data transmission device 1200 shown in the figure can be applied to each node in the ad hoc network. The data transmission device 1200 in the ad hoc network may include: The acquisition module 1210 can be used to: respectively acquire the global situation information, where the global situation information includes the in-domain real-time situation information and the out-of-domain less real-time situation information. The in-domain real-time situation information is obtained based on the node real-time situation information of the nodes within the predetermined area where each node is located, and the out-of-domain less real-time situation information is obtained based on the node less real-time situation information of the nodes outside the predetermined area; The transmission module 1220 can be used to: in response to a data transmission instruction, if the target node is within the predetermined area, perform an active routing decision and data forwarding based on the in-domain real-time situation information; if the target node is outside the predetermined area, perform an on-the-fly directed depth routing search and data forwarding by combining the in-domain real-time situation information and the out-of-domain less real-time situation information.
[0124] In one embodiment, the transmission module 1220 can be used to: perform a directed search among the nodes within the predetermined area according to the in-domain real-time situation information and the out-of-domain less real-time situation information to obtain a candidate node set composed of nodes that meet the data forwarding requirements; perform a depth-first search in the candidate node set to obtain a target next-hop node; send the notification data containing the service data to the target next-hop node, so that the target next-hop node continues to perform an on-the-fly directed depth routing search and data forwarding.
[0125] In one embodiment, the in-domain real-time situation information includes the in-domain network topology information of the nodes within the predetermined area, and the out-of-domain less real-time situation information includes the node orientation information of each node outside the predetermined area; The transmission module 1220 can be used to: determine whether there is one or more routes from the local node to the target node within the predetermined area according to the in-domain real-time topological relationship and the out-of-domain virtual topological relationship, where the in-domain real-time topological relationship is constructed based on the in-domain network topology information, and the out-of-domain virtual topological relationship is constructed based on the node orientation information in the out-of-domain less real-time situation information; if so, add the next-hop node after the local node in the one or more routes to the direct forwarding subset; if not, select the neighbor node whose Euclidean distance from the local node is less than the Euclidean distance from the local node to the target node from the neighbor node set of the local node, and add it to the Euclidean forwarding subset; select the node that has a next-hop within the predetermined area from the Euclidean forwarding subset and add it to the priority forwarding subset.
[0126] In one embodiment, the in-domain real-time situation information includes the routing decision resource information of the nodes in the predetermined area, and the routing decision resource information includes the node real-time status information; the transmission module 1220 may be configured to: if the direct forwarding subset is not empty, calculate the quality of service metric scores respectively according to the node real-time status information of each node in the direct forwarding subset, and select the node with the highest quality of service metric score in the direct forwarding subset as the target next-hop node; if the direct forwarding subset is empty and the preferential forwarding subset is not empty, calculate the quality of service metric scores respectively according to the node real-time status information of each node in the preferential forwarding subset, and select the node with the highest quality of service metric score in the preferential forwarding subset as the target next-hop node; otherwise, calculate the quality of service metric scores respectively according to the node real-time status information of each node in the European forwarding subset, and select the node with the highest quality of service metric score in the European forwarding subset as the target next-hop node.
[0127] In one embodiment, when the candidate node set is empty, the transmission module 1220 may be configured to: obtain a plurality of neighboring nodes around the local node in the predetermined area through peripheral search; calculate the quality of service metric scores of each of the neighboring nodes respectively according to the node real-time status information of each neighboring node and the node-to-node link information between the neighboring nodes and the local node; select the one with the highest quality of service metric score among the plurality of neighboring nodes as the target next-hop node.
[0128] In one embodiment, the in-domain real-time situation information includes the in-domain network topology information and the routing decision resource information of the nodes in the predetermined area; the transmission module 1220 may be configured to: determine a candidate path set from the local node to the target node according to the in-domain network topology information; perform path screening from the candidate path set according to the routing decision resource information to obtain a data transmission path; send the service data to the target node through the data transmission path.
[0129] In one embodiment, the routing decision resource information includes the node real-time status information and the node-to-node link information; the transmission module 1220 may be configured to: if there are at least two paths in the candidate path set, determine the paths that meet the predetermined quality of service index requirements from the candidate path set to obtain a preselected path set; if there are at least two paths in the preselected path set, calculate the combined weights of each path in the preselected path set according to the node real-time status information and the node-to-node link information; determine the path with the highest combined weight in the preselected path set as the data transmission path.
[0130] In one embodiment, the acquisition module 1210 in each of the nodes may be configured to: periodically share situation information in a one-hop fusion and forwarding manner according to an elastic period, so that each of the nodes can collect global situation information respectively.
[0131] In one embodiment, the acquisition module 1210 in each of the nodes may be configured to: share the updated situation information of the nodes within different hop count ranges received in a one-hop fusion and forwarding manner according to the elastic period corresponding to the hop count range, where the elastic period corresponding to the hop count range farther from each of the nodes is longer.
[0132] In one embodiment, each of the nodes uses the link layer to sense the in-domain real-time situation information, and each of the nodes uses the application layer to sense the out-of-domain less real-time situation information.
[0133] In one embodiment, the acquisition module 1210 in each of the nodes may also be configured to determine the elastic period in the following manner: dynamically determine a planned period according to the load status and the network status; obtain the elastic period according to the planned period.
[0134] In one embodiment, the acquisition module 1210 in each of the nodes may implement one of the following methods: add the planned period and the forwarding jitter time to obtain the elastic period; determine the planned period as the elastic period.
[0135] In one embodiment, the acquisition module 1210 in each of the nodes may: locally store the received node situation information for a target effective retention duration, where the target effective retention duration is greater than the elastic period.
[0136] In one embodiment, the acquisition module 1210 in each of the nodes may determine the target effective retention duration in the following manner: determine a predetermined effective retention duration matching the received node situation information; add the predetermined effective retention duration and the retention jitter time to obtain the target effective retention duration for locally storing the received node situation information.
[0137] In one embodiment, the in-domain real-time situation information includes the in-domain network topology information of the nodes within the predetermined area and the routing decision resource information, where the routing decision resource information includes the node real-time status information and the inter-node link information; the out-of-domain less real-time situation information includes the node orientation information of each node outside the predetermined area.
[0138] It should be noted that although several modules or units of the device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present application, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.
[0139] In addition, an embodiment of the present application also provides a node, as Figure 13 shown, Figure 13 which shows a block diagram of a node according to an embodiment of the present application. Specifically:
[0140] The node may include a processor 1301 with one or more processing cores, a memory 1302 with one or more computer-readable storage media, a power supply 1303, and other components. Those skilled in the art can understand that Figure 13 the node structure shown in does not constitute a limitation on the node, and it may include more or fewer components than shown in the figure, or combine certain components, or have different component arrangements. Among them:
[0141] The processor 1301 is the control center of the node, connecting various parts of the entire computer device through various interfaces and lines. By running or executing software programs and / or modules stored in the memory 1302, and by calling the data stored in the memory 1302, it executes various functions of the computer device and processes data, thereby monitoring the node as a whole. Optionally, the processor 1301 may include one or more processing cores; preferably, the processor 1301 may integrate an application processor and a modem processor. Among them, the application processor mainly processes the operating system, user interfaces, and application programs, etc., and the modem processor mainly processes wireless communication. It can be understood that the above modem processor may not be integrated into the processor 1301.
[0142] The memory 1302 can be used to store software programs and modules. The processor 1301 executes various functional applications and data processing by running the software programs and modules stored in the memory 1302. The memory 1302 may mainly include a program storage area and a data storage area. Among them, the program storage area may store the operating system, application programs required for at least one function (such as a sound playback function, an image playback function, etc.); the data storage area may store data created according to the use of the computer device. In addition, the memory 1302 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, or other volatile solid-state storage devices. Correspondingly, the memory 1302 may also include a memory controller to provide the processor 1301 with access to the memory 1302.
[0143] The node may further include a power supply 1303 for powering each component. Preferably, the power supply 1303 may be logically connected to the processor 1301 through a power management system, so as to manage functions such as charging, discharging, and power consumption management through the power management system. The power supply 1303 may also include any components such as one or more DC or AC power supplies, a recharge system, a power failure detection circuit, a power converter or inverter, a power status indicator, etc. It can be understood that the node may further include a communication unit, a network module, and so on.
[0144] Although not shown, the node may further include a display unit, etc., which will not be elaborated here. Specifically, in this embodiment, the processor 1301 in the node will, according to instructions, load the executable files corresponding to the processes of one or more computer programs into the memory 1302, and the processor 1301 will run the computer programs stored in the memory 1302, so as to implement various functions in the foregoing embodiments of the present application.
[0145] Those of ordinary skill in the art can understand that all or part of the steps in the various methods of the foregoing embodiments can be completed by a computer program, or by a computer program controlling related hardware. The computer program can be stored in a computer-readable storage medium and loaded and executed by a processor.
[0146] For this reason, the embodiments of the present application further provide a storage medium, in which a computer program is stored, and the computer program can be loaded by a processor to execute the steps in any method provided by the embodiments of the present application.
[0147] Among them, the storage medium may be a computer-readable storage medium, and the storage medium may include: read-only memory (ROM, Read Only Memory), random access memory (RAM, Random Access Memory), a magnetic disk or an optical disc, etc.
[0148] Since the computer program stored in the storage medium can execute the steps in any method provided by the embodiments of the present application, the beneficial effects that can be achieved by the methods provided by the embodiments of the present application can be realized. For details, see the foregoing embodiments, which will not be elaborated here.
[0149] After considering the specification and practicing the disclosed embodiments here, those skilled in the art will readily think of other implementation manners of the present application. The present application is intended to cover any variations, uses, or adaptive changes of the present application, and these variations, uses, or adaptive changes follow the general principles of the present application and include common general knowledge or conventional technical means in the technical field not disclosed in the present application.
[0150] It should be understood that the present application is not limited to the embodiments described above and shown in the drawings, and various modifications and changes can be made without departing from its scope.
Claims
1. A data transmission method in an ad hoc network, characterized in that: The ad hoc network includes a plurality of nodes, and the method is applied to each of the nodes. The method includes: Collecting global situation information respectively, the global situation information includes real-time situation information within the domain and less-than-real-time situation information outside the domain, the real-time situation information within the domain is obtained based on the node real-time situation information of the nodes within the predetermined area where each node is located, and the less-than-real-time situation information outside the domain is obtained based on the node less-than-real-time situation information of the nodes outside the predetermined area; In response to the data transmission instruction, if the target node is located in the predetermined area, active routing decision and data forwarding are performed based on the real-time situation information in the domain; If the target node is located outside the predetermined area, a directed deep routing search and data forwarding are performed in a transmit-and-calculate manner in combination with the real-time situation information within the domain and the less-than-real-time situation information outside the domain.
2. The method according to claim 1, characterized in that: The combining of the real-time situation information within the domain and the less-than-real-time situation information outside the domain to perform a directive deep routing search and data forwarding of a transmission-and-calculation formula includes: According to the real-time situation information within the domain and the less-than-real-time situation information outside the domain, a directed search is performed from the nodes within the predetermined area to obtain a candidate node set consisting of nodes that meet the data forwarding requirements; Perform a depth-first search from the candidate node set to obtain a target next-hop node; Notification data containing business data is sent to the target next-hop node, so that the target next-hop node continues to perform the directed deep routing search and data forwarding of the transmit-and-calculate formula.
3. The method according to claim 2, characterized in that The intra-domain real-time situation information includes intra-domain network topology information of nodes within the predetermined area, and the extra-domain less-real-time situation information includes node position information of each node outside the predetermined area; The step of performing a directed search from nodes in the predetermined area according to the real-time situation information within the domain and the sub-real-time situation information outside the domain to obtain a candidate node set consisting of nodes that meet the data forwarding requirements includes: Determine whether there is one or more routes from the current node to the target node in the predetermined area according to the real-time topological relationship within the domain and the virtual topological relationship outside the domain, wherein the real-time topological relationship within the domain is constructed according to the network topological information within the domain, and the virtual topological relationship outside the domain is constructed according to the node position information in the insufficient real-time situation information outside the domain; If so, adding the next hop node after the current node in the one or more routes to the direct forwarding subset; If it does not exist, then select a neighbor node whose Euclidean distance to the current node is less than the Euclidean distance from the current node to the target node from the neighbor node set of the current node, and add it to the Euclidean forwarding subset; A node having a next hop in the predetermined area is selected from the European forwarding subset and added to the priority forwarding subset.
4. The method according to claim 3, characterized in that The real-time situation information within the domain includes routing decision resource information of nodes within the predetermined area, and the routing decision resource information includes real-time status information of nodes; The performing a depth-first search from the candidate node set to obtain a target next-hop node includes: If the direct forwarding subset is not empty, respectively calculating the service quality metric score according to the node real-time status information of each node in the direct forwarding subset, and selecting the node with the highest service quality metric score in the direct forwarding subset as the target next hop node; If the direct forwarding subset is empty and the priority forwarding subset is not empty, the service quality metric score is calculated according to the node real-time status information of each node in the priority forwarding subset, and the node with the highest service quality metric score in the priority forwarding subset is selected as the target next hop node; Otherwise, the service quality metric score is calculated respectively according to the node real-time status information of each node in the Euclidean forwarding subset, and the node with the highest service quality metric score in the Euclidean forwarding subset is selected as the target next hop node.
5. The method according to claim 4, characterized in that When the candidate node set is empty, the method further includes: Obtaining multiple neighboring nodes around the node in the predetermined area through a surrounding search; Calculate the service quality metric score of each neighboring node according to the node real-time status information of each neighboring node and the node link information between the neighboring node and the current node; Select one of the multiple neighboring nodes with the highest service quality metric score as the target next hop node.
6. The method according to claim 1, characterized in that The intra-domain real-time situation information includes intra-domain network topology information and routing decision resource information of nodes in the predetermined area; The active routing decision and data forwarding based on the real-time situation information in the domain includes: Determine a set of candidate paths from the current node to the target node according to the intra-domain network topology information; Filtering paths from the candidate path set according to the routing decision resource information to obtain a data transmission path; The service data is sent to the target node through the data transmission path.
7. The method according to claim 6, characterized in that The routing decision resource information includes real-time node status information and inter-node link information; The step of screening paths from the candidate path set according to the routing decision resource information to obtain a data transmission path includes: If the candidate path set includes at least two paths, then determining a path that meets a predetermined service quality indicator requirement from the candidate path set to obtain a pre-selected path set; If the pre-selected path set includes at least two paths, calculating the combined weight of each path in the pre-selected path set according to the node real-time status information and the inter-node link information; The path with the highest combined weight in the pre-selected path set is determined as the data transmission path.
8. The method according to claim 1, characterized in that The collecting of global situation information respectively includes: Each of the nodes periodically shares situation information through a one-hop fusion forwarding method according to an elastic period, so that each of the nodes can collect global situation information.
9. The method according to claim 8, characterized in that Each of the nodes periodically shares situation information through a one-hop fusion forwarding method according to an elastic period, including: Each of the nodes will receive updated status information of nodes within different hop count ranges and share the status information through a one-hop fusion forwarding method according to the elastic period corresponding to the hop count range, wherein the elastic period corresponding to the hop count range farther from each of the nodes is longer.
10. The method according to claim 8, characterized in that Each of the nodes perceives the real-time situation information within the domain through a link layer, and each of the nodes perceives the less-than-real-time situation information outside the domain through an application layer.
11. The method according to claim 8, characterized in that Each of the nodes determines the elastic period in the following manner: Dynamically determine the planning cycle based on load status and network status; The flexible period is obtained according to the planned period.
12. The method according to claim 11, characterized in that The obtaining of the flexible cycle according to the planned cycle includes one of the following methods: Adding the planned period to the forwarding jitter time to obtain the elastic period; The planning period is determined as the flexible period.
13. The method according to claim 8, characterized in that The method further comprises: Each of the nodes locally stores the received node status information for a target effective retention time, wherein the target effective retention time is greater than the elastic period.
14. The method according to claim 13, characterized in that Each of the nodes determines the target effective holding time in the following manner: Determining a predetermined effective retention time for matching of the received node situation information; The predetermined effective holding time is added to the holding jitter time to obtain the target effective holding time of the received node status information stored locally.
15. The method according to any one of claims 1 to 14, characterized in that The real-time situation information within the domain includes the network topology information within the domain and the routing decision resource information of the nodes within the predetermined area, and the routing decision resource information includes the real-time status information of the nodes and the link information between the nodes; the less-than-real-time situation information outside the domain includes the node position information of each node outside the predetermined area.
16. A data transmission device in an ad hoc network, characterized in that: The ad hoc network includes a plurality of nodes, and the device is applied to each of the nodes, and the device includes: A collection module, used to collect global situation information respectively, wherein the global situation information includes real-time situation information within the domain and less-than-real-time situation information outside the domain, wherein the real-time situation information within the domain is obtained based on the node real-time situation information of the nodes within the predetermined area where each node is located, and the less-than-real-time situation information outside the domain is obtained based on the node less-than-real-time situation information of the nodes outside the predetermined area; The transmission module is used to: respond to the data transmission instruction, if the target node is located in the predetermined area, make active routing decisions and forward data based on the real-time situation information in the domain; if the target node is located outside the predetermined area, combine the real-time situation information in the domain and the less-than-real-time situation information outside the domain to perform a directed deep routing search and data forwarding of the transmission and calculation formula.
17. A storage medium, characterized in that: A computer program is stored thereon, and when the computer program is executed by a processor of a computer, the computer is caused to execute the method according to any one of claims 1 to 15.
18. A node, characterized in that: include: a memory storing a computer program; A processor reads a computer program stored in a memory to execute the method according to any one of claims 1 to 15.
Citation Information
Patent Citations
Route selection method for unmanned aerial vehicle bee colony network
CN110149671A
Information sharing method and device in ad hoc network, storage medium and sharing node
CN117098074A