Time-expanded graph based routing method for dtn networks
By constructing a time-spread graph and prioritizing nodes with sufficient cache for data hosting, the buffer overflow problem in DTN networks is solved, improving transmission success rate and network resource utilization. This approach is suitable for satellite networks with limited cache.
Patent Information
- Application Number
- CN202410984073.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-22
- Publication Date
- 2025-11-11
- Estimated Expiration
- 2044-07-22
AI Technical Summary
Existing DTN network routing methods fail to effectively consider node buffer resources, leading to buffer overflows and transmission failures, which affect the reliability of end-to-end communication.
Construct a time-spreading graph, combine node cache resources and topology information, calculate the shortest path route, and prioritize nodes with sufficient cache for data hosting to avoid cache overflow and improve transmission success rate.
It improves the reliability of data transmission and the utilization rate of network resources, reduces computational complexity, and is suitable for satellite networks with limited cache.
Smart Images

Figure CN118971936B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of communication technology, and specifically relates to a time-tolerant network (DTN) routing method that can be used in satellite networks with limited cache resources and intermittent connectivity. Background Technology
[0002] The 3GPP (3rd Generation Partnership Project) defines deployment scenarios for non-terrestrial networks (NTNs) and proposes using satellites as network access devices to provide 6G mobile communication system services to areas with underdeveloped terrestrial network infrastructure. Currently, an increasing number of commercial companies and research institutions have deployed or are rapidly deploying multiple satellite constellations. For example, SpaceX's Starlink satellite network had launched a total of 5,200 satellites as of October 1, 2023, with 4,849 in orbit. In March 2023, the last 36 satellites of the OneWeb first-generation internet constellation were launched, bringing the total number of satellites in orbit to 618. This demonstrates that in recent years, more and more countries and regions have attached great importance to the construction and development of satellite internet. However, intermittent connectivity is inevitable during the construction of satellite internet, as satellites cannot all be launched at once, leading to intermittent connections between satellites and between satellites and the ground. Therefore, solving the problem of intermittent connectivity during the construction of satellite internet is a pressing issue that needs to be addressed.
[0003] Furthermore, when conducting deep space exploration into the vast expanse of outer space, deep space spacecraft face enormous communication distances, resulting in significant path loss and communication delays in communication links. Additionally, due to factors such as the Earth and planetary spins, deep space communication spacecraft are typically blocked by celestial bodies for extended periods, leading to prolonged interruptions in communication links. Therefore, the problem of intermittent connectivity in deep space communication urgently needs to be addressed.
[0004] To address this, a latency-tolerant Direct Networking (DTN) architecture was proposed, which enables cross-time-slot data forwarding through a managed-store-forward mechanism. Furthermore, in satellite network scenarios with low resource utilization but congested links, the DTN architecture can utilize idle links to reliably transmit services, improving the quality of network service.
[0005] For DTN network scenarios in satellite networks, linear programming can be used to solve the problem by utilizing constraints and minimizing transmission delay as the objective function. However, this is essentially an integer linear programming problem, and the algorithm complexity increases exponentially with the number of network nodes. To address this, a graph-based approach has emerged to significantly reduce the algorithm complexity. For example, Burleigh, a researcher at NASA's Jet Propulsion Laboratory (JPL), proposed the Contact Graph Routing (CGR) algorithm to address the periodic and deterministic characteristics of space communication networks. This algorithm enables the construction of dynamic routes for time-varying topologies in satellite networks using a graph model and has been validated in satellite network DTN simulators and spaceflight experiments. However, because the CGR algorithm only utilizes prior knowledge of the satellite network for calculation and does not consider the impact of limited node buffers, the calculated next-hop node may discard data due to buffer limitations, resulting in a decrease in delivery rate.
[0006] Patent application CN201810942183.7 discloses a multicast routing method for a space DTN network, which improves the data delivery rate in the DTN network through multicast routing. However, due to the limited link bandwidth resources in the DTN network, this multicast routing method will greatly increase the link load, leading to link congestion. In addition, since this routing method does not consider the impact of limited node buffers in the network, transmitted data may be lost due to buffer overflow, resulting in a decrease in delivery rate and affecting the reliability of end-to-end communication. Summary of the Invention
[0007] The purpose of this invention is to address the above-mentioned problems by proposing a DTN network routing method based on time spread graphs, which fully considers node buffer resources, effectively avoids node buffer overflow, improves the delivery rate of transmitted data, and ensures the reliability of end-to-end communication.
[0008] To achieve the above objectives, the technical solution of the present invention includes the following steps:
[0009] (1) Construct a time-spread map based on the topology change time and link information of the satellite network. ,in For the selected set of connected time periods, For a set of nodes, Let be the set of edges. The set of inter-node delays For the set of node storage capabilities, Let be the set of edge weights;
[0010] (2) Calculate the source node In the time extension graph Routes from one node to another:
[0011] (2a) Definition Given the set of all nodes in the network, remove the source node from that set. ,in Let i be the i-th node in the network, 1≤i≤N, where N is the maximum number of nodes.
[0012] (2b) Define the set of candidate shortest paths as follows: and permanent node set :
[0013] Let the set of candidate shortest paths be defined. From the source node to the node within time period n The path length is According to the time spread graph The weight set in Calculate the distance from source node S in time period k to source node in the next time period. Path length And the neighboring nodes in the current time period Path length and add it to the set ;
[0014] Let there be a set of permanent nodes. The nodes whose shortest path has been determined within the mid-term n time interval The for and the source node in time period k Add to collection ;
[0015] (2c) Search The next node in the middle is the source node The nearest node, i.e., finding the set. minimum value Record its corresponding node The corresponding time period m and the minimum value , the minimum value from Remove from the middle and put the node And time period m as the node of the determined shortest path Add to permanent node collection , and if Then from Delete;
[0016] (2d) Based on the records Calculate and update the candidate shortest path set Shortest paths to each node:
[0017] For nodes in time period m+1 If time interval m+1 belongs to the set of connected time intervals Then calculate its path length. , and add to middle;
[0018] for Neighboring nodes during time period m ,like Then according to Is it in Perform the calculation of the current path within:
[0019] like Then calculate its path length. ,and Add to ;
[0020] like Then the calculated path length and The node arrives during time interval n. Path length In comparison, China retains and The smaller value in the middle is used as the new ;
[0021] (2e) The set of network nodes A and the set of shortest paths After the update is complete, determine whether the route calculation is finished:
[0022] If the network node set A is empty, or the candidate shortest path set Can is empty, the route calculation ends and proceeds to the next step;
[0023] If neither the network node set A nor the candidate shortest path set Can is empty, then return to step (2c);
[0024] (3) Calculate the start time based on the next route and construct a new time extension graph. Prepare for the next route calculation.
[0025] Compared with the prior art, the present invention has the following advantages:
[0026] 1. Ensured business accessibility:
[0027] This invention utilizes the predictability of satellite networks to establish a time-spread graph G. Paths are calculated in the time-spread graph G, and node caches can be fully utilized for managed forwarding of service data. Compared with existing technologies, this ensures that service data reaches the destination node as much as possible.
[0028] 2. Avoid node buffer overflow and improve transmission success rate:
[0029] This invention, by taking into account the node cache size when calculating routes, prioritizes nodes with sufficient cache for hosting, thus avoiding cache overflow and improving service reliability while increasing network resource utilization.
[0030] 3. Improved the efficiency of route calculation:
[0031] Existing business-oriented routing calculation methods require multiple route calculations based on different services. In contrast, this invention is a network-oriented routing calculation method. If the network topology and resources remain unchanged, only one route calculation is needed. Furthermore, this invention sets an upper bound on the route storage time, which avoids high computational overhead and improves the efficiency of routing calculation when a node has poor connectivity and has difficulty connecting with surrounding nodes. At the same time, because this invention fully utilizes the scalability of the time-spread graph, the relevant parameters from the previous route calculation can be fully utilized when performing the next route calculation, reducing the overhead of network modeling.
[0032] 4. Compatible with traditional IP networks, making it highly practical for engineering applications:
[0033] In the prior art, many DTN routing calculation methods are incompatible with traditional IP network protocol stacks. However, the network-oriented routing algorithm of this invention is implemented by improving the Dijstra algorithm of traditional IP networks. Therefore, it is compatible with traditional IP networks and has high engineering practicality. Attached Figure Description
[0034] Figure 1 This is the network scene diagram used in this invention;
[0035] Figure 2 This is a flowchart illustrating the implementation of the present invention;
[0036] Figure 3 This is the time-spread graph constructed in this invention. Detailed Implementation
[0037] The embodiments of the present invention will be described in detail below with reference to the accompanying drawings.
[0038] Reference Figure 1 The application scenario of this invention includes six nodes, including four satellite nodes and two ground station nodes, described as node 1, node 2, node 3, node 4, node 5 and node 6. There are seven possible transmission links between the nodes. Node 1 is the source node. Because the source node data can control the data entry time and does not occupy cache resources, the weight value of the storage edge of node 1 is small, indicating that it can be selected first. The cache edges of the other nodes are constrained by the cache resources of each node, so their weight values are larger.
[0039] Reference Figure 2 This example is in Figure 1 The implementation of the time-spread graph-based DTN network routing method in this scenario includes the following steps:
[0040] Step 1: According to Figure 1 Network scenario and node cache resource construction time extension graph G.
[0041] (1.1) Divide the connection time period according to the node connectivity status, assuming 3 connection time periods are taken. It can satisfy the upper bound of the maximum route calculation time. The requirements are used to obtain a set of network connectivity time periods. ,in , , , This indicates the moment of network change, and the width of the connectivity time interval in this network scenario is 1000ms. ;
[0042] (1.2) Construct the set of nodes in the time-extended graph G Sum of edges :
[0043] (1.2.1) Based on the node situation in the three connected time periods in the network scenario, the node set in the time extension graph G is obtained as follows: ,in Indicates the intrinsic connectivity period of a set The i-th node in, and , ;
[0044] (1.2.2) Based on the connection relationships of nodes in the three time periods of the network scenario, the set of transmission edges for each time period in the time extension graph G is obtained as follows: ,in For time period The transmission link between internal nodes i and j; and the set of storage edges between each time period is obtained as follows. Finally, we obtain the edge set. ,in For node i in time period and time period Storage links between them;
[0045] (1.3) Construct the delay set in the time spread graph G Cache capability collection Edge weight set :
[0046] (1.3.1) Based on the network scenario, the transmission delay between nodes within each connectivity time period is obtained, where:
[0047] During the first connectivity time period 1, the latency between node 1 and node 2 is 12ms, the latency between node 2 and node 3 is 6ms, the latency between node 2 and node 4 is 8ms, and the latency between node 3 and node 4 is 15ms.
[0048] During the second connectivity time period 2, the latency between node 2 and node 3 is 6ms, the latency between node 2 and node 4 is 8ms, the latency between node 3 and node 4 is 15ms, the latency between node 3 and node 5 is 7ms, and the latency between node 4 and node 5 is 13ms.
[0049] During the third connection time period 3, the latency between node 1 and node 2 is 20ms, the latency between node 2 and node 3 is 6ms, the latency between node 3 and node 5 is 7ms, the latency between node 4 and node 5 is 13ms, and the latency between node 5 and node 6 is 25ms.
[0050] Based on the time delay information within the three connected time periods mentioned above, a time delay set is obtained. ,in Indicates time period The propagation delay of the link between internal node i and node j; if the propagation delay is greater than the length of the current connection period, i.e. ,but ;
[0051] (1.3.2) Based on the caching capabilities of each node in the network scenario, obtain the set of caching capabilities for each node. ,in Indicates that node i is in the time period When the time comes Storage capacity, i.e., the storage capacity of node i during the time period When the time comes The amount of data that can be cached; since the business data of source node 1 can control the data entry time, it does not occupy cache resources, therefore the source node of node 1... Setting it to the maximum value indicates that it can be selected first; while the cache edges of the other nodes are constrained by the cache resources of each node, and their values are smaller.
[0052] (1.3.3) According to the above time delay set and caching capabilities This yields the weight set of the transmission edges between nodes within each time period. and the weights of node cache edges at different time periods. Based on the weight set of the transmission edges Mid-link weights and delay sets The corresponding link latency is positively correlated, and the weight set of the cached edges. Mid-link weight and caching capability set The negative correlation between the caching capabilities of corresponding nodes is used to obtain a weight set. ;
[0053] (1.4) The parameters obtained from the above steps constitute the extended graph. ,like Figure 3 As shown.
[0054] Step 2: Calculate the source node In the time extension graph Routes from one node to another:
[0055] (2.1) Definition Given the set of all nodes in the network, remove the source node from that set. ,in Let i be the i-th node in the network, 1≤i≤N, where N is the maximum number of nodes.
[0056] (2.2) Define the set of candidate shortest paths as follows: and permanent node set :
[0057] Let the set of candidate shortest paths be defined. From the source node to the node within time period n The path length is According to the time spread graph The weight set in Calculate the distance from source node S in time period k to source node in the next time period. Path length And the neighboring nodes in the current time period Path length and add it to the set :
[0058]
[0059]
[0060] in Let S be the storage edge weights of node S from time period k to time period k+1. Let S be the weight of the transmission edge from node S to node j within time period k. , ;
[0061] (2.3) Let there be a set of permanent nodes. The nodes whose shortest path has been determined within the mid-term n time interval The for and the source node in time period k Add to collection ;
[0062] (2.4) Searching The next node in the middle is the source node The nearest node, i.e., finding the set. Minimum value in: ,
[0063] in For set Any path length within;
[0064] (2.5) Record the shortest path corresponding nodes The corresponding time period m and the minimum value , the minimum value from Remove from the middle and put the node And time period m as the node of the determined shortest path Add to permanent node collection , and if Then from Delete;
[0065] (2.6) Based on the records Calculate and update the candidate shortest path set Shortest paths to each node:
[0066] For nodes in time period m+1 If time interval m+1 belongs to the set of connected time intervals Then calculate its path length. , and add to middle:
[0067]
[0068] in Let be the storage edge weight of node i from time period k to time period k+1.
[0069] for Neighboring nodes during time period m ,like Then according to Is it in Perform the calculation of the current path within:
[0070] like Then calculate its path length. ,and Add to ;
[0071] like Then the calculated path length and The node arrives during time interval n. Path length In comparison, China retains and The smaller value in the middle is used as the new ;
[0072] For path length or The calculation formula is as follows:
[0073]
[0074]
[0075] in Let be the weight of the transmission edge from node i to node j within time period m. ;
[0076] (2.7) The set of network nodes A and the set of shortest paths After the update is complete, determine whether the route calculation is finished:
[0077] If the network node set A is empty, or the candidate shortest path set Can is empty, the route calculation ends and proceeds to the next step;
[0078] If neither the network node set A nor the candidate shortest path set Can is empty, then return to step (2.4).
[0079] This example is for Figure 1 In the network scenario, by initializing the network scenario node set, shortest path set, permanent node set, and performing ten route calculations, the time spread graph of source node 1 is obtained. The routing to other nodes is implemented as follows:
[0080] Step 1: Initialize the set of all nodes in the network scenario. Shortest path set and permanent node set :
[0081] Initialize collection The set contains all nodes in the network scenario. Removing source node 1 from the set yields... ;
[0082] Let the path length from source node 1 to neighbor node 2 of time period 1 be... ;
[0083] Let the path length from source node 1 to node 1 within time period 2 be... and add it to ,Right now ;
[0084] Take source node 1 within time period 1 as the node with the determined shortest path. Add to ,Right now ;
[0085] Step 2, first calculation of the shortest path:
[0086] 2-1) Select Find the shortest path, record the corresponding node and time period of the shortest path, and output the shortest transmission path:
[0087] Select path length minimum value , take it from Delete, i.e. ;
[0088] Node 2 within time period 1 is considered the node with the determined shortest path. Add to ,Right now ;
[0089] The node for the shortest path is determined to be node 2, and since node... Therefore, node 2 is removed from the set. Delete, i.e. To determine the shortest transmission path from source node 1 to node 2. ;
[0090] 2-2) Identify the neighboring nodes whose path lengths need to be calculated or updated, and calculate or update their path lengths:
[0091] The neighboring nodes of node 2 within time period 1 include node 2 within time period 2, node 1 within time period 1, node 3 within time period 1, and node 4 within time period 1, and node 1 within time period 1 is the node with the determined shortest path, i.e. Based on the neighbor node information, the neighbor nodes that need to be calculated and updated for path length are: node 2 in time period 2, node 3 in time period 1, and node 4 in time period 1.
[0092] Calculate the path length from source node 1 to node 2 within time period 2. 1. Path length from source node 1 to node 3 within time period 1 The path length from source node 1 to node 4 within time period 1. :
[0093] ,
[0094] ,
[0095] ,
[0096] Then , , Add to ,Right now ;
[0097] Step 3, calculate the shortest path for the second time:
[0098] 3-1) Select Find the shortest path, record the corresponding node and time period of the shortest path, and output the shortest transmission path:
[0099] Select path length minimum value , take it from Delete, i.e. ;
[0100] Node 3 within time period 1 is considered the node with the determined shortest path. Add to ,Right now ;
[0101] Since the node with the shortest path has been determined to be node 3 and node Therefore, node 3 is removed from the set. Delete, i.e. To determine the shortest transmission path from source node 1 to node 3. ;
[0102] 3-2) Identify the neighboring nodes whose path lengths need to be calculated or updated, and calculate or update their path lengths:
[0103] The neighboring nodes of node 3 within time period 1 include node 3 within time period 2, node 2 within time period 1, and node 4 within time period 1, and node 2 within time period 1 is the node with the determined shortest path, i.e. Based on the neighbor information, the nodes whose path lengths need to be calculated and updated are: node 3 in time period 2 and node 4 in time period 1;
[0104] Calculate the path length from source node 1 to node 3 within time period 2. The path length from source node 1 to node 4 in time period 1. :
[0105]
[0106]
[0107] because Greater than set In And the smaller of 41 and 28 should be retained, therefore for No update is required, just... Add to ,Right now ;
[0108] Step 4, calculate the third shortest path:
[0109] 4-1) Select Find the shortest path, record the corresponding node and time period of the shortest path, and output the shortest transmission path:
[0110] Select path length minimum value , take it from Delete it at this time ;
[0111] Node 4 within time period 1 is considered the node with the determined shortest path. Add to ,Right now ;
[0112] Since the node with the shortest path has been determined to be node 4 and node Therefore, node 4 is removed from the set. Delete, i.e. It determines the shortest transmission path from source node 1 to node 4 as follows: ;
[0113] 4-2) Identify the neighboring nodes whose path lengths need to be calculated or updated, and calculate or update their path lengths:
[0114] Based on the neighboring nodes of node 4 within time period 1, including node 4 within time period 2, node 2 within time period 1, and node 3 within time period 1, and considering that nodes 2 and 3 within time period 1 are nodes with a determined shortest path, i.e. Based on the neighbor node information, the node whose path length needs to be calculated and updated is: node 4 within time period 2;
[0115] Calculate the path length from source node 1 to node 4 within time period 2. :
[0116]
[0117] Then Add to ,Right now ;
[0118] Step 5, fourth calculation of the shortest path:
[0119] 5-1) Select Find the shortest path, record the corresponding node and time period of the shortest path, and output the shortest transmission path:
[0120] Select path length minimum value , take it from Delete it at this time ;
[0121] Node 1 within time period 2 is considered the node with the determined shortest path. Add to ,Right now ;
[0122] Since node 1 has been determined as the node with the shortest path, and node 1 Therefore, for sets No updates will be performed.
[0123] 5-2) Identify the neighboring nodes whose path lengths need to be calculated or updated, and calculate or update their path lengths:
[0124] Based on the neighbor node information of node 1 in time period 3, which includes the neighbor nodes of node 1 in time period 2, the node whose path length needs to be calculated and updated is determined to be node 1 in time period 3.
[0125] Calculate the path length from source node 1 to node 1 in time period 3. :
[0126]
[0127] Then Add to ,Right now ;
[0128] Step 6, the fifth calculation of the shortest path:
[0129] 6-1) Select Find the shortest path, record the corresponding node and time period of the shortest path, and output the shortest transmission path:
[0130] Select path length minimum value , take it from Delete it at this time ;
[0131] Node 1 within time period 3 is considered the node with the determined shortest path. Add to ,Right now ;
[0132] Since the node for the shortest path has been determined to be node 1, and node 1... Therefore, for sets No updates will be performed.
[0133] 6-2) Identify the neighboring nodes whose path lengths need to be calculated or updated, and calculate or update their path lengths:
[0134] Based on the neighbor node information of node 2 within time period 3, which is included in the neighbor nodes of node 1 within time period 3, the node whose path length needs to be calculated and updated is determined to be node 2 within time period 3.
[0135] Calculate the path length from source node 1 to node 2 within time period 3. :
[0136]
[0137] Then Add to ,Right now ;
[0138] Step 7, sixth calculation of the shortest path:
[0139] 7-1) Select Find the shortest path, record the corresponding node and time period of the shortest path, and output the shortest transmission path:
[0140] Select path length minimum value , take it from Delete it at this time ;
[0141] Node 2 within time period 3 is considered the node with the determined shortest path. Add to ,Right now ;
[0142] Since the node with the shortest path has been determined to be node 2, and node 2... Therefore, for sets No updates will be performed.
[0143] 7-2) Identify the neighboring nodes whose path lengths need to be calculated or updated, and calculate or update their path lengths:
[0144] Based on the neighboring nodes of node 2 within time period 3, including the neighboring node information of node 3 within time period 3, the node whose path length needs to be calculated and updated is determined to be node 3 within time period 3.
[0145] Calculate the path length from source node 1 to node 3 within time period 3. :
[0146]
[0147] Will Add to ,Right now ;
[0148] Step 8, seventh calculation of the shortest path:
[0149] 8-1) Select Find the shortest path, record the corresponding node and time period of the shortest path, and output the shortest transmission path:
[0150] Select path length minimum value , take it from Delete it at this time ;
[0151] Node 3 within time period 3 is considered the node with the determined shortest path. Add to ,Right now ;
[0152] Since the node with the shortest path has been determined to be node 3, and node 3... Therefore, for sets No updates will be performed.
[0153] 8-2) Identify the neighboring nodes whose path lengths need to be calculated or updated, and calculate or update their path lengths:
[0154] Based on the neighboring node information of node 3 within time period 3, including the neighboring node information of node 5 within time period 3, the node whose path length needs to be calculated and updated is determined to be: node 3 within time period 3.
[0155] Calculate the path length from source node 1 to node 5 within time period 3. :
[0156]
[0157] Then Add to ,Right now ;
[0158] Step 9, the eighth calculation of the shortest path:
[0159] 9-1) Select Find the shortest path, record the corresponding node and time period of the shortest path, and output the shortest transmission path:
[0160] Select path length minimum value , take it from Delete it at this time ;
[0161] Node 5 within time period 3 is considered the node with the determined shortest path. Add to ,Right now ;
[0162] Since the node with the shortest path has been determined to be node 5, and node 5... Therefore, node 5 is removed from the set. Delete, i.e. This determines the shortest transmission path from source node 1 to node 5 as follows: ;
[0163] 9-2) Identify the neighboring nodes whose path lengths need to be calculated or updated, and calculate or update their path lengths:
[0164] Based on the neighboring node information of node 5 within time period 3, including the neighboring node information of node 4 and node 6 within time period 3, the nodes whose path length needs to be calculated and updated are determined to be: node 3 and node 6 within time period 3.
[0165] Calculate the path length from source node 1 to node 4 within time period 3. and the path length to node 6 within time period 3. :
[0166]
[0167]
[0168] And and Add to , ;
[0169] Step 10, the ninth calculation of the shortest path:
[0170] 10-1) Select Find the shortest path, record the corresponding node and time period of the shortest path, and output the shortest transmission path:
[0171] Select path length minimum value , take it from Delete it at this time ;
[0172] Node 4 within time period 3 is considered the node with the determined shortest path. Add to ,Right now ;
[0173] Since the node with the shortest path has been determined to be node 4, and node 4... Therefore, for sets No updates will be performed.
[0174] 10-2) Identify the neighboring nodes whose path lengths need to be calculated or updated, and calculate or update their path lengths:
[0175] The neighboring nodes of node 4 within time period 3 include node 5 within time period 3, and node 5 within time period 3 is the node with the determined shortest path. The neighbor node information was used to determine that there were no neighbor nodes for which the path length needed to be calculated and updated;
[0176] Step 11, the tenth calculation of the shortest path:
[0177] 11-1) Select Find the shortest path, record the corresponding node and time period of the shortest path, and output the shortest transmission path:
[0178] Select path length minimum value , take it from Delete it at this time ;
[0179] Node 6 within time period 3 is considered the node with the determined shortest path. Add to ,Right now ;
[0180] Since the node with the shortest path has been determined to be node 6, and node 6... Therefore, node 6 is removed from the set. Delete, i.e. This determined the shortest transmission path from source node 1 to node 6 as follows: ;
[0181] 11-2) Identify the neighboring nodes whose path lengths need to be calculated or updated, and calculate or update their path lengths:
[0182] The neighboring nodes of node 6 within time period 3 include node 5 within time period 3, since node 5 within time period 3 is the node with the determined shortest path. Therefore, it is not necessary to update the neighbor nodes for the path length, and according to Once the conditions for stopping the route calculation are met, the route calculation ends, and the routes from source node 1 to all other nodes in the network are obtained.
[0183] Step 3: Calculate the start time based on the next route and construct a new time-extended graph. .
[0184] (3.1) Based on connectivity status, the start time of the next route calculation is... Preserve the set of network connectivity time periods In and According to the upper bound of the calculation time The requirement is to obtain a new set of network connectivity time periods. ;
[0185] (3.2) According to as follows Figure 3 The time extension diagram shown Preserve the set of nodes edge set Inter-node delay set Node storage capacity set The set of edge weights In and The relevant parts of the time period, and according to the set Extending backwards yields a new time-extended graph. Prepare for the next route calculation.
[0186] The above description is merely a specific example of the present invention and does not constitute any limitation on the present invention. Obviously, those skilled in the art, after understanding the content and principles of the present invention, may make various modifications and changes in form and details without departing from the principles and structure of the present invention. However, these modifications and changes based on the ideas of the present invention are still within the scope of protection of the claims of the present invention.
[0187] It should be noted that the step numbers in the specification and claims of this invention are only for the purpose of clearly describing the embodiments of the invention and facilitating understanding, and their order is not limited.
Claims
1. A DTN network routing method based on time-spread graphs, characterized in that, Includes the following steps: (1) Construct a time-spread map based on the topology change time and link information of the satellite network. ,in For the selected set of connected time periods, For a set of nodes, Let be the set of edges. The set of inter-node delays For the set of node storage capabilities, Let be the set of edge weights; (2) Calculate the source node In the time extension graph Routes from one node to another: (2a) Definition Given the set of all nodes in the network, remove the source node from that set. ,in Let i be the i-th node in the network, 1≤i≤N, where N is the maximum number of nodes; (2b) Define the set of candidate shortest paths as follows: and permanent node set : Let the set of candidate shortest paths be defined. From the source node to the node within time period n The path length is According to the time spread graph The weight set in Calculate the distance from source node S in time period k to source node in the next time period. Path length Sum of neighboring nodes in the current time period Path length and add it to the set ; where the calculation is performed from source node S to the source node in the next time period. Path length Sum of neighboring nodes in the current time period Path length The formula is as follows: , , in Let S be the storage edge weights of node S from time period k to time period k+1. Let S be the weight of the transmission edge from node S to node j within time period k. , ; Let there be a set of permanent nodes. The nodes whose shortest path has been determined within the time interval n are: and the source node in time period k Add to collection ; (2c) Search The next node in the middle is the source node The nearest node, i.e., finding the set. minimum value Record its corresponding node The corresponding time period m and the minimum value , the minimum value from Remove from the middle and put the node And time period m as the node of the determined shortest path Add to permanent node collection , and if Then from Delete; (2d) Based on the records Calculate and update the candidate shortest path set Shortest paths to each node: For nodes in time period m+1 If time interval m+1 belongs to the set of connected time intervals Then calculate its path length. , and add to middle; for Neighboring nodes during time period m ,like Then according to Is it in Perform the calculation of the current path within: like Then calculate its path length. and will Add to ; like Then the calculated path length and The node arrives during the m-period. Path length In comparison, China retains and The smaller value in the middle is used as the new ; (2e) The set of network nodes A and the set of shortest paths After the update is complete, determine whether the route calculation is finished: If the network node set A is empty, or the candidate shortest path set Can is empty, the route calculation ends and proceeds to the next step; If neither the network node set A nor the candidate shortest path set Can is empty, then return to step (2c); (3) Calculate the start time based on the next route and construct a new time extension graph. Prepare for the next route calculation.
2. The method according to claim 1, characterized in that, In step (1), a time-spread map is constructed based on the topology change times and link information of the satellite network. The implementation is as follows: (1a) Divide the network into several connectivity time periods based on the network connectivity status. ,get A collection of time periods And maintain the network connectivity unchanged within a certain time period. in: This represents the size of the nth time interval. The time of the nth connectivity change, and the number of connectivity time intervals. From the upper bound of maximum storage time The restrictions should meet the following requirements. , for The first time period The start time, i.e., the start time of route calculation. for The last time period End time; (1b) Define the set of nodes Define the edge set , in: Indicates the intrinsic connectivity period of a set The i-th node in, and , , This represents the total number of nodes in the network. For the set of transmission edges, For time period The transmission link between internal nodes i and j; For storing edge sets, For node i in time period and time period Storage links between them; (1c) Define the propagation delay set Define the set of node storage capabilities , in: Indicates time period The link propagation delay between internal node i and node j is determined by the time required for data to travel from node i to node j: if there is no link connection between node i and node j, i.e. ,but If the propagation delay is greater than the length of the current connected time period, that is ,but ; Indicates that node i is in the time period When the time comes Storage capacity, i.e., the storage capacity of node i during a given time period When the time comes The amount of cacheable data is limited because the business data in source node S has controllable network access time and does not occupy cache resources. Therefore, the source node... Set to the maximum value; (1d) Define the weight set , in For the set of transmission edge weights, For time period The weight of the transmission link between internal nodes i and j, whose size is related to the set of inter-node delays. Propagation delay of corresponding link Positive correlation For storing edge sets, For node i in time period When the time comes The weight of the storage link, its size is related to the set of node storage capabilities. Storage capacity of the corresponding node Negative correlation.
3. The method according to claim 1, characterized in that, In step (2c) The next node in the middle is the source node The nearest node, i.e., finding the set. minimum value The formula is as follows: , in For set Any path length within.
4. The method according to claim 1, characterized in that, Step (2d) for nodes in time interval m+1 If the time period is m+1 Then calculate its path length. The formula is as follows: , in Let be the storage edge weight of node i from time period m to time period m+1. .
5. The method according to claim 1, characterized in that, Step (2d) for nodes within time period m If it is not a node with a determined shortest path, i.e. Then calculate its path length. or The formula is as follows: , , in Let be the weight of the transmission edge from node i to node j within time period m. .
6. The method according to claim 1, characterized in that, In step (3), the start time is calculated based on the next route, and a new time extension graph is constructed. The implementation is as follows: (3a) Obtain the route used for the next route calculation The time period set is And satisfy ,in for The start time of the first time interval, which is also the start time of the next route calculation. for The end time of the last time period in the middle, that is Depend on Formed by pushing backward; (3b) Obtain Network node and link information within a time frame, including Node set within the time range edge set Inter-node delay set Node storage capacity set The set of edge weights ; (3c) Based on the relevant parameters in (3a) and (3b), a new time spread plot is obtained. Prepare for the next route calculation.
Citation Information
Patent Citations
A multicast routing method for spatial DTN networks
CN108989224B
Multi-topology shortest routing search method of time-varying satellite network
CN108964746A
Multi-path maximum throughput star group network remote sensing service transmission method
CN109905281A