TCP acceleration method, device, main station, small station, system and storage medium

By building STP connections in the satellite communication system, and using satellite stations and satellite main stations to capture and configure TCP connection information, TCP acceleration in satellite communications in the application layer, data link layer and network layer is achieved, solving the existing solutions Technology cannot meet the problem of acceleration requirements of data link layer and network layer, improving network transmission speed and user experience.

CN119094003BActive Publication Date: 2025-02-14CHENGDU CORESAT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411507137.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-10-28
Publication Date
2025-02-14
Estimated Expiration
2044-10-28

AI Technical Summary

Technical Problem

In existing satellite communications, TCP acceleration technology is mainly implemented at the application layer, and cannot meet the needs of TCP acceleration at the data link layer and network layer, resulting in slower network transmission speed and poor user experience.

Method used

By building an STP connection between the satellite main station and the satellite station, the satellite station captures the first TCP connection initiated by the client to the external network server, and adds the client TCP connection information to the STP protocol packet and sends it to the satellite main station. . The satellite master station uses this information to configure the second TCP connection to perform TCP acceleration when the client communicates with the external network server.

Benefits of technology

It realizes TCP acceleration of communication between clients and external network servers at the application layer, data link layer and network layer, improves network transmission speed and improves user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119094003B_ABST
    Figure CN119094003B_ABST
Patent Text Reader

Abstract

The present invention provides a TCP acceleration method, device, main station, small station, system and storage medium, which relate to the field of satellite communication technology. In the method, the satellite main station receives an STP protocol packet sent by a satellite small station, wherein the STP protocol packet contains client TCP connection information, the client TCP connection information is obtained by the satellite small station from a captured first TCP connection, the first TCP connection is initiated by the client to an external network server, and the satellite small station deceives the client when capturing the first TCP connection; initiates a second TCP connection to the external network server, and configures the second TCP connection using the client TCP connection information to perform TCP acceleration when the client communicates with the external network server, thereby not only performing TCP acceleration on the communication between the client and the external network server at the application layer, but also performing TCP acceleration on the communication between the client and the external network server at the data link layer and the network layer.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of satellite communication technology, and in particular to a TCP acceleration method, device, master station, small station, system and storage medium. Background Art

[0002] In satellite communications, due to the long signal transmission distance, network delay and packet loss rate are relatively high, which will lead to slower network transmission speed and poor user experience. To solve the above problems, TCP acceleration is required.

[0003] Most existing TCP acceleration technologies use transparent proxy, which divides the TCP connection into several parts and optimizes each part. However, this technology is mainly implemented at the application layer and cannot meet the needs of some users for TCP acceleration at the data link layer (Layer 2) and network layer (Layer 3). Summary of the invention

[0004] In order to at least overcome the above-mentioned deficiencies in the prior art, one of the objects of the present invention is to provide a TCP acceleration method, device, master station, small station, system and storage medium.

[0005] In a first aspect, the present invention provides a TCP acceleration method, which is applied to a satellite main station in a satellite communication system, wherein the satellite communication system further comprises a satellite station, a client, and an external network server, and an STP connection is established between the satellite station and the satellite main station, and the method comprises:

[0006] receiving an STP protocol packet sent by the satellite station, wherein the STP protocol packet includes client TCP connection information, wherein the client TCP connection information is obtained by the satellite station from a captured first TCP connection, wherein the first TCP connection is initiated by the client to the external network server, and the satellite station deceives the client when capturing the first TCP connection;

[0007] A second TCP connection is initiated to the external network server, and the second TCP connection is configured using the client TCP connection information to perform TCP acceleration when the client communicates with the external network server.

[0008] Optionally, the client TCP connection information includes source address information, destination address information, and IP header information of the first TCP connection, and the step of configuring the second TCP connection using the client TCP connection information includes:

[0009] Setting the destination address information of the second TCP connection to the destination address information of the first TCP connection;

[0010] Keep the IP header information of the second TCP connection consistent with the IP header information of the first TCP connection;

[0011] The source address information of the second TCP connection is set as the source address information of the first TCP connection.

[0012] Optionally, the source address information includes a source IP and a source port, and the step of setting the source address information of the second TCP connection as the source address information of the first TCP connection includes:

[0013] The source IP of the second TCP connection is set as the source IP of the first TCP connection, and the source port of the second TCP connection is set as the source port of the first TCP connection, so as to perform TCP acceleration at the network layer when the client communicates with the external network server.

[0014] Optionally, the source address information includes a source IP, a source port, and a source MAC address, and the step of setting the source address information of the second TCP connection as the source address information of the first TCP connection includes:

[0015] The source IP of the second TCP connection is set to the source IP of the first TCP connection, the source port of the second TCP connection is set to the source port of the first TCP connection, and the source MAC address of the second TCP connection is set to the source MAC address of the first TCP connection, so as to perform TCP acceleration at the data link layer when the client communicates with the external network server.

[0016] Optionally, the method further comprises:

[0017] An STP response protocol packet including the MAC address of the external network server and the IP header information of the second TCP connection is sent to the satellite station, so that the satellite station modifies the first TCP connection according to the MAC address of the external network server and the IP header information of the second TCP connection, so as to perform TCP acceleration when the external network server communicates with the client.

[0018] In a second aspect, the present invention provides a TCP acceleration method, which is applied to a satellite station in a satellite communication system, wherein the satellite communication system further includes a satellite master station, a client, and an external network server, and the method includes:

[0019] Capturing a first TCP connection initiated by the client to the external network server, and performing TCP spoofing on the client;

[0020] Initiate an STP connection to the satellite master station, and use the client TCP connection information in the first TCP connection to extend the STP protocol packet sent to the satellite master station, so that the satellite master station configures a second TCP connection for the external network server according to the client TCP connection information in the received STP protocol packet, so as to perform TCP acceleration when the client communicates with the external network server;

[0021] Receive an STP response protocol packet returned by the satellite master station, wherein the STP response protocol packet includes the MAC address of the external network server and the IP header information of the second TCP connection;

[0022] The first TCP connection is modified according to the MAC address of the external network server and the IP header information of the second TCP connection, so as to perform TCP acceleration when the external network server communicates with the client.

[0023] In a third aspect, the present invention provides a TCP acceleration device, which is applied to a satellite main station in a satellite communication system, wherein the satellite communication system further comprises a satellite station, a client, and an external network server, and an STP connection is established between the satellite station and the satellite main station, and the device comprises:

[0024] a receiving module, configured to receive an STP protocol packet sent by the satellite station, wherein the STP protocol packet includes client TCP connection information, wherein the client TCP connection information is obtained by the satellite station from a captured first TCP connection, wherein the first TCP connection is initiated by the client to the external network server, and the satellite station deceives the client when capturing the first TCP connection;

[0025] A configuration module is used to initiate a second TCP connection to the external network server and configure the second TCP connection using the client TCP connection information to perform TCP acceleration when the client communicates with the external network server.

[0026] In a fourth aspect, the present invention provides a TCP acceleration device, which is applied to a satellite station in a satellite communication system, wherein the satellite communication system further includes a satellite master station, a client, and an external network server, and the device includes:

[0027] A capture module, used for capturing a first TCP connection initiated by the client to the external network server, and performing TCP spoofing on the client;

[0028] An extension module is used to initiate an STP connection to the satellite master station, and use the client TCP connection information in the first TCP connection to extend the STP protocol packet sent to the satellite master station, so that the satellite master station configures a second TCP connection for the external network server according to the client TCP connection information in the received STP protocol packet, so as to perform TCP acceleration when the client communicates with the external network server;

[0029] A processing module is used to receive an STP response protocol packet returned by the satellite master station, wherein the STP response protocol packet includes the MAC address of the external network server and the IP header information of the second TCP connection; and modify the first TCP connection according to the MAC address of the external network server and the IP header information of the second TCP connection to perform TCP acceleration when the external network server communicates with the client.

[0030] In a fifth aspect, the present invention provides a satellite master station, which includes a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the TCP acceleration method as described in the first aspect is implemented.

[0031] In a sixth aspect, the present invention provides a satellite station, which includes a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the TCP acceleration method as described in the above-mentioned embodiment is implemented.

[0032] In a seventh aspect, the present invention provides a satellite communication system, which includes a client, an external network server, a satellite main station as described in the fifth aspect, and a satellite substation as described in the sixth aspect.

[0033] In an eighth aspect, the present invention provides a computer-readable storage medium storing a computer program, wherein when the computer program is executed by a processor, the computer program implements the TCP acceleration method as described in the first aspect above, or implements the TCP acceleration method as described in the second aspect above.

[0034] Compared with the prior art, the present invention provides a TCP acceleration method applied to a satellite main station: receiving an STP protocol packet sent by a satellite station, the STP protocol packet contains client TCP connection information, the client TCP connection information is obtained by the satellite station from a captured first TCP connection, the first TCP connection is initiated by the client to an external network server, and the satellite station deceives the client when capturing the first TCP connection; initiating a second TCP connection to the external network server, and configuring the second TCP connection using the client TCP connection information, so as to perform TCP acceleration when the client communicates with the external network server. Since the satellite station in the present invention captures the first TCP connection initiated by the client to the external network server, and adds the client TCP connection information obtained from the first TCP connection to the STP protocol packet and sends it to the satellite main station, the satellite main station configures the second TCP connection using the client TCP connection information when initiating the second TCP connection to the outside, thereby not only performing TCP acceleration on the communication from the client to the external network server at the application layer, but also performing TCP acceleration on the communication from the client to the external network server at the data link layer and the network layer. BRIEF DESCRIPTION OF THE DRAWINGS

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

[0036] Figure 1 An example diagram of an existing three-stage TCP acceleration method provided by an embodiment of the present invention;

[0037] Figure 2 A schematic diagram of a flow chart of a TCP acceleration method applied to a satellite master station provided by an embodiment of the present invention;

[0038] Figure 3 An example diagram of an extended STP protocol packet provided by an embodiment of the present invention;

[0039] Figure 4 An example diagram of an extended STP response protocol packet provided by an embodiment of the present invention;

[0040] Figure 5 A schematic diagram of a flow chart of a TCP acceleration method applied to a satellite station provided by an embodiment of the present invention;

[0041] Figure 6 A functional unit block diagram of a TCP acceleration device applied to a satellite master station provided by an embodiment of the present invention;

[0042] Figure 7 A functional unit block diagram of a TCP acceleration device applied to a satellite station provided by an embodiment of the present invention;

[0043] Figure 8 A schematic block diagram of the structure of an electronic device provided by an embodiment of the present invention;

[0044] Fig. 9 A schematic block diagram of the composition of a satellite communication system provided by an embodiment of the present invention.

[0045] Icons: 100 - TCP acceleration device applied to satellite main station; 101 - receiving module; 102 - configuration module; 200 - TCP acceleration device applied to satellite small station; 201 - capture module; 202 - expansion module; 203 - processing module; 300 - electronic device; 310 - memory; 320 - processor. DETAILED DESCRIPTION

[0046] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are 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 here can be arranged and designed in various different configurations.

[0047] 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 claimed for protection, but merely represents selected embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0048] 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, further definition and explanation thereof is not required in subsequent drawings.

[0049] In addition, the terms “first”, “second”, etc., if used, are merely used to distinguish between the descriptions and should not be understood as indicating or implying relative importance.

[0050] In a communication system with large delay and high packet loss, the network transmission speed is very low and the user experience is poor. When the delay is 550ms and the delay jitter is relatively small, the transmission rate of the TCP connection without acceleration is 30%~40% of the air interface bandwidth. For example: for a bandwidth of 10Mbit / s, when the TCP connection is not accelerated, only 3Mbit / s~4Mbit / s can be used at most, and the rest of the resources are wasted.

[0051] The above resource waste problem can be solved by TCP acceleration. TCP acceleration generally adopts the transparent proxy method, which interacts with both ends of the TCP connection respectively, so that the data packets at both ends are cached on the TCP accelerators at both ends, and the data transmission between the TCP accelerators is controlled by the TCP accelerator. In this way, the end-to-end TCP connection is divided into several parts, and different optimizations can be performed according to the packet loss and delay of these parts, thereby improving the transmission performance of TCP.

[0052] For the TCP connection between the client and the external network server in the satellite communication system, the characteristics of the satellite communication system can be considered during the system design process, and the TCP connection can be divided into three segments for three-stage acceleration, such as Figure 1 As shown, the TCP connection between the client and the external network server is divided into a TCP connection between the client and the satellite station, an STP (Satellite Transport Protocol) connection between the satellite station and the satellite master station, and a TCP connection between the satellite master station and the external client.

[0053] The three-stage acceleration method is in form the application layer TCP acceleration under NAT mode. For many users, they not only need the application layer TCP acceleration under NAT mode, but also need the satellite device to work in bridge mode and routing mode and complete the data link layer and network layer TCP acceleration. However, the current three-stage acceleration method based on the STP protocol cannot support the implementation of TCP acceleration at the data link layer or network layer, that is, when the satellite device works in bridge mode, the satellite device looks like a switch, and the TCP data after TCP acceleration seems to have passed through a switch; when the satellite device works in routing mode, the satellite device looks like a router, and the TCP data after TCP acceleration seems to have passed through a router.

[0054] In this regard, an embodiment of the present invention provides a TCP acceleration method applied to a satellite master station, which will be described in detail below.

[0055] Please refer to Figure 2 , the TCP acceleration method includes steps S101~S102.

[0056] S101, receiving the STP protocol packet sent by the satellite station.

[0057] Among them, the STP protocol packet contains the client TCP connection information, which is obtained by the satellite station from the captured first TCP connection. The first TCP connection is initiated by the client to the external network server. The satellite station deceives the client when capturing the first TCP connection.

[0058] The satellite station generates an initial STP protocol packet according to the existing STP protocol, and then uses the client TCP connection information obtained from the first TCP connection to expand the initial STP protocol packet to obtain the following: Figure 3 The extended STP protocol packet sent to the satellite master station is shown. Compared with the initial STP protocol packet, the extended STP protocol packet has more fields such as "client_mac_addr", "client_ip", "ext_srv_ip", "client_port", "ext_srv_port", and "client_iphdr". It can be understood that these fields are used to record the client TCP connection information obtained from the first TCP connection.

[0059] S102, initiating a second TCP connection to the external network server, and configuring the second TCP connection using the client TCP connection information, so as to perform TCP acceleration when the client communicates with the external network server.

[0060] The client TCP connection information includes the source address information, destination address information and IP header information of the first TCP connection.

[0061] The source address information includes the network layer address and / or data link layer address of the device initiating the TCP connection.

[0062] The destination address information includes a network layer address and / or a data link layer address of a device receiving the TCP connection.

[0063] IP header information refers to the packet header at the network layer, which is used to provide information required for routing and delivering packets.

[0064] After receiving the STP protocol packet, the TCP acceleration proxy server deployed on the satellite master station creates a local Socket, initiates a second TCP connection with the external network server, parses the STP protocol packet, and configures the second TCP connection based on the source address information, destination address information and IP header information of the first TCP connection parsed from the STP protocol packet.

[0065] In a possible implementation, the implementation process of step S102 may include steps S102 - 1 to S102 - 3 .

[0066] S102-1, setting the destination address information of the second TCP connection as the destination address information of the first TCP connection.

[0067] Among them, the destination address information includes the destination IP and the destination port. It can be understood that the destination IP of the second TCP connection needs to be set to be consistent with the destination IP of the first TCP connection, and the destination port of the second TCP connection needs to be set to be consistent with the destination port of the first TCP connection.

[0068] At this step, TCP acceleration at the application layer is completed when the client communicates with the external network server. At this time, the IP header information of the second TCP connection is the relevant configuration information of the TCP acceleration proxy server on the satellite main station, the source IP of the second TCP connection is the local IP of the TCP acceleration proxy server on the satellite main station, the source port is the local port of the TCP acceleration proxy server, and the source MAC address is the MAC address of the TCP acceleration proxy server or a MAC address related to the topology of the external network.

[0069] In order to implement TCP acceleration at the data link layer and the network layer when the client communicates with the external network server, steps S102-2 to S102-3 need to be performed.

[0070] S102-2, keep the IP header information of the second TCP connection consistent with the IP header information of the first TCP connection.

[0071] Wherein, by setting the properties of the local Socket, the IP header information of the second TCP connection is configured to be consistent with the IP header information of the first TCP connection.

[0072] In an embodiment of the present invention, if the satellite station is set to routing mode, the TTL value in the IP header information of the second TCP connection can be set to the TTL value in the IP header information of the first TCP connection minus 2 to simulate data passing through two levels of routers.

[0073] S102-3, setting the source address information of the second TCP connection as the source address information of the first TCP connection.

[0074] The source address information includes the source IP, source port and source MAC address.

[0075] In an embodiment of the present invention, if TCP acceleration is to be implemented at the network layer for communication from the client to the external network server, the implementation process of S102-3 can be as follows: the source IP of the second TCP connection is set to the source IP of the first TCP connection, and the source port of the second TCP connection is set to the source port of the first TCP connection.

[0076] At this time, since the source IP and source port of the second TCP connection are no longer the local IP and local port of the TCP acceleration proxy server on the satellite main station, but the source IP and source port of the first TCP connection, the second TCP connection appears to be a TCP connection initiated by the client rather than a TCP connection initiated by the TCP acceleration proxy server on the satellite main station, thereby achieving TCP acceleration at the network layer when the satellite device works in routing mode.

[0077] In an embodiment of the present invention, the TCP acceleration proxy server on the satellite master station can use the ipatbles tool to complete the source IP and source port configuration of the second TCP connection.

[0078] In an embodiment of the present invention, if TCP acceleration is to be implemented at the data link layer for communication from the client to the external network server, the implementation process of S102-3 can be as follows: the source IP of the second TCP connection is set to the source IP of the first TCP connection, the source port of the second TCP connection is set to the source port of the first TCP connection, and the source MAC address of the second TCP connection is set to the source MAC address of the first TCP connection.

[0079] At this time, since the source IP, source port and source MAC address of the second TCP connection are no longer the local IP, local port and MAC address of the TCP acceleration proxy server on the satellite main station, but the source IP, source port and source MAC address of the first TCP connection, the second TCP connection appears to be a layer 2 data packet sent by the client, thereby achieving TCP acceleration at the data link layer when the satellite device works in bridging mode.

[0080] In an embodiment of the present invention, the TCP acceleration proxy server on the satellite master station can use the ebtables tool to complete the source MAC address configuration of the second TCP connection.

[0081] After configuring the second TCP connection, the satellite master station needs to return a response protocol packet to the satellite station.

[0082] The same as the generation process of the aforementioned STP protocol packet, the satellite master station generates an initial STP response protocol packet according to the existing STP response protocol, and then uses the MAC address of the external network server and the IP header information of the second TCP connection to expand the initial STP response protocol packet, and obtains the following Figure 4 The extended STP response protocol packet sent to the satellite station is shown. Compared with the initial STP response protocol packet, the extended STP response protocol packet has additional fields such as "srv_mac_addr", "c_iphdr_ttl" and "c_iphdr_tos", among which the field "srv_mac_addr" is 32 bits, used to record the MAC address of the external network server, and "c_iphdr_ttl" and "c_iphdr_tos" are both 8 bits, used to record the IP header information of the second TCP connection. The extended STP response protocol packet also includes the "reserved_16bit" field, which is reserved for future expansion or compatibility.

[0083] It should be noted that if the network topology of the external server is complex and is not directly connected to the satellite master station, the "srv_mac_addr" field in the extended STP response protocol packet may record the MAC address of the external server's gateway or next-hop router.

[0084] After the satellite station receives the STP response protocol packet sent by the satellite master station, the TCP acceleration agent deployed on the satellite station sets the local Socket according to the IP header information of the second TCP connection in the STP response protocol packet, modifies the IP header information of the first TCP connection, and makes the IP header information of the first TCP connection consistent with the IP header information of the second TCP connection.

[0085] It should be noted that if the satellite station is set to routing mode, the TTL value in the IP header information of the first TCP connection can be set to the TTL value in the IP header information of the second TCP connection minus 2 to simulate the data passing through two levels of routers.

[0086] Furthermore, on the basis of setting the IP header information of the first TCP connection to be consistent with the IP header information of the second TCP connection, the TCP acceleration agent on the satellite station sets the source MAC address of the first TCP connection to the MAC address of the external network server, so that the first TCP connection appears to be transparent layer 2 processing on the client, thereby realizing TCP acceleration at the data link layer when the external network server communicates with the client.

[0087] The embodiment of the present invention also provides a TCP acceleration method applied to a satellite station, which is described in detail below.

[0088] Please refer to Figure 5 The TCP acceleration method applied to a satellite station includes steps S201 to S204.

[0089] S201, capturing the first TCP connection initiated by the client to the external network server, and performing TCP spoofing on the client.

[0090] The TCP acceleration proxy deployed on the satellite station uses the iptables / nfqueue tool to capture the first TCP connection initiated by the client to the external network server and complete TCP spoofing.

[0091] S202, initiate an STP connection to the satellite master station, and use the client TCP connection information in the first TCP connection to expand the STP protocol packet sent to the satellite master station, so that the satellite master station configures a second TCP connection for the external network server according to the client TCP connection information in the received STP protocol packet, so as to perform TCP acceleration when the client communicates with the external network server.

[0092] The client TCP connection information includes the source IP, destination IP, source port, destination port, IP header information and source MAC address of the first TCP connection.

[0093] The satellite station generates an initial STP protocol packet according to the existing STP protocol, and then uses the source IP, destination IP, source port, destination port, IP header information and source MAC address of the first TCP connection to expand the initial STP protocol packet to obtain the following: Figure 3 The extended STP protocol packet sent to the satellite master station is shown. Compared with the initial STP protocol packet, the extended STP protocol packet has additional fields such as "client_mac_addr", "client_ip", "ext_srv_ip", "client_port", "ext_srv_port", "c_iphdr_ttl", and "c_iphdr_tos". Among them, the field "client_ip" is 32 bits, recording the source IP of the first TCP connection, the field "ext_srv_ip" is 32 bits, recording the destination IP of the first TCP connection, the field "client_port" is 16 bits, recording the source port of the first TCP connection, the field "ext_srv_port" is 16 bits, recording the destination port of the first TCP connection, the fields "c_iphdr_ttl" and "c_iphdr_tos" are both 8 bits, recording the IP header information of the first TCP connection, and the field "client_mac_addr" is 32 bits, recording the source MAC address of the first TCP connection. The extended STP protocol packet also includes a "reserved_16bit" field, which is reserved for future expansion or compatibility.

[0094] After the satellite station sends the expanded STP protocol packet to the satellite master station, the satellite master station performs TCP acceleration on the communication from the client to the external network server by executing the above steps S101-S102, and the relevant implementation process is not repeated here.

[0095] S203, receiving the STP response protocol packet returned by the satellite master station.

[0096] The STP response protocol packet includes the MAC address of the external network server and the IP header information of the second TCP connection.

[0097] S204, modifying the first TCP connection according to the MAC address of the external network server and the IP header information of the second TCP connection, so as to perform TCP acceleration when the external network server communicates with the client.

[0098] The TCP acceleration proxy deployed on the satellite station sets the local Socket according to the IP header information of the second TCP connection, and configures the IP header information of the first TCP connection so that the IP header information of the first TCP connection is consistent with the IP header information of the second TCP connection.

[0099] It should be noted that if the satellite station is set to routing mode, the TTL value in the IP header information of the first TCP connection can be set to the TTL value in the IP header information of the second TCP connection minus 2 to simulate the data passing through two levels of routers.

[0100] Furthermore, on the basis of setting the IP header information of the first TCP connection to be consistent with the IP header information of the second TCP connection, the TCP acceleration agent on the satellite station can also set the source MAC address of the first TCP connection to the MAC address of the external network server, so that the first TCP connection appears to be transparent layer 2 processing on the client, thereby realizing TCP acceleration at the data link layer when the external network server communicates with the client.

[0101] In order to execute the corresponding steps in the above method embodiment and each possible implementation method, the following provides an implementation method of a TCP acceleration device 100 applied to a satellite master station and a TCP acceleration device 200 applied to a satellite small station.

[0102] Please refer to Figure 6 The TCP acceleration device 100 applied to the satellite master station includes a receiving module 101 and a configuration module 102.

[0103] The receiving module 101 is used to receive the STP protocol packet sent by the satellite station. The STP protocol packet contains the client TCP connection information. The client TCP connection information is obtained by the satellite station from the captured first TCP connection. The first TCP connection is initiated by the client to the external network server. The satellite station deceives the client when capturing the first TCP connection.

[0104] The configuration module 102 is used to initiate a second TCP connection to the external network server and configure the second TCP connection using the client TCP connection information to perform TCP acceleration when the client communicates with the external network server.

[0105] Please refer to Figure 7 The TCP acceleration device 200 applied to the satellite station includes a capture module 201, an expansion module 202 and a processing module.

[0106] The capture module 201 is used to capture the first TCP connection initiated by the client to the external network server and perform TCP spoofing on the client.

[0107] The extension module 202 is used to initiate an STP connection to the satellite master station, and use the client TCP connection information in the first TCP connection to expand the STP protocol packet sent to the satellite master station, so that the satellite master station configures a second TCP connection for the external network server based on the client TCP connection information in the received STP protocol packet, so as to perform TCP acceleration when the client communicates with the external network server.

[0108] Processing module 203 is used to receive the STP response protocol packet returned by the satellite master station, the STP response protocol packet includes the MAC address of the external network server and the IP header information of the second TCP connection; modify the first TCP connection according to the MAC address of the external network server and the IP header information of the second TCP connection to perform TCP acceleration when the external network server communicates with the client.

[0109] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the TCP acceleration device 100 applied to the satellite main station and the TCP acceleration device 200 applied to the satellite small station described above can refer to the corresponding processes in the aforementioned method embodiments, and will not be repeated here.

[0110] Furthermore, the embodiment of the present invention also provides an electronic device 300, which can be used as a satellite station or a satellite master station. Figure 8 , the electronic device 300 may include a memory 310 and a processor 320 .

[0111] Among them, the processor 320 can be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of a program of a TCP acceleration method applied to a satellite main station or a TCP acceleration method applied to a satellite small station provided in the above method embodiment.

[0112] The memory 310 may be a ROM or other types of static storage devices that can store static information and instructions, a RAM or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 310 may exist independently and be connected to the processor 320 via a communication bus. The memory 310 may also be integrated with the processor 320. Among them, the memory 310 is used to store machine executable instructions for executing the scheme of the present application. The processor 320 is used to execute the machine executable instructions stored in the memory 310 to implement the above-mentioned method embodiment.

[0113] Please refer to Fig. 9 An embodiment of the present invention provides a satellite communication system, which includes a client, a satellite station, a satellite main station and an external network server.

[0114] Among them, the satellite station is used to capture the first TCP connection initiated by the client to the external network server and perform TCP spoofing on the client; initiate an STP connection to the satellite main station, and use the client TCP connection information in the first TCP connection to expand the STP protocol packet sent to the satellite main station.

[0115] The satellite master station is used to receive the STP protocol packet sent by the satellite station, initiate a second TCP connection to the external network server, and configure the second TCP connection using the client TCP connection information to perform TCP acceleration when the client communicates with the external network server.

[0116] The satellite master station is also used to send an STP response protocol packet containing the MAC address of the external network server and the IP header information of the second TCP connection to the satellite small station.

[0117] The satellite station is also used to receive the STP response protocol packet returned by the satellite main station, which includes the MAC address of the external network server and the IP header information of the second TCP connection; the first TCP connection is modified according to the MAC address of the external network server and the IP header information of the second TCP connection to perform TCP acceleration when the external network server communicates with the client.

[0118] An embodiment of the present invention also provides a computer-readable storage medium containing a computer program. When the computer program is executed, it can be used to perform related operations in a TCP acceleration method applied to a satellite master station or a TCP acceleration method applied to a satellite station provided in the above-mentioned method embodiment.

[0119] The above are only various embodiments of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims.

Claims

1. A TCP acceleration method, characterized in that: A satellite master station is applied to a satellite communication system, wherein the satellite communication system further comprises a satellite station, a client and an external network server, and an STP connection is established between the satellite station and the satellite master station. The method comprises: receiving an STP protocol packet sent by the satellite station, wherein the STP protocol packet includes client TCP connection information, wherein the client TCP connection information is obtained by the satellite station from a captured first TCP connection, wherein the first TCP connection is initiated by the client to the external network server, and the satellite station deceives the client when capturing the first TCP connection; Initiate a second TCP connection to the external network server, and configure the second TCP connection using the client TCP connection information to perform TCP acceleration when the client communicates with the external network server; The client TCP connection information includes source address information, destination address information and IP header information of the first TCP connection, and the step of configuring the second TCP connection using the client TCP connection information includes: Setting the destination address information of the second TCP connection to the destination address information of the first TCP connection; Keep the IP header information of the second TCP connection consistent with the IP header information of the first TCP connection; Setting the source address information of the second TCP connection to the source address information of the first TCP connection; After configuring the second TCP connection using the client TCP connection information, an STP response protocol packet including the MAC address of the external network server and the IP header information of the second TCP connection is sent to the satellite station, so that the satellite station modifies the first TCP connection according to the MAC address of the external network server and the IP header information of the second TCP connection, so as to perform TCP acceleration when the external network server communicates with the client.

2. The TCP acceleration method according to claim 1, characterized in that: The source address information includes a source IP and a source port, and the step of setting the source address information of the second TCP connection as the source address information of the first TCP connection includes: The source IP of the second TCP connection is set as the source IP of the first TCP connection, and the source port of the second TCP connection is set as the source port of the first TCP connection, so as to perform TCP acceleration at the network layer when the client communicates with the external network server.

3. The TCP acceleration method according to claim 1, characterized in that: The source address information includes a source IP, a source port, and a source MAC address, and the step of setting the source address information of the second TCP connection as the source address information of the first TCP connection includes: The source IP of the second TCP connection is set to the source IP of the first TCP connection, the source port of the second TCP connection is set to the source port of the first TCP connection, and the source MAC address of the second TCP connection is set to the source MAC address of the first TCP connection, so as to perform TCP acceleration at the data link layer when the client communicates with the external network server.

4. A TCP acceleration method, characterized in that: A satellite station applied to a satellite communication system, wherein the satellite communication system further comprises a satellite master station, a client and an external network server, and the method comprises: Capturing a first TCP connection initiated by the client to the external network server, and performing TCP spoofing on the client; Initiate an STP connection to the satellite master station, and use the client TCP connection information in the first TCP connection to expand the STP protocol packet sent to the satellite master station, so that the satellite master station configures a second TCP connection for the external network server according to the client TCP connection information in the received STP protocol packet, so as to perform TCP acceleration when the client communicates with the external network server, wherein the client TCP connection information includes the source address information, destination address information and IP header information of the first TCP connection, and the steps of configuring the second TCP connection for the external network server according to the client TCP connection information in the received STP protocol packet by the satellite master station include setting the destination address information of the second TCP connection to the destination address information of the first TCP connection; keeping the IP header information of the second TCP connection consistent with the IP header information of the first TCP connection; and setting the source address information of the second TCP connection to the source address information of the first TCP connection; Receive an STP response protocol packet returned by the satellite master station, wherein the STP response protocol packet includes the MAC address of the external network server and the IP header information of the second TCP connection; The first TCP connection is modified according to the MAC address of the external network server and the IP header information of the second TCP connection, so as to perform TCP acceleration when the external network server communicates with the client.

5. A TCP acceleration device, characterized in that: A satellite master station applied to a satellite communication system, wherein the satellite communication system further comprises a satellite station, a client and an external network server, an STP connection is established between the satellite station and the satellite master station, and the device comprises: a receiving module, configured to receive an STP protocol packet sent by the satellite station, wherein the STP protocol packet includes client TCP connection information, wherein the client TCP connection information is obtained by the satellite station from a captured first TCP connection, wherein the first TCP connection is initiated by the client to the external network server, and the satellite station deceives the client when capturing the first TCP connection; a configuration module, configured to initiate a second TCP connection to the external network server, and configure the second TCP connection using the client TCP connection information, so as to perform TCP acceleration when the client communicates with the external network server; and to send an STP response protocol packet including the MAC address of the external network server and the IP header information of the second TCP connection to the satellite station, so that the satellite station modifies the first TCP connection according to the MAC address of the external network server and the IP header information of the second TCP connection, so as to perform TCP acceleration when the external network server communicates with the client; The client TCP connection information includes the source address information, destination address information and IP header information of the first TCP connection, and the configuration module is specifically used to set the destination address information of the second TCP connection to the destination address information of the first TCP connection; keep the IP header information of the second TCP connection consistent with the IP header information of the first TCP connection; and set the source address information of the second TCP connection to the source address information of the first TCP connection.

6. A TCP acceleration device, characterized in that: A satellite station used in a satellite communication system, wherein the satellite communication system further comprises a satellite master station, a client and an external network server, and the device comprises: A capture module, used for capturing a first TCP connection initiated by the client to the external network server, and performing TCP spoofing on the client; An extension module is used to initiate an STP connection to the satellite master station, and use the client TCP connection information in the first TCP connection to expand the STP protocol packet sent to the satellite master station, so that the satellite master station configures a second TCP connection for the external network server according to the client TCP connection information in the received STP protocol packet, so as to perform TCP acceleration when the client communicates with the external network server, wherein the client TCP connection information includes the source address information, destination address information and IP header information of the first TCP connection, and the steps of the satellite master station configuring the second TCP connection for the external network server according to the client TCP connection information in the received STP protocol packet include setting the destination address information of the second TCP connection to the destination address information of the first TCP connection; keeping the IP header information of the second TCP connection consistent with the IP header information of the first TCP connection; and setting the source address information of the second TCP connection to the source address information of the first TCP connection; A processing module is used to receive an STP response protocol packet returned by the satellite master station, wherein the STP response protocol packet includes the MAC address of the external network server and the IP header information of the second TCP connection; and modify the first TCP connection according to the MAC address of the external network server and the IP header information of the second TCP connection to perform TCP acceleration when the external network server communicates with the client.

7. A satellite master station, characterized in that: It includes a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the TCP acceleration method according to any one of claims 1 to 3 is implemented.

8. A satellite station, characterized in that: It includes a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the TCP acceleration method as claimed in claim 4 is implemented.

9. A satellite communication system, characterized in that: It comprises a client, an external network server, a satellite main station as claimed in claim 7 and a satellite small station as claimed in claim 8.

10. A computer-readable storage medium, characterized in that: It stores a computer program, which, when executed by a processor, implements the TCP acceleration method according to any one of claims 1 to 3, or implements the TCP acceleration method according to claim 4.

Citation Information

Patent Citations

  • Method for realizing TCP transmission in satellite network environment and corresponding gateway

    CN105897665A

  • TCP acceleration method based on satellite communication

    CN109495388A