CN102739569B - Gateway used in satellite communication and method for enhancing TCP performance - Google Patents
Gateway used in satellite communication and method for enhancing TCP performance Download PDFInfo
- Publication number
- CN102739569B CN102739569B CN201110082406.5A CN201110082406A CN102739569B CN 102739569 B CN102739569 B CN 102739569B CN 201110082406 A CN201110082406 A CN 201110082406A CN 102739569 B CN102739569 B CN 102739569B
- Authority
- CN
- China
- Prior art keywords
- gateway
- message
- tcp
- connection
- terminal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000004891 communication Methods 0.000 title claims abstract description 52
- 238000000034 method Methods 0.000 title claims abstract description 30
- 230000002708 enhancing effect Effects 0.000 title abstract description 8
- 230000005540 biological transmission Effects 0.000 claims abstract description 75
- 230000004044 response Effects 0.000 claims description 12
- 238000012790 confirmation Methods 0.000 claims description 11
- 230000000977 initiatory effect Effects 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 description 9
- 238000012986 modification Methods 0.000 description 8
- 230000004048 modification Effects 0.000 description 8
- 238000001914 filtration Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000008713 feedback mechanism Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
Landscapes
- Radio Relay Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种用于卫星通信中的网关及其TCP性能增强的方法,该方法包含:将位于地面的终端到宇宙空间的终端之间的整条传输路径依据传输路径特征分为若干段,所述若干段中的地面网关和空间网关之间的卫星通信链路段采用优化的TCP协议,其余若干段均采用TCP协议;其中,所述优化的TCP协议为适合在长延迟、高误码率和带宽不对称的路径上传输数据所采用的任何一种协议;所述的传输路径特征包含:延时特征、误码特征和信道对称性特征。基于该方法本发明地面网关与位于空间网关之间卫星通信链路采用SCPS-TP协议建立TP连接,进行TP数据传输;断开已经建立的TP连接。在网关的两边继续使用传统的TCP传输协议。本发明不用修改原有的设备,完全兼容TCP传输协议。
The invention discloses a gateway used in satellite communication and a method for enhancing its TCP performance. The method includes: dividing the entire transmission path between a terminal on the ground and a terminal in space into several sections according to the characteristics of the transmission path, The satellite communication link section between the ground gateway and the space gateway in the several sections adopts the optimized TCP protocol, and the remaining several sections all adopt the TCP protocol; wherein, the optimized TCP protocol is suitable for long delay, high bit error Any protocol adopted for transmitting data on a path with asymmetric rate and bandwidth; the characteristics of the transmission path include: delay characteristics, bit error characteristics and channel symmetry characteristics. Based on the method, the satellite communication link between the ground gateway and the space gateway of the present invention adopts the SCPS-TP protocol to establish a TP connection for TP data transmission; disconnect the established TP connection. The traditional TCP transport protocol continues to be used on both sides of the gateway. The invention does not need to modify the original equipment, and is fully compatible with the TCP transmission protocol.
Description
技术领域 technical field
本发明涉及于卫星通信的技术领域中的增强TCP协议传输性能的方法,适用于基于卫星通信的TCP传输业务,具体涉及一种用于卫星通信中的网关及其TCP性能增强的方法。The invention relates to a method for enhancing the transmission performance of the TCP protocol in the technical field of satellite communication, is applicable to the TCP transmission service based on the satellite communication, and specifically relates to a gateway used in the satellite communication and a method for enhancing TCP performance thereof.
背景技术 Background technique
由于卫星在现代通信基础设施中发挥越来越重要的作用,卫星网与IP网的结合是当今卫星通信领域中最热门的发展趋势。但由于卫星网络所具有的长延迟、高误码率和带宽不对称等与地面网络相异的特点,使得应用于地面网络的TCP协议不能很好的运用于卫星网络中。如何提高TCP在卫星通信中的传输性能已经成为一个重要的热点。As satellites play an increasingly important role in modern communication infrastructure, the combination of satellite networks and IP networks is the hottest development trend in the field of satellite communications today. However, due to the long delay, high bit error rate and bandwidth asymmetry of the satellite network, which are different from the terrestrial network, the TCP protocol used in the terrestrial network cannot be well used in the satellite network. How to improve the transmission performance of TCP in satellite communication has become an important hotspot.
目前的卫星通信链路中的传输层直接采用TCP协议进行端到端的数据传输将带来以下的问题:The current transport layer in the satellite communication link directly adopts the TCP protocol for end-to-end data transmission, which will bring the following problems:
1)长延迟的影响,TCP协议是一种基于确认的反馈机制的传输协议,通过确认信息和和重传机制来进行流量控制和可靠传输。如果在长时间内无确认信息,TCP协议就会认为数据包已经丢失,而进行重传机制。由于典型的卫星通信延时在540ms左右,这会造成TCP协议的不停的重传,引起通信链路的拥塞。1) The impact of long delays, the TCP protocol is a transmission protocol based on a confirmation feedback mechanism, which performs flow control and reliable transmission through confirmation information and a retransmission mechanism. If there is no confirmation information for a long time, the TCP protocol will consider that the data packet has been lost, and implement a retransmission mechanism. Since the typical satellite communication delay is about 540ms, this will cause non-stop retransmission of the TCP protocol, causing congestion of the communication link.
2)高误码率的影响,TCP协议中假定通信质量是良好的,误码率很低。因此在TCP协议中没有差错控制和恢复机制,这些一股是由链路层或应用层去完成。由于实际的卫星通信中有很高的误码,TCP协议又不能区分出是网络阻塞造成的数据丢失或是误码造成的数据丢失,TCP会一律认为是网络阻塞造成的,从而降低TCP的发送窗口,引起传输的带宽下降。2) The impact of high bit error rate, the TCP protocol assumes that the communication quality is good and the bit error rate is very low. Therefore, there is no error control and recovery mechanism in the TCP protocol, and these are generally completed by the link layer or the application layer. Since there are high bit errors in actual satellite communication, and the TCP protocol cannot distinguish between data loss caused by network congestion or data loss caused by bit errors, TCP will always consider it to be caused by network congestion, thereby reducing TCP transmission. window, causing the transmission bandwidth to drop.
3)链路不对称的影响,实际的卫星通信中的带宽是不对称的,而TCP协议假定传输带宽是对称的,不对称的带宽会造成TCP传输性能的下降。3) The influence of link asymmetry. The bandwidth in actual satellite communication is asymmetric, while the TCP protocol assumes that the transmission bandwidth is symmetric, and the asymmetric bandwidth will cause the decline of TCP transmission performance.
4)断续连接的影响,会引起TCP反复重启动连接、或重新传输,从而造成网络拥塞,阻碍在卫星数据传输中的应用。4) The impact of intermittent connection will cause TCP to repeatedly restart the connection or retransmit, thereby causing network congestion and hindering the application in satellite data transmission.
基于以上原因分析,如果在卫星通信链路中采用TCP协议传输会带来很多问题。Based on the analysis of the above reasons, if the TCP protocol is used in the satellite communication link, many problems will be caused.
因此,为了使现有的TCP协议传输性能增强使其更适合于卫星通信链路的的特点,目前采用的技术手段主要有以下几种:Therefore, in order to enhance the transmission performance of the existing TCP protocol and make it more suitable for the characteristics of satellite communication links, the technical means currently used mainly include the following:
第一种方案:针对高误码率,进行链路层进行改进,采用各种纠错编码,如前向纠错(ECC)和自动重传(ARQ),可较好的降低误码率。但由于在链路层采用差错控制会引入数据冗余,降低带宽的使用率,而且不同的传输业务要编码方案不同,很难统一。而且需要修改用户原有的网络设备,因此这种方案在具体实现时很复杂。The first solution: for high bit error rate, the link layer is improved, and various error correction codes are used, such as forward error correction (ECC) and automatic retransmission (ARQ), which can better reduce the bit error rate. However, the use of error control at the link layer will introduce data redundancy and reduce the utilization rate of bandwidth, and different transmission services require different coding schemes, which is difficult to unify. Moreover, it is necessary to modify the user's original network equipment, so this solution is very complicated in actual implementation.
第二种方案:TCP欺骗的方式,给传输源制造一个假象,使得传输源可以继续发送下一个数据包而不用等待终端的确认。主要是克服长延时对慢启动算法的影响,在链路质量比较好的网络中,可提高数据的发送率,但链路质量不好的网络不适用,特别是卫星通信网络中采用这种方式仍会受到滑动窗口大小和信道误码的影响,导致数据传输率下降。The second solution: the way of TCP spoofing, which creates an illusion for the transmission source, so that the transmission source can continue to send the next data packet without waiting for the confirmation of the terminal. The main purpose is to overcome the impact of long delay on the slow start algorithm. In a network with a good link quality, the data transmission rate can be increased, but it is not suitable for a network with a poor link quality, especially in a satellite communication network. The method is still affected by the sliding window size and channel error, resulting in a decrease in data transmission rate.
第三种方案:对TCP协议本身进行扩展改进,如采用美国空间数据系统咨询委员会专为空间通信“量身定制”了空间通信协议传输协议SCPS-TP,会引起改进的TCP协议与原有的传输协议兼容的问题,而且单单使用SCPS-TP来改进TCP传输性能会要求用户修改现有的所有网络设备,包含用户终端和网关,实现复杂,实施起来不可行。The third solution: extend and improve the TCP protocol itself, such as using the US Space Data System Advisory Committee to "tailor-made" the space communication protocol transmission protocol SCPS-TP for space communication, which will cause the improved TCP protocol to be different from the original The problem of compatibility of transmission protocols, and simply using SCPS-TP to improve TCP transmission performance will require users to modify all existing network equipment, including user terminals and gateways, which is complex and unfeasible to implement.
发明内容 Contents of the invention
本发明的目的在于,为克服卫星通信链路上TCP协议的传输性能下降的问题、带宽利用率低的问题,提出一种用于卫星通信中的网关及其TCP性能增强的方法。The purpose of the present invention is, for overcoming the problem that the transmission performance of TCP agreement on the satellite communication link descends, the problem of bandwidth utilization rate is low, proposes a kind of gateway that is used in satellite communication and the method for TCP performance enhancement thereof.
为实现上述目的,本发明提供一种用于卫星通信中的网关TCP性能增强的方法,包含:将位于地面的终端到宇宙空间的终端之间的整条传输路径依据传输路径特征分为若干段,所述若干段中的地面网关和空间网关之间的卫星通信链路段采用优化的TCP协议,其余若干段均采用TCP协议。In order to achieve the above object, the present invention provides a method for enhancing the performance of gateway TCP in satellite communication, including: dividing the entire transmission path between a terminal on the ground and a terminal in space into several sections according to the characteristics of the transmission path , the satellite communication link section between the ground gateway and the space gateway in the several sections adopts the optimized TCP protocol, and the remaining several sections all adopt the TCP protocol.
其中,所述优化的TCP协议为适合在长延迟、高误码率和带宽不对称的路径上传输数据所采用的任何一种协议;所述的传输路径特征包含:延时特征、误码特征和信道对称性特征。延时特性,低轨卫星单向传输延时为20-25ms,中轨为110-130ms,静止轨道为250-280ms,同时还受到星间路由选择、星上处理以及缓存等因素的影响。误码特性,卫星信道的误码率大约为10-6数据级,另外各种随机因素(如星蚀和雨衰)会造成信道出现突发错误。信道不对称,由于受到天线尺寸和发射功率的限制,卫星系统在前向信道和反向信道有较大的带宽不对称性。Wherein, the optimized TCP protocol is any protocol suitable for transmitting data on a path with long delay, high bit error rate and bandwidth asymmetry; the characteristics of the transmission path include: delay feature, bit error feature and channel symmetry features. Delay characteristics, the one-way transmission delay of low-orbit satellites is 20-25ms, that of mid-orbit is 110-130ms, and that of geostationary orbit is 250-280ms. It is also affected by factors such as inter-satellite routing, on-board processing, and buffering. Bit error characteristics, the bit error rate of the satellite channel is about 10-6 data level, and various random factors (such as star eclipse and rain attenuation) will cause burst errors in the channel. Channel asymmetry. Due to the limitation of antenna size and transmission power, the satellite system has a large bandwidth asymmetry in the forward channel and reverse channel.
上述技术方案中,所述地面网关和空间网关采用修改接收报文的目的IP地址和目的端口号以及发送报文的源IP地址和源端口号的方法,来建立伪传输连接,获取传输报文;其中,所述接收报文和发送报文包含:TCP报文或SCPS-TP报文。In the above technical solution, the ground gateway and the space gateway adopt the method of modifying the destination IP address and destination port number of the received message and the source IP address and source port number of the sent message to establish a pseudo-transmission connection and obtain the transmission message ; Wherein, the received message and sent message include: TCP message or SCPS-TP message.
作为一种最优的技术方案,本发明将所述地面的终端用户与位于地面网关之间设定为第一段传输路径,该段采用TCP协议;所述地面网关与位于空间的网关之间的卫星通信链路设为第二段传输路径,采用SCPS-TP协议作为优化的TCP协议;所述第二网关与位于空间的终端用户之间设为第三段传输路径,采用TCP协议。As an optimal technical solution, the present invention sets between the terminal user on the ground and the gateway located on the ground as the first section of transmission path, and this section adopts the TCP protocol; between the gateway on the ground and the gateway located in space The satellite communication link is set as the second transmission path, and the SCPS-TP protocol is used as the optimized TCP protocol; the third transmission path is set between the second gateway and the end user in space, and the TCP protocol is used.
其中,所述卫星传输路径采用SCPS-TP协议建立伪传输连接并获取传输报文的方法包含:建立连接的步骤,该步骤中所述的第二段传输路径采用SCPS-TP协议建立TP连接,并记录该连接信息;传送数据的步骤,该步骤中所述的第二段传输路径采用SCPS-TP协议进行TP数据传输;断开连接的步骤,该步骤中所述的第二段传输路径采用SCPS-TP协议断开已经建立的TP连接。Wherein, the satellite transmission path adopts the SCPS-TP protocol to establish a pseudo-transmission connection and obtains the method for transmitting messages comprising: a step of establishing a connection, the second section of the transmission path described in this step adopts the SCPS-TP protocol to establish a TP connection, And record the connection information; the step of transmitting data, the second transmission path described in this step adopts SCPS-TP protocol to carry out TP data transmission; the step of disconnecting, the second transmission path described in this step adopts The SCPS-TP protocol disconnects the established TP connection.
上述技术方案中,所述建立TP连接的步骤进一步包含:In the above technical solution, the step of establishing a TP connection further includes:
步骤301:截获SYN报文的步骤,网关截获与其相连的终端发送的TCP报文,判断是否为SYN报文,如果是则进入下一步骤,如果不是则丢弃;Step 301: the step of intercepting the SYN message, the gateway intercepts the TCP message sent by the terminal connected to it, judges whether it is a SYN message, if it is, then enters the next step, if not, then discards;
步骤302,存储SYN报文的步骤,对截获的SYN报文中包含的TCP连接信息进行记录存储;Step 302, the step of storing the SYN message, recording and storing the TCP connection information contained in the intercepted SYN message;
步骤303:修改SYN报文的步骤,对截获的SYN报文进行地址修改,将该报文中的目的IP地址和目的端口号,修改为与发起TCP连接请求终端相连的网关的对应接口上的IP地址和服务端口号;Step 303: the step of modifying the SYN message, modifying the address of the intercepted SYN message, modifying the destination IP address and destination port number in the message to the corresponding interface of the gateway connected to the terminal that initiated the TCP connection request IP address and service port number;
步骤304:所述截获SYN报文的网关或向另一与目的终端相连的网关发起SCPS-TP连接请求建立TP连接的步骤,依据步骤302记录的连接信息向连接目的终端发起SCPS-TP连接请求,与连接目的终端相连的网关之间建立TP连接;Step 304: The gateway that intercepts the SYN message or initiates an SCPS-TP connection request to another gateway connected to the destination terminal to establish a TP connection, and initiates an SCPS-TP connection request to the connection destination terminal according to the connection information recorded in step 302 , establishing a TP connection with the gateway connected to the destination terminal;
其中,所述的两个网关分别为地面网关和空间网关。Wherein, the two gateways are a ground gateway and a space gateway respectively.
优化的,所述步骤303之后还包含:Optimally, after the step 303, it also includes:
伪应答的步骤,用于所述的截获SYN报文的网关向连接发起终端发送连接建立的伪确认信息,完成与连接发起终端与所述的截获SYN报文的网关的TCP连接握手。The pseudo-response step is used for the gateway that intercepts the SYN message to send pseudo-confirmation information for connection establishment to the connection initiating terminal, and completes the TCP connection handshake between the connection initiating terminal and the gateway that intercepts the SYN message.
上述技术方案中,所述传输数据的步骤进一步包含:In the above technical solution, the step of transmitting data further includes:
步骤401:与数据发送终端相连的网关截获TCP报文,依据步骤302记录的连接信息,判断是否为有效的待传输的TCP数据报文,如果是则进入下一步骤,如果不是,则丢弃这个数据报文;Step 401: the gateway connected to the data sending terminal intercepts the TCP message, and judges whether it is an effective TCP data message to be transmitted according to the connection information recorded in step 302, if so, then enters the next step, if not, then discards this datagram;
步骤402:修改待传输的TCP数据报文的目的IP地址和目的端口号,将目的地址和目的端口号修改为与数据发送终端相连的网关对应端口的IP地址和端口号;Step 402: Modify the destination IP address and destination port number of the TCP data message to be transmitted, and modify the destination address and destination port number to the IP address and port number of the corresponding port of the gateway connected to the data sending terminal;
步骤403:将收到的TCP数据报文转换为TP数据报文,从与数据发送终端相连的网关的另一端口向与数据报文接收终端相连的另一网关传输所述数据报文;Step 403: Convert the received TCP data message into a TP data message, and transmit the data message from another port of the gateway connected to the data sending terminal to another gateway connected to the data message receiving terminal;
其中,所述的两个网关分别为地面网关和空间网关。Wherein, the two gateways are a ground gateway and a space gateway respectively.
优化的,所述步骤402之前还包含:Optimized, before the step 402 also includes:
判断是否存在TP连接的步骤,用于根据数据报文的目的地址和目的端口号查找记录的连接信息,判断与数据发送终端相连的网关是否有通向该目的终端和端口号的TP连接,如果有则进入所述步骤403,否则丢弃该报文。The step of judging whether there is a TP connection is used to find the recorded connection information according to the destination address and the destination port number of the data message, and judge whether the gateway connected to the data sending terminal has a TP connection leading to the destination terminal and the port number, if If yes, enter step 403; otherwise, discard the message.
所述步骤402之后还包含:After the step 402, it also includes:
伪应答的步骤,用于所述的与截获数据报文的网关向数据报文发送终端发送数据已经发送到目的终端的伪确认信息。The step of false response is used for the gateway that intercepts the data message to send false confirmation information that the data has been sent to the destination terminal to the data message sending terminal.
上述技术方案中,所述断开连接的步骤进一步包含:In the above technical solution, the step of disconnecting further includes:
步骤501:截获FIN报文的步骤,网关截获断开连接发起终端发送的TCP报文,判断是否为FIN报文,如果是则进入下一步骤;Step 501: the step of intercepting the FIN message, the gateway intercepts the TCP message sent by the disconnection initiating terminal, judges whether it is a FIN message, and if so, enters the next step;
步骤502:修改FIN报文的步骤,对截获的FIN报文进行地址修改,将该报文包含的目的IP地址和目的端口号,修改为与发起TCP断开连接请求终端相连的网关的对应接口上的IP地址和服务端口号;Step 502: the step of modifying the FIN message, modifying the address of the intercepted FIN message, and modifying the destination IP address and destination port number contained in the message to the corresponding interface of the gateway connected to the terminal that initiated the TCP disconnection request IP address and service port number on the website;
步骤503:所述截获FIN报文网关向已建议TP连接的另一网关发起SCPS-TP断开连接请求断开已有的TP连接的步骤,将TCP断开连接请求报文转换为SCPS-TP的FIN报文,通过与发起TCP断开连接请求终端相连的网关的另一接口向与该网关建立TP连接的另一网关发起TP断开连接的请求;Step 503: The gateway that intercepts the FIN message initiates an SCPS-TP disconnection request to another gateway that has proposed a TP connection to disconnect the existing TP connection, and converts the TCP disconnection request message into SCPS-TP FIN message, initiate a TP disconnection request to another gateway that establishes a TP connection with the gateway through another interface of the gateway connected to the terminal that initiates the TCP disconnection request;
其中,所述的两个网关分别为地面网关和空间网关。Wherein, the two gateways are a ground gateway and a space gateway respectively.
优化的,所述步骤502)之前还包含:Optimized, the step 502) also includes before:
判断是否存在该TP连接的步骤,用于判断是否存在要断开连接的TP连接,如果有则进入所述步骤502,如果否则丢弃该FIN报文。The step of judging whether the TP connection exists is used for judging whether there is a TP connection to be disconnected, if yes, enter the step 502, otherwise discard the FIN message.
所述步骤503)之后还包含:After the step 503), it also includes:
伪应答的步骤:用于向断开连接发起终端发送已经断开连接的伪确认信息。The step of false response: it is used to send false confirmation information that the connection has been disconnected to the disconnection initiating terminal.
上述技术方案中,所述的伪应答报文需修改源IP地址和源端口号为记录的目的IP地址和目的端口号。In the above technical solution, the pseudo-response message needs to modify the source IP address and source port number to the recorded destination IP address and destination port number.
基于以上分段的传输方法本发明还提供一种用于卫星通信中的网关,包括:用于截获TCP报文的包过滤模块和用于发送伪确认信息的伪应答模块,其特征在于,所述网关还包含:The present invention also provides a kind of gateway that is used in satellite communication based on the transmission method of above segment, comprises: The packet filter module that is used to intercept TCP message and the pseudo-response module that is used to send pseudo-acknowledgment information, it is characterized in that, The gateway also contains:
记录模块,用于记录连接建立请求报文包含的TCP连接信息,并保存与该TCP连接一一对应建立的TP连接信息;修改模块,用于将TCP报文包含的SYN报文、FIN报文和数据报文进行目的地址和目的端口号的修改;和协议转换模块,用于将TCP连接请求转换为SCPS-TP的连接请求建立TP连接,用于将待传输的TCP数据报文转换为TP数据报文进行传输,用于将TCP断开连接的FIN报文转换为TP断开连接的请求断开已经建立的TP连接,或进行相反的协议转换。The recording module is used to record the TCP connection information contained in the connection establishment request message, and saves the TP connection information established in one-to-one correspondence with the TCP connection; the modification module is used to record the SYN message and the FIN message contained in the TCP message modifying the destination address and destination port number with the data message; and the protocol conversion module, which is used to convert the TCP connection request into an SCPS-TP connection request to establish a TP connection, and is used to convert the TCP data message to be transmitted into TP The data message is transmitted, which is used to convert the FIN message of TCP disconnection into the request of TP disconnection to disconnect the established TP connection, or perform the opposite protocol conversion.
优化的,所述网关还包含两个缓存,其中一个用于存放接收到的TCP数据报文,另一个用于存放待转换为TP报文的数据。Optimally, the gateway further includes two caches, one for storing received TCP data packets, and the other for storing data to be converted into TP packets.
本发明的优点在于:The advantages of the present invention are:
1)采用协议变换的技术,将传统的TCP协议变换为适合于卫星通信链路连接的传输协议(如SCPS-TP协议),由协议转换网关进行透明的协议的转换。由于在两端仍采用传统的TCP协议,因此可以不必修改应用两端的原有设备,降低技术和成本风险,有利于将来应用的推广。1) Using the technology of protocol conversion, the traditional TCP protocol is converted into a transmission protocol (such as SCPS-TP protocol) suitable for satellite communication link connection, and the protocol conversion gateway performs transparent protocol conversion. Since the traditional TCP protocol is still used at both ends, there is no need to modify the original equipment at both ends of the application, reducing technical and cost risks, and facilitating the promotion of future applications.
2)采用伪应答的方式来伪装成目的终端,使得传输数据源可以继续发送下一个数据包而不用等待目的终端的确认,提高TCP传输数据源的发送速率。2) Use a false response to pretend to be the destination terminal, so that the transmission data source can continue to send the next data packet without waiting for the confirmation of the destination terminal, and increase the sending rate of the TCP transmission data source.
3)通过TCP分段技术克服了由于端到端全程采用SCPS-TP协议导致的工作量大等问题使该协议在具体实施时不可行的问题。采用在中间端采用SCPS-TP协议来增强TCP传输性能,可以有效的利用SCPS-TP协议的优点,充分利用卫星信道,提高传输的数据吞吐量和链路利用率。3) Through the TCP segmentation technology, it overcomes the problem that the SCPS-TP protocol is not feasible in the specific implementation due to the heavy workload caused by the end-to-end full-process use of the SCPS-TP protocol. Using the SCPS-TP protocol at the middle end to enhance the TCP transmission performance can effectively use the advantages of the SCPS-TP protocol, make full use of the satellite channel, and improve the data throughput and link utilization rate of transmission.
4)本发明的网关两端完全兼容原有的TCP协议,不需要修改已有的网络设备。4) Both ends of the gateway of the present invention are fully compatible with the original TCP protocol, without modifying the existing network equipment.
附图说明 Description of drawings
图1本发明的工作环境示意图;The working environment schematic diagram of Fig. 1 the present invention;
图2是本发明的一种用于卫星通信中的网关及其TCP性能增强的方法包含的建立连接的步骤进一步包含的所有步骤的流程图;Fig. 2 is a flow chart of all steps further included in the step of establishing a connection included in a gateway in satellite communication and a method for enhancing TCP performance thereof of the present invention;
图3是本发明的一种用于卫星通信中的网关及其TCP性能增强的方法包含的数据传输的步骤进一步包含的所有步骤的流程图;Fig. 3 is a flow chart of all steps further included in the step of data transmission included in a gateway in satellite communication and its TCP performance enhancing method of the present invention;
图4是本发明的一种用于卫星通信中的网关及其TCP性能增强的方法包含的断开连接的步骤进一步包含的所有步骤的流程图。Fig. 4 is a flow chart of all the steps included in the step of disconnection included in the gateway used in satellite communication and its TCP performance enhancing method of the present invention.
具体实施方式 Detailed ways
下面结合附图和实施例对本发明进行进一步说明。The present invention will be further described below in conjunction with the accompanying drawings and embodiments.
参照原理图1,卫星通信链路指地面站与通讯卫星(或空间站)之间的通信链路;假设位于地面的终端和空间的终端分别为第一终端和第二终端,与第一终端连接的网关和与第二终端相连的网关分别为第一网关和第二网关。第一终端和第一网关之间为第一段传输路径该路径传输层采用TCP传输协议,对应实际工作环境中的地面站上的终端和网关或通讯卫星(或空间站)上的终端和网关之间的传输路径;第一网关和第二网关之间的路径为第二传输路径,对应实际环境的地面站和通讯卫星(或空间站)之间的卫星通信信道;第二网关与第二终端之间的路径为第三传输路径,对应与第一传输路径相反的传输路径,即如果第一传输路径包含的终端和网关位于地面站则该处的终端和网关位于通信卫星(或空间站)上,若第一传输路径两端的终端和网关位于通信卫星(或空间站)上则该处的第二终端和第二网关位于地面站。在第二传输路径,以SCPS-TP协议或STP(Satellite Transport Protocol)协议为例说明。具体实施步骤如下:Referring to schematic diagram 1, the satellite communication link refers to the communication link between the ground station and the communication satellite (or space station); it is assumed that the terminal on the ground and the terminal in space are the first terminal and the second terminal respectively, and are connected to the first terminal The gateway and the gateway connected to the second terminal are respectively the first gateway and the second gateway. Between the first terminal and the first gateway is the first transmission path. The transmission layer of this path adopts the TCP transmission protocol, which corresponds to the connection between the terminal and the gateway on the ground station or the terminal and the gateway on the communication satellite (or space station) in the actual working environment. The transmission path between; the path between the first gateway and the second gateway is the second transmission path, corresponding to the satellite communication channel between the ground station and the communication satellite (or space station) in the actual environment; between the second gateway and the second terminal The path between is the third transmission path, which corresponds to the transmission path opposite to the first transmission path, that is, if the terminal and the gateway included in the first transmission path are located at the ground station, then the terminal and the gateway there are located on the communication satellite (or space station), If the terminals and the gateway at both ends of the first transmission path are located on the communication satellite (or space station), then the second terminal and the second gateway there are located at the ground station. In the second transmission path, the SCPS-TP protocol or the STP (Satellite Transport Protocol) protocol is used as an example for illustration. The specific implementation steps are as follows:
①建立连接。① Establish a connection.
当第一终端向第二终端发起TCP连接请求,经过第一网关时,网关1通过包过滤模块在路由判断前截获SYN报文,对截获的SYN报文,记录TCP连接信息(连接的源IP地址和源端口号,及目的IP地址和目的端口号)。记录后,修改SYN报文的目的IP地址和目的端口号,修改为第一网关的接口A上的IP地址和服务端口号。把SYN包转发到第一网关上的协议转换服务程序上。由协议转换服务程序完成与第一终端的连接握手。然后由协议转换服务程序向记录的目的IP地址和目的端口号,即第二终端的IP地址和端口号,通过接口B发起SCPS-TP连接请求(或STP连接请求)。When the first terminal initiates a TCP connection request to the second terminal and passes through the first gateway, the gateway 1 intercepts the SYN message through the packet filtering module before the routing judgment, and records the TCP connection information (the source IP address of the connection) for the intercepted SYN message. IP address and source port number, and destination IP address and destination port number). After recording, modify the destination IP address and destination port number of the SYN message to the IP address and service port number on interface A of the first gateway. The SYN packet is forwarded to the protocol conversion service program on the first gateway. The connection handshake with the first terminal is completed by the protocol conversion service program. Then the protocol conversion service program initiates an SCPS-TP connection request (or STP connection request) through interface B to the recorded destination IP address and destination port number, that is, the IP address and port number of the second terminal.
当SCPS-TP连接请求(或STP连接请求)经过第二网关时,第二网关的包过滤模块截获SCPS-TP的SYN报文(或STP连接请求报文),并记录SCPS-TP连接信息(或STP连接请求信息),包括源IP地址和源端口号,以及目IP地址和目的端口号。记录后,修改SCPS-TP的SYN报文(或STP连接请求报文)的目的IP地址和目的端口号,修改为第二网关的接口B上的IP地址和服务端口号,把SCPS-TP的SYN报文(或STP连接请求报文)转发到第二网关上的协议转换服务程序上,由协议转换程序完成与网关2的握手。然后由协议转换程序向记录的目的IP地址和目的端口号,即第二终端的IP地址和端口号,通过接口A发起TCP连接请求。When the SCPS-TP connection request (or STP connection request) passes through the second gateway, the packet filter module of the second gateway intercepts the SYN message (or STP connection request message) of SCPS-TP, and records the SCPS-TP connection information ( or STP connection request information), including source IP address and source port number, and destination IP address and destination port number. After recording, modify the destination IP address and the destination port number of the SYN message (or STP connection request message) of SCPS-TP, modify the IP address and the service port number on the interface B of the second gateway, and use the SCPS-TP The SYN message (or the STP connection request message) is forwarded to the protocol conversion service program on the second gateway, and the protocol conversion program completes the handshake with the gateway 2 . Then the protocol conversion program initiates a TCP connection request through interface A to the recorded destination IP address and destination port number, that is, the IP address and port number of the second terminal.
②数据传输。②Data transmission.
第一网关通过包过滤模块收到第一终端发送的TCP数据报文后,判断是否存在连接请求记录,不存在则丢弃。存在,则修改TCP数据报文的目的IP地址和目的端口号,修改为第一网关上的A端口的IP地址和服务端口号,并对收到时的TCP数据报文进行伪应答,让第一终端认为TCP数据报已经发送到第二终端上。然后,第一网关的协议转换程序把收到的TCP数据报文转换为SCPS-TP的数据报文(或STP数据报文),通过B端口向第二终端发送。After receiving the TCP data message sent by the first terminal through the packet filtering module, the first gateway judges whether there is a connection request record, and discards it if it does not exist. Exist, then modify the purpose IP address and the purpose port number of the TCP data message, revise to the IP address and the service port number of the A port on the first gateway, and carry out pseudo-response to the TCP data message when receiving, so that the first A terminal considers that the TCP datagram has been sent to the second terminal. Then, the protocol conversion program of the first gateway converts the received TCP data message into an SCPS-TP data message (or STP data message), and sends it to the second terminal through the B port.
第二网关通过包过虑模块收到第一网关发送的SCPS-TP数据报文(或STP数据报文)后,对SCPS-TP数据报文(或STP数据报文)的目的IP地址和目的端口号进行修改,修改为第二网关的B端口的IP地址和服务端口号,并对收到时的SCPS-TP数据报文(或STP数据报文)进行伪应答,让第一网关认为SCPS-TP数据报(或STP数据报文)已经发送到第二终端上。第二网关的协议转换程序把收到的SCPS-TP数据报文(或STP数据报文)转换为TCP的数据报文,通过接口A向第二终端发送。After the second gateway receives the SCPS-TP data message (or STP data message) sent by the first gateway through the packet filtering module, the destination IP address and the destination port of the SCPS-TP data message (or STP data message) modify the IP address and service port number of the B port of the second gateway, and carry out a pseudo-response to the SCPS-TP data message (or STP data message) when it is received, so that the first gateway thinks that the SCPS-TP data message (or STP data message) The TP datagram (or STP datagram) has been sent to the second terminal. The protocol conversion program of the second gateway converts the received SCPS-TP data message (or STP data message) into a TCP data message, and sends it to the second terminal through interface A.
③断开连接③ Disconnect
第一终端向第二终端发送断开TCP连接请求,经过第一网关时,第一网关通过包过滤模块截获TCP的FIN报文,判断是否存在连接请求记录,不存在则丢弃。存在,则对TCP的FIN报文的目的IP地址和目的端口号进行修改,修改到第一网关的A端口的IP地址和服务端口号,再由协议转换程序转换为SCPS-TP的FIN报文(或STP的断开请求),通过接口B向第二终端发起断开连接请求。The first terminal sends a request to disconnect the TCP connection to the second terminal. When the first gateway passes through the first gateway, the first gateway intercepts the TCP FIN message through the packet filtering module to determine whether there is a connection request record, and discard it if it does not exist. Exist, then modify the destination IP address and destination port number of the FIN message of TCP, modify the IP address and service port number of the A port of the first gateway, and then convert it into the FIN message of SCPS-TP by the protocol conversion program (or STP disconnection request), initiate a disconnection request to the second terminal through interface B.
第二网关收到由第一网关发送的SCPS-TP的FIN报文(或STP的断开请求)后,对SCPS-TP的FIN报文(或STP的断开请求)的目的IP地址和目的端口号进行修改,修改为第二网关的B端口的IP地址和服务端口号,再由第二网关的协议转换程序转换为TCP的FIN报文,通过接口A向第二终端发起断开连接请求。After the second gateway receives the FIN message of SCPS-TP (or the disconnection request of STP) sent by the first gateway, the destination IP address and purpose of the FIN message of SCPS-TP (or the disconnection request of STP) Modify the port number to the IP address and service port number of port B of the second gateway, and then convert it into a TCP FIN message by the protocol conversion program of the second gateway, and initiate a disconnection request to the second terminal through interface A .
其中,以上描述的第一网关和第二网关的功能对等,即建立连接的步骤,传输数据的步骤及断开连接的步骤可以由第二终端经第二网关发起,具体工作流程如上。Wherein, the functions of the first gateway and the second gateway described above are equivalent, that is, the steps of establishing a connection, transmitting data and disconnecting can be initiated by the second terminal through the second gateway, and the specific working process is as above.
图2、图3、图4是本发明的工作流程图。由于第一网关与第二网关的功能是对称的。流程图主要以其中一个网关为例说明,且以卫星通信链路段采用SCPS-TP协议为例。Fig. 2, Fig. 3, Fig. 4 are work flowcharts of the present invention. Because the functions of the first gateway and the second gateway are symmetrical. The flowchart mainly takes one of the gateways as an example, and takes the satellite communication link segment using the SCPS-TP protocol as an example.
图2的流程图中,包过滤是对输入的网络数据包进行过滤,获取TCP的报文。报文获取后,判断是否是TCP的SYN报文。连接信息管理中记录连接信息(源地址和端口号、目的地址和端口号)。地址修改完成目的地址和端口号的修改。伪应答对接收的报文进行应答。建立SCPS-TP连接,向连接信息管理中记录的目的地址和端口号发起TP连接请求。In the flow chart of FIG. 2 , packet filtering is to filter input network data packets to obtain TCP packets. After the packet is obtained, it is judged whether it is a TCP SYN packet. Connection information (source address and port number, destination address and port number) is recorded in connection information management. Address modification completes the modification of the destination address and port number. The pseudo-acknowledgment responds to the received message. Establish an SCPS-TP connection, and initiate a TP connection request to the destination address and port number recorded in the connection information management.
图3的流程图中,包过滤是对输入的网络数据包进行过滤,获取TCP的报文。报文获取后,判断是否是TCP的数据报文。输入数据链和输出数据链是两个内部缓存,用于缓存报文,提高数据传输的性能。判断连接信息管理中是否存在连接信息,没有则丢弃,有则做进一步的处理。地址修改完成目的地址和端口号的修改。伪应答对接收的报文进行应答。最后转换为SCPS-TP报文进行数据传输。In the flow chart of FIG. 3 , packet filtering is to filter input network data packets to obtain TCP packets. After the packet is obtained, it is judged whether it is a TCP data packet. The input data link and the output data link are two internal caches, which are used to cache messages and improve the performance of data transmission. It is judged whether there is connection information in the connection information management, if there is no connection information, it is discarded, and if there is, further processing is performed. Address modification completes the modification of the destination address and port number. The pseudo-acknowledgment responds to the received message. Finally, it is converted into an SCPS-TP message for data transmission.
图4的流程图中,包过滤是对输入的网络数据包进行过滤,获取TCP的报文。报文获取后,判断是否是TCP的FIN报文。判断连接信息管理中是否存在连接信息,没有则丢弃,有则做进一步的处理。地址修改完成目的地址和端口号的修改。伪应答对接收的报文进行应答。最后转换为SCPS-TP的FIN进行数据传输。In the flow chart of FIG. 4 , packet filtering is to filter input network data packets to obtain TCP packets. After the packet is obtained, it is judged whether it is a TCP FIN packet. It is judged whether there is connection information in the connection information management, if there is no connection information, it is discarded, and if there is, further processing is performed. Address modification completes the modification of the destination address and port number. The pseudo-acknowledgment responds to the received message. Finally, convert to FIN of SCPS-TP for data transmission.
需要说明的是,以上介绍的本发明的实施方案而并非限制。本领域的技术人员应当理解,任何对本发明技术方案的修改或者等同替代都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围内。It should be noted that the embodiments of the present invention described above are not limiting. Those skilled in the art should understand that any modification or equivalent replacement of the technical solution of the present invention does not depart from the spirit and scope of the technical solution of the present invention, and should be covered by the claims of the present invention.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110082406.5A CN102739569B (en) | 2011-04-01 | 2011-04-01 | Gateway used in satellite communication and method for enhancing TCP performance |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110082406.5A CN102739569B (en) | 2011-04-01 | 2011-04-01 | Gateway used in satellite communication and method for enhancing TCP performance |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102739569A CN102739569A (en) | 2012-10-17 |
CN102739569B true CN102739569B (en) | 2015-04-15 |
Family
ID=46994381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110082406.5A Expired - Fee Related CN102739569B (en) | 2011-04-01 | 2011-04-01 | Gateway used in satellite communication and method for enhancing TCP performance |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102739569B (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104618007B (en) * | 2015-03-12 | 2017-12-26 | 北京邮电大学 | A kind of synchronous satellite Transmission Control Protocol segmentation connection optimization method |
CN104901950B (en) * | 2015-04-23 | 2017-12-19 | 山东大学 | A kind of space communication network transport layer protocol algorithm for being suitable for time delay mutation based on cross-layer thought |
CN104780119B (en) * | 2015-04-28 | 2017-08-29 | 重庆大学 | A Packet Loss Location and Detection Method Based on SCPS‑TP |
CN104955079A (en) * | 2015-05-27 | 2015-09-30 | 北京京东尚科信息技术有限公司 | Data transmission method and performance enhancing proxy in wireless ad hoc network |
CN105245271B (en) * | 2015-10-27 | 2019-12-13 | 航天恒星科技有限公司 | Satellite communication network acceleration device and method |
CN106059950B (en) * | 2016-05-25 | 2019-03-08 | 四川大学 | An Adaptive Network Congestion Control Method Based on SCPS-TP |
CN109302226A (en) * | 2017-07-24 | 2019-02-01 | 北京空间技术研制试验中心 | Incorporate network communication method |
CN109639340B (en) * | 2018-12-11 | 2021-05-28 | 成都天奥信息科技有限公司 | TCP acceleration method suitable for satellite link |
CN110190893A (en) * | 2019-06-18 | 2019-08-30 | 中国电子科技集团公司第五十四研究所 | A kind of satellite channel high speed reliable data transmission method based on DPDK |
CN111988585B (en) * | 2020-08-17 | 2022-04-29 | 海宇星联(山东)智慧科技有限公司 | A video transmission method suitable for satellite data communication network |
CN113660289B (en) * | 2021-09-27 | 2022-12-09 | 中国电子科技集团公司第五十四研究所 | Low-orbit satellite channel efficient and reliable data transmission method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1476181A (en) * | 2003-07-14 | 2004-02-18 | 中国科学院计算技术研究所 | A Distributed Satellite Network TCP Performance Acceleration Protocol Format and Method |
CN101494652A (en) * | 2009-02-27 | 2009-07-29 | 中国电子科技集团公司第五十四研究所 | Method for reinforcing TCP protocol performance in satellite communication system |
CN101656750A (en) * | 2009-09-23 | 2010-02-24 | 贵州师范大学 | TCP split connection method suitable for space communication network |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1446931A1 (en) * | 2001-11-13 | 2004-08-18 | EMS Technologies, Inc. | Enhancements for tcp perfomance enhancing proxies |
US8699401B2 (en) * | 2009-02-13 | 2014-04-15 | Qualcomm Incorporated | High rate packet data (HRPD) idle state handout from femto access point to macro access network |
-
2011
- 2011-04-01 CN CN201110082406.5A patent/CN102739569B/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1476181A (en) * | 2003-07-14 | 2004-02-18 | 中国科学院计算技术研究所 | A Distributed Satellite Network TCP Performance Acceleration Protocol Format and Method |
CN101494652A (en) * | 2009-02-27 | 2009-07-29 | 中国电子科技集团公司第五十四研究所 | Method for reinforcing TCP protocol performance in satellite communication system |
CN101656750A (en) * | 2009-09-23 | 2010-02-24 | 贵州师范大学 | TCP split connection method suitable for space communication network |
Also Published As
Publication number | Publication date |
---|---|
CN102739569A (en) | 2012-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102739569B (en) | Gateway used in satellite communication and method for enhancing TCP performance | |
CN102882879B (en) | A kind of IP data compression transmission method being applicable to satellite channel | |
JP4164365B2 (en) | Technology for improving TCP performance over a wireless interface by providing a dual proxy device | |
WO2019144836A1 (en) | Data transmission method, apparatus and system | |
CN106254202B (en) | A kind of multidiameter delay transmission method and device based on fountain codes | |
KR101671804B1 (en) | Method for transmitting and receiving TCP ACK packet, and apparatus supporting the same | |
CN101568144B (en) | A header compression method suitable for wireless ad hoc networks | |
CN102056227B (en) | Donor evolved node B, relay node and communication method thereof | |
CN103944691B (en) | Data repeating method in a kind of transmission of cooperation service and connect network gateway | |
CN104038322B (en) | Intermediate node, communication network and its data transfer control method | |
CN104618007B (en) | A kind of synchronous satellite Transmission Control Protocol segmentation connection optimization method | |
CN102694810B (en) | TCP ground acceleration method for satellite network | |
CN101626597B (en) | A jump-to-hop transmission method based on satellite network | |
CN101436978A (en) | Method for authentic data transmission using UDP protocol | |
CN101945341A (en) | Point-to-point transmission protocol of wireless sensor network | |
WO2011100911A2 (en) | Detection processing method, data transmitter, data receiver and communication system | |
WO2007052764A1 (en) | Session relay device and session relay method | |
WO2020010511A1 (en) | Data transmission method and base station | |
CN101252524A (en) | Method, system and device for message transmission | |
CN100505608C (en) | An adaptive congestion control method and system suitable for satellite networks | |
CN101552728B (en) | Path MTU discovery method and system facing to IPV6 | |
Liu et al. | Cross-layer design for UAV-based streaming media transmission | |
CN102801692B (en) | A kind of transmission control protocol optimization method and system connecting based on division | |
CN101883329B (en) | A Method and Device for Supporting MBMS Service Content Synchronization Based on Converged EPS | |
CN107231567A (en) | A kind of message transmitting method, apparatus and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: 100190 No. two south of Zhongguancun, Haidian District, Beijing 1 Patentee after: NATIONAL SPACE SCIENCE CENTER, CAS Address before: 100190 No. two south of Zhongguancun, Haidian District, Beijing 1 Patentee before: NATIONAL SPACE SCIENCE CENTER, CHINESE ACADEMY OF SCIENCES |
|
CP01 | Change in the name or title of a patent holder | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150415 |
|
CF01 | Termination of patent right due to non-payment of annual fee |