CN106789702B - 控制tcp传输性能的方法及装置 - Google Patents

控制tcp传输性能的方法及装置 Download PDF

Info

Publication number
CN106789702B
CN106789702B CN201611265038.7A CN201611265038A CN106789702B CN 106789702 B CN106789702 B CN 106789702B CN 201611265038 A CN201611265038 A CN 201611265038A CN 106789702 B CN106789702 B CN 106789702B
Authority
CN
China
Prior art keywords
network
retransmission
congestion
lost
current
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
CN201611265038.7A
Other languages
English (en)
Other versions
CN106789702A (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.)
Guangzhou Cubesili Information Technology Co Ltd
Original Assignee
Guangzhou Huaduo Network 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 Guangzhou Huaduo Network Technology Co Ltd filed Critical Guangzhou Huaduo Network Technology Co Ltd
Priority to CN201611265038.7A priority Critical patent/CN106789702B/zh
Publication of CN106789702A publication Critical patent/CN106789702A/zh
Application granted granted Critical
Publication of CN106789702B publication Critical patent/CN106789702B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/08Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

本申请公开了一种控制TCP传输性能的方法及装置,所述方法包括:在进入快速恢复阶段时,获取与当前的拥塞窗口成正比关系的减小比例,并以获取的减小比例缩小所述拥塞窗口;控制TCP传输性能的任一阶段需要重传时,如果网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值,对关键丢失包进行重传,其中,所述关键丢失包为引起拥塞窗口变小的丢失数据包;如果所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值,分别对可能丢失的数据包和所述关键丢失包进行重传。实施本申请,能够提高TCP传输性能。

Description

控制TCP传输性能的方法及装置
技术领域
本申请涉及计算机技术领域,尤其涉控制TCP传输性能的方法及装置。
背景技术
TCP(Transmission Control Protocol,传输控制协议)利用序号的确认以及重传机制,提供数据流的可靠传输。而TCP本身的传输机制的设计年代比较久远,很大程度是基于当时设计时的网络设施以及环境来考虑设计的,需要对不同网络的状况具备良好自适应性。
但是,在当前网络高速发展的环境下,当网络偶尔抖动、有一定丢包、或延迟时,TCP的传输性能会急剧下降,很容易引起传输连接的延迟或阻塞,无法很好满足当前的业务需求。
发明内容
本申请提供控制TCP传输性能的方法及装置,能够有效提高TCP传输性能,满足当前的业务需求。
根据本申请实施例的第一方面,提供一种控制TCP传输性能的方法,包括以下步骤:
在进入快速恢复阶段时,获取与当前的拥塞窗口成正比关系的减小比例,并以获取的减小比例缩小所述拥塞窗口;
控制TCP传输性能的任一阶段需要重传时,如果网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值,对关键丢失包进行重传,其中,所述关键丢失包为引起拥塞窗口变小的丢失数据包;如果所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值,分别对可能丢失的数据包和所述关键丢失包进行重传。
在一个实施例中,所述方法还包括以下步骤:
在慢启动阶段,如果所述网络处于非拥塞状态,控制当前的拥塞窗口随着所述网络的往返时延按预设的第一指数函数指数增长,其中,所述第一指数函数的系数大于1,底数为2,指数为所述往返时延的个数;
如果所述网络处于拥塞状态,控制当前的拥塞窗口随着所述网络的往返时延按预设的第二指数函数指数增长,其中,所述第二指数函数的系数为1,底数为2,指数为所述往返时延的个数。
在一个实施例中,所述方法还包括以下步骤:
在进入快速恢复阶段时,如果所述网络预设时段前发生丢包,则保持慢启动阈值和当前的拥塞窗口不变;如果所述网络当前处于拥塞状态或发生丢包,获取当前的拥塞窗口的数值,将所述慢启动阈值和所述拥塞窗口分别减小为所获取的数值的一半。
在一个实施例中,在对所述关键丢失包进行重传时,RTO超时重传型的关键丢失包的重传优先级:高于快速重传型的关键丢失包的重传优先级,所述快速重传型的关键丢失包的重传优先级:高于其他类型的关键丢失包的重传优先级。
在一个实施例中,在分别对可能丢失的数据包和所述关键丢失包进行重传时,如果所述网络的当前可用流量处于低流量状态,则所述关键丢失包的重传优先级:高于所述可能丢失的数据包的重传优先级。
在一个实施例中,在对所述可能丢失的数据包或所述关键丢失包进行重传时,所述方法还包括以下步骤:
获取所述网络当前时段的往返时延以及之前各个历史时段的往返时延;
从各个历史时段的往返时延中,获取相邻历史时段的往返时延的差值的绝对值;
计算获取的各绝对值的平均值,生成抖动均值;
获取所述当前时段的往返时延与所述抖动均值的和,生成重传阈值;
获取所述可能丢失的数据包或所述关键丢失包的最新发送时间与当前时间的时间间隔;
如果所述时间间隔超过所述重传阈值,则对所述可能丢失的数据包或所述关键丢失包进行重传。
在一个实施例中,所述方法还包括以下步骤:
在拥塞避免阶段,如果网络处于非拥塞状态,获取与当前的拥塞窗口成反比关系的增大比例,并以获取的增大比例增大所述拥塞窗口;如果网络处于拥塞状态,使当前的拥塞窗口随着所述网络的往返时延线性增长。
在一个实施例中,所述方法还包括以下步骤:
在控制TCP传输性能的任一阶段,每隔预设的第一时段,获取所述网络重传的数据包的数量与正在传输的数据包的数量的比值,生成所述网络的TCP重传率;
如果连续生成的N+1个TCP重传率连续N次增长,且增长幅度超过第一阈值,则确定所述网络处于拥塞状态;
或者,
如果最终获取的TCP重传率超过第二阈值,则确定所述网络处于拥塞状态。
在一个实施例中,所述方法还包括以下步骤:
每隔预设的第二时段,获取所述网络当前时刻的往返时延和上一周期的往返时延;
根据预设的转换规则,将获取的往返时延转换为所述网络当前周期的往返时延;
如果连续转换所得的N+1个往返时延连续N次增长,且增长幅度超过第三阈值,则确定所述网络处于拥塞状态。
根据本申请实施例的第二方面,提供一种控制TCP传输性能的装置,包括:
拥塞窗口调节模块,用于在进入快速恢复阶段时,获取与当前的拥塞窗口成正比关系的减小比例,并以获取的减小比例缩小所述拥塞窗口;
第一重传模块,用于在控制TCP传输性能的任一阶段需要重传,且所述网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值时,对关键丢失包进行重传,其中,所述关键丢失包为引起拥塞窗口变小的丢失数据包;
第二重传模块,用于在控制TCP传输性能的任一阶段需要重传,所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值时,分别对可能丢失的数据包和所述关键丢失包进行重传。
在一个实施例中,所述装置还包括:
第一增长模块,用于在慢启动阶段,所述网络处于非拥塞状态时,控制当前的拥塞窗口随着所述网络的往返时延按预设的第一指数函数指数增长,其中,所述第一指数函数的系数大于1,底数为2,指数为所述往返时延的个数;
第二增长模块,用于在慢启动阶段,所述网络处于拥塞状态时,控制当前的拥塞窗口随着所述网络的往返时延按预设的第二指数函数指数增长,其中,所述第二指数函数的系数为1,底数为2,指数为所述往返时延的个数。
在一个实施例中,所述装置还包括:
保持模块,用于在进入快速恢复阶段的期间,所述网络预设时段前发生丢包时,保持慢启动阈值和当前的拥塞窗口不变;
减半模块,用于在进入快速恢复阶段的期间,所述网络当前处于拥塞状态或发生丢包时,获取当前的拥塞窗口的数值,将所述慢启动阈值和所述拥塞窗口分别减小为所获取的数值的一半。
在一个实施例中,在对所述关键丢失包进行重传时,RTO超时重传型的关键丢失包的重传优先级:高于快速重传型的关键丢失包的重传优先级,所述快速重传型的关键丢失包的重传优先级:高于其他类型的关键丢失包的重传优先级。
在一个实施例中,在分别对可能丢失的数据包和所述关键丢失包进行重传时,如果所述网络的当前可用流量处于低流量状态,则所述关键丢失包的重传优先级:高于所述可能丢失的数据包的重传优先级。
在一个实施例中,所述装置还包括:
第一时延获取模块,用于获取所述网络当前时段的往返时延以及之前各个历史时段的往返时延;
相邻差值获取模块,用于从各个历史时段的往返时延中,获取相邻历史时段的往返时延的差值的绝对值;
抖动均值生成模块,用于计算获取的各绝对值的平均值,生成抖动均值;
重传阈值生成模块,用于获取所述当前时段的往返时延与所述抖动均值的和,生成重传阈值;
时间间隔获取模块,用于获取所述可能丢失的数据包或所述关键丢失包的最新发送时间与当前时间的时间间隔;
超时重传模块,用于在所述时间间隔超过所述重传阈值,对所述可能丢失的数据包或所述关键丢失包进行重传。
在一个实施例中,所述装置还包括:
反比增大模块,用于在拥塞避免阶段,所述网络处于非拥塞状态时,获取与当前的拥塞窗口成反比关系的增大比例,并以获取的增大比例增大所述拥塞窗口;
线性增长模块,用于在拥塞避免阶段,所述网络处于拥塞状态时,控制当前的拥塞窗口随着所述网络的往返时延线性增长。
在一个实施例中,所述装置还包括:
重传率获取模块,用于在控制TCP传输性能的任一阶段,每隔预设的第一时段,获取所述网络重传的数据包的数量与正在传输的数据包的数量的比值,生成所述网络的TCP重传率;
第一拥塞确定模块,用于在连续生成的N+1个TCP重传率连续N次增长,且增长幅度超过第一阈值时,确定所述网络处于拥塞状态;
或者,
第二拥塞确定模块,用于在最终获取的TCP重传率超过第二阈值时,确定所述网络处于拥塞状态。
在一个实施例中,所述装置还包括:
第二延时获取模块,用于每隔预设的第二时段,获取所述网络当前时刻的往返时延和上一周期的往返时延;
当前时延生成模块,用于根据预设的转换规则,将获取的往返时延转换为所述网络当前周期的往返时延;
第三拥塞确定模块,用于在连续转换所得的N+1个往返时延连续N次增长,且增长幅度超过第三阈值时,确定所述网络处于拥塞状态。
应用本申请实施例,在进入快速恢复阶段时,以与当前的拥塞窗口成正比关系的减小比例缩小所述拥塞窗口,在拥塞窗口数值较大时可以快速降低拥塞窗口的数值;控制TCP传输性能的任一阶段需要重传时,如果所述网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值,对引起拥塞窗口变小的丢失数据包进行重传,如果所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值,分别对可能丢失的数据包和引起拥塞窗口变小的丢失数据包进行重传,可以通过网络所处状态以及拥塞窗口,快速确定是否重传可能丢失的数据包和引起拥塞窗口变小的丢失数据包,能及有效控制网络中传输的数据量,避免网络拥塞。拥塞避免阶段的拥塞窗口调控和快速恢复阶段的重传控制相结合,可以保证网络高吞吐量、低延迟的情况下,控制网络中传输的数据量和避免网络拥塞,能有效提高TCP的传输性能。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本申请控制TCP传输性能的方法的一个实施例流程图;
图2是本申请控制TCP传输性能的方法的另一个实施例流程图;
图3是本申请控制TCP传输性能的方法的另一个实施例流程图;
图4是本申请控制TCP传输性能的装置所在终端的一种硬件结构图;
图5是本申请控制TCP传输性能的装置的一个实施例框图;
图6是本申请控制TCP传输性能的装置的另一个实施例框图;
图7是本申请控制TCP传输性能的装置的另一个实施例框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请实施例的控制TCP传输性能的方法,为了防止网络的拥塞,涉及一系列的TCP拥塞控制机制,这里提到的拥塞是指网络中存在过多的报文数据包时,网络的性能就会相应下降的现象。
一般情况下,为了防止网络的拥塞,需要进行主要依赖于一个拥塞窗口(cwnd)进行控制的TCP拥塞控制,分为四个阶段,包括:慢启动阶段、拥塞避免阶段、快速重传阶段和快速恢复阶段。
慢启动阶段:拥塞窗口初始化为1个最大数据包(MSS)大小,发送端开始按照拥塞窗口大小发送数据包,每当有一个数据包被确认,拥塞窗口就增加1个MSS大小。这样拥塞窗口的值就随着网络往返时间(Round Trip Time,RTT)呈指数级增,为了防止拥塞窗口无限制增大,设置一个叫慢启动门限(ssthresh)的变量,ssthresh的值可以是65536(以字节计算),当拥塞窗口超过该变量值后,慢启动过程结束,进入拥塞避免阶段。
拥塞避免阶段:主要是加法增大拥塞窗口,也就是拥塞窗口的值不再指数级往上升,开始加法增加。此时当窗口中所有的数据包都被确认时,拥塞窗口的数值加1,拥塞窗口的值就随着RTT开始线性增加,这样就可以避免增长过快导致网络拥塞,慢慢的增加拥塞窗口,调整到网络的最佳值。
如果一报文段的重传定时器(RTO,Retransmission Timeout)超时,且还没有得到数据确认,那么TCP就会对该报文段进行重传,当发生超时,那么出现拥塞的可能性就很大,某个报文段可能在网络中某处丢失,并且后续的报文段也没有了消息,在这种情况下,可以把ssthresh降低为cwnd值的一半,把cwnd重新设置为1,重新进入慢启动过程。
如果收到3个相同的ACK(Acknowledgement,确认应答,TCP在收到乱序到达包时就会立即发送ACK),可以判定数据包丢失,进入快速重传阶段。
快速重传阶段:将ssthresh设置为拥塞窗口的一半,将拥塞窗口再设置为ssthresh的值(也可以把拥塞窗口设置为ssthresh的值加3),进入快速恢复阶段,很多TCP传输性能控制方案中将快速重传和快速恢复统一为快速恢复阶段,对拥塞窗口进行控制。
快速恢复阶段:基于“数据包守恒”原则,即同一个时刻在网络中的数据包数量是恒定的,只有当“老”数据包离开了网络后,才能向网络中发送一个“新”的数据包,如果发送方再次接收到一个重复的ACK,那么根据TCP的ACK机制就表明有一个数据包离开了网络,于是拥塞窗口加1,当收到新的数据包的ACK时,把拥塞窗口设置为ssthresh的值,再次进入拥塞避免状态。原因是因为该ACK确认了新的数据,说明从重复ACK时的数据都已收到,该恢复过程已经结束。
本申请的实施例的控制TCP传输性能的方法,分别对拥塞避免阶段和快速恢复阶段的控制机制进行了改进优化,改进优化后,拥塞避免阶段的拥塞窗口调控和快速恢复阶段的重传控制相结合,可以保证网络高吞吐量、低延迟的情况下,控制网络中传输的数据量和避免网络拥塞,能有效提高TCP的传输性能。
参见图1,图1是本申请控制TCP传输性能的方法的一个实施例流程图,该方法可以包括以下步骤101-103:
步骤101:在进入快速恢复阶段时,获取与当前的拥塞窗口成正比关系的减小比例,并以获取的减小比例缩小所述拥塞窗口。
本申请实施例中,所述进入快速恢复阶段时,即进入快速恢复阶段的期间,指由拥塞避免阶段向快速恢复阶段进行转换的时间段。所述缩小比例与拥塞窗口成正比关系,即拥塞窗口的值越大,缩小比例越大,以该缩小比例缩小所述拥塞窗口,可以加快拥塞窗口的减小速度。
而缩小比例与拥塞窗口之间的正比关系,可以根据网络状况、传输状况等传输性能指标设定,例如:成线性正比关系。在一个例子中,缩小比例的最大值为百分之四十,最小值为百分之五。
实际应用中,进入快速恢复阶段时,还可以根据网络是否处于拥塞状态、以及是否有丢包来对拥塞窗口进行调控,具体的调控可以参照如下操作:
在进入快速恢复阶段时,如果所述网络预设时段前发生丢包,则保持慢启动阈值和当前的拥塞窗口不变;如果所述网络当前处于拥塞状态或发生丢包,获取当前的拥塞窗口的数值,将所述慢启动阈值和所述拥塞窗口分别减小为所获取的数值的一半。这样可以在网络状况较好的情况下,减缓拥塞窗口的减小幅度。
如果网络未处于拥塞状态,即表示网络处于非拥塞状态,拥塞窗口以字节作单位,假设TCP每次传输都是按照MSS大小来发送数据包,那么拥塞窗口按照数据包个数来做单位,拥塞窗口的值即数据包的个数,拥塞窗口增加1也就是相当于字节数增加1个MSS大小。
对于拥塞控制,拥塞状态的判断至关重要,为了快速确定网络是否处于拥塞状态,在一个可选实现方式中,本申请实施例的控制TCP传输性能的方法,可以通过以下操作确定网络是否处于拥塞状态:
在控制TCP传输性能的任一阶段,每隔预设的第一时段,获取所述网络重传的数据包的数量与正在传输的数据包的数量的比值,生成所述网络的TCP重传率。
如果连续生成的N+1个TCP重传率连续N次增长,且增长幅度超过第一阈值,则确定所述网络处于拥塞状态。
或者,
如果最终获取的TCP重传率超过第二阈值,则确定所述网络处于拥塞状态。
其中,可以根据网络性能设置N、第一时段、第一阈值以及第二阈值的具体数值,例如:N为4,第一时段可以为RTT周期,第一阈值为20%,第二阈值为15%。
而TCP重传率指重新发送信息与全部的调用信息之间的比值,在一个例子中,可通过以下公式计算TCP重传率:
in_flight=packets_out-(sacked_out+lost_out)+retrans_out;
retrains_rate=retrans_out*100/in_flight;
其中,In_flight表示正在传输的数据包数量;Packets_out表示总共发送的数据包数量;Sacked_out表示到达接收端的数据包数量;Lost_out表示丢失的数据包数量;Retrains_out表示重传的数据包数量。
为了快速确定网络是否处于拥塞状态,在另一个可选实现方式中,本申请实施例的控制TCP传输性能的方法,还可以通过以下操作确定网络是否处于拥塞状态:
每隔预设的第二时段,获取所述网络当前时刻的往返时延和上一周期的往返时延。
根据预设的转换规则,将获取的往返时延转换为所述网络当前周期的往返时延。
如果连续转换所得的N+1个往返时延连续N次增长,且增长幅度超过第三阈值,则确定所述网络处于拥塞状态。
其中,所述周期指RTT周期,可以根据网络性能设置第二时段、第三阈值的具体数值,例如:第二时段可以为RTT周期,第三阈值为10%。
在一个例子中,所述预设的转换规则包括:获取的往返时延与所述当前周期的往返时延进行权重求和。例如:获取的往返时延的权重为八分之七,当前周期的往返时延的权重为八分之一。
在其他实施例中,进入快速恢复阶段后,可以采用本领域中一般情况下的TCP控制手段对拥塞窗口进行调控。
步骤102:控制TCP传输性能的任一阶段需要重传时,如果所述网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值,对关键丢失包进行重传,其中,所述关键丢失包为引起拥塞窗口变小的丢失数据包。
本申请实施例中,所述窗口最小阈值可以根据网络状况设定,例如:8个MSS的大小。重传定时器超时或者满足预设的其他重传条件,即可判定需要重传,用户可以根据实际传输情况和传输需求设置重传条件。
对所述关键丢失包进行重传时,RTO超时重传型的关键丢失包的重传优先级:高于快速重传型的关键丢失包的重传优先级,所述快速重传型的关键丢失包的重传优先级:高于其他类型的关键丢失包的重传优先级。这样设置优先级可以及时缓解网络压力。
步骤103:控制TCP传输性能的任一阶段需要重传时,如果所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值,分别对可能丢失的数据包和所述关键丢失包进行重传。
本申请实施例中,在分别对可能丢失的数据包和所述关键丢失包进行重传时,如果所述网络的当前可用流量处于低流量状态,则所述关键丢失包的重传优先级:高于所述可能丢失的数据包的重传优先级。可以通过获取TCP协议栈发送的数据的流量,确定当前可用流量,TCP发送的数据的流量越大,当前可用的流量越小。
在TCP重传机制中,如果收到3个相同的ACK(Acknowledgement,确认应答,TCP在收到乱序到达包时就会立即发送ACK),可以判定数据包丢失,本申请实施例,在考虑一定乱序的前提下,如果收到该数据包的两个相同的ACK时,可以判定该数据包可能丢失,为可能丢失的数据包。
在需要对所述可能丢失的数据包或所述关键丢失包进行重传时,在一个可选实现方式中,本申请实施例的控制TCP传输性能的方法,还可以包括以下操作:
获取所述网络当前时段的往返时延以及之前各个历史时段的往返时延。
从各个历史时段的往返时延中,获取相邻历史时段的往返时延的差值的绝对值。
计算获取的各绝对值的平均值,生成抖动均值。
获取所述当前时段的往返时延与所述抖动均值的和,生成重传阈值。
获取所述可能丢失的数据包或所述关键丢失包的最新发送时间与当前时间的时间间隔。
如果所述时间间隔超过所述重传阈值,则对所述可能丢失的数据包或所述关键丢失包进行重传。
本方式中,所述历史时段可以根据网络拥塞状况设置,例如设置为RTT周期。
在某些情景,还可以同时对慢启动阶段和快速恢复阶段的控制机制进行优化改进,实现过程可参见图2,图2是本申请控制TCP传输性能的方法的另一个实施例流程图,该实施例可以包括以下步骤201-205:
步骤201:在慢启动阶段,如果所述网络处于非拥塞状态,控制当前的拥塞窗口随着所述网络的往返时延按预设的第一指数函数指数增长,其中,所述第一指数函数的系数大于1,底数为2,指数为所述往返时延的个数。
本申请实施例中,所述第一指数函数的系数可以为10,系数越大,拥塞窗口增长速度越大,可以越快将拥塞窗口增加调整到网络的最佳值。
步骤202:在慢启动阶段,如果所述网络处于拥塞状态,控制当前的拥塞窗口随着所述网络的往返时延按预设的第二指数函数指数增长,其中,所述第二指数函数的系数为1,底数为2,指数为所述往返时延的个数。
本申请实施例中,相对于非拥塞状态,降低指数函数的系数,可及时减缓拥塞窗口增加速度,有效避免网络拥塞。
步骤203:在进入快速恢复阶段时,获取与当前的拥塞窗口成正比关系的减小比例,并以获取的减小比例缩小所述拥塞窗口。
步骤204:控制TCP传输性能的任一阶段需要重传时,如果网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值,对关键丢失包进行重传,其中,所述关键丢失包为引起拥塞窗口变小的丢失数据包。
步骤205:控制TCP传输性能的任一阶段需要重传时,如果所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值,分别对可能丢失的数据包和所述关键丢失包进行重传。
在某些情景,还可以同时对拥塞避免阶段和快速恢复阶段的控制机制进行优化改进,实现过程可参见图3,图3是本申请控制TCP传输性能的方法的另一个实施例流程图,该实施例可以包括以下步骤301-305:
步骤301:在拥塞避免阶段,如果网络处于非拥塞状态,获取与当前的拥塞窗口成反比关系的增大比例,并以获取的增大比例增大所述拥塞窗口。
本申请实施例中,所述增大比例与拥塞窗口成反比关系,即拥塞窗口的值越大,增大比例越小,以该增大比例增大所述拥塞窗口,可以减慢拥塞窗口的增长速度,有效避免拥塞窗口增长过快导致网络拥塞,慢慢的增加调整到网络的最佳值,尽量使得网络保持在高吞吐量和低延迟的状况。
而增大比例与拥塞窗口之间的反比关系,可以根据网络状况、传输状况等传输性能指标设定,例如:成线性反比关系。在一个例子中,增大比例的最大值为百分之四十,最小值为百分之十。
步骤302:在拥塞避免阶段,如果网络处于拥塞状态,使当前的拥塞窗口随着所述网络的往返时延线性增长。
本申请实施例中提到的线性增长,主要是加法增大拥塞窗口,也就是拥塞窗口的值不再指数级往上升,开始加法增加。此时当窗口中所有的数据包都被确认时,拥塞窗口的数值加1,拥塞窗口的值就随着RTT开始线性增加,这样就可以避免增长过快导致网络拥塞,慢慢的增加拥塞窗口,调整到网络的最佳值。
步骤303:在进入快速恢复阶段时,获取与当前的拥塞窗口成正比关系的减小比例,并以获取的减小比例缩小所述拥塞窗口。
步骤304:控制TCP传输性能的任一阶段需要重传时,如果网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值,对关键丢失包进行重传,其中,所述关键丢失包为引起拥塞窗口变小的丢失数据包。
步骤305:控制TCP传输性能的任一阶段需要重传时,如果所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值,分别对可能丢失的数据包和所述关键丢失包进行重传。
在其他实施例中,结合图2和图3所示的方法流程,可以同时对慢启动阶段、拥塞避免阶段、和快速恢复阶段进行优化改进,慢启动阶段的改进如步骤201和步骤202,拥塞避免阶段的改进如步骤301和步骤302,快速恢复阶段的改进如步骤303。
本申请控制TCP传输性能的方法,可以直接在linux OS服务器上实现快速恢复阶段的控制改进,对于非linuxos服务器,可以把业务服务器的下一跳设置为运行快速恢复阶段的控制改进的设备,从而达到提高TCP传输性能的效果。
由上述实施例可知:在进入快速恢复阶段时,以与当前的拥塞窗口成正比关系的减小比例缩小所述拥塞窗口,在拥塞窗口数值较大时可以快速降低拥塞窗口的数值;此外,在快速恢复阶段,如果所述网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值,对引起拥塞窗口变小的丢失数据包进行重传,如果所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值,分别对可能丢失的数据包和引起拥塞窗口变小的丢失数据包进行重传,可以通过网络所处状态以及拥塞窗口快速确定是否重传可能丢失的数据包和引起拥塞窗口变小的丢失数据包,能及有效控制网络中传输的数据量,避免网络拥塞。拥塞避免阶段的拥塞窗口调控和快速恢复阶段的重传控制相结合,可以保证网络高吞吐量、低延迟的情况下,控制网络中传输的数据量和避免网络拥塞,能有效提高TCP的传输性能。
此外,还可以在慢启动阶段、拥塞避免阶段和/或快速恢复阶段,对拥塞窗口和数据包重传条件进行优化,进一步保证网络高吞吐量、低延迟的情况下,控制网络中传输的数据量和避免网络拥塞,提高TCP的传输性能。
与前述控制TCP传输性能的方法的实施例相对应,本申请还提供了控制TCP传输性能的装置的实施例。
本申请控制TCP传输性能的装置的实施例,可以应用在终端上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在终端的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图4所示,为本申请控制TCP传输性能的装置所在终端的一种硬件结构图,除了图4所示的处理器410、网络接口420、内存430、以及非易失性存储器440之外,实施例中装置所在的终端通常根据该终端的实际功能,还可以包括其他硬件,对此不再赘述。
上述处理器可以被配置为:在进入快速恢复阶段时,获取与当前的拥塞窗口成正比关系的减小比例,并以获取的减小比例缩小所述拥塞窗口;控制TCP传输性能的任一阶段需要重传时,如果网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值,对关键丢失包进行重传,其中,所述关键丢失包为引起拥塞窗口变小的丢失数据包;如果所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值,分别对可能丢失的数据包和所述关键丢失包进行重传。
参见图5,图5是本申请控制TCP传输性能的装置的一个实施例框图,该装置可包括:拥塞窗口调节模块510、第一重传模块520和第二重传模块530。
其中,拥塞窗口调节模块510,用于在进入快速恢复阶段时,获取与当前的拥塞窗口成正比关系的减小比例,并以获取的减小比例缩小所述拥塞窗口。
第一重传模块520,用于在控制TCP传输性能的任一阶段需要重传,且所述网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值时,对关键丢失包进行重传,其中,所述关键丢失包为引起拥塞窗口变小的丢失数据包。
第二重传模块530,用于在控制TCP传输性能的任一阶段需要重传,所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值时,分别对可能丢失的数据包和所述关键丢失包进行重传。
在一个可选的实现方式中,第一重传模块520或第二重传模块530在对所述关键丢失包进行重传时,RTO超时重传型的关键丢失包的重传优先级:高于快速重传型的关键丢失包的重传优先级,所述快速重传型的关键丢失包的重传优先级:高于其他类型的关键丢失包的重传优先级。
在另一个可选的实现方式中,在第二重传模块530分别对可能丢失的数据包和所述关键丢失包进行重传时,如果所述网络的当前可用流量处于低流量状态,则所述关键丢失包的重传优先级:高于所述可能丢失的数据包的重传优先级。
在另一个可选实现方式中,本申请实施例的控制TCP传输性能的装置还可以包括(图5中未示出):
第一时延获取模块,用于获取所述网络当前时段的往返时延以及之前各个历史时段的往返时延。
相邻差值获取模块,用于从各个历史时段的往返时延中,获取相邻历史时段的往返时延的差值的绝对值。
抖动均值生成模块,用于计算获取的各绝对值的平均值,生成抖动均值。
重传阈值生成模块,用于获取所述当前时段的往返时延与所述抖动均值的和,生成重传阈值。
时间间隔获取模块,用于获取所述可能丢失的数据包或所述关键丢失包的最新发送时间与当前时间的时间间隔。
超时重传模块,用于在所述时间间隔超过所述重传阈值,对所述可能丢失的数据包或所述关键丢失包进行重传。
在另一个可选实现方式中,本申请实施例的控制TCP传输性能的装置还可以包括(图5中未示出):
重传率获取模块,用于在控制TCP传输性能的任一阶段,每隔预设的第一时段,获取所述网络重传的数据包的数量与正在传输的数据包的数量的比值,生成所述网络的TCP重传率。
第一拥塞确定模块,用于在连续生成的N+1个TCP重传率连续N次增长,且增长幅度超过第一阈值时,确定所述网络处于拥塞状态。
在另一个可选实现方式中,本申请实施例的控制TCP传输性能的装置还可以包括(图5中未示出):
重传率获取模块,用于在控制TCP传输性能的任一阶段,每隔预设的第一时段,获取所述网络重传的数据包的数量与正在传输的数据包的数量的比值,生成所述网络的TCP重传率。
第二拥塞确定模块,用于在最终获取的TCP重传率超过第二阈值时,确定所述网络处于拥塞状态。
在另一个可选实现方式中,本申请实施例的控制TCP传输性能的装置还可以包括(图5中未示出):
第二延时获取模块,用于每隔预设的第二时段,获取所述网络当前时刻的往返时延和上一周期的往返时延。
当前时延生成模块,用于根据预设的转换规则,将获取的往返时延转换为所述网络当前周期的往返时延。
第三拥塞确定模块,用于在连续转换所得的N+1个往返时延连续N次增长,且增长幅度超过第三阈值时,确定所述网络处于拥塞状态。
在另一个可选实现方式中,本申请实施例的控制TCP传输性能的装置还可以包括(图5中未示出):
保持模块,用于在进入快速恢复阶段的期间,所述网络预设时段前发生丢包时,保持慢启动阈值和当前的拥塞窗口不变。
减半模块,用于在进入快速恢复阶段的期间,所述网络当前处于拥塞状态或发生丢包时,获取当前的拥塞窗口的数值,将所述慢启动阈值和所述拥塞窗口分别减小为所获取的数值的一半。
参见图6,图6是本申请控制TCP传输性能的装置的另一个实施例框图,该装置可包括:第一增长模块610、第二增长模块620、拥塞窗口调节模块630、第一重传模块640和第二重传模块650。
其中,第一增长模块610,用于在慢启动阶段,所述网络处于非拥塞状态时,控制当前的拥塞窗口随着所述网络的往返时延按预设的第一指数函数指数增长,其中,所述第一指数函数的系数大于1,底数为2,指数为所述往返时延的个数。
第二增长模块620,用于在慢启动阶段,所述网络处于拥塞状态时,控制当前的拥塞窗口随着所述网络的往返时延按预设的第二指数函数指数增长,其中,所述第二指数函数的系数为1,底数为2,指数为所述往返时延的个数。
拥塞窗口调节模块630,用于在进入快速恢复阶段时,获取与当前的拥塞窗口成正比关系的减小比例,并以获取的减小比例缩小所述拥塞窗口。
第一重传模块640,用于在控制TCP传输性能的任一阶段需要重传,且所述网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值时,对关键丢失包进行重传,其中,所述关键丢失包为引起拥塞窗口变小的丢失数据包。
第二重传模块650,用于在控制TCP传输性能的任一阶段需要重传,所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值时,分别对可能丢失的数据包和所述关键丢失包进行重传。
参见图7,图7是本申请控制TCP传输性能的装置的另一个实施例框图,该装置可包括:反比增大模块710、线性增长模块720、拥塞窗口调节模块730、第一重传模块740和第二重传模块750。
其中,反比增大模块710,用于在拥塞避免阶段,所述网络处于非拥塞状态时,获取与当前的拥塞窗口成反比关系的增大比例,并以获取的增大比例增大所述拥塞窗口。
线性增长模块720,用于在拥塞避免阶段,所述网络处于拥塞状态时,控制当前的拥塞窗口随着所述网络的往返时延线性增长。
拥塞窗口调节模块730,用于在进入快速恢复阶段时,获取与当前的拥塞窗口成正比关系的减小比例,并以获取的减小比例缩小所述拥塞窗口。
第一重传模块740,用于在控制TCP传输性能的任一阶段需要重传,且所述网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值时,对关键丢失包进行重传,其中,所述关键丢失包为引起拥塞窗口变小的丢失数据包。
第二重传模块750,用于在控制TCP传输性能的任一阶段需要重传,所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值时,分别对可能丢失的数据包和所述关键丢失包进行重传。
上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。
本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

Claims (18)

1.一种控制TCP传输性能的方法,其特征在于,包括以下步骤:
在进入快速恢复阶段时,获取与当前的拥塞窗口成正比关系的减小比例,并以获取的减小比例缩小所述拥塞窗口;
控制TCP传输性能的任一阶段需要重传时,如果网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值,对关键丢失包进行重传,其中,所述关键丢失包为引起拥塞窗口变小的丢失数据包;如果所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值,分别对可能丢失的数据包和所述关键丢失包进行重传;
其中,在对所述可能丢失的数据包或所述关键丢失包进行重传时,所述方法还包括以下步骤:
获取所述网络当前时段的往返时延以及之前各个历史时段的往返时延;
从各个历史时段的往返时延中,获取相邻历史时段的往返时延的差值的绝对值;
计算获取的各绝对值的平均值,生成抖动均值;
获取所述当前时段的往返时延与所述抖动均值的和,生成重传阈值;
根据所述重传阈值对所述可能丢失的数据包或所述关键丢失包进行重传。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括以下步骤:
在慢启动阶段,如果所述网络处于非拥塞状态,控制当前的拥塞窗口随着所述网络的往返时延按预设的第一指数函数指数增长,其中,所述第一指数函数的系数大于1,底数为2,指数为所述往返时延的个数;
如果所述网络处于拥塞状态,控制当前的拥塞窗口随着所述网络的往返时延按预设的第二指数函数指数增长,其中,所述第二指数函数的系数为1,底数为2,指数为所述往返时延的个数。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括以下步骤:
在进入快速恢复阶段时,如果所述网络预设时段前发生丢包,则保持慢启动阈值和当前的拥塞窗口不变;如果所述网络当前处于拥塞状态或发生丢包,获取当前的拥塞窗口的数值,将所述慢启动阈值和所述拥塞窗口分别减小为所获取的数值的一半。
4.根据权利要求1所述的方法,其特征在于,在对所述关键丢失包进行重传时,RTO超时重传型的关键丢失包的重传优先级:高于快速重传型的关键丢失包的重传优先级,所述快速重传型的关键丢失包的重传优先级:高于其他类型的关键丢失包的重传优先级。
5.根据权利要求1所述的方法,其特征在于,在分别对可能丢失的数据包和所述关键丢失包进行重传时,如果所述网络的当前可用流量处于低流量状态,则所述关键丢失包的重传优先级:高于所述可能丢失的数据包的重传优先级。
6.根据权利要求1所述的方法,其特征在于,所述根据所述重传阈值对所述可能丢失的数据包或所述关键丢失包进行重传包括以下步骤:
获取所述可能丢失的数据包或所述关键丢失包的最新发送时间与当前时间的时间间隔;
如果所述时间间隔超过所述重传阈值,则对所述可能丢失的数据包或所述关键丢失包进行重传。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括以下步骤:
在拥塞避免阶段,如果网络处于非拥塞状态,获取与当前的拥塞窗口成反比关系的增大比例,并以获取的增大比例增大所述拥塞窗口;如果网络处于拥塞状态,使当前的拥塞窗口随着所述网络的往返时延线性增长。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述方法还包括以下步骤:
在控制TCP传输性能的任一阶段,每隔预设的第一时段,获取所述网络重传的数据包的数量与正在传输的数据包的数量的比值,生成所述网络的TCP重传率;
如果连续生成的N+1个TCP重传率连续N次增长,且增长幅度超过第一阈值,则确定所述网络处于拥塞状态;
或者,
最终获取的TCP重传率超过第二阈值,则确定所述网络处于拥塞状态。
9.根据权利要求1至7中任一项所述的方法,其特征在于,所述方法还包括以下步骤:
每隔预设的第二时段,获取所述网络当前时刻的往返时延和上一周期的往返时延;
根据预设的转换规则,将获取的往返时延转换为所述网络当前周期的往返时延;
如果连续转换所得的N+1个往返时延连续N次增长,且增长幅度超过第三阈值,则确定所述网络处于拥塞状态。
10.一种控制TCP传输性能的装置,其特征在于,包括:
拥塞窗口调节模块,用于在进入快速恢复阶段时,获取与当前的拥塞窗口成正比关系的减小比例,并以获取的减小比例缩小所述拥塞窗口;
第一重传模块,用于在控制TCP传输性能的任一阶段需要重传,且网络处于拥塞状态,或者当前的拥塞窗口低于窗口最小阈值时,对关键丢失包进行重传,其中,所述关键丢失包为引起拥塞窗口变小的丢失数据包;
第二重传模块,用于在控制TCP传输性能的任一阶段需要重传,所述网络处于非拥塞状态,且当前的拥塞窗口不低于窗口最小阈值时,分别对可能丢失的数据包和所述关键丢失包进行重传;
所述装置还包括:
第一时延获取模块,用于获取所述网络当前时段的往返时延以及之前各个历史时段的往返时延;
相邻差值获取模块,用于从各个历史时段的往返时延中,获取相邻历史时段的往返时延的差值的绝对值;
抖动均值生成模块,用于计算获取的各绝对值的平均值,生成抖动均值;
重传阈值生成模块,用于获取所述当前时段的往返时延与所述抖动均值的和,生成重传阈值;
所述第一重传模块还用于根据所述重传阈值对所述关键丢失包进行重传,所述第二重传模块还用于根据所述重传阈值对所述可能丢失的数据包和所述关键丢失包进行重传。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
第一增长模块,用于在慢启动阶段,所述网络处于非拥塞状态时,控制当前的拥塞窗口随着所述网络的往返时延按预设的第一指数函数指数增长,其中,所述第一指数函数的系数大于1,底数为2,指数为所述往返时延的个数;
第二增长模块,用于在慢启动阶段,所述网络处于拥塞状态时,控制当前的拥塞窗口随着所述网络的往返时延按预设的第二指数函数指数增长,其中,所述第二指数函数的系数为1,底数为2,指数为所述往返时延的个数。
12.根据权利要求10所述的装置,其特征在于,所述装置还包括:
保持模块,用于在进入快速恢复阶段的期间,所述网络预设时段前发生丢包时,保持慢启动阈值和当前的拥塞窗口不变;
减半模块,用于在进入快速恢复阶段的期间,所述网络当前处于拥塞状态或发生丢包时,获取当前的拥塞窗口的数值,将所述慢启动阈值和所述拥塞窗口分别减小为所获取的数值的一半。
13.根据权利要求10所述的装置,其特征在于,在对所述关键丢失包进行重传时,RTO超时重传型的关键丢失包的重传优先级:高于快速重传型的关键丢失包的重传优先级,所述快速重传型的关键丢失包的重传优先级:高于其他类型的关键丢失包的重传优先级。
14.根据权利要求10所述的装置,其特征在于,在分别对可能丢失的数据包和所述关键丢失包进行重传时,如果所述网络的当前可用流量处于低流量状态,则所述关键丢失包的重传优先级:高于所述可能丢失的数据包的重传优先级。
15.根据权利要求10所述的装置,其特征在于,所述装置还包括:
时间间隔获取模块,用于获取所述可能丢失的数据包或所述关键丢失包的最新发送时间与当前时间的时间间隔;
超时重传模块,用于在所述时间间隔超过所述重传阈值,对所述可能丢失的数据包或所述关键丢失包进行重传。
16.根据权利要求10所述的装置,其特征在于,所述装置还包括:
反比增大模块,用于在拥塞避免阶段,所述网络处于非拥塞状态时,获取与当前的拥塞窗口成反比关系的增大比例,并以获取的增大比例增大所述拥塞窗口;
线性增长模块,用于在拥塞避免阶段,所述网络处于拥塞状态时,控制当前的拥塞窗口随着所述网络的往返时延线性增长。
17.根据权利要求10至16中任一项所述的装置,其特征在于,所述装置还包括:
重传率获取模块,用于在控制TCP传输性能的任一阶段,每隔预设的第一时段,获取所述网络重传的数据包的数量与正在传输的数据包的数量的比值,生成所述网络的TCP重传率;
第一拥塞确定模块,用于在连续生成的N+1个TCP重传率连续N次增长,且增长幅度超过第一阈值时,确定所述网络处于拥塞状态;
或者,
第二拥塞确定模块,用于在最终获取的TCP重传率超过第二阈值时,确定所述网络处于拥塞状态。
18.根据权利要求10至16中任一项所述的装置,其特征在于,所述装置还包括:
第二延时获取模块,用于每隔预设的第二时段,获取所述网络当前时刻的往返时延和上一周期的往返时延;
当前时延生成模块,用于根据预设的转换规则,将获取的往返时延转换为所述网络当前周期的往返时延;
第三拥塞确定模块,用于在连续转换所得的N+1个往返时延连续N次增长,且增长幅度超过第三阈值时,确定所述网络处于拥塞状态。
CN201611265038.7A 2016-12-30 2016-12-30 控制tcp传输性能的方法及装置 Active CN106789702B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611265038.7A CN106789702B (zh) 2016-12-30 2016-12-30 控制tcp传输性能的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611265038.7A CN106789702B (zh) 2016-12-30 2016-12-30 控制tcp传输性能的方法及装置

Publications (2)

Publication Number Publication Date
CN106789702A CN106789702A (zh) 2017-05-31
CN106789702B true CN106789702B (zh) 2020-05-12

Family

ID=58951445

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611265038.7A Active CN106789702B (zh) 2016-12-30 2016-12-30 控制tcp传输性能的方法及装置

Country Status (1)

Country Link
CN (1) CN106789702B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108494702B (zh) * 2018-02-23 2021-05-11 腾讯科技(深圳)有限公司 传输控制方法和装置、存储介质及电子装置
CN110417669B (zh) * 2018-07-09 2022-08-26 腾讯科技(深圳)有限公司 数据包重传控制、网络拥塞检测方法和装置
CN110391956B (zh) * 2019-07-23 2021-08-13 中国工商银行股份有限公司 网络服务进程状态的识别监控方法及装置
CN112543464B (zh) * 2019-09-23 2022-09-16 中国移动通信集团安徽有限公司 返网方法、装置及计算设备
CN112822230B (zh) * 2020-12-28 2022-03-25 南京大学 一种基于概率的发送端初始速率设置方法和系统
CN117255038B (zh) * 2023-11-14 2024-01-26 西安明赋云计算有限公司 一种tcp数据包丢失监测方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645765B (zh) * 2009-08-03 2012-10-03 四川大学 面向高误码率、长时延特性网络的可靠传输加速方法
CN101977151B (zh) * 2010-11-09 2012-10-03 中南大学 一种用于高丢包率广域网环境下的拥塞控制方法
CN101854738B (zh) * 2010-05-21 2012-10-24 南京邮电大学 一种用于卫星网络的传输控制协议方法
CN102204182B (zh) * 2010-12-29 2013-09-11 华为技术有限公司 一种数据传输的拥塞控制方法及装置
CN103905328A (zh) * 2012-12-25 2014-07-02 中国移动通信集团公司 一种数据传输控制系统、方法及相关装置
CN104683259A (zh) * 2015-02-15 2015-06-03 上海帝联信息科技股份有限公司 Tcp拥塞控制方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645765B (zh) * 2009-08-03 2012-10-03 四川大学 面向高误码率、长时延特性网络的可靠传输加速方法
CN101854738B (zh) * 2010-05-21 2012-10-24 南京邮电大学 一种用于卫星网络的传输控制协议方法
CN101977151B (zh) * 2010-11-09 2012-10-03 中南大学 一种用于高丢包率广域网环境下的拥塞控制方法
CN102204182B (zh) * 2010-12-29 2013-09-11 华为技术有限公司 一种数据传输的拥塞控制方法及装置
CN103905328A (zh) * 2012-12-25 2014-07-02 中国移动通信集团公司 一种数据传输控制系统、方法及相关装置
CN104683259A (zh) * 2015-02-15 2015-06-03 上海帝联信息科技股份有限公司 Tcp拥塞控制方法及装置

Also Published As

Publication number Publication date
CN106789702A (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
CN106789702B (zh) 控制tcp传输性能的方法及装置
Floyd A report on recent developments in TCP congestion control
Sikdar et al. Analytic models for the latency and steady-state throughput of TCP Tahoe, Reno, and SACK
Parsa et al. Improving TCP congestion control over internets with heterogeneous transmission media
Bohacek et al. A new TCP for persistent packet reordering
US8004981B2 (en) Methods and devices for the coordination of flow control between a TCP/IP network and other networks
JP4778453B2 (ja) 通信端末、輻輳制御方法および輻輳制御プログラム
EP1563634B1 (en) Data unit sender and method of controlling the same
Paxson et al. TCP congestion control
US8416694B2 (en) Network feedback method and device
US20050041582A1 (en) Method of enhancing the efficiency of data flow in communication systems
CN107800638B (zh) 一种拥塞控制方法及装置
US7613976B2 (en) Method for setting the retransmission timeout period in a packet switched communication network
US8279756B2 (en) Communication terminal, communication control method, and communication control program
JP4435817B2 (ja) 通信端末、通信制御方法および通信制御プログラム
WO2016072836A1 (en) A method for tcp congestion in multi-hop wireless network
EP3108631B1 (en) Buffer bloat control
Lai Improving the performance of TCP Vegas in a heterogeneous environment
Altahir et al. Performance evaluation of TCP congestion control mechanisms using NS-2
Attiya New strategy for congestion control based on dynamic adjustment of congestion window
Gharegozi The study of ECN application effect at the performance improvement of RED
KR101334990B1 (ko) 전송 제어 프로토콜의 혼잡 윈도우 제어 방법
CN111193577B (zh) 使用传输超时的网络系统通信方法及通信装置
Oh et al. A new receiver-based retransmission scheme with TFRC
Cerdà et al. Study of the TCP Unfairness in a Wireless Environment

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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20210111

Address after: 511442 3108, 79 Wanbo 2nd Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Patentee after: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 511442 24 floors, B-1 Building, Wanda Commercial Square North District, Wanbo Business District, 79 Wanbo Second Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Patentee before: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20170531

Assignee: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd.

Assignor: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd.

Contract record no.: X2021440000053

Denomination of invention: Method and device for controlling TCP transmission performance

Granted publication date: 20200512

License type: Common License

Record date: 20210208

EE01 Entry into force of recordation of patent licensing contract