A routing method and system for low-Earth orbit satellite constellation networks

By calculating the entire network routing table at the ground station and dynamically maintaining link status information at satellite nodes, combined with global and local load balancing strategies, the problem of insufficient one-hop routing in low-Earth orbit satellite networks is solved, achieving more efficient load balancing and packet delivery.

CN116346211BActive Publication Date: 2026-01-30BEIJING INFORMATION SCI & TECH UNIV
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202310449553.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-04-24
Publication Date
2026-01-30
Estimated Expiration
2043-04-24

AI Technical Summary

Technical Problem

Existing routing methods for low-Earth orbit satellite networks can only perform traffic splitting within a one-hop range, which cannot effectively handle large-scale traffic congestion, leading to network performance degradation and packet loss.

Method used

The ground station calculates the entire network routing table and floods it to the satellite nodes. The satellite nodes dynamically maintain the link status information within a two-hop range. Combined with the link congestion awareness mechanism, global and local load balancing strategies are adopted to achieve load balancing.

Benefits of technology

It enhances the congestion awareness of satellite nodes, updates routes in a timely manner, effectively responds to changes in network topology and traffic, improves the packet delivery success rate, and strengthens the network load balancing capability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116346211B_ABST
    Figure CN116346211B_ABST
Patent Text Reader

Abstract

This invention relates to a routing method and system for low-Earth orbit satellite constellation networks. This method enhances the congestion awareness of satellite nodes to improve the routing selection and traffic distribution effect. Based on real-time link status information, routes are updated promptly to better respond to changes in satellite network topology and network traffic, resulting in a higher packet delivery success rate. It improves congestion awareness to obtain link load information within a two-hop range and enhances network load balancing by providing a wider range of routing options, enabling satellite nodes to make routing and forwarding decisions with a broader routing perspective.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of satellite communication technology, specifically to a routing method and system for low-Earth orbit satellite constellation networks. Background Technology

[0002] Satellite communication networks composed of low-Earth orbit (LEO) satellites can achieve seamless global coverage, effectively filling the coverage gaps of existing terrestrial internet networks and addressing the internet connectivity needs of users in remote areas, in the air, and at sea. At the same time, LEO satellites can provide services to areas and scenarios where terrestrial mobile communications cannot, with wide applications in aviation, ocean shipping, fisheries, oil, environmental monitoring, outdoor off-roading, and military fields.

[0003] In practice, population density varies significantly across different regions, and user needs differ greatly between countries. This leads to uneven resource utilization and unbalanced network load in satellite networks. Inevitably, inter-satellite packets tend to concentrate on one or more paths, and the limited onboard resources struggle to forward these packets in a timely manner. When the packet arrival rate approaches link capacity, queuing delays increase dramatically; when the packet arrival rate exceeds link capacity, buffer queues overflow, resulting in significant packet loss and wasting the transmission capacity of upstream links used to forward these packets. To prevent a single path from impacting the overall capacity of the satellite network, effective load balancing techniques are needed to address this issue. Currently, there are two main load balancing routing algorithms for low-Earth orbit (LEO) satellites: one is a centralized load balancing routing algorithm, which pre-determines specific ground or satellite nodes as central nodes. Network information is collected by the central node, routes are calculated uniformly, and then distributed to various satellite nodes in the network in a specific order. The other is a distributed load balancing routing algorithm, where each satellite node stores its own routing table, calculates and forwards data packets hop-by-hop, making the single-hop transmission process more independent and flexible.

[0004] Existing load balancing routing schemes for single-layer satellite networks can be broadly categorized into centralized load balancing schemes based on global information and distributed load balancing schemes based on local information. Centralized load balancing routing schemes can make routing decisions based on the overall network traffic status, achieving the best load balancing effect. However, they often struggle to respond promptly to problems caused by link failures and sudden network traffic surges, exhibiting a lag in improving local changes. Furthermore, they require frequent acquisition of link information for the entire satellite constellation, undoubtedly increasing network pressure. One approach proposes calculating satellite network propagation delays at ground stations and storing the data on the satellites. By collecting uncertain network-wide information such as queuing delays, node and link failures, traffic can be balanced on low-load paths. However, this approach can only distribute traffic to the lowest-cost path when traffic is excessively high, resulting in slow congestion adjustment. While distributed load balancing routing algorithms can handle sudden link changes in a very short time, their stability is still inferior to centralized schemes. Another approach proposes exchanging congestion information between neighboring satellite nodes to avoid sending data packets to heavily loaded nodes, thus preventing packet loss. While this approach can quickly alleviate local congestion, it can only divert traffic within a one-hop range and cannot handle large-scale traffic congestion.

[0005] To facilitate understanding of the content of this patent, the relevant industry technical terms are explained below:

[0006] I. Definition of Single-Hop

[0007] In a traditional wireless LAN, each client accesses the network through a wireless link connected to the access point (AP).

[0008] For users to communicate with each other, they must first access a fixed access point; such a network is called a single-hop network.

[0009] II. Definition of Multi-hop

[0010] In a wireless multi-hop network, any wireless device can act as both an access point (AP) and a router. Each node in the network can send and receive signals, and each node can communicate directly with one or more peer nodes. This type of network is called a multi-hop network.

[0011] This can also be understood as information transmission being accomplished through forwarding by multiple nodes on the link. Each node can communicate directly with one or more peer nodes, and multi-hop means multiple forwardings.

[0012] III. Detailed Explanation and Application of Multi-Hop Intermediate Nodes

[0013] In a wireless multi-hop network, the typical path from the source node to the destination node consists of multiple hops, with intermediate nodes acting as forwarding nodes. Therefore, nodes in a wireless multi-hop network typically have two functions: 1. Acting as end nodes to generate or receive data packets; 2. Acting as routers to forward data packets from other nodes.

[0014] The hop count is the number of router output ports that a packet must pass through. Summary of the Invention

[0015] In view of this, the purpose of the present invention is to provide a routing method and system for low-Earth orbit satellite constellation networks, so as to solve the problem that the existing network routing methods can only perform traffic splitting within a one-hop range and cannot handle large-scale traffic congestion.

[0016] According to a first aspect of the present invention, a low-Earth orbit satellite network routing method is provided, comprising:

[0017] Step S1: The ground station calculates the entire network routing table based on the inter-satellite link connection status of the satellite network topology and floods the entire network routing table to all satellite nodes in the network; the entire network routing table includes: the shortest path between any two satellites in the entire network calculated by the ground station using the shortest path algorithm;

[0018] Step S2: Satellite nodes dynamically maintain link status information within a two-hop range using a link congestion awareness and congestion decision mechanism; the link status information includes: inter-satellite link connection status and link load status;

[0019] Step S3: The satellite node selects different load balancing strategies based on the link status information; the load balancing strategies include: global load balancing and local load balancing.

[0020] Further, step S2 includes:

[0021] Step S21: Each satellite node periodically sends link state detection messages to neighboring satellite nodes connected via inter-satellite links, and receives link state reply messages from neighboring satellite nodes. d Within a certain time interval, the link connection status between itself and neighboring satellite nodes is determined based on the received link status response messages.

[0022] Step S22: For any satellite node, at T d Within a certain time interval, if the status is connected, the link load status between itself and the neighboring satellite nodes is determined by reading the specific content of the link status reply message fed back by the neighboring satellite nodes.

[0023] Furthermore, the link load status in step S22 is calculated according to the following formula (1):

[0024]

[0025] Among them, w i Let q be the link load weight in direction i, where i = 1, 2, 3, and 4 represent the up, down, left, and right directions of the current satellite node, respectively. Let q be the total message length of the queue on a given adjacent link. max The queue threshold is n, and the queue threshold capacity is the same for all four inter-satellite links. mid n represents the number of times the link was busy within a past statistical period. high n represents the number of times the link was busy within a past statistical period. total This represents the number of times the link status was automatically detected within the past statistical period. λ, α, β, and γ are adjustable parameters that will be adjusted appropriately based on the network topology and load.

[0026] w i ≤w L This indicates that the link load is idle, w L <w i ≤w H This indicates that the link load is busy, w H <w i This indicates that the link load is busy, where w L and w H The threshold is adjustable.

[0027] Furthermore, the method also includes:

[0028] The link status reply message carries the queue status of the current satellite node and neighboring satellite nodes. The link load weight within the two-hop range is calculated by the following formula (2):

[0029] W ij =w i +w j (2)

[0030] Among them, w i represents the link load weight of inter-satellite links directly connected to neighboring nodes of the source node, excluding the inter-satellite link in direction j; represents the load weight of the neighboring satellite nodes in the other three directions; w represents the load weight of the inter-satellite links in the other three directions. j Similarly, W ij It is the sum of the load weights of the two-hop inter-satellite links.

[0031] Furthermore, the link connection status includes: connected, interrupted; the link load status in the connected state includes: idle, busy, busy.

[0032] Specifically, in step S21, the link connection status between itself and neighboring satellite nodes is determined based on the received link status reply messages.

[0033] Each link-state detection message corresponds to a link-state response message. For any satellite node, at T... d Within a certain time interval, if a link status reply message is received from a neighboring satellite node, the link load status between itself and the neighboring satellite node is set to the link connected state; otherwise, it is set to the link interrupted state.

[0034] In step S22, if the status is connected, the link load status between itself and the neighboring satellite nodes is determined by reading the specific content of the link status reply message fed back by the neighboring satellite nodes. Specifically:

[0035] Based on the link load ratio in the link status reply message, the link load status between itself and neighboring satellite nodes is set to idle, busy, or busy.

[0036] Further, step S3 includes:

[0037] Step S31: For any satellite node, if the link connection status of the satellite node changes from connected to interrupted or from interrupted to connected, a link status notification message is generated and transmitted to the ground station. The ground station reads the message and modifies the inter-satellite link connection information according to the link status information in the message, recalculates the entire network routing table, and floods the recalculated entire network routing table to all satellite nodes in the network.

[0038] Step S32: For any satellite node, if it receives a link status reply message, it will update the node status table. If the next hop direction of the user data packet received by the satellite node is connected, and the link load status is idle after reading the message, the received data packet will be forwarded according to the global routing table to achieve global load balancing. If the link load status is busy, the received data packet will be routed and forwarded using the shortest path and minimum hop path in a certain proportion to achieve local load balancing. If the link load status is busy, the received data packet will be routed and forwarded using the shortest path and minimum hop path in a certain proportion to achieve local load balancing. At the same time, the satellite node generates a link status notification message and transmits it to the ground station for processing and then updates the global routing table.

[0039] Further, step S31 includes:

[0040] Step S311: Each satellite node maintains a node status table locally, which records the link connection status and link load status of adjacent nodes.

[0041] If no link status reply message is received from a neighboring satellite node but the node status table shows the status as connected, then the current satellite node's inter-satellite link is determined to be in a link interruption state, and the status of the corresponding node in the node status table is modified to interruption; if a link status reply message is received from a neighboring satellite node but the node status table shows the status as interruption, then the current satellite node's inter-satellite link is determined to be in a link connected state, and the status of the corresponding node in the node status table is modified to connected.

[0042] Step S312: Collect link connection status and generate link status notification message;

[0043] Step S313: Transmit the link status notification message to the ground station. If the status changes from connected to interrupted, the ground station sets the weight value of the corresponding link of the neighboring satellite node to infinity to indicate that the link is interrupted, and recalculates the entire network routing table. If the status changes from interrupted to connected, the ground station modifies the weight value of the corresponding link of the adjacent node in the link information to the value in the initial link information, and recalculates the entire network routing table.

[0044] Step S314: The ground station will flood the recalculated network routing table to all satellite nodes in a restricted manner.

[0045] Furthermore, step S32 also includes:

[0046] For any satellite node, when it receives a user data packet, it records the direction of the data transmission and makes a forwarding decision based on the link load. To prevent routing loops, this direction can never be an optional next-hop direction.

[0047] Further, step S32 includes:

[0048] (1) Determine whether the next hop direction is the data inbound direction and check the link load status of the neighboring satellite corresponding to the next hop in the node status table;

[0049] If the next hop direction is a non-data inbound direction of the current satellite node, and the link load status of the next hop is idle, then the received data packet is forwarded directly according to the whole network routing table.

[0050] If the next hop direction is a non-data inbound direction of the current satellite node, and the link load status of the next hop is busy, then compare the W values ​​of the alternative paths. ij Choose the smaller value, W. ij The path with the value is used as the second path. Data is distributed according to the network routing table and the second path in a ratio of α% and β%, where α% + β% = 100%. α% and β% can be customized. If W ij If all values ​​are infinite, the data will be forwarded according to the entire network routing table;

[0051] If the next hop direction is a non-data inbound direction of the current satellite node, and the link load status of the next hop is busy, then compare the W values ​​of the alternative paths. ij Choose the smaller value, W. ij The path with the value is used as the second path. Data is distributed according to the network routing table and the second path in proportions of γ% and δ%, where γ% + δ% = 100%. γ% and δ% can be customized, but γ% < α% and δ% must be guaranteed to be > β%. If W ij If all values ​​are infinite, the data will be forwarded according to the entire network routing table;

[0052] (2) If the link load status changes from idle to busy or from busy to idle, the link load status is collected and a link status notification message is generated. The link status notification message is transmitted to the ground station. If the status changes from idle to busy, the ground station modifies the initial link information copy of the neighboring satellite nodes to infinity and recalculates the entire network routing table. If the status changes from busy to idle, the ground station modifies the preset values ​​of the adjacent nodes in the initial link information copy to the values ​​in the initial link information and recalculates the entire network routing table. The ground station floods the recalculated entire network routing table to all satellite nodes in the network.

[0053] According to a second aspect of the present invention, a low-Earth orbit satellite network routing system is provided, comprising:

[0054] A ground station, and at least one satellite node that is in wireless communication with the ground station;

[0055] The ground station and satellite nodes are used to execute the low-Earth orbit satellite network routing method described above.

[0056] The technical solutions provided by the embodiments of the present invention may include the following beneficial effects:

[0057] Enhancing the congestion awareness of satellite nodes improves the routing efficiency of node selection. By updating routes promptly based on real-time link status information, it better responds to changes in satellite network topology and traffic, resulting in a higher packet delivery success rate. Improved congestion awareness allows for the acquisition of link load information within a two-hop range, and by providing broader routing options, it enhances network load balancing, enabling satellite nodes to make routing and forwarding decisions with a wider routing perspective.

[0058] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit the invention. Attached Figure Description

[0059] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.

[0060] Figure 1 This is a flowchart illustrating a low-Earth orbit satellite network routing method according to an exemplary embodiment;

[0061] Figure 2 This is a flowchart illustrating a network routing method when the inter-satellite link of a current satellite node is in a disconnected state, according to an exemplary embodiment.

[0062] Figure 3 This is a flowchart illustrating a network routing method when the next-hop link load state is idle, according to an exemplary embodiment.

[0063] Figure 4 This is a flowchart illustrating a network routing method when the next-hop link load state is busy, according to an exemplary embodiment.

[0064] Figure 5 This is a flowchart illustrating a network routing method when the next-hop link load state is busy, according to an exemplary embodiment.

[0065] Figure 6 This is a schematic diagram illustrating a low-Earth orbit satellite network routing method according to an exemplary embodiment;

[0066] Figure 7 This is a congestion-aware schematic diagram illustrated according to an exemplary embodiment. Detailed Implementation

[0067] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the invention as detailed in the appended claims.

[0068] Example 1

[0069] Figure 1 This is a flowchart illustrating a low-Earth orbit satellite network routing method according to an exemplary embodiment, such as... Figure 1 As shown, the method includes:

[0070] Step S1: The ground station calculates the entire network routing table based on the inter-satellite link connection status of the satellite network topology and floods the entire network routing table to all satellite nodes in the network; the entire network routing table includes: the shortest path between any two satellites in the entire network calculated by the ground station using the shortest path algorithm;

[0071] Step S2: Satellite nodes dynamically maintain link status information within a two-hop range using a link congestion awareness and congestion decision mechanism; the link status information includes: inter-satellite link connection status and link load status;

[0072] Step S3: The satellite node selects different load balancing strategies based on the link status information; the load balancing strategies include: global load balancing and local load balancing.

[0073] It is understood that the technical solution provided in this embodiment belongs to an adaptive load balancing low-Earth orbit network routing method. It enhances the congestion awareness capability of satellite nodes to improve the routing selection and traffic distribution effect. Based on real-time link status information, it updates routes in a timely manner, better responding to changes in satellite network topology and network traffic, resulting in a higher packet delivery success rate. It improves congestion awareness to obtain link load information within a two-hop range, and enhances network load balancing by providing a wider range of routing options, enabling satellite nodes to make routing and forwarding decisions with a broader routing perspective.

[0074] In practice, step S2 includes:

[0075] Step S21: Each satellite node periodically sends link state detection messages to neighboring satellite nodes connected via inter-satellite links, and receives link state reply messages from neighboring satellite nodes. d Within a certain time interval, the link connection status between itself and neighboring satellite nodes is determined based on the received link status response messages.

[0076] Step S22: For any satellite node, at T d Within a certain time interval, if the status is connected, the link load status between itself and the neighboring satellite nodes is determined by reading the specific content of the link status reply message fed back by the neighboring satellite nodes.

[0077] The link load status in step S22 is calculated according to the following formula (1):

[0078]

[0079] Among them, w iLet q be the link load weight in direction i, where i = 1, 2, 3, and 4 represent the up, down, left, and right directions of the current satellite node, respectively. Let q be the total message length of the queue on a given adjacent link. max The queue length threshold is n. The queue threshold capacity is the same for all four inter-satellite links. mid n represents the number of times the link was busy within a past statistical period. high n represents the number of times the link was busy within a past statistical period. total This represents the number of times the link status was automatically detected within the past statistical period. λ, α, β, and γ are adjustable parameters that will be adjusted appropriately based on the network topology and load.

[0080] w i ≤w L This indicates that the link load is idle, w L <w i ≤w H This indicates that the link load is busy, w H <w i This indicates that the link load is busy, where w L and w H The threshold is adjustable.

[0081] The link status reply message carries the queue status of the current satellite node and neighboring satellite nodes. The link load weight within the two-hop range is calculated by the following formula (2):

[0082] W ij =w i +w j (2)

[0083] Among them, w i represents the link load weight of inter-satellite links directly connected to neighboring nodes of the source node, excluding the inter-satellite link in direction j; represents the load weight of the neighboring satellite nodes in the other three directions; w represents the load weight of the inter-satellite links in the other three directions. j Similarly, W ij It is the sum of the load weights of the two-hop inter-satellite links.

[0084] by Figure 6 Taking satellite number 0202 as an example, its neighboring satellite nodes include: satellite number 0105, satellite number 0201, satellite number 0311, and satellite number 0203. i This can represent the link load status from satellite number 0202 to neighboring satellite nodes, i.e., a0, b0, c0, or d0. jThis can represent the link load status from satellites numbered 0201, 0311, and 0203 to neighboring satellite nodes excluding satellite number 0202, i.e., a1 or a2 or a3 or b1 or b2 or b3 or c1 or c2 or c3 or d1 or d2 or d3. ij This can represent the sum of the link load weights from satellite number 0202 via satellite number 0201 to satellites numbered 0104, 0212, and 0310; the sum of the link load weights from satellite number 0202 via satellite number 0311 to satellites numbered 0310, 0404, and 0312; and the sum of the link load weights from satellite number 0202 via satellite number 0203 to satellites numbered 0312, 0204, and 0310. The sum of the link load weights of satellite 0106, and the sum of the link load weights of satellite 0202 via satellite 0105 to satellites 0106, 1206, and 0104, i.e., a0+a1 or a0+a2 or a0+a3 or b0+b1 or b0+b2 or b0+b3 or c0+c1 or c0+c2 or c0+c3 or d0+d1 or d0+d2 or d0+d3.

[0085] In practice, the link connection status includes: connected, interrupted; the link load status in the connected state includes: idle, busy, busy.

[0086] Specifically, in step S21, the link connection status between itself and neighboring satellite nodes is determined based on the received link status reply messages.

[0087] Each link-state detection message corresponds to a link-state response message. For any satellite node, at T... d Within a certain time interval, if a link status reply message is received from a neighboring satellite node, the link load status between itself and the neighboring satellite node is set to the link connected state; otherwise, it is set to the link interrupted state.

[0088] In step S22, if the status is connected, the link load status between itself and the neighboring satellite nodes is determined by reading the specific content of the link status reply message fed back by the neighboring satellite nodes. Specifically:

[0089] Based on the link load ratio in the link status reply message, the link load status between itself and neighboring satellite nodes is set to idle, busy, or busy.

[0090] Further, step S3 includes:

[0091] Step S31: For any satellite node, if the link connection status of the satellite node changes from connected to interrupted or from interrupted to connected, a link status notification message is generated (the satellite link status notification message will indicate which of the four inter-satellite links changed from connected to interrupted or from interrupted to connected) and transmitted to the ground station. The ground station reads the message and modifies the inter-satellite link connection information according to the link status information in the message, recalculates the entire network routing table, and floods the recalculated entire network routing table to all satellite nodes in a limited manner (it should be noted that this will also flood to nodes with interrupted links, because there are a total of four inter-satellite links, and usually only one or two will be disconnected, and the nodes can still receive this entire network routing table from other links).

[0092] Step S32: For any satellite node, if it receives a link status reply message, it will update the node status table. If the next hop direction of the user data packet received by the satellite node is connected, and the link load status is idle after reading the message, the received data packet will be forwarded according to the global routing table to achieve global load balancing. If the link load status is busy, the received data packet will be routed and forwarded using the shortest path and minimum hop path in a certain proportion to achieve local load balancing. If the link load status is busy, the received data packet will be routed and forwarded using the shortest path and minimum hop path in a certain proportion to achieve local load balancing. At the same time, the satellite node generates a link status notification message and transmits it to the ground station for processing and then updates the global routing table.

[0093] Further, see Figure 2 Step S31 includes:

[0094] Step S311: Each satellite node maintains a node status table locally, which records the link connection status and link load status of adjacent nodes.

[0095] If no link status reply message is received from a neighboring satellite node but the node status table shows the status as connected, then the current satellite node's inter-satellite link is determined to be in a link interruption state, and the status of the corresponding node in the node status table is modified to interruption; if a link status reply message is received from a neighboring satellite node but the node status table shows the status as interruption, then the current satellite node's inter-satellite link is determined to be in a link connected state, and the status of the corresponding node in the node status table is modified to connected.

[0096] Step S312: Collect link connection status and generate link status notification message;

[0097] Step S313: Transmit the link status notification message to the ground station. If the status changes from connected to interrupted, the ground station sets the weight value of the corresponding link of the neighboring satellite node to infinity to indicate that the link is interrupted, and recalculates the entire network routing table. If the status changes from interrupted to connected, the ground station modifies the weight value of the corresponding link of the adjacent node in the link information to the value in the initial link information, and recalculates the entire network routing table.

[0098] Step S314: The ground station will flood the recalculated network routing table to all satellite nodes in a restricted manner.

[0099] In practice, step S32 further includes:

[0100] For any satellite node, when it receives a user data packet, it records the direction of the data transmission and makes a forwarding decision based on the link load. To prevent routing loops, this direction can never be an optional next-hop direction.

[0101] Step S32 includes:

[0102] (1) Determine whether the next hop direction is the data inbound direction and check the link load status of the neighboring satellite corresponding to the next hop in the node status table;

[0103] See Figure 3 If the next hop direction is the non-data inbound direction of the current satellite node, and the link load status of the next hop is idle, then the received data packet is forwarded directly according to the whole network routing table.

[0104] See Figure 4 If the next hop direction is a non-data inbound direction of the current satellite node, and the link load status of the next hop is busy, then compare the W values ​​of the alternative paths. ij Choose the smaller value, W. ij The path with the value is used as the second path. Data is distributed according to the network routing table and the second path in a ratio of α% and β%, where α% + β% = 100%. α% and β% can be customized. If W ij If all values ​​are infinite, the data will be forwarded according to the entire network routing table;

[0105] See Figure 5 If the next hop direction is a non-data inbound direction of the current satellite node, and the link load status of the next hop is busy, then compare the W values ​​of the alternative paths. ij Choose the smaller value, W. ij The path with the value is used as the second path. Data is distributed according to the network routing table and the second path in proportions of γ% and δ%, where γ% + δ% = 100%. γ% and δ% can be customized, but γ% < α% and δ% must be guaranteed to be > β%. If W ijIf all values ​​are infinite, the data will be forwarded according to the entire network routing table;

[0106] (2) If the link load status changes from idle to busy or from busy to idle, the link load status is collected and a link status notification message is generated. The link status notification message is transmitted to the ground station. If the status changes from idle to busy, the ground station modifies the initial link information copy of the neighboring satellite nodes to infinity and recalculates the entire network routing table. If the status changes from busy to idle, the ground station modifies the preset values ​​of the adjacent nodes in the initial link information copy to the values ​​in the initial link information and recalculates the entire network routing table. The ground station floods the recalculated entire network routing table to all satellite nodes in the network.

[0107] It is understood that the technical solution provided in this embodiment improves the node's congestion awareness to understand the link load within a two-hop range, enhances the routing selection effect of the node by expanding the calculation range of link load weights, and completes the distribution of user data within a two-hop range through distributed forwarding within a local area, enabling satellite nodes to make routing and forwarding decisions with a broader routing perspective. By sensing the link status within a two-hop range and combining it with the relative position information of the satellites, the path with the minimum load link weight is selected as the optimal path for transmission. This routing method can effectively avoid the concentration of service data on fixed paths and maintain good network performance even under high traffic volumes.

[0108] Example 2

[0109] See Figure 7 A low-Earth orbit satellite network routing system, illustrated in an exemplary embodiment, includes:

[0110] Ground station 100, and at least one satellite node 200 that wirelessly communicates with said ground station 100;

[0111] The ground station 100 and satellite node 200 are used to execute the low-orbit satellite network routing method described above.

[0112] It is understood that the technical solution provided in this embodiment belongs to an adaptive load balancing low-Earth orbit network routing method. It enhances the congestion awareness capability of satellite nodes to improve the routing selection and traffic distribution effect. Based on real-time link status information, it updates routes in a timely manner, better responding to changes in satellite network topology and network traffic, resulting in a higher packet delivery success rate. It improves congestion awareness to obtain link load information within a two-hop range, and enhances network load balancing by providing a wider range of routing options, enabling satellite nodes to make routing and forwarding decisions with a broader routing perspective.

[0113] It is understood that the same or similar parts in the above embodiments can be referred to each other, and the contents not described in detail in some embodiments can be referred to the same or similar contents in other embodiments.

[0114] It should be noted that in the description of this invention, the terms "first," "second," etc., are used for descriptive purposes only and should not be construed as indicating or implying relative importance. Furthermore, in the description of this invention, unless otherwise stated, "a plurality of" means at least two.

[0115] Any process or method description in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing a particular logical function or process, and the scope of the preferred embodiments of the invention includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as will be understood by those skilled in the art to which embodiments of the invention pertain.

[0116] It should be understood that various parts of the present invention can be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0117] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.

[0118] Furthermore, the functional units in the various embodiments of the present invention can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.

[0119] The storage media mentioned above can be read-only memory, disk, or optical disk, etc.

[0120] In the description of this specification, references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.

[0121] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.

Claims

1. A method for routing in a low earth orbit satellite network, the method comprising: The method comprises the following steps: S1, a ground station calculates a global routing table according to an inter-satellite link connection state of a satellite network topology structure, and floods the global routing table to all satellite nodes in the network; The global routing table comprises a shortest path between any two satellites in the network calculated by the ground station using a shortest path algorithm; S2, a satellite node dynamically maintains link state information within a two-hop range using a link congestion awareness and congestion decision mechanism; the link state information comprises an inter-satellite link connection state and a link load state; S3, the satellite node selects different load balancing strategies according to the link state information; the load balancing strategies comprise global load splitting and local load splitting; The step S2 comprises: Step S21, each satellite node periodically sends a link state detection packet to the neighbor satellite nodes connected through the inter-satellite link, and receives the link state reply packet fed back by the neighbor satellite nodes, within a time interval T d According to the received link state reply packet, the link connection status between the satellite node and the neighbor satellite nodes is determined. Step S22, for any satellite node, if the state is connected, the load status of the link between the satellite node and the neighbor satellite node is determined by reading the specific content of the link state reply message fed back by the neighbor satellite node within the time interval of T d . The step S3 comprises: S31, for any satellite node, if the link connection state of the satellite node changes from connected to interrupted or from interrupted to connected, a link state notification message is generated and transmitted to the ground station, the ground station reads the message and modifies the inter-satellite link connection information according to the link state information in the message, and recalculates the global routing table, and then the recalculated global routing table is restrictedly flooded to all satellite nodes in the network; S32, for any satellite node, if the satellite node receives a link state reply message, the node state table is updated; if the next hop direction of the satellite node is in a connected state when the satellite node receives a user data packet, if the link load state is idle after reading the message, the received data packet is forwarded according to the global routing table, so as to realize global load splitting; if the link load state is busy, the received data packet is forwarded according to a certain proportion of the shortest path and the minimum hop path routing, so as to realize local load splitting; if the link load state is busy, the received data packet is forwarded according to a certain proportion of the shortest path and the minimum hop path routing, so as to realize local load splitting, and the satellite node generates a link state notification message and transmits it to the ground station for processing to update the global routing table.

2. The method of claim 1, wherein, The link load state in the step S22 is calculated according to the following formula (1): where w i is the link load weight in i direction, i = 1, 2, 3, 4 respectively represent the current satellite node's up, down, left, right four directions, q is the total packet length of a queue on a certain adjacent link, q max is the queue threshold, the queue threshold capacity of the four inter-satellite links is the same, n mid is the number of times the link presents busy state in the past one statistical period, n high is the number of times the link presents busy state in the past one statistical period, n total is the number of times the link presents automatic detection state in the past one statistical period, λ, α, β, γ are adjustable parameters, which will be adjusted according to the network topology structure and load condition; w i ≤ w L represents that the link load condition is idle, w L < w i ≤ w H represents that the link load condition is busy, w H < w i represents that the link load condition is busy, where w L and w H are adjustable thresholds.

3. The method of claim 2, wherein, The method further comprises the following steps: The link state reply message carries the queue state of the current satellite node and the neighbor satellite node, and the link load weight within the two-hop range is calculated according to the following formula (2): W ij = w i + w j (2) It is assumed that the number of a current satellite node is A, and the numbers of other satellite nodes adjacent to the satellite node A are B, and the satellite node A and the satellite node B are connected to the satellite nodes adjacent thereto in the up, down, left and right directions; wherein w i is the link load weight of satellite node A in the i direction, i = 1, 2, 3, 4 respectively represent the upper, lower, left, right four directions of satellite node A; satellite node B is connected with other satellite nodes adjacent to itself in the j direction in addition to being connected with satellite node A in the i direction, w j represents the link load weight of satellite node B connected with adjacent satellite nodes in addition to the i direction, j represents the remaining three directions of satellite node B connected with adjacent satellite nodes, and W ij is the sum of the load weights of two-hop inter-satellite links.

4. The method of claim 1, wherein, The link connection state comprises connected and interrupted, and the link load state in the connected state comprises idle, busy and busy; In the step S21, the link connection state between the satellite node and the neighbor satellite node is determined according to the received link state reply message, and specifically, Each link state detection packet corresponds to a link state reply packet. For any satellite node, within a time interval T d , if a link state reply packet fed back by a neighbor satellite node is received, the link load status between the satellite node and the neighbor satellite node is set as a link connected state, otherwise, the link load status is set as a link interrupted state. In the step S22, if the state is connected, the link load state between the satellite node and the neighbor satellite node is determined by reading the specific content of the link state reply message fed back by the neighbor satellite node, and specifically, According to the link load proportion in the link state reply message, the link load state between the satellite node and the neighbor satellite node is set to idle, busy and busy.

5. The method of claim 1, wherein, The step S31 comprises: Step S311, each satellite node locally maintains a node state table, which records the link connection status and link load status of adjacent nodes; If no link state reply message of the neighbor satellite node is received but the state in the node state table is connected, it is determined that the inter-satellite link of the current satellite node is in a link interruption state, and the state of the corresponding node in the node state table is modified to interruption; if the link state reply message of the neighbor satellite node is received but the state in the node state table is interruption, it is determined that the inter-satellite link of the current satellite node is in a link connection state, and the state of the corresponding node in the node state table is modified to connected; Step S312, collect the link connection status and generate a link state notification message; Step S313, transmit the link state notification message to the ground station, if the state changes from connected to interruption, the ground station sets the weight value of the corresponding link of the adjacent node in the link information to infinity, indicating that the link is interrupted, and recalculates the global routing table; if the state changes from interruption to connected, the ground station modifies the weight value of the corresponding link of the adjacent node in the link information to the value in the initial link information, and recalculates the global routing table; Step S314, the ground station performs restricted flooding of the recalculated global routing table to all satellite nodes in the network.

6. The method of claim 3, wherein, The step S32 further comprises: For any satellite node, when the satellite node receives a user data packet, the direction of data transmission is recorded, and a forwarding decision is made according to the link load status, in order to prevent the generation of a routing loop, the direction can never be the optional next hop direction.

7. The method of claim 6, wherein, The step S32 comprises: (1) determining whether the next hop direction is the data transmission direction and checking the link load status of the adjacent satellite corresponding to the next hop in the node state table; If the next hop direction is a non-data transmission direction of the current satellite node, and the link load status of the next hop is an idle state, the received data packet is directly forwarded according to the global routing table; If the next hop direction is not the data-in direction of the current satellite node, and the link load state of the next hop is busy, then compare the W ij values of the alternative paths, and select the path with the smaller W ij value as the second path, and distribute data according to the global routing table and the second path in proportions of α% and β%, α%+β%=100%, α% and β% being customizable, and if the W ij values are both infinite, then forward data according to the global routing table; If the next hop direction is not the data-in direction of the current satellite node and the link load status of the next hop is busy, then compare the W ij values of the alternative paths, select the path with the smaller W ij value as the second path, and distribute data according to the global routing table and the second path in proportions of γ% and δ%, with γ%+δ%=100%, γ% and δ% being customizable but with the conditions that γ%<α% and δ%>β%, if the W ij values are both infinite, then forward data according to the global routing table. (2) if the link load status changes from idle to busy or from busy to idle, collect the link load status and generate a link state notification message; transmit the link state notification message to the ground station, if the state changes from idle to busy, the ground station modifies the initial link information copy of the adjacent satellite node to infinity, and recalculates the global routing table; if the state changes from busy to idle, the ground station modifies the preset value of the adjacent node in the initial link information copy to the value in the initial link information, and recalculates the global routing table; the ground station performs restricted flooding of the recalculated global routing table to all satellite nodes in the network.

8. A low earth orbit satellite network routing system, characterized by, It comprises: a ground station, and at least one satellite node in wireless communication with the ground station; The ground station and the satellite node are used to perform the low-orbit satellite network routing method of any one of claims 1-7.

Citation Information

Cited By

  • Polar orbit constellation inter-satellite load balancing routing method and system based on topology switching

    CN117938238A