一种拥塞带宽检测方法、拥塞控制方法、装置及系统的制作方法
【专利摘要】本发明涉及网络【技术领域】,尤其涉及一种拥塞带宽检测方法、拥塞控制方法、装置及系统。本发明实施例提供的拥塞带宽检测方法包括:接收端在确定出网络拥塞时,确定网络的拥塞带宽值;所述接收端将确定出的拥塞带宽值发送给发送端,以使所述发送端根据所述拥塞带宽值调整拥塞窗口值。采用本发明实施例的方法可在网络拥塞时,快速恢复报文的发送速率到实际可用带宽,大大提高了网络资源的利用率。
【专利说明】一种拥塞带宽检测方法、拥塞控制方法、装置及系统
【技术领域】
[0001] 本发明涉及网络【技术领域】,尤其涉及一种拥塞带宽检测方法、拥塞控制方法、装置 及系统。
【背景技术】
[0002] 传输控制协议(TCP,Transmission Control Protocol)拥塞控制机制的目标是最 大限度利用网络带宽。现有的TCP拥塞控制机制通过设置"拥塞窗口",实现主动的流量控 制,其具体控制过程如图1所示。
[0003] 当TCP连接进行初始化时,将拥塞窗口(CWND,Congestion Window)值置为1个最 大报文段大小(MSS, Maximum Segment Size),发送端开始发送一个数据量为1个MSS大小 (例如1400字节)的报文段,进入慢启动过程,发送端每收到一个报文段的接收确认,就把 拥塞窗口值增加1个MSS大小,因此,当拥塞窗口中的所有报文段都被确认时,拥塞窗口值 成倍增大。这样拥塞窗口值随着报文的往返时间(RTT,Round Trip Time)呈指数级增长, 例如,假设当前的拥塞窗口值为2个MSS大小,发送端发送两个报文段,当这两个报文段都 被确认时,拥塞窗口值增加为4个MSS大小,之后发送端发送四个报文段。其中,RTT为从 发送端发送报文段到接收到对该报文段的确认的时间。在初始的慢启动过程中,慢启动门 限值ssthresh可以很大,例如65536字节。
[0004] 当发送端接收到3个重复的确认(ACK,Acknowledgement)报文时,认为网络发生 拥塞,此时,将慢启动门限值设置为拥塞窗口值的一半,并将拥塞窗口值再设置为慢启动门 限值,进入拥塞避免过程。进入拥塞避免过程后,当拥塞窗口中的所有报文段被确认时,拥 塞窗口值增加1个MSS大小,拥塞窗口值随着RTT开始线性增加,从而避免拥塞窗口值增长 过快导致网络拥塞。
[0005] 当发送端接收ACK报文超时时,认为网络发生严重拥塞,此时,将慢启动门限值设 置为拥塞窗口值的一半,并将拥塞窗口值设置为1个MSS大小,重新进入慢启动过程。当拥 塞窗口值达到慢启动门限值后,慢启动过程结束,进入拥塞避免过程。
[0006] 现有的拥塞控制方法在网络拥塞时,立即缩减拥塞窗口,然后再通过逐渐增加拥 塞窗口值,探测可用的网络容量,使得报文的发送速率无法得到快速的恢复,同时也没有饱 和地使用网络带宽,浪费了可用的网络容量。
【发明内容】
[0007] 本发明实施例提供了一种拥塞带宽检测方法、拥塞控制方法、装置及系统,用以解 决现有技术中存在的在网络拥塞时无法快速恢复报文的发送速率的问题。
[0008] 本发明实施例提供一种拥塞带宽检测方法,所述方法包括:
[0009] 接收纟而在确定出网络拥塞时,确定网络的拥塞带览值;
[0010] 所述接收端将确定出的拥塞带宽值发送给发送端,以使所述发送端根据所述拥塞 带宽值调整拥塞窗口值。 toon] 采用本发明实施例提供的方法,可在网络拥塞时快速恢复报文的发送速率到实际 可用带宽,大大提高了网络资源的利用率。
[0012] 具体地,所述接收端通过以下方式确定网络拥塞:
[0013] 所述接收端在接收到乱序报文时确定网络拥塞。
[0014] 具体地,所述接收端确定网络的拥塞带宽值,具体包括:
[0015] 所述接收端在接收到乱序报文时,开启采样定时器开始对接收到的报文的数据量 进行采样,并在所述采样定时器超时时,统计已采样的报文的数据量之和;
[0016] 所述接收端将所述已采样的报文的数据量之和与所述采样定时器的时长的比值 作为所述拥塞带宽值。
[0017] 如此,即可在网络拥塞时准确地确定网络的拥塞带宽(即网络拥塞时的可用带 宽)。
[0018] 可选地,所述方法还包括:
[0019] 在所述采样定时器超时之前,若所述接收端能够恢复最先采样的不大于预设第一 个数的报文的序号,关闭所述采样定时器,停止对接收到的报文的数据量进行采样。
[0020] 如此,即可在网络拥塞程度较轻时,不向发送端反馈拥塞带宽值。
[0021] 可选地,所述方法还包括:
[0022] 所述接收端在所述采样定时器超时且已采样的报文的个数小于预设第二个数时, 不统计已采样的报文的数据量之和。
[0023] 如此,即可在网络拥塞程度非常严重时,不向发送端反馈拥塞带宽值。
[0024] 具体地,所述接收端将确定出的拥塞带宽值发送给发送端,具体包括:
[0025] 所述接收端将所述拥塞带宽值携带在确认ACK报文的拥塞带宽私有选项中发送 给发送端。
[0026] 本发明实施例提供一种拥塞控制方法,所述方法包括:
[0027] 发送端接收接收端发送的拥塞带宽值;其中,所述拥塞带宽值是所述接收端在确 定出网络拥塞时确定的;
[0028] 所述发送端根据所述拥塞带宽值调整拥塞窗口值。
[0029] 如此,即可在网络拥塞时快速恢复报文的发送速率到实际可用带宽,大大提高了 网络资源的利用率。
[0030] 具体地,所述发送端接收接收端发送的拥塞带宽值,具体包括:
[0031] 所述发送端从所述接收端发送的ACK报文的拥塞带宽私有选项中获取所述拥塞 带宽值。
[0032] 具体地,所述发送端根据以下公式确定所述拥塞窗口值:
[0033] CWND = BC*RTT* β
[0034] 其中,Β。为所述拥塞带宽值,RTT为报文的往返时间,β为平滑因子。
[0035] 本发明实施例提供一种拥塞带宽检测装置,所述装置包括:
[0036] 确定模块,用于在确定出网络拥塞时,确定网络的拥塞带宽值;
[0037] 发送模块,用于将确定出的拥塞带宽值发送给发送端,以使所述发送端根据所述 拥塞带宽值调整拥塞窗口值。
[0038] 具体地,所述确定模块具体用于通过以下方式确定网络拥塞:
[0039] 所述确定模块在接收到乱序报文时确定网络拥塞。
[0040] 具体地,所述确定模块具体用于:
[0041] 在接收到乱序报文时,开启采样定时器开始对接收到的报文的数据量进行采样, 并在所述采样定时器超时时,统计已采样的报文的数据量之和;将所述已采样的报文的数 据量之和与所述采样定时器的时长的比值作为所述拥塞带宽值。
[0042] 可选地,所述确定模块还用于:
[0043] 在所述采样定时器超时之前,若能够恢复最先采样的不大于预设第一个数的报文 的序号,关闭所述采样定时器,停止对接收到的报文的数据量进行采样。
[0044] 可选地,所述确定模块还用于:
[0045] 在所述采样定时器超时且已采样的报文的个数小于预设第二个数时,不统计已采 样的报文的数据量之和。
[0046] 具体地,所述发送模块具体用于:将所述拥塞带宽值携带在确认ACK报文的拥塞 带宽私有选项中发送给发送端。
[0047] 本发明实施例提供一种拥塞控制装置,所述装置包括:
[0048] 接收模块,用于接收接收端发送的拥塞带宽值;其中,所述拥塞带宽值是所述接收 端在确定出网络拥塞时确定的;
[0049] 调整模块,用于根据所述拥塞带宽值调整拥塞窗口值。
[0050] 具体地,所述接收模块具体用于:
[0051] 从所述接收端发送的ACK报文的拥塞带宽私有选项中获取所述拥塞带宽值。
[0052] 具体地,所述调整模块具体用于根据以下公式确定所述拥塞窗口值:
[0053] CWND = BC*RTT* β
[0054] 其中,Β。为所述拥塞带宽值,RTT为报文的往返时间,β为平滑因子。
[0055] 本发明实施例提供一种拥塞控制系统,包括如上述所述的拥塞带宽检测装置和如 上述所述的拥塞控制装置。
【专利附图】
【附图说明】
[0056] 图1为现有的拥塞控制过程示意图;
[0057] 图2为本发明实施例一中拥塞带宽检测方法的步骤示意图;
[0058] 图3为本发明实施例二中拥塞控制方法的步骤示意图;
[0059] 图4为本发明的拥塞控制过程示意图;
[0060] 图5为本发明实施例三中拥塞带宽检测装置的结构示意图;
[0061] 图6为本发明实施例四中拥塞控制装置的结构示意图。
【具体实施方式】
[0062] 本发明实施例方案中,接收纟而在确定出网络拥塞时确定网络的拥塞带览值,并将 确定出的拥塞带宽值发送给发送端,从而发送端能够根据接收端确定出的拥塞带宽值调整 拥塞窗口值,可快速恢复报文的发送速率到实际可用带宽。其中,本发明实施例方案中网络 的拥塞带宽值为网络拥塞时的带宽值。
[0063] 下面结合说明书附图对本发明实施例作进一步说明,但本发明不局限于下面的实 施例。
[0064] 实施例一:
[0065] 如图2所示,本发明实施例一中的拥塞带宽检测方法包括以下步骤:
[0066] 步骤201 :接收端在确定出网络拥塞时,确定网络的拥塞带宽值;
[0067] 步骤202 :接收端将确定出的拥塞带宽值发送给发送端,以使发送端根据拥塞带 宽值调整拥塞窗口值。
[0068] 具体地,步骤201中,接收端在接收到乱序报文时确定网络拥塞。例如,假设接收 端之前接收到的报文的序号依次为1、2和3,当前接收到的报文的序号为5,则可确定网络 拥塞。
[0069] 基于此,接收端确定网络的拥塞带宽值,具体包括包括以下步骤:
[0070] 步骤一:接收端在接收到乱序报文时,开启采样定时器开始对接收到的报文的数 据量进行采样,并在采样定时器超时时,统计已采样的报文的数据量之和;
[0071] 步骤二:接收端将采样定时器超时时已采样的报文的数据量之和与采样定时器的 时长的比值作为拥塞带宽值。
[0072] 例如,假设接收端接收到乱序报文的时刻(即确定网络拥塞的时刻)为T0,采样定 时器的时长(即采样周期)为Λ T,T0时刻定时器开启,(T0+Λ T)时刻定时器超时,接收 端对Τ0?(Τ0+Λ Τ)时间段内接收到的报文的数据量进行采样,并在(Τ0+Λ Τ)时刻统计 已采样的报文的数据量之和RCV_DATA(即采样周期内接收到的报文的总数据量),则拥塞 带宽值为:
[0073] Bc = RCV_DATA/ Δ Τ (1)
[0074] 本发明实施例方案中,采样定时器的时长(即采样周期)ΛΤ的取值范围可以为 (0, RTT],因为在发生拥塞时,发送端需要经过一个RTT才能感知到,所以在接收端感知到 拥塞后一个RTT内接收到的数据才是有效的。其中,采样定时器的时长越短则反馈的拥塞 带宽值越及时,但同时因为采样数据太少,会导致精度不够;反之采样定时器的时长越长, 精度越高,但反馈也就越延后。基于此,采样定时器的时长优选值为〇. 5RTT (约30毫秒)。 其中,RTT为报文的往返时间,如果接收端也向发送端发送数据报文,则该RTT由接收端确 定,例如,该RTT为从接收端发送数据报文给发送端到接收端接收到发送端对该数据报文 的确认的时间;如果接收端不向发送端发送数据报文,则该RTT可以为一默认值。
[0075] 可选地,在采样定时器超时之前,如果接收端能够恢复最先采样的不大于预设第 一个数的报文的序号,关闭采样定时器,停止对接收到的报文的数据量进行采样。接收端能 够恢复最先采样的不大于预设第一个数的报文的序号,表示报文的乱序程度较轻,网络拥 塞程度较轻,无需确定拥塞带宽值。
[0076] 其中,预设第一个数的优选值为3个。例如,假设接收端依次接收到的报文的序号 为1、2、3、5、4、6……,在接收到序号为5的报文时开始对接收到的报文的数据量进行采样, 由于在接收到序号为4的报文时可以对报文的序号进行恢复(即能够恢复最先采样的2个 报文的序号),因此,关闭采样定时器,停止对后续接收到序号为6的报文进行采样,采样结 束。又例如,假设接收端依次接收到的报文的序号为1、2、3、5、6、4、7……,在接收到序号为 5的报文时开始对接收到的报文的数据量进行采样,由于在接收到序号为4的报文时可以 对报文的序号进行恢复(即能够恢复最先采样的3个报文的序号),因此,关闭采样定时器, 停止对后续接收到序号为7的报文进行采样,采样结束。由于在采样定时器超时之前就结 束采样,接收端不会统计已采样的报文的数据量之和,也不会确定网络的拥塞带宽值。
[0077] 这样做的目的是,如果接收端在接收到乱序报文后能够恢复3个以内(包含3个) 报文的序号,发送端不会收到3个重复的ACK,因此,发送端不会对拥塞窗口值进行调整,从 而接收端也无需向发送端反馈拥塞带宽值。
[0078] 如果接收端在接收到乱序报文后无法恢复3个以上(包含3个)报文的序号,会 向发送端发送至少3个重复的ACK,例如,假设接收端依次接收到的报文的序号为1、2、3、5、 6、7、4......,在接收到序号为5的报文时向发送端发送一个重复确认序号3的报文的ACK、在 接收到序号为6的报文时发送一个重复确认序号3的报文的ACK、在接收到序号为7的报文 时发送一个重复确认序号3的报文的ACK,接收端在接收到3个重复的ACK后会立即将拥塞 窗口值降为原来的一半,进入拥塞避免过程,因此,发送端需要确定拥塞带宽值,并将确定 出的拥塞带宽值反馈给发送端,以使发送端根据拥塞带宽值调整拥塞窗口值,从而快速恢 复报文的发送速率。
[0079] 可选地,接收端在采样定时器超时且已采样的报文的个数小于预设第二个数时, 不统计已采样的报文的数据量之和。接收端在采样定时器超时时已采样的报文的个数小于 预设第二个数,表示网络的拥塞程度过于严重,发送端可能已经进入慢启动过程,此时将拥 塞带宽值反馈给发送端已经没有任何意义。
[0080] 其中,预设第二个数的优选值为3个。也就是说如果T0?(T0+ Λ T)时间段内接 收到的报文的个数小于3个,就不统计已采样的报文的数据量之和,也不会确定网络的拥 塞带宽值。
[0081] 需要说明的是,在具体实现过程中,接收端也可在接收到多个乱序报文时,确定网 络拥塞,并开启采样定时器开始对接收到的报文的数据量进行采样。
[0082] 具体地,步骤202的具体的实现方式为:接收端将拥塞带宽值携带在ACK报文的拥 塞带宽私有选项中发送给发送端。
[0083] 其中,拥塞带宽私有选项的类型值kind可以为211,使用4个字节携带拥塞带宽 值,发送端根据接收到的ACK报文中的选项类型211即可获取拥塞带宽值。在获取了接收 端反馈的拥塞带宽值后,发送端即可根据拥塞带宽值调整拥塞窗口值,从而快速恢复报文 的发送速率至实际的可用带宽。
[0084] 需要说明的是,本发明实施例方案中接收端是根据发送端正常发送的报文来确定 网络拥塞带宽值的,不需要发送端发送特殊的报文以供接收端进行网络拥塞带宽的检测, 从而不会加重网络拥塞。
[0085] 实施例二
[0086] 本实施例二是与实施例一属于同一发明构思的一种拥塞控制方法,因此实施例二 的实施可以参见实施例一的实施,重复之处不再赘述。
[0087] 如图3所示,本发明实施例二中的拥塞控制方法包括以下步骤:
[0088] 步骤301 :发送端接收接收端发送的拥塞带宽值;
[0089] 步骤302 :发送端根据拥塞带宽值调整拥塞窗口值。
[0090] 其中,拥塞带览值是接收纟而在确定出网络拥塞时确定的。
[0091] 具体地,发送端从接收端发送的ACK报文的拥塞带宽私有选项中获取拥塞带宽 值,例如,发送端根据接收到的ACK报文中的选项类型211即可获取拥塞带宽值。
[0092] 在获取了接收端反馈的拥塞带宽值后,发送端即可根据拥塞带宽值调整拥塞窗口 值。具体地,发送端可根据以下公式确定整拥塞窗口值:
[0093] CWND = BC*RTT* β (2)
[0094] 其中,Β。为接收端反馈的拥塞带宽值,RTT为报文的往返时间,β为平滑因子,β 为小于1的正数,可根据实际情况进行设定,在一个具体实例中,β的取值为0.8。此处的 RTT可以由发送端根据已发送报文的确认情况进行确定。
[0095] 采用本发明的方案,发送端可在网络拥塞时接收到接收端反馈的拥塞带宽值,并 根据拥塞带宽值调整拥塞窗口值,从而快速恢复报文的发送速率至实际的可用带宽。
[0096] 如图4所示为采用本发明实施例提供的方案进行拥塞控制的过程示意图,其中, Τ1时刻发送端接收到3个重复的ACK,将拥塞窗口值降为原来的一半;Τ2时刻发送端接收 到接收端反馈的拥塞带宽值,迅速将拥塞窗口值调整为拥塞带宽值对应的拥塞窗口值。图4 中的虚线为按照现有的拥塞控制方法逐步调整拥塞窗口值的过程。由此可知,采用本发明 实施例提供的方案相对于现有技术可快速恢复报文的发送速率至实际的可用带宽。
[0097] 实施例三:
[0098] 本实施例三是与实施例一属于同一发明构思的一种拥塞带宽检测装置,因此实施 例三的实施可以参见实施例一的实施,重复之处不再赘述。
[0099] 如图5所示,所述装置包括:
[0100] 确定模块51,用于在确定出网络拥塞时,确定网络的拥塞带宽值;
[0101] 发送模块52,用于将确定出的拥塞带宽值发送给发送端,以使所述发送端根据所 述拥塞带宽值调整拥塞窗口值。
[0102] 具体地,所述确定模块51具体用于通过以下方式确定网络拥塞:
[0103] 确定模块51在接收到乱序报文时确定网络拥塞。
[0104] 具体地,所述确定模块51具体用于:
[0105] 在接收到乱序报文时,开启采样定时器开始对接收到的报文的数据量进行采样, 并在所述采样定时器超时时,统计已采样的报文的数据量之和;将所述已采样的报文的数 据量之和与所述采样定时器的时长的比值作为所述拥塞带宽值。
[0106] 可选地,所述确定模块51还用于:
[0107] 在所述采样定时器超时之前,若能够恢复最先采样的不大于预设第一个数的报文 的序号,关闭所述采样定时器,停止对接收到的报文的数据量进行采样。
[0108] 可选地,所述确定模块51还用于:
[0109] 在所述采样定时器超时且已采样的报文的个数小于预设第二个数时,不统计已采 样的报文的数据量之和。
[0110] 具体地,所述发送模块52具体用于:将所述拥塞带宽值携带在确认ACK报文的拥 塞带宽私有选项中发送给发送端。
[0111] 其中,本发明实施例三中的拥塞带宽检测装置可以是实施例一中的接收端。
[0112] 需要说明的是,本发明实施例三中对拥塞带宽检测装置的各组成部分的描述是对 各组成部分主要功能的描述,本发明实施例三中各组成部分也具备实现实施例一中所描述 的方法步骤的功能,同时,本发明实施例三中的拥塞带宽检测装置还具有执行实施例一各 步骤的逻辑模块。
[0113] 实施例四:
[0114] 本实施例四是与实施例二属于同一发明构思的一种拥塞控制装置,因此实施例四 的实施可以参见实施例二的实施,重复之处不再赘述。
[0115] 如图6所示,所述装置包括:
[0116] 接收模块61,用于接收接收端发送的拥塞带宽值;其中,所述拥塞带宽值是所述 接收端在确定出网络拥塞时确定的;
[0117] 调整模块62,用于根据所述拥塞带宽值调整拥塞窗口值。
[0118] 具体地,所述接收模块61具体用于:
[0119] 从所述接收端发送的ACK报文的拥塞带宽私有选项中获取所述拥塞带宽值。
[0120] 具体地,所述调整模块62具体用于根据以下公式确定所述拥塞窗口值:
[0121] CWND = BC*RTT* β
[0122] 其中,Β。为所述拥塞带宽值,RTT为报文的往返时间,β为平滑因子。
[0123] 其中,本发明实施例四中的拥塞带宽检测装置可以是实施例二中的发送端。
[0124] 需要说明的是,本发明实施例四中对拥塞控制装置的各组成部分的描述是对各组 成部分主要功能的描述,本发明实施例四中各组成部分也具备实现实施例二中所描述的方 法步骤的功能,同时,本发明实施例四中的拥塞控制装置还具有执行实施例二各步骤的逻 辑模块。
[0125] 基于同一发明构思,本发明还提供一种拥塞控制系统,包括实施例三中的拥塞带 宽检测装置和实施例四中的拥塞控制装置。
[0126] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序 产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实 施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机 可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产 品的形式。
[0127] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程 图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一 流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算 机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理 器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生 用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能 的装置。
[0128] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特 定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指 令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或 多个方框中指定的功能。
[0129] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计 算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或 其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图 一个方框或多个方框中指定的功能的步骤。
[0130] 尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造 性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优 选实施例以及落入本发明范围的所有变更和修改。
[0131] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精 神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围 之内,则本发明也意图包含这些改动和变型在内。
【权利要求】
1. 一种拥塞带宽检测方法,其特征在于,所述方法包括: 接收在确定出网络拥塞时,确定网络的拥塞带览值; 所述接收端将确定出的拥塞带宽值发送给发送端,以使所述发送端根据所述拥塞带宽 值调整拥塞窗口值。
2. 如权利要求1所述的方法,其特征在于,所述接收端通过以下方式确定网络拥塞: 所述接收端在接收到乱序报文时确定网络拥塞。
3. 如权利要求2所述的方法,其特征在于,所述接收端确定网络的拥塞带宽值,具体包 括: 所述接收端在接收到乱序报文时,开启采样定时器开始对接收到的报文的数据量进行 采样,并在所述采样定时器超时时,统计已采样的报文的数据量之和; 所述接收端将所述已采样的报文的数据量之和与所述采样定时器的时长的比值作为 所述拥塞带宽值。
4. 如权利要求3所述的方法,其特征在于,所述方法还包括: 在所述采样定时器超时之前,若所述接收端能够恢复最先采样的不大于预设第一个数 的报文的序号,关闭所述采样定时器,停止对接收到的报文的数据量进行采样。
5. 如权利要求3所述的方法,其特征在于,所述方法还包括: 所述接收端在所述采样定时器超时且已采样的报文的个数小于预设第二个数时,不统 计已采样的报文的数据量之和。
6. 如权利要求1所述的方法,其特征在于,所述接收端将确定出的拥塞带宽值发送给 发送端,具体包括: 所述接收端将所述拥塞带宽值携带在确认ACK报文的拥塞带宽私有选项中发送给发 送端。
7. -种拥塞控制方法,其特征在于,所述方法包括: 发送端接收接收端发送的拥塞带宽值;其中,所述拥塞带宽值是所述接收端在确定出 网络拥塞时确定的; 所述发送端根据所述拥塞带宽值调整拥塞窗口值。
8. 如权利要求7所述的方法,其特征在于,所述发送端接收接收端发送的拥塞带宽值, 具体包括: 所述发送端从所述接收端发送的ACK报文的拥塞带宽私有选项中获取所述拥塞带宽 值。
9. 如权利要求7所述的方法,其特征在于,所述发送端根据以下公式确定所述拥塞窗 口值: CWND = BC*RTT* β 其中,Β。为所述拥塞带宽值,RTT为报文的往返时间,β为平滑因子。
10. -种拥塞带宽检测装置,其特征在于,所述装置包括: 确定模块,用于在确定出网络拥塞时,确定网络的拥塞带宽值; 发送模块,用于将确定出的拥塞带宽值发送给发送端,以使所述发送端根据所述拥塞 带宽值调整拥塞窗口值。
11. 如权利要求10所述的装置,其特征在于,所述确定模块具体用于通过以下方式确 定网络拥塞: 所述确定模块在接收到乱序报文时确定网络拥塞。
12. 如权利要求11所述的装置,其特征在于,所述确定模块具体用于: 在接收到乱序报文时,开启采样定时器开始对接收到的报文的数据量进行采样,并在 所述采样定时器超时时,统计已采样的报文的数据量之和;将所述已采样的报文的数据量 之和与所述采样定时器的时长的比值作为所述拥塞带宽值。
13. 如权利要求12所述的装置,其特征在于,所述确定模块还用于: 在所述采样定时器超时之前,若能够恢复最先采样的不大于预设第一个数的报文的序 号,关闭所述采样定时器,停止对接收到的报文的数据量进行采样。
14. 如权利要求12所述的装置,其特征在于,所述确定模块还用于: 在所述采样定时器超时且已采样的报文的个数小于预设第二个数时,不统计已采样的 报文的数据量之和。
15. 如权利要求10所述的装置,其特征在于,所述发送模块具体用于:将所述拥塞带宽 值携带在确认ACK报文的拥塞带宽私有选项中发送给发送端。
16. -种拥塞控制装置,其特征在于,所述装置包括: 接收模块,用于接收接收端发送的拥塞带宽值;其中,所述拥塞带宽值是所述接收端在 确定出网络拥塞时确定的; 调整模块,用于根据所述拥塞带宽值调整拥塞窗口值。
17. 如权利要求16所述的装置,其特征在于,所述接收模块具体用于: 从所述接收端发送的ACK报文的拥塞带宽私有选项中获取所述拥塞带宽值。
18. 如权利要求16所述的装置,其特征在于,所述调整模块具体用于根据以下公式确 定所述拥塞窗口值: CWND = BC*RTT* β 其中,Β。为所述拥塞带宽值,RTT为报文的往返时间,β为平滑因子。
19. 一种拥塞控制系统,其特征在于,包括如权利要求10?15任一所述的拥塞带宽检 测装置和如权利要求16?18任一所述的拥塞控制装置。
【文档编号】H04L12/807GK104125159SQ201410366215
【公开日】2014年10月29日 申请日期:2014年7月29日 优先权日:2014年7月29日
【发明者】周子博 申请人:福建星网锐捷网络有限公司