Data transmission method and device, electronic equipment and computer readable storage medium

By alternately using ground and satellite communication links to sub-packetize and transmit data in the satellite Internet of Things system, the problems of high data transmission latency and link resource occupancy in the satellite Internet of Things are solved, and more efficient data transmission is achieved.

CN120614299AInactive Publication Date: 2025-09-09CHENGDU CORESAT TECH CO LTD
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN202511121337.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-12
Publication Date
2025-09-09
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

In satellite IoT, existing technologies use the MQTT protocol for data transmission, which has a high latency and can easily occupy satellite link resources for a long time when transmitting large amounts of data.

Method used

In the satellite IoT system, the number of available links is detected between the access device and the server, and the MQTT protocol is used to alternately transmit data through ground and satellite communication links. Data packets are transmitted alternately through ground and satellite communication links, and the transmission rate is dynamically adjusted to adapt to the bandwidth and channel quality of each link.

Benefits of technology

It reduces data transmission delay, avoids long-term occupation of satellite links, and improves transmission stability and resource utilization efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120614299A_ABST
    Figure CN120614299A_ABST
Patent Text Reader

Abstract

The invention provides a data transmission method and device, electronic equipment and a computer readable storage medium, and relates to the technical field of satellite Internet of Things. The satellite Internet of Things system comprises an access device and a server, and satellite communication or ground network communication is supported between the access device and the server. The method comprises the following steps: when an access device has a data transmission demand, firstly obtaining original data to be transmitted; detecting the number of available links with the server; and if at least two available links exist, alternately transmitting the original data packets to the server side through all the available links by adopting an MQTT protocol. According to the invention, data transmission is carried out instead of directly adopting an MQTT protocol, and the original data is alternately transmitted in a subpackage manner through the satellite network and the ground network, so that the transmission delay can be reduced, and the satellite network can be prevented from being occupied for a long time.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of satellite Internet of Things, and in particular to a data transmission method, device, electronic device and computer-readable storage medium. Background Art

[0002] The Internet of Things (IoT) is a product of rapid industrial development, facilitating user management of an increasing number of remote devices. MQTT (Message Queuing Telemetry Transport) is a commonly used IoT protocol, primarily used to connect central platforms with various terminals for data communication. The protocol is simple and reliable.

[0003] Satellite IoT is a future development direction. Due to the particularity of resources, it has relatively unique characteristics compared to the traditional IoT, such as limited bandwidth resources and high latency. Therefore, the transmission latency of directly using MQTT for data communication in the field of satellite IoT is high, and if the transmitted data is large, it is easy to occupy satellite link resources for a long time. Summary of the Invention

[0004] The object of the present invention is to provide a data transmission method, device, electronic device and computer-readable storage medium to improve the problems existing in the prior art.

[0005] The embodiments of the present invention can be implemented as follows: In a first aspect, the present invention provides a data transmission method, which is applied to an access device in a satellite Internet of Things system, wherein the satellite Internet of Things system further includes a server, and the server supports satellite communication or terrestrial network communication with the access device; the method comprises: When there is a need for data transmission, the original data to be transmitted is obtained; Detect the number of available links between the server and the server; If there are at least two available links, the MQTT protocol is used to alternately transmit the original data sub-packets to the server through all available links.

[0006] In an optional embodiment, the at least two available links include a terrestrial communication link and a satellite communication link; and the step of using the MQTT protocol to alternately transmit the raw data in packets to the server through all available links includes: During the i-th subpacket transmission, based on a preset first information rate, the i-th sub-data is segmented from the original data starting from the last segmentation position and the i-th segmentation position is recorded; the i-th sub-data is encapsulated into an i-th sub-data packet according to a preset protocol format; and the i-th sub-data packet is transmitted to the server via the ground communication link based on the MQTT protocol; and During the (i+1)th subpacket transmission, a second information rate corresponding to the satellite communication link is determined in real time; based on the second information rate, the original data is segmented into an (i+1)th sub-data starting from the last segmentation position and the i-th segmentation position is recorded; the (i+1)th sub-data is encapsulated into an (i+1)th sub-data packet according to the preset protocol format; and the (i+1)th sub-data packet is transmitted to the server via the satellite communication link based on the MQTT protocol; in, , the total number of times the original data is divided is N or N+1.

[0007] In an optional embodiment, the step of determining in real time the second information rate corresponding to the satellite communication link includes: Determine the current modulation order corresponding to the current modulation mode; Based on the current modulation order, the channel bandwidth of the satellite communication link, and a preset roll-off factor, a second information rate currently corresponding to the satellite communication link is calculated; wherein the calculation formula of the second information rate is:

[0008] Where, is the second information rate, is the channel bandwidth of the satellite communication link, is the current modulation order, is the roll-off coefficient.

[0009] In an optional implementation, when the number of available links is unique, after the step of detecting the number of available links between the server and the server, the method further includes: If the available link is a ground communication link, the MQTT protocol is used to transmit the raw data in real-time packets to the server via the ground communication link; If the available link is a satellite communication link, the MQTT protocol is adopted to transmit the original data in real-time packets to the server via the satellite communication link.

[0010] In an optional embodiment, the step of adopting the MQTT protocol to transmit the raw data in real-time packets to the server via the ground communication link includes: During the j-th sub-packet transmission, based on a preset first information rate, the j-th sub-data is segmented from the original data starting from the last segmentation position and the j-th segmentation position is recorded; Encapsulate the j-th sub-data into the j-th sub-data packet according to the preset protocol format; Based on the MQTT protocol, transmitting the j-th sub-data packet to the server through the ground communication link; in, , the total number of times the original data is divided is M.

[0011] In an optional embodiment, the step of adopting the MQTT protocol to sub-package and transmit the original data to the server in real time via the satellite communication link includes: During the kth subpacket transmission, determining in real time a second information rate corresponding to the satellite communication link; Based on the second information rate, dividing the k-th sub-data from the original data starting from the last division position and recording the k-th division position; Encapsulate the kth sub-data into the kth sub-data packet according to the preset protocol format; Based on the MQTT protocol, transmitting the kth sub-data packet to the server via the satellite communication link; in, , the total number of segmentation of the original data is K.

[0012] In an optional embodiment, in the satellite Internet of Things system, the service quality level of the MQTT protocol adopts QoS1, and the method further includes: For any sub-data packet sent, if the corresponding confirmation message returned by the server is not received, the sub-data packet is retransmitted based on the MQTT protocol; the confirmation message carries the packet sequence number corresponding to the sub-data packet.

[0013] In a second aspect, the present invention provides a data transmission device, which is applied to an access device in a satellite Internet of Things system, wherein the satellite Internet of Things system further includes a server, and the server supports satellite communication or terrestrial network communication with the access device; the device comprises: A data acquisition module is used to acquire the original data to be transmitted when there is a data transmission demand; Communication monitoring module, used to detect the number of available links with the server; The data transmission module is configured to use the MQTT protocol to transmit the original data in packets to the server alternately through all available links if there are at least two available links.

[0014] In a third aspect, the present invention provides an electronic device comprising: a memory and a processor, wherein the memory stores a software program, and when the electronic device is running, the processor executes the software program to implement the data transmission method as described in the first aspect above.

[0015] In a fourth aspect, the present invention provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the data transmission method described in the first aspect is implemented.

[0016] Compared with the prior art, the embodiments of the present invention provide a data transmission method, apparatus, electronic device and computer-readable storage medium. The satellite Internet of Things system includes an access device and a server, and satellite communication or ground network communication is supported between the two. When the access device has a data transmission demand, it first obtains the original data to be transmitted; then detects the number of available links between the access device and the server; if there are at least two available links, the MQTT protocol is used to alternately sub-package the original data and transmit it to the server through all available links. This application does not directly use the MQTT protocol for data transmission, but alternately sub-packages the original data through the satellite network and the ground network for transmission. This not only reduces the transmission delay, but also avoids occupying the satellite network for a long time. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the following briefly introduces the drawings required for use in the embodiments. It should be understood that the following drawings only illustrate certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other relevant drawings can be obtained based on these drawings without paying any creative work.

[0018] Figure 1 This is an architectural diagram of a satellite Internet of Things system provided by an embodiment of the present invention.

[0019] Figure 2 A flowchart of a data transmission method provided by an embodiment of the present invention.

[0020] Figure 3 The protocol structure of the preset protocol format provided by the embodiment of the present invention.

[0021] Figure 4 A structural diagram of a data transmission device provided by an embodiment of the present invention.

[0022] Figure 5 A schematic structural diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0023] To make the objectives, technical solutions, and advantages of the embodiments of the present invention more clear, the technical solutions of the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Generally, the components of the embodiments of the present invention described and shown in the drawings herein can be arranged and designed in various different configurations.

[0024] Therefore, the following detailed description of the embodiments of the present invention provided in the accompanying drawings is not intended to limit the scope of the invention as claimed, but rather merely represents selected embodiments of the present invention. All other embodiments derived by persons of ordinary skill in the art based on the embodiments of the present invention without creative effort shall fall within the scope of protection of the present invention.

[0025] It should be noted that similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, it does not need to be further defined or explained in subsequent drawings.

[0026] It should be noted that, in the absence of conflict, the features in the embodiments of the present invention may be combined with each other.

[0027] See Figure 1 , Figure 1 This is a structural diagram of a satellite Internet of Things system provided by an embodiment of the present invention. Figure 1 The satellite Internet of Things system includes a server (which can be a cloud server) and multiple access devices. Each access device can support communication with the server through a satellite network or a ground network (such as a 4G network or 5G network based on a mobile communication base station).

[0028] Optionally, an access device can be a terminal device that supports both satellite communications and 4G / 5G communications, such as a mobile phone or portable satellite terminal. Alternatively, an access device can be a gateway device that supports both satellite communications and 4G / 5G communications. Each access device must support at least one satellite frequency band from the L / S band, C band, Ku band, Ka band, and Q / V band.

[0029] Because the access device supports two communication modes, the access device of the satellite Internet of Things system can be deployed in remote areas (such as oceans, deserts, and mountainous areas) where traditional ground network signals are weak or ground network information cannot be covered, or it can support the use of access devices in mobile scenarios (such as aviation and ocean-going ships).

[0030] Please refer to Figure 2 , Figure 2A flowchart of a data transmission method provided in an embodiment of the present invention is provided. The execution subject of the method can be any access device in a satellite Internet of Things system. The method includes the following steps: S101. When there is a data transmission demand, original data to be transmitted is obtained.

[0031] Optionally, the original data may be pictures, audio, video, text, or mixed data of the foregoing, which is not limited in the embodiment of the present invention.

[0032] S102: Detect the number of available links between the server and the server.

[0033] It is understood that the number of available links between the access device and the server depends on the strength of the signal received at the location of the access device and the strength of the mobile base station signal, and also depends on the type and number of frequency bands supported by the access device.

[0034] For example, assuming an access device supports the Ku band, if the base station signal at the access device's location is strong, the available links between the access device and the server may be a 4G / 5G communication link (which may have poor link quality) and a Ku link (i.e., a satellite communication link corresponding to the Ku band). If the access device is located in a mountainous area with few or no base stations, the only available link between the access device and the server may be the Ku link. This example is merely illustrative and is not a limitation in the present invention.

[0035] S103: If there are at least two available links, use the MQTT protocol to alternately transmit the original data sub-packets to the server through the at least two available links.

[0036] In this embodiment, the at least two available links include a terrestrial communication link and a satellite communication link. The terrestrial communication link may be a 4G communication link or a 5G communication link, and the satellite communication link may be one of an L / S band link, a C band link, a Ku band link, a Ka band link, a Q / V band link, etc. For example, assuming that there are available link 1 (4G communication link) and available link 2 (Ku-band link), the first subpacket of the original data is transmitted via available link 1, the second subpacket is transmitted via available link 2, the third subpacket is transmitted via available link 1, the fourth subpacket is transmitted via available link 2, and so on until the original data is completely transmitted. After subpacketization, alternating transmission over the two links not only reduces transmission latency but also avoids constant occupation of the Ku-band link. It should be noted that this example is merely illustrative, and the embodiments of the present invention do not limit the types of available links.

[0037] In an optional implementation, when the available links include terrestrial communication links and satellite communication links, assuming that the total number of times the original data is segmented is N or N+1 (N represents an odd number), then there are N or N+1 segmented transmissions in the above step S103. The following describes the odd-numbered subpacket transmission process and the even-numbered subpacket transmission process respectively.

[0038] If the ith (i=1,3,5,…,N) subpacket transmission process uses a ground communication link, then the implementation of the ith subpacket transmission process includes: S103a, based on a preset first information rate, dividing the original data into the i-th sub-data starting from the last division position and recording the i-th division position; S103b, encapsulating the i-th sub-data into the i-th sub-data packet according to the preset protocol format; S103c: Based on the MQTT protocol, the i-th sub-data packet is transmitted to the server through the ground communication link.

[0039] In this embodiment, the first information rate may be a fixed value preset based on the maximum transmission capacity of the 4G bandwidth / 5G bandwidth, representing the data size that can be transmitted by the ground communication link per unit time. The segmentation position may represent the size of the transmitted data.

[0040] For example, if the size of the original data is 100MB, the first information rate is 10MB / s, and the i-1th split position is =45MB, which means that 45MB of data has been successfully transmitted to the server. Then, at the beginning of the i-th sub-packet transmission, the access device will start from the 45MB position in the original data and continue reading according to the data length corresponding to the first information rate of 10MB / s, thereby splitting the i-th sub-data of size 10MB and recording the i-th split position. =55MB, which is used as the starting point for the next segmentation. This example is only an example, and the embodiment of the present invention does not limit the size of the original data and the first information rate.

[0041] The default agreement format is a subcontract agreement, and its agreement structure can be as follows: Figure 3 As shown, Figure 3 The preset protocol format is divided into two parts: the header and the payload data. The payload data is the actual business data content carried, and the structure of the header is shown in Table 1 below: Table 1 Header structure of the preset protocol format

[0042] For the i-th sub-data, it is as follows Figure 3The protocol structure shown is encapsulated to obtain the i-th sub-data packet, and the i-th sub-data is located in the PayloadData field in the i-th sub-data packet.

[0043] It should be understood that based on the MQTT protocol, the i-th sub-data packet can be converted into an MQTT data packet, and then the MQTT data packet can be transmitted to the server through the ground communication link.

[0044] If the i+1th (where ) The sub-packet transmission process uses a satellite communication link, then the implementation of the (i+1)th sub-packet transmission process includes: S103d, determining in real time a second information rate corresponding to the satellite communication link; S103e, based on the second information rate, dividing the original data into the (i+1)th sub-data starting from the last division position and recording the i-th division position; S103f, encapsulating the (i+1)th sub-data into the (i+1)th sub-data packet according to the preset protocol format; S103g. Transmit the (i+1)th sub-data packet to the server via the satellite communication link based on the MQTT protocol.

[0045] In this embodiment, the second information rate represents the data size that can be transmitted by the satellite communication link per unit time. The segmentation principle of step S103e and the encapsulation principle of step S103f are the same as those in the above-mentioned i-th subpacket transmission process and are not described here in detail.

[0046] It should be understood that based on the MQTT protocol, the i-th sub-packet can be converted into an MQTT packet, which is then modulated and transmitted to the server via a satellite communication link. The server demodulates the received satellite signal to obtain an MQTT packet, which is then parsed based on the MQTT protocol to obtain the i-th sub-packet.

[0047] The present invention divides the sub-data into sub-data according to the data size that can be transmitted in 1s each time it splits the packet. In this way, smaller data is adaptively divided based on the transmission capacity of the link for transmission, thereby avoiding packet loss or retransmission caused by attempting to send an overly large data packet, thereby improving the stability and resource utilization efficiency of the overall transmission process.

[0048] It should be noted that during the entire packet transmission process of the original data, the above steps S103a~S103dc and S103d~S103g are executed alternately and cyclically until the i-th segmentation position or the i+1-th segmentation position is equal to the size of the original data, which indicates that the transmission is completed.

[0049] For the server, each time it receives a sub-data packet, it will parse the sub-data and its packet sequence number from the sub-data packet according to the preset protocol format and store them. After receiving the last sub-data packet (where the over field is 1), it will reassemble each sub-data in sequence according to the packet sequence number of each sub-data to obtain the final original data.

[0050] In optional implementations, the modulation mode of the access device may change dynamically based on the channel quality of the satellite communication link. Modulation modes include QPSK (Quadrature Phase-Shift Keying), BPSK (Binary Phase-Shift Keying), 16APSK (16 Amplitude and Phase-Shift Keying), and ACM (Adaptive Coding and Modulation). ACM represents dynamic modulation, which dynamically uses a specific modulation mode based on external conditions.

[0051] Changes in the modulation scheme will cause changes in the data transmission capacity of the satellite communication link. Therefore, before each packet transmission via the satellite communication link, it is necessary to first calculate the second information rate to ensure that the amount of data sent can adapt to the actual bandwidth resources of the current satellite communication link, thereby maximizing the utilization of the satellite link resources. Therefore, the implementation method of the above-mentioned step S103d includes: (1) Determine the current modulation order corresponding to the current modulation mode; (2) Calculate the second information rate currently corresponding to the satellite communication link based on the current modulation order, the channel bandwidth of the satellite communication link, and a preset roll-off factor.

[0052] In this embodiment, the calculation formula of the second information rate is:

[0053] Where, The second information rate is in bps, which means how many bits can be transmitted per second. is the channel bandwidth of the satellite communication link, is the current modulation order, is the roll-off factor.

[0054] The above content is a complete description of the process of alternating packet transmission on dual links when the available links include terrestrial communication links and satellite communication links.

[0055] If possible, the available links may only include terrestrial communication links or satellite communication links, so that packet transmission can only be achieved through a single link. Therefore, the method may further include the following S104 or S105.

[0056] S104. If the available link is a ground communication link, the MQTT protocol is used to sub-package and transmit the original data to the server in real time through the ground communication link.

[0057] In the case where the available links only include ground communication links, assuming that the total number of segmentation of the original data is M (M is a positive integer), then there are M segmentation transmissions in the above step S104, where the jth ( ) The implementation of the sub-packet transmission process includes: S1041. Based on a preset first information rate, segment the original data into the j-th sub-data starting from the last segmentation position and record the j-th segmentation position; S1042. Encapsulate the j-th sub-data into the j-th sub-data packet according to a preset protocol format; S1043. Based on the MQTT protocol, transmit the j-th sub-data packet to the server through the ground communication link.

[0058] It should be noted that during the entire original data packet transmission process, S1041 to S1043 are repeatedly executed in a loop until the jth segmentation position equals the size of the original data, indicating that the transmission is complete. Due to the relatively stable ground network, the M sub-data segments generated during this process are of the same size.

[0059] S105: If the available link is a satellite communication link, the MQTT protocol is used to sub-package and transmit the original data to the server in real time via the satellite communication link.

[0060] In the case where the available links only include satellite communication links, assuming that the total number of times the original data is segmented is K (K is a positive integer), then there are K segmented transmissions in the above step S105, where the kth ( ) The implementation of the sub-packet transmission process includes: S1051. Determine in real time a second information rate corresponding to the satellite communication link; S1052: Based on the second information rate, segment the original data into the kth sub-data starting from the last segmentation position and record the kth segmentation position; S1053, encapsulating the k-th sub-data into a k-th sub-data packet according to a preset protocol format; S1054: Based on the MQTT protocol, transmit the kth sub-data packet to the server via the satellite communication link.

[0061] It should be noted that during the entire process of packetizing and transmitting the original data, steps S1051 through S1054 are repeatedly executed until the kth segmentation position equals the size of the original data, indicating that the transmission is complete. Since the satellite network may be affected by weather or other interference, the second information rate of the K-times packetized transmission may not be maintained, and therefore the sizes of the K sub-data segments generated during this process may not be the same.

[0062] In an optional implementation, in order to ensure that the server can receive all data packets completely, in the satellite IoT system, the MQTT protocol adopts QoS 1, which means that the receiving end is guaranteed to receive the data at least once.

[0063] Therefore, each time the server receives a sub-packet, it returns a confirmation message to the access device based on the sub-packet's sequence number. For any sub-packet sent by the access device, if the access device does not receive the corresponding confirmation message (carrying the sub-packet's sequence number) from the server, the sub-packet will be retransmitted based on the MQTT protocol.

[0064] When the original data is transmitted, there may be duplicate data in all sub-data saved by the server. The server can automatically deduplicate the data based on the packet sequence number and then reassemble the data.

[0065] It should be noted that the execution order of the steps in the above method embodiment is not limited to the order of the step numbers, and the execution order of the steps shall be based on the actual application situation.

[0066] In order to execute the corresponding steps in the above method embodiment and various possible implementations, an implementation of a data transmission device is provided below.

[0067] See Figure 4 , Figure 4 The structure diagram of the data transmission device provided by an embodiment of the present invention is shown. The data transmission device 200 is applied to an access device in a satellite Internet of Things system. The satellite Internet of Things system also includes a server. Satellite communication or terrestrial network communication is supported between the server and the access device. The data transmission device 200 includes: a data acquisition module 210, a communication monitoring module 220, and a data transmission module 230, wherein: The data acquisition module 210 is used to acquire the original data to be transmitted when there is a data transmission demand; Communication monitoring module 220, used to detect the number of available links with the server; The data transmission module 230 is configured to use the MQTT protocol to transmit the original data in packets to the server alternately through all available links if there are at least two available links.

[0068] Optionally, the at least two available links include a terrestrial communication link and a satellite communication link. When the data transmission module is used to alternately transmit the original data packets to the server through all available links using the MQTT protocol, the data transmission module can be specifically used to: During the i-th sub-packet transmission, based on a preset first information rate, the i-th sub-data is segmented from the original data starting from the last segmentation position and the i-th segmentation position is recorded; the i-th sub-data is encapsulated into an i-th sub-data packet according to a preset protocol format; and the i-th sub-data packet is transmitted to the server via a ground communication link based on the MQTT protocol; and During the i+1th subpacket transmission, the second information rate corresponding to the satellite communication link is determined in real time; based on the second information rate, the i+1th sub-data is segmented from the original data starting from the last segmentation position and the i-th segmentation position is recorded; the i+1th sub-data is encapsulated into the i+1th sub-data packet according to the preset protocol format; and the i+1th sub-data packet is transmitted to the server via the satellite communication link based on the MQTT protocol; wherein, , the total number of times the original data is split is N or N+1.

[0069] Optionally, in the process of determining the second information rate corresponding to the satellite communication link in real time, the data transmission module is specifically used to: determine the current modulation order corresponding to the current modulation mode; and calculate the second information rate currently corresponding to the satellite communication link based on the current modulation order, the channel bandwidth of the satellite communication link, and a preset roll-off factor; wherein the calculation formula of the second information rate is:

[0070] Where, is the second information rate, is the channel bandwidth of the satellite communication link, is the current modulation order, is the roll-off factor.

[0071] Optionally, when the number of available links is unique, the data transmission module 230 can also be used: if the available link is a ground communication link, the MQTT protocol is used to sub-package and transmit the original data to the server in real time through the ground communication link; if the available link is a satellite communication link, the MQTT protocol is used to sub-package and transmit the original data to the server in real time through the satellite communication link.

[0072] Optionally, the data transmission module 230, when used to adopt the MQTT protocol to transmit the original data in real-time packets to the server via the ground communication link, can be specifically used to: during the j-th packet transmission, based on a preset first information rate, segment the j-th sub-data from the last segmentation position in the original data and record the j-th segmentation position; encapsulate the j-th sub-data into a j-th sub-data packet according to a preset protocol format; and transmit the j-th sub-data packet to the server via the ground communication link based on the MQTT protocol; wherein, , the total number of divisions of the original data is M.

[0073] Optionally, when the data transmission module 230 is used to transmit the original data in real-time packets to the server via the satellite communication link using the MQTT protocol, it can be specifically used to: determine the second information rate corresponding to the satellite communication link in real time during the k-th packet transmission; based on the second information rate, segment the k-th sub-data from the last segmentation position in the original data and record the k-th segmentation position; encapsulate the k-th sub-data into a k-th sub-data packet according to a preset protocol format; and transmit the k-th sub-data packet to the server via the satellite communication link based on the MQTT protocol; wherein, , the total number of segmentation of the original data is K.

[0074] Optionally, in the satellite Internet of Things system, the service quality level of the MQTT protocol adopts QoS 1, and the data transmission module 230 can also be used for: for any sub-data packet sent, if the corresponding confirmation message is not returned by the server, the sub-data packet is retransmitted based on the MQTT protocol; the confirmation message carries the packet sequence number corresponding to the sub-data packet.

[0075] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the data transmission device 200 described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0076] See Figure 5 , Figure 5 This is a schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. The electronic device 300 includes a processor 310 , a memory 320 , and a bus 330 , wherein the processor 310 is connected to the memory 320 via the bus 330 .

[0077] The memory 320 may be used to store software programs or firmware, for example, the software programs or firmware corresponding to the data transmission device 200. The processor 310 executes the software programs stored in the memory 320 to perform various functional applications and data processing to implement the data transmission method provided in the embodiment of the present invention.

[0078] Among them, the memory 320 can be but is not limited to: RAM (Random Access Memory), ROM (Read Only Memory), FLASH (Flash Memory), PROM (Programmable Read-Only Memory), EPROM (Erasable Programmable Read-Only Memory), EEPROM (Electric Erasable Programmable Read-Only Memory), etc.

[0079] The processor 310 can be an integrated circuit chip with signal processing capabilities and can be used to execute software programs, for example, the software program corresponding to the above-mentioned data transmission device 200. The processor 310 can be a general-purpose processor, including: a CPU (Central Processing Unit), an NP (Network Processor), an SoC (System on Chip), etc.; it can also be: a DSP (Digital Signal Processing), an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.

[0080] I understand. Figure 5 The structure shown is for illustration only. The electronic device 300 may also include Figure 5 More or fewer components than shown, or with Figure 5 Different configurations shown. Figure 5 Each component shown in the figure can be implemented by hardware, software or a combination thereof.

[0081] Embodiments of the present invention further provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the data transmission method disclosed in the above embodiments. The computer-readable storage medium may be, but is not limited to, a USB flash drive, a mobile hard drive, ROM, RAM, PROM, EPROM, EEPROM, a FLASH disk, or an optical disk, among other media capable of storing program code.

[0082] In summary, the embodiments of the present invention provide a data transmission method, apparatus, electronic device, and computer-readable storage medium. The satellite Internet of Things system includes an access device and a server, and satellite communication or ground network communication is supported between the two. When the access device has a data transmission demand, it first obtains the original data to be transmitted; then detects the number of available links between the access device and the server; if there are at least two available links, the MQTT protocol is used to alternately sub-package the original data and transmit it to the server through all available links. This application does not directly use the MQTT protocol for data transmission, but alternately sub-packages the original data through the satellite network and the ground network for transmission. This not only reduces the transmission delay, but also avoids occupying the satellite network for a long time.

[0083] The above are merely specific embodiments of the present invention, but the scope of protection of the present invention is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present invention should be included in the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be based on the scope of protection of the claims.

Claims

1. A data transmission method, characterized in that: An access device used in a satellite Internet of Things system, wherein the satellite Internet of Things system further includes a server, wherein satellite communication or terrestrial network communication is supported between the server and the access device; the method includes: When there is a need for data transmission, the original data to be transmitted is obtained; Detect the number of available links between the server and the server; If there are at least two available links, the MQTT protocol is used to alternately transmit the original data sub-packets to the server through all available links.

2. The data transmission method according to claim 1, wherein: The at least two available links include a terrestrial communication link and a satellite communication link; The step of using the MQTT protocol to alternately transmit the original data in packets to the server through all available links includes: During the i-th sub-packet transmission, based on a preset first information rate, the i-th sub-data is segmented from the original data starting from the last segmentation position and the i-th segmentation position is recorded; Encapsulate the i-th sub-data into the i-th sub-data packet according to the preset protocol format; Based on the MQTT protocol, transmitting the i-th sub-data packet to the server through the ground communication link; as well as, During the (i+1)th subpacket transmission, determining in real time a second information rate corresponding to the satellite communication link; Based on the second information rate, dividing the original data into the (i+1)th sub-data starting from the last division position and recording the i-th division position; Encapsulating the (i+1)th sub-data into the (i+1)th sub-data packet according to the preset protocol format; Transmitting the (i+1)th sub-data packet to the server via the satellite communication link based on the MQTT protocol; Wherein, i=1, 3, 5, ..., N, and the total number of times the original data is divided is N or N+1.

3. The data transmission method according to claim 2, wherein: The step of determining in real time the second information rate corresponding to the satellite communication link comprises: Determine the current modulation order corresponding to the current modulation mode; Based on the current modulation order, the channel bandwidth of the satellite communication link, and a preset roll-off factor, a second information rate currently corresponding to the satellite communication link is calculated; wherein the calculation formula of the second information rate is: Where, is the second information rate, is the channel bandwidth of the satellite communication link, is the current modulation order, is the roll-off coefficient.

4. The data transmission method according to claim 1, wherein: When the number of available links is unique, after the step of detecting the number of available links between the server and the server, the method further includes: If the available link is a ground communication link, the MQTT protocol is used to transmit the raw data in real-time packets to the server via the ground communication link; If the available link is a satellite communication link, the MQTT protocol is adopted to transmit the original data in real-time packets to the server via the satellite communication link.

5. The data transmission method according to claim 4, characterized in that: The step of adopting the MQTT protocol to transmit the original data in real-time packets to the server via the ground communication link includes: During the j-th sub-packet transmission, based on a preset first information rate, the j-th sub-data is segmented from the original data starting from the last segmentation position and the j-th segmentation position is recorded; Encapsulate the j-th sub-data into the j-th sub-data packet according to the preset protocol format; Based on the MQTT protocol, transmitting the j-th sub-data packet to the server through the ground communication link; in, , the total number of times the original data is divided is M.

6. The data transmission method according to claim 4, characterized in that The step of adopting the MQTT protocol to transmit the original data in real-time packets to the server via the satellite communication link includes: During the kth subpacket transmission, determining in real time a second information rate corresponding to the satellite communication link; Based on the second information rate, dividing the k-th sub-data from the original data starting from the last division position and recording the k-th division position; Encapsulate the kth sub-data into the kth sub-data packet according to the preset protocol format; Based on the MQTT protocol, transmitting the kth sub-data packet to the server via the satellite communication link; in, , the total number of segmentation of the original data is K.

7. The data transmission method according to any one of claims 2, 5 and 6, characterized in that: In the satellite IoT system, the MQTT protocol adopts QoS 1 as the quality of service level, and the method further includes: For any sub-data packet sent, if the corresponding confirmation message returned by the server is not received, the sub-data packet is retransmitted based on the MQTT protocol; the confirmation message carries the packet sequence number corresponding to the sub-data packet.

8. A data transmission device, characterized in that: An access device used in a satellite Internet of Things system, wherein the satellite Internet of Things system further includes a server, wherein satellite communication or terrestrial network communication is supported between the server and the access device; including: A data acquisition module is used to acquire the original data to be transmitted when there is a data transmission demand; Communication monitoring module, used to detect the number of available links with the server; The data transmission module is configured to use the MQTT protocol to transmit the original data in packets to the server alternately through all available links if there are at least two available links.

9. An electronic device, characterized in that: include: A memory and a processor, wherein the memory stores a software program, and when the electronic device is running, the processor executes the software program to implement the data transmission method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the data transmission method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Data transmission method and related device

    CN109495880A

  • Data transmission method and device, terminal equipment and storage medium

    CN112492549A

  • Internet of Things system

    CN116368355A

  • Internet of Things data transmission method, device and system based on multi-satellite cooperation

    CN120455499A

  • High-security anti-interception satellite communication method based on double-beam user terminal and double satellites

    CN120547547A