Satellite network service storage and scheduling method and device
By using a service scheduling agent in the satellite network to determine the target orbit and node for uploading, and combining hash algorithms and geographical location to select the nearest service provider node, the problem of stable deployment and scheduling of computing power services in the satellite network is solved, achieving efficient computing power service scheduling and improved data timeliness.
Patent Information
- Application Number
- CN202511225832.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-29
- Publication Date
- 2026-01-13
- Estimated Expiration
- 2045-08-29
AI Technical Summary
In current satellite networks, the high dynamism leads to frequent changes in the coverage and location of onboard computing power. Existing storage and service scheduling technologies are mainly designed for ground-based scenarios and have failed to effectively solve the problems of stable deployment and request scheduling of computing power services in satellite networks.
By responding to requests through the service scheduling agent, the target orbit and node for uploading are determined. The target satellite computing power node is selected in the satellite orbit using a hash algorithm, and the nearest service provider node is selected based on geographical location information, thereby achieving efficient service scheduling.
It has enabled the stable and reliable deployment and efficient scheduling of computing services in satellite networks, reduced data transmission overhead, and improved data timeliness.
Smart Images

Figure CN120729404B_ABST
Abstract
Description
Technical Field
[0001] This specification relates to the field of satellite communication technology, and in particular to a method and apparatus for storing and scheduling satellite network services. Background Technology
[0002] With the continuous development of computing networks, computing power is no longer concentrated in data centers, but is evolving into a three-tiered computing architecture of cloud, edge, and endpoint deployment, deployed ubiquitously and in a distributed manner at any location on the edge or device side. The convergence and evolution of computing networks with satellite networks has also become a key research direction of concern for both academia and industry. With the deep integration of satellite internet and terrestrial internet, global coverage of computing resources can be achieved by leveraging onboard computing resources, realizing the vision of "data computing across space and ground."
[0003] However, the rapid development of satellite applications such as remote sensing generates a massive amount of remote sensing data. Transmitting all of this data to the ground for processing is time-consuming, labor-intensive, and reduces data timeliness. In-flight computing networks can complete some data processing in space, transforming large datasets into smaller ones. This reduces data transmission costs and improves data timeliness, significantly benefiting related industries. In fundamental theory, however, the deployment of in-flight computing networks is limited by the high dynamism of satellite networks and the limited service time of individual satellites. Furthermore, the scheduling of onboard computing power and service requests requires further resolution.
[0004] Due to the highly dynamic nature of satellite networks, onboard computing power is constantly moving at high speed, and the coverage area and location of a single satellite's computing power are also constantly changing. This poses new challenges to the storage and scheduling algorithms for computing power services. However, current technologies in the field of storage and service scheduling are mainly focused on terrestrial application scenarios, while technologies for storage and request service scheduling in satellite networks are relatively immature. Summary of the Invention
[0005] To address the problems in the prior art, this specification provides a satellite network service storage and scheduling method and apparatus. The method is applied to a service scheduling agent and includes: in response to a service uploading request, determining the target orbit and the target satellite computing node; after the service provider completes the service uploading, in response to a service scheduling request, determining the target service provider node that is closest to the service requester.
[0006] According to one aspect of an embodiment of this specification, the method further includes: obtaining a service uploading request; determining a target uploading orbit based on orbital information and service provider information in the service uploading request; using service metadata in the service uploading request as a hash factor, and each orbit in the satellite constellation as a hash ring, performing a hash operation based on the hash factor and the hash ring to determine a target satellite computing power node in the target uploading orbit; returning the target satellite computing power node information; obtaining a service scheduling request; and determining the target service provider node closest to the service requester based on the location information of the service requester in the service scheduling request.
[0007] According to one aspect of the embodiments of this specification, determining the target service provider node of the service requester based on the location information of the service requester in the service scheduling request includes: querying all candidate service provider nodes that can provide services in the service mapping table, wherein the service mapping table is used to store the mapping relationship between the storage service and the candidate service provider nodes;
[0008] Based on the location information of the service requester and the location information of the candidate service provider nodes, determine the target service provider node that meets at least one of the conditions of being closest in spatial distance or closest in routing distance to the service requester.
[0009] According to one aspect of an embodiment of this specification, the method further includes: determining whether a new node exists within the hash ring; if so, determining the node in the hash ring affected by the new node based on a service mapping table and the position of the new node mapped to the hash ring; and migrating the services of the node affected by the new node to the new node.
[0010] According to one aspect of the embodiments of this specification, the method is applied to a service provider and includes: initiating a service uploading request to a service scheduling agent; receiving a target satellite computing power node for uploading, and uploading the service to the target satellite computing power node for uploading.
[0011] According to one aspect of an embodiment of this specification, the method is applied to a service requester and includes: sending a service scheduling request to a service scheduling agent; and obtaining a service from a target service provider node determined by the service scheduling agent based on the service scheduling request.
[0012] This specification provides a satellite network service storage and scheduling system, comprising: a service provider, configured to initiate a service uploading request and upload the service to a target satellite computing power node; a service scheduling agent, configured to, in response to the service uploading request, determine the target orbit and the target satellite computing power node; and, in response to the service scheduling request, determine the target service provider node closest to the service requester; and a service requester, configured to, send a service scheduling request and, based on the target service provider node, obtain the service from the target service provider node.
[0013] According to one aspect of the embodiments of this specification, the target service providing node closest to the service requester includes: a satellite computing power node that satisfies at least one of being closest in spatial distance or closest in routing distance to the service requester.
[0014] According to one aspect of an embodiment of this specification, before determining the target service provider node, the service scheduling agent is further configured to: in response to a service scheduling request, select the target service provider node from multiple satellite computing power nodes in orbits of the same type as the access satellite corresponding to the service scheduling requester.
[0015] This specification provides a satellite network service storage and scheduling device, which is applied to a service scheduling agent and includes: a first determining unit, used to determine the target orbit and the target satellite computing power node in response to a service uploading request; and a second determining unit, used to determine the target service provider node closest to the service requester in response to a service scheduling request after the service provider has completed the service uploading.
[0016] This specification provides a satellite network service storage and scheduling device, which is applied to a service provider and includes: a service uploading request sending unit for initiating a service uploading request; and an uploading unit for receiving uploading target satellite computing power nodes and uploading the service to the uploading target satellite computing power nodes.
[0017] This specification provides a satellite network service storage and scheduling device, which is applied to a service requester and includes: a scheduling request sending unit for sending service scheduling requests; and a service acquisition unit for acquiring services from a target service provider node.
[0018] This specification also provides a terminal device, including: at least one processor; and at least one memory storing instructions thereon, which, when executed individually or jointly by the at least one processor, cause the terminal device to perform the satellite network service storage and scheduling method.
[0019] This specification also provides a network device, including: at least one processor; and at least one memory storing instructions thereon, which, when executed individually or jointly by the at least one processor, enable the network device to perform the satellite network service storage and scheduling method.
[0020] This specification also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the satellite network service storage and scheduling method.
[0021] This solution, based on satellite network orbital structure and geographical location information, enables stable and reliable deployment of satellite computing services and efficient scheduling of computing service requests. Attached Figure Description
[0022] To more clearly illustrate the technical solutions in the embodiments or prior art of this specification, the drawings used in the description of the embodiments or prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this specification. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0023] Figure 1A The diagram shown is a schematic diagram of a satellite network service storage and scheduling system according to an embodiment of this specification;
[0024] Figure 1B The diagram shown is an overall architecture diagram of a satellite network service storage and scheduling system according to an embodiment of this specification.
[0025] Figure 2 The diagram shown is a flowchart of a satellite network service storage and scheduling method applied to a service scheduling agent according to an embodiment of this specification;
[0026] Figure 3 The diagram shown is a flowchart of a method for determining a target service provider node according to an embodiment of this specification.
[0027] Figure 4 The diagram shown is a flowchart of another method for determining a target service provider node according to an embodiment of this specification;
[0028] Figure 5 The diagram shown is a flowchart of a satellite network service storage and scheduling method based on a newly added node, according to an embodiment of this specification.
[0029] Figure 6 This is a flowchart illustrating a satellite network service storage and scheduling method applied to a service provider, as described in this specification.
[0030] Figure 7The diagram shown is a flowchart of a satellite network service storage and scheduling method applied to a service requester according to an embodiment of this specification.
[0031] Figure 8 The diagram shown is a structural schematic of a satellite network service storage and scheduling device applied to a service scheduling agent according to an embodiment of this specification.
[0032] Figure 9 The diagram shown is a structural schematic of a satellite network service storage and scheduling device applied to a service provider, according to an embodiment of this specification.
[0033] Figure 10A The diagram shown is a flowchart illustrating the steps of service uploading according to an embodiment of this specification.
[0034] Figure 10B The diagram shown is a flowchart illustrating the steps of service rescheduling based on a newly added node, according to an embodiment of this specification.
[0035] Figure 10C The diagram shown is a flowchart illustrating the steps of a service request according to an embodiment of this specification.
[0036] Figure 11 The diagram shown is a structural schematic of a service requester according to an embodiment of this specification.
[0037] Figure 12 The diagram shown is a schematic representation of the network device according to an embodiment of this specification.
[0038] Figure 13 The diagram shown is a schematic representation of a satellite orbit according to an embodiment of this specification.
[0039] Figure 14 The diagram shown is a node mapping relationship diagram of a consistent hashing loop containing the orbits of N satellites according to an embodiment of this specification.
[0040] Figure 15 The diagram shown is a schematic diagram of one embodiment of this specification for determining the nodes affected by the addition of a new node.
[0041] Explanation of symbols in the attached drawings:
[0042] 100. Service Provider;
[0043] 200. Service dispatch agent;
[0044] 300, 1100, and the service requester;
[0045] 801. First Determined Unit;
[0046] 802. Second Determined Unit;
[0047] 901. Betting request sending unit;
[0048] 902, Upstream betting unit;
[0049] 1110. Processor;
[0050] 1120. Memory;
[0051] 1130. Communication module;
[0052] 1140. Input Unit;
[0053] 1150. Monitor;
[0054] 1160. Power supply;
[0055] 1200. Network equipment;
[0056] 1210. Processor;
[0057] 1220. Memory;
[0058] 1230, Program;
[0059] 1240. Transceiver;
[0060] 1250, Antenna. Detailed Implementation
[0061] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this specification, and not all embodiments. Based on the embodiments in this specification, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this specification.
[0062] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, apparatus, product, or device that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or devices.
[0063] This specification provides the operational steps of the methods described in the embodiments or flowcharts, but based on conventional or non-inventive labor, more or fewer operational steps may be included. The order of steps listed in the embodiments is merely one possible execution order among many and does not represent the only possible execution order. In actual system or device products, the methods shown in the embodiments or drawings can be executed sequentially or in parallel.
[0064] It should be noted that the satellite network service storage and scheduling method and apparatus described in this specification can be used in the field of satellite network communication technology, and this specification does not limit the application field of the satellite network service storage and scheduling method and apparatus.
[0065] This application uses terminology used in some communication specifications (e.g., the 3rd Generation Partnership Project, the European Telecommunications Standards Institute, ETSI, Extensible Radio Access Network, ERAN, and Open-Radio Access Network, O-RAN) to describe various embodiments, but this is merely illustrative. The various embodiments of this application can also be readily modified and applied in other communication systems.
[0066] In the embodiments of this application, communication between devices in the communication system can be carried out according to communication protocols at any stage, such as including but not limited to the following communication protocols: 1G (generation), 2G, 2.5G, 2.75G, 3G, 4G, 4.5G and 5G, New Radio (NR), etc., and / or other currently known or future communication protocols.
[0067] For ease of understanding, the technical terms involved in the embodiments of this application will be explained below.
[0068] (1) Terminal: refers to a device that has wireless transceiver function and can cooperate with network-side equipment to provide communication services to users. For example, terminal devices can be mobile phones, tablets, laptops, wearable devices, virtual reality (VR) devices, augmented reality (AR) devices, wireless communication devices, wireless terminals in industrial control, wireless terminals in self-driving, wireless terminals in remote medical surgery, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, wireless terminals in smart homes, Internet of Things (IoT) devices, narrowband Internet of Things (NB-IoT) devices, vehicle-to-everything (V2X) devices, devices in device-to-device communication (D2D), enhanced machine-type communication (eMTC) devices, and reduced-capacity devices. Capability (RedCap), cellular phones, cordless phones, Session Initiation Protocol (SIP) phones, Wireless Local Loop (WLL) stations, Personal Digital Assistants (PDAs), clients, handheld devices with wireless communication capabilities, vehicle-mounted devices, or shipboard devices, etc.
[0069] (2) Network equipment: refers to network-side equipment capable of communicating with terminal equipment. Network equipment can be located on satellites or the ground. Network equipment can also be called space base station, satellite-borne base station, satellite, satellite node, satellite communication node, satellite network terminal equipment, satellite communication module, or base station, etc. This network-side equipment can also be called access network equipment or wireless access network equipment. Network-side equipment can be a base station (BTS) in a satellite-borne Global System for Mobile Communication (GSM) or Code Division Multiple Access (CDMA) communication system; a base station (NodeB, NB) in a satellite-borne Wideband Code Division Multiple Access (WCDMA) system; an evolved base station (eNB or eNodeB) in a satellite-borne LTE system; a base station in a terrestrial network or non-terrestrial network (NTN), such as a base station (gNB) in a satellite-borne 5G network; a base station in a future network (e.g., 6G) after 5G, carried by satellite; a base station in a future evolved Public Land Mobile Network (PLMN) network, carried by satellite; a Transmission Reception Point (TRP) carried by satellite; or a Cloud Radio Access Network carried by satellite. In the context of Networks (CRAN), wireless controllers can also be satellite-borne city base stations, micro base stations, pico base stations, or femtobase stations. Base stations can also be ground-based base stations capable of satellite communication, and can be referred to as Access Points (APs), 5G nodes (5th generation nodes), wireless points, or Transmission / Reception Points (TRPs), the latter having equivalent technical meanings. Network equipment can also refer to base station equipment carried by High Altitude Platform Stations (HAPS) with loiter capabilities, such as large balloons or airships, base station equipment in Roadside Units (RSUs), or base station equipment in vehicle-to-everything (V2X) networks.
[0070] Figure 1A The diagram shown is a schematic representation of a satellite network service storage and scheduling system according to an embodiment of this specification. The system includes: a service provider 100, a service scheduling agent 200, and a service requester 300. In this embodiment, the service provider may also be referred to as a service provider, the service scheduling agent may also be referred to as a service scheduling proxy server, and the service requester may also be referred to as a service user (SU).
[0071] In this specification, Service Provider 100, as the service provider, is responsible for initiating service uploading requests and uploading or pre-setting the services it can provide to the satellite computing power nodes.
[0072] The service scheduling agent 200 is used to respond to service uploading requests by determining the target uploading orbit and the target satellite computing power node; and to respond to service scheduling requests by determining the target service provider node closest to the service requester 300. The service scheduling agent can be deployed in a terrestrial network or in medium- and high-orbit satellite computing power nodes. It is responsible for responding to service requests from service requesters and, based on information such as the real-time geographical location of the satellite and the location of service storage, forwarding the service request to the satellite computing power node that can provide the service.
[0073] The service requester 300 is used to send a service scheduling request and obtain services from the target service provider node according to the target service provider node. In this specification, the service requester, as the user of the service, sends a service request message for a certain Internet service to the satellite computing network through a mobile phone or some access terminal (including an on-board terminal).
[0074] In some embodiments of this specification, a satellite computing node that meets at least one of the conditions of being closest in spatial distance or closest in routing distance to the service requester is selected as the target service provider node that is closest to the service requester.
[0075] In some embodiments of this specification, before determining the target service provider node, the service scheduling agent is further configured to: in response to a service scheduling request, select the target service provider node from multiple satellite computing power nodes in orbits of the same type as the access satellite corresponding to the service scheduling requester.
[0076] Figure 1B The diagram shown is an overall architecture diagram of a satellite network service storage and scheduling system according to an embodiment of this specification. Figure 1BAs shown, the service scheduling agent's server maintains three important information tables: a service storage location mapping table, a consistent hash ring information table, and a satellite orbital information database. The service storage mapping table stores the mapping relationship between storage services and satellite computing nodes that can provide services; the hash ring mapping table maintains the consistent hash ring information (e.g., the consistent hash calculation function used), satellite numbers, and their mapping relationship to the numbers on the consistent hash ring for each orbit within the current satellite network constellation; and the satellite orbital information database is used for real-time satellite orbital information obtained from the satellite operation and control system.
[0077] Figure 2 The diagram shown is a flowchart of a satellite network service storage and scheduling method applied to a service scheduling agent according to an embodiment of this specification, which specifically includes the following steps:
[0078] Step 201: In response to the service betting request, determine the betting target orbit and the betting target satellite computing node.
[0079] In this step, the service scheduling agent receives a service registration request from the service provider to transfer computing power services from the ground to the satellite computing power network. The service registration request includes information such as the type of service to be registered, the service identifier, the service provider, and its location. Based on the orbital information it maintains or the characteristics of the satellite orbit, the service scheduling agent selects the target orbit for the transfer according to the service registration request sent by the service provider.
[0080] like Figure 13 The diagram illustrates a satellite orbit according to an embodiment of this specification. From the perspective of the service provider on the ground, the satellite orbit is divided into an ascending orbit and a descending orbit. Considering the symmetry of the satellite network, to reduce the access latency for service requesters, service uploading needs to ensure that: at least one ascending orbit and one descending orbit are selected, and there should be a certain distance between the two orbits. Further, target satellite computing nodes are determined from the target uploading orbits: at least two satellite computing nodes are selected on each of the ascending and descending orbits to provide services, and there should be a significant distance between the two nodes. Ideally, the distance between the two nodes should be half an orbit, ensuring that there is at least one satellite computing node providing services in each of the Northern and Southern Hemispheres and in each quarter hemisphere. This ensures that the satellite computing nodes providing services cover as many service requesters as possible in different locations on the ground, thereby reducing access latency for service requesters and reducing response overhead during service requests.
[0081] Step 202: After the service provider completes the service assignment, respond to the service scheduling request and determine the target service provider node that is closest to the service requester.
[0082] In this step, after the service provider completes service betting, the service scheduling agent, based on the service scheduling request received from the service requester (the service requester can only make a service request after service betting is completed), and combined with the specific information of the service requester in the service scheduling request, determines the target service provider node closest to the service requester. It then further controls the target service provider node to provide specific services to the service requester, achieving stable and reliable satellite server node deployment and computing power service betting.
[0083] Figure 3 The diagram shown is a flowchart of a method for determining a target service provider node according to an embodiment of this specification, specifically including steps 301 to 303:
[0084] Step 301: Obtain the service betting request, and determine the target betting track based on the orbital information and the service provider information in the service betting request.
[0085] When the service scheduling agent receives a service betting request from the service provider, it selects the ascending and descending tracks as betting tracks based on the service provider's location information carried in the betting request, combined with the track position information maintained by the service scheduling agent, and according to a certain algorithm.
[0086] In this specification, orbital position information refers to the satellite's position coordinates in space, typically referring to geostationary orbit communication satellites. Specifically, the orbital position information for geostationary orbit communication satellites refers to the Earth's longitude value (e.g., 110.5 degrees East) corresponding to the satellite's projection point above the equator. Ascending and descending passes describe the direction of motion of non-geostationary orbit satellites (such as Low Earth Orbit (LEO) and Medium Earth Orbit (MEO) as they pass over a region of the Earth. An ascending pass represents the arc of orbit that crosses the equator when a satellite flies from the Southern Hemisphere to the Northern Hemisphere. A descending pass represents the arc of orbit that crosses the equator when a satellite flies from the Northern Hemisphere to the Southern Hemisphere.
[0087] In this step, to ensure that all service requesters on Earth can obtain the target service at a relatively close distance, the service scheduling agent selects at least two satellites from the ascending orbit and the descending orbit respectively as the uplink target satellites.
[0088] Specifically, based on information such as the service type, service provider's geographical location, and target service area of the service to be added in the service metadata of the service addition request, a list of available tracks suitable for providing the service is selected. The service scheduling agent selects at least one ascending track and at least one descending track from the list of available tracks as the addition target tracks based on certain constraints (e.g., closest spatial distance to the service provider, largest coverage area, etc.).
[0089] The message structure of the service uploading request in this step is shown in Table 1:
[0090] Table 1. Message Structure of Service Betting Request
[0091]
[0092] Step 302: Use the service metadata in the service betting request as a hash factor, use each orbit in the satellite constellation as a hash ring, perform a hash operation based on the hash factor and hash ring, and determine the betting target satellite computing power node in the betting target orbit.
[0093] In this application, leveraging the similarity between satellite orbits and consistent hashing algorithms in their application scenarios, each satellite computing network orbit is treated as a consistent hashing ring for server deployment within the satellite computing network. In this specification, the hash factor represents the input data used to calculate the hash value, and the hash factor determines the position of a node on the hash ring. The hash ring is a virtual ring space that connects hash values end-to-end to form a closed loop. Nodes and data are mapped onto the hash ring through hash values, constituting a logical topology.
[0094] After determining the target orbit in step 301, the service type and service identifier in the service betting request are used as hash factors to select betting satellites from the ascending and descending orbits according to a specific algorithm; that is, the computing power nodes for the target betting satellites are determined. Specifically, the computing power nodes for the target betting satellites are determined according to the following algorithm:
[0095] Each betting orbit or betting orbit determined in step 301 is treated as a hash ring, and each satellite is treated as a physical node. The hash value of each satellite computing power node is calculated based on the hash factor (service type and service identifier), and then mapped onto the hash ring. For the ascending and descending orbits, two different hash functions, Hu(X) and HI(X), are selected for hash operations, where X represents the hash factor. Through hash operations, one node on each of the ascending and descending orbits is selected as the betting target satellite for that orbit. Simultaneously, to ensure that each hemisphere can obtain service at a relatively close distance, satellites that are half an orbit away from the betting target satellite in the ascending orbit and half an orbit away from the betting target satellite in the descending orbit are also selected as target satellites, i.e., betting target satellite computing power nodes.
[0096] like Figure 14The diagram illustrates a consistent hashing node mapping relationship for an orbit containing N satellites, according to an embodiment of this specification. An orbit containing N satellites has N computing servers. Each computing server can be a single physical server or a cluster of servers composed of multiple satellites. In some embodiments of this specification, multiple computing servers may provide the same service or different services. During the process of uploading services to the satellite computing network, if a computing server in a certain satellite orbit goes down, the services maintained by the downed computing server are migrated to available computing servers in that satellite orbit based on the consistent hashing algorithm.
[0097] Step 303: Return the target satellite computing power node information and obtain the service scheduling request. Based on the location information of the service requester in the service scheduling request, determine the target service provider node that is closest to the service requester.
[0098] After selecting the target satellites for betting, the service scheduling agent should return the selected target satellite information to the service provider, including at least the satellite identifier, network information, and betting location of the computing power service. Based on the information returned by the service scheduling agent, the service provider will perform the computing power service betting. After completing the betting of all satellites, the service provider should send a betting completion message to the service scheduling agent.
[0099] After receiving the betting completion message, the service scheduling agent stores the registered service information and the satellite information of the betting service in its maintained service mapping table. The mapping table can be maintained using a key-value database, where the key can be service metadata and the value is a list of satellite computing nodes that can provide the corresponding service.
[0100] In this step, determining the target service provider node for the service requester based on the location information of the service requester in the service scheduling request further includes: determining the satellite computing power node that is closest to the service requester in terms of either spatial distance or routing distance. For details on the process of determining the closest spatial distance or routing distance, please refer to [link to relevant documentation]. Figure 4 describe.
[0101] Based on geographic location information and real-time satellite orbit information, this application selects target service providing nodes, enabling the scheduling of service requests based on geographic location to the nearest node, thus providing better service quality assurance.
[0102] This application leverages the similarity between the consistent hashing algorithm and the orbital structure of satellite networks to achieve stable and reliable deployment of satellite computing services; and combines geographic location information to achieve efficient scheduling of computing service requests.
[0103] Figure 4The diagram shows another method for determining a target service provider node according to an embodiment of this specification, specifically including steps 401 to 402:
[0104] Step 401: Query all candidate service provider nodes that can provide services in the service mapping table. The service mapping table is used to store the mapping relationship between the storage service and the candidate service provider nodes.
[0105] In this specification, after the service provider completes service registration, based on... Figure 3 Based on the service betting requests, the service scheduling agent identifies the target satellite computing power nodes and maps them to the services they provide, forming a service storage mapping table. This service storage mapping table is used to map the services provided by the storage service provider to the satellite computing power nodes that provide those services. The service storage mapping table is maintained by the service scheduling agent.
[0106] Therefore, this step can query the service mapping table for all nodes that can provide services, and these nodes are called candidate service provider nodes.
[0107] Step 402: Based on the location information of the service requester and the location information of the candidate service provider nodes, determine the target service provider node that meets at least one of the conditions of being closest in spatial distance or closest in routing distance to the service requester.
[0108] Specifically, the steps include the following:
[0109] 1) Obtain a list of candidate service provider nodes that can provide the service, which are consistent with the access star status of the service requester;
[0110] 2) Calculate the node in the candidate service provider node list that is closest to the current service provider in terms of routing distance or spatial distance, and use it as the target service provider node.
[0111] In this specification, a candidate service provider node refers to a node that already carries a service but is not providing service to the service requester. Further, a candidate service provider node is defined as a node whose access satellite status matches that of the service requester. The access satellite directly provides connectivity services to the service requester. It directly receives uplink service request signals from the ground-based service requester and sends downlink signals back to the service requester. The access satellite of the service requester can be determined through orbital position information, thereby determining the list of candidate service nodes.
[0112] In this specification, routing distance represents the hop count / cost value of the shortest path between two satellites in the satellite constellation topology, and is primarily determined by calculation. Specifically, routing distance can be determined as follows:
[0113] (1) Constructing the satellite constellation topology;
[0114] (2) Calculate the shortest path length from the candidate service provider node to the service provider's access satellite;
[0115] (3) The shortest path with the minimum cumulative hop count / cost is the path with the shortest routing distance.
[0116] In other embodiments of this specification, the real-time network status can be collected by relying on the information collection capabilities of the network management component, and the routing distance can be determined based on the actual network routing status.
[0117] In this specification, the initial spatial distance can be calculated using the coordinates of the satellite node in ECI or ECEF, and the coordinates of the service requester in ECEF obtained through GPS or geographic information. Further signal propagation delay correction and Earth rotation correction are applied to the initial spatial distance to obtain the final spatial distance.
[0118] In this specification, after calculating the shortest routing distance and spatial distance respectively, the candidate service provider node corresponding to the minimum distance between the spatial distance and the routing distance is selected as the target service provider node according to business needs; or, the spatial distance and the routing distance are assigned preset weights, the weight ratio is adjusted according to actual needs, a comprehensive score is calculated, and the candidate service provider node corresponding to the highest comprehensive score is selected as the target service provider node.
[0119] Figure 5 The diagram shown is a flowchart of a satellite network service storage and scheduling method based on a newly added node, according to an embodiment of this specification, specifically including steps 501 to 503:
[0120] Step 501: Determine whether there is a new node in the hash ring.
[0121] In this manual, when a server node is added or removed from the satellite computing network, the service deployment plan for existing servers needs to be readjusted. In this step, the service scheduling agent determines the affected service nodes based on its maintained service mapping table and the hash ring corresponding to the orbit. Specifically, nodes in the hash ring corresponding to the satellite constellation orbit may be added or deleted.
[0122] Step 502: If yes, determine the nodes in the hash ring affected by the new node based on the service mapping table and the position of the new node mapped to the hash ring.
[0123] In this step, the hash value of the new node is calculated, and the new node is mapped onto the hash ring based on its hash value. The affected service nodes are determined based on the position of the new node / new service node mapped onto the hash ring. Specifically, this is determined by the position of the new node mapped onto the hash ring, and the services provided by the two nearest satellites in the clockwise and counterclockwise directions from that position.
[0124] like Figure 14 As shown, there are N onboard computing servers in a satellite orbit containing N stars. Consistent hashing is used to add, delete, and deploy services among the onboard computing servers. When onboard computing server 2 fails, the services on onboard computing server 2 will be migrated to onboard computing server node 3 using consistent hashing.
[0125] In some embodiments of this specification, due to the phased deployment of satellite constellations, during the construction of the hash ring in the satellite orbit, a single physical satellite node can be mapped to multiple virtual nodes according to the actual computing power of the satellite. The load within a certain interval of the hash ring corresponding to the satellite orbit can be distributed to different virtual nodes to achieve load balancing for each satellite.
[0126] like Figure 15 The diagram shown is a schematic diagram of one embodiment of this specification for determining the nodes affected by the addition of a new node. Figure 15 In the original hash ring, there were service node 1 and service node 2. Service node 2 maintained three services (e.g., service A, service B, and service C). Now, a new service node 4 is added. The position of the new service node 4 on the hash ring is between the original service nodes 1 and 2. Therefore, the new service node 4 affects the nodes originally maintained by service node 2.
[0127] Specifically, the hash values corresponding to the three services (service A, service B, and service C) maintained by service node 2 are recalculated. The service mapping table is scanned to determine whether the services originally maintained by service node 2 are within the scope of the affected services. That is, it is determined whether the hash values have changed. If they have changed, it means that the service has been affected by the newly added service node 4.
[0128] Step 503: Migrate the services in the nodes affected by the new node to the new node.
[0129] In this step, based on business needs and service content, the service scheduling agent or service provider migrates the services from the nodes affected by the new node to the new node for maintenance. After the service migration is completed, the service scheduling agent updates the mapping relationships in the service mapping table.
[0130] In other embodiments of this specification, to ensure the continuity of ongoing service provision, when an available computing power service node within the satellite network becomes unable to provide normal service due to failure or aging, the service scheduling agent, upon detecting a service node requiring decommissioning within the network, notifies the service provider to remove the original satellite service after a certain aging period, or the service scheduling agent proactively removes the original satellite service. Partial service mapping relationships are updated; that is, aging nodes are deleted, and the services originally maintained by the aging nodes are migrated to other normal nodes to ensure that services are not scheduled to abnormal service nodes. Specifically, decommissioned nodes are marked as unavailable in the service mapping table to prevent subsequent services from being scheduled to affected service nodes. The services originally maintained by the aging node are migrated to the next node clockwise from the aging node.
[0131] Figure 6 The diagram shown is a flowchart of a satellite network service storage and scheduling method applied to a service provider, according to an embodiment of this specification, specifically including steps 601 to 602:
[0132] Step 601: Initiate a service registration request to the service scheduling agent.
[0133] In this step, the service requester initiates a service registration request to the service dispatch agent. The service registration information includes at least the following: service type and service identifier, service provider and location. As described in step 301, this step will not be repeated here.
[0134] Step 602: Receive the target satellite computing power node for uploading and upload the service to the target satellite computing power node for uploading.
[0135] In the aforementioned steps, after selecting the target satellites for the service betting request, the service scheduling agent returns the selected target satellite information to the service provider. The service provider then performs the computing power service betting based on the information returned by the service scheduling agent.
[0136] After completing the service uploading of all satellites, the service provider sends an uploading completion message to the service scheduling agent.
[0137] Figure 7 The diagram shown is a flowchart of a satellite network service storage and scheduling method applied to a service requester according to an embodiment of this specification, specifically including steps 701 to 702:
[0138] Step 701: Send a service scheduling request to the service scheduling agent.
[0139] In this step, the service scheduling request must include at least: the requested service metadata and the geographical location information of the service requester. A structural diagram of the service scheduling request is shown in Table 2. Table 2 is the structure table of the service scheduling request:
[0140] Table 2 Structure of Service Scheduling Requests
[0141]
[0142] Step 702: Obtain the service from the target service provider node.
[0143] Upon receiving a service request, the service scheduling agent retrieves all nodes that can provide the service by querying the service mapping table. By determining the distance between all service-providing nodes and the geographical location of the service requester, it selects the best computing power server on the ascending or descending track as the target service-providing node to provide the service to the service requester.
[0144] Figure 8 The diagram shown is a schematic representation of a target service providing node device according to an embodiment of this specification. The basic structure of the target service providing node device is illustrated in this figure. The functional units and modules can be implemented using software, or using general-purpose chips or specific chips. The device specifically includes:
[0145] The first determining unit 801 is used to determine the target orbit and the target satellite computing power node in response to the service betting request;
[0146] The second determining unit 802 is used to determine the target service provider node that is closest to the service requester in response to the service scheduling request after the service provider has completed the service registration.
[0147] Figure 9 The diagram shown is a structural schematic of a service uploading device according to an embodiment of this specification. The basic structure of the service uploading device is illustrated in this figure. The functional units and modules therein can be implemented using software, or using general-purpose chips or specific chips. The device specifically includes:
[0148] The betting request sending unit 901 is used to initiate a service betting request;
[0149] The uploading unit 902 is used to receive the uploading target satellite computing power node and upload the service to the uploading target satellite computing power node.
[0150] Figure 10A The diagram shown is a flowchart illustrating the steps of service uploading according to an embodiment of this specification. Figure 10A and Figure 3Correspondingly, the service registration and uploading process is mainly triggered by the service provider, the service scheduling agent selects the uploading satellite nodes and updates the service mapping table, and the service provider completes the uploading of computing power services.
[0151] Figure 10B The diagram shown is a flowchart illustrating the steps of service rescheduling based on a newly added node, according to an embodiment of this specification. Figure 10B and Figure 4 Correspondingly, when the service scheduling agent detects additional satellite computing power nodes within the network, it needs to update some service mapping relationships within the network to ensure full utilization of the additional computing power.
[0152] Figure 10C The diagram shown is a flowchart illustrating the steps of a service request according to an embodiment of this specification. Figure 10C and Figure 7 Correspondingly, the service request process is triggered by the service requester, and the service scheduling agent selects the best computing server to provide services to the service requester based on the geographical location of the service requester.
[0153] like Figure 11 The diagram shown is a structural schematic of a service requester according to an embodiment of this specification. Figure 11 As shown, the service requester 1100 may include a processor 1110 and a memory 1120; the memory 1120 stores data and programs and is coupled to the processor 1110. It is worth noting that this diagram is exemplary; other types of structures may be used to supplement or replace this structure to implement telecommunications functions or other functions.
[0154] For example, processor 1110 can be configured to execute a program to implement the uplink / downlink time slot method as described in the previous embodiment. For example, processor 1110 can be configured to perform control such as sending a service scheduling request to a service scheduling agent. Figure 11 As shown, the service requester 1100 may further include: a communication module 1130, an input unit 1140, a display 1150, and a power supply 1160. The functions of these components are similar to those in the prior art and will not be described in detail here. It is worth noting that the service requester 1100 is not necessarily required to include... Figure 11 All of the components shown are not required; furthermore, the service requester 1100 may also include Figure 11 For components not shown, please refer to existing technologies.
[0155] This application also provides a network device, such as a base station or a satellite, but this application is not limited to these and may also include other network devices.
[0156] Figure 12The diagram shown is a schematic representation of the network device according to an embodiment of this specification. Figure 12 As shown, the network device 1200 may include a processor 1210 (e.g., a central processing unit CPU) and a memory 1220; the memory 1220 is coupled to the processor 1210. The memory 1220 can store various data; in addition, it also stores an information processing program 1230, and executes the program 1230 under the control of the processor 1210.
[0157] For example, processor 1210 can be configured to execute a program to implement the satellite network service storage and scheduling method as described in the previous embodiment. Furthermore, as... Figure 12 As shown, network device 1200 may also include: transceiver 1240 and antenna 1250, etc.; the functions of the above components are similar to those in the prior art, and will not be described in detail here. It is worth noting that network device 1200 is not necessarily required to include... Figure 12 All components shown; in addition, network device 1200 may also include Figure 12 For components not shown, please refer to existing technologies.
[0158] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), computer-readable storage media, and computer program products according to some embodiments of this specification. 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 processor to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processor, 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.
[0159] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processor 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.
[0160] These computer program instructions may also be loaded onto a computer or other programmable data processor to cause a series of operational steps to be performed on the computer or other programmable device to produce a computer-implemented process, such that the instructions, which execute on the computer or other programmable device, provide steps for implementing the functions specified in one or more flowcharts and / or one or more block diagrams.
[0161] It should be understood that in the various embodiments of this specification, the sequence number of each process does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this specification.
[0162] It should also be understood that, in the embodiments of this specification, the term "and / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / " in this specification generally indicates that the preceding and following related objects have an "or" relationship.
[0163] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed in this specification can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of each example have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this specification.
[0164] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0165] In the several embodiments provided in this specification, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the couplings or direct couplings or communication connections shown or discussed may be indirect couplings or communication connections through some interfaces, devices, or units, or they may be electrical, mechanical, or other forms of connection.
[0166] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of the embodiments described in this specification, depending on actual needs.
[0167] Furthermore, the functional units in the various embodiments of this specification can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0168] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this specification, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this specification. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0169] This specification uses specific embodiments to illustrate the principles and implementation methods of this specification. The descriptions of the above embodiments are only for the purpose of helping to understand the methods and core ideas of this specification. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this specification. Therefore, the content of this specification should not be construed as a limitation of this specification.
Claims
1. A satellite network service storage and scheduling method, characterized by, The method is applied to a service scheduling agent, and comprises: In response to a service bet request, a bet target orbit and a bet target satellite computing power node are determined, which comprises: obtaining the service bet request, determining the bet target orbit according to orbit position information and service provider information in the service bet request; taking service metadata in the service bet request as a hash factor, taking each orbit in a satellite constellation as a hash ring, performing hash operation according to the hash factor and the hash ring, and determining the bet target satellite computing power node in the bet target orbit. After the service provider completes service bet, bet target satellite computing power node information is returned, and in response to a service scheduling request, a target service providing node closest to a service requester is determined according to position information of the service requester in the service scheduling request.
2. The method of claim 1, wherein, According to the position information of the service requester in the service scheduling request, the target service providing node closest to the service requester is determined, which comprises: Querying all candidate service providing nodes capable of providing services in a service mapping table, the service mapping table being used for storing a mapping relationship between services and the candidate service providing nodes; According to the position information of the service requester and the position information of the candidate service providing nodes, a target service providing node meeting at least one of the following conditions: being closest in space distance to the service requester or being closest in routing distance to the service requester.
3. The method of claim 2, wherein, The method further comprises: Judging whether there is a new node in the hash ring; If yes, determining nodes in the hash ring affected by the new node according to the service mapping table and a position of the new node in the hash ring; Migrating services in the nodes affected by the new node to the new node.
4. A satellite network service storage and scheduling method, characterized by, The method is applied to a service provider, and comprises: Initiating a service bet request to a service scheduling agent; Receiving a bet target satellite computing power node and betting services to the bet target satellite computing power node, wherein the bet target satellite computing power node is determined by the service scheduling agent in response to the service bet request in the method of any one of claims 1-3, which comprises: obtaining the service bet request, determining the bet target orbit according to orbit position information and service provider information in the service bet request; taking service metadata in the service bet request as a hash factor, taking each orbit in a satellite constellation as a hash ring, performing hash operation according to the hash factor and the hash ring, and determining the bet target satellite computing power node in the bet target orbit.
5. A satellite network service storage and scheduling method, characterized by, The method is applied to a service requester, and comprises: Sending a service scheduling request to a service scheduling agent; Obtaining services from a target service providing node, wherein the target service providing node is determined by the service scheduling agent in the method of any one of claims 1-3, which comprises: returning bet target satellite computing power node information after the service provider completes service bet, and in response to a service scheduling request, determining a target service providing node closest to a service requester according to position information of the service requester in the service scheduling request.
6. A satellite network service storage and scheduling system, characterized by, The system comprises: A service provider configured to initiate a service bet request and bet services to a bet target satellite computing power node; The service scheduling agent is configured to: in response to a service bet request, determine a bet target orbit and a bet target satellite computing power node, including: obtaining the service bet request, determining the bet target orbit according to orbit information and service provider information in the service bet request; taking service metadata in the service bet request as a hash factor, taking each orbit in a satellite constellation as a hash ring, performing hash operation according to the hash factor and the hash ring, and determining the bet target satellite computing power node in the bet target orbit; after a service provider completes service bet, returning bet target satellite computing power node information, and in response to a service scheduling request, determining a target service providing node closest to a service requester according to position information of the service requester. The service requester is configured to: send a service scheduling request, and obtain service from the target service providing node according to the target service providing node.
7. The system of claim 6, wherein, The target service providing node closest to the service requester includes a satellite computing power node satisfying at least one of the following conditions: closest in spatial distance or closest in routing distance to the service requester.
8. The system of claim 6, wherein, Before determining the target service providing node, the service scheduling agent is further configured to: in response to the service scheduling request, selecting the target service providing node from a plurality of satellite computing power nodes on the same type of orbit to which an access satellite corresponding to the service scheduling requester belongs.
9. A target service provider node determination device, characterized in that, The device is applied to a service scheduling agent, and includes: A first determination unit is configured to: in response to a service bet request, determine a bet target orbit and a bet target satellite computing power node, including: obtaining the service bet request, determining the bet target orbit according to orbit information and service provider information in the service bet request; taking service metadata in the service bet request as a hash factor, taking each orbit in a satellite constellation as a hash ring, performing hash operation according to the hash factor and the hash ring, and determining the bet target satellite computing power node in the bet target orbit. A second determination unit is configured to: after a service provider completes service bet, return bet target satellite computing power node information, and in response to a service scheduling request, determine a target service providing node closest to a service requester according to position information of the service requester.
10. A service overbet device, characterized by The device is applied to a service provider, and includes: A bet request sending unit is configured to initiate a service bet request. A bet unit is configured to receive a bet target satellite computing power node, and bet service to the bet target satellite computing power node, wherein the bet target satellite computing power node is determined by the service scheduling agent in the method of any one of claims 1-3 in response to the service bet request, including: obtaining the service bet request, determining the bet target orbit according to orbit information and service provider information in the service bet request; taking service metadata in the service bet request as a hash factor, taking each orbit in a satellite constellation as a hash ring, performing hash operation according to the hash factor and the hash ring, and determining the bet target satellite computing power node in the bet target orbit.
11. A satellite network service storage and scheduling apparatus, characterized by comprising: The device is applied to a service requester, and includes: A scheduling request sending unit, configured to send a service scheduling request; A service obtaining unit, configured to obtain a service from a target service providing node, wherein the target service providing node is determined by the service scheduling agent in the method of any one of claims 1-3, and the target service providing node comprises: returning the betting target satellite computing power node information after the service providing node completes the service betting, and determining the target service providing node closest to the service requester according to the location information of the service requester in the service scheduling request in response to the service scheduling request.
12. A terminal device, characterized by comprising: Comprising: at least one processor; and at least one memory storing instructions thereon that, when executed by the at least one processor alone or in combination, cause the terminal device to perform the method of any one of claims 1 to 5.
13. A network device, characterized by Comprising: at least one processor; and at least one memory storing instructions thereon that, when executed by the at least one processor alone or in combination, cause the network device to perform the method of any one of claims 1 to 5.
14. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program, and the computer program is executed by the processor to implement the method of any one of claims 1 to 5.
Citation Information
Patent Citations
Information processing method, device and system and ground network node
CN116938673A
Task scheduling method and device, storage medium and equipment
CN119047785A