基于TCP连接数量动态调节的高并发TCP应用拥塞控制方法技术

技术编号:20493528 阅读:20 留言:0更新日期:2019-03-02 23:23
本发明专利技术公开了基于TCP连接数量动态调节的高并发TCP应用拥塞控制方法,属于计算机通信网络技术领域,解决高并发TCP应用在数据发送或接收端引发严重拥塞,从而导致应用吞吐量急剧下降的问题。根据网络带宽容量和网络中单条TCP连接平均传输速率,计算其并发TCP连接数量上限的初始值;根据并发TCP连接数量上限的初始值,新建对应数量的并发TCP连接;根据并发TCP连接的状态,动态调节并发TCP连接数量上限;根据调节后的并发TCP连接数量上限和当前并发TCP连接的数量,新建对应数量的并发TCP连接,完成对高并发TCP应用的拥塞控制。

Congestion Control Method for High Concurrent TCP Applications Based on Dynamic Regulation of the Number of TCP Connections

The invention discloses a congestion control method for high concurrent TCP applications based on dynamic regulation of the number of TCP connections, which belongs to the field of computer communication network technology, and solves the problem of severe congestion caused by high concurrent TCP applications in data sending or receiving terminals, resulting in a sharp drop in application throughput. According to the network bandwidth capacity and the average transmission rate of a single TCP connection in the network, the initial value of the upper limit of the number of concurrent TCP connections is calculated; according to the initial value of the upper limit of the number of concurrent TCP connections, the corresponding number of concurrent TCP connections is newly established; according to the state of concurrent TCP connections, the upper limit of the number of concurrent TCP connections is dynamically adjusted; according to the upper limit of the number of concur The number of connections, new corresponding number of concurrent TCP connections, complete congestion control for high concurrent TCP applications.

【技术实现步骤摘要】
基于TCP连接数量动态调节的高并发TCP应用拥塞控制方法
本专利技术涉及计算机通信网络,具体涉及基于TCP连接数量动态调节的高并发TCP应用拥塞控制方法。
技术介绍
随着分布式计算及存贮技术的快速发展,高并发TCP应用在计算机通信网络中得到了广泛部署。这类应用通过建立并发TCP连接同时从大量数据源获取信息,然后将这些信息汇总以进行下一步处理。例如,在电力系统保护通信专网中,保护主站需要定期从海量电力接入终端读取设备日志,然后根据汇总数据判定电网的运行状态;在数据中心中,搜索应用会将搜索任务分解为子任务并分配给数百个服务器处理,然后再汇总这些服务器的处理结果以得出最终的搜索结果。但是,高并发TCP业务具有突发大流量的特点,极易在数据发送端或接收端造成严重拥塞。在极端拥塞情况下,大量并发TCP连接由于丢包过多而陷入超时重传状态,即TCP连接在一段时间内暂停发送数据包(默认值为200ms)。这将大幅降低TCP传输速率,并最终影响应用的整体通信性能。通过控制高并发TCP的拥塞程度,可以有效解决高并发TCP应用因严重拥塞而面临的通信性能下降的问题。根据这一思路,研究者们提出了许多针对高并发TCP的拥塞控制方法。但是,这些方法都是基于网络设备或传输控制协议的拥塞控制方法,必须对网络硬件或终端操作系统进行实质性的修改,需要耗费大量的人力、物力,因此难以在现实网络中实现快速、大规模部署。
技术实现思路
本专利技术为了解决现有技术的缺陷和不足,提供基于TCP连接数量动态调节的高并发TCP应用拥塞控制方法,在不修改网络硬件或终端操作系统的前提下,通过动态调节TCP连接数量的方式将网络拥塞程度控制在合理范围之内;本专利技术一方面充分利用网络带宽容量,另一方面避免高并发TCP应用在传输数据时造成严重网络拥塞,从而有效提高应用的通信性能。本专利技术通过下述技术方案实现:基于TCP连接数量动态调节的高并发TCP应用拥塞控制方法,包括以下步骤:S1、通过网络带宽容量和网络中单条TCP连接的平均传输速率,计算高并发TCP应用的并发TCP连接数量上限的初始值;S2、根据步骤S1中计算所得的并发TCP连接数量上限的初始值,建立对应数量的并发TCP连接;S3、根据步骤S2中所述的并发TCP连接的状态,动态调节并发TCP连接数量上限;S4、根据步骤S3中所述动态调节后的并发TCP连接数量上限和当前并发TCP连接数量,重新建立对应的数量的并发TCP连接,完成对高并发TCP应用的拥塞控制。进一步的,所述步骤S1中所述高并发TCP应用的TCP连接数量上限的初始值的计算公式如下:n0=max{1,C/X}其中,n0为高并发TCP应用的TCP连接数量上限的初始值,C为网络带宽容量,X为网络中单条TCP连接的平均传输速率。进一步的,所述步骤S2的具体步骤包括:S2-1、若n0<N,新建n0条并发TCP连接,其中n0为步骤S1中所得的高并发TCP应用的TCP连接数量上限的初始值,N为高并发TCP应用所需建立TCP连接的总数;S2-2、若n0≥N,新建N条并发TCP连接。进一步的,所述步骤S3的具体步骤包括:S3-1、获取步骤S2中已建立的并发TCP连接的状态,包括数据包传输成功、TCP连接完成数据传输以及TCP连接发生超时重传;S3-2、当一条TCP连接完成数据传输,推断是否有TCP连接处于严重拥塞状态,判断方法为:对于某条尚未完成数据传输的TCP连接,若在其上一次成功传输数据包后,有三条在其之后建立的TCP连接已完成数据传输,则判定该TCP连接处于严重拥塞状态;S3-3、若没有TCP连接处于严重拥塞状态,则加性增加并发TCP连接数量上限,公式如下:其中n为并发TCP连接数量上限;S3-4、若发现有TCP连接处于严重拥塞状态,则乘性减少并发TCP连接数量上限,公式如下:其中n为并发TCP连接数量上限;S3-5、若有TCP连接发生超时重传,则将并发TCP连接数量上限重置为初始值,公式如下:n=n0其中n为并发TCP连接数量上限,n0为步骤1中所得并发TCP连接数量上限的初始值。进一步的,所述步骤S4的具体步骤包括:S4-1、若n*<n,则新建n-n*条并发TCP连接,其中n*为已建立且未完成的并发TCP连接数量,n为步骤S3中所得的并发TCP连接数量上限;S4-2、若n*≥n,则暂不新建并发TCP连接;S4-3、跳转至步骤S3。本专利技术与现有技术相比,具有如下的优点和有益效果:1、本专利技术将并发TCP应用的拥塞程度控制在合理范围内,在有效避免并发TCP过度拥塞的前提下充分利用网络带宽容量,从而显著提升高并发TCP应用的通信性能,在典型的数据中心高并发TCP通信场景中(高并发TCP应用的瓶颈链路带宽容量为1Gbps,端到端往返传输时延小于1ms,数据源数量为1000个),本专利技术将应用有效吞吐量平均提高10倍以上,端到端往返时延平均降低80%以上;2、本专利技术对并发TCP连接数量的动态调节通过应用层软件方式实现,只需要对高并发TCP应用进行软件升级,不需要对网络设备或终端操作系统进行修改,不影响现有业务的运行,部署成本较低且简单快捷。附图说明此处所说明的附图用来提供对本专利技术实施例的进一步理解,构成本申请的一部分,并不构成对本专利技术实施例的限定。在附图中:图1为本专利技术流程示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本专利技术作进一步的详细说明,本专利技术的示意性实施方式及其说明仅用于解释本专利技术,并不作为对本专利技术的限定。实施例如图1所示,基于TCP连接数量动态调节的高并发TCP应用拥塞控制方法,包括以下步骤:S1、通过网络带宽容量和网络中单条TCP连接的平均传输速率,计算高并发TCP应用的并发TCP连接数量上限的初始值;所述步骤S1中所述高并发TCP应用的TCP连接数量上限的初始值的计算公式如下:n0=max{1,C/X}其中,n0为高并发TCP应用的TCP连接数量上限的初始值,C为网络带宽容量,X为网络中单条TCP连接的平均传输速率。在本实施例中,已知网络带宽容量C=1Gbps,单条TCP连接平均传输速率X=0.5Gbps,则并发TCP连接数量上限的初始值为n0=max{1,C/X}=max{1,1Gbps/0.5Gbps}=2上式取1和C/X中较大者,因此保证了并发TCP连接数量上限的初始值n0不会低于1。S2、根据步骤S1中计算所得的并发TCP连接数量上限的初始值,建立对应数量的并发TCP连接;所述步骤S2的具体步骤包括:S2-1、若n0<N,新建n0条并发TCP连接,其中n0为步骤S1中所得的高并发TCP应用的TCP连接数量上限的初始值,N为高并发TCP应用所需建立TCP连接的总数;在本实施例中,设并发TCP连接数量上限的初始值n0=2,高并发TCP应用所需建立TCP连接的总数N=1000,则新建2条并发TCP连接;S2-2、若n0≥N,新建N条并发TCP连接;在本实施例中,设并发TCP连接数量上限的初始值n0=10,高并发TCP应用所需建立TCP连接的总数N=5,则新建5条并发TCP连接。S3、根据步骤S2中所述的并发TCP连接的状态,动态调节并发TCP连接数量上限;所述步骤S3的具体步骤包括:S3-1、获取步骤S2中已建立的并发本文档来自技高网...

【技术保护点】
1.基于TCP连接数量动态调节的高并发TCP应用拥塞控制方法,其特征在于,包括以下步骤:S1、通过网络带宽容量和网络中单条TCP连接的平均传输速率,计算高并发TCP应用的并发TCP连接数量上限的初始值;S2、根据步骤S1中计算所得的并发TCP连接数量上限的初始值,建立对应数量的并发TCP连接;S3、根据步骤S2中所述的并发TCP连接的状态,动态调节并发TCP连接数量上限;S4、根据步骤S3中所述动态调节后的并发TCP连接数量上限和当前并发TCP连接数量,重新建立对应的数量的并发TCP连接,完成对高并发TCP应用的拥塞控制。

【技术特征摘要】
1.基于TCP连接数量动态调节的高并发TCP应用拥塞控制方法,其特征在于,包括以下步骤:S1、通过网络带宽容量和网络中单条TCP连接的平均传输速率,计算高并发TCP应用的并发TCP连接数量上限的初始值;S2、根据步骤S1中计算所得的并发TCP连接数量上限的初始值,建立对应数量的并发TCP连接;S3、根据步骤S2中所述的并发TCP连接的状态,动态调节并发TCP连接数量上限;S4、根据步骤S3中所述动态调节后的并发TCP连接数量上限和当前并发TCP连接数量,重新建立对应的数量的并发TCP连接,完成对高并发TCP应用的拥塞控制。2.根据权利要求1所述的基于TCP连接数量动态调节的高并发TCP应用拥塞控制方法,其特征在于,所述步骤S1中所述高并发TCP应用的TCP连接数量上限的初始值的计算公式如下:n0=max{1,C/X}其中,n0为高并发TCP应用的TCP连接数量上限的初始值,C为网络带宽容量,X为网络中单条TCP连接的平均传输速率。3.根据权利要求1所述的基于TCP连接数量动态调节的高并发TCP应用拥塞控制方法,其特征在于,所述步骤S2的具体步骤包括:S2-1、若n0<N,新建n0条并发TCP连接,其中n0为步骤S1中所得的高并发TCP应用的TCP连接数量上限的初始值,N为高并发TCP应用所需建立TCP连接的总数;S2-2、若n0≥N,新建N条并发TCP连接。4.根据权利要求1所述的基于TCP...

【专利技术属性】
技术研发人员:罗劲瑭肖行诠陈一鸣姚实颖李均华芶继军高栋梁周惟婧祝和春余葭苇骆韬锐
申请(专利权)人:国网四川省电力公司经济技术研究院
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1