CN116346955A - 不对称卫星网络的tcp报文传输性能增强方法和系统 - Google Patents
不对称卫星网络的tcp报文传输性能增强方法和系统 Download PDFInfo
- Publication number
- CN116346955A CN116346955A CN202310164302.1A CN202310164302A CN116346955A CN 116346955 A CN116346955 A CN 116346955A CN 202310164302 A CN202310164302 A CN 202310164302A CN 116346955 A CN116346955 A CN 116346955A
- Authority
- CN
- China
- Prior art keywords
- gateway
- message
- server
- client
- tcp
- 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.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 130
- 238000000034 method Methods 0.000 title claims abstract description 100
- 238000012790 confirmation Methods 0.000 claims abstract description 83
- 230000008569 process Effects 0.000 claims abstract description 18
- 230000002708 enhancing effect Effects 0.000 claims description 16
- 230000006854 communication Effects 0.000 claims description 14
- 238000004891 communication Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 13
- 238000012544 monitoring process Methods 0.000 claims description 10
- 238000003860 storage Methods 0.000 claims description 8
- 238000004422 calculation algorithm Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 5
- 238000009826 distribution Methods 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 abstract description 15
- 230000007547 defect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000011218 segmentation Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/14—Relay systems
- H04B7/15—Active relay systems
- H04B7/185—Space-based or airborne stations; Stations for satellite systems
- H04B7/18578—Satellite systems for providing broadband data service to individual earth stations
- H04B7/18586—Arrangements for data transporting, e.g. for an end to end data transport or check
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Astronomy & Astrophysics (AREA)
- Aviation & Aerospace Engineering (AREA)
- General Physics & Mathematics (AREA)
- Radio Relay Systems (AREA)
Abstract
本发明公开了不对称卫星网络的TCP报文传输性能增强方法和系统。为解决了现有TCP协议报文在卫星链路上应用的缺点和问题,本发明采用了新的卫星链路网关之间连接建立、带宽分配、流量控制和接收确认机制。本发明加快了卫星链路两个网关的建立过程,缩短了连接等待时间;本发明使得时延敏感、带宽敏感和无敏感型业务都能够得到适合自身业务特点的带宽分配,并保证了每种业务的公平性;本发明避免了卫星链路上产生拥塞和报文丢失。本发明的接收确认机制避免了确认报文的拥塞,提高了传输性能。本发明在具有长时延和上下行带宽不对称的卫星网络环境中性能优于标准TCP协议,并且能够充分利用下行卫星链路的带宽资源。
Description
技术领域
本发明属于卫星通信技术领域,具体地,涉及用于不对称卫星网络的TCP报文传输性能增强方法和系统,用于不对称卫星网络的TCP报文客户端网关、服务器网关的TCP报文传输性能增强方法,TCP报文传输性能增强平台及计算机存储介质,用于无线和有线混合、上下行不对称卫星网络的TCP报文传输性能的增强。
背景技术
TCP协议是TCP/IP体系中非常复杂的一个协议,该协议具有这些特点:TCP是面向连接的传输层协议;每一条TCP连接只能是点对点的;TCP提供可靠性的交付;TCP提供全双工通信。
(1)三次握手建立连接:确保连接建立的可靠性。
(2)端口号:通过端口号标识上层协议和服务,实现了网络通道的多路复用。
(3)完整性校验:通过对协议和载荷数据计算校验和,保证了接收方能检测出传输过程中可能出现的差错。
(4)确认机制:对于正确接收到的数据,接收方通过显示应答通告发送方,超出一定时间之后,发送方将重传没有被确认的段,确保传输的可靠性。
(5)序列号:发送的所有数据都拥有唯一的序列号,这样不但唯一标识了每一个段,而且明确了每个段在整个数据流中的位置,接收方可以利用这些信息实现确认、丢失检测、乱序重排等功能。
(6)窗口机制:通过可调节的窗口,TCP接收方可以通告期望的发送速率,从而控制数据的流量。
1.TCP的连接建立
TCP在每次数据传输之前需要首先建立连接,当连接建立成功后才开始传输数据。TCP采用三次握手的方式进行连接建立。
1)首先由发起方A向接收方B发出连接请求,请求报文段中SYN位置1,初始序号seq=x;
2)B收到连接请求后,如果同意建立连接,则向A发送确认报文,确认报文段中把SYN位和ACK位都置1,确认号ack=x+1,同时也为自己选择一个初始序号seq=y。
3)A收到B的连接确认后,还要向B给出确认。确认报文段中ACK位置1,确认号ack=y+1,自己的序号seq=x+1。B收到确认报文后,连接建立。
2.TCP可靠传输机制
1)选择确认
为保证数据传输的可靠性,TCP要求对传输的数据进行确认,TCP通过序列号和确认号来确保传输的可靠性。每一次传输数据时,TCP都会标明该报文段的起始序列号,以便对方确认。
首先,TCP并不要求对每一个报文段一对一地发送确认。接收端可以用一个ACK确认之前收到的所有数据。例如,接收到的确认序列号为N+1时,表示接收方对到N为止的所有数据全部正确接收。
此外,TCP并不要求必须单独发送确认,而是允许将确认放在传输给对方的TCP数据报文段中。如果收到一个报文段后没有马上传到对方,TCP通常会等待一个微小的延时,希望将确认与后续的数据段合并发出。
由于每个段都有唯一的编号,这样当对方收到了重复的段时容易发现,数据段丢失后也容易定位,乱序后也可以重新排列。
2)超时重传
TCP传输时,发送端向接收端的发送多段报文,序列号为x的第二个段在途中丢失,接收端只对全部按序无错接收的序列号最高的段给以确认。发送端在收到这个确认时,并不能确认接收端没有收到第二个段,因为第二个段也许还没有到达接收端,或者接收端发出的第二个确认可能被延迟了,因此发送端不能立即重传第二个段。只有在第二个段发出超过RTT(Round Trip Time,往返时间)而仍没有收到确认时,发送端才认为这个段已经丢失,并重传这个段。
3.流量控制
流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收。TCP使用大小可变的滑动窗口,并定义了窗口尺寸的通告机制,以增强流量控制的功能。这些机制为TCP提供了在收发系统之间调整流量的动态方法。
TCP滑动窗口尺寸的单位是字节,起始于确认字段指明的值,这个值是接收端正期望一次性接收的字节。在TCP的传输过程中,双方通过交换窗口的大小来表达自己剩余的缓冲区空间,以及下一次能够接收的最大的数据量,避免缓冲区溢出。
假设初始发送窗口大小为4096,每个段的数据为1024B,发送方每次发送4个段给接收方。接收方正确接收到这些数据后,以确认号4097进行确认。同时,如果接收方如果缓存不足或处理能力有限,认为这个发送速度过快,并期望将发送窗口减低一半。然后,接收方在回送的确认中将窗口尺寸降低为2048,要求发送方每次只发送2048B。发送方收到这个确认后,便依照要求降低了发送窗口尺寸,也就降低了发送速率。
4.性能增强代理
目前提高TCP传输性能的增强技术用得较多的方案是性能增强代理(PEP,Performance Enhancement Proxy)方法,它通过增加硬件设备,将TCP端到端语义连接断开实现协议性能的增强。根据实现方式的不同分为TCP欺骗和TCP分段两种。
如图1所示,TCP欺骗主要思想是屏蔽卫星信道的长传播时延来加速增大TCP发送窗口的大小。该方法需要在发送端安装PEP设备,通过位于发送端的PEP向发送端发送针对TCP报文的ACK,使得发送端认为到接收端的传播时延很短,这样促使滑动窗口稳定增加,从而使发送速率提高的一种方法。
如图2所示,TCP分段方法是在通信双方安装PEP设备,使TCP吞吐量在两个传输方向上都得到提高,适合点对点通信的应用场景,随着终端处理能力得增强,PEP功能可以软件的形式嵌入到终端,在中心站安装PEP服务器,这样TCP分段也可以应用于星状网应用场景。TCP分段过程中PEP除了完成发送/接收终端的功能,也要完成TCP欺骗中本地确认的功能。
目前,Internet网络中使用最广泛的传输层协议是TCP协议。但是,当TCP协议应用到卫星传输网络中的时候,因为卫星的传输信道和地面网络链路的特征区别很大,导致其吞吐量大幅度下降,传输性能受到很大影响。主要体现在以下几个方面:
1)在大的传输时延的卫星通信系统中,TCP吞吐量受到滑动窗口大小限制,在不考虑丢包的情况下,TCP吞吐量大致计算为滑动窗口大小/RTT(RTT,传播时延),TCP协议需要很大的发送窗口才能充分利用带宽。但是标准的TCP协议最大窗口为64KB,许多应用的TCP实现中缺省的发送窗口是8KB,这样在卫星网络通信中获得的吞吐量非常小,导致通信的时延很大。
2)卫星链路的误码率高于地面网络,标准的TCP协议会把所有的误码都按照网络拥塞处理,并且调用慢启动算法减少发送窗口值进行避免拥塞,这样做非但没有减轻拥塞,反而使得卫星链路传输性能更加恶化。
3)卫星通信网络中的一个显著的特征就是前、反向链路不对称,TCP协议需要利用反向链路回复的确认消息来触发数据发送方持续发送数据,但是这种上下行链路带宽不对称会导致上行链路中确认消息的拥塞,连锁反应降低了下行线路的传输性能。
发明内容
本发明的目的在于解决卫星网络环境中因长时延、高误码率和非对称信道带宽等因素导致的TCP传输性能低下的问题。
为实现上述目的,本发明提供了一种用于不对称卫星网络客户端网关的TCP报文传输性能增强方法,在靠近客户端设备一侧的每个卫星链路接入点配置客户端网关,与卫星链路另一端的服务器网关通信,客户端与客户端网关之间、服务器和服务器网关之间的地面链路采用标准TCP协议;
客户端网关在客户端与服务器进行连接建立的过程中执行以下步骤:
接收第一TCP连接请求的步骤;该步骤中,客户端网关接收客户端向服务器发送的第一TCP连接请求;
与客户端建立TCP连接的步骤;该步骤中,客户端网关根据第一TCP连接请求,采用标准TCP协议以服务器的身份在客户端和客户端网关之间建立一条TCP连接;
接收客户端数据报文的步骤;该步骤中,与客户端建立TCP连接后,客户端网关开始接收客户端向服务器发送的上行数据报文;
向服务器网关转发TCP请求的步骤;该步骤中,客户端在与客户端建立TCP连接的同时或者之后,将第一TCP连接请求转发给服务器网关;
转发下行数据报文的步骤;该步骤中,客户端网关接收服务器网关转发的下行数据报文并向客户端转发;其中,接收到的第一个下行数据报文中含有确认报文,截取确认报文后再将下行数据报文向客户端转发;
发送上行数据报文和确认报文的步骤;该步骤中,在接收到含有确认报文第一个下行数据报文中之后,客户端网关向服务器网关转发上行数据报文;其中,客户端网关将再确认报文添加到客户端发来的第一个上行数据报文中发给服务器网关。进一步的,客户端网关与服务器网关建立连接后,在发送数据的过程中,服务器网关需要客户端网关确认接收的数据报文,客户端网关还执行以下步骤:
接收确认报文接收的步骤,该步骤中,客户端网关在接收带有接收确认报文的下行数据报文;服务器网关每发送N个下行数据报文,在最后一个下行数据报文的尾部增加接收确认报文,该下行数据报文中带有接收确认报文;
接收回复报文发送的步骤,该步骤中,客户端网关接收带有接收确认报文的下行数据报文后,截取接收确认报文并将剩余下行数据报文转发给客户端,然后根据接收确认报文把接收回复报文添加到装在发往服务器网关的上行数据报文中发送,如果没有上行数据报文需要发送,则用一个单独的接收回复报文向服务器网关发送,接收回复报文对之前接收到的所有数据报文进行确认。
本发明还提供了一种用于不对称卫星网络服务器网关的TCP报文传输性能增强方法,在靠近服务器设备一侧的卫星链路接入点配置服务器网关,与卫星链路另一端的客户端网关通信客户端与客户端网关之间、服务器和服务器网关之间的地面链路采用标准TCP协议;并且,
服务器网关在客户端与服务器进行连接建立的过程中执行以下步骤:
接收第一TCP连接请求的步骤;该步骤中,服务器网关从客户端网关接收客户端向服务器发送的第一TCP连接请求;
与服务器建立TCP连接的步骤;该步骤中,客户端网关根据第一TCP连接请求,采用标准TCP协议以客户端的身份在服务器网关和服务器之间建立一条TCP连接;
转发下行数据报文的步骤;该步骤中,与服务器的TCP连接建立后,服务器网关开始接收从服务器发送来的下行数据报文并向客户端网关转发;其中,服务器网关将确认报文放到服务器发送来的第一个下行数据报文中发送给客户端网关;
接收并转发上行数据报文的步骤;该步骤中,服务器网关接收客户端网关发来的上行数据报文并向服务器转发;其中,接收到的第一个上行数据报文中含有再确认报文,截取再确认报文后再将上行数据报文向服务器转发;
确认报文监控的步骤;该步骤中,向客户端网关发送确认报文时,服务器网关开始计时监控,如果超过a×RTT还未收到客户端网关的再确认报文,服务器网关会重新发送确认报文并再次计时监控,如果超过a×RTT时间还未回复则服务器网关停止发送数据,并终止该客户端网关的连接,停止数据转发;其中,a为大于1小于2的系数,RTT是一次服务器网关到客户端网关的往返时间。
进一步的,用于不对称卫星网络服务器网关的TCP报文传输性能增强方法,其特征在于,服务器网关负责带宽分配,所述带宽分配具体是:
预先将卫星链路的业务分为三种,第一种为对时延要求高的业务,第二种为对带宽要求高的业务,第三种为对时延和带宽没有明显要求的业务;
服务器网关根据报文判断业务类型,对于第一种业务,根据报文的R个优先级,对应地设置R个发送通道,每一个通道都独享整个带宽C,C是服务器回应客户端报文所在的下行链路总带宽,优先级越高的报文越先发送,高优先级报文发送完后再发送低优先级的报文;直到所有第一种业务类型的报文全部发送完后,再进行处理第二种业务类型报文;
对于第二类业务,设置S个发送通道并给每个发送通道分配相应的通道发送量,报文随机分配到每个发送通道中,从第一个发送通道开始发送,当报文发送量小于通道发送量时,把报文全部发送出去,当报文发送量大于通道发送量时,只发送通道发送量大小的报文,然后发送下一个发送通道的报文,第S个发送通道发送完再次发送第一个发送通道的报文,这样循环往复,直到所有通道的报文全部发送完;所述报文随机分配是根据报文的源地址、目的地址、源端口号、目的端口号、协议类型、接口ID作为随机算法的输入算出与S个发送通道中对应通道的数值,根据该数值将报文送入相应的发送通道;当发送完第二类业务的时候,进行处理第三类业务;
对于第三类业务,设报文优先级为T个,对应地设置T个发送通道,通道i的权重为ci,i=1,2,…,T,通道i占用的带宽为C是服务器回应客户端报文所在的下行链路总带宽,报文根据优先级送入相应的发送通道,按照优先级高低的顺序发送;R、S、T均为大于等于2的自然数。
进一步的,每个服务器网关与客户端网关的TCP连接分配待发送缓冲区和已发送缓冲区,对于每个所述TCP连接,服务器网关将待发送缓冲区的数据报文发送,发送后的数据报文缓存于已发送缓冲区,用于以备出错时重传;
当服务器网关从服务器接收的数据的速率大于服务器网关向卫星链路发送数据的速率时,服务器网关基于待发送缓冲区和已发送缓冲区进行流量控制,所述流量控制具体是:
当待发送缓冲区满时,设置待发送缓冲区禁止发送标识,禁止从与服务器的TCP连接接收报文;当待发送缓冲区的数据报文减少到缓存阈值A1之下时,重新开始从与服务器的TCP连接接收数据;缓存阈值A1大于等于零,小于待发送缓冲区的最大值;
当已发送缓冲区满时,设置已发送缓冲区禁止发送标识,服务器网关不再向卫星链路发送数据;当已发送缓冲区的数据报文减小到缓存阈值A2之下时,服务器网关重新开始向卫星链路发送数据,其中,缓存阈值A2大于等于零,小于已发送缓冲区的最大值。
进一步的,客户端网关与服务器网关建立连接后,在发送数据的过程中,服务器网关需要客户端网关确认接收的数据报文,服务器网关还执行以下步骤:
接收确认报发送的步骤;该步骤中,服务器网关每发送N个下行数据报文,在最后一个下行数据报文中增加接收确认报文发送给客户端网关;
接收回复报文接收的步骤;该步骤中,服务器网关从客户端网关接收到带有接收回复报文的上行数据报文或者单独的接收回复报文,清除已发送缓冲区缓存的数据报文;
其中,N=(Cs/Ms-Cx/Mx)/(Cx/Mx),式中,Cs为上行链路带宽,Ms为上行确认报文大小,Cx为下行链路带宽,Mx为下行数据报文大小。
本发明还提供了一种用于不对称卫星的TCP报文传输性能增强方法,包括客户端网关和服务器网关,在靠近客户端设备一侧的每个卫星链路接入点配置客户端网关,在靠近服务器设备一侧的卫星链路接入点配置服务器网关,客户端与客户端网关之间、服务器和服务器网关之间的地面链路采用标准TCP协议;其中,
客户端网关采用相应的TCP报文传输性能增强方法,同时服务器网关采用相应的TCP报文传输性能增强方法。
本发明还提供了一种用于不对称卫星的TCP报文传输性能增强系统,包括客户端网关和服务器网关,在靠近客户端设备一侧的每个卫星链路接入点配置客户端网关,在靠近服务器设备一侧的卫星链路接入点配置服务器网关,客户端与客户端网关之间、服务器和服务器网关之间的地面链路采用标准TCP协议;其中,
客户端网关执行相应的TCP报文传输性能增强方法,同时服务器网关执行相应的TCP报文传输性能增强方法。
本发明还提供了一种TCP报文传输性能增强平台,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行所述的用于不对称卫星网络客户端网关的TCP报文传输性能增强方法,或者能够执行所述的用于不对称卫星网络服务器网关的TCP报文传输性能增强方法,或者能够执行所述的用于不对称卫星的TCP报文传输性能增强方法。
本发明还提供了一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现所述用于不对称卫星网络客户端网关的TCP报文传输性能增强方法,或者实现所述的用于不对称卫星网络服务器网关的TCP报文传输性能增强方法,或者实现所述的用于不对称卫星的TCP报文传输性能增强方法。
有益效果
本发明加快了卫星链路两个网关的建立过程,缩短因为长时延而带来的连接等待时间;本发明采用的带宽分配机制使得时延敏感、带宽敏感和无敏感型业务都能够得到适合自身业务特点的带宽分配,最大限度地保证了每种业务的公平性。本发明的流量控制能够避免卫星链路上产生拥塞和报文丢失。本发明采用了基于发送方主动请求的接收确认机制,避免了TCP协议频繁的报文确认会导致卫星链路中确认报文拥塞,并且提高了整个系统的传输性能。本发明在具有长时延和上下行带宽不对称的卫星网络环境中其性能优于标准TCP协议,下行卫星链路的带宽资源能够得到充分利用。
附图说明
图1为现有技术中TCP欺骗示意图。
图2为现有技术中TCP分段示意图。
图3为本发明的网络结构图。
图4为本发明中的带宽分配调度图。
图5为本发明方法中客户端网关和服务器网关的通信过程示意图。
图6为本发明方法中服务器网关监控确认报文的过程示意图。
图7为本发明的TCP报文传输性能增强平台的组成框图。
具体实施方式
下面结合附图对本发明的具体实施方式进行详细的说明。
本发明的目的是提升TCP报文在卫星网络中的传输性能,因而了提出了一套适用于无线和有线混合上下行不对称卫星网络的TCP报文传输性能增强方法和装置,本发明采用新的流量控制算法并对卫星网络传输性能做了优化,提高网络中卫星下行链路的吞吐量和带宽资源利用率。本发明在卫星链路两侧接入点各设置一个网关,从而将一条TCP连接分为3段;网关两侧的地面链路上仍采用标准的TCP协议,两个网关之间使用了本发明所设计的传输性能增强方法。本发明除考虑了网关之间卫星网络通信的优化问题外,还不需要对终端节点的协议栈做改动,因此兼容性好,便于实际应用。
实施例1
本实施例用于详细说明本发明用于不对称卫星网络客户端网关、服务器网关的TCP报文传输性能增强方法。
1)网络结构
卫星网络结构如图3所示,客户端通过非对称卫星网络连接Internet互联网,访问其上的服务器资源。在靠近客户端的一侧每个卫星地面站配置一个接入网关(客户端网关1~客户端网关n);在靠近服务器一侧的卫星地面站配置一个服务器网关,称为服务器网关。本发明的传输增强方法是在客户端网关1~n和服务器网关之间完成的,该方法是双向交互的,从客户端的客户端网关n到服务器网关称为上行链路,从服务器网关到客户端网关n称为下行链路,作为服务器网关,服务器网关可以和多个客户端网关进行交互,多个客户端网关共享同一个下行链路带宽资源。
2)连接建立
为了加快连接建立,本发明方法设计了一种新的连接建立过程,用来缩短长时延带来的连接等待时间。
当客户端向服务器发起TCP连接请求的时候,请求首先被客户端网关截获,在客户端和客户端网关之间建立一条TCP连接。然后客户端网关向服务器网关发送连接请求,并且客户端根据需要开始向其对应的客户端网关发送数据报文。服务器网关收到客户端想服务器发送连接请求后,先与服务器建立TCP连接,然后服务器会立即进入数据传输状态,服务器网关开始把服务器发送的下行数据报文向客户端网关转发,其中,服务器网关会把与客户端网关连接的确认报文放到第一个下行数据报文中,再向客户端网关发送含有确认报文的第一个数据报文。客户端网关收到服务器的第一个下行数据报文后,开始将客户端向服务器发送的上行数据报文发送给服务器网关,其中,在收到服务器网关发送的含有确认报文的第一个下行数据报文后,客户端网关给服务器网关回复再确认信息,再确认信息也放到第一个上行数据报文中进行传输。
从上述过程可以看出,自客户端网关发起连接建立到它收到来自服务器的第一个数据报文时,中间只有一个往返时间(RTT)的等待,与标准TCP连接的3次握手至少需要2个RTT等待时间相比,本方法建立反应速度可提高大约2倍。
由于服务器网关在未收到客户端网关回复的确认就开始传输数据,这样会导致一种情况出现:如果服务器网关向客户端网关发送的确认报文在途中丢失,客户端网关会在超时没有接收到确认报文的情况下重新建立与服务器网关的连接,但是服务器网关不知道这种情况会继续向客户端网关传输数据,为了防止这种情况发生,我们在服务器网关上设置一个时间控制器,当服务器网关向客户端网关发送确认报文时,启动时间控制器,如果该控制器计时超过1.25RTT后,还未收到客户端网关的再确认报文,服务器网关会重新发送确认报文,等待客户端网关回复,如果超过1.25RTT时间还未回复则服务器网关停止发送数据,并终止当前的连接。
3)带宽分配
当服务器到服务器网关之间的TCP连接的总吞吐量大于服务器网关到客户端网关之间的卫星链路固定带宽时,如果在服务器网关到客户端网关n之间的每个连接仍然按照服务器网关到服务器连接接收的速率在卫星链路上进行发送,则肯定会导致卫星链路传输拥塞和TCP报文丢失,从而使卫星链路的传输性能降低。为了解决该问题,本发明方法采用的是在服务器网关处引入带宽分配机制,带宽分配机制首先计算客户端各个连接在卫星链路上的传送速率,然后调用一个合适的带宽分配算法来为每一条连接分配带宽。由于在传输系统运行过程中不断有连接加入和退出,并且每一个连接的速率也随着时间而发生变化,因此该带宽分配算法也应该能够动态适应连接的变化,以保证每一时刻下行链路的带宽利用率都能够达到最优,并且每个连接都能得到较为公平的服务。上述问题可以用数学形式表示如下:
假设服务器回应客户端报文所在的下行链路总带宽为C,在某一时刻T存在n条TCP连接,那么我们需要达到的结果是为每条TCP连接分配带宽C1,C2,……,Cn,并且还需要满足两个条件:和为每条连接分配的带宽保持公平。
如图4所示,我们为满足分配带宽公平性定义为根据报文的优先级分配带宽,优先级越大的报文分配的带宽越大,优先级越小的报文分配的带宽越小,每一个优先级的报文都能够分配到带宽进行传输。针对卫星网络中可能存在的业务类型,我们将其中常见的报文类型分为三种:
第一种:对时延要求高的业务,主要包括交互式实时应用,这种业务需要将网络延迟降到最低;
第二种:对带宽要求高的业务,主要包括大文件分发,这种业务需要满足一定的带宽要求;
第三种,对时延和带宽没有明显要求的,属于尽力交付的业务,比如浏览网页和电子邮件等。
为了满足上述三种业务都能够通过卫星网络传输实现的场景,我们设计了如下的带宽分配调度机制,如下:
a)首先判断业务类型,对于第一种业务,分配四个优先级:P1,P2,P3和P4,优先级顺序是P1>P2>P3>P4,每一个优先级对应一个发送通道,每一个通道都独享整个带宽,优先级越高的报文越先发送,高优先级报文发送完后再发送低优先级的报文,直到所有第一种业务类型的报文全部发送完后,再进行处理第二种业务类型报文。
b)处理第二类业务时,根据报文的源地址、目的地址、源端口号、目的端口号、协议类型、接口ID通过随机算法计算得出的结果发送到10个不同的发送通道;计算每个通道的发送量:本实施例中发送量等于发送通道号数N(1~10)加10后再乘以1000。从第一个通道开始发送,当报文发送量小于通道发送量时,把报文全部发送出去,当报文量大于通道发送量时,只发送通道发送量大小的报文,然后发送N+1通道的报文,这样循环往复,直到所有通道的报文全部发送完。
c)当发送完第二类业务的时候,进行处理第三类业务。该阶段设置8个发送通道,对应待处理报文的8个优先级,1~8优先级的报文对应进入1~8的发送通道。1~8的发送通道分配的带宽权重值依次为100,200,300,400,500,600,700,800,比如,带宽是1000Mb/s,优先级是8的报文进入发送通道8,发送速率是1000×800/(100+200+300+400+500+600+700+800)=222Mb/s。
4)流量控制
为避免当服务器到服务器网关的所有TCP连接的总吞吐量大于服务器网关和各个终端网关的卫星链路的固定带宽时出现的网络拥塞和报文丢失,我们在服务器网关处引入流量控制机制,在服务器网关与各个终端网关的TCP连接分配两个缓冲区,待发送缓冲区和已发送缓冲区,对每一个连接按照上一节计算的传送速率将待发送缓冲区的数据报文发送至卫星链路上,发送后的报文缓存于已发送缓冲区,用于以备出错时重传。
流量控制是通过设置两个流量控制标识来控制数据的收发。首先为待发送缓冲区和已发送缓冲区设置存储上限,待发送缓冲区应该根据服务器网关的实际内存大小进行配置,这里配置待发送缓冲区存储空间为服务器网关内存的30%,已发送缓冲区设置为带宽和时延3倍的乘积。当服务器网关从服务器接收的数据的速率大于服务器网关向卫星链路发送数据的速率时,就需要进行适当的流量控制,以保证待发送缓冲区和已发送缓冲区发生溢出导致丢失数据。当待发送缓冲区满时,设置待发送缓冲区禁止发送标识,禁止从与服务器的TCP连接接收报文;当待发送缓冲区大小减少到最大长度的2/5时,设置待发送缓冲区允许发送标识,重新开始从与服务器的TCP连接接收数据。当已发送缓冲区满时,设置已发送缓冲区禁止发送标识,服务器网关不再向卫星链路发送数据;当已发送缓冲区大小减小到最大长度的2/5时,设置已发送缓冲区允许发送标识,服务器网关重新开始向卫星链路发送数据。
5.接收确认
传统TCP协议要求数据接收方每接收一个报文便对其进行确认,在本发明上下行带宽不对称的网络中,如果每接收一个报文就确认的会导致上行链路中确认报文拥塞,影响发送方正常发送数据。
本发明采用的新确认方式不需要接收方确认接收到的报文,需要发送方主动发送确认报文,然后接收方回复确认,发送方根据确认报文清除已经发送报文缓冲区中缓存的报文。具体的实现过程描述如下:
1)服务器网关每发送N个数据报文,在最后一个数据报文中尾部添加确认消息字段,该字段用于表示需要确认的报文信息;
2)终端网关在接收到第N个数据报文时,解析尾部的确认消息字段,把回复的确认消息封装在发往服务器网关的数据报文的尾部字段中,如果没有回复报文,则构造一个单独的回复报文,向服务器网关回复一个确认消息字段,对之前收到的所有数据报文进行确认;
3)服务器网关在接收到终端网关发送的确认报文后,清除已发送缓冲区缓存的报文。
其中N值应该确保上行链路不发生拥塞,尽量缩短服务器网关等待回复确认的时间。假设上行链路带宽为Cs,上行确认报文大小为Ms,下行链路带宽为Cx,下行数据报文大小为Mx,根据计算得出N=(Cs/Ms-Cx/Mx)/(Cx/Mx)。
实施例2
本实施例用于详细说明本发明用于不对称卫星网络客户端网关的TCP报文传输性能增强方法。
本实施例的用于不对称卫星网络客户端网关的TCP报文传输性能增强方法中,在靠近客户端设备一侧的每个卫星链路接入点配置客户端网关,与卫星链路另一端的服务器网关通信,客户端与客户端网关之间、服务器和服务器网关之间的地面链路采用标准TCP协议。
如图5所示,客户端网关在客户端与服务器进行连接建立的过程中执行以下步骤:
接收第一TCP连接请求的步骤S110;该步骤中,客户端网关接收客户端向服务器发送的第一TCP连接请求;
与客户端建立TCP连接的步骤S120;该步骤中,客户端网关根据第一TCP连接请求,采用标准TCP协议以服务器的身份在客户端和客户端网关之间建立一条TCP连接;
接收客户端数据报文的步骤S130;该步骤中,与客户端建立TCP连接后,客户端网关开始接收客户端向服务器发送的上行数据报文;
向服务器网关转发TCP请求的步骤S140;该步骤中,客户端在与客户端建立TCP连接的同时或者之后,将第一TCP连接请求转发给服务器网关;
转发下行数据报文的步骤S150;该步骤中,客户端网关接收服务器网关转发的下行数据报文并向客户端转发;其中,接收到的第一个下行数据报文中含有确认报文,截取确认报文后再将下行数据报文向客户端转发;
发送上行数据报文和确认报文的步骤S160;该步骤中,在接收到含有确认报文第一个下行数据报文中之后,客户端网关向服务器网关转发上行数据报文;其中,客户端网关将再确认报文添加到客户端发来的第一个上行数据报文中发给服务器网关。
进一步的,客户端网关与服务器网关建立连接后,在发送数据的过程中,服务器网关需要客户端网关确认接收的数据报文,客户端网关还执行以下步骤:
接收确认报文接收的步骤S170,该步骤中,客户端网关在接收带有接收确认报文的下行数据报文;服务器网关每发送N个下行数据报文,在最后一个下行数据报文的尾部增加接收确认报文,该下行数据报文中带有接收确认报文;
接收回复报文发送的步骤S180,该步骤中,客户端网关接收带有接收确认报文的下行数据报文后,截取接收确认报文并将剩余下行数据报文转发给客户端,然后根据接收确认报文把接收回复报文添加到装在发往服务器网关的上行数据报文中发送,如果没有上行数据报文需要发送,则用一个单独的接收回复报文向服务器网关发送,接收回复报文对之前接收到的所有数据报文进行确认。
实施例3
本实施例用于详细说明本发明用于不对称卫星网络服务器网关的TCP报文传输性能增强方法。
本实施例的用于不对称卫星网络服务器网关的TCP报文传输性能增强方法中,在靠近服务器设备一侧的卫星链路接入点配置服务器网关,与卫星链路另一端的客户端网关通信客户端与客户端网关之间、服务器和服务器网关之间的地面链路采用标准TCP协议。
如图5、图6所示,服务器网关在客户端与服务器进行连接建立的过程中执行以下步骤:
接收第一TCP连接请求的步骤S210;该步骤中,服务器网关从客户端网关接收客户端向服务器发送的第一TCP连接请求;
与服务器建立TCP连接的步骤S220;该步骤中,客户端网关根据第一TCP连接请求,采用标准TCP协议以客户端的身份在服务器网关和服务器之间建立一条TCP连接;
转发下行数据报文的步骤S230;该步骤中,与服务器的TCP连接建立后,服务器网关开始接收从服务器发送来的下行数据报文并向客户端网关转发;其中,服务器网关将确认报文放到服务器发送来的第一个下行数据报文中发送给客户端网关;
接收并转发上行数据报文的步骤S240;该步骤中,服务器网关接收客户端网关发来的上行数据报文并向服务器转发;其中,接收到的第一个上行数据报文中含有再确认报文,截取再确认报文后再将上行数据报文向服务器转发;
确认报文监控的步骤S250;该步骤中,向客户端网关发送确认报文时,服务器网关开始计时监控,如果超过a×RTT还未收到客户端网关发送的带有确认报文的上行数据报文,服务器网关会重新发送确认报文并再次计时监控,如果超过a×RTT时间还未收到则服务器网关停止发送数据,并终止该客户端网关的连接,停止数据转发;其中,a为大于1小于2的系数,a的大小视客户端网关和服务器网关的距离、传输带宽等因素决定。RTT是一次服务器网关到客户端网关的往返时间。
进一步的,服务器网关负责带宽分配,所述带宽分配具体是:
预先将卫星链路的业务分为三种,第一种为对时延要求高的业务,第二种为仅对带宽要求高的业务,第三种为对时延和带宽没有明显要求的业务;
服务器网关根据报文判断业务类型,对于第一种业务,根据报文的R个优先级,对应地设置R个发送通道,每一个通道都独享整个带宽C,C是服务器回应客户端报文所在的下行链路总带宽,优先级越高的报文越先发送,高优先级报文发送完后再发送低优先级的报文;直到所有第一种业务类型的报文全部发送完后,再进行处理第二种业务类型报文;
对于第二类业务,设置S个发送通道并给每个发送通道分配相应的通道发送量,报文随机分配到每个发送通道中,从第一个发送通道开始发送,当报文发送量小于通道发送量时,把报文全部发送出去,当报文发送量大于通道发送量时,只发送通道发送量大小的报文,然后发送下一个发送通道的报文,第S个发送通道发送完再次发送第一个发送通道的报文,这样循环往复,直到所有通道的报文全部发送完;所述报文随机分配是根据报文的源地址、目的地址、源端口号、目的端口号、协议类型、接口ID作为随机算法的输入算出与S个发送通道中对应通道的数值,根据该数值将报文送入相应的发送通道;当发送完第二类业务的时候,进行处理第三类业务;
对于第三类业务,设报文优先级为T个,对应地设置T个发送通道,通道i的权重为ci,i=1,2,…,T,通道i占用的带宽为C是服务器回应客户端报文所在的下行链路总带宽,报文根据优先级送入相应的发送通道,按照优先级高低的顺序发送;其中,R、S、T均为大于等于2的自然数。
进一步的,每个服务器网关与客户端网关的TCP连接分配待发送缓冲区和已发送缓冲区,对于每个所述TCP连接,服务器网关将待发送缓冲区的数据报文发送,发送后的数据报文缓存于已发送缓冲区,用于以备出错时重传;
当服务器网关从服务器接收的数据的速率大于服务器网关向卫星链路发送数据的速率时,服务器网关基于待发送缓冲区和已发送缓冲区进行流量控制,所述流量控制具体是:
当待发送缓冲区满时,设置待发送缓冲区禁止发送标识,禁止从与服务器的TCP连接接收报文;当待发送缓冲区的数据报文减少到缓存阈值A1之下时,设置待发送缓冲区允许发送标识,重新开始从与服务器的TCP连接接收数据;缓存阈值A1大于等于零,小于待发送缓冲区的最大值;
当已发送缓冲区满时,设置已发送缓冲区禁止发送标识,服务器网关不再向卫星链路发送数据;当已发送缓冲区的数据报文减小到缓存阈值A2之下时,设置已发送缓冲区允许发送标识,服务器网关重新开始向卫星链路发送数据,其中,缓存阈值A2大于等于零,小于已发送缓冲区的最大值。
进一步的,如图5所示,客户端网关与服务器网关建立连接后,在发送数据的过程中,服务器网关需要客户端网关确认接收的数据报文,服务器网关还执行以下步骤:
接收确认报发送的步骤S260;该步骤中,服务器网关每发送N个下行数据报文,在最后一个下行数据报文中增加接收确认报文发送给客户端网关;
接收回复报文接收的步骤S270;该步骤中,服务器网关从客户端网关接收到带有接收回复报文的上行数据报文或者单独的接收回复报文,清除已发送缓冲区缓存的数据报文;
其中,N=(Cs/Ms-Cx/Mx)/(Cx/Mx),式中,Cs为上行链路带宽,Ms为上行确认报文大小,Cx为下行链路带宽,Mx为下行数据报文大小。
实施例4
本实施例用于详细说明本发明用于不对称卫星的TCP报文传输性能增强方法。
参见图3,本实施例的用于不对称卫星的TCP报文传输性能增强方法,在靠近客户端设备一侧的每个卫星链路接入点配置客户端网关,在靠近服务器设备一侧的卫星链路接入点配置服务器网关,客户端与客户端网关之间、服务器和服务器网关之间的地面链路采用标准TCP协议;其中,客户端网关采用实施例2中TCP报文传输性能增强方法,同时服务器网关采用实施例3的TCP报文传输性能增强方法。
实施例5
本实施例用于详细说明本发明用于不对称卫星的TCP报文传输性能增强系统。
参见图3,本实施例的用于不对称卫星的TCP报文传输性能增强系统包括客户端网关和服务器网关,在靠近客户端设备一侧的每个卫星链路接入点配置客户端网关,在靠近服务器设备一侧的卫星链路接入点配置服务器网关,客户端与客户端网关之间、服务器和服务器网关之间的地面链路采用标准TCP协议;其中,客户端网关按照实施例2中的TCP报文传输性能增强方法进行TCP报文传输性能增强,服务器网关按照实施例3中的TCP报文传输性能增强方法进行TCP报文传输性能增强。
实施例6
如图7所示,本发明第三实施方式涉及一种TCP报文传输性能增强平台,包括至少一个处理器,以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行实施例2中的用于不对称卫星网络客户端网关的TCP报文传输性能增强方法,或者实施例3中的用于不对称卫星网络服务器网关的TCP报文传输性能增强方法,或者实施4中的用于不对称卫星网络的TCP报文传输性能增强方法。
其中,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以通过接口将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的。接口在总线和收发机之间提供接口,例如通信接口、用户接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。
处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。
实施例6
本发明第四实施方式涉及一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例。
本领域技术人员通过上述说明可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括但不限于U盘、移动硬盘、磁性存储器、光学存储器等各种可以存储程序代码的介质。
综上所述,本发明公开了一种适用于上下行链路不对称卫星网络的TCP报文传输性能增强方法,并对其所适用的网络结构和方法实现中的连接建立、带宽分配、流量控制和接收确认等关键技术进行了详细说明,在具有长时延和上下行带宽不对称的卫星网络环境中其性能优于标准TCP协议,下行卫星链路的带宽资源能够得到充分利用。本发明良好地解决了现有TCP协议报文在卫星链路上传输的一些缺点和问题。
本发明为加快卫星链路两个网关的建立过程,缩短因为长时延而带来的连接等待时间,设计的连接建立机制自客户端网关发起连接建立到它收到来自服务器的第一个数据报文时,中间只有一个往返时间(RTT)的等待,与标准TCP连接的3次握手至少需要2个RTT等待时间相比,本发明建立反应速度可提高大约2倍。
本发明采用的带宽分配机制是基于三种类型的报文分别设计的带宽分配方案,使得时延敏感、带宽敏感和无敏感型业务都能够得到适合自身业务特点的带宽分配,也最大的保证了每种业务的公平性。
本发明的流量控制,能够避免当服务器网关和服务器之间的TCP连接的总吞吐量大于服务器网关和客户端网关之间卫星链路的固定带宽时在卫星链路上产生的拥塞和报文丢失问题。本发明的流量控制根据通过设置两个流量控制标识来控制数据的收发,流量控制使得服务器网关和各个客户端网关不至于因为不同节点之间的速率不一样导致缓冲区溢出进而丢失数据。
TCP协议要求数据接收方每接收一个报文便对其进行确认,在上下行不对称的网络中,频繁的报文确认会导致上行链路中确认报文的拥塞,本发明采用了基于发送方主动请求的接收确认机制,不需要根据接收方的确认使得发送方持续正常发送数据,但会要求发送方对发送的报文报文进行确认请求,并需要接收方进行接收确认。这种机制在上下行带宽不对称的卫星网络中,不仅不会导致上行链路被大量确认报文拥塞,从而影响链路上数据的正常收发,反而提高了整个系统的传输性能。
以上仅为发明的优选实施例而已,并不用以限制本发明,凡在本发明的思想原则内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种用于不对称卫星网络客户端网关的TCP报文传输性能增强方法,其特征在于,在靠近客户端设备一侧的每个卫星链路接入点配置客户端网关,与卫星链路另一端的服务器网关通信,客户端与客户端网关之间、服务器和服务器网关之间的地面链路采用标准TCP协议;
客户端网关在客户端与服务器进行连接建立的过程中执行以下步骤:
接收第一TCP连接请求的步骤;该步骤中,客户端网关接收客户端向服务器发送的第一TCP连接请求;
与客户端建立TCP连接的步骤;该步骤中,客户端网关根据第一TCP连接请求,采用标准TCP协议以服务器的身份在客户端和客户端网关之间建立一条TCP连接;
接收客户端数据报文的步骤;该步骤中,与客户端建立TCP连接后,客户端网关开始接收客户端向服务器发送的上行数据报文;
向服务器网关转发TCP请求的步骤;该步骤中,客户端在与客户端建立TCP连接的同时或者之后,将第一TCP连接请求转发给服务器网关;
转发下行数据报文的步骤;该步骤中,客户端网关接收服务器网关转发的下行数据报文并向客户端转发;其中,接收到的第一个下行数据报文中含有确认报文,截取确认报文后再将下行数据报文向客户端转发;
发送上行数据报文和确认报文的步骤;该步骤中,在接收到含有确认报文第一个下行数据报文中之后,客户端网关向服务器网关转发上行数据报文;其中,客户端网关将再确认报文添加到客户端发来的第一个上行数据报文中发给服务器网关。
2.如权利要求1所述的用于不对称卫星网络客户端网关的TCP报文传输性能增强方法,其特征在于,客户端网关与服务器网关建立连接后,在发送数据的过程中,服务器网关需要客户端网关确认接收的数据报文,客户端网关还执行以下步骤:
接收确认报文接收的步骤,该步骤中,客户端网关在接收带有接收确认报文的下行数据报文;服务器网关每发送N个下行数据报文,在最后一个下行数据报文的尾部增加接收确认报文,该下行数据报文中带有接收确认报文;
接收回复报文发送的步骤,该步骤中,客户端网关接收带有接收确认报文的下行数据报文后,截取接收确认报文并将剩余下行数据报文转发给客户端,然后根据接收确认报文把接收回复报文添加到装在发往服务器网关的上行数据报文中发送,如果没有上行数据报文需要发送,则用一个单独的接收回复报文向服务器网关发送,接收回复报文对之前接收到的所有数据报文进行确认。
3.一种用于不对称卫星网络服务器网关的TCP报文传输性能增强方法,其特征在于,在靠近服务器设备一侧的卫星链路接入点配置服务器网关,与卫星链路另一端的客户端网关通信客户端与客户端网关之间、服务器和服务器网关之间的地面链路采用标准TCP协议;并且,
服务器网关在客户端与服务器进行连接建立的过程中执行以下步骤:
接收第一TCP连接请求的步骤;该步骤中,服务器网关从客户端网关接收客户端向服务器发送的第一TCP连接请求;
与服务器建立TCP连接的步骤;该步骤中,客户端网关根据第一TCP连接请求,采用标准TCP协议以客户端的身份在服务器网关和服务器之间建立一条TCP连接;
转发下行数据报文的步骤;该步骤中,与服务器的TCP连接建立后,服务器网关开始接收从服务器发送来的下行数据报文并向客户端网关转发;其中,服务器网关将确认报文放到服务器发送来的第一个下行数据报文中发送给客户端网关;
接收并转发上行数据报文的步骤;该步骤中,服务器网关接收客户端网关发来的上行数据报文并向服务器转发;其中,接收到的第一个上行数据报文中含有再确认报文,截取再确认报文后再将上行数据报文向服务器转发;
确认报文监控的步骤;该步骤中,向客户端网关发送确认报文时,服务器网关开始计时监控,如果超过a×RTT还未收到客户端网关的再确认报文,服务器网关会重新发送确认报文并再次计时监控,如果超过a×RTT时间还未回复则服务器网关停止发送数据,并终止该客户端网关的连接,停止数据转发;其中,a为大于1小于2的系数,RTT是一次服务器网关到客户端网关的往返时间。
4.如权利要求3所述的用于不对称卫星网络服务器网关的TCP报文传输性能增强方法,其特征在于,服务器网关负责带宽分配,所述带宽分配具体是:
预先将卫星链路的业务分为三种,第一种为对时延要求高的业务,第二种为对带宽要求高的业务,第三种为对时延和带宽没有明显要求的业务;
服务器网关根据报文判断业务类型,对于第一种业务,根据报文的R个优先级,对应地设置R个发送通道,每一个通道都独享整个带宽C,C是服务器回应客户端报文所在的下行链路总带宽,优先级越高的报文越先发送,高优先级报文发送完后再发送低优先级的报文;直到所有第一种业务类型的报文全部发送完后,再进行处理第二种业务类型报文;
对于第二类业务,设置S个发送通道并给每个发送通道分配相应的通道发送量,报文随机分配到每个发送通道中,从第一个发送通道开始发送,当报文发送量小于通道发送量时,把报文全部发送出去,当报文发送量大于通道发送量时,只发送通道发送量大小的报文,然后发送下一个发送通道的报文,第S个发送通道发送完再次发送第一个发送通道的报文,这样循环往复,直到所有通道的报文全部发送完;所述报文随机分配是根据报文的源地址、目的地址、源端口号、目的端口号、协议类型、接口ID作为随机算法的输入算出与S个发送通道中对应通道的数值,根据该数值将报文送入相应的发送通道;当发送完第二类业务的时候,进行处理第三类业务;
5.如权利要求3或4所述的用于不对称卫星网络服务器网关的TCP报文传输性能增强方法,其特征在于,
每个服务器网关与客户端网关的TCP连接分配待发送缓冲区和已发送缓冲区,对于每个所述TCP连接,服务器网关将待发送缓冲区的数据报文发送,发送后的数据报文缓存于已发送缓冲区,用于以备出错时重传;
当服务器网关从服务器接收的数据的速率大于服务器网关向卫星链路发送数据的速率时,服务器网关基于待发送缓冲区和已发送缓冲区进行流量控制,所述流量控制具体是:
当待发送缓冲区满时,设置待发送缓冲区禁止发送标识,禁止从与服务器的TCP连接接收报文;当待发送缓冲区的数据报文减少到缓存阈值A1之下时,重新开始从与服务器的TCP连接接收数据;缓存阈值A1大于等于零,小于待发送缓冲区的最大值;
当已发送缓冲区满时,设置已发送缓冲区禁止发送标识,服务器网关不再向卫星链路发送数据;当已发送缓冲区的数据报文减小到缓存阈值A2之下时,服务器网关重新开始向卫星链路发送数据,其中,缓存阈值A2大于等于零,小于已发送缓冲区的最大值。
6.如权利要求5所述的用于不对称卫星网络服务器网关的TCP报文传输性能增强方法,其特征在于,客户端网关与服务器网关建立连接后,在发送数据的过程中,服务器网关需要客户端网关确认接收的数据报文,服务器网关还执行以下步骤:
接收确认报发送的步骤;该步骤中,服务器网关每发送N个下行数据报文,在最后一个下行数据报文中增加接收确认报文发送给客户端网关;
接收回复报文接收的步骤;该步骤中,服务器网关从客户端网关接收到带有接收回复报文的上行数据报文或者单独的接收回复报文,清除已发送缓冲区缓存的数据报文;
其中,N=(Cs/Ms-Cx/Mx)/(Cx/Mx),式中,Cs为上行链路带宽,Ms为上行确认报文大小,Cx为下行链路带宽,Mx为下行数据报文大小。
7.一种用于不对称卫星的TCP报文传输性能增强方法,其特征在于包括客户端网关和服务器网关,在靠近客户端设备一侧的每个卫星链路接入点配置客户端网关,在靠近服务器设备一侧的卫星链路接入点配置服务器网关,客户端与客户端网关之间、服务器和服务器网关之间的地面链路采用标准TCP协议;其中,
客户端网关采用如权利要求1所述的TCP报文传输性能增强方法,同时服务器网关采用权利要求3-5任一项所述的TCP报文传输性能增强方法;或者,
客户端网关采用如权利要求2所述的TCP报文传输性能增强方法,同时服务器网关采用如权利要求6所述的TCP报文传输性能增强方法。
8.一种用于不对称卫星的TCP报文传输性能增强系统,其特征在于包括客户端网关和服务器网关,在靠近客户端设备一侧的每个卫星链路接入点配置客户端网关,在靠近服务器设备一侧的卫星链路接入点配置服务器网关,客户端与客户端网关之间、服务器和服务器网关之间的地面链路采用标准TCP协议;其中,
客户端网关执行如权利要求1所述的TCP报文传输性能增强方法,同时服务器网关执行如权利要求3-5任一项所述的TCP报文传输性能增强方法;或者,
客户端网关执行如权利要求2所述的TCP报文传输性能增强方法,同时服务器网关执行如权利要求6所述的TCP报文传输性能增强方法。
9.一种TCP报文传输性能增强平台,其特征在于包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至2中任一项所述的用于不对称卫星网络客户端网关的TCP报文传输性能增强方法,或者能够执行如权利要求3-6任一项所述的用于不对称卫星网络服务器网关的TCP报文传输性能增强方法,或者能够执行如权利要求7所述的用于不对称卫星的TCP报文传输性能增强方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至2中用于不对称卫星网络客户端网关的TCP报文传输性能增强方法,或者实现权利要求3-6任一项所述的用于不对称卫星网络服务器网关的TCP报文传输性能增强方法,或者实现如权利要求7所述的用于不对称卫星的TCP报文传输性能增强方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310164302.1A CN116346955A (zh) | 2023-02-24 | 2023-02-24 | 不对称卫星网络的tcp报文传输性能增强方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310164302.1A CN116346955A (zh) | 2023-02-24 | 2023-02-24 | 不对称卫星网络的tcp报文传输性能增强方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116346955A true CN116346955A (zh) | 2023-06-27 |
Family
ID=86879913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310164302.1A Pending CN116346955A (zh) | 2023-02-24 | 2023-02-24 | 不对称卫星网络的tcp报文传输性能增强方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116346955A (zh) |
-
2023
- 2023-02-24 CN CN202310164302.1A patent/CN116346955A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10237153B2 (en) | Packet retransmission method and apparatus | |
JP7396768B2 (ja) | グラントフリー伝送のためのアップリンクデータスケジューリングのためのシステムおよび方法 | |
KR100839267B1 (ko) | 확률적 피드백을 이용하여 멀티캐스트 컨텐트의 전달을최적화하기 위한 방법 및 장치 | |
US20170099675A1 (en) | Method for transmitting data packets switched between a random access channel (rach) and a demand assigned multiple access (dama) channel | |
US20030123394A1 (en) | Flow control between performance enhancing proxies over variable bandwidth split links | |
US20060026296A1 (en) | Methods and apparatus for optimum file transfers in a time-varying network environment | |
KR100809019B1 (ko) | 이동통신 시스템에서의 룩-어헤드 대역 요구 방법 및 그방법을 수행하는 이동 단말기 | |
US20060291395A1 (en) | Packet transmission control method and apparatus | |
US20090013088A1 (en) | Data Communication Method, Data Communication System and Program | |
US7675898B2 (en) | Session relay apparatus for relaying data, and a data relaying method | |
US7359326B1 (en) | Method for splitting data and acknowledgements in a TCP session | |
US7197313B1 (en) | Method for allocating wireless resource in wireless communication system | |
EP3726787B1 (en) | Data stream sending method, device and system | |
KR102111029B1 (ko) | 다중망 병합 전송 장치, 그리고 이의 패킷 스케줄링 방법 | |
CN108199814B (zh) | 数据传输方法及装置 | |
JP2000312212A (ja) | ネットワークリソースの効率的な使用のためのネットワーク要素の遅延割当 | |
CN105228181B (zh) | 一种基于ap优化tcp连接的方法、ap和系统 | |
CN116346955A (zh) | 不对称卫星网络的tcp报文传输性能增强方法和系统 | |
US7672279B2 (en) | Methods for dynamic radio resource management and link control | |
CN117813595A (zh) | 用于远程直接存储器访问的设备和方法 | |
US7154850B1 (en) | Wireless data transmission using time out control | |
JP2002247063A (ja) | パケット多重化方式 | |
GB2414637A (en) | Data transmission method using a transmission time threshold | |
US9172774B2 (en) | Technique for managing communications at a router | |
JP2006087010A (ja) | 通信路制御装置およびそれを用いたネットワークシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |