拥塞控制方法以及相关设备与流程

文档序号:25296160发布日期:2021-06-04 11:25阅读:233来源:国知局
拥塞控制方法以及相关设备与流程

1.本申请实施例涉及网络控制领域,尤其涉及拥塞控制方法以及相关设备。


背景技术:

2.当前传输控制协议(transmission control protocol,tcp)、远程直接内存访问(remote direct memory access,rdma)等网络技术在网络领域被广泛使用,而这些网络技术对于网络设备的拥塞指标也越来越高,拥塞指标主要包括时延,吞吐等。
3.为了控制网络设备的拥塞指标,网络设备会设置拥塞控制参数以控制流量。拥塞控制参数可以通过网络设备上安装的人工智能(artificial intelligence,ai)模型获得,ai模型可以利用初始ai模型通过大量的历史流量特征训练得到。利用ai模型得到拥塞控制参数的流程如下:网络设备采集网络设备上的流量特征,例如出口转发速率、队列深度等,网络设备将采集到的流量特征输送到ai模型进行在线推理,ai模型根据流量特征向网络设备的转发芯片输出拥塞控制参数。然后,转发芯片利用获得的拥塞控制参数控制网络设备的流量。
4.通常,ai模型需要由大量的历史流量特征训练得到,对于历史流量特征的场景不够广泛的情况下,有限的历史流量特征的场景就不能完全覆盖所有的流量场景,会导致ai模型输出的拥塞控制参数不够理想,因此出现ai模型适应性不足甚至不适应的情况,即场景泛化性问题。


技术实现要素:

5.本申请实施例提供了一种拥塞控制方法以及相关设备,可以提升拥塞控制规则的场景泛化性。
6.本申请实施例第一方面提供了一种拥塞控制方法。
7.网络设备上配置有第一拥塞控制规则,网络设备可以通过该第一拥塞控制规则获取第一拥塞控制参数,在第一设备根据第一拥塞控制参数转发流量后,网络设备可以获取第一流量特征,该第一流量特征包括第一设备在第一周期内根据第一拥塞控制参数转发流量时生成的统计信息,网络设备可以根据获取到的第一流量特征,获取第一回报值。在网络设备通过第一拥塞控制规则获取第一拥塞控制参数之后,网络设备可以利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数,因为第一步长不等于0,因此第二拥塞控制参数不等于第一拥塞控制参数。在第一设备根据第二拥塞控制参数转发流量后,网络设备可以获取第二流量特征,该第二流量特征包括第一设备在第二周期内根据第二拥塞控制参数转发流量时生成的统计信息,网络设备可以根据获取到的第二流量特征,获取第二回报值。网络设备可以确定第二回报值是否大于第一回报值,若网络设备确定第二回报值大于第一回报值,则网络设备执行相应的处理。
8.本申请实施例中,在经过第一拥塞控制规则获得第一拥塞控制参数后,网络设备可以获取第一流量特征,该第一流量特征包括第一设备在第一周期内根据第一拥塞控制参
数转发流量时生成的统计信息,第一拥塞控制参数是根据第一拥塞控制规则获得的,网络设备根据第一流量特征可以获得第一回报值,在利用第一步长修改第一拥塞控制参数后,网络设备可以获得第二拥塞控制参数,网络设备还可以获取第二流量特征,该第二流量特征包括第一设备在第二周期内根据第二拥塞控制参数转发流量时生成的统计信息,网络设备根据该第二流量特征,可以获得第二回报值,若第二回报值大于第一回报值,则网络设备执行相应的处理,其中,网络设备利用第一步长修改第一拥塞控制参数,获得了可以获得更大回报值的第二拥塞控制参数,因为第二回报值大于第一回报值,因此第二拥塞控制参数优于第一拥塞控制参数,因此网络设备对第一拥塞控制规则的推理结果进行了优化,提升了第一拥塞控制规则的场景泛化性。
9.在一种可能的设计中,在网络设备利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数之前,网络设备可以获取到第一设备的第一运行值和第二运行值,第一运行值是第一设备在目标周期内的运行值,第二运行值是第一设备在目标周期前一周期内的运行值,网络设备还可以获取到目标阈值,目标阈值为事先设定的一个值,网络设备确定第一运行值和第二运行值的差值的绝对值是否小于目标阈值,只有当第一运行值和第二运行值的差值的绝对值小于目标阈值,网络设备才会执行利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数的步骤。其中,目标周期是指第一周期的前一周期。
10.本申请实施例中,在网络设备利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数之前,网络设备先确定是否需要利用第一步长修改第一拥塞控制参数,网络设备通过确定第一设备转发的流量是否趋于稳定来确定是否需要利用第一步长修改第一拥塞控制参数,网络设备确定第一设备转发的流量是否趋于稳定的方法是:网络设备获取第一设备不同周期的第一运行值和第二运行值,网络设备确定第一运行值和第二运行值的差值的绝对值是否小于目标阈值,当第一运行值和第二运行值的差值的绝对值小于目标阈值时,网络设备确定第一设备转发的流量趋于稳定,网络设备从而确定需要利用第一步长修改第一拥塞控制参数,其中,网络设备通过确定第一设备转发的流量是否趋于稳定来确定是否需要利用第一步长修改第一拥塞控制参数,因为当第一设备转发的流量趋于稳定时,网络设备后续修改第一拥塞控制参数的结果才更加准确,即网络设备可以确定第二回报值大于第一回报值的结果是由于网络设备利用第一步长修改第一拥塞控制参数获得的,反过来说,当第一设备转发的流量波动较大时,即使实际上网络设备利用第一步长修改第一拥塞控制参数是有优势的,既第二拥塞控制参数优于第一拥塞控制参数,但是由于第一设备转发的流量波动较大,有可能导致第二回报值小于第一回报值,导致网络设备做出错误的判断,因此网络设备通过确定第一设备转发的流量是否趋于稳定来确定是否需要利用第一步长修改第一拥塞控制参数的方式,可以提升方案的准确性。
11.在一种可能的设计中,网络设备可以仅通过第一拥塞控制规则调整初始拥塞控制参数,仅通过第一拥塞控制规则调整初始拥塞控制规则是指,网络设备不利用步长调整网络设备根据第一拥塞控制规则得出的拥塞控制参数,网络设备直接将第一拥塞控制规则得出的拥塞控制参数作为第一设备控制流量转发的参数;在网络设备利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数之前,网络设备可以统计网络设备仅通过第一拥塞控制规则调整初始拥塞控制参数的连续调整次数,当该连续调整次数大于设定阈值n时,网络设备才会利用第一步长修改第一拥塞控制参数,相应地,第一拥塞控制参数为将初始拥
塞控制参数根据所述第一拥塞控制规则连续调整n+1次得到的。
12.本申请实施例中,在网络设备利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数之前,网络设备可以统计网络设备仅通过第一拥塞控制规则调整初始拥塞控制参数的连续调整次数,当该连续调整次数大于设定阈值n时,网络设备可以利用第一步长修改第一拥塞控制参数,其中,在每次网络设备根据第一拥塞控制规则得到拥塞控制参数时,网络设备可以不必每次都利用步长修改拥塞控制参数,因此网络设备可以不利用步长调整网络设备根据第一拥塞控制规则得出的拥塞控制参数,而是直接将第一拥塞控制规则得出的拥塞控制参数作为第一设备控制流量转发的参数,但是网络设备的判断机制可能不够完善,网络设备的判断机制是指:网络设备选择利用步长修改后的拥塞控制参数作为第一设备控制流量转发的参数还是选择直接将第一拥塞控制规则得出的拥塞控制参数作为第一设备控制流量转发的参数的选择条件;如果网络设备的判断机制不够完善,可能会导致网络设备持续选择直接将第一拥塞控制规则得出的拥塞控制参数作为第一设备控制流量转发的参数,而不选择利用步长修改后的拥塞控制参数作为第一设备控制流量转发的参数,即不执行网络设备利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数的步骤,因为在网络设备确定连续调整次数大于设定阈值n时,网络设备可以利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数,因此提高了网络设备利用步长修改后的拥塞控制参数作为第一设备控制流量转发的参数的概率,因此提高了网络设备对第一拥塞控制参数进行优化的概率,因此提升了第一拥塞控制规则的泛化性。
13.在一种可能的设计中,第一拥塞控制规则为第一公式,第一公式为q=f(a,b),其中,q为拥塞控制参数,a为速率,b为设定时延,f(a,b)为跟a和b相关的函数。
14.本申请实施例中,具体限定了第一拥塞控制规则为第一公式,且具体限定了公式中的部分参数,其中,a为速率,b为设定时延,b为事先设定的值,a为网络设备获取的速率,网络设备可以利用获取的速率和设定时延,通过第一公式获取拥塞控制参数,当获取的速率发生变化时,拥塞控制参数也可能因此而发生变化,因此实现了网络设备根据不同速率得出不同拥塞控制参数,即实现了第一设备对转发流量的动态控制,因此提升了方案的可实现性。
15.在一种可能的设计中,第一公式为q=a
×
b。
16.本申请实施例中,具体限定了a和b的关系,提升了方案的可实现性。
17.在一种可能的设计中,在第二回报值大于第一回报值时,网络设备利用第一步长修改第一公式,获得第二公式。
18.本申请实施例中,网络设备在利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数后,网络设备确定第二回报值大于第一回报值,即第二拥塞控制参数优于第一拥塞控制参数,因此,网络设备利用第一步长修改第一拥塞控制规则,其中,网络设备在确定第二拥塞控制参数优于第一拥塞控制参数后,网络设备利用第一步长修改第一公式,网络设备不仅优化了根据第一拥塞控制规则得出的第一拥塞控制参数,还优化了第一拥塞控制规则,因此从根源上提升了第一拥塞控制规则的泛化性。
19.在一种可能的设计中,网络设备根据获取的第二流量特征,利用第二公式获得第三拥塞控制参数,该第三拥塞控制参数用于第一设备控制转发的流量。
20.本申请实施例中,网络设备利用第一步长修改第二公式后,网络设备可以根据第
二流量特征,利用第二公式获得第三拥塞控制参数,该第三拥塞控制参数可以用于控制第一设备转发的流量,其中,网络设备利用第二公式获得了第三拥塞控制参数,即网络设备利用第二公式替换了第一公式,而第二公式是由第一公式优化而来,因此提高了第一设备的拥塞指标,提升了第一公式的泛化性。
21.在一种可能的设计中,第一步长为百分比值。
22.本申请实施例中,第一步长为百分比值,因为在不同的流量模型中,第一拥塞控制参数的数值可能变化比较大,如果第一步长为具体的值,例如20,当第一拥塞控制参数为1000时,第一步长对第一拥塞控制参数的修改会显得太小;当第一拥塞控制参数的范围为0-30,第一拥塞控制参数为10,第一步长为20时,第一步长对第一拥塞控制参数的修改会显的太大,因此第一步长可以采用百分比值,去掉因为第一拥塞控制参数本身大小变化的干扰,因此在实际应用中,第一步长可以应用于不同的第一拥塞控制参数,因此提升了方案在不同场景下的适应性,即提升了方案的泛化性。
23.在一种可能的设计中,第二公式为q=a
×
b
×
(1+c),其中,所述c为第一步长。
24.本申请实施例中,具体限定了第二公式为q=a
×
b
×
(1+c),c为第一步长,因此提升了方案的可实现性。
25.在一种可能的设计中,在网络设备确认第二回报值大于第一回报值后,网络设备利用第二步长修改第二拥塞控制参数,获得第三拥塞控制参数,在第一设备根据第三拥塞控制参数转发流量后,网络设备可以获取第三流量特征,该第三流量特征包括第一设备在第三周期内根据第三拥塞控制参数转发流量时生成的统计信息,网络设备可以根据获取到的第三流量特征,获取第三回报值。
26.本申请实施例中,在网络设备确认第二回报值大于第一回报值后,即网络设备确认第二拥塞控制参数优于第一拥塞控制参数后,网络设备利用第二步长正向修改第二拥塞控制参数,获得第三拥塞控制参数,其中,第二拥塞控制参数优于第一拥塞控制参数,网络设备在得到优于第一拥塞控制参数的第二拥塞控制参数后,因为第二拥塞控制参数有可能并不是最优的拥塞控制参数,网络设备在第二拥塞控制参数的基础上做进一步的优化尝试,因此提高了网络设备获取更优的拥塞控制参数的概率,提高了第一拥塞控制规则的泛化性程度。
27.在一种可能的设计中,若第三回报值小于第二回报值,网络设备可以利用第三步长反向修改第二拥塞控制参数,获得第四拥塞控制参数,在第一设备根据第四拥塞控制参数转发流量后,网络设备可以获取第四流量特征,该第四流量特征包括第一设备在第四周期内根据第四拥塞控制参数转发流量时生成的统计信息,网络设备可以根据获取到的第四流量特征,获取第四回报值。
28.本申请实施例中,第二拥塞控制参数是一个值,网络设备可以修改这个值让第二拥塞控制参数变大或者变小,在网络设备尝试将第二拥塞控制参数变大或者变小,获得第三拥塞控制参数后,若第三回报值小于第二回报值,则网络设备可以确定第二拥塞控制参数优于第三拥塞控制参数,则网络设备可以确定前面尝试将第二拥塞控制参数变大或者变小的行为是错误的,因此网络设备利用第三步长反向修改第二拥塞控制参数,获得第四拥塞控制参数,此处限定的反向修改只是为了与前述的正向修改做区分,不限定反向修改就是网络设备对第二拥塞控制参数执行变小操作,其中,网络设备在一个方向上尝试获得比
第二拥塞控制参数更优的第三拥塞控制参数失败后,网络设备向相反的反向尝试获得比第二拥塞控制参数更优的第四拥塞控制参数,因此提高了网络设备获取更优的拥塞控制参数的概率,提高了第一拥塞控制规则的泛化性程度。
29.在一种可能的设计中,网络设备利用第三步长修改第二拥塞控制参数获得了第四拥塞控制参数,在第一设备根据第四拥塞控制参数转发流量后,网络设备可以获取第四流量特征,该第四流量特征包括第一设备在第四周期内根据第四拥塞控制参数转发流量时生成的统计信息,网络设备可以根据获取到的第四流量特征,获取第四回报值,若该第四回报值大于第二回报值,则网络设备利用第三步长和第一步长修改第一拥塞控制规则,获得第二拥塞控制规则。
30.本申请实施例中,网络设备在利用第三步长修改第二拥塞控制参数,获得第四拥塞控制参数后,网络设备确定第四回报值大于第二回报值,即第四拥塞控制参数优于第二拥塞控制参数,并且,第二回报值大于第一回报值,即第二拥塞控制参数优于第一拥塞控制参数因此,网络设备利用第三步长和第一步长修改第一拥塞控制规则,其中,网络设备在确定第四拥塞控制参数优于第二拥塞控制参数后,网络设备利用第三步长和第一步长修改第一拥塞控制规则,网络设备不仅两次优化了根据第一拥塞控制规则得出的第一拥塞控制参数,还优化了第一拥塞控制规则,因此从根源上提升了第一拥塞控制规则的泛化性。
31.在一种可能的设计中,在网络设备获取到优于第二拥塞控制参数的第四拥塞控制参数,并利用第三步长和第一步长修改第一拥塞控制规则,获得第二拥塞控制规则后,网络设备根据第四流量特征,利用第二拥塞控制规则生成第一设备的新的拥塞控制参数,该新的拥塞控制参数用于第一设备控制转发的流量。
32.本申请实施例中,网络设备利用第三步长和第一步长修改第二公式后,网络设备可以根据第四流量特征,利用第二拥塞控制规则获得新的拥塞控制参数,该新的拥塞控制参数可以用于控制第一设备转发的流量,其中,网络设备利用新的拥塞控制参数获得了新的拥塞控制参数,即网络设备利用第二拥塞控制规则替换了第一拥塞控制规则,而第二拥塞控制规则是由第一拥塞控制规则优化而来,因此提高了第一设备的拥塞指标,因此提升了第一拥塞控制规则的泛化性。
33.在一种可能的设计中,第二步长大于第一步长。
34.本申请实施例中,第二步长大于第一步长,在网络设备利用第一步长修改第一拥塞控制参数后,网络设备获得了优于第一拥塞控制参数的第二拥塞控制参数,由此证明网络设备对第一拥塞控制参数进行修改的必要性和正确性,因此网络设备可以在利用步长修改第二拥塞控制参数时,利用大于第一步长的第二步长,其中,因为第二步长大于第一步长,因此在拥塞控制参数的取值范围内,网络设备可以更快的确定出网络设备认为的最优的拥塞控制参数,因此可以减少收敛时间。
35.在一种可能的设计中,网络设备上配置有第三拥塞控制规则,网络设备可以通过该第三拥塞控制规则获取第五拥塞控制参数,在第二设备根据第五拥塞控制参数转发流量后,网络设备可以获取第五流量特征,该第五流量特征包括第二设备在第一周期内根据第五拥塞控制参数转发流量时生成的统计信息,网络设备可以根据获取到的第五流量特征,获取第五回报值;在网络设备通过第三拥塞控制规则获取第五拥塞控制参数之后,网络设备可以利用第四步长修改第五拥塞控制参数,获得第六拥塞控制参数,因为第一步长不等
于0,因此第六拥塞控制参数不等于第五拥塞控制参数,在第二设备根据第六拥塞控制参数转发流量后,网络设备可以获取第六流量特征,该第六流量特征包括第二设备在第二周期内根据第六拥塞控制参数转发流量时生成的统计信息,网络设备可以根据获取到的第六流量特征,获取第六回报值;网络设备可以确定第六回报值与第二回报之和是否大于第五回报值与第一回报值之和,若网络设备确定第六回报值与第二回报之和大于第五回报值与第一回报值之和,则网络设备执行相应的所述相应的处理。
36.本申请实施例中,在经过第三拥塞控制规则获得第五拥塞控制参数后,网络设备可以获取第五流量特征,该第五流量特征包括第二设备在第一周期内根据第五拥塞控制参数转发流量时生成的统计信息,第五拥塞控制参数是根据第三拥塞控制规则获得的,网络设备根据第五流量特征可以获得第五回报值,在利用第四步长修改第三拥塞控制参数后,网络设备可以获得第六拥塞控制参数,网络设备还可以获取第六流量特征,该第六流量特征包括第二设备在第二周期内根据第六拥塞控制参数转发流量时生成的统计信息,网络设备根据该第六流量特征,可以获得第六回报值;网络设备在获取到第一回报值,第二回报值,第五回报值和第六回报值后,网络设备可以确定第六回报值与第二回报之和是否大于第五回报值与第一回报值之和,若网络设备确定第六回报值与第二回报之和大于第五回报值与第一回报值之和,则网络设备执行所述相应的处理,其中,在网络的流量控制中,第一设备和第二设备间的流量可能会相互影响,因此网络设备综合考虑了两台设备上的回报值之和,网络设备利用第一步长修改第一拥塞控制参数,获得了第二拥塞控制参数,网络设备利用第四步长修改第五拥塞控制参数,获得了第六拥塞控制参数,因为第六回报值与第二回报之和大于第五回报值与第一回报值之和,因此网络设备此次修改第一拥塞控制参数和第二拥塞控制参数的收益是正的,因此提升了在多台设备转发的流量控制时,第一拥塞控制规则和第二拥塞控规则的场景泛化性。
37.在一种可能的设计中,在网络设备确定第六回报值与第二回报之和大于第五回报值与第一回报值之和之后,网络设备利用第四步长修改第三拥塞控制规则,网络设备利用第一步长修改所述第一拥塞控制规则。
38.本申请实施例中,网络设备在利用第四步长修改第五拥塞控制参数,获得第五拥塞控制参数后,网络设备确定第六回报值与第二回报之和大于第五回报值与第一回报值之和,即第六拥塞控制参数和第二拥塞控制参数产生的综合回报值优于第五拥塞控制参数和第一拥塞控制参数的综合回报值,因此,网络设备利用第一步长修改第一拥塞控制规则,网络设备利用第四步长修改所述第三拥塞控制规则,其中,网络设备在确定第六回报值与第二回报之和大于第五回报值与第一回报值之和之后,网络设备修改第一拥塞控制规则和第三拥塞控制规则,网络设备不仅优化了根据第一拥塞控制规则得出的第一拥塞控制参数和第三拥塞控制参数得出的第五拥塞控制参数,还优化了第一拥塞控制规则和第三拥塞控制规则,因此从根源上提升了拥塞控制规则的泛化性。
39.在一种可能的设计中,在网络设备确认第六回报值与第二回报之和大于第五回报值与第一回报值之和之后,网络设备利用第二步长修改第二拥塞控制参数,获得第三拥塞控制参数,网络设备利用第五步长修改第六拥塞控制参数,获得第七拥塞控制参数,在第一设备根据第三拥塞控制参数转发流量,第二设备根据第七拥塞控制参数转发流量后,网络设备可以获取第三流量特征和第七流量特征,该第三流量特征包括第一设备在第三周期内
根据第三拥塞控制参数转发流量时生成的统计信息,该第七流量特征包括第二设备在第三周期内根据第三拥塞控制参数转发流量时生成的统计信息,网络设备根据第三流量特征,获得第三回报值,根据第七流量特征,获得第七回报值。
40.本申请实施例中,在网络设备第六回报值与第二回报之和大于第五回报值与第一回报值之和之后,网络设备利用第二步长修改第二拥塞控制参数,获得第三拥塞控制参数,网络设备利用第五步长修改第六拥塞控制参数,获得第七拥塞控制参数,其中,第六拥塞控制参数和第二拥塞控制参数的综合收益大于第五拥塞控制参数和第一拥塞控制参数的综合收益,既第六拥塞控制参数和第二拥塞控制参数的组合产生的回报值大于第五拥塞控制参数和第一拥塞控制参数的的组合产生的回报值,网络设备在得到优于第一拥塞控制参数和第五拥塞控制参数的组合后,但是因为第二拥塞控制参数和第六拥塞控制参数的组合有可能并不是最优的拥塞控制参数组合,网络设备在第二拥塞控制参数和第六拥塞控制参数的组合基础上做进一步的优化尝试,因此提高了网络设备获取优于第二拥塞控制参数和第六拥塞控制参数组合的概率,提高了第一拥塞控制规则和第三拥塞控制规则的泛化性程度。
41.本申请实施例第二方面提供了一种拥塞控制装置,包括多个功能模块,该多个功能模块可以全部是软件模块或硬件模块,还可以是软件模块和硬件模块的组合,该多个功能模块可以根据实现做不同划分,以能实现上述第一方面及其各实施方式中的方法为准则。
42.本申请实施例第三方面提供了一种拥塞控制设备,包括存储器和处理器。
43.其中,所述存储器用于存储程序;
44.所述处理器用于执行所述存储器中的程序,使得该拥塞控制设备执行如上述第一方面及其任意一项实施方式所述的方法。
45.本申请实施例第四方面提供了一种计算机存储介质,所述计算机存储介质中存储有指令,所述指令在计算机上执行时,使得所述计算机执行如上述第一方面及其任意一项实施方式所述的方法。
46.本申请实施例第五方面提供了一种计算机程序产品,所述计算机程序产品在计算机上执行时,使得所述计算机执行如上述第一方面及其任意一项实施方式所述的方法。
附图说明
47.图1为本申请实施例的网络框架示意图;
48.图2为本申请实施例中拥塞控制方法的一个流程示意图;
49.图3为本申请实施例中拥塞控制方法的另一个流程示意图;
50.图4为本申请实施例中拥塞控制方法的另一个流程示意图;
51.图5为本申请实施例中拥塞控制方法的另一个流程示意图;
52.图6为本申请实施例中拥塞控制装置的一个结构示意图;
53.图7为本申请实施例中拥塞控制装置的另一个结构示意图;
54.图8为本申请实施例中拥塞控制设备的一个结构示意图。
具体实施方式
55.本申请实施例提供了一种拥塞控制方法及相关设备,用于网络控制领域,可以提升拥塞控制规则的场景泛化性。
56.为了更好的理解本申请实施例中的拥塞控制方法,下面对本申请实施例应用的术语进行描述。
57.ai模型:ai模型是一种算法,是指经过历史数据训练后,可以通过输入数据得到解的模型,ai模型既可以是主流的深度神经网络模型,也可以是传统机器学习模型。
58.流量控制:在网络中,当有流量经过某个网络节点时,网络节点便会产生流量,为了保持流量的稳定,即为了流量满足一定的条件,会对网络节点的流量进行控制。网络节点可以是网络设备,例如服务器,交换机,路由器等。
59.当前tcp、rdma等网络技术在广域网、数据中心等领域被广泛使用,而这些网络技术对于网络的需求也越来越高,其中吞吐和时延是主要的拥塞指标。例如,tcp网络中,网络设备根据丢弃概率参数来丢包以进行流量控制,rdma网络中通过动态调节显性拥塞通知(explicit congestion notification,ecn)水线来满足吞吐和时延。例如,ecn机制广泛应用于基于增强roce(rdma over converged ethernet)的高性能数据中心网络中,合理的ecn配置对网络流量控制起着关键性作用。ecn水线过高,容易导致交换机队列堆积,网络延迟增加,业务时延变差;ecn水线过低,容易导致网络欠吞吐,业务吞吐量将会降低。合理调节ecn配置对网络提高带宽利用利用率和降低网络延迟有着重要作用。交换机对于队列有三个ecn值可以配置,分别是上水线、下水线和最大标记概率。队列长度的两个门限值定义了标记概率,两个门限值分别为下水线和上水线。当队列长度低于门限值下水线时,ecn不会被标记,等同于实际标记概率为0;当队列长度超过门限值上水线时,所有从该队列传输的网络包都会被进行ecn标记,等同于实际标记概率为1,当队列长度处于两个门限值之间时,数据包会以与队列长度线性增长的概率被进行ecn标记。以交换机为例说明ecn标记的含义,交换机配置ecn上水线和下水线,当交换机端口出现拥塞时,则会根据ecn阈值确定是否为报文打上ecn标记,接收端则会根据携带ecn标记的报文生成拥塞通知(congestion notification packets,cnp)报文告知源端,源端网卡根据cnp报文数量降低发生速率,从而避免拥塞。
60.业务和网络流量的多样性,会产生不同的网络流量模型。而在不同网络流量模型下,网络设备如何根据流量的变化动态调节和精确适配拥塞控制参数,从而保障网络性能,成为网络中一个重要挑战目标。
61.下面将结合附图,对本申请实施例中的技术方案进行描述。示例性的,本申请实施例所涉及附图中的以虚线标识的特征或内容可理解为实施例可选地操作或者可选地结构。
62.请参阅图1,本申请实施例的网络框架包括:网络设备101,第一设备102,第二设备103;其中,网络设备101分别与第一设备102,第二设备103相连。
63.网络设备101与第一设备102连接的方式和网络设备101与第一设备103连接的方式既可以是通过有线网络连接,也可以是通过无线网络连接。
64.在实际应用中,网络设备101可以与更多的设备相连。
65.网络设备101主要的功能是获取第一设备102或第一设备102与第二设备103的流量特征,流量特征包括第一设备102,或第一设备102与第二设备103根据拥塞控制参数转发
流量时生成的统计信息,网络设备101根据获取到的流量特征,利用拥塞控制规则生成拥塞控制参数;网络设备101还可以根据获取到的流量特征,计算回报值,以评价第一设备102或第一设备102与第二设备103的拥塞状况。
66.第一设备102主要的功能是利用获取的拥塞控制参数控制流量的转发,并根据流量的转发生成流量特征,第二设备103的功能与第一设备102的功能类似。
67.本申请实施例可以没有网络设备101,当没有网络设备101时,第一设备102可以完成网络设备101的所有功能。
68.本申请实施例可以没有网络设备101,也没有第二设备103,第一设备102无需与第二设备103联合控制流量的转发,并且第一设备102完成网络设备101的所有功能。
69.上面对本申请实施例的网络框架进行了描述,下面对本申请实施例的拥塞控制方法进行描述。
70.请参阅图2,为本申请实施例中的拥塞控制方法的流程示意图。
71.在步骤201中,网络设备获取第一流量特征,根据第一流量特征数据,获得第一回报值。
72.网络设备配置有第一拥塞控制规则,当网络设备需要对第一设备的流量进行控制时,网络设备可以根据该第一拥塞控制规则获取第一拥塞控制参数,网络设备通过第一拥塞控制规则获得第一拥塞控制参数后,网络设备可以获取第一流量特征,第一流量特征包括第一设备在第一周期内根据第一拥塞控制参数转发流量时生成的统计信息,网络设备可以根据第一流量特征,获得第一回报值。
73.在步骤202中,网络设备利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数。
74.网络设备利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数,第二拥塞控制参数不等于第一拥塞控制参数。
75.在步骤203中,网络设备获取第二流量特征,根据第二流量特征,获得第二回报值。
76.网络设备利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数后,网络设备可以获取第二流量特征,第二流量特征包括第一设备在第二周期内根据第二拥塞控制参数转发流量时生成的统计信息,网络设备可以根据第二流量特征,获得第二回报值。
77.在步骤204中,若第二回报值大于第一回报值,则网络设备执行相应的处理。
78.网络设备在获取到第二回报值和第一回报值后,网络设备可以确定第二回报值是否大于第一回报值,若网络设备确定第二回报值大于第一回报值,则网络设备执行相应的处理。
79.本申请实施例中,若网络设备确定第二回报值大于第一回报值时,网络设备可以执行多种不同的处理,本申请将这种条件下的处理统称为相应的处理。网络设备执行相应的处理可以认为是接受对第一拥塞控制参数的修改的对应操作。
80.本申请实施例中,在经过第一拥塞控制规则获得第一拥塞控制参数后,网络设备可以获取第一流量特征,该第一流量特征包括第一设备在第一周期内根据第一拥塞控制参数转发流量时生成的统计信息,第一拥塞控制参数是根据第一拥塞控制规则获得的,网络设备根据第一流量特征可以获得第一回报值,在利用第一步长修改第一拥塞控制参数后,网络设备可以获得第二拥塞控制参数,网络设备还可以获取第二流量特征,该第二流量特
征包括第一设备在第二周期内根据第二拥塞控制参数转发流量时生成的统计信息,网络设备根据该第二流量特征,可以获得第二回报值,若第二回报值大于第一回报值,则网络设备执行相应的处理,其中,网络设备利用第一步长修改第一拥塞控制参数,获得了可以获得更大回报值的第二拥塞控制参数,因为第二回报值大于第一回报值,因此第二拥塞控制参数优于第一拥塞控制参数,因此网络设备对第一拥塞控制规则的推理结果进行了优化,因此提升了第一拥塞控制规则的场景泛化性。
81.在本申请实施例的拥塞控制方法中,第一拥塞控制参数可以是一个参数,第一拥塞控制参数也可以是多个参数,下面分别对其描述。
82.一、第一拥塞控制参数是一个参数。
83.请参阅图3,为本申请提供的拥塞控制方法的另一个实施例的流程示意图。
84.在步骤301中,网络设备获取第一拥塞控制参数。
85.网络设备配置有第一拥塞控制规则,第一拥塞控制规则是第一公式,当网络设备需要对第一设备的流量进行控制时,网络设备可以通过向第一公式输入采集的流量特征,获得第一公式输出的第一拥塞控制参数,为了便于理解本实施例中的拥塞控制方法,本实施例以以下公式作为第一公式:
86.q=f(a,b);
87.其中,q为拥塞控制参数,a为速率,b为设定时延。
88.速率a可以为第一设备或第一设备的某个队列的转发速率,转发速率属于流量特征的一种,流量特征是指第一设备转发流量时生成的统计信息,例如出报文字节数,出报文数,队列深度,被ecn标记的报文个数,吞吐信息,丢包个数等。
89.设定时延b是事先设定的一个数值,第一设备的拥塞控制配置人员可以根据经验或者模板对设定时延的数值进行设置,设定时延的数值大小体现了配置人员对第一设备的拥塞指标中时延方面的要求。
90.第一公式具体可以为q=a
×
b。
91.具体获取第一拥塞控制参数的流程可以如下:网络设备采集第一设备上一周期的速率a,获取事先设定的设定时延b,然后将速率a和设定时延b套入第一公式,获得第一拥塞控制参数q。
92.可选地,当没有上一周期的速率a时,网络设备可以采用事先设定的速率,或者在本周期不获取第一拥塞控制参数,等待下一周期获取本周期的速率,利用本周期的速率获得第一拥塞控制参数对第一设备下一周期的流量进行控制。
93.可选地,第一拥塞控制参数可以是标记概率、丢弃概率。
94.第一拥塞控制规则可以是ai模型,在实际应用中,可以选择一种ai模型作为第一拥塞控制规则,为了便于说明,本实施例以第一拥塞控制规则是第一公式为例进行说明。
95.可选地,网络设备可以是第一设备,也可以是除第一设备以外的设备。
96.在步骤302中,网络设备获取第一流量特征,第一流量特征包括第一设备在第一周期内根据第一拥塞控制参数转发流量时生成的统计信息,网络设备根据第一流量特征,获得第一回报值。
97.网络设备通过第一拥塞控制规则获得第一拥塞控制参数后,网络设备可以获取到第一流量特征,第一流量特征包括第一设备在第一周期内根据第一拥塞控制参数转发流量
时生成的统计信息,第一流量特征具体可以是第一设备的统计信息,或第一设备的端口的统计信息,或第一设备的队列的统计信息;网络设备可以根据第一流量特征,获得第一回报值。
98.为了便于理解说明,本实施例的描述引入周期的概念,第一设备利用第一拥塞控制参数在第一周期内对第一设备转发的流量进行控制,第一设备利用第二拥塞控制参数在第二周期内对第一设备转发的流量进行控制,第一流量特征包括第一设备在第一周期内利用第一拥塞控制参数转发流量时生成的统计信息,第二流量特征包括第一设备在第一周期内利用第一拥塞控制参数转发流量时生成的统计信息,依次类推。
99.第一周期和第二周期的周期时长可以相同,也可以不同,第一周期与第二周期之间可以有间隔,可以相邻,也可以有重叠。
100.第一设备利用第一拥塞控制参数对第一设备第一周期内转发的流量进行控制后,网络设备可以获取到第一流量特征,第一流量特征可以是在第一周期内某个瞬间的数值,也可以经过处理后的数值,例如,第一流量特征可以是在第一周期内的平均值。
101.可选地,当网络设备是第一设备时,网络设备直接向转发芯片下发第一拥塞控制参数,让转发芯片利用第一拥塞控制参数控制第一设备在第一周期内转发的流量。
102.可选地,当网络设备是除第一设备以外的设备时,网络设备在获取到第一拥塞控制参数后,网络设备向第一设备发送第一拥塞控制参数,让第一设备在第一周期内利用第一拥塞控制参数控制第一设备在第一周期内转发的流量。
103.拥塞指标会包含多方面的指标,例如时延和吞吐等,为了便于评判第一设备不同周期的拥塞指标的优劣,将多方面的指标整合成一个方面的指标,这一方面的指标便是回报值。
104.可选地,第一流量特征经过预处理获得吞吐或者时延,例如当第一流量特征为队列深度,可以经过预处理将队列深度转化为时延,例如当第一流量特征为出报文字节数,可以经过预处理将出报文字节数转化为吞吐,然后根据预处理后获得的吞吐或者时延计算第一回报值。
105.可选地,当拥塞指标只包含时延和吞吐两方面的指标时,网络设备可以采用以下算法获得第一回报值:
106.r=m
×
j+n
×
k;
107.其中,r为第一回报值,j为吞吐,k为时延,m和n为加权系数。
108.可选地,当拥塞指标包含三个方面的指标时,网络设备可以采用以下算法获得第一回报值:
109.r=m
×
j+n
×
k+v
×
l;
110.其中,r为第一回报值,j为吞吐,k为时延,m和n为加权系数,l为业务性能指标,v为加权系数。
111.在303中、网络设备获取所述第一设备的第一运行值和第二运行值,确定第一运行值和第二运行值的差值是否小于目标阈值。
112.目标阈值是事先设定的一个值,当第一运行值和第二运行值的差值小于目标阈值时,网络设备可以利用第一步长修改第一拥塞控制参数。
113.可选地,第一运行值是第一设备在目标周期内的转发速率,目标周期是指第一周
期的前一周期,第二运行值是第一设备在目标周期前一周期内的转发速率;或第一运行值是第一设备的第一队列在目标周期内的转发速率,第二运行值是第一设备的第一队列在目标周期前一周期内的转发速率。
114.可选地,第一运行值是第一设备的第一队列在目标周期内的队列深度,目标周期是指第一周期的前一周期,第一运行值是第一设备的第一队列在目标周期前一周期内的队列深度。
115.当第一运行值不同时,目标阈值也可以不相同,例如当第一运行值是第一设备在目标周期内的转发速率,目标阈值是第一阈值,当第一运行值是第一设备的第一队列在目标周期内的转发速率,目标阈值是第二阈值,第一阈值不等于第二阈值。
116.可选地,网络设备可以仅通过第一拥塞控制规则调整初始拥塞控制参数,仅通过第一拥塞控制规则调整初始拥塞控制规则是指,网络设备不利用步长调整网络设备根据第一拥塞控制规则得出的拥塞控制参数,网络设备直接将第一拥塞控制规则得出的拥塞控制参数作为第一设备控制流量转发的参数;在网络设备利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数之前,网络设备可以统计网络设备仅通过第一拥塞控制规则调整初始拥塞控制参数的连续调整次数。
117.在步骤304中、若第一运行值和第二运行值的差值小于目标阈值,则网络设备利用第一步长正向修改第一拥塞控制参数,获得第二拥塞控制参数。
118.若第一运行值和第二运行值的差值小于目标阈值,则网络设备利用第一步长正向修改第一拥塞控制参数,获得第二拥塞控制参数。
119.正向修改只是为了和后面描述的反向修改做区别,并不是指第一拥塞控制参数只能正向加的意思,例如,第一拥塞控制参数为100,第一步长为20,网络设备利用第一步长正向修改第一拥塞控制参数后,第二拥塞控制参数可以是80,也可以是120,为了方便理解本实施例的拥塞控制方法,本实施例以第二拥塞控制参数是120为例进行说明。
120.可选地,第一步长为百分比值,因为在网络中,第一拥塞控制参数可能变化比较大,如果第一步长为具体的数值,例如20,当第一拥塞控制参数为1000时,第一步长对第一拥塞控制参数的修改会显得太小,因此第一步长可以采用百分比值,去掉因为第一拥塞控制参数变化的干扰,当第一拥塞控制参数为100,第一步长为20%时,网络设备利用第一步长正向修改第一拥塞控制参数,获得的第二步长可以是80,也可以是120。
121.可选地,目标阈值可以根据第一设备的网络波动大小进行调节,当第一设备的网络波动较小时,即第一设备的流量变化较小,网络设备将目标阈值调小,当第一设备的网络波动较大时,即第一设备的流量变化较大,网络设备将目标阈值调大。
122.可选地,当网络设备统计网络设备可以仅通过第一拥塞控制规则调整初始拥塞控制参数的连续调整次数时,网络设备可以不获取第一设备的第一运行值和第二运行值,网络设备可以确定该连续调整次数是否大于设定阈值n,当网络设备确定该连续调整次数大于设定阈值n时,则网络设备执行利用第一步长正向修改第一拥塞控制参数,获得第二拥塞控制参数的步骤。
123.可选地,当网络设备既统计网络设备仅通过第一拥塞控制规则调整初始拥塞控制参数的连续调整次数,网络设备又获取了第一设备的第一运行值和第二运行值时,只要有一个条件满足,则网络设备执行利用第一步长正向修改第一拥塞控制参数,获得第二拥塞
控制参数的步骤,即包括以下几种情况:
124.当网络设备确定第一运行值和第二运行值的差值大于目标阈值,网络设备确定该连续调整次数大于设定阈值n时,网络设备执行利用第一步长正向修改第一拥塞控制参数,获得第二拥塞控制参数的步骤。
125.当网络设备确定第一运行值和第二运行值的差值小于目标阈值,网络设备确定该连续调整次数小于设定阈值n时,网络设备执行利用第一步长正向修改第一拥塞控制参数,获得第二拥塞控制参数的步骤。
126.当网络设备确定第一运行值和第二运行值的差值小于目标阈值,网络设备确定该连续调整次数大于设定阈值n时,网络设备执行利用第一步长正向修改第一拥塞控制参数,获得第二拥塞控制参数的步骤。
127.可选地,步骤303可以不执行,当不执行步骤303时,网络设备获取到第一拥塞控制参数后,网络设备可以无需确认第一运行值和第二运行值的差值小于目标阈值,直接利用第一步长正向修改第一拥塞控制参数,获得第二拥塞控制参数。
128.在步骤305中,网络设备获取第二流量特征,第二流量特征包括所述第一设备在第二周期内根据第二拥塞控制参数转发流量时生成的统计信息;网络设备根据第二流量特征,获得第二回报值。
129.网络设备利用第一步长正向修改第一拥塞控制参数,获得第二拥塞控制参数后,网络设备可以获取第二流量特征,第二流量特征包括所述第一设备在第二周期内根据第二拥塞控制参数转发流量时生成的统计信息,第二流量特征具体可以是第一设备的统计信息,或第一设备的端口的统计信息,或第一设备的队列的统计信息;网络设备获取第二流量特征后,网络设备可以根据获取到的第二流量特征获得第二回报值,第二回报值的算法与步骤302中第一回报值的算法类似。第二流量特征可以是第一设备在第二周期内某个瞬间的数值,也可以经过处理后的数值,例如,第二流量特征可以是第一设备在第二期内的平均值。
130.可选地,当网络设备为第一设备时,网络设备直接向转发芯片下发第二拥塞控制参数,让转发芯片控制第一设备在第二周期转发的流量。
131.可选地,当网络设备为除第一设备以外的设备时,网络设备在获取到第二拥塞控制参数后,网络设备会向第一设备发送第二拥塞控制参数,用于让第一设备利用第二拥塞控制参数来控制第一设备在第二周期转发的流量。
132.在步骤306中,网络设备确认第二回报值是否大于第一回报值。
133.网络设备获取第二回报值和第一回报值后,网络设备确认第二回报值是否大于第一回报值。
134.在步骤307中,若第二回报值大于第一回报值,则网络设备利用第一步长修改第一公式,获得第二公式,利用第二公式获得拥塞控制参数。
135.若第二回报值大于第一回报值,则网络设备利用第一步长修改第一公式,获得第二公式,利用第二公式获得拥塞控制参数。
136.可选地,第二公式可以是以下公式:
137.q=a
×
b
×
(1+c1);
138.其中,q为拥塞控制参数,a为速率,b为设定时延,c1为百分比值的第一步长。
139.网络设备利用第一设备在第一周期的速率,设定时延和第一步长,可以通过第二公式获得拥塞控制参数,将该拥塞控制参数作为第一拥塞控制参数,将第二公式作为第一公式,返回步骤302。
140.可选地,在网络设备确定第二回报值大于第一回报值时,网络设备先不用第一步长修改第一公式,获得第二公式的步骤,而是用第二步长继续正向修改第二拥塞控制参数,获得第三拥塞控制参数,网络设备获取第三流量特征,第三流量特征包括所述第一设备在第三周期内根据第三拥塞控制参数转发流量时生成的统计信息;网络设备根据第三流量特征,获得第三回报值;若第三回报值大于第二回报值,则网络设备继续用第三步长正向修改第三拥塞控制参数,获得第四拥塞控制参数,网络设备获取第四流量特征,第四流量特征包括所述第一设备在第四周期内根据第四拥塞控制参数转发流量时生成的统计信息;网络设备根据第四流量特征,获得第四回报值,依次类推,直到第t+1回报值小于第t回报值,网络设备用第一步长,第二步长,至第t-1步长中所有步长的和作为第一步长,执行用第一步长修改第一公式,获得第二公式的步骤。
141.在步骤308中、若第二回报值小于第一回报值,则网络设备利用第二步长反向修改第一拥塞控制参数,获得第三拥塞控制参数。
142.若第二回报值小于第一回报值,则网络设备利用第二步长反向修改第一拥塞控制参数,获得第三拥塞控制参数。
143.反向修改只是为了和前面描述的正向修改做区别,并不是指第一拥塞控制参数只能反向减的意思,例如,第一拥塞控制参数为100,第二步长为20,网络设备利用第二步长反向修改第一拥塞控制参数后,第三拥塞控制参数可以是80,也可以是120,为了方便理解本实施例的拥塞控制方法,本实施例以第三拥塞控制参数是80为例进行说明。
144.可选地,第二步长可以等于第一步长,例如,第一步长为20%,第二步长也可以是20%。
145.在步骤309中、网络设备获取第三流量特征,第三流量特征包括所述第一设备在第三周期内根据第三拥塞控制参数转发流量时生成的统计信息;网络设备根据第三流量特征,获得第三回报值。
146.网络设备利用第一步长反向修改第一拥塞控制参数,获得第三拥塞控制参数后,网络设备获取第三流量特征,第三流量特征包括所述第一设备在第三周期内根据第三拥塞控制参数转发流量时生成的统计信息,第三流量特征具体可以是第一设备的统计信息,或第一设备的端口的统计信息,或第一设备的队列的统计信息;网络设备获取第三流量特征后,网络设备可以根据获取到的第三流量特征获取第三回报值,第三回报值的算法与步骤302中第一回报值的算法类似。
147.在步骤310中,网络设备确认第三回报值是否大于第一回报值。
148.网络设备获取第三回报值和第一回报值后,网络设备确认第三回报值是否大于第一回报值。
149.在步骤311中,若第三回报值大于第一回报值,则网络设备利用第二步长修改第一公式,获得第二公式,利用第二公式获得新的拥塞控制参数。
150.若第三回报值大于第一回报值,则网络设备利用第二步长修改第一公式,获得第二公式,利用第二公式获得拥塞控制参数。
151.可选地,第二公式可以是以下算法:
152.q=a
×
b
×
(1+c2);
153.其中,q为拥塞控制参数,a为速率,b为设定时延,c2为百分比值的第二步长。
154.网络设备利用第一设备在第二周期的速率,设定时延和第一步长,可以通过第二公式获得拥塞控制参数,将该拥塞控制参数作为第一拥塞控制参数,将第二公式作为第一公式,返回步骤302。
155.可选地,在网络设备确定第三回报值大于第一回报值时,网络设备先不用第一步长修改第一公式,获得第二公式的步骤,而是用第三步长继续反向修改第三拥塞控制参数,获得第四拥塞控制参数,网络设备获取第四流量特征,第四流量特征包括所述第一设备在第四周期内根据第四拥塞控制参数转发流量时生成的统计信息;网络设备根据第四流量特征,获得第四回报值;若第四回报值大于第三回报值,则网络设备继续用第四步长反向修改第四拥塞控制参数,获得第五拥塞控制参数,网络设备获取第五流量特征,第五流量特征包括所述第一设备在第五周期内根据第五拥塞控制参数转发流量时生成的统计信息;网络设备根据第五流量特征,获得第五回报值,依次类推,直到第t+1回报值小于第t回报值,网络设备将第一步长,第二步长,至第t-1步长中所有步长的和作为第二步长,执行用第二步长修改第一公式,获得第二公式的步骤。
156.在步骤312中,若第三回报值小于第一回报值,则网络设备利用第三步长正向修改第一拥塞控制参数进行,获得第四拥塞控制参数。
157.若第三回报值小于第一回报值,则网络设备利用第三步长正向修改第一拥塞控制参数,获得第四拥塞控制参数。
158.可选地,第三步长大于第一步长,因为网络设备正向修改和反向修改第一拥塞控制参数后,获得的第二回报值和第三回报值都小于第一回报值,那么有概率陷入了局部最优,假设第一拥塞控制参数为100,第二拥塞控制参数为120,第二拥塞控制参数为80,有概率在区间80至120之间,100附近为最优的解,为了跳出局部最优,第三步长要大于第一步长。
159.在步骤313中,网络设备获取第四流量特征,第四流量特征包括所述第一设备在第四周期内根据第四拥塞控制参数转发流量时生成的统计信息;网络设备根据第四流量特征,获得第四回报值。
160.网络设备利用第三步长正向修改第一拥塞控制参数,获得第四拥塞控制参数后,网络设备获取第四流量特征,第四流量特征包括所述第一设备在第四周期内根据第四拥塞控制参数转发流量时生成的统计信息,第四流量特征具体可以是第一设备的统计信息,或第一设备的端口的统计信息,或第一设备的队列的统计信息;网络设备获取第四流量特征后,网络设备可以根据获取到的第四流量特征获得第四回报值,第四回报值的算法与步骤302中第一回报值的算法类似。
161.在步骤314中,网络设备确认第四回报值是否大于第一回报值。
162.网络设备获取第四回报值和第一回报值后,网络设备确认第四回报值是否大于第一回报值。
163.在步骤315中,若第四回报值大于第一回报值,则网络设备利用第三步长修改第一公式,获得第二公式,利用第二公式获得新的拥塞控制参数。
164.若第四回报值大于第一回报值,则网络设备利用第三步长修改第一公式,获得第二公式,利用第二公式获得新的拥塞控制参数。
165.可选地,第二公式可以是以下算法:
166.q=a
×
b
×
(1+c3);
167.其中,q为拥塞控制参数,a为速率,b为设定时延,c3为百分比值的第三步长。
168.网络设备利用第一设备在第四周期的速率,设定时延和第一步长,可以通过第二公式获得拥塞控制参数,将该拥塞控制参数作为第一拥塞控制参数,将第二公式作为第一公式,返回步骤302。
169.可选地,在网络设备确定第四回报值大于第一回报值时,网络设备先不用第三步长修改第一公式,获得第二公式的步骤,而是用第四步长继续正向修改第四拥塞控制参数,获得第五拥塞控制参数,网络设备获取第五流量特征,第五流量特征包括所述第一设备在第五周期内根据第五拥塞控制参数转发流量时生成的统计信息;网络设备根据第五流量特征,获得第五回报值;若第五回报值大于第四回报值,则网络设备继续用第五步长正向修改第五拥塞控制参数,获得第六拥塞控制参数,网络设备获取第六流量特征,第六流量特征包括所述第一设备在第六周期内根据第六拥塞控制参数转发流量时生成的统计信息;网络设备根据第六流量特征,获得第六回报值,依次类推,直到第t+1回报值小于第t回报值,网络设备将第一步长,第二步长,至第t-1步长中所有步长的和作为第三步长,执行用第三步长修改第一公式,获得第二公式的步骤。
170.在步骤316中,若第四回报值小于第一回报值,则网络设备利用第四步长反向修改第一拥塞控制参数,获得第五拥塞控制参数。
171.若第四回报值小于第一回报值,则网络设备利用第四步长反向修改第一拥塞控制参数,获得第五拥塞控制参数。
172.可选地,第四步长大于第二步长,因为网络设备正向修改和反向修改第一拥塞控制参数后,获得的第二回报值和第三回报值都小于第一回报值,那么有概率陷入了局部最优,假设第一拥塞控制参数为100,第二拥塞控制参数为120,第二拥塞控制参数为80,有概率在区间80至120之间,100附近为最优的解,为了跳出局部最优,第四步长要大于第二步长。
173.在步骤317中,网络设备获取第五流量特征,第五流量特征包括所述第一设备在第五周期内根据第五拥塞控制参数转发流量时生成的统计信息;网络设备根据第五流量特征,获得第五回报值。
174.网络设备利用第四步长反向修改第一拥塞控制参数,获得第五拥塞控制参数后,网络设备获取第五流量特征,第五流量特征包括所述第一设备在第五周期内根据第五拥塞控制参数转发流量时生成的统计信息,第五流量特征具体可以是第一设备的统计信息,或第一设备的端口的统计信息,或第一设备的队列的统计信息;网络设备获取第五流量特征后,网络设备可以根据获取到的第五流量特征获得第五回报值,第五回报值的算法与步骤302中第一回报值的算法类似。
175.在步骤318中,网络设备确认第五回报值是否大于第一回报值。
176.网络设备获取第五回报值和第一回报值后,网络设备确认第五回报值是否大于第一回报值。
177.在步骤319中,若第五回报值大于第一回报值,则网络设备利用第四步长修改第一公式,获得第二公式,利用第二公式获得新的拥塞控制参数。
178.若第五回报值大于第一回报值,则网络设备利用第四步长修改第一公式,获得第二公式,利用第二公式获得拥塞控制参数。
179.可选地,第二公式可以是以下算法:
180.q=a
×
b
×
(1+c4);
181.其中,q为拥塞控制参数,a为速率,b为设定时延,c4为百分比值的第四步长。
182.网络设备利用第一设备在第五周期的速率,设定时延和第一步长,可以通过第二公式获得拥塞控制参数,将该拥塞控制参数作为第一拥塞控制参数,将第二公式作为第一公式,返回步骤302。
183.可选地,在网络设备确定第五回报值大于第一回报值时,网络设备先不用第四步长修改第一公式,获得第二公式的步骤,而是用第五步长继续反向修改第五拥塞控制参数,获得第六拥塞控制参数,网络设备获取第六流量特征,第六流量特征包括所述第一设备在第六周期内根据第六拥塞控制参数转发流量时生成的统计信息;网络设备根据第六流量特征,获得第六回报值;若第六回报值大于第五回报值,则网络设备继续用第六步长反向修改第六拥塞控制参数,获得第七拥塞控制参数,网络设备获取第七流量特征,第七流量特征包括所述第一设备在第七周期内根据第七拥塞控制参数转发流量时生成的统计信息;网络设备根据第七流量特征,获得第七回报值,依次类推,直到第t+1回报值小于第t回报值,网络设备将第一步长,第二步长,至第t-1步长中所有步长的和作为第四步长,执行用第四步长修改第一公式,获得第二公式的步骤。
184.在步骤320中、若第五回报值大于第一回报值,网络设备有百分之f的概率将第三步长作为第一步长,将第四步长作为第二步长,返回步骤312,网络设备有百分之g的概率返回步骤301。
185.若第五回报值大于第一回报值,网络设备有百分之f的概率将第三步长作为第一步长,将第四步长作为第二步长,返回步骤312,网络设备有百分之g的概率返回步骤301。
186.可选地,f加g等于100。
187.可选地,f的数值随着返回步骤312的次数而衰减,例如第一次f等于50,步骤320后,返回了步骤312,从步骤312又到了步骤320,f的数值变为40,则在此次判定中,有百分之40的概率会返回步骤312。
188.二、第一拥塞控制参数是多个参数。
189.为了便于理解说明,下面以动态调节ecn配置为例进行说明,第一拥塞控制参数包括3个参数,分别是下水线、上水线、最大标记概率。
190.请参阅图4,为本申请提供的拥塞控制方法的另一个流程示意图。
191.在步骤401中,网络设备获取第一拥塞控制参数。
192.网络设备配置有第一拥塞控制规则,第一拥塞控制规则是ai模型,当网络设备需要对第一设备的流量进行控制时,网络设备可以通过向ai模型输入采集的初始流量特征,获得ai模型输出的第一拥塞控制参数,第一拥塞控制参数包括第一下水线、第一上水线、第一最大标记概率。
193.可选地,当没有上一周期的流量特征时,网络设备可以采用事先设定的流量特征
作为初始流量特征,或者在本周期不获取第一拥塞控制参数,等待下一周期获取本周期的流量特征作为初始流量特征,利用本周期的流量特征获得第一拥塞控制参数对第一设备下一周期的流量进行控制。
194.第一拥塞控制规则还可以是公式,在实际应用中,可以选择一种公式作为第一拥塞控制规则,为了便于说明,本实施例以第一拥塞控制规则是ai模型为例进行说明。
195.可选地,网络设备可以是第一设备,也可以是除第一设备以外的设备。
196.在步骤402中,网络设备获取第一流量特征,第一流量特征包括第一设备在第一周期内根据第一拥塞控制参数转发流量时生成的统计信息,网络设备根据第一流量特征,获得第一回报值。
197.在步骤403中,网络设备获取所述第一设备的第一运行值和第二运行值,确定第一运行值和第二运行值的差值是否小于目标阈值。
198.步骤402、步骤403与前述图3中的步骤302、步骤303类似。
199.在步骤404中,若第一运行值和第二运行值的差值小于目标阈值,则网络设备利用第一步长正向修改第一下水线,获得第二正向下水线。
200.若第一运行值和第二运行值的差值小于目标阈值,则网络设备利用第一步长正向修改第一下水线,获得第二正向下水线,网络设备将第二正向下水线,第一上水线以及第一最大标记概率作为第二拥塞控制参数,其它描述与前述图3中的步骤304类似。
201.在步骤405中,网络设备获取第二流量特征,第二流量特征包括所述第一设备根据第二拥塞控制参数转发流量时生成的统计信息;网络设备根据第二流量特征,获得第二回报值。
202.步骤405前述图3中的步骤305类似。
203.在步骤406中,网络设备利用第二步长正向修改第一上水线,获得第二正向上水线。
204.网络设备利用第二步长正向修改第一上水线,获得第二正向上水线,网络设备将目标下水线,第二正向上水线以及第一最大标记概率作为第三拥塞控制参数,目标下水线包括第一下水线或第二正向下水线,若第二回报值大于第一回报值,则目标下水线包括第二正向下水线,若第二回报值大于第一回报值,则目标下水线包括第一下水线。
205.可选地,若第二回报值大于第一回报值,网络设备可以利用第二步长正向修改第二正向下水线,获得第三正向下水线,网络设备将第三正向下水线,第一上水线以及第一最大标记概率作为第三拥塞控制参数,网络设备获取第三流量特征,第三流量特征包括所述第一设备在第三周期内根据第三拥塞控制参数转发流量时生成的统计信息;网络设备根据第三流量特征,获得第三回报值;若第三回报值大于第二回报值,则网络设备继续用第三步长正向修改第三正向下水线,获得第四正向下水线,网络设备将第四正向下水线,第一上水线以及第一最大标记概率作为第四拥塞控制参数,网络设备获取第四流量特征,第四流量特征包括所述第一设备在第四周期内根据第四拥塞控制参数转发流量时生成的统计信息;网络设备根据第四流量特征,获得第四回报值,依次类推,直到第t+1回报值小于第t回报值,网络设备将第一步长,第二步长,至第t-1步长中所有步长的和作为下水线正向步长,第t回报值对应第t正向下水线,网络设备将第t正向下水线作为第二正向下水线。
206.可选地,若第二回报值小于第一回报值,可以得出网络设备利用第一步长正向修
改获得的第二正向下水线劣于第一下水线,网络设备利用第二正向下水线修改ai模型,在ai模型输入相同的初始流量特征时,减小ai模型输出第二正向下水线的概率,例如,在初始流量特征为50时,向ai模型输入初始流量特征50,ai模型输出第一下水线10,第一上水线60,第一最大标记概率50的概率为30%,ai模型输出第二正向下水线12,第一上水线30,第一最大标记概率50的概率为7%,网络设备修改ai模型,ai模型在输入初始流量特征50时,ai模型输出第二正向下水线12,第一上水线30,第一最大标记概率50的概率为3%。因此网络设备下次获取到初始流量特征50,利用ai模型推理获得拥塞控制参数时,ai模型输出第二正向下水线12,第一上水线30,第一最大标记概率50的概率会降低。
207.网络设备利用第二步长正向修改第一上水线和网络设备利用第二步长正向修改第二正向下水线中都出现了第二步长,但是这第二步长只是了方便描述,并不是限定这两个第二步长的数值要相等,相似的,本实施例中,即使出现了相同的步长,还要确定步长修改的对象是否相同,只有步长相同,且步长修改的对象相同,才可以确定两个步长的数值相同,例如,网络设备利用第二步长正向修改第一上水线的修改的对象是第一上水线,网络设备利用第二步长正向修改第二正向下水线的修改的对象是第二正向下水线,因此这两个步长的数值可以不相同。
208.在步骤407中,网络设备获取第三流量特征,第三流量特征包括所述第一设备根据第三拥塞控制参数转发流量时生成的统计信息;网络设备根据第三流量特征,获得第三回报值。
209.网络设备获取第三流量特征,第三流量特征包括所述第一设备根据第三拥塞控制参数转发流量时生成的统计信息;网络设备根据第三流量特征,获得第三回报值。
210.在步骤408中,网络设备利用第三步长正向修改第一最大标记概率,获得第二正向最大标记概率。
211.网络设备利用第三步长正向修改第一最大标记概率,获得第二正向最大标记概率;网络设备将目标下水线,目标上水线以及第二最大标记概率作为第四拥塞控制参数,目标下水线包括第一下水线或第二正向下水线,若第二回报值大于第一回报值,则目标下水线包括第二正向下水线,若第二回报值大于第一回报值,则目标下水线包括第一下水线,目标上水线包括第一上水线或第二正向上水线,若第三回报值大于第一回报值,且第三回报值大于第二回报值,则目标上水线包括第二正向上水线,否则目标上水线包括第一上水线。
212.可选地,与步骤406类似,若第三回报值大于第二回报值,且第三回报值大于第一回报值,网络设备可以利用第三步长正向修改第二正向上水线。
213.在步骤409中,网络设备获取第四流量特征,第四流量特征包括所述第一设备根据第四拥塞控制参数转发流量时生成的统计信息;网络设备根据第四流量特征,获得第四回报值。
214.网络设备获取第四流量特征,第四流量特征包括所述第一设备根据第四拥塞控制参数转发流量时生成的统计信息;网络设备根据第四流量特征,获得第四回报值。
215.在步骤410中,网络设备利用第四步长反向修改第一下水线,获得第二反向下水线。
216.网络设备利用第四步长反向修改第一下水线,获得第二反向下水线,网络设备将第二反向下水线,目标上水线以及目标最大标记概率作为第五拥塞控制参数,目标上水线
包括第一上水线或第二正向上水线,若第三回报值大于第一回报值,且第三回报值大于第二回报值,则目标上水线包括第二正向上水线,否则目标上水线包括第一上水线,目标最大标记概率包括第一最大标记概率或第二正向最大标记概率,若第四回报值大于第三回报值,且第四回报值大于第二回报值,且第四回报值大于第一回报值,则目标最大标记概率包括第二正向最大标记概率,否则目标最大标记概率包括第一最大标记概率。
217.可选地,与步骤406类似,若第四回报值大于第三回报值,且第四回报值大于第二回报值,且第四回报值大于第一回报值,网络设备可以利用第四步长正向修改第二正向最大标记概率。
218.在步骤411中,网络设备获取第五流量特征,第五流量特征包括所述第一设备根据第五拥塞控制参数转发流量时生成的统计信息;网络设备根据第五流量特征,获得第五回报值。
219.网络设备获取第五流量特征,第五流量特征包括所述第一设备根据第五拥塞控制参数转发流量时生成的统计信息;网络设备根据第五流量特征,获得第五回报值。
220.在步骤412中,网络设备利用第五步长反向修改第一上水线,获得第二反向上水线。
221.网络设备利用第五步长反向修改第一上水线,获得第二反向上水线,网络设备将反向目标下水线,第二反向上水线以及目标最大标记概率作为第六拥塞控制参数,反向目标下水线包括目标下水线或第二反向下水线,若第五回报值大于第四回报值,且第五回报值大于第三回报值,且第五回报值大于第二回报值,且第五回报值大于第一回报值,则反向目标下水线包括第二反向下水线,否则反向目标下水线包括目标下水线,目标最大标记概率包括第一最大标记概率或第二正向最大标记概率,若第四回报值大于第三回报值,且第四回报值大于第二回报值,且第四回报值大于第一回报值,则目标最大标记概率包括第二正向最大标记概率,否则目标最大标记概率包括第一最大标记概率。
222.可选地,与步骤406类似,若第五回报值大于第四回报值,且第五回报值大于第三回报值,且第五回报值大于第二回报值,且第五回报值大于第一回报值,网络设备可以利用第五步长反向修改第二反向下水线。
223.在步骤413中、网络设备获取第六流量特征,第六流量特征包括所述第一设备根据第六拥塞控制参数转发流量时生成的统计信息;网络设备根据第六流量特征,获得第六回报值。
224.网络设备获取第六流量特征,第六流量特征包括所述第一设备根据第六拥塞控制参数转发流量时生成的统计信息;网络设备根据第六流量特征,获得第六回报值。
225.在步骤414中,网络设备利用第六步长反向修改第一最大标记概率,获得第二反向最大标记概率。
226.网络设备利用第六步长反向修改第一最大标记概率,获得第二反向最大标记概率,网络设备将反向目标下水线,反向目标上水线以及第二反向最大标记概率作为第七拥塞控制参数,反向目标下水线包括目标下水线或第二反向下水线,若第五回报值大于第四回报值,且第五回报值大于第三回报值,且第五回报值大于第二回报值,且第五回报值大于第一回报值,则反向目标下水线包括第二反向下水线,否则反向目标下水线包括目标下水线,反向目标上水线包括目标上水线或第二反向上水线,若第六回报值大于第五回报值,且
第六回报值大于第四回报值,且第六回报值大于第三回报值,且第六回报值大于第二回报值,且第六回报值大于第一回报值,则反向目标上水线包括第二反向上水线,否则反向目标上水线包括目标上水线。
227.可选地,与步骤406类似,若第六回报值大于第五回报值,且第六回报值大于第四回报值,且第六回报值大于第三回报值,且第六回报值大于第二回报值,且第六回报值大于第一回报值,网络设备可以利用第六步长反向修改第二反向上水线。
228.在步骤415中,网络设备获取第七流量特征,第七流量特征包括所述第一设备根据第七拥塞控制参数转发流量时生成的统计信息;网络设备根据第七流量特征,获得第七回报值。
229.网络设备获取第七流量特征,第七流量特征包括所述第一设备根据第七拥塞控制参数转发流量时生成的统计信息;网络设备根据第七流量特征,获得第七回报值。
230.在步骤416中、网络设备获取新的初始流量特征,网络设备将新的初始流量特征输入ai模型进行推理,获得初始拥塞控制参数。
231.网络设备获取新的初始流量特征,网络设备将新的初始流量特征输入ai模型进行推理,获得初始拥塞控制参数,该初始拥塞控制参数用于让第一设备根据该初始拥塞控制参数控制转发的流量,且网络设备不需要利用步长修改初始拥塞控制参数,直接将初始拥塞控制参数作为第一设备控制流量转发的参数。
232.可选地,当第七回报值大于第一回报值,第七拥塞控制参数不等于第一拥塞控制参数时,网络设备利用第七拥塞控制参数修改ai模型,网络设备利用修改后的ai模型进行推理,获得初始拥塞控制参数。第七拥塞控制参数包括反向目标下水线,反向目标上水线,反向目标最大标记概率。反向目标下水线包括目标下水线或第二反向下水线,若第五回报值大于第四回报值,且第五回报值大于第三回报值,且第五回报值大于第二回报值,且第五回报值大于第一回报值,则反向目标下水线包括第二反向下水线,否则反向目标下水线包括目标下水线,目标下水线包括第一下水线或第二正向下水线,若第二回报值大于第一回报值,则目标下水线包括第二正向下水线,若第二回报值大于第一回报值,则目标下水线包括第一下水线;反向目标上水线包括目标上水线或第二反向上水线,若第六回报值大于第五回报值,且第六回报值大于第四回报值,且第六回报值大于第三回报值,且第六回报值大于第二回报值,且第六回报值大于第一回报值,则反向目标上水线包括第二反向上水线,否则反向目标上水线包括目标上水线,目标上水线包括第一上水线或第二正向上水线,若第三回报值大于第一回报值,且第三回报值大于第二回报值,则目标上水线包括第二正向上水线,否则目标上水线包括第一上水线;反向目标最大标记概率包括目标最大标记概率或第二反向最大标记概率;若第七回报值大于第六回报值,且第七回报值大于第五回报值,且第七回报值大于第四回报值,且第七回报值大于第三回报值,且第七回报值大于第二回报值,且第七回报值大于第一回报值,则反向目标最大标记概率包括第二反向最大标记概率,否则反向目标最大标记概率包括目标最大标记概率,目标最大标记概率包括第一最大标记概率或第二正向最大标记概率,若第四回报值大于第三回报值,且第四回报值大于第二回报值,且第四回报值大于第一回报值,则目标最大标记概率包括第二正向最大标记概率,否则目标最大标记概率包括第一最大标记概率。
233.例如,在ai模型输入相同的初始流量特征时,增加ai模型输出第七拥塞控制参数
的概率,例如,在初始流量特征为50时,向ai模型输入初始流量特征50,ai模型输出第一下水线10,第一上水线60,第一最大标记概率50的概率为30%,ai模型输出第七拥塞控制参数:第二正向下水线12,第二反向下水线27,第二正向最大标记概率60的概率为7%,网络设备修改ai模型,ai模型在输入初始流量特征50时,ai模型输出第七拥塞控制参数:第二正向下水线12,第二反向下水线27,第二正向最大标记概率60的概率为50%。因此网络设备下次获取到初始流量特征50,利用ai模型推理获得拥塞控制参数时,ai模型输出第七拥塞控制参数:第二正向下水线12,第二反向下水线27,第二正向最大标记概率60的概率会提高,从7%提高到了50%。
234.可选地,与步骤406类似,若第七回报值大于第六回报值,且第七回报值大于第五回报值,且第七回报值大于第四回报值,且第七回报值大于第三回报值,且第七回报值大于第二回报值,且第七回报值大于第一回报值,网络设备可以利用第七步长反向修改第二反向最大标记概率。
235.在本申请实施例的拥塞控制方法中,除网络设备以外,可以是单个设备利用拥塞控制方法对设备转发的流量进行控制,也可以是多个设备联合使用拥塞控制方法对设备转发的流量进行控制,上面对单个设备的情况进行了描述,下面多个设备的情况进行描述。
236.请参阅图5,为本申请提供的拥塞控制方法的另一个实施例的流程示意图。
237.在步骤501中,网络设备获取第一拥塞控制参数和第二拥塞控制参数。
238.网络设备配置有第一拥塞控制规则,当网络设备需要对第一设备的流量进行控制时,网络设备可以根据从第一设备采集的第一初始流量特征,利用第一拥塞控制规则获得第一拥塞控制参数。网络设备还配置有第二拥塞控制规则,当网络设备需要对第二设备的流量进行控制时,网络设备可以根据从第二设备采集的第二初始流量特征,利用第二拥塞控制规则获得第二拥塞控制参数。
239.可选地,当没有上一周期的流量特征时,网络设备可以采用事先设定的流量特征作为初始流量特征,或者在本周期不获取第一拥塞控制参数和第二拥塞控制参数,等待下一周期获取本周期的流量特征作为初始流量特征,利用第一设备本周期的流量特征获得第一拥塞控制参数对第一设备下一周期的流量进行控制,利用第二设备本周期的流量特征获得第二拥塞控制参数对第二设备下一周期的流量进行控制。
240.第一拥塞控制规则可以是ai模型,第一拥塞控制规则还可以是公式,在实际应用中,可以选择一种作为第一拥塞控制规则。
241.在步骤502中,网络设备获取第一流量特征和第二流量特征,网络设备根据第一流量特征,获得第一回报值,根据第二流量特征,获得第二回报值。
242.网络设备获取第一流量特征和第二流量特征,第一流量特征包括第一设备在第一周期内根据第一拥塞控制参数转发流量时生成的统计信息,网络设备根据第一流量特征,获得第一回报值,第二流量特征包括第二设备在第一周期内根据第二拥塞控制参数转发流量时生成的统计信息,网络设备根据第二流量特征,获得第二回报值。获取回报值的方法与前述图3的步骤302中获取回报值的方法类似,具体此处不再赘述。
243.在步骤503中,网络设备获取第一设备的第一运行值和第二运行值,获取第二设备的第三运行值和第四运行值,确定差值的均值是否小于目标阈值。
244.网络设备获取第一设备的第一运行值和第二运行值,获取第二设备的第三运行值
和第四运行值,确定差值的均值是否小于目标阈值,差值的均值是指第一差值和第二差值的平均值,第一差值是指第一运行值和第二运行值的差值,第二差值是第三运行值和第四运行值的差值。
245.可选地,网络设备可以仅通过第一拥塞控制规则调整初始拥塞控制参数,仅通过第一拥塞控制规则调整初始拥塞控制规则是指,网络设备不利用步长调整网络设备根据第一拥塞控制规则得出的拥塞控制参数,网络设备直接将第一拥塞控制规则得出的拥塞控制参数作为第一设备控制流量转发的参数;在网络设备利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数之前,网络设备可以统计网络设备仅通过第一拥塞控制规则调整初始拥塞控制参数的连续调整次数。
246.关于运行值和目标阈值的描述与前述图3的步骤303中描述的类似,具体此处不再赘述。
247.在步骤504中、若差值的均值小于目标阈值,则网络设备利用第一步长正向修改第一拥塞控制参数,获得第三拥塞控制参数,网络设备利用第二步长正向修改第二拥塞控制参数,获得第四拥塞控制参数。
248.若差值的均值小于目标阈值,则网络设备利用第一步长正向修改第一拥塞控制参数,获得第三拥塞控制参数,网络设备利用第二步长正向修改第二拥塞控制参数,获得第四拥塞控制参数。
249.正向修改只是为了和后面描述的反向修改做区别,并不是指第一拥塞控制参数只能正向加的意思,例如,第一拥塞控制参数为100,第一步长为20,网络设备利用第一步长正向修改第一拥塞控制参数后,第二拥塞控制参数可以是80,也可以是120,为了方便理解本实施例的拥塞控制方法,本实施例以第二拥塞控制参数是120为例进行说明。
250.可选地,第一步长和第二步长为百分比值。
251.可选地,目标阈值可以根据第一设备的网络波动大小进行调节,当第一设备的网络波动较小时,即第一设备的流量变化较小,网络设备将目标阈值调小,当第一设备的网络波动较大时,即第一设备的流量变化较大,网络设备将目标阈值调大。
252.可选地,当网络设备统计网络设备仅通过第一拥塞控制规则调整初始拥塞控制参数的连续调整次数时,网络设备可以不获取第一设备的第一运行值和第二运行值,网络设备可以确定该连续调整次数是否大于设定阈值n,当网络设备确定该连续调整次数大于设定阈值n时,则网络设备执行利用第一步长正向修改第一拥塞控制参数,获得第二拥塞控制参数的步骤。
253.可选地,当网络设备既统计网络设备仅通过第一拥塞控制规则调整初始拥塞控制参数的连续调整次数,网络设备又获取了第一运行值,第二运行值,第三运行值以及第四运行值时,只要有一个条件满足,则网络设备执行利用第一步长正向修改第一拥塞控制参数,获得第二拥塞控制参数的步骤,即包括以下几种情况:
254.当网络设备确定第一运行值和第二运行值的差值大于目标阈值,网络设备确定该连续调整次数大于设定阈值n时,网络设备执行利用第一步长正向修改第一拥塞控制参数,获得第二拥塞控制参数的步骤。
255.当网络设备确定第一运行值和第二运行值的差值小于目标阈值,网络设备确定该连续调整次数小于设定阈值n时,网络设备执行利用第一步长正向修改第一拥塞控制参数,
获得第二拥塞控制参数的步骤。
256.当网络设备确定第一运行值和第二运行值的差值小于目标阈值,网络设备确定该连续调整次数大于设定阈值n时,网络设备执行利用第一步长正向修改第一拥塞控制参数,获得第二拥塞控制参数的步骤。
257.可选地,步骤503可以不执行,当不执行步骤503时,网络设备获取到第一拥塞控制参数后,网络设备可以无需确认差值的均值是否小于目标阈值,直接利用第一步长正向修改第一拥塞控制参数,获得第二拥塞控制参数,利用第二步长正向修改第二拥塞控制参数,获得第四拥塞控制参数。
258.在步骤505中,网络设备获取第三流量特征和第四流量特征,网络设备根据第三流量特征,获得第三回报值,网络设备根据第四流量特征,获得第四回报值。
259.网络设备利用第一步长正向修改第一拥塞控制参数,获得第三拥塞控制参数后,网络设备可以获取第三流量特征,第三流量特征包括所述第一设备在第二周期内根据第三拥塞控制参数转发流量时生成的统计信息;第三流量特征具体可以是第一设备的统计信息,或第一设备的端口的统计信息,或第一设备的队列的统计信息;网络设备获取第三流量特征后,网络设备可以根据获取到的第三流量特征获得第三回报值,第三回报值的算法与前述图三的步骤302中第一回报值的算法类似。第三流量特征可以是第一设备在第二周期内某个瞬间的数值,也可以经过处理后的数值,例如,第三流量特征可以是第一设备在第二期内的平均值。
260.网络设备利用第二步长正向修改第二拥塞控制参数,获得第四拥塞控制参数后,网络设备可以获取第四流量特征,第四流量特征包括所述第二设备在第二周期内根据第四拥塞控制参数转发流量时生成的统计信息;第四流量特征具体可以是第二设备的统计信息,或第二设备的端口的统计信息,或第二设备的队列的统计信息;网络设备获取第四流量特征后,网络设备可以根据获取到的第四流量特征获得第四回报值,第四回报值的算法与前述图三的步骤302中第一回报值的算法类似。第四流量特征可以是第二设备在第二周期内某个瞬间的数值,也可以经过处理后的数值,例如,第四流量特征可以是第二设备在第二期内的平均值。
261.可选地,当网络设备是第一设备时,网络设备直接向转发芯片下发第三拥塞控制参数,让转发芯片控制第一设备在第二周期转发的流量,网络设备向第二设备发送第四拥塞控制参数,用于让第二设备根据第四拥塞控制参数控制转发的流量。
262.可选地,当网络设备是第二设备时,网络设备直接向转发芯片下发第四拥塞控制参数,让转发芯片控制第二设备在第二周期转发的流量,网络设备向第一设备发送第三拥塞控制参数,用于让第三设备根据第三拥塞控制参数控制转发的流量。
263.可选地,当网络设备为除第一设备和第二以外的设备时,网络设备在获取到第三拥塞控制参数和第四拥塞控制参数后,网络设备会向第一设备发送第三拥塞控制参数,用于让第一设备利用第三拥塞控制参数来控制第一设备在第二周期转发的流量,网络设备还会向第二设备发送第四拥塞控制参数,用于让第二设备利用第四拥塞控制参数来控制第二设备在第二周期转发的流量。
264.在步骤506中,网络设备确认第三回报值与第四回报值的和是否大于第一回报值与第二回报值的和。
265.在步骤507中,若第三回报值与第四回报值的和大于第一回报值与第二回报值的和,则网络设备利用第一步长修改第一拥塞控制规则,获得第三拥塞控制规则,利用第二步长修改第二拥塞控制规则,获得第四拥塞控制规则。
266.可选地,在网络设备确定第三回报值与第四回报值的和大于第一回报值与第二回报值的和时,网络设备先不用第一步长修改第一拥塞控制规则,获得第三拥塞控制规则,利用第二步长修改第二拥塞控制规则,获得第四拥塞控制规则的步骤,而是利用第三步长继续正向修改第三拥塞控制参数,获得第五拥塞控制参数,利用第四步长继续正向修改第四拥塞控制参数,获得第六拥塞控制参数;网络设备获取第五流量特征,第五流量特征包括所述第一设备在第三周期内根据第五拥塞控制参数转发流量时生成的统计信息;网络设备获取第六流量特征,第六流量特征包括所述第二设备在第三周期内根据第六拥塞控制参数转发流量时生成的统计信息;网络设备根据第五流量特征,获得第五回报值;网络设备根据第六流量特征,获得第六回报值;若第五回报值与第六回报值的和大于第三回报值和第四回报值的和,则网络设备继续利用第五步长正向修改第五拥塞控制参数,获得第七拥塞控制参数,网络设备利用第六步长正向修改第六拥塞控制参数,获得第八拥塞控制参数,网络设备获取第七流量特征,第七流量特征包括所述第一设备在第四周期内根据第七拥塞控制参数转发流量时生成的统计信息;网络设备获取第八流量特征,第八流量特征包括所述第二设备在第四周期内根据第八拥塞控制参数转发流量时生成的统计信息;网络设备根据第七流量特征,获得第七回报值,网络设备根据第八流量特征,获得第八回报值。依次类推,直到第t+1回报值与第t+2回报值的和小于第t-1回报值与第t回报值的和,第t回报值对应第t步长,第t-1回报值对应第t-1步长,网络设备利用第一步长,第三步长,至第t-1步长中所有步长的和作为第一步长,利用第一步长修改第一拥塞控制规则,获得第三拥塞控制规则,网络设备利用第二步长,第四步长,至第t件步长中所有步长的和作为第二步长,利用第二步长修改第二拥塞控制规则,获得第四拥塞控制规则。
267.在步骤508中,若第三回报值与第四回报值的和小于第一回报值与第二回报值的和,则网络设备利用第五步长反向修改第一拥塞控制参数,获得第五拥塞控制参数,利用第六步长修改第一拥塞控制参数,获得第六拥塞控制参数。
268.在步骤509中,网络设备获取第五流量特征和第六流量特征,网络设备根据第五流量特征,获得第五回报值,网络设备根据第六流量特征,获得第六回报值。
269.网络设备利用第三步长反向修改第一拥塞控制参数,获得第五拥塞控制参数后,网络设备可以获取第五流量特征,第五流量特征包括所述第一设备在第三周期内根据第五拥塞控制参数转发流量时生成的统计信息;第五流量特征具体可以是第一设备的统计信息,或第一设备的端口的统计信息,或第一设备的队列的统计信息;网络设备获取第三流量特征后,网络设备可以根据获取到的第五流量特征获得第五回报值,第五回报值的算法与前述图三的步骤302中第一回报值的算法类似。第五流量特征可以是第一设备在第三周期内某个瞬间的数值,也可以经过处理后的数值,例如,第五流量特征可以是第一设备在第三期内的平均值。
270.网络设备利用第四步长反向修改第二拥塞控制参数,获得第六拥塞控制参数后,网络设备可以获取第六流量特征,第六流量特征包括所述第二设备在第三周期内根据第六拥塞控制参数转发流量时生成的统计信息;第六流量特征具体可以是第二设备的统计信
息,或第二设备的端口的统计信息,或第二设备的队列的统计信息;网络设备获取第六流量特征后,网络设备可以根据获取到的第六流量特征获得第六回报值,第六回报值的算法与前述图三的步骤302中第一回报值的算法类似。第六流量特征可以是第二设备在第三周期内某个瞬间的数值,也可以经过处理后的数值,例如,第六流量特征可以是第二设备在第三期内的平均值。
271.在步骤510中,若第五回报值与第六回报值的和大于第一回报值与第二回报值的和,则网络设备利用第五步长修改第一拥塞控制规则,获得第三拥塞控制规则,利用第六步长修改第二拥塞控制规则,获得第四拥塞控制规则。
272.可选地,与步骤507中的类似,在网络设备确定第五回报值与第六回报值的和大于第一回报值与第二回报值的和时,网络设备先不用第五步长修改第一拥塞控制规则,获得第三拥塞控制规则,利用第六步长修改第二拥塞控制规则,获得第四拥塞控制规则的步骤,而是利用第七步长继续反向修改第五拥塞控制参数,获得第七拥塞控制参数,利用第八步长继续反向修改第六拥塞控制参数,获得第八拥塞控制参数。
273.上面对本申请实施例中的拥塞控制方法进行了描述,下面对本申请实施例中的拥塞控制装置进行描述。
274.请参阅图6,为本申请提供的拥塞控制装置的一个实施例的结构示意图。
275.第一获取单元601,用于获取第一流量特征,第一流量特征包括第一设备在第一周期内根据第一拥塞控制参数转发流量时生成的统计信息,第一拥塞控制参数是根据第一拥塞控制规则获得的;
276.第二获取单元602,用于根据第一流量特征,获得第一回报值;
277.第三获取单元603,用于利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数;
278.第四获取单元604,用于获取第二流量特征,第二流量特征包括第一设备在第二周期内根据第二拥塞控制参数转发流量时生成的统计信息;
279.第五获取单元605,用于根据第二流量特征,获得第二回报值;
280.执行单元606,用于若第二回报值大于第一回报值,则执行相应的处理。
281.本实施例中,在经过第一拥塞控制规则获得第一拥塞控制参数后,第一获取单元601可以获取第一流量特征,该第一流量特征包括第一设备在第一周期内根据第一拥塞控制参数转发流量时生成的统计信息,第一拥塞控制参数是根据第一拥塞控制规则获得的,第二获取单元602根据第一流量特征可以获得第一回报值,在利用第一步长修改第一拥塞控制参数后,第三获取单元603,可以获得第二拥塞控制参数,第四获取单元604可以获取第二流量特征,该第二流量特征包括第一设备在第二周期内根据第二拥塞控制参数转发流量时生成的统计信息,第五获取单元605根据该第二流量特征,可以获得第二回报值,若第二回报值大于第一回报值,则执行单元606执行相应的处理,其中,第三获取单元603利用第一步长修改第一拥塞控制参数,获得了可以获得更大回报值的第二拥塞控制参数,因为第二回报值大于第一回报值,因此第二拥塞控制参数优于第一拥塞控制参数,因此拥塞控制装置对第一拥塞控制规则的推理结果进行了优化,因此提升了第一拥塞控制规则的场景泛化性。
282.本实施例中,拥塞控制装置各单元所执行的操作与前述图2所示实施例中描述的
类似,此处不再赘述。
283.请参阅图7,为本申请提供的拥塞控制装置的另一个实施例的结构示意图。
284.在前述图6的拥塞控制装置的基础上,本申请提供的拥塞控制装置还包括:
285.可选地,第一获取单元601还用于获取第一设备的第一运行值和第二运行值。
286.该拥塞控制装置还包括:
287.确定单元707,用于确定第一运行值和第二运行值的差值是否小于目标阈值;
288.第三获取单元603具体用于,若差值小于目标阈值,则执行利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数的步骤。
289.可选地,该拥塞控制装置还包括:
290.调整单元708,用于调整初始拥塞控制参数;
291.统计单元709,用于统计初始拥塞控制参数的连续调整次数;
292.第三获取单元603具体用于当连续调整次数大于设定阈值n时,执行利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数的步骤;
293.第一拥塞控制参数为将初始拥塞控制参数根据所述第一拥塞控制规则连续调整n次得到的。
294.可选地,第一公式包括:q=a
×
b。
295.可选地,第一拥塞控制规则为第一公式,第一公式为:
296.q=f(a,b),其中,q为拥塞控制参数,a为速率,b为设定时延,f(a,b)为跟a和b相关的函数。
297.可选地,第五获取单元605还用于利用第一步长修改第一公式,获得第二公式。
298.可选地,第五获取单元605还用于根据第二流量特征,利用第二公式获得第三拥塞控制参数;
299.第三拥塞控制参数用于第一设备控制转发的流量。
300.可选地,第一步长为百分比值。
301.可选地,第二公式为:
302.q=a
×
b
×
(1+c),其中,c为第一步长。
303.可选地,执行单元606具体用于利用第二步长正向修改第二拥塞控制参数,获得第三拥塞控制参数;
304.执行单元606具体用于获取第三流量特征,第三流量特征包括第一设备在第三周期内根据第三拥塞控制参数转发流量时生成的统计信息;
305.执行单元606具体用于根据第三流量特征获取第三回报值。
306.可选地,第三获取单元603还用于,若第三回报值小于第二回报值,利用第三步长反向修改第二拥塞控制参数,获得第四拥塞控制参数;
307.第四获取单元604还用于,获取第四流量特征,第四流量特征包括第一设备在第四周期内根据第四拥塞控制参数转发流量时生成的统计信息;
308.第五获取单元605还用于根据第四流量特征获取第四回报值。
309.可选地,该拥塞控制装置还包括:
310.修改单元710,用于若第四回报值大于第二回报值,利用第三步长和第一步长修改第一拥塞控制规则,获得第二拥塞控制规则。
311.可选地,该拥塞控制装置还包括:
312.生成单元711,用于根据第四流量特征,利用第二拥塞控制规则生成第一设备的新的拥塞控制参数,新的拥塞控制参数用于第一设备控制转发的流量。
313.可选地,第二步长大于第一步长。
314.可选地,第一获取单元601还用于获取第五流量特征,第五流量特征包括第二设备在第一周期内根据第五拥塞控制参数转发流量时生成的统计信息,第五拥塞控制参数是根据第三拥塞控制规则获得的;
315.第二获取单元602还用于根据第五流量特征,获得第五回报值;
316.第三获取单元603还用于利用第四步长修改第五拥塞控制参数,获得第六拥塞控制参数;
317.第四获取单元604还用于获取第六流量特征,第六流量特征包括第二设备在第二周期内根据第六拥塞控制参数转发流量时生成的统计信息;
318.第五获取单元605还用于根据第六流量特征,获得第六回报值;
319.执行单元606还用于若第六回报值与第二回报值之和大于第五回报值和第一回报值之和,则执行所述相应的处理。
320.可选地,执行单元706具体用于根据第四步长修改第三拥塞控制规则;
321.执行单元606具体用于根据第一步长修改第一拥塞控制规则。
322.可选地,执行单元706具体用于利用第二步长修改第二拥塞控制参数,获得第三拥塞控制参数;
323.执行单元606具体用于获取第三流量特征,第三流量特征包括第一设备在第三周期内根据第三拥塞控制参数转发流量时生成的统计信息;
324.执行单元606具体用于根据第三流量特征,获得第三回报值;
325.执行单元606具体用于利用第五步长修改第六拥塞控制参数,获得第七拥塞控制参数;
326.执行单元606具体用于获取第七流量特征,第七流量特征包括第二设备在第三周期内根据第七拥塞控制参数转发流量时生成的统计信息;
327.执行单元606具体用于根据第七流量特征,获得第七回报值。
328.本实施例中,拥塞控制装置各单元所执行的操作与前述图2和图3和图4所示实施例中描述的类似,此处不再赘述。
329.上面对本申请实施例中的拥塞控制装置进行了描述,下面对本申请实施例中的拥塞控制设备进行描述,
330.请参阅图8,为本申请提供的拥塞控制设备的一个实施例的结构示意图。
331.如图8所示,拥塞控制设备800包括处理器810,与所述处理器810耦接的存储器820,通信接口830。拥塞控制设备800可以是图1的网络设备,第一设备或者第二设备。处理器810可以是中央处理器(central processing unit,cpu),网络处理器(network processor,np)或者cpu和np的组合。处理器还可以是专用集成电路(application-specific integrated circuit,asic),可编程逻辑器件(programmable logic device,pld)或其组合。上述pld可以是复杂可编程逻辑器件(complex programmable logic device,cpld),现场可编程逻辑门阵列(field-programmable gate array,fpga),通用阵
列逻辑(generic array logic,gal)或其任意组合。处理器810可以是指一个处理器,也可以包括多个处理器。存储器820可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,ram);存储器也可以包括非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,rom),快闪存储器(flash memory),硬盘(hard disk drive,hdd)或固态硬盘(solid-state drive,ssd);存储器还可以包括上述种类的存储器的组合。存储器820中存储有计算机可读指令,所述计算机可读指令包括多个软件模块,例如第一获取模块822,第二获取模块824,第三获取模块826,第四获取模块828,第五获取模块830,执行模块832。
332.处理器810执行各个软件模块后可以按照各个软件模块的指示进行相应的操作。在本实施例中,一个软件模块所执行的操作实际上是指处理器810根据所述软件模块的指示而执行的操作。
333.第一获取模块822可以用于获取第一流量特征,第一流量特征包括第一设备在第一周期内根据第一拥塞控制参数转发流量时生成的统计信息,第一拥塞控制参数是根据第一拥塞控制规则获得的。
334.第二获取模块824用于根据第一流量特征,获得第一回报值。
335.第三获取模块826用于利用第一步长修改第一拥塞控制参数,获得第二拥塞控制参数。
336.第四获取模块828用于获取第二流量特征,第二流量特征包括第一设备在第二周期内根据第二拥塞控制参数转发流量时生成的统计信息。
337.第五获取模块830用于根据第二流量特征,获得第二回报值。
338.执行模块832用于若第二回报值大于所述第一回报值,则执行相应的处理。
339.此外,处理器810执行存储器820中的计算机可读指令后,可以按照所述计算机可读指令的指示,执行网络设备或第一设备或第二设备可以执行的全部操作,例如网络设备在与图2和图3和图4对应的实施例中执行的操作。
340.在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
341.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
342.另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
343.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上
或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1