CN102694810B - 一种卫星网络tcp地面加速方法 - Google Patents

一种卫星网络tcp地面加速方法 Download PDF

Info

Publication number
CN102694810B
CN102694810B CN201210179045.0A CN201210179045A CN102694810B CN 102694810 B CN102694810 B CN 102694810B CN 201210179045 A CN201210179045 A CN 201210179045A CN 102694810 B CN102694810 B CN 102694810B
Authority
CN
China
Prior art keywords
server end
client
packet
protocol gateway
satellite
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.)
Active
Application number
CN201210179045.0A
Other languages
English (en)
Other versions
CN102694810A (zh
Inventor
刘敏
邹光南
廖百健
石云
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Space Star Technology Co Ltd
Original Assignee
Space Star Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Space Star Technology Co Ltd filed Critical Space Star Technology Co Ltd
Priority to CN201210179045.0A priority Critical patent/CN102694810B/zh
Publication of CN102694810A publication Critical patent/CN102694810A/zh
Application granted granted Critical
Publication of CN102694810B publication Critical patent/CN102694810B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Radio Relay Systems (AREA)

Abstract

本发明公开了一种卫星网络TCP地面加速方法,将MTU主动探测、协议欺骗和TCP数据包头压缩技术进行了融合;其中包头压缩和协议欺骗需要通过客户端卫星协议网关和服务器端卫星协议网关实现,MTU主动探测需要在客户端C1运行。本发明的方法能够提高卫星链路吞吐量,高效利用卫星链路带宽资源,提高TCP传输速率。

Description

一种卫星网络TCP地面加速方法
技术领域
本发明涉及一种卫星网络TCP地面加速方法。
背景技术
TCP协议是面向连接的传输层协议,向有关应用提供可靠的数据传输。随着通信事业的发展,大量卫星通信系统承载了大量的网络应用,其中基于TCP协议的应用大约占了应用总量的85%以上。
卫星通信链路有其自身的优点的同时也存在着影响TCP传输的缺点,比如链路传输距离远、链路延时大、易受干扰、带宽有限等,由此对TCP的传输性能造成了影响,比如卫星链路延时过大造成TCP最大吞吐率降低,信道差错率高造成TCP报文发送速率降低等,所以传统的TCP协议很难适应卫星链路传输,需要对TCP协议进行相应的修改才能使其性能得到保证。
目前提高卫星系统中TCP性能的方法主要有端对端方式和分割连接方式两种。端对端方式着重TCP协议本身的改进,而分段连接机制则考虑对不同物理连接分割为不同的段,在每段内采用不同的优化方式进行优化。
中国专利申请CN03147470.5,一种分布式的卫星网络TCP性能加速协议格式和方法中提出了基于分布式PEP网络结构和两路半握手连接机制,采用流量控制、动态带宽分配算法和基于发送方主动请求的延迟确认机制等手段优化了下行链路的吞吐量和带宽利用率。但是此专利存在其弊端,如:只优化下行链路,上行链路采用低速地面链路有地域局限性,没有对TCP数据包头进行优化处理造成带宽浪费等。
发明内容
本发明所要解决的技术问题是:克服现有TCP技术在卫星通信领域中的不足,提供一种能够提高卫星链路吞吐量,高效利用卫星链路带宽资源,提高TCP传输速率的卫星网络优化方法。
本发明包括如下技术方案:一种卫星网络TCP地面加速方法,包括如下步骤:
(1)建立连接:
客户端发送会话请求数据包,该会话请求数据包通过客户端卫星协议网关转发给服务器端卫星协议网关;
服务器端卫星协议网关接收到该会话请求数据包后将其转发给服务器端,并且保存该会话请求数据包的IP头和TCP头的相关数据;服务器端收到会话请求数据包后发送第一握手应答数据包,该第一握手应答数据包通过服务器端卫星协议网关发送到客户端卫星协议网关;
客户端卫星协议网关在收到第一握手应答数据包后,保存该第一握手应答数据包的IP头和TCP头的相关数据并将该第一握手应答数据包转发给客户端;
客户端C1收到第一握手应答数据包后发送第二握手应答数据包;该第二握手应答数据包通过客户端卫星协议网关G1、服务器端卫星协议网关G2转发给服务器端C2;
(2)在建立连接后客户端开始进行路径MTU探测,在完成路径MTU探测后,客户端发送一个开启包头压缩和协议欺骗功能的数据包给服务器端,客户端卫星协议网关和服务器端卫星协议网关在收到该数据包时开启包头压缩功能和协议欺骗功能;
(3)进行数据传输
客户端发送正式数据包,当客户端卫星协议网关接收到正式数据包时,首先进行包头压缩获得压缩后的数据包,然后伪装成服务器端发送假应答数据包给客户端,最后将压缩后的数据包转发给服务器端卫星协议网关;
服务器端卫星协议网关收到压缩后的数据包后进行包头恢复,然后将恢复包头信息的数据包转发给服务器端,并伪装成服务器端发送假应答数据包给客户端卫星协议网关;
服务器端在收到服务器端卫星协议网关转发的数据后发送应答数据包给服务器端卫星协议网关;
(4)撤销连接
在传输完数据后,客户端发送连接拆除数据包,通过客户端卫星协议网关、服务器端卫星协议网关发送至服务器端;
从服务器端发送连接拆除数据包,通过服务器端卫星协议网关、客户端卫星协议网关发送至客户端。
所述开启包头压缩和协议欺骗功能的数据包为数据长度为1个字节的内容为0xFF的数据包。
步骤(4)中的撤销连接具体包括如下步骤:
客户端发送连接拆除数据包,客户端卫星协议网关在收到连接拆除数据包后首先进行包头压缩获得压缩后的数据包,伪装成服务器端发送假应答,最后将压缩后的数据包转发给服务器端卫星协议网关;
服务器端卫星协议网关在收到压缩后的数据包后进行包头恢复,然后将恢复包头信息的数据包转发给服务器端,并伪装成服务器端发送假应答;
服务器端在收到该连接拆除数据包后发送应答数据包;
然后服务器端发送连接拆除数据包,服务器端卫星协议网关在收到服务器端发送的连接拆除数据包后首先进行包头压缩获得压缩后的数据包,伪装成客户端发送假应答,最后将压缩后的数据包转发给客户端卫星协议网关;
客户端卫星协议网关在收到压缩后的数据包后进行包头恢复,然后将恢复包头信息的数据包转发给客户端,并伪装成客户端发送假应答;客户端收到恢复包头信息的数据包后发送应答数据包。
本发明与现有技术相比具有如下优点:
(1)本方法在传统网络的基础上将协议欺骗和TCP数据包头压缩技术进行了融合,提高了带宽的有效利用率,缓解了信道不对称的问题。
(2)本方法在协议欺骗和包头压缩功能启动前采取了路径MTU主动探测技术,降低了传输拥塞率。
(3)本方法采用应答欺骗技术减少了应答反应时间,缩短了卫星链路数据传输延时,提高了传输速率。
附图说明
图1为本发明方法的系统示意图;
图2为本发明方法中应答欺骗示意图。
具体实施方式
本发明的卫星网络TCP地面加速方法运行的环境如图1所示包括服务器端C2、客户端卫星协议网关G1、服务器端卫星协议网关G2和客户端C1。包头压缩和协议欺骗策略需要通过客户端卫星协议网关G1和服务器端卫星协议网关G2实现,MTU主动探测需要在客户端C1运行。
如图2所示,本发明的卫星网络TCP地面加速方法包括如下步骤:
1)建立连接:
客户端C1发起会话请求,客户端卫星协议网关G1将接收到的客户端C1发送的会话请求转发给服务器端卫星协议网关G2。此时客户端卫星协议网关G1并不启动头部压缩和应答欺骗功能。
服务器端卫星协议网关G2接收到客户端卫星协议网关G1转发的请求后,将该请求转发给服务器端C2,并且保存请求端发送的会话请求数据包的IP头和TCP头部信息。服务器端C2接收到该请求后发送应答数据包。
服务器端卫星协议网关G2接收到服务器端C2发送的应答后向客户端卫星协议网关G1转发该应答。
客户端卫星协议网关G1在收到服务器端卫星协议网关G2转发的应答后保存应答数据包的IP头和TCP头部信息并将该应答转发给客户端C1。
客户端C1收到服务器端C2的应答后发送ACK进行第三次握手。
客户端卫星协议网关G1收到客户端C1发送的应答后将其应答转发给服务器端卫星协议网关G2。
服务器端卫星协议网关G2将客户端卫星协议网关G1转发的应答转发给服务器端C2,完成三次握手。
2)连接建立初期:
在完成连接后客户端开始进行路径最大传输单元(MTU)探测,首先客户端发送一个长度为1500字节的IP数据报给服务器端,该IP数据报设置了不需分片标志位(DF位);如果收到ICMP差错,则说明当前的两个主机之间的路径上任何网络上的MTU小于1500字节,TCP客户端就减少段大小并进行重传,优选地,每次减少5个字节再进行重传。一直这样,直到找到最终的路径MTU。
3)数据传输阶段:
在完成路径MTU的探测后客户端C1发送一个长度为1个字节的0xFF数据包给服务器端C2,卫星协议网关在收到该数据包时开启包头压缩功能和协议欺骗功能,利用连接建立阶段保存的IP头和TCP头信息伪装成服务器端C2给客户端C1发送应答,若客户端C1接收到客户端卫星协议网关G1发送的假应答则开始发送正式数据。
当客户端卫星协议网关G1接收到客户端C1发送的正式数据时,首先压缩IP包头和TCP包头,然后伪装成服务器端发送假ACK应答信息给客户端C1,最后将经过压缩的数据包转发给服务器端卫星协议网关G2。
服务器端卫星协议网关G2收到经过压缩的数据包后进行包头恢复,然后将恢复包头信息的数据转发给服务器端C2,并伪装成服务器端C2发送ACK应答给客户端卫星协议网关G1。
服务器端C2在收到服务器端卫星协议网关G2转发的数据后发送应答数据包给服务器端卫星协议网关G2。由于服务器端卫星协议网关G2已经伪装成服务器端C2发送ACK给客户端卫星协议网关G1了,所以在收到服务器端C2发送的真实的ACK应答后就不需要将该真实的ACK发送给客户端卫星协议网关G1了,从而减少了应答反应时间。
4)连接撤销阶段:
在传输完数据后,客户端发送连接拆除数据包FIN,客户端卫星协议网关G1在收到客户端C1发送的连接撤销数据包后首先进行包头压缩获得压缩后的数据包,然后伪装成服务器端C2发送假应答数据包ACK,最后将压缩后的数据包转发给服务器端卫星协议网关G2。
服务器端卫星协议网关G2在收到压缩后的数据包后进行包头恢复,然后将恢复包头信息的数据包转发给服务器端C2,并伪装成服务器端发送假应答;
服务器端C2在收到连接拆除数据包后发送应答ACK。然后,服务器端C2发送连接撤销数据包FIN;
服务器端卫星协议网关G2在接收到服务器端C2发送的连接拆除数据包FIN后首先进行包头压缩获得压缩后的数据包,伪装成客户端发送假应答,最后将压缩后的数据包转发给客户端卫星协议网关;
客户端卫星协议网关G1在收到压缩后的数据包后进行包头恢复,然后将恢复包头信息的数据包转发给客户端,并伪装成客户端发送假应答。
客户端C1收到恢复包头信息的数据包后发送应答数据包。
由于客户端卫星协议网关G1已经伪装成客户端C1发送了ACK给服务器端卫星协议网关G2,所以客户端卫星协议网关G1在收到客户端C1发送的真实的ACK后无需将此真实ACK发送给服务器端卫星协议网关G2,撤销过程到此结束。
本发明未详细说明部分属本领域技术人员公知常识。

Claims (3)

1.一种卫星网络TCP地面加速方法,包括如下步骤:
(1)建立连接:
客户端发送会话请求数据包,该会话请求数据包通过客户端卫星协议网关转发给服务器端卫星协议网关;
服务器端卫星协议网关接收到该会话请求数据包后将其转发给服务器端,并且保存该会话请求数据包的IP头和TCP头的相关数据;服务器端收到会话请求数据包后发送第一握手应答数据包,该第一握手应答数据包通过服务器端卫星协议网关发送到客户端卫星协议网关;
客户端卫星协议网关在收到第一握手应答数据包后,保存该第一握手应答数据包的IP头和TCP头的相关数据并将该第一握手应答数据包转发给客户端;
客户端收到第一握手应答数据包后发送第二握手应答数据包;该第二握手应答数据包通过客户端卫星协议网关、服务器端卫星协议网关转发给服务器端;
(2)在建立连接后客户端开始进行路径MTU探测,在完成路径MTU探测后,客户端发送一个开启包头压缩和协议欺骗功能的数据包给服务器端,客户端卫星协议网关和服务器端卫星协议网关在收到该数据包时开启包头压缩功能和协议欺骗功能;
(3)进行数据传输
客户端发送正式数据包,当客户端卫星协议网关接收到正式数据包时,首先进行包头压缩获得压缩后的数据包,然后伪装成服务器端发送假应答数据包给客户端,最后将压缩后的数据包转发给服务器端卫星协议网关;
服务器端卫星协议网关收到压缩后的数据包后进行包头恢复,然后将恢复包头信息的数据包转发给服务器端,并伪装成服务器端发送假应答数据包给客户端卫星协议网关;
服务器端在收到服务器端卫星协议网关转发的数据后发送应答数据包给服务器端卫星协议网关;
(4)撤销连接
在传输完数据后,客户端发送连接拆除数据包,通过客户端卫星协议网关、服务器端卫星协议网关发送至服务器端;
从服务器端发送连接拆除数据包,通过服务器端卫星协议网关、客户端卫星协议网关发送至客户端。
2.根据权利要求1所述的卫星网络TCP地面加速方法,其特征在于:所述开启包头压缩和协议欺骗功能的标志位数据包为数据长度为1个字节的内容为0xFF的数据包。
3.根据权利要求1所述的卫星网络TCP地面加速方法,其特征在于:步骤(4)中的撤销连接具体包括如下步骤:
客户端发送连接拆除数据包,客户端卫星协议网关在收到连接拆除数据包后首先进行包头压缩获得压缩后的数据包,伪装成服务器端发送假应答,最后将压缩后的数据包转发给服务器端卫星协议网关;
服务器端卫星协议网关在收到压缩后的数据包后进行包头恢复,然后将恢复包头信息的数据包转发给服务器端,并伪装成服务器端发送假应答;
服务器端在收到该连接拆除数据包后发送应答数据包;
然后服务器端发送连接拆除数据包,服务器端卫星协议网关在收到服务器端发送的连接拆除数据包后首先进行包头压缩获得压缩后的数据包,伪装成客户端发送假应答,最后将压缩后的数据包转发给客户端卫星协议网关;
客户端卫星协议网关在收到压缩后的数据包后进行包头恢复,然后将恢复包头信息的数据包转发给客户端,并伪装成客户端发送假应答;客户端收到恢复包头信息的数据包后发送应答数据包。
CN201210179045.0A 2012-05-31 2012-05-31 一种卫星网络tcp地面加速方法 Active CN102694810B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210179045.0A CN102694810B (zh) 2012-05-31 2012-05-31 一种卫星网络tcp地面加速方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210179045.0A CN102694810B (zh) 2012-05-31 2012-05-31 一种卫星网络tcp地面加速方法

Publications (2)

Publication Number Publication Date
CN102694810A CN102694810A (zh) 2012-09-26
CN102694810B true CN102694810B (zh) 2014-10-08

Family

ID=46860097

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210179045.0A Active CN102694810B (zh) 2012-05-31 2012-05-31 一种卫星网络tcp地面加速方法

Country Status (1)

Country Link
CN (1) CN102694810B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102882879B (zh) * 2012-10-08 2015-10-07 中国电子科技集团公司第五十四研究所 一种适用于卫星信道的ip数据压缩传输方法
US10021594B2 (en) 2014-06-26 2018-07-10 Gilat Satellite Networks Ltd. Methods and apparatus for optimizing tunneled traffic
US9961587B2 (en) 2014-06-26 2018-05-01 Gilat Satellite Networks Ltd. Methods and apparatus for optimizing tunneled traffic
CN105897665B (zh) * 2015-01-26 2020-01-14 中兴通讯股份有限公司 一种卫星网络环境下实现tcp传输的方法及相应的网关
CN106603202A (zh) * 2016-11-24 2017-04-26 武汉船舶通信研究所 一种卫星链路传输方法、系统及网关
CN107948162A (zh) * 2017-11-28 2018-04-20 东莞优闪电子科技有限公司 一种使正在接受k12教育的学生绿色上网的方法
CN109495158B (zh) * 2018-11-21 2021-12-10 广州海格通信集团股份有限公司 一种提高卫星通信速率的系统和方法
CN110190893A (zh) * 2019-06-18 2019-08-30 中国电子科技集团公司第五十四研究所 一种基于dpdk的卫星信道高速可靠数据传输方法
CN112532311A (zh) * 2020-12-21 2021-03-19 国网浙江省电力有限公司信息通信分公司 卫星物联网高效raw数据传输方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1476181A (zh) * 2003-07-14 2004-02-18 中国科学院计算技术研究所 一种分布式的卫星网络tcp性能加速协议格式和方法
CN101494652A (zh) * 2009-02-27 2009-07-29 中国电子科技集团公司第五十四研究所 一种卫星通信系统中增强tcp协议性能的方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1476181A (zh) * 2003-07-14 2004-02-18 中国科学院计算技术研究所 一种分布式的卫星网络tcp性能加速协议格式和方法
CN101494652A (zh) * 2009-02-27 2009-07-29 中国电子科技集团公司第五十四研究所 一种卫星通信系统中增强tcp协议性能的方法

Also Published As

Publication number Publication date
CN102694810A (zh) 2012-09-26

Similar Documents

Publication Publication Date Title
CN102694810B (zh) 一种卫星网络tcp地面加速方法
CN103036904B (zh) 一种在通信网络中使用udp协议进行数据可靠传输的方法
CN102006283B (zh) 数据传输的方法和装置
CN101494652B (zh) 一种卫星通信系统中增强tcp协议性能的方法
US20030131079A1 (en) Performance enhancing proxy techniques for internet protocol traffic
CN102820915B (zh) 改善tcp传输性能的卫星链路系统及其使用方法
CN101436978A (zh) 使用udp协议进行可靠数据传输的方法
CN106210924B (zh) 视频网络传输控制方法和系统
US20060215685A1 (en) Method and system for out-of-band signaling for TCP connection setup
JP4648457B2 (ja) 適当な通信プロトコルを用いてメッセージ送信を提供する方法
CN102217258A (zh) 探测处理方法、数据发送端、数据接收端以及通信系统
WO2020147453A1 (zh) 数据传输方法及相关装置
CN102769520B (zh) 基于sctp协议的无线网络拥塞控制方法
CN105430320A (zh) 基于udp和tcp的音视频媒体数据传输方法
CN105227276B (zh) 一种基于udt的对等网络数据传输方法
CN112511377B (zh) 一种基于arq和udp协议的tcp网络加速方法
WO2013152614A1 (zh) 一种基于应用层数据的网络接入系统和方法
Utsumi et al. TCP-Cherry: A new approach for TCP congestion control over satellite IP networks
Psaras et al. The TCP minimum RTO revisited
Henderson TCP performance over satellite channels
JP4506430B2 (ja) アプリケーションモニタ装置
CN106100797B (zh) 一种基于ltp异步加速重传策略的深空文件传输方法
CN106657322B (zh) 一种基于ltp多会话聚合策略的深空文件传输方法
Hurtig et al. SCTP: designed for timely message delivery?
Luglio et al. The impact of efficient flow control and OS features on TCP performance over satellite links

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