Satellite networking construction method and apparatus, medium, and device

By constructing a satellite network based on satellite orbit data on a ground management platform and selecting satellites with good communication quality, the problem of unstable inter-satellite communication affecting mission execution was solved, thus improving mission efficiency and quality.

WO2026097651A1PCT designated stage Publication Date: 2026-05-15ZHEJIANG LAB
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
ZHEJIANG LAB
Filing Date
2024-12-10
Publication Date
2026-05-15

AI Technical Summary

Technical Problem

In satellite constellations, the inter-satellite communication links are affected by the harsh space environment, resulting in unstable communication quality and impacting the efficiency and accuracy of distributed missions.

Method used

The communication quality is predicted based on satellite orbit data by the ground management platform, candidate satellites with good communication quality are selected to build a satellite network, and distributed tasks are executed on a network-by-network basis.

Benefits of technology

It improves the execution efficiency and quality of distributed tasks and reduces the impact of the inter-satellite environment on task execution.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024138288_15052026_PF_FP_ABST
    Figure CN2024138288_15052026_PF_FP_ABST
Patent Text Reader

Abstract

The present application provides a satellite networking construction method and apparatus, a medium, and a device. For each satellite in a satellite cluster, on the basis of orbit data of each satellite, candidate satellites for the satellite are determined, and the communication quality between the satellite and each candidate satellite within a first future time period is predicted, so as to determine, on the basis of each determined communication quality, a resource amount of each candidate satellite, and the orbit data, networking satellites matching the satellite from the candidate satellites, thereby constructing a satellite network for the satellite. In the satellite cluster, taking the satellite network as a unit, a distributed task to be executed is executed. By determining, for each satellite, satellites having better communication quality as networking satellites respectively corresponding to each satellite, a satellite network for each satellite is constructed, and then taking the satellite network as a unit, a distributed task is executed, thereby improving the execution efficiency and quality of the distributed task, and reducing the impact of an inter-satellite environment on the execution of the distributed task.
Need to check novelty before this filing date? Find Prior Art

Description

A method, apparatus, medium, and equipment for constructing a satellite network Technical Field

[0001] This application relates to the field of satellite cloud computing, and in particular to a method, apparatus, medium and equipment for constructing satellite networks. Background Technology

[0002] With the development of satellite technology and cloud computing, the integration of satellites, ground stations, and cloud computing centers has become a crucial development direction. Leveraging the wide coverage and strong disaster resilience of satellites, building an integrated space-ground network and application architecture has become an important development trend. Cloud computing centers, in particular, have high demands for computing power and energy resources, and therefore are often deployed on the ground. When a satellite needs to utilize the computing power of a cloud computing center to perform a task, the data required for the task must be transmitted to the ground. The ground-based cloud computing center then executes the task based on the data and returns the task data to the satellite.

[0003] In existing technologies, in order to solve the problem of large delays in satellite mission execution caused by the distance between cloud computing centers and data sources, edge computing technology is usually applied to satellite clusters. That is, through edge computing platforms, such as KubeEdge, the applications that perform the missions are deployed on the satellites, and computing resources are provided on the satellites to perform the missions, so that the satellites in the satellite cluster can perform missions between satellites.

[0004] However, inter-satellite data transmission primarily relies on radio waves and laser communication. The harsh environment of space, including multipath fading and solar activity, can lead to high error rates or even communication failures in inter-satellite communication links, thus impacting the efficiency of distributed inter-satellite missions. Therefore, establishing inter-satellite networks to reduce the impact of communication quality on mission efficiency has become a pressing issue. Summary of the Invention

[0005] This application provides a satellite networking construction method, apparatus, medium, and equipment to partially solve the aforementioned problems existing in the prior art.

[0006] The technical solution adopted in this application is as follows:

[0007] A method for constructing a satellite network, the method being applied to a ground management platform, comprising:

[0008] For each satellite in the satellite cluster, based on the orbital data of each satellite, each satellite that can communicate with the satellite in the first time in the future is identified as a candidate satellite, and the communication quality between the satellite and each candidate satellite in the first time in the future is predicted.

[0009] Based on the determined communication quality, the resource quantity of each candidate satellite, and the orbital data, a networking satellite that matches the satellite in the first future time period is determined from among the candidate satellites, and the satellite network of the satellite is constructed.

[0010] The satellite network corresponding to each satellite is sent to each satellite, so that each satellite can perform distributed tasks in the form of its corresponding satellite network.

[0011] Optionally, based on the determined communication quality, the resource quantity of each candidate satellite, and the orbital data, a networking satellite matching the satellite in the first future time period is determined from among the candidate satellites, specifically including:

[0012] Based on the orbital data, each candidate link is determined from the links between each candidate satellite and the satellite, and the pheromone concentration corresponding to each candidate link is determined;

[0013] Based on the pheromone concentration corresponding to each candidate link, starting from the satellite, a satellite network is constructed for each satellite, and the quality of each path is determined. The pheromone concentration corresponding to each candidate link is adjusted according to the determined quality of each path.

[0014] After adjusting the preset rounds, the quality of each path in the current round is determined, and the networking satellites of the satellites are determined based on the quality of each path.

[0015] Optionally, the pheromone concentration corresponding to each candidate link is adjusted based on the quality of each determined path, specifically including:

[0016] Based on the quality of each determined path, the paths are sorted to determine a first sequence;

[0017] Based on the pheromone concentration corresponding to each candidate link in each path, the pheromone concentration corresponding to each path is determined, and the paths are sorted according to the pheromone concentration to determine the second sequence;

[0018] With the goal of minimizing the difference between the first sequence and the second sequence, the determined communication quality, the resource quantity of each candidate satellite, and the weighting weights among the orbital data are adjusted, and the pheromone concentrations corresponding to each candidate link are updated.

[0019] Optionally, based on the orbital data, candidate links are determined from the links between the candidate satellites, specifically including:

[0020] Based on the determined communication quality, the resource quantity of each candidate satellite, and the orbital data, an evaluation score is determined for the link between each candidate satellite and the satellite.

[0021] Links whose evaluation scores reach a preset value are selected as candidate links.

[0022] Optionally, based on the orbital data of each satellite, satellites that can communicate with the satellite in the first time in the future are identified as candidate satellites, specifically including:

[0023] Based on the orbital data of each satellite, determine the satellites that can communicate with the satellites mentioned above;

[0024] Based on the communication time periods of the communicable satellites, identify the communicable satellites whose communication time periods overlap with those of the satellites in the first future time period, and use them as candidate satellites for the satellites.

[0025] Among the candidate satellites, determine the networking satellites that match the satellites within the first future timeframe, and construct the satellite network, specifically including:

[0026] Based on the overlap time period between the satellite and each candidate satellite, determine the networking satellites that match the satellite at each time point in the first time period, and construct the satellite network of the satellite at each time point in the first time period.

[0027] Optionally, among the candidate satellites, a networking satellite matching the satellite in the first future time period is determined, specifically including:

[0028] Determine the number of communication terminals for the satellite;

[0029] Among the candidate satellites, satellites with a number of communication terminals not exceeding that of the satellites are selected as the networking satellites.

[0030] Optionally, the satellite network corresponding to each satellite is sent to each satellite, specifically including:

[0031] Identify the satellites that can communicate with the ground management platform at the current moment;

[0032] The determined satellite network is sent to the satellites that can communicate with the ground management platform at the current time, so that the satellites that can communicate with the ground management platform at the current time can synchronize the satellite network between satellites.

[0033] This application provides a satellite networking construction device, which is installed on a ground management platform and includes:

[0034] The prediction module is used to determine, based on the orbital data of each satellite in the satellite cluster, each satellite that can communicate with the satellite in the first future time period as candidate satellites, and to predict the communication quality between the satellite and each candidate satellite in the first future time period.

[0035] A construction module is used to determine, based on the determined communication quality, the resource quantity of each candidate satellite and the orbital data, the networking satellite that matches the satellite in the first future time period, and construct the satellite network of the satellite;

[0036] The sending module is used to send the satellite network corresponding to each satellite to each satellite, so that each satellite can perform distributed tasks in the form of the corresponding satellite network.

[0037] This application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described satellite networking construction method.

[0038] This application provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the above-described satellite network construction method.

[0039] The above-mentioned technical solution adopted in this application can achieve the following beneficial effects:

[0040] In a satellite network construction method described in this application, for each satellite in the satellite cluster, candidate satellites are determined based on the orbital data of each satellite, and the communication quality between the satellite and each candidate satellite in the first future time period is predicted. Based on the determined communication quality, resource availability of each candidate satellite, and orbital data, a matching network satellite is selected from the candidate satellites to construct the satellite network. Distributed tasks are then executed within the satellite cluster, on a network-by-network basis.

[0041] As can be seen from the above method, by identifying the satellites with better communication quality with each satellite as the corresponding networking satellites, a satellite network is constructed for each satellite. Then, distributed tasks are executed on the basis of satellite networks, which improves the efficiency and quality of distributed task execution and reduces the impact of the inter-satellite environment on the execution of distributed tasks. Attached Figure Description

[0042] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:

[0043] Figure 1 is a schematic diagram of a satellite data processing flow in the prior art;

[0044] Figure 2 is a schematic diagram of a satellite network construction method provided in this application;

[0045] Figure 3 is a schematic diagram of a satellite network construction and transmission process provided in this application;

[0046] Figure 4 is a schematic diagram of a satellite networking method provided in this application;

[0047] Figure 5 is a schematic diagram of a satellite networking construction device provided in this application;

[0048] Figure 6 is a schematic diagram of the electronic device corresponding to Figure 2 provided in this application. Detailed Implementation

[0049] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this invention.

[0050] The technical solutions provided by the various embodiments of this application are described in detail below with reference to the accompanying drawings.

[0051] With the development of satellite technology, satellites, due to their global coverage, flexible deployment, and strong resistance to natural disasters, have provided important support and supplement to terrestrial communications. Meanwhile, with the development of cloud computing, cloud computing centers can also provide powerful, general-purpose computing resources for various applications, supplementing the shortcomings of satellite-borne resources, such as computing power, network resources, and network bandwidth. Therefore, promoting the integration of satellites, ground-based systems, and cloud computing centers to build an integrated space-ground network and application architecture has become an important direction for current development. However, cloud computing centers have high energy and equipment requirements to achieve powerful computing resources. Therefore, cloud computing centers are often located on the ground, while data generated by the satellite is transmitted back to the ground-based cloud computing center for processing. After processing, the ground-based cloud computing center returns the results to the satellite. As shown in Figure 1, which is a schematic diagram of a satellite data processing flow in the prior art, the satellite returns the collected data to the ground-based signal receiving device, and then the signal transmission device transmits the data to the ground-based cloud computing center. Then, the control commands from the ground management platform of the cloud computing center are transmitted back to the satellite via the signal transmission device, and the satellite then returns the data to the user.

[0052] However, the distance between cloud computing centers and satellites, coupled with lengthy data transmission processes, leads to high data processing latency and significant network bandwidth overhead. Therefore, edge computing technology is currently employed to address the high latency caused by distance. This involves constructing a space-based edge computing system based on a ground management platform, cloud computing centers, and satellite constellations. Computing resources are deployed closest to where data is generated; for example, some applications used for task execution can run on onboard computing units, allowing satellites to process data in orbit, thus achieving low-latency task execution and further reducing the reliance on network resources between the satellite and ground stations.

[0053] However, distributed tasks often involve dependencies, and satellites in a constellation, due to their different orbits, experience relative motion. If satellites performing the same distributed task experience changes in relative position, they may become unable to communicate due to distance or obstruction, impacting the efficiency and accuracy of the distributed task. Inter-satellite networks can be established to execute distributed tasks on a network-by-network basis. However, inter-satellite data transmission primarily relies on radio waves and laser communication, which are susceptible to high error rates and poor communication quality due to the harsh space environment, such as multipath fading and solar activity. When communication between dependent satellites is poor, it affects the efficiency of inter-satellite distributed tasks. Therefore, how to establish inter-satellite networks to reduce the impact of communication quality on task efficiency has become a pressing issue.

[0054] It should be noted that, in one or more embodiments of this application, satellite networking refers to a local area network (LAN) formed by the satellites within a satellite cluster. Each satellite within the LAN, excluding the satellite mentioned above, is a networking satellite. Furthermore, due to the large number of satellites in a satellite cluster, the number of satellite networks constructed when building a network for each satellite is also large. Since satellite resources are relatively precious, to reduce waste, the satellite networking construction task is usually performed by a ground management platform, which sends the completed satellite networks to the satellites. Of course, when there is ample idle computing resources between satellites, to improve the efficiency of satellite networking construction, the satellite networking construction method described in this application embodiment can also be executed by an onboard server. For ease of description, the following description will use the execution of the satellite networking construction method by a ground management platform as an example.

[0055] Figure 2 is a schematic diagram of a satellite network construction method provided in this application, specifically:

[0056] S200: For each satellite in the satellite cluster, based on the orbital data of each satellite, determine each satellite that can communicate with the satellite in the first future time period as candidate satellites, and predict the communication quality between the satellite and each candidate satellite in the first future time period.

[0057] In one or more embodiments of this application, the specific device used to execute the satellite networking construction method is not limited, such as a mobile terminal or a server. However, since subsequent steps involve operations such as model training and satellite status data analysis, which require high computing resources and high privileges, these operations are generally executed by a server. Of course, the specific execution device used in the satellite networking construction method also depends on the specific device used by the ground management platform. This application will subsequently describe the satellite networking construction method using a server as an example. The server can be a single device or composed of multiple devices, such as a distributed server. This application does not impose any restrictions on this.

[0058] To construct a satellite network with good inter-satellite communication quality, the server can select satellites with good communication quality with each other from within the satellite cluster to build the satellite network. To reduce the time and resources required for the server to predict communication quality, the server can also, for each satellite in the satellite cluster, first identify satellites that can communicate directly as candidate satellites, and then predict the communication quality between the satellite and each candidate satellite.

[0059] Specifically, the server, for each satellite in the satellite cluster, determines, based on the orbital data of each satellite, which satellites are likely to be able to communicate with the satellite in the immediate future, and these satellites are selected as candidate satellites. That is, based on the orbital data of each satellite, the server determines the trajectory of each satellite in space in the immediate future, thereby identifying satellites that can directly communicate with the satellite and selecting them as candidate satellites. The orbital data of each satellite includes at least its orbital altitude and current coordinates.

[0060] Then, the server predicts the communication quality between each satellite and each candidate satellite in the first future time period based on the orbital data of each satellite and the communication data between the satellite and each candidate satellite. That is, based on the orbital data of each satellite, it determines the communication distance and environmental conditions between the satellite and each candidate satellite in the first future time period, and then determines the communication quality between the satellite and each candidate satellite in the first future time period based on the communication data. The communication data includes at least the communication method, signal frequency, encryption method, communication bandwidth, and network resources used between the satellite and each candidate satellite.

[0061] It should be noted that, in one or more embodiments of this application, the specific method used by the server to determine the communication quality between the satellite and each candidate satellite is not limited. The communication quality can be predicted by a trained evaluation model, or it can be evaluated by weighting data such as the communication distance, environmental data, communication data, and communication bandwidth between the satellite and each candidate satellite.

[0062] It should be noted that the determined communication quality can be the average communication quality between each candidate satellite and the satellite within the first future time period, or it can be the trend of change in the communication quality between each candidate satellite and the satellite.

[0063] Of course, in one or more embodiments of this application, the specific way the server determines the first time is not limited. The first time can be a preset duration, such as 24 hours, 12 hours, etc., or it can be determined based on the orbital period of each satellite, or it can be determined based on the power-on duration of each satellite. This application does not limit this and it can be set according to actual needs.

[0064] Furthermore, in one or more embodiments of this application, since the orbital data of each satellite is fixed, the server can acquire the orbital data of each satellite without communicating with the satellite. However, when determining the communication data between each satellite and each candidate satellite, the most direct approach is for the satellite to directly synchronize the communication data between each satellite in the satellite cluster and other satellites with the ground management platform when communicating with the ground management platform. Alternatively, when the ground management platform needs to construct a satellite network, it can send a request to the communicable satellite to acquire the communication data between each satellite and other satellites to obtain the communication data between each satellite in the satellite cluster and other satellites. In addition, the server can also acquire the communication data between each satellite in the satellite cluster and other satellites at regular intervals, and use the previously acquired communication data as the communication data required for the current satellite network construction when a satellite network needs to be built. This application does not impose any limitations on this; the specific configuration can be determined according to actual needs.

[0065] It should be noted that within the satellite cluster, data is shared between satellites. This includes communication data between individual satellites and other data. In other words, the ground management platform can obtain data from all satellites within the satellite cluster even when communicating with only one satellite.

[0066] S202: Based on the determined communication quality, the resource quantity of each candidate satellite, and the orbital data, determine the networking satellite that matches the satellite in the first future time period from among the candidate satellites, and construct the satellite network of the satellite.

[0067] After determining the communication quality of each satellite, in order to improve the efficiency of the completed satellite network and the task execution efficiency between satellites, the server can use the candidate satellites with higher communication quality determined in step S200 as the networking satellites. This allows the satellite network to efficiently execute distributed tasks in the first time, and the satellite network's task execution is less affected by the space environment in the first time.

[0068] Specifically, the server scores each candidate satellite based on the determined communication quality, resource quantity of each candidate satellite, and orbital data. Then, based on the score of each candidate satellite, the candidate satellites with higher scores are determined as the networking satellites to be matched with the satellite in the first future time period. The satellite network is then constructed based on the satellite and the networking satellites of the satellite.

[0069] It should be noted that the resource quantity of each candidate satellite mentioned above refers to the quantity of satellite resources such as computing power resources, network resources, and bandwidth resources contained in each candidate satellite, rather than the total resource quantity contained in all candidate satellites.

[0070] S204: Send the satellite network corresponding to each satellite to each satellite, so that each satellite can perform distributed tasks in the form of the corresponding satellite network.

[0071] After determining the satellite network corresponding to each satellite, in order for each satellite to perform its mission based on the determined satellite network, the server can also send the satellite network to each satellite.

[0072] Specifically, the server can determine the satellites that can communicate at the current time, and then send the determined satellite network to the communicating satellites, so that the communicating satellites can synchronize the satellite network sent by the server between satellites and build the satellite network. The distributed tasks are performed on the basis of the satellite network.

[0073] It should be noted that, in one or more embodiments of this application, the server is not limited in how many communicable satellites each satellite network sends to. The server can send the determined satellite networks to each communicable satellite, or it can select one satellite from the communicable satellites to send the satellite networks to. That is, it can determine the satellite currently communicating with the ground management platform as a window satellite, send the satellite networks to the window satellite, and the window satellite will synchronize the satellite networks to other satellites in the satellite cluster. Of course, there is no limitation on what specific tasks each satellite network performs. It can perform distributed tasks, directly perform other types of services, or perform multiple tasks simultaneously. This application does not impose any restrictions on this.

[0074] Furthermore, the satellite network determined by the server is the satellite network corresponding to each satellite within the satellite cluster, rather than dividing the satellite cluster into multiple satellite networks. That is, the server can determine the satellite network and each network satellite for each satellite, and the satellite can also serve as a network satellite for other satellites in the satellite cluster besides the satellite in question.

[0075] As shown in Figure 3, Figure 3 is a schematic diagram of a satellite network construction and transmission process provided in this application. In this process, the ground management center obtains the status data of each satellite in the satellite cluster through the currently communicating satellite, constructs the satellite network of each satellite based on the status data, and then sends the satellite network of each satellite to the currently communicating satellite, so that the currently communicating satellite synchronizes the satellite network of each satellite between satellites.

[0076] In a satellite network construction method based on Figure 2, for each satellite in the satellite cluster, candidate satellites are determined using the orbital data of each satellite. The communication quality between the satellite and each candidate satellite is predicted in the first possible timeframe. Based on the determined communication quality, resource availability, and orbital data of each candidate satellite, a matching network satellite is selected from the candidate satellites to construct the satellite network. Distributed tasks are then executed within the satellite cluster, on a network-by-network basis.

[0077] As can be seen from the above method, by identifying the satellites with better communication quality with each satellite as the corresponding networking satellites, a satellite network is constructed for each satellite. Then, distributed tasks are executed on the basis of satellite networks, which improves the efficiency and quality of distributed task execution and reduces the impact of the inter-satellite environment on the execution of distributed tasks.

[0078] Furthermore, in step S200, since not all satellites within the satellite cluster can communicate directly, in order to ensure the efficiency of satellites in the satellite network performing distributed tasks, each satellite in the satellite network constructed by the server should be a satellite that can communicate directly.

[0079] It should be noted that when the number of directly communicable satellites is large, in one or more embodiments of this application, the server can also filter the directly communicable satellites based on the distance between each directly communicable satellite and the satellite, determining the directly communicable satellites whose distance is less than a preset value as candidate satellites. Of course, the server can also filter the candidate satellites using other methods, such as inputting the communication data of the satellite and the communication data of each directly communicable satellite into a trained scoring model, scoring each directly communicable satellite, and selecting the communicable satellites whose scores exceed a preset score as candidate satellites. Other methods can also be used to filter the communicable satellites; since there are many methods available, they will not be elaborated here.

[0080] Furthermore, the scoring model that has been trained can be obtained through reinforcement learning, that is, by determining the speed of satellite networking as the reward, with the higher the speed, the higher the reward, thereby training the scoring model.

[0081] Furthermore, in one or more embodiments of this application, the specific method used by the server to determine the communication quality between each candidate satellite and the satellite is not limited. For example, the server may score information such as the bit error rate between each candidate satellite and the satellite, and use the score as the communication quality between the candidate satellite and the satellite. Other methods may also be used to determine the communication quality between each candidate satellite and the satellite, and this application does not impose any restrictions on this.

[0082] Furthermore, since the communication time between satellites and the ground management platform is typically short, the ground management platform's server should build satellite networks for each satellite as quickly as possible. However, satellite constellations often contain a large number of satellites, resulting in a large number of satellite networks to be built, which can lead to a longer time required for the server to build the satellite networks for each satellite. Therefore, to improve the efficiency of satellite network construction, the server can also use an ant colony algorithm to enhance its parallel capability in performing satellite network construction tasks.

[0083] Specifically, based on the orbital data, candidate links are determined from the links between each candidate satellite, and the pheromone concentration corresponding to each candidate link is determined. Based on the pheromone concentration of each candidate link, a satellite network is constructed starting from the satellite, and the quality of each path is determined. The pheromone concentration of each candidate link is adjusted according to the determined path quality. After adjusting a preset number of rounds, the quality of each path in the current round is determined, and the network of satellites is determined based on the quality of each path.

[0084] It should be noted that, in one or more embodiments of this application, the specific method used by the server to determine the quality of each path is not limited. The quality can be determined by the average pheromone concentration of each candidate link in each path, or by weighting the average values ​​of communication data, communication distance, and other data of each candidate link in each path. The specific method can be set according to actual needs.

[0085] Furthermore, when determining the pheromone concentration corresponding to each candidate link, the server can weight the determined communication quality, the resource quantity of each candidate satellite, and the orbital data, and use the weighted result as the pheromone concentration corresponding to each candidate link. Alternatively, the historical mission execution efficiency of each candidate satellite can be used as the pheromone concentration. The server can also weight the historical mission execution efficiency and communication quality of each candidate satellite, and use the weighted result as the pheromone concentration. One or more embodiments of this application employ the key feature pheromone concentration of the ant colony algorithm; this application does not limit this and it can be set according to actual needs.

[0086] Then, when adjusting the pheromone concentrations, the server can sort the paths based on their determined quality to determine a first sequence. Next, based on the pheromone concentrations of each candidate link within each path, the server determines the pheromone concentration for each path and sorts the paths according to these concentrations to determine a second sequence. Finally, with the goal of minimizing the difference between the first and second sequences, the server adjusts the parameters in the preset pheromone concentration calculation formula and updates the pheromone concentrations for each candidate link.

[0087] Of course, the server can also adjust the parameters in the preset pheromone concentration calculation formula through the trained pheromone update model, replacing manual adjustment of the parameters.

[0088] Furthermore, to improve the speed of determining satellites for networking, the server can also determine the evaluation score of the link between each candidate satellite and the satellite based on the determined communication quality, resource quantity of each candidate satellite, and orbital data, and select links with evaluation scores reaching a preset value as candidate links. This reduces the calculation of pheromone concentration and the selection of paths.

[0089] It should be noted that when determining the evaluation score of the link between each candidate satellite and the satellite, the server can determine the distance between each candidate satellite and the satellite and the environmental information based on the orbital data. Among these, the distance is negatively correlated with the evaluation score, the environmental information is positively correlated with the evaluation score, the resource link of the candidate satellite is positively correlated with the evaluation score, and the communication quality is positively correlated with the evaluation score.

[0090] Furthermore, due to the limited communication time between the ground management platform and each satellite, and the relative motion of satellites at different altitudes in space, the satellite networking should vary at different times. Additionally, the power-on times of different satellites also differ. Even if two satellites are at a suitable distance, different power-on times may prevent them from communicating, or result in a shorter communication period than the initial duration. Therefore, the server can also determine the satellite networking for each satellite within a specific timeframe to ensure that the satellites can always form a network and perform distributed tasks.

[0091] Specifically, the server determines which satellites can communicate with the satellite based on the orbital data of each satellite. Then, it determines the communication time periods of each communicable satellite. Based on the orbital data and communication time periods of each satellite, it identifies satellites whose communication time periods overlap with those of the satellite within a future first time period, and these are considered candidate satellites. Then, based on the overlap time periods between the satellite and the candidate satellites, it determines the network satellites that match the satellite at each moment within the first time period, constructing the satellite network for each moment within the first time period. This allows the satellite to update its own satellite network according to the determined network even when it loses contact with the ground management platform, thereby enabling it to perform distributed tasks with the optimal satellite network path at all times within the first time period.

[0092] For example, if the power-on times of the satellite within a 24-hour period are 8:00-10:00, 15:00-19:00, and 20:00-24:00, and the power-on time of satellite A (network satellite) is 8:00-20:00, that of satellite B is 7:00-15:00, that of satellite C is 15:00-24:00, and that of satellite D is 19:00-22:00, then the satellite network formed by the satellites during 8:00-10:00 is A-Satellite-B, the satellite network during 15:00-19:00 is A-Satellite-C, the satellite network during 20:00-22:00 is C-Satellite-D, and the satellite network during 22:00-24:00 is C-Satellite.

[0093] It should be noted that, in one or more embodiments of this application, the term "communicable satellites" refers to two satellites that are unobstructed from each other and capable of communication. The communicable period refers to the time during which both satellites are simultaneously powered on and capable of communication. When determining the pheromone concentration of each candidate link, the server may also use the duration of the overlap period as part of the determination of the pheromone concentration. Alternatively, candidate satellites with overlap periods shorter than a preset duration may be deleted from the candidate satellite list.

[0094] Furthermore, since there are many satellites that can communicate with the satellite, but the number of communication terminals for each satellite is limited, although the satellite can communicate with multiple satellites by rotating the communication terminal, the time spent adjusting the angle of the communication terminal will also lead to high latency in the execution of distributed tasks. Therefore, when determining the satellite network of the satellite, the number of communication terminals of the satellite should also be considered.

[0095] Specifically, the server determines the number of communication terminals of the satellite, and then, when determining the networking satellites among the candidate satellites, determines a target number of networking satellites, wherein the target number is not greater than the number of communication terminals of the satellite. As shown in Figure 4, which is a schematic diagram of a satellite networking method provided in this application, the central circle represents the Earth, the three rings represent three orbits around the Earth, and each satellite in the satellite cluster orbits the Earth in one of the three orbits. The small circles on each satellite represent the satellite's communication terminals, and each satellite has a different number of communication terminals. Satellites marked with the same identifier constitute a satellite network.

[0096] Furthermore, in one or more embodiments of this application, the specific method by which the server determines which distributed task should be performed by each satellite network is not limited. The determined distributed task can be directly sent to the satellite for inter-satellite task allocation. Alternatively, the server can determine the task allocation based on the remaining satellite resources within each satellite network, such as computing power and network resources. The specific configuration can be tailored to actual needs.

[0097] The above is a satellite networking construction method provided by the embodiments of this application. Based on the same idea, this application also provides a corresponding satellite networking construction device, as shown in Figure 5.

[0098] The prediction module 400 is used to determine, based on the orbital data of each satellite in the satellite cluster, each satellite that can communicate with the satellite in the first time period in the future, as candidate satellites of the satellite, and to predict the communication quality between the satellite and each candidate satellite in the first time period in the future.

[0099] The construction module 401 is used to determine, based on the determined communication quality, the resource quantity of each candidate satellite and the orbital data, the networking satellite that matches the satellite in the first future time period, and construct the satellite network of the satellite;

[0100] The sending module 402 is used to send the satellite network corresponding to each satellite to each satellite, so that each satellite can perform distributed tasks in the form of the corresponding satellite network.

[0101] Optionally, the construction module 401 is configured to determine each candidate link from the links between each candidate satellite and the satellite based on the orbital data, and determine the pheromone concentration corresponding to each candidate link; based on the pheromone concentration corresponding to each candidate link, construct each satellite network of the satellite starting from the satellite, and determine the quality of each path, and adjust the pheromone concentration corresponding to each candidate link according to the determined quality of each path; after adjusting a preset round, determine the quality of each path in the current round, and determine the network satellites of the satellite based on the quality of each path.

[0102] Optionally, the construction module 401 is used to sort the paths according to the determined quality of each path to determine a first sequence; determine the pheromone concentration of each path according to the pheromone concentration of each candidate link in each path, and sort the paths according to the pheromone concentration to determine a second sequence; and adjust the parameters of the preset pheromone concentration calculation formula with the goal of minimizing the difference between the first sequence and the second sequence, and update the pheromone concentration of each candidate link.

[0103] Optionally, the construction module 401 is used to determine the evaluation score of the link between each candidate satellite and the satellite based on the determined communication quality, the resource quantity of each candidate satellite and the orbital data; and to select the links whose evaluation scores reach a preset value as candidate links.

[0104] Optionally, the prediction module 400 is used to determine, based on the orbital data of each satellite, satellites that can communicate with the satellite; and based on the communication time periods of the satellites that can communicate, satellites that have overlapping communication time periods with the satellite in the future first time period, as candidate satellites for the satellite; the construction module 401 is used to determine, based on the overlapping time periods between the satellite and each candidate satellite, each networking satellite that matches the satellite at each moment in the first time period, and construct the satellite network of the satellite at each moment in the first time period.

[0105] Optionally, the construction module 401 is used to determine the number of communication terminals of the satellite; and to determine, among the candidate satellites, a number of satellites not greater than the number of communication terminals of the satellite, as the networking satellites of the satellite.

[0106] Optionally, the transmitting module 402 is used to determine the satellites that can communicate with the ground management platform at the current time; and to transmit the determined satellite network to the satellites that can communicate with the ground management platform at the current time, so that the satellites that can communicate with the ground management platform at the current time can synchronize the satellite network between satellites.

[0107] In the embodiments of this application, the prediction module 400, the construction module 401, and the sending module 402 can each be one or more processors or chips with communication interfaces capable of implementing communication protocols. If necessary, they may also include memory and related interfaces, system transmission buses, etc. The processor or chip executes program-related code to implement the corresponding functions. Alternatively, an alternative approach is that the prediction module 400, the construction module 401, and the sending module 402 share an integrated chip or share a processor, memory, or other devices. The shared processor or chip executes program-related code to implement the corresponding functions.

[0108] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0109] The various embodiments in this application are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the system embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions of the method embodiments.

[0110] This application also provides a computer-readable storage medium storing a computer program that can be used to execute the satellite networking construction method shown in Figure 2 above.

[0111] This application also provides a schematic structural diagram of the electronic device shown in Figure 6. As shown in Figure 6, at the hardware level, the electronic device includes a processor, an internal bus, a network interface, memory, and non-volatile memory, and may also include other hardware required for services. The processor reads the corresponding computer program from the non-volatile memory into memory and then runs it to implement the satellite networking construction method described in Figure 2. Of course, in addition to the software implementation, this application does not exclude other implementation methods, such as logic devices or a combination of hardware and software, etc. That is to say, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.

[0112] In the 1990s, improvements to a technology could be clearly distinguished as either hardware improvements (e.g., improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the methodology). However, with technological advancements, many methodological improvements today can be considered direct improvements to the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved methodology into the hardware circuit. Therefore, it cannot be said that a methodological improvement cannot be implemented using hardware physical modules. For example, a Programmable Logic Device (PLD) (such as a Field Programmable Gate Array (FPGA)) is such an integrated circuit whose logic function is determined by the user programming the device. Designers can program and "integrate" a digital system onto a PLD themselves, without needing chip manufacturers to design and manufacture dedicated integrated circuit chips. Furthermore, nowadays, instead of manually manufacturing integrated circuit chips, this programming is mostly implemented using "logic compiler" software. Similar to the software compiler used in program development, the original code before compilation must be written in a specific programming language, called a Hardware Description Language (HDL). There are many HDLs, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, and RHDL (Ruby Hardware Description Language). Currently, VHDL (Very-High-Speed ​​Integrated Circuit Hardware Description Language) and Verilog are the most commonly used. Those skilled in the art should understand that by simply performing some logic programming on the method flow using one of these hardware description languages ​​and programming it into an integrated circuit, the hardware circuit implementing the logical method flow can be easily obtained.

[0113] The controller can be implemented in any suitable manner. For example, it can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by said (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicon Labs C8051F320. A memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also recognize that, in addition to implementing the controller in purely computer-readable program code form, the same functionality can be achieved by logically programming the method steps to make the controller take the form of logic gates, switches, ASICs, programmable logic controllers, and embedded microcontrollers. Therefore, such a controller can be considered a hardware component, and the means included therein for implementing various functions can also be considered as structures within the hardware component. Alternatively, the means for implementing various functions can be considered as both software modules implementing the method and structures within the hardware component.

[0114] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, a computer can be, for example, a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email device, game console, tablet computer, wearable device, or any combination of these devices.

[0115] For ease of description, the above devices are described separately by function as various units / modules. Of course, in implementing this application, the functions of each unit / module can be implemented in one or more software and / or hardware.

[0116] 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.

[0117] 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, create means for implementing the functions specified in one or more blocks of the flowchart illustrations and / or one or more blocks of the block diagrams.

[0118] 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 that implement the functions specified in one or more flowcharts and / or one or more block diagrams.

[0119] These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process, such that the instructions, which execute on the computer or other programmable apparatus, provide steps for implementing the functions specified in one or more flowcharts and / or one or more block diagrams.

[0120] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0121] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0122] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0123] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0124] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application 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.

[0125] This application can be described in the general context of computer-executable instructions, such as program modules, that are executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform a specific task or implement a specific abstract data type. This application can also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.

[0126] The various embodiments in this application are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the system embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions of the method embodiments.

[0127] The above description is merely an embodiment of this application and is not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.

Claims

1. A method for constructing a satellite network, characterized in that, The method is applied to a ground management platform, including: For each satellite in the satellite cluster, based on the orbital data of each satellite, each satellite that can communicate with the satellite in the first time in the future is identified as a candidate satellite, and the communication quality between the satellite and each candidate satellite in the first time in the future is predicted. Based on the determined communication quality, the resource quantity of each candidate satellite, and the orbital data, a networking satellite that matches the satellite in the first future time period is determined from among the candidate satellites, and the satellite network of the satellite is constructed. The satellite network corresponding to each satellite is sent to each satellite, so that each satellite can perform distributed tasks in the form of its corresponding satellite network.

2. The method as described in claim 1, characterized in that, Based on the determined communication quality, the resource quantity of each candidate satellite, and the orbital data, a networking satellite matching the candidate satellite in the first future time period is determined, specifically including: Based on the orbital data, each candidate link is determined from the links between each candidate satellite and the satellite, and the pheromone concentration corresponding to each candidate link is determined; Based on the pheromone concentration corresponding to each candidate link, starting from the satellite, a satellite network is constructed for each satellite, and the quality of each path is determined. The pheromone concentration corresponding to each candidate link is adjusted according to the determined quality of each path. After adjusting the preset rounds, the quality of each path in the current round is determined, and the networking satellites of the satellites are determined based on the quality of each path.

3. The method as described in claim 2, characterized in that, Adjusting the pheromone concentration of each candidate link based on the determined quality of each path specifically includes: Based on the quality of each determined path, the paths are sorted to determine a first sequence; Based on the pheromone concentration corresponding to each candidate link in each path, the pheromone concentration corresponding to each path is determined, and the paths are sorted according to the pheromone concentration to determine the second sequence; With the goal of minimizing the difference between the first sequence and the second sequence, the parameters of the preset pheromone concentration calculation formula are adjusted, and the pheromone concentration corresponding to each candidate link is updated.

4. The method as described in claim 2, characterized in that, Based on the orbital data, candidate links are determined from the links between each candidate satellite and the satellite, specifically including: Based on the determined communication quality, the resource quantity of each candidate satellite, and the orbital data, an evaluation score is determined for the link between each candidate satellite and the satellite. Links whose evaluation scores reach a preset value are selected as candidate links.

5. The method as described in claim 1, characterized in that, Based on the orbital data of each satellite, satellites that can communicate with the satellite in the first time in the future are identified as candidate satellites, specifically including: Based on the orbital data of each satellite, determine the satellites that can communicate with the satellites mentioned above; Based on the communication time periods of the communicable satellites, identify the communicable satellites whose communication time periods overlap with those of the satellites in the first future time period, and use them as candidate satellites for the satellites. Among the candidate satellites, determine the networking satellites that match the satellites within the first future timeframe, and construct the satellite network, specifically including: Based on the overlap time period between the satellite and each candidate satellite, determine the networking satellites that match the satellite at each time point in the first time period, and construct the satellite network of the satellite at each time point in the first time period.

6. The method as described in claim 1, characterized in that, Among the candidate satellites, the networking satellites that match the satellites within the first future timeframe are determined, specifically including: Determine the number of communication terminals for the satellite; Among the candidate satellites, satellites with a number of communication terminals not exceeding that of the satellites are selected as the networking satellites.

7. The method as described in claim 1, characterized in that, The process of networking the satellites corresponding to each satellite and sending the data to each satellite specifically includes: Identify the satellites that can communicate with the ground management platform at the current moment; The determined satellite network is sent to the satellites that can communicate with the ground management platform at the current time, so that the satellites that can communicate with the ground management platform at the current time can synchronize the satellite network between satellites.

8. A satellite networking construction device, characterized in that, The device is installed on a ground management platform and includes: The prediction module is used to determine, based on the orbital data of each satellite in the satellite cluster, each satellite that can communicate with the satellite in the first time period in the future, as candidate satellites of the satellite, and to predict the communication quality between the satellite and each candidate satellite in the first time period in the future. A construction module is used to determine, based on the determined communication quality, the resource quantity of each candidate satellite and the orbital data, the networking satellite that matches the satellite in the first future time period, and construct the satellite network of the satellite; The sending module is used to send the satellite network corresponding to each satellite to each satellite, so that each satellite can perform distributed tasks in the form of the corresponding satellite network.

9. A computer-readable storage medium, characterized in that, The storage medium stores a computer program, which, when executed by a processor, implements the method described in any one of claims 1 to 7.

10. An electronic device, characterized in that, It includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the method described in any one of claims 1 to 7.