Inter-satellite application layer data wide-area collaboration method and device, equipment and medium
Patent Information
- Application Number
- CN202511425098.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-30
- Publication Date
- 2026-10-23
AI Technical Summary
[0004]本申请实施例的目的是提供一种星间应用层数据广域协同方法、装置、设备及介质,能够解决当大量观测数据同时在有限的星间链路中传输时,极易造成网络拥塞,导致数据传输延迟增大、丢包率上升等问题,严重影响协同观测任务的执行效率,而且无法观测数据传输情况,导致数据传输的可靠性难以保障的问题
[0016]本申请实施例通过源节点卫星发送待传输数据包,待传输数据包内包括传输类型赋值和剩余转发次数值,待传输数据包在传输过程中每经过一个节点卫星剩余转发次数值减一;若通过传输类型赋值确定待传输数据包采用可靠传输机制,则通过目的节点卫星识别接收到的待传输数据包中的剩余转发次数值的当前值;若剩余转发次数值的当前值大于0,则通过目的节点卫星发送反馈数据包;通过判断源节点卫星是否在预设时长内接收到反馈数据包,确定源节点卫星中确认字符赋值情况;通过确认字符赋值情况确定待传输数据包的传输结果,以此实现星间应用层的广域协同。可以看出,本申请实施例通过设置剩余转发次数值限制数据在星间的总跳数,可有效避免数据在星间网络中异常广播造成网络拥塞,导致数据传输延迟增大、丢包率上升等问题,通过确认字符赋值量化数据传输情况,保证数据传输的可靠性,进而实现星间应用层的广域协同。
Smart Images

Figure CN122970043A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of remote sensing satellite data processing technology, and in particular relates to a method, device, equipment and medium for wide-area data collaboration at the inter-satellite application layer. Background Technology
[0002] With the increasing maturity of large-scale low-Earth orbit (LEO) constellation technology, inter-satellite collaborative observation is becoming an important technical means in fields such as Earth observation and space exploration. These applications typically require multiple satellites to work together to continuously observe and collect data on specific areas or targets, which places extremely high demands on the performance of inter-satellite communication networks.
[0003] In traditional inter-satellite collaborative observation, simple broadcasting or flooding mechanisms are typically used for data distribution. In developing this application, the inventors discovered at least the following problems with these mechanisms: when a large amount of observation data is transmitted simultaneously over limited inter-satellite links, network congestion is easily caused, leading to increased data transmission delays and packet loss rates, severely impacting the efficiency of collaborative observation tasks. Furthermore, the data transmission status cannot be monitored, making it difficult to guarantee the reliability of data transmission. Summary of the Invention
[0004] The purpose of this application is to provide a method, apparatus, device, and medium for wide-area data collaboration at the inter-satellite application layer. This method can solve the problems that when a large amount of observation data is transmitted simultaneously in a limited inter-satellite link, network congestion is easily caused, leading to increased data transmission delay and packet loss rate. This seriously affects the execution efficiency of collaborative observation tasks and makes it impossible to observe the data transmission status, resulting in difficulty in ensuring the reliability of data transmission.
[0005] To solve the above-mentioned technical problems, this application is implemented as follows: Firstly, this application provides a method for wide-area data collaboration at the inter-satellite application layer, the method comprising: The data packet to be transmitted is sent by the source node satellite. The data packet to be transmitted includes a transmission type assignment and a remaining forwarding count value. The remaining forwarding count value is decremented by one for each node satellite the data packet passes through during transmission. If the reliable transmission mechanism is determined by the transmission type assignment, the current value of the remaining forwarding count in the received data packet is identified by the destination node satellite. If the current value of the remaining forwarding count is greater than 0, then a feedback data packet is sent through the destination node satellite; By determining whether the source node satellite receives the feedback data packet within a preset time period, the assignment status of the confirmation character in the source node satellite is determined; The transmission result of the data packet to be transmitted is determined by the assignment of the confirmation character, thereby realizing wide-area collaboration of the inter-satellite application layer.
[0006] Optionally, transmitting the data packet to be transmitted via the source node satellite includes: Obtain the current value of the next transmission sequence number variable of the source node satellite; The target transmission sequence number corresponding to the data packet to be transmitted is determined by the current value of the next transmission sequence number variable. After adding the target transmission sequence number to the data packet to be transmitted, the data packet to be transmitted is transmitted through the source node satellite, and the current value of the next transmission sequence number variable is updated.
[0007] Optionally, before sending the data packet to be transmitted via the source node satellite, the method further includes: For a target data packet transmitted between node satellites, the packet leader header, packet sub-lead header, and data field of the target data packet are determined, and the data packet to be transmitted and the feedback data packet belong to the target data packet; The remaining forwarding count field, acknowledgment character field, sending sequence number field, and transmission type field are defined in the packet subheading. Set the remaining forwarding count value in the Remaining Forwarding Count field, set the confirmation character value in the Confirmation Character field, set the sending sequence number in the Sending Sequence Number field, and set the transmission type value in the Transmission Type field. A transmission type value of 0 indicates that the target data packet uses an unreliable transmission mechanism, and a transmission type value of 1 indicates that the target data packet uses a reliable transmission mechanism.
[0008] Optionally, before transmitting the data packet to be transmitted via the source node satellite, the method further includes: Determine the number of hops the data packet to be transmitted takes when it is transmitted between any two node satellites in the target constellation; Extract the maximum number of hops from the number of hops passed; The remaining number of forwarding attempts for the data packet to be transmitted is determined by the maximum number of hops.
[0009] Optionally, the step of determining the assignment of the acknowledgment character in the source node satellite by judging whether the source node satellite received the feedback data packet within a preset time period further includes: If the source node satellite receives the feedback data packet within a preset time period, then the acknowledgment character in the source node satellite is assigned a value of 1. If the source node satellite does not receive the feedback data packet within a preset time period, then the acknowledgment character in the source node satellite is set to 0.
[0010] Optionally, determining the transmission result of the data packet to be transmitted based on the assignment of the confirmation character includes: If the confirmation character is set to 1, then the transmission of the data packet to be transmitted is confirmed to be successful. If the confirmation character is set to 0, then the transmission of the data packet to be transmitted is determined to have failed.
[0011] Optionally, after determining that the transmission of the data packet to be transmitted has failed if the confirmation character is set to 0, the following steps are included: The data packet to be transmitted is retransmitted via the source node satellite, and the target transmission sequence number corresponding to the data packet to be transmitted remains unchanged. Obtain the number of times the data packet to be transmitted will be retransmitted; If it is determined that the number of retransmissions of the data packet to be transmitted exceeds the retransmission threshold, an error message is sent and retransmission of the data packet to be transmitted is stopped.
[0012] Secondly, this application provides an inter-satellite application layer data wide-area collaboration device, the device comprising: The first transmitting module is used to transmit a data packet to be transmitted via a source node satellite. The data packet to be transmitted includes a transmission type assignment and a remaining forwarding count value. The remaining forwarding count value is decremented by one each time the data packet passes through a node satellite during transmission. The identification module is used to identify the current value of the remaining forwarding count in the received data packet to be transmitted by the destination node satellite if the reliable transmission mechanism is determined by the transmission type assignment. The second sending module is used to send a feedback data packet through the destination node satellite if the current value of the remaining forwarding count is greater than 0. The first determining module is used to determine the assignment status of the confirmation character in the source node satellite by judging whether the source node satellite has received the feedback data packet within a preset time period; The second determining module is used to determine the transmission result of the data packet to be transmitted based on the assignment of the confirmation character, thereby realizing wide-area collaboration of the inter-satellite application layer.
[0013] Thirdly, this application provides an electronic device, including: a processor, a memory, and a program stored in the memory and executable on the processor, wherein the processor executes the program to implement the above-described inter-satellite application layer data wide-area collaboration method.
[0014] Fourthly, this application provides a readable storage medium that, when the instructions in the storage medium are executed by the processor of an electronic device, enables the electronic device to execute the aforementioned inter-satellite application layer data wide-area collaboration method.
[0015] Fifthly, embodiments of this application provide a chip, the chip including a processor and a communication interface, the communication interface being coupled to the processor, the processor being used to run programs or instructions to implement the method as described in the first aspect.
[0016] This application embodiment transmits a data packet to be transmitted via a source node satellite. The data packet includes a transmission type assignment and a remaining forwarding count value. The remaining forwarding count value decreases by one for each node satellite the data packet passes through during transmission. If the transmission type assignment indicates that a reliable transmission mechanism is used, the destination node satellite identifies the current value of the remaining forwarding count in the received data packet. If the current value of the remaining forwarding count is greater than 0, a feedback data packet is sent via the destination node satellite. The source node satellite determines its confirmation character assignment status by checking whether it receives the feedback data packet within a preset time. The transmission result of the data packet is determined by the confirmation character assignment status, thereby achieving wide-area collaboration at the inter-satellite application layer. It can be seen that this application embodiment, by setting the remaining forwarding count value to limit the total number of hops of data between satellites, can effectively avoid network congestion caused by abnormal data broadcasting in the inter-satellite network, leading to increased data transmission delay and packet loss rate. The confirmation character assignment quantifies the data transmission status, ensuring the reliability of data transmission, thereby achieving wide-area collaboration at the inter-satellite application layer. Attached Figure Description
[0017] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0018] Figure 1 This application provides a method for wide-area data collaboration at the inter-satellite application layer. Figure 2 yes Figure 1 The diagram shown is a schematic design of key fields in the packet subheader of an inter-satellite application layer data wide-area collaboration method provided in this application embodiment. Figure 3 This is a schematic diagram of an inclined orbit constellation provided in an embodiment of this application; Figure 4 yes Figure 3 The diagram shown is a schematic representation of data packet transmission within an inclined orbit constellation provided by an embodiment of this application. Figure 5 This is a schematic diagram of a polar orbit constellation provided in an embodiment of this application; Figure 6 yes Figure 5The diagram shown is a schematic representation of data packet transmission within a polar orbit constellation provided in this application embodiment. Figure 7 This is a structural diagram of an inter-satellite application layer data wide-area collaborative device provided in an embodiment of this application; Figure 8 This is a structural diagram of an electronic device provided in an embodiment of this application. Detailed Implementation
[0019] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0020] With the rapid development of large-scale mega-low-Earth orbit constellations, the application scenarios for inter-satellite collaborative observation are becoming increasingly widespread. In inter-satellite collaborative observation, traditional data broadcasting methods are prone to network flooding and congestion, and transmission reliability is difficult to guarantee.
[0021] Furthermore, in data broadcast storm scenarios, massive amounts of observation data packets spread throughout the constellation network via flooding mechanisms, easily causing congestion at critical nodes in multi-hop links, leading to packet loss and a surge in transmission delays. This not only reduces the efficiency of collaborative observation tasks but also fails to guarantee the integrity and timeliness of critical scientific data. Based on the above problems, this application proposes a method for wide-area data collaboration at the inter-satellite application layer. (Refer to...) Figure 1 , Figure 1 This is a flowchart illustrating the steps of an inter-satellite application layer data wide-area collaboration method provided in an embodiment of this application, as follows: Figure 1 As shown, the method may include: Step 101: Send the data packet to be transmitted through the source node satellite. The data packet to be transmitted includes the transmission type assignment and the remaining forwarding count value. The remaining forwarding count value of the data packet to be transmitted is reduced by one for each node satellite it passes through during the transmission process.
[0022] In this embodiment, the data packets transmitted between node satellites are named target data packets. To ensure the reliability of data transmission between satellites, key fields are designed for the target data packets transmitted between node satellites. The data packet mainly includes a packet header, a packet subheading, and a data field. The packet header is a mandatory, fixed-format beginning of the data packet. It contains the most basic and critical metadata of the data packet, enabling any node in the network to perform basic routing and processing even without reading the packet body. Typically, it includes fields such as version number (protocol version), packet identifier (indicating the packet type and the application process ID), packet sequence control (indicating whether the packet is the first, middle, last, or independent packet of a complete data segment), and packet data length. The packet subheading provides a time reference and other auxiliary information for the data packet. The data field is the core payload of the data packet, containing the actual application data to be transmitted, which may be pixel data from a remote sensing image, a scientific instrument sampling reading, or a compressed audio / video stream.
[0023] This application's embodiments primarily focus on designing key fields within the packet subheader of the target data packet. The subheader defines fields such as the remaining forwarding attempts field, the Acknowledge character (ACK) field, the transmission sequence number field, and the transmission type field. These different fields are located in different positions within the subheader and occupy different lengths. For example, ... Figure 2 As shown, the confirmation character field and transmission type field are judgment fields, with a length of 1 bit. The sending sequence number field and remaining forwarding count field are character fields, with a length of 8 bits. This setting ensures that the packet subheading length can ultimately be an integer multiple of 8 bytes.
[0024] The transmission type field can be set to either 0 or 1. This value determines whether the target data packet uses a reliable transmission mechanism. A value of 1 indicates reliable transmission, while 0 indicates unreliable transmission. The acknowledgment character field can also be set to either 0 or 1. This value determines the transmission result between the source and destination satellites. A value of 1 indicates successful transmission, while 0 indicates failure. The transmission sequence number field identifies the order in which data packets are sent; the sequence number increments. The remaining hop count field indicates the hop limit for the target data packet. During transmission from the source to the destination satellite, the remaining hop count decreases by one for each satellite the target data packet passes through. When the remaining hop count reaches 0, the data packet is discarded to prevent infinite loops. The specific design steps are as follows: For target data packets transmitted between node satellites, determine the packet leader header, packet sub-lead header, and data field of the target data packet; the data packets to be transmitted and the feedback data packets belong to the target data packets. Define the remaining forwarding count field, acknowledgment character field, sending sequence number field, and transmission type field in the packet subheader; Set the remaining forwarding count value in the Remaining Forwarding Count field, set the acknowledgment character value in the acknowledgment character field, set the sending sequence number in the sending sequence number field, and set the transmission type value in the transmission type field. The remaining forwarding count value of the target data packet is decremented by one for each node satellite it passes through during transmission. A transmission type value of 0 indicates that the target data packet uses an unreliable transmission mechanism, and a transmission type value of 1 indicates that the target data packet uses a reliable transmission mechanism.
[0025] The above steps achieve three core functions—reliable transmission, congestion control (suppressing directional broadcast storms), and loop prevention—through custom control fields (remaining forwarding counts, acknowledgment identifier, transmission sequence number, and transmission type). Encapsulating complex functional logic within the packet subheader makes the protocol both powerful and structurally clear, perfectly suited to application scenarios with limited processing capabilities of large-scale low-Earth orbit constellation nodes and dynamically changing network topologies, providing an efficient and reliable data transmission foundation for inter-satellite collaborative observation.
[0026] In addition, when setting the remaining forwarding count value in the target data packet, to ensure that the data packet reaches the destination satellite node as much as possible and is not dropped, a maximum value for the remaining forwarding count is set according to the constellation size; this is the initial remaining forwarding count value. Generally, the remaining forwarding count field occupies 8 bits in length and can take a maximum value of 255. The setting steps are as follows: Determine the number of hops the data packet to be transmitted takes when it is transmitted between any two node satellites in the target constellation; Extract the maximum number of hops from the number of hops traversed; The remaining number of forwarding attempts for the data packet to be transmitted is determined by the maximum number of hops.
[0027] The target constellation refers to the constellation in which the data packet to be transmitted resides during transmission. Determining the hop count for transmission between any two node satellites in the target constellation requires analyzing its network topology. This can be achieved by using ephemeris data, satellite orbit parameters, and routing algorithms (such as graph-based algorithms and Djikstra's algorithm) to simulate and calculate the shortest path length between all node pairs (satellite pairs). The shortest path length between satellite pairs is then the hop count for transmission between any two node satellites. The extracted maximum hop count represents the number of relays required for data to travel from one endpoint to another in the worst-case scenario, defining the maximum survival space required for normal transmission of the data packet within the network. The initial remaining forwarding count must be greater than the maximum hop count; the relationship is: Initial remaining forwarding count = Maximum hop count + Redundancy hop margin. Because the actual routing path may not be the absolute shortest path, or the topology may have slightly changed due to satellite movement, requiring detours, a redundancy hop margin is set.
[0028] The above steps, by transforming the initial setting of the remaining forwarding count from an empirical, static configuration to a dynamic calculation based on network topology analysis, achieve a precise balance between network resource optimization and communication reliability. Furthermore, by using the network diameter as a key attribute for setting the initial value, and employing a "baseline value + margin" strategy, the reachability of normal data packets in the dynamic constellation network is absolutely guaranteed (avoiding communication interruptions due to excessively small remaining forwarding counts), while the maximum lifespan of data packets is strictly limited to a reasonable range. This significantly suppresses network resource exhaustion problems caused by routing loops or broadcast storms, effectively improving the robustness and overall performance of large-scale constellation networks.
[0029] It should be noted that when setting the initial remaining forwarding count in the target data packet, the network topology between the source node satellite and the destination node satellite can be analyzed first, and the initial remaining forwarding count can be set based on the network topology between the two nodes.
[0030] As shown in the above settings, when transmitting a data packet, key fields are first configured in the packet. Therefore, the data packet includes a confirmation of remaining forwarding attempts, a confirmation character value, a transmission type value, and a transmission sequence number. The remaining forwarding attempts at the source satellite node are determined by the constellation size and are a relatively large value. This value decreases by one for each subsequent satellite node during transmission. Therefore, the remaining forwarding attempts value in the data packet is a variable. When the data packet is sent, the confirmation character is set to 0, indicating that the data packet has not yet been successfully transmitted. The transmission type value is determined by the data transmission mechanism used by the data packet and is a fixed value. The transmission sequence number is determined by the source satellite node. The source satellite node maintains an internal counter, the "Next Transmission Sequence Number" variable. Before sending the data packet, the source satellite node queries the current value of the "Next Transmission Sequence Number" variable and adds this value as the target transmission sequence number for the data packet to the transmission sequence number field of the data packet. After confirming successful transmission of the data packet, the current value of the "Next Transmission Sequence Number" variable is incremented by 1. This prepares for the transmission of the next data packet. Therefore, step 101 specifically includes the following sub-steps: Sub-step 1011: Obtain the current value of the next transmission sequence number variable of the source node satellite.
[0031] Sub-step 1012: Determine the target transmission sequence number corresponding to the data packet to be transmitted by using the current value of the next transmission sequence number variable.
[0032] Sub-step 1013: After adding the target transmission sequence number to the data packet to be transmitted, the data packet to be transmitted is transmitted through the source node satellite, and the current value of the next transmission sequence number variable is updated.
[0033] For example, suppose the source node satellite is satellite A and the target node satellite is satellite B. When satellite A is about to send a data packet, it first checks an internal counter it maintains and gets the current value of the next transmission sequence number variable in the internal counter. Assuming this is the first communication after satellite A restarts, the value obtained is 1. Satellite A determines that the target transmission sequence number of this data packet is the current value of the next transmission sequence number variable that it just obtained, which is 1. It adds 1 to the transmission sequence number field of the data packet. After successful transmission, satellite A immediately increments the current value of the next transmission sequence number variable by 1. At this time, the current value is 2.
[0034] The above steps ensure the orderliness and uniqueness of data transmission by assigning a unique and incrementing sequence number to each data packet to be transmitted and updating the transmission counter in real time. This lays a solid foundation for the receiving end to correctly reassemble the data, achieve reliable transmission, and avoid packet collisions.
[0035] It should be understood that the destination node satellite also maintains a next transmission sequence number variable, and the value of this variable will increment as data packets are sent.
[0036] In addition, when updating the next transmission sequence number variable, it can also be updated based on the data length of the data packet to be transmitted. The update steps include: Get the data length of the data packet to be transmitted; The current value of the next transmission sequence number variable is updated based on the data length.
[0037] For example, if the first data packet to be transmitted has a data length of 100 bytes and its transmission sequence number is 0, after transmission, the current value of the next transmission sequence number variable is updated to 100, and the transmission sequence number of the second data packet to be transmitted starts from 100.
[0038] This configuration upgrades the sequence number from a packet counter to a byte pointer, enabling it to uniquely and precisely identify each byte in the data stream. This significantly simplifies the complexity of data fragmentation, reassembly, and aggregation, improves transmission efficiency, and enhances the protocol's adaptability to different transmission scenarios. This is a more modern and efficient design approach, particularly suitable for high-speed networks or space links that need to handle variable-length and large data blocks.
[0039] Step 102: If the reliable transmission mechanism is determined by assigning a transmission type value, then the current value of the remaining forwarding count in the received data packet is identified by the destination node satellite.
[0040] This application embodiment controls the total number of hops between satellites using the remaining forwarding count value, assuming a reliable transmission mechanism is employed. Therefore, in addition to adding the target transmission sequence number to the data packet to be transmitted, the transmission type of the data packet is also determined. This application embodiment determines whether the data packet to be transmitted uses a reliable transmission mechanism by assigning a transmission type value. If the transmission type value is 0, it is determined that the data packet to be transmitted uses an unreliable transmission mechanism; if the transmission type value is 1, it is determined that the data packet to be transmitted uses a reliable transmission mechanism.
[0041] After determining that a reliable transmission mechanism is used for the data packets to be transmitted, the remaining hop count can be used to control the total number of hops between satellites. Subsequently, upon receiving the data packets at the destination satellite node, the received data packets are parsed to identify the current value of the remaining hop count, thus effectively preventing network congestion caused by abnormal data broadcasting in the inter-satellite network. Specifically, the remaining hop count of the data packets is decremented by one for each satellite node during transmission.
[0042] Step 103: If the current value of the remaining forwarding count is greater than 0, then send a feedback data packet through the destination node satellite.
[0043] This application embodiment constrains the "hop count" of data between satellites by setting a remaining forwarding count field in the data packet. This effectively avoids network congestion caused by abnormal data broadcasting in the inter-satellite network. Therefore, after determining that a reliable transmission mechanism is used for the data packet to be transmitted, the total number of hops of the data packet to be transmitted between satellites can be controlled by the remaining forwarding count value. A remaining forwarding count value is set in the data packet to be transmitted. Then, the remaining forwarding count value is decremented by one for each node satellite the data packet passes through. When the remaining forwarding count value is 0, the data packet to be transmitted is dropped. When it reaches the destination node satellite, if the current value of the remaining forwarding count value is > 0, it indicates that the data packet to be transmitted has been successfully transmitted to the destination node satellite. At this time, the destination node satellite will return a feedback data packet to the source node satellite, informing the source node satellite that it has successfully received the data packet to be transmitted.
[0044] Step 104: Determine the assignment status of the confirmation character in the source node satellite by judging whether the source node satellite has received the feedback data packet within the preset time period.
[0045] The preset duration in this embodiment is a key parameter that is dynamically calculated and is usually set based on the round-trip time of historical data packets. Setting it too long will reduce the response speed, while setting it too short will lead to unnecessary retransmissions. In this embodiment, after the source node satellite sends the data packet to be transmitted, a timer is started. If a feedback data packet is received from the destination node satellite within the preset duration recorded by the timer, it indicates that the transmission was successful, and the acknowledgment character in the source node satellite is set to 1. If no response is received after the timeout, it is inferred that the data packet to be transmitted or the feedback data packet may have been lost during transmission, and the acknowledgment character in the source node satellite is still set to 0. Step 104 specifically includes the following sub-steps: Sub-step 1041: If the source node satellite receives a feedback data packet within a preset time period, then the acknowledgment character in the source node satellite is assigned a value of 1.
[0046] Sub-step 1042: If the source node satellite does not receive the feedback data packet within the preset time period, then the acknowledgment character in the source node satellite is set to 0.
[0047] The above operations, by classifying successful data packet acknowledgment (ACK=1) and transmission failure or loss (ACK=0) status, provide core nodes with a deterministic basis for judging whether the transmission is successful or not. This lays a solid foundation for triggering subsequent processes (such as data retransmission or fault reporting) and effectively ensures the automation and reliability of the reliable transmission process.
[0048] Step 105: Determine the transmission result of the data packet to be transmitted by confirming the character assignment, thereby realizing wide-area collaboration of the inter-satellite application layer.
[0049] The data packets in this application are created at the application layer. A primary condition for wide-area collaboration is that all participating nodes have a consistent understanding of the meaning of specific fields in the data packets. Therefore, this application sets a transmission type field so that any node satellite in the target constellation understands that the data packets should follow the rule that "1" represents reliable transmission and "0" represents unreliable transmission. A remaining forwarding count field is also set, giving the data packet a "lifetime" semantic. An acknowledgment character field allows the applications at both endpoints (source and destination satellites) to agree on the success or failure of data transmission. Based on these settings, unified application-layer communication rules are established for all satellite nodes, ensuring semantic consistency and achieving standardized protocol collaboration at the inter-satellite application layer. Through an end-to-end (source and destination satellites) acknowledgment mechanism, the applications of the source and destination satellites can reliably synchronize data states, achieving end-to-end target collaboration at the inter-satellite application layer. Distributed decisions (such as whether to send feedback data packets) are made based on the received remaining forwarding count value. These decisions guide the entire system to the correct state (successful transmission or timely retransmission), achieving distributed decision-making collaboration at the inter-satellite application layer. Network layer information such as the remaining forwarding count provides a basis for application-layer decisions, intelligently managing retransmission behavior, avoiding resource waste on poor-quality paths, improving the efficiency and robustness of the entire satellite network, and achieving network resource collaboration at the inter-satellite application layer. Based on these different aspects of collaboration, wide-area collaboration at the inter-satellite application layer is achieved.
[0050] In this embodiment, a confirmation character value of 1 indicates successful transmission of the data packet, while a confirmation character value of 0 indicates failed transmission. Therefore, step 105 specifically includes the following sub-steps: If the character is confirmed to be 1, then the data packet to be transmitted has been successfully transmitted. If the confirmation character is assigned a value of 0, then the transmission of the data packet to be transmitted has failed.
[0051] This application embodiment also includes a timeout retransmission mechanism after confirming the failure of data packet transmission. That is, if no feedback data packet is received from the destination satellite within a preset time period, the transmission of the data packet is determined to have failed, and the source satellite is controlled to retransmit the data packet. This application embodiment also sets a retransmission count threshold. If the number of retransmissions exceeds the threshold and no feedback data packet is received from the destination satellite, the retransmission will end. The specific steps involved are as follows: The data packet to be transmitted is retransmitted by the source node satellite, and the target transmission sequence number corresponding to the data packet to be transmitted remains unchanged. Get the number of times the data packet to be transmitted will be resent; If the number of retransmissions of the data packet to be transmitted is determined to be greater than the retransmission threshold, an error message is sent and retransmission of the data packet to be transmitted is stopped.
[0052] It should be noted that during the timeout retransmission process, the change in the remaining forwarding count value can be tracked to determine whether the transmission failure is caused by the data packet not reaching the destination satellite node, resulting in a remaining forwarding count value of 0 and packet loss. If so, the transmission path of the data packet to be transmitted needs to be readjusted during retransmission.
[0053] In addition, the transmission failure might also be due to an unreasonable preset duration setting. In this case, the source satellite triggers a retransmission, but then receives a feedback data packet for the previously sent data packet. The source satellite will then check the corresponding transmission sequence number. If the sequence number corresponds to a data packet that has already timed out and been retransmitted, the source satellite can choose to ignore this feedback data packet, as it may be an old or invalid response.
[0054] This application uses inclined orbit constellations and polar orbit constellations as simulation scenarios to verify the reliability of the above method. First, verification is performed on an inclined orbit constellation, which contains M different orbital planes, each with N satellites, for a total of MN satellites. The satellite nodes are identified from 1 to MN.
[0055] The offset angle of each orbital plane relative to the other orbital planes is θ. , where j represents the j-th orbital plane, and M represents the total number of orbital planes. Satellites within each orbital plane are uniformly distributed, and the angle between adjacent satellites on the same orbital plane is 360 / N degrees.
[0056] For example, such as Figure 3As shown, the constellation comprises four orbital planes, each containing three satellites. There are a total of 12 satellites in the constellation, with satellite nodes numbered sequentially from 1 to 12 according to the orbital plane order. Each satellite maintains inter-satellite links with four other satellites, including linking between adjacent satellites within the same orbital plane and between satellites on the other two orbital planes. Linking with satellites on other orbital planes enables information exchange between satellites in different orbits. When establishing links between satellites on two orbital planes, the inter-satellite link is established in the region of closest proximity, where the distance between the two satellites is shortest, resulting in the lowest energy consumption and best signal quality. In this constellation, data packet transmission is as follows: Figure 4 As shown, node 5 is selected as the source node and node 7 as the destination node. The simulation generates a data packet sequence, which is transmitted between satellites using a broadcast method. The data packet transmission path is from the source node 5 to the adjacent node 6 on the same orbital plane, then to node 9 on the adjacent orbital plane that has an inter-satellite link with node 6, and finally to the adjacent node 7 on the same orbital plane of node 9, successfully reaching the destination node. Next, node 12 is selected as the source node and node 2 as the destination node. After passing through nodes 10 and 11 on the same orbital plane, the data packet is successfully transmitted to the destination node 2 on the adjacent orbital plane. The initial value of the Time To Live (TTL) is set to 10, and the number of retransmissions is 5. 100 simulation experiments were conducted in an inclined orbit constellation, transmitting data packets from any source node to any destination node each time. 97 transmissions were successful, and 3 transmissions failed, but no malicious data propagation occurred between satellites. The number of retransmissions was set to 8, and the initial TTL value remained unchanged at 10. Another simulation experiment was conducted, resulting in a data transmission success rate of 100%. Simulation results demonstrate that by configuring appropriate parameters, the aforementioned inter-satellite application layer data wide-area collaborative method can achieve reliable transmission of space data packets on inclined orbit constellations.
[0057] The system was then validated using a polar orbit constellation. This constellation's satellites operate in a 90-degree inclination polar orbit, covering the entire globe, especially the polar regions. A polar orbit constellation comprises M different orbital planes, each containing N satellites, for a total of MN satellites. Each orbital plane has a different right ascension of the ascending node to ensure uniform global coverage. The right ascensions of the ascending nodes of satellites within the same orbital plane are evenly distributed, spaced at 360 / N degrees intervals. In a polar orbit constellation, each satellite has two inter-satellite links connecting it to other satellites in the same orbit; these links are typically always active. Additionally, each satellite can establish inter-satellite links with the nearest two satellites in other orbital planes to facilitate information exchange between satellites in different orbits.
[0058] For example, such as Figure 5As shown, there is a polar orbit constellation with 6 orbital planes, each containing 3 satellites. This polar orbit constellation has 18 satellites, with the satellite nodes numbered sequentially from 1 to 18 according to the orbital plane order. Each satellite has inter-satellite links with 4 other satellites, including establishing links between adjacent satellites within the same orbital plane and between satellites in the other two orbital planes. Data packet transmission within this constellation is as follows: Figure 6 As shown, firstly, node 17 is selected as the source node and node 3 as the destination node. The simulation generates a data packet sequence, which is then transmitted inter-satellitely via broadcast. The data packet transmission path is from the source node 17 to the adjacent node 18 on the same orbital plane, then to node 3 on the adjacent orbital plane, which has an inter-satellite link with node 18, successfully reaching the destination node. Next, node 9 is selected as the source node and node 16 as the destination node. The data packet passes through the adjacent node 12 on the same orbital plane, then node 15 on the adjacent orbital plane of node 12, and finally node 13 on the same orbital plane of node 15, before successfully reaching the destination node 16. The initial TTL value is set to 10, and the retransmission count is 5. 100 simulation experiments were conducted on a polar orbit constellation, each transmitting data packets from any source node to any destination node. 93 transmissions were successful, and 7 transmissions failed without causing malicious data propagation between satellites. The retransmission count was set to 8, and the initial TTL value remained unchanged at 10. Another simulation experiment was conducted, resulting in 98 successful data transmissions and 2 transmission failures without causing malicious data propagation between satellites. Further parameter settings were modified, with the number of retransmissions set to 8 and the initial TTL value set to 12. A second simulation experiment was conducted, resulting in a 100% data transmission success rate. The simulation results demonstrate that by configuring appropriate parameters, the aforementioned inter-satellite application layer data wide-area collaborative method can achieve reliable transmission of space data packets on inclined orbit constellations.
[0059] This application embodiment transmits a data packet to be transmitted via a source node satellite. The data packet includes a transmission type assignment and a remaining forwarding count value. The remaining forwarding count value decreases by one for each node satellite the data packet passes through during transmission. If the transmission type assignment indicates that a reliable transmission mechanism is used, the destination node satellite identifies the current value of the remaining forwarding count in the received data packet. If the current value of the remaining forwarding count is greater than 0, a feedback data packet is sent via the destination node satellite. The source node satellite determines its confirmation character assignment status by checking whether it receives the feedback data packet within a preset time. The transmission result of the data packet is determined by the confirmation character assignment status, thereby achieving wide-area collaboration at the inter-satellite application layer. It can be seen that this application embodiment, by setting the remaining forwarding count value to limit the total number of hops of data between satellites, can effectively avoid network congestion caused by abnormal data broadcasting in the inter-satellite network, leading to increased data transmission delay and packet loss rate. The confirmation character assignment quantifies the data transmission status, ensuring the reliability of data transmission, thereby achieving wide-area collaboration at the inter-satellite application layer.
[0060] Figure 7 This is a structural diagram of an inter-satellite application layer data wide-area collaboration device provided in an embodiment of this application. The device may include: The first transmitting module 201 is used to transmit data packets to be transmitted through the source node satellite. The data packets to be transmitted include a transmission type assignment and a remaining forwarding count value. The remaining forwarding count value of the data packets to be transmitted is decremented by one each time they pass through a node satellite during transmission.
[0061] The identification module 202 is used to identify the current value of the remaining forwarding count in the received data packet by the destination node satellite if the reliable transmission mechanism is determined by the transmission type assignment.
[0062] The second sending module 203 is used to send a feedback data packet through the destination node satellite if the current value of the remaining forwarding count is greater than 0.
[0063] The first determining module 204 is used to determine the assignment status of the confirmation character in the source node satellite by judging whether the source node satellite has received the feedback data packet within a preset time period.
[0064] The second determining module 205 is used to determine the transmission result of the data packet to be transmitted by confirming the character assignment, thereby realizing wide-area collaboration of the inter-satellite application layer.
[0065] Optionally, the first transmitting module 201 includes: The first acquisition submodule is used to acquire the current value of the next transmission sequence number variable of the source node satellite.
[0066] The first determination submodule is used to determine the target transmission sequence number corresponding to the data packet to be transmitted by using the current value of the next transmission sequence number variable.
[0067] The update submodule is used to add the target transmission sequence number to the data packet to be transmitted, transmit the data packet through the source node satellite, and update the current value of the next transmission sequence number variable.
[0068] Optionally, the inter-satellite application layer data wide-area collaboration device also includes: The third determination module is used to determine the packet leader, packet sub-leader, and data field of the target data packet being transmitted between node satellites, and to determine whether the data packet to be transmitted and the feedback data packet belong to the target data packet.
[0069] The definition module is used to define the remaining forwarding count field, acknowledgment character field, sending sequence number field, and transmission type field in the packet subheader.
[0070] The settings module is used to set the remaining forwarding count in the Remaining Forwarding Counts field, the acknowledgment character in the acknowledgment character field, the sending sequence number in the sending sequence number field, and the transmission type in the transmission type field. A transmission type value of 0 indicates that the target data packet uses an unreliable transmission mechanism, while a transmission type value of 1 indicates that the target data packet uses a reliable transmission mechanism.
[0071] The fourth determination module is used to determine the number of hops the data packet to be transmitted takes when it is transmitted between any two node satellites in the target constellation.
[0072] The extraction module is used to extract the maximum number of hops from the number of hops passed.
[0073] The fifth determination module is used to determine the remaining number of forwarding attempts for the data packet to be transmitted based on the maximum number of hops.
[0074] Optionally, the first determining module 204 includes: The second determination submodule is used to determine that if the source node satellite receives a feedback data packet within a preset time period, the confirmation character in the source node satellite is assigned a value of 1.
[0075] The third determination submodule is used to determine that if the source node satellite does not receive a feedback data packet within a preset time period, the acknowledgment character in the source node satellite is set to 0.
[0076] Optionally, the second determining module 205 includes: The fourth determination submodule is used to determine that the data packet to be transmitted has been successfully transmitted if the confirmation character is set to 1.
[0077] The fifth determination submodule is used to determine that the transmission of the data packet to be transmitted has failed if the confirmation character is assigned a value of 0.
[0078] Optionally, the inter-satellite application layer data wide-area collaboration device also includes: The retransmission module is used to retransmit the data packets to be transmitted via the source node satellite, while the target transmission sequence number corresponding to the data packets to be transmitted remains unchanged.
[0079] The acquisition module is used to obtain the number of times the data packet to be transmitted will be resent.
[0080] The error message module is used to send an error message and stop retransmitting the data packet if it is determined that the number of retransmissions of the data packet to be transmitted exceeds the retransmission threshold.
[0081] This application embodiment transmits a data packet to be transmitted via a source node satellite. The data packet includes a transmission type assignment and a remaining forwarding count value. The remaining forwarding count value decreases by one for each node satellite the data packet passes through during transmission. If the transmission type assignment indicates that a reliable transmission mechanism is used, the destination node satellite identifies the current value of the remaining forwarding count in the received data packet. If the current value of the remaining forwarding count is greater than 0, a feedback data packet is sent via the destination node satellite. The source node satellite determines its confirmation character assignment status by checking whether it receives the feedback data packet within a preset time. The transmission result of the data packet is determined by the confirmation character assignment status, thereby achieving wide-area collaboration at the inter-satellite application layer. It can be seen that this application embodiment, by setting the remaining forwarding count value to limit the total number of hops of data between satellites, can effectively avoid network congestion caused by abnormal data broadcasting in the inter-satellite network, leading to increased data transmission delay and packet loss rate. The confirmation character assignment quantifies the data transmission status, ensuring the reliability of data transmission, thereby achieving wide-area collaboration at the inter-satellite application layer.
[0082] This application also provides an electronic device, Figure 8 This is a structural block diagram of an electronic device provided in an embodiment of this application. See also... Figure 8 The system includes a processor 301, a memory 302, and a program 3021 stored in the memory and executable on the processor. When the processor executes the program, it implements the following steps: an inter-satellite application layer data wide-area collaboration method. The data packet to be transmitted is sent by the source node satellite. The data packet to be transmitted includes a transmission type assignment and a remaining forwarding count value. The remaining forwarding count value is decremented by one for each node satellite the data packet passes through during transmission. If the reliable transmission mechanism is determined by the transmission type assignment, the current value of the remaining forwarding count in the received data packet is identified by the destination node satellite. If the current value of the remaining forwarding count is greater than 0, then a feedback data packet is sent through the destination node satellite; By determining whether the source node satellite receives the feedback data packet within a preset time period, the assignment status of the confirmation character in the source node satellite is determined. The transmission result of the data packet to be transmitted is determined by the assignment of the confirmation character, thereby realizing wide-area collaboration of the inter-satellite application layer.
[0083] This application also provides a readable storage medium that, when the instructions in the storage medium are executed by the processor of an electronic device, enables the electronic device to execute the inter-satellite application layer data wide-area collaboration method of the foregoing embodiments.
[0084] This application also provides a chip, which includes a processor and a communication interface. The communication interface is coupled to the processor. The processor is used to run programs or instructions to implement the various processes of the above-described inter-satellite application layer data wide-area collaboration method embodiments and can achieve the same technical effect. To avoid repetition, it will not be described again here.
[0085] It should be understood that the chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.
[0086] As the device embodiment is basically similar to the method embodiment, the description is relatively simple, and relevant parts can be found in the description of the method embodiment.
[0087] The algorithms and displays provided herein are not inherently related to any particular computer, virtual system, or other device. The structure required to construct such a system is obvious from the above description. Furthermore, this application is not directed to any particular programming language. It should be understood that the content of this application described herein can be implemented using various programming languages, and the above description of specific languages is for the purpose of disclosing the best mode of implementation of this application.
[0088] Numerous specific details are set forth in the specification provided herein. However, it will be understood that embodiments of this application may be practiced without these specific details. In some instances, well-known methods, structures, and techniques have not been shown in detail so as not to obscure the understanding of this specification.
[0089] Similarly, it should be understood that, in order to simplify this application and aid in understanding one or more of the various inventive aspects, in the above description of exemplary embodiments of this application, various features of this application are sometimes grouped together into a single embodiment, figure, or description thereof. However, this method of disclosure should not be construed as reflecting an intention that the claimed application requires more features than are expressly recited in each claim. Rather, as reflected in the following claims, inventive aspects lie in fewer than all features of a single foregoing disclosed embodiment. Therefore, the claims following the detailed description are hereby expressly incorporated into that detailed description, wherein each claim itself is a separate embodiment of this application.
[0090] Those skilled in the art will understand that modules in the device of the embodiments can be adaptively changed and placed in one or more devices different from that embodiment. Modules, units, or components in the embodiments can be combined into a single module, unit, or component, and further, they can be divided into multiple sub-modules, sub-units, or sub-components. Except where at least some of such features and / or processes or units are mutually exclusive, any combination can be used to combine all features disclosed in this specification (including the accompanying claims, abstract, and drawings) and all processes or units of any method or device so disclosed. Unless expressly stated otherwise, each feature disclosed in this specification (including the accompanying claims, abstract, and drawings) may be replaced by an alternative feature serving the same, equivalent, or similar purpose.
[0091] The various component embodiments of this application can be implemented in hardware, or as software modules running on one or more processors, or a combination thereof. Those skilled in the art will understand that microprocessors or digital signal processors (DSPs) can be used in practice to implement some or all of the functions of some or all of the components in the sequencing device according to this application. This application can also be implemented as a device or apparatus program for performing part or all of the methods described herein. Such an implementation of this application can be stored on a computer-readable medium, or can take the form of one or more signals. Such signals can be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.
[0092] It should be noted that the above embodiments are illustrative of this application and not limiting of it, and that those skilled in the art can devise alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses should not be construed as limiting the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. This application can be implemented by means of hardware comprising several different elements and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by the same item of hardware. The use of the words first, second, and third, etc., does not indicate any order. These words can be interpreted as names.
[0093] Those skilled in the art will 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.
[0094] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this application should be included within the protection scope of this application.
[0095] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
[0096] It should be noted that the various data-related processes in the embodiments of this application are carried out in compliance with the relevant data protection laws and policies of the country where the location is located, and with the authorization granted by the owner of the corresponding device.
Claims
1. A method for wide-area data collaboration at the inter-satellite application layer, characterized in that, The method includes: The data packet to be transmitted is sent by the source node satellite. The data packet to be transmitted includes a transmission type assignment and a remaining forwarding count value. The remaining forwarding count value is decremented by one for each node satellite the data packet passes through during transmission. If the reliable transmission mechanism is determined by assigning a transmission type value, then the current value of the remaining forwarding count in the received data packet is identified by the destination node satellite. If the current value of the remaining forwarding count is greater than 0, then a feedback data packet is sent through the destination node satellite; By determining whether the source node satellite receives the feedback data packet within a preset time period, the assignment status of the confirmation character in the source node satellite is determined. The transmission result of the data packet to be transmitted is determined by the assignment of the confirmation character, thereby realizing wide-area collaboration of the inter-satellite application layer.
2. The method according to claim 1, characterized in that, The step of transmitting the data packet to be transmitted via the source node satellite includes: Obtain the current value of the next transmission sequence number variable of the source node satellite; The target transmission sequence number corresponding to the data packet to be transmitted is determined by the current value of the next transmission sequence number variable. After adding the target transmission sequence number to the data packet to be transmitted, the data packet to be transmitted is transmitted through the source node satellite, and the current value of the next transmission sequence number variable is updated.
3. The method according to claim 1, characterized in that, Before sending the data packet to be transmitted via the source node satellite, the process also includes: For a target data packet transmitted between node satellites, the packet leader header, packet sub-lead header, and data field of the target data packet are determined, and the data packet to be transmitted and the feedback data packet belong to the target data packet; The remaining forwarding count field, acknowledgment character field, sending sequence number field, and transmission type field are defined in the packet subheading. Set the remaining forwarding count value in the Remaining Forwarding Count field, set the confirmation character value in the Confirmation Character field, set the sending sequence number in the Sending Sequence Number field, and set the transmission type value in the Transmission Type field. A transmission type value of 0 indicates that the target data packet uses an unreliable transmission mechanism, and a transmission type value of 1 indicates that the target data packet uses a reliable transmission mechanism.
4. The method according to claim 1, characterized in that, Before transmitting the data packet to be transmitted via the source node satellite, the method further includes: Determine the number of hops the data packet to be transmitted takes when it is transmitted between any two node satellites in the target constellation; Extract the maximum number of hops from the number of hops passed; The remaining number of forwarding attempts for the data packet to be transmitted is determined by the maximum number of hops.
5. The method according to claim 1, characterized in that, The step of determining whether the source node satellite received the feedback data packet within a preset time period and determining the assignment status of the acknowledgment character in the source node satellite further includes: If the source node satellite receives the feedback data packet within a preset time period, then the acknowledgment character in the source node satellite is assigned a value of 1. If the source node satellite does not receive the feedback data packet within a preset time period, then the acknowledgment character in the source node satellite is set to 0.
6. The method according to claim 5, characterized in that, Determining the transmission result of the data packet to be transmitted based on the assignment of the confirmation character includes: If the confirmation character is set to 1, then the transmission of the data packet to be transmitted is confirmed to be successful. If the confirmation character is set to 0, then the transmission of the data packet to be transmitted is determined to have failed.
7. The method according to claim 6, characterized in that, After determining that the transmission of the data packet to be transmitted has failed if the confirmation character is set to 0, the process includes: The data packet to be transmitted is retransmitted via the source node satellite, and the target transmission sequence number corresponding to the data packet to be transmitted remains unchanged. Obtain the number of times the data packet to be transmitted will be retransmitted; If it is determined that the number of retransmissions of the data packet to be transmitted exceeds the retransmission threshold, an error message is sent and retransmission of the data packet to be transmitted is stopped.
8. A wide-area data collaboration device for inter-satellite application layers, characterized in that, The device includes: The first transmitting module is used to transmit a data packet to be transmitted via a source node satellite. The data packet to be transmitted includes a transmission type assignment and a remaining forwarding count value. The remaining forwarding count value is decremented by one each time the data packet passes through a node satellite during transmission. The identification module is used to identify the current value of the remaining forwarding count in the received data packet to be transmitted by the destination node satellite if the reliable transmission mechanism is determined by the transmission type assignment. The second sending module is used to send a feedback data packet through the destination node satellite if the current value of the remaining forwarding count is greater than 0. The first determining module is used to determine the assignment status of the confirmation character in the source node satellite by judging whether the source node satellite has received the feedback data packet within a preset time period; The second determining module is used to determine the transmission result of the data packet to be transmitted based on the assignment of the confirmation character, thereby realizing wide-area collaboration of the inter-satellite application layer.
9. An electronic device, characterized in that, It includes a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other through the communication bus; The memory is used to store programs; When the processor executes the program stored in the memory, it implements the inter-satellite application layer data wide-area collaboration method as described in any one of claims 1-7.
10. A readable storage medium having instructions stored thereon that, when executed by one or more processors, cause the processors to perform the inter-satellite application layer data wide-area collaboration method as described in any one of claims 1-7.