Distributed addressing and fast routing method and system

By employing distributed addressing and fast routing methods, the problems of insufficient address allocation and routing calculation delays in satellite communication are solved, enabling autonomous address configuration and fast routing, thus ensuring efficient and stable communication in satellite networks.

CN116668361BActive Publication Date: 2026-05-29BEIJING JIAOTONG UNIV

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIJING JIAOTONG UNIV
Filing Date
2023-05-23
Publication Date
2026-05-29

AI Technical Summary

Technical Problem

Existing satellite addressing and routing methods fail to fully utilize satellite communication relationships and lack a global perspective. This results in the inability to guarantee the performance of the shortest forwarding path during data transmission, and the calculation of the forwarding direction requires additional delay. It may even lead to neighboring satellites having lost communication.

Method used

By employing distributed addressing and fast routing methods, the system allocates orbit numbers, mirrors satellite orbits, establishes an equivalent matrix satellite topology and relative motion model, selects the betweenness center point as the reference frame to deploy the controller, broadcasts address allocation data packets to allocate satellite addresses, and simultaneously establishes routing tables to ensure that each satellite autonomously completes its network formation and address configuration.

Benefits of technology

A completely new global address allocation system has been implemented, which reduces frequent communication between satellites, improves address allocation speed, shortens network configuration time, ensures uninterrupted transmission of communication signals after link failure, and contains rich backup paths in the routing table to improve network efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116668361B_ABST
    Figure CN116668361B_ABST
Patent Text Reader

Abstract

The application provides a distributed addressing and fast routing method and system, and belongs to the technical field of satellite communication. A satellite relative motion model is first established, then a suitable reference system satellite deployment controller is selected based on the established satellite relative motion model, satellite address allocation is completed based on the deployed controller, and finally a routing table is synchronously established based on the allocated satellite address. The new data packet communication protocol is more flexible in field structure setting. The controller satellite positioned by betweenness centrality ensures short distance communication between the controller and each satellite. The distributed addressing method reduces frequent communication between satellites and improves address allocation speed. The routing table establishment process is synchronized with address allocation, which shortens network address and routing configuration time and improves network efficiency. In the later data packet transmission, network recalculation is not required. The routing table is established by size value matching, which maximally simplifies the routing table entries and routing table structure.
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, and specifically to a distributed addressing and fast routing method and system. Background Technology

[0002] With the continuous development of satellite technology, satellite internet as a terrestrial support network has received increasing attention. Satellite internet boasts wide signal coverage, high communication frequencies, and a rich array of bands, playing a vital role in civilian and military applications, as well as traditional and new networks. According to Gartner's 2021 forecast, low-Earth orbit satellites will cover the areas where the world's one billion poorest people live by 2027, helping 50% of them escape poverty. This significant characteristic of satellite internet's extensive coverage solves the signal coverage problem of modern terrestrial communication networks, making it an indispensable part of supporting terrestrial network communications.

[0003] Under this major development trend, satellite internet has been extensively studied. In particular, the integration of SDN architecture with satellite networks and the rapid development of integrated space-ground communication architecture have placed new demands on satellite control capabilities, presenting new challenges to the control functions of satellite internet. Current research on satellite network control can be divided into three aspects based on the research focus:

[0004] (1) Satellite network controller deployment. This type of research focuses on the deployment location of the controllers. A good deployment location can shorten the distance between the controller and the satellite and improve the efficiency of issuing control commands. This research mainly focuses on modeling the number and location of controllers, and selects the optimal controller location through graph theory analysis, topology and load prediction, experimental testing and other methods.

[0005] (2) Satellite network resource allocation issues. This type of research focuses on optimizing the resource allocation of satellites using control networks to improve data transmission performance. Research includes analyzing satellite mission times and latency, discussing mission placement algorithms to improve satellite mission processing efficiency. It also includes sensing network status and dynamically and efficiently distributing content to precise locations to improve the user's video service experience.

[0006] (3) Satellite network addressing and routing issues. The research is primarily based on terrestrial communication networks, discussing various addressing methods according to SDN architecture and network topology. These studies analyze addressing and routing from various aspects, including Layer 2 topology exploration, Layer 3 address allocation, and Layer 4 communication channel establishment, following the layered architecture of computer networks. Other studies focus on rapid recovery after path failures to ensure stable network transmission.

[0007] Satellite networks and terrestrial communication networks differ fundamentally in both topology and communication mode. Due to their periodic high-speed orbits around the Earth, satellites experience significant topological changes, making it difficult to directly apply node addressing and routing methods used in terrestrial communication networks. Satellites communicate via wireless signals, resulting in shorter communication distances and less stable topological connections compared to terrestrial networks. Furthermore, satellites have extremely limited network resources due to hardware constraints, with a large portion of these resources dedicated to supporting terrestrial communication networks. Therefore, satellite networks have higher demands for addressing and routing; their rapid topology changes require faster address allocation and routing speeds to ensure full network configuration and data packet transmission are completed before topology changes occur. Their limited resources also necessitate low resource consumption in the control network to ensure effective support for terrestrial communication networks.

[0008] For satellite addressing and routing, Tsinghua University has proposed a routing method and device based on network layer addressing using spatial location information. When a satellite receives a data packet, it determines the direction of the next-hop satellite based on its own and the destination satellite's spatial location information. Then, based on this direction and its relative position to its own spatial location, it determines the data packet forwarding interface and forwards the data packet to that port.

[0009] In summary, existing satellite addressing and routing methods have several shortcomings: They underutilize satellite communication relationships and lack a global perspective. Using the ground as the satellite's spatial position reference frame, they only focus on the communication connections between the satellite and its neighboring satellites, failing to consider the overall satellite network communication situation. This makes it impossible to guarantee the shortest forwarding path transmission performance during data transmission. Calculating the forwarding direction requires additional latency. The satellite only begins calculating the forwarding direction after receiving the data packet; this calculation time is unavoidable and may even result in communication with neighboring satellites being lost by the time the calculation is completed. Summary of the Invention

[0010] The purpose of this invention is to provide a distributed addressing and fast routing method and system to solve at least one of the technical problems existing in the background art. A distributed addressing and fast routing mechanism is proposed, in which each satellite can autonomously complete the satellite network formation and address configuration, and simultaneously generate multiple routes during the network formation process. These routes support fast table lookup and forwarding of communication signals, enabling rapid data transmission. This mechanism consumes only a small amount of satellite resources, its distributed address configuration speed is superior to centralized address allocation mechanisms, its routing table is simple, its lookup speed is shorter than other methods, and its routing table contains abundant backup paths, ensuring uninterrupted transmission of communication signals after link failures.

[0011] To achieve the above objectives, the present invention adopts the following technical solution:

[0012] On one hand, the present invention provides a distributed addressing and fast routing method, comprising:

[0013] Assign orbit numbers, assign satellite numbers within the orbits, mirror satellite motion orbits, establish equivalent matrix satellite topology, and build a satellite relative motion model;

[0014] Based on the established satellite relative operation model, a suitable reference frame satellite deployment controller is selected so that the communication time from the controller to the farthest satellite is minimized when assigning satellite addresses;

[0015] The deployed controller broadcasts address allocation data packets. The satellite receives the broadcast address allocation data packets and confirms its own address. The satellite then broadcasts address allocation data packets to complete the satellite address allocation.

[0016] Based on the assigned satellite addresses, after confirming its own address and neighbor information, a routing table is established synchronously.

[0017] Optionally, the allocation of orbit numbers includes: describing each orbit through a set O, where n is the total number of orbits in the low Earth orbit satellite network, and numbering the orbits sequentially starting from a certain orbit;

[0018] O = {O1, O2, O3, ..., O} n}

[0019] Optionally, the mirrored satellite orbit includes: dividing the circular satellite orbit into two parts by the orbital intersection point; mirroring the two parts of the satellite orbit by the dividing point so that the satellite orbits are simultaneously within the same range; and stretching the new mirrored orbit to straighten each orbit into a planar satellite motion topology.

[0020] Optionally, the equivalent matrix satellite topology includes: using the satellite communication capabilities between adjacent orbits to adjust the planar satellite motion topology, placing satellites in different communicable orbits at the same horizontal position to form a matrix-shaped satellite topology.

[0021] Optionally, the relative motion model is finally determined through the equivalent matrix satellite topology, including: selecting the moving satellite as the reference frame, using the relative position as the satellite coordinates, using the reference frame satellite as the origin, its orbit change direction as the x-axis, its orbit as the y-axis, and representing the operating position of each satellite in coordinate form to establish the relative motion model.

[0022] Optionally, the satellite containing the betweenness center is chosen as the reference satellite. Borrowing the concept of betweenness centrality, the betweenness of a satellite node is the number of shortest paths through that satellite in the network, and the betweenness centrality of a node is the sum of the ratios of the number of shortest paths between any two points through that node to the total number of all shortest paths.

[0023]

[0024] Where, σst σ is the total number of shortest paths from node s to node t. st (v) is the number of paths passing through node v. By comparing the betweenness centrality of each node, the node with the largest value is selected as the origin of the reference frame, and the controller is deployed to achieve the shortest path, that is, the betweenness centrality point v has the largest betweenness centrality, the most shortest paths pass through this node, and the two ends of these shortest paths to node v are also shortest paths. This node can reach the most other nodes with the shortest distance.

[0025] Optionally, the address allocation packet structure includes: using the network's Layer 2 and Layer 3 protocols; wherein the Layer 2 protocol is the standard Ethernet protocol, and the source / destination physical addresses are both satellite physical addresses in the packet transmission; the Layer 3 protocol includes address acknowledgment packets and address update packets.

[0026] Optionally, both the address acknowledgment packet and the address update packet have the same source address length field and source address field; the address acknowledgment packet has a destination address field, which represents the satellite address of the packet receiver, and the receiver satellite uses this field to confirm its own address; the destination address field of the address update packet has a variable length, and this field stores the address space that the receiver satellite can use as its own address.

[0027] Optionally, based on the deployed controller broadcasting address allocation data packets, the satellite receives the broadcast address allocation data packets and confirms its own address, then broadcasts the address allocation data packets to complete the satellite address allocation, including:

[0028] After receiving the address acknowledgment data packet, the satellite determines whether the data packet is valid. The validity is determined by whether the port has received such a data packet before. If the data packet is invalid, it is directly dropped. If the data packet is valid, it is the first address acknowledgment data packet received by the port.

[0029] Based on the first received address confirmation data packet, determine the satellite's own address, store the source address (i.e., the sending satellite address), and record its own neighbor information;

[0030] The satellite broadcasts updated data packets to ports that have not been invalidated, based on its own address and the obtained neighbor information.

[0031] The satellite broadcasts updated data packets through its port, updating the available address space of surrounding satellites.

[0032] Optionally, when a satellite receives an address update data packet, it verifies the validity of the received address update data packet. This validity is determined by whether an address confirmation data packet has been received before. If the satellite has already received an address confirmation data packet, then the satellite has completed address allocation, and the newly received address update data packet is directly discarded. Otherwise, if the data packet is valid, the satellite extracts multiple available satellite addresses contained in the destination address and stores them in a temporary register.

[0033] Optionally, when the satellite receives a second address update data packet, if the second address update data packet comes from the same source as the first data packet, the satellite needs to extract the destination address content of the new data packet and update the available satellite address space in the temporary register; if the second address update data packet comes from a new satellite, the satellite extracts the destination address content of the new data packet, compares the new address space with the old address space in the temporary register, and selects the overlapping address as its own address.

[0034] Optionally, the new address space is compared with the old address space in the temporary register, including: assuming the old address space is set ADDR1 and the new address space is set ADDR2, the satellite selects its own address (addr) by comparing the identical elements in the two sets. final As shown in the following formula:

[0035] addr final ={addr|addr∈ADDR1,addr∈ADDR2}.

[0036] Optionally, during the address allocation process, each satellite calculates a unique addr; after confirming its own address, the satellite needs to store the neighbor information and reply with an address confirmation data packet to the source satellite that sent the address update data packet to inform it of its satellite address.

[0037] Optionally, broadcast address update packets to ports that have not been invalidated, including: using its own address as the source address, adding or subtracting one from its own address coordinates to form four addresses as the destination address, while removing confirmed neighbor addresses from the destination address.

[0038] Optionally, based on the allocated satellite address, after confirming its own address and neighbor information, a routing table is synchronously established, including: the routing table uses address coordinate size value matching, the routing table header includes: condition 1 and condition 2 corresponding to address coordinate size value matching conditions, next-hop address corresponding to the next-hop forwarding satellite information of the data packet, outgoing port corresponding to the forwarding direction of the data packet, and priority representing the priority order of each port when there are multiple outgoing ports.

[0039] Optionally, for a satellite with coordinates (u,v), its routing table contains four possible lookup matching conditions, each corresponding to a different direction of the target address under this satellite. When one of the lookup conditions is met, the satellite prioritizes forwarding data packets in the vertical direction. The outgoing port corresponds to the next-hop address and is filled in when obtaining neighbor satellite information.

[0040] Optionally, the priority is to ensure the adjustment and backup of the satellite forwarding path, including: by adjusting the priority value, the satellite can change the forwarding direction of the data packets; when a link fails, the satellite selects an alternative path according to the priority value to prevent the control information data packets from failing to reach the destination satellite.

[0041] Secondly, the present invention provides a distributed addressing and fast routing system based on the method described above, characterized in that it includes:

[0042] Establish a module for assigning orbit numbers, assigning satellite numbers within orbits, mirroring satellite motion orbits, creating an equivalent matrix of satellite topology, and establishing a satellite relative motion model;

[0043] The deployment module is used to select a suitable reference frame satellite deployment controller based on the established satellite relative operation model, so as to minimize the communication time of the controller to the farthest satellite when allocating satellite addresses;

[0044] The allocation module is used to complete satellite address allocation based on the deployed controller;

[0045] The synchronization module is used to synchronously build a routing table based on the assigned satellite address after confirming its own address and neighbor information.

[0046] Thirdly, the present invention provides a distributed addressing and fast routing apparatus, including the distributed addressing and fast routing system described above.

[0047] Fourthly, the present invention provides a non-transitory computer-readable storage medium for storing computer instructions, which, when executed by a processor, implement the distributed addressing and fast routing method described above.

[0048] Fifthly, the present invention provides a computer program product, including a computer program that, when run on one or more processors, implements the distributed addressing and fast routing method as described above.

[0049] In a sixth aspect, the present invention provides an electronic device, comprising: a processor, a memory, and a computer program; wherein the processor is connected to the memory, the computer program is stored in the memory, and when the electronic device is running, the processor executes the computer program stored in the memory to cause the electronic device to execute instructions for implementing the distributed addressing and fast routing method as described above.

[0050] Technical terms:

[0051] Satellite control network: A dedicated network for transmitting control signals between satellites. The transmission entities are the same as the satellite data transmission network, but the two are logically separate. After satellite equipment deployment, the satellite control network must be established as soon as possible to lay a solid foundation for satellite data network transmission and provide support for terrestrial communications.

[0052] Polar orbit satellites: Low-Earth orbit satellites whose flight paths pass over the poles. Polar orbit satellites are commonly used for ground communication support and long-distance information transmission. Because their flight paths cross the poles, their communication coverage can extend to any corner of the Earth, ensuring stable and uninterrupted ground communication services and information transmission.

[0053] Distributed addressing and fast routing: A special satellite addressing and routing method. Satellites do not need to communicate frequently with the address allocation server. During address allocation signal broadcasting, each satellite can autonomously complete satellite addressing and routing table establishment.

[0054] Beneficial effects of this invention:

[0055] (1) A completely new global address allocation system. The addresses and spaces used are tightly integrated, and the key fields of the data packets are more flexible. The new data packet communication protocol is more flexible in the structure settings of each field, and can be dynamically adjusted according to the actual network scale and address requirements;

[0056] (2) The controller deployment location was considered. The controller deployment location was determined by using node betweenness centrality, ensuring short-range communication between the controller and each satellite;

[0057] (3) Better distributed performance. Utilizing two types of data packets to complete distributed address allocation can significantly reduce frequent communication between satellites while improving address allocation speed;

[0058] (4) Routing table synchronous establishment mechanism. Synchronizing the routing table establishment process with address allocation shortens network address and route configuration time and improves network efficiency. Furthermore, it eliminates the need for rerouting calculations during subsequent data packet transmission.

[0059] (5) Pre-set and simplified routing table. Alternative paths are pre-set in the early stage of address allocation, and the routing table is established by matching large and small values, which simplifies the routing table entries and routing table structure to the greatest extent.

[0060] The advantages of additional aspects of the invention will be set forth more clearly in the following description or will be learned by practice of the invention. Attached Figure Description

[0061] To more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the following description of the embodiments will be briefly introduced. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0062] Figure 1 This is a flowchart of the distributed addressing and fast routing method described in an embodiment of the present invention.

[0063] Figure 2 This is a flowchart illustrating the establishment of the satellite relative motion model as described in an embodiment of the present invention.

[0064] Figure 3 This is a schematic diagram of the satellite's orbit as described in an embodiment of the present invention.

[0065] Figure 4 This is a schematic diagram of the satellite orbit as described in an embodiment of the present invention.

[0066] Figure 5 This is a schematic diagram of the equivalent matrix satellite topology process described in an embodiment of the present invention.

[0067] Figure 6 This is a schematic diagram of the relative motion model established according to an embodiment of the present invention.

[0068] Figure 7 This is an example diagram of the relative motion model described in an embodiment of the present invention.

[0069] Figure 8 This is a flowchart illustrating the satellite address allocation process according to an embodiment of the present invention.

[0070] Figure 9 This is a schematic diagram of the basic structure of the data packet according to an embodiment of the present invention.

[0071] Figure 10 This is a schematic diagram of the controller broadcast address allocation data packet according to an embodiment of the present invention.

[0072] Figure 11 This is a schematic diagram of the satellite processing of received data packets according to an embodiment of the present invention. Detailed Implementation

[0073] Embodiments of the present invention are described in detail below, examples of which are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the present invention, and should not be construed as limiting the present invention.

[0074] It will be understood by those skilled in the art that, unless otherwise defined, all terms used herein (including technical and scientific terms) have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains.

[0075] It should also be understood that terms such as those defined in general dictionaries should be understood to have meanings consistent with their meanings in the context of the prior art, and should not be interpreted in an idealized or overly formal sense unless defined as here.

[0076] Those skilled in the art will understand that, unless specifically stated otherwise, the singular forms “a,” “an,” “the,” and “the” used herein may also include the plural forms. It should be further understood that the term “comprising” as used in this specification means the presence of the stated features, integers, steps, operations, elements, and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, and / or groups thereof.

[0077] 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 present invention. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of those different embodiments or examples.

[0078] To facilitate understanding of the present invention, the present invention will be further explained and described below with reference to the accompanying drawings and specific embodiments. However, the specific embodiments do not constitute a limitation on the embodiments of the present invention.

[0079] Those skilled in the art should understand that the accompanying drawings are merely schematic diagrams of embodiments, and the components in the drawings are not necessarily essential for implementing the present invention.

[0080] Example 1

[0081] In this embodiment 1, a distributed addressing and fast routing system is first provided, including: an establishment module for allocating orbit numbers, allocating satellite numbers within the orbits, mirroring satellite motion orbits, establishing an equivalent matrix satellite topology, and establishing a satellite relative motion model; a deployment module for selecting a suitable reference frame satellite deployment controller based on the established satellite relative motion model, so as to minimize the communication time between the controller and the farthest satellite when allocating satellite addresses; an allocation module for completing satellite address allocation based on the deployed controllers; and a synchronization module for synchronously establishing a routing table based on the allocated satellite addresses after confirming its own address and neighbor information.

[0082] In this embodiment 1, the above-described system is used to implement a distributed addressing and fast routing method, including: using an establishment module to allocate orbit numbers, satellite numbers within the orbits, mirror satellite motion orbits, and equivalent matrix satellite topology to establish a satellite relative motion model; using a deployment module to select a suitable reference frame satellite deployment controller based on the established satellite relative motion model to minimize the communication time between the controller and the farthest satellite when allocating satellite addresses; using an allocation module to allocate data packets based on the broadcast addresses of the deployed controllers, the satellites receive the broadcast address allocation data packets and confirm their own addresses, the satellites broadcast address allocation data packets to complete the satellite address allocation; finally, using a synchronization module to synchronously establish a routing table based on the allocated satellite addresses after confirming their own addresses and neighbor information.

[0083] The allocation of orbit numbers includes: describing each orbit through a set O, where n is the total number of orbits in the low Earth orbit satellite network, and numbering the orbits sequentially starting from a certain orbit;

[0084] O = {O1, O2, O3, ..., O} n}

[0085] The mirror satellite orbit includes: dividing the circular satellite orbit into two parts by the orbital intersection point; mirroring the two parts of the satellite orbit by the dividing point so that the satellite orbits are simultaneously within the same range; stretching the new mirrored orbit to straighten each orbit into a planar satellite motion topology.

[0086] Equivalent matrix satellite topology includes: using the satellite communication capabilities between adjacent orbits to adjust the planar satellite motion topology, placing satellites in different communicable orbits at the same horizontal position to form a matrix-like satellite topology.

[0087] By using the equivalent matrix satellite topology, the relative motion model is finally determined, including: selecting the moving satellite as the reference frame, using the relative position as the satellite coordinates, using the reference frame satellite as the origin, its orbital change direction as the x-axis, its orbit as the y-axis, and representing the operating position of each satellite in coordinate form to establish the relative motion model.

[0088] Choosing the satellite containing the betweenness center as the reference satellite, and borrowing the concept of betweenness centrality, the betweenness of a satellite node is the number of shortest paths through that satellite in the network. The betweenness centrality of a node is the sum of the ratios of the number of shortest paths between any two points through that node to the total number of all shortest paths.

[0089]

[0090] Where, σ st σ is the total number of shortest paths from node s to node t. st (v) is the number of paths passing through node v. By comparing the betweenness centrality of each node, the node with the largest value is selected as the origin of the reference frame, and the controller is deployed to achieve the shortest path, that is, the betweenness centrality point v has the largest betweenness centrality, the most shortest paths pass through this node, and the two ends of these shortest paths to node v are also shortest paths. This node can reach the most other nodes with the shortest distance.

[0091] The address allocation data packet structure includes: using the network's Layer 2 and Layer 3 protocols; wherein, the Layer 2 protocol is the standard Ethernet protocol, and the source / destination physical addresses are both satellite physical addresses in the data packet transmission; the Layer 3 protocol includes address acknowledgment data packets and address update data packets.

[0092] Both address acknowledgment packets and address update packets have the same source address length field and source address field; address acknowledgment packets have a destination address field, which represents the satellite address of the receiving end of the packet, and the receiving satellite uses this field to confirm its own address; the destination address field of address update packets has a variable length, and this field stores the address space that the receiving satellite can use as its own address.

[0093] Based on the deployed controller broadcasting address allocation data packets, the satellite receives the broadcast address allocation data packets and confirms its own address. The satellite then broadcasts address allocation data packets to complete the satellite address allocation, including:

[0094] After receiving the address acknowledgment data packet, the satellite determines whether the data packet is valid. The validity is determined by whether the port has received such a data packet before. If the data packet is invalid, it is directly dropped. If the data packet is valid, it is the first address acknowledgment data packet received by the port.

[0095] Based on the first received address confirmation data packet, determine the satellite's own address, store the source address (i.e., the sending satellite address), and record its own neighbor information;

[0096] The satellite broadcasts updated data packets to ports that have not been invalidated, based on its own address and the obtained neighbor information.

[0097] The satellite broadcasts updated data packets through its port, updating the available address space of surrounding satellites.

[0098] When a satellite receives an address update data packet, it verifies the validity of the received address update data packet. This validity is determined by whether an address confirmation data packet has been received before. If the satellite has already received an address confirmation data packet, then the satellite has completed address allocation, and the newly received address update data packet is discarded directly. Otherwise, if the data packet is valid, the satellite extracts multiple available satellite addresses contained in the destination address and stores them in a temporary register.

[0099] When a satellite receives a second address update data packet, if the second address update data packet comes from the same source as the first data packet, the satellite needs to extract the destination address content of the new data packet and update the available satellite address space in the temporary register; if the second address update data packet comes from a new satellite, the satellite extracts the destination address content of the new data packet, compares the new address space with the old address space in the temporary register, and selects the overlapping address as its own address.

[0100] The new address space is compared with the old address space in the temporary register, including: assuming the old address space is set ADDR1 and the new address space is set ADDR2, by comparing the common elements in the two sets, the satellite selects its own address addr. final As shown in the following formula:

[0101] addr final ={addr|addr∈ADDR1,addr∈ADDR2}.

[0102] During the address allocation process, each satellite calculates a unique addr. After confirming its own address, the satellite needs to store the neighbor information and reply with an address confirmation data packet to the source satellite that sent the address update data packet to inform it of its satellite address.

[0103] Broadcast update packets to non-invalidated ports, including: using its own address as the source address, adding or subtracting one from its own address coordinates to form four addresses as the destination address, while removing confirmed neighbor addresses from the destination address.

[0104] Based on the assigned satellite addresses, after confirming its own address and neighbor information, a routing table is synchronously established. This includes: the routing table uses address coordinate size matching; the routing table header includes: conditions 1 and 2 corresponding to address coordinate size matching conditions; the next-hop address corresponding to the next-hop forwarding satellite information for the data packet; the outgoing port corresponding to the forwarding direction of the data packet; and priority representing the priority order of ports when there are multiple outgoing ports. For a satellite with coordinates (u, v), its routing table contains four possible lookup matching conditions, corresponding to four different directions of the target address under this satellite; when one of the lookup conditions is met, the satellite prioritizes the vertical direction for data packet forwarding; the outgoing port corresponds to the next-hop address and is filled in when obtaining neighbor satellite information. Priority ensures path adjustment and backup for satellite forwarding, including: by adjusting the priority value, the satellite can change the forwarding direction of the data packet; when a link fails, the satellite selects a backup path according to the priority value to prevent control information data packets from failing to reach the destination satellite.

[0105] Example 2

[0106] In this second embodiment, a distributed addressing and fast routing method is proposed. By establishing a relative motion model, and considering the motion characteristics of polar orbit satellites, the motion amplitude of satellites in the topology is reduced, stabilizing the connection topology between satellites. Then, based on betweenness centrality and with the goal of shortening communication distance, the controller deployment location is selected. Finally, the routing table and satellite address structure are deeply bound together, designing a completely new satellite address scheme and corresponding routing table structure.

[0107] The overall flowchart of the method described in this embodiment 2 is as follows: Figure 1 As shown, it mainly consists of four modules: establishing a satellite relative motion model, determining the controller deployment location, allocating satellite addresses, and synchronously establishing a routing table. Through these four main modules, distributed addressing and fast routing are completed in the polar orbit satellite control network, providing a fundamental guarantee for subsequent data transmission.

[0108] When establishing the satellite relative motion model, each satellite needs to be distinguished for easy use in subsequent modules. Furthermore, all subsequent module designs are based on the satellite relative motion model generated in this module; therefore, this model is explained as an independent module. The specific establishment process of this module is as follows: Figure 2 As shown, it includes several parts: assigning orbital numbers, assigning satellite numbers within the orbits, mirror satellite motion orbits, equivalent matrix satellite topology, and determining the relative motion model.

[0109] Orbital numbering: This section describes the actual satellite orbits using mathematical language. Polar orbit satellite networks often have multiple satellite orbits, which are generally parallel to meridians and pass over the North and South Poles. These orbits encircle the Earth, bisecting its surface to ensure satellite communication is possible from any region on the ground.

[0110] Figure 3 This diagram illustrates the orbits of four polar orbit satellites. In actual polar orbit satellite networks, the number of orbits is not limited to four. This invention describes each orbit using a set O, as shown in Formula 1. Here, n represents the total number of orbits in the low Earth orbit satellite network. Starting from a given orbit, the orbits are numbered sequentially from west to east.

[0111] O = {O1, O2, O3, ..., O} n}(1)

[0112] Satellite numbering within orbits: This section provides a mathematical description of the multiple satellites within the aforementioned orbits. In polar orbit satellite networks, the ground area covered by a single satellite is limited. To ensure broad signal communication support, multiple satellites typically exist simultaneously in each orbit. These satellites move in the same direction within their orbits and are evenly distributed across the orbital rings.

[0113] Furthermore, orbits with multiple satellites offer a degree of stability, allowing for uninterrupted network service even in the event of a satellite failure. Considering that in actual polar orbit satellite networks, each orbit carries the same number of satellites, this embodiment defines this value as N0. The number of satellites in these orbits can form a set N, as shown in Formula 2. Represents orbit O i The number of satellites in orbit. For each orbit, starting with a particular satellite, the satellites are numbered sequentially from south to north.

[0114]

[0115] Mirror satellite orbit: This section adjusts the satellite's orbit to create a planar satellite topology. For example... Figure 3 As shown, the satellite orbits in a ring around the Earth. This type of operation requires three parameters to accurately represent the satellite's position. However, considering that all satellites orbit at the same altitude, the altitude parameter does not affect the satellite's position.

[0116] Therefore, in this embodiment, the circular satellite orbit is segmented, mirrored, and stretched, as follows: Figure 4As shown, using the boundary between the North and South Poles as the dividing point, the satellite orbits in the Western Hemisphere are mirrored with respect to the North Pole, so that the satellite orbits are simultaneously located within the Eastern Hemisphere. Then, the new orbits are stretched, turning each orbit into a straight line, with circles representing each satellite, forming a planar satellite motion topology.

[0117] Equivalent Matrix Satellite Topology: This section further adjusts the planar satellite orbital topology to form an equivalent matrix topology. To prevent collisions between satellites at the boundary above the poles, each orbital satellite is assigned a differentiated orbital time to ensure that each satellite passes the poles sequentially. Therefore, in this case, the planar orbital topology of the satellites exhibits the characteristic of the same vertical position but different horizontal positions. In this embodiment, it is necessary to utilize the satellite communication capability between adjacent orbits; therefore, the planar orbital topology is further adjusted, such as... Figure 5 As shown, satellites in different orbits that can communicate are placed at the same horizontal position to form a matrix-like satellite topology.

[0118] Determining the Relative Motion Model: This section determines the relative motion model through an equivalent matrix satellite topology. In this embodiment, the design addresses inter-satellite communication based on satellite operational characteristics, thus requiring the identification and processing of these characteristics. In actual polar orbit satellite networks, satellites maintain periodic motion with high speeds and short periods. However, a relatively stable network topology is needed to facilitate satellite research. Therefore, this embodiment selects a moving satellite as the reference frame and uses relative position as satellite coordinates to minimize the additional topological complexity caused by periodic motion. The reference frame satellite is used as the origin, its orbital change direction is the x-axis, and its orbit is the y-axis. The position of each satellite is represented in coordinate form, such as... Figure 6 As shown. Based on this coordinate system, a relative motion model is established.

[0119] In this embodiment, when determining the deployment location of the controller, it is necessary to select a suitable reference satellite and deploy the controller on that satellite so that the communication time from the controller to the farthest satellite can be minimized when allocating satellite addresses. Figure 7A relative motion model of a polar-orbiting satellite network is presented, consisting of 6 orbits and 11 satellites in each orbit. The connection lines between the nodes in the diagram show that the connections between satellites in the same orbit form a ring, i.e., satellites 1, 7, 13, 19, 25, 31, 37, 43, 49, 55, and 61 are connected to each other sequentially. Satellites 1 and 61 are also connected. However, the connections between satellites in different orbits form a linear pattern, i.e., satellites 1, 2, 3, 4, 5, and 6 are connected sequentially, while satellites 1 and 6 cannot be connected. This is because in actual orbits, the orbit of satellite 1 is located to the west of the orbit of satellite 6, but the satellites in the two orbits move in opposite directions, making long-term communication difficult. In this model, this embodiment selects the satellite located at the betweenness center point as the reference frame satellite, i.e., satellite number 33 in the diagram.

[0120] Considering the need for the controller to be deployed at the network center and for short distances between the controller and each satellite, this embodiment borrows the concept of betweenness centrality. Betweenness centrality is a measure of graph centrality based on shortest paths. The betweenness of a node refers to the number of shortest paths through the node in a network. The betweenness centrality of a node is the sum of the ratios of the number of shortest paths through the node to the total number of shortest paths between any two points, as shown in Equation 3.

[0121]

[0122] Where, σ st σ is the total number of shortest paths from node s to node t. st (v) represents the number of paths passing through node v. By comparing the betweenness centrality of each node, selecting the node with the largest value as the origin of the reference frame, and deploying the controller, the shortest path can be maximized. That is, the betweenness centrality point v has the largest betweenness centrality, the most shortest paths pass through this node, and the ends of these shortest paths are also shortest paths to node v. This node can reach the most other nodes with the shortest distance.

[0123] In this embodiment, a distributed address allocation mechanism is used when allocating satellite addresses. Each satellite can complete its own address allocation without frequent communication with the central controller. The flowchart of this allocation process is as follows: Figure 8 As shown, it includes four main parts: controller broadcast address allocation data packet, satellite receive data packet, satellite confirm its own address, and satellite broadcast address allocation data packet.

[0124] Basic Data Packet Structure: This section serves as the foundation for satellite address allocation, demonstrating the main structure of communication data packets during the address allocation process. Figure 9This illustration demonstrates the basic structure of the data packets used in this embodiment. The data packets in this embodiment primarily utilize Layer 2 and Layer 3 network protocols. The Layer 2 protocol is the standard Ethernet protocol, where both the source and destination physical addresses are the satellite's physical addresses during data packet transmission, and the Ethernet port number is a proprietary port number for the protocol used in this embodiment. The Layer 3 protocol is a novel address allocation protocol that uses a custom structure to complete communication between satellites. The type field is 8 bits and includes two different types of data packets: address acknowledgment packets and address update packets. Both types of data packets have the same source address length field and source address field, representing information about the sending satellite. A satellite only sends out data packets after confirming its own address. The difference lies in the destination address field: the address acknowledgment packet has a 16-bit destination address field, representing the satellite address of the receiving satellite. The receiving satellite uses this field to confirm its own address. The destination address field of the address update packet has a variable length, which can be 16, 32, or 48 bits. This field stores the address space that the receiving satellite can use as its own address.

[0125] Controller broadcast address allocation data packet: This section marks the beginning of the satellite address allocation process. The address allocation method designed in this embodiment requires triggering by the controller satellite to initiate the entire allocation process. Figure 10 The broadcast process of the controller satellite is demonstrated. The controller satellite sets the address allocation protocol type to "1", the source address length to "0x0F", the destination address length to "0x0F", the source address to "0,0", and the destination addresses to "0,-1", "0,1", "1,0", and "-1,0" respectively. These four destination addresses represent the addresses of the four neighboring satellites connected to the controller satellite. "0,-1" and "0,1" need to be sent in the opposite direction, as do "1,0" and "-1,0". After broadcasting this data packet, the controller can wait for the entire network address allocation to complete.

[0126] Satellites receive data packets, confirm their own addresses, and broadcast address allocation data packets: This section is crucial for satellite address allocation, mainly including the processing procedures after each satellite receives the data packets. Figure 11 The flowchart shows the complete satellite data packet processing process. Satellites employ different processing methods for address confirmation packets and address update packets.

[0127] (1) Processing Address Confirmation Packets: Address confirmation packets are used to assign addresses to destination satellites. For each port of each satellite, this packet only needs to be received once to confirm its own address. Receiving and processing this type of packet multiple times will increase the unnecessary operational burden on the satellite and affect the fast transmission of data packets. Therefore, after receiving this type of packet, the satellite needs to first determine whether the packet is valid. The validity is based on whether the port has received this type of packet before. If the packet is invalid, it will be dropped directly. If the packet is valid, it means that this packet is the first such packet received by this port. The satellite needs to record all subsequent packets received by this port as invalid to prevent repeated reception of useless packets. For this packet, the satellite will extract the destination address field, use its contents as its own address, and store it in the satellite register. At the same time, the satellite can store the source address, i.e., the address of the sending satellite, and record its own neighbor information. Then, the satellite needs to reply with an address confirmation packet to the receiving port to inform the sending end that it has received the packet and completed the address allocation. Afterwards, the satellite needs to broadcast address update packets to the ports that have not been invalidated, based on its own address and the obtained neighbor information. The data packet must use its own address as the source address, and the four addresses formed by adding or subtracting one from its own address coordinates must be used as the destination addresses. Confirmed neighbor addresses must be removed from the destination addresses. The satellite broadcasts this data packet through its port, updating the available address space of surrounding satellites. For example, if the satellite's own address coordinates are (x, y), then the four destination addresses will be (x+1, y+1), (x-1, y-1), (x+1, y-1), and (x-1, y+1).

[0128] (2) Processing Address Update Packets: Address update packets send available address space to the destination satellite. These packets are generated because some satellites do not receive address confirmation packets. For example... Figure 10In the satellite constellation, after the controller satellite 33 broadcasts an address confirmation packet, satellites 27 and 32 can confirm their own addresses and reply with confirmation information to the controller satellite. Without an address update packet, satellite 26 will never receive address confirmation or update information, causing the address allocation process to stall. Therefore, this type of packet is needed to help satellite 26 confirm its own address. When a satellite receives such a packet, it also needs to confirm its validity, which is determined by whether it has received an address confirmation packet before. If the satellite has already received an address confirmation packet, it means that the satellite has completed address allocation, and the newly received address update packet is no longer relevant and can be discarded. Conversely, if the packet is valid, the satellite extracts the multiple available satellite addresses contained in its destination address and stores them in a temporary register. At this time, the satellite's processing is paused. When a satellite receives a second address update packet, there are two possibilities: ① The packet originates from the same source as the first packet. In this case, the satellite needs to extract the destination address content of the new packet and update the available satellite address space in the temporary register. ② The packet originates from a new satellite. In this scenario, the satellite still needs to extract the destination address of the new data packet. However, unlike the previous method, the satellite compares the new address space with the old address space in a temporary register and selects the overlapping address as its own address. Assuming the old address space is set ADDR1 and the new address space is set ADDR2, by comparing the identical elements in the two sets, the satellite selects its own address, addr. final As shown in Formula 4.

[0129] addr final ={addr|addr∈ADDR1,addr∈ADDR2} (4)

[0130] It is worth noting that during the address allocation process, each satellite calculates a unique address; multiple addresses will not be generated. After confirming its own address, a satellite also needs to store its neighbor information and reply with an address confirmation packet to the source satellite that sent the address update packet, informing it of its satellite address. The entire process is automated. Except for the initial triggering by the controller satellite, each satellite can automatically complete the address allocation and terminate the process itself after the address allocation is complete.

[0131] In this embodiment, the routing table for inter-satellite data packets has a unique design during the synchronous establishment of the routing table. The routing table can be established synchronously during the satellite address allocation process, without requiring secondary communication with other satellites. After confirming its own address and neighbor information, the satellite can begin synchronously establishing its routing table.

[0132] In this embodiment, the routing table used differs from traditional IP network routing tables. Instead of using longest prefix matching, it uses address coordinate size value matching. The basic structure of the routing table header in this embodiment is shown in Table 1. This routing table contains five basic headers: Condition 1 and Condition 2 correspond to address coordinate size value matching conditions; the next-hop address corresponds to the next-hop forwarding satellite information of the data packet; the outgoing port corresponds to the forwarding direction of the data packet; and the priority represents the priority order of each port when there are multiple outgoing ports.

[0133] Table 1

[0134] Condition 1 Condition 2 Next hop address Output port Priority

[0135] For a satellite with coordinates (u,v), Table 2 shows the details of its routing table. This table contains four main lookup matching conditions, each corresponding to a different direction from the satellite's destination address. When one of these conditions is met, the satellite will prioritize forwarding data packets in the vertical direction because vertical satellite connections are more stable, allowing data packets to be transmitted to the vicinity of the destination satellite as quickly as possible. The outgoing port corresponds to the next-hop address and can be filled in when obtaining neighbor satellite information.

[0136] Priority provides satellite forwarding with the possibility of adjustment and ample backup paths. First, by adjusting priority values, satellites can change the direction of data packet forwarding to adapt to new network requirements. Furthermore, when a link fails, satellites can select an alternative path based on priority values ​​to prevent control information data packets from failing to reach their destination satellite.

[0137] This method of pre-storing backup paths during address allocation offers a significant time advantage over mechanisms that rely on finding new paths after a failure occurs. This synchronous method minimizes routing table creation time while ensuring uninterrupted data transmission even after a failure.

[0138] Table 2

[0139]

[0140] This concludes the description of the complete distributed satellite address allocation and routing table synchronization process in this embodiment. By proposing a relative motion model, selecting betweenness centers and deploying controllers, and simultaneously allocating distributed addresses and establishing routing tables, a complete satellite network configuration method and system have been completed. This system offers significant advantages in several aspects.

[0141] In summary, the key point of this embodiment 2 lies in designing a distributed addressing and fast routing method and system for mobile ad hoc networks (satellite networks), proposing a relative motion model with the satellite itself as the reference frame. This model differs from traditional satellite motion models with the ground as the reference frame. Ground-based models, due to the high-speed motion of satellites, struggle to form stable network topologies, negatively impacting research on inter-satellite connections, satellite addressing, and satellite routing. In contrast, under the relative motion model, the relative motion between satellites is relatively slow, resulting in a more stable topology formed by the satellite network connections. This model better illustrates the motion relationships between satellites, facilitating various studies on inter-satellite communication.

[0142] This embodiment proposes a controller satellite selection method based on betweenness center points. The betweenness center point is the intersection point traversed by the most shortest paths. Deploying the controller on the satellite located at this point ensures a shorter communication distance between the controller and each satellite, reducing additional communication latency during data packet transmission.

[0143] This embodiment proposes an addressing method using satellite coordinates as addresses. Based on a relative motion model and betweenness center points, satellite relative coordinates are used as satellite addresses, allowing for direct network addressing of each satellite. This addressing method reduces the complex mapping between satellite positions and addresses, lowering addressing costs. Furthermore, this addressing method offers significant advantages for communication between adjacent satellites. Since the addresses of adjacent satellites differ by only one, it is easy to form simple routing tables, accelerating data packet routing lookup.

[0144] This embodiment proposes a novel address allocation protocol based on the concept of distributed address allocation. This protocol, triggered by the controller, uses two types of data packets to enable each satellite to autonomously and reactively complete the address allocation process. Satellites do not need to communicate frequently with the controller, reducing the cost of address allocation. Simultaneously, this invention considers satellite communication resource issues; by judging the validity of the two types of data packets, it filters received and upcoming data packets, greatly reducing the transmission of useless data packets between satellites.

[0145] In this embodiment, the routing table establishment process is integrated into the address allocation stage. This integration method avoids the secondary communication overhead of determining routing paths between satellites after address allocation, while also shortening satellite network configuration time and improving configuration efficiency.

[0146] This embodiment proposes a routing table size matching method. This method, targeting the proposed non-clustered coordinate-based addresses, extracts key address fields and matches them against the address range in the routing table to determine the routing direction of data packets. This matching approach offers significant advantages in routing non-clustered addresses, providing a new direction for address matching.

[0147] This embodiment proposes a multi-egress routing table framework. Compared to the traditional single-egress routing matching mode, this invention expands the routing egress. Under normal circumstances, data packets are routed through the first egress. However, when the path at the first egress fails, the routing table can automatically switch egress points, using the second egress as the new routing direction, thus achieving uninterrupted data transmission.

[0148] Example 3

[0149] This embodiment 3 provides a non-transitory computer-readable storage medium for storing computer instructions. When the computer instructions are executed by a processor, they implement the distributed addressing and fast routing method described above.

[0150] Example 4

[0151] This embodiment 4 provides a computer program product, including a computer program that, when run on one or more processors, is used to implement the distributed addressing and fast routing method described above.

[0152] Example 5

[0153] This embodiment 5 provides an electronic device, including: a processor, a memory, and a computer program; wherein, the processor is connected to the memory, and the computer program is stored in the memory. When the electronic device is running, the processor executes the computer program stored in the memory to cause the electronic device to execute instructions that implement the distributed addressing and fast routing method as described above.

[0154] In summary, the distributed addressing and fast routing method and system described in the embodiments of the present invention have the following characteristics:

[0155] First, it breaks away from the fixed structure of traditional IPv4 addresses and proposes a coordinate-based address system based on inter-satellite communication relationships. It fully utilizes the inter-satellite communication characteristics of polar-orbiting satellites, using the satellite itself as a reference frame to establish a relative motion model of the satellites, ensuring a stable topology. Furthermore, it assigns a unique coordinate-based address to each satellite from a global perspective, facilitating data communication between satellites. This address is closely related to the satellite's spatial position, ensuring the most efficient use of spatial information.

[0156] Second, the satellite address allocation and satellite routing table establishment processes are synchronized. The satellite routing table establishment process is advanced and performed concurrently with satellite address allocation. After receiving the address allocation information, the satellite can confirm its own address based on this information, and it can also obtain information about surrounding nodes from this information to synchronously establish its routing table. This synchronous operation significantly reduces the frequency of data packet transmission and accelerates the configuration speed of the satellite control network. During the address allocation process, each satellite only needs to send a maximum of ten control data packets to autonomously complete the address allocation. The routing table information is populated at the beginning of network configuration, reducing the time spent recalculating routes later.

[0157] Third, a completely new routing table structure was proposed. Instead of using the longest prefix matching method, a key field size value matching mode was adopted. This mode fully utilizes the characteristics of coordinate-based satellite addresses, greatly simplifying the satellite routing table while ensuring sufficient shortest transmission paths. For any given satellite, its routing table has a maximum of four routing entries, sufficient for correct lookup and forwarding of control signals. Furthermore, these four entries can also contain all the shortest paths between that satellite and the destination satellite.

[0158] In one specific embodiment, the distributed addressing and fast routing method of the present invention can be used in future large-scale low-Earth orbit (LEO) satellite networks (tens of thousands of LEO satellites). By deploying one or more controllers, the entire network address allocation is triggered simultaneously. Each satellite autonomously receives data packets, analyzes the content, allocates addresses, and further propagates the data packets. Even in large-scale LEO satellite networks, the speed of address allocation and routing table configuration, as well as the speed of subsequent routing table lookups, can be guaranteed to ensure rapid deployment and practical application after network deployment within a relatively short time.

[0159] In another specific embodiment, the distributed addressing and fast routing method of the present invention can be applied to networks with low-density connectivity. For general terrestrial networks, the present invention can also implement this address allocation mechanism. The basis of the present invention is to arrange the forwarding nodes in a matrix and complete address allocation at each point. In general terrestrial networks, by abstracting the node topology, extracting their connection relationships, and adjusting the node positions, a matrix-like arrangement can be formed. This arrangement can also be used for address allocation and routing table configuration.

[0160] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0161] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0162] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0163] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment, whereby a series of operational steps are performed to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0164] While the specific embodiments of the present invention have been described above in conjunction with the accompanying drawings, this is not intended to limit the scope of protection of the present invention. Those skilled in the art should understand that, based on the technical solutions disclosed in the present invention, various modifications or variations that can be made by those skilled in the art without creative effort should be included within the scope of protection of the present invention.

Claims

1. A distributed addressing and fast routing method, characterized in that, include: Assign orbit numbers, assign satellite numbers within the orbits, mirror satellite motion orbits, establish equivalent matrix satellite topology, and build a satellite relative motion model; Mirror satellite orbits include: dividing the circular satellite orbit into two parts by the orbital intersection point; mirroring the two parts of the orbit by the dividing point so that the two orbits are simultaneously within the same range; stretching the new mirrored orbit to straighten each orbit into a planar satellite motion topology; and using the equivalent matrix satellite topology, adjusting the planar satellite motion topology by utilizing the satellite communication capabilities between adjacent orbits to place satellites in different communicable orbits at the same horizontal position to form a matrix-like satellite topology. Based on the established satellite relative operation model, a suitable reference frame satellite deployment controller is selected so that the communication time from the controller to the farthest satellite is minimized when assigning satellite addresses; Based on the deployed controller broadcasting address allocation data packets, the satellite receives the broadcast address allocation data packets and confirms its own address, and the satellite broadcasts address update data packets to complete the satellite address allocation; Based on the assigned satellite addresses, after confirming its own address and neighbor information, a routing table is established synchronously.

2. The distributed addressing and fast routing method according to claim 1, characterized in that, The allocation of track numbers includes: via a set Each orbit is described, among which, The total number of orbits in the low Earth orbit satellite network is determined by numbering the orbits sequentially, starting from a specific orbit. 。 3. The distributed addressing and fast routing method according to claim 2, characterized in that, By using the equivalent matrix satellite topology, the relative motion model is finally determined, including: selecting the moving satellite as the reference frame, using the relative position as the satellite coordinates, using the reference frame satellite as the origin, its orbit change direction as the x-axis, its orbit as the y-axis, and representing the position of each satellite in coordinate form to establish the relative motion model; Choosing the satellite containing the betweenness center as the reference satellite, and borrowing the concept of betweenness centrality, the betweenness of a satellite node is the number of shortest paths through that satellite in the network. The betweenness centrality of a node is the sum of the ratios of the number of shortest paths between any two points through that node to the total number of all shortest paths. ; in, From node To the node The total number of shortest paths, It is one of the nodes that pass through. The number of paths; by comparing the betweenness centrality of each node, the node with the largest value is selected as the origin of the reference frame, and the controller is deployed to achieve the shortest path, where the nodes... It has the highest betweenness centrality, and the most shortest paths passing through node v, with the endpoints of these shortest paths leading to node v. Also a shortest path, this node v reaches the most other nodes in the shortest distance.

4. The distributed addressing and fast routing method according to claim 1, characterized in that, The address allocation packet structure includes: using the network's Layer 2 and Layer 3 protocols; wherein, the Layer 2 protocol is the standard Ethernet protocol, and the source / destination physical addresses are both the satellite physical addresses in the packet transmission; the Layer 3 protocol is an address allocation protocol, which uses a custom structure to complete communication between satellites, wherein the type field is 8 bits, including address acknowledgment packets and address update packets; Both address acknowledgment packets and address update packets have the same source address length field and source address field; address acknowledgment packets have a destination address field, which represents the satellite address of the receiving end of the packet, and the receiving satellite uses this field to confirm its own address; the destination address field of address update packets has a variable length, and this field stores the address space that the receiving satellite can use as its own address.

5. The distributed addressing and fast routing method according to claim 4, characterized in that, Based on the deployed controller broadcasting address allocation data packets, the satellite receives the broadcast address allocation data packets and confirms its own address. The satellite then broadcasts address allocation data packets to complete the satellite address allocation, including: After receiving an address acknowledgment data packet, the satellite determines whether the packet is valid. The validity is determined by whether the satellite port that received the address acknowledgment data packet has received such a packet before. If the packet is invalid, it is dropped directly. If the packet is valid, it is the first address acknowledgment data packet received by that port. Based on the first received address confirmation data packet, determine the satellite's own address, store the sending satellite address, and record its own neighbor information; The satellite broadcasts updated data packets to ports that have not been invalidated, based on its own address and the obtained neighbor information. The satellite broadcasts updated data packets through its port, updating the available address space of surrounding satellites.

6. The distributed addressing and fast routing method according to claim 5, characterized in that, When a satellite receives an address update data packet, it verifies the validity of the received address update data packet. This validity is determined by whether an address confirmation data packet has been received before. If the satellite has already received an address confirmation data packet, then the satellite has completed address allocation, and the newly received address update data packet is discarded directly. Otherwise, if the data packet is valid, the satellite extracts multiple available satellite addresses contained in the destination address and stores them in a temporary register.

7. The distributed addressing and fast routing method according to claim 6, characterized in that, When a satellite receives a second address update data packet, if the second address update data packet comes from the same source as the first data packet, the satellite needs to extract the destination address content of the new data packet and update the available satellite address space in the temporary register; if the second address update data packet comes from a new satellite, the satellite extracts the destination address content of the new data packet, compares the new address space with the old address space in the temporary register, and selects the overlapping address as its own address.

8. The distributed addressing and fast routing method according to claim 7, characterized in that, The new address space is compared with the old address space in the temporary register, including: assuming the old address space is a set. The new address space is a set By comparing the same elements in the two sets, the satellite selects its own address. As shown in the following formula: ; During the address allocation process, the calculated value for each satellite Unique; after confirming its own address, the satellite needs to store the neighbor information and reply with an address confirmation data packet to the source satellite that sent the address update data packet to inform it of its satellite address; Broadcast update packets to ports that have not been invalidated, including: using its own address as the source address, adding or subtracting one from its own address coordinates to form four addresses as the destination address, and removing confirmed neighbor addresses from the destination address.

9. The distributed addressing and fast routing method according to claim 1, characterized in that, Based on the assigned satellite address, after confirming its own address and neighbor information, a routing table is synchronously established, including: the routing table uses address coordinate size value matching, the routing table header includes: condition 1 and condition 2 correspond to address coordinate size value matching conditions, the next hop address corresponds to the next hop forwarding satellite information of the data packet, the outgoing port corresponds to the forwarding direction of the data packet, and the priority represents the priority order of each port when there are multiple outgoing ports; For coordinates The satellite's routing table contains four possible lookup matching conditions, each corresponding to a different direction of the target address under this satellite. When one of the lookup conditions is met, the satellite prioritizes forwarding the data packet in the vertical direction. The outgoing port corresponds to the next-hop address and is filled in when obtaining neighbor satellite information. Priority ensures the adjustment and backup of the satellite forwarding path, including: by adjusting the priority value, the satellite can change the forwarding direction of the data packets; when a link fails, the satellite selects an alternative path according to the priority value to prevent the control information data packets from failing to reach the destination satellite.

10. A distributed addressing and fast routing system based on the method described in any one of claims 1-9, characterized in that, include: Establish a module for assigning orbit numbers, assigning satellite numbers within orbits, mirroring satellite motion orbits, creating an equivalent matrix of satellite topology, and establishing a satellite relative motion model; Mirror satellite orbits include: dividing the circular satellite orbit into two parts by the orbital intersection point; mirroring the two parts of the orbit by the dividing point so that the two orbits are simultaneously within the same range; stretching the new mirrored orbit to straighten each orbit into a planar satellite motion topology; and using the equivalent matrix satellite topology, adjusting the planar satellite motion topology by utilizing the satellite communication capabilities between adjacent orbits to place satellites in different communicable orbits at the same horizontal position to form a matrix-like satellite topology. The deployment module is used to select a suitable reference frame satellite deployment controller based on the established satellite relative operation model, so as to minimize the communication time of the controller to the farthest satellite when allocating satellite addresses; The allocation module is used to allocate data packets based on the broadcast address of the deployed controller. The satellite receives the broadcast address allocation data packet and confirms its own address. The satellite broadcasts the address update data packet to complete the satellite address allocation. The synchronization module is used to synchronously build a routing table based on the assigned satellite address after confirming its own address and neighbor information.