一种拥塞控制方法、装置、转发芯片及客户端制造方法及图纸

技术编号:38318823 阅读:12 留言:0更新日期:2023-07-29 09:00
本申请实施例提供了一种拥塞控制方法、装置、转发芯片及客户端,涉及通信技术领域,上述拥塞控制方法包括:监控交换机中缓存队列内缓存的报文数量;当报文数量大于等于预设最低门限值时,生成CNP;向客户端发送CNP;客户端接收交换机发送的CNP;降低CNP指示的数据流的传输速率。应用本申请实施例提供的技术方案可以降低触发PFC的频率,降低链路时延,并提高链路带宽。宽。宽。

【技术实现步骤摘要】
一种拥塞控制方法、装置、转发芯片及客户端


[0001]本申请涉及通信
,特别是涉及一种拥塞控制方法、装置、转发芯片及客户端。

技术介绍

[0002]RoCE(Remote Direct Memory Access over Converged Ethernet,基于以太网的远程直接数据存取)具有成本更低、报文传输速率更快等优点,被更为广泛的应用。目前,基于RoCE的无损网络采用DCQCN(Data Center Quantized Congestion Notification,数据中心量化拥塞通知)算法进行拥塞控制,以保证流量的无损传输。然而,基于DCQCN算法进行拥塞控制时,流控链路较长,导致链路上的拥塞处理不及时,容易触发PFC(Priority

Based Flow Control,基于优先级的流量控制),使得流量降速极为明显,增大了链路时延,并降低了链路带宽。

技术实现思路

[0003]本申请实施例的目的在于提供一种拥塞控制方法、装置、转发芯片及客户端,以降低触发PFC的频率,降低链路时延,并提高链路带宽。具体技术方案如下:第一方面,本申请实施例提供了一种拥塞控制方法,应用于交换机中的转发芯片,所述方法包括:监控所述交换机中缓存队列内缓存的报文数量;当所述报文数量大于等于预设最低门限值时,生成CNP(Congestion Notification Packet,拥塞通知报文);向客户端发送所述CNP,以使所述客户端降低所述CNP指示的数据流的传输速率。
[0004]在一些实施例中,所述方法还包括:获取所述缓存队列内缓存的报文数量的变化幅度,作为目标缓存拥塞系数;将所述目标缓存拥塞系数封装在所述CNP中。
[0005]在一些实施例中,所述获取所述缓存队列内缓存的报文数量的变化幅度,作为目标缓存拥塞系数的步骤,包括:获取所述缓存队列内缓存的当前报文数量和上一时刻报文数量的差值,得到所述缓存队列的拥塞长度变化值;根据所述拥塞长度变化值、预设最高门限值、所述预设最低门限值和预设拥塞区间参数,得到所述缓存队列内缓存的报文数量的变化幅度,作为目标缓存拥塞系数。
[0006]在一些实施例中,所述根据所述拥塞长度变化值、预设最高门限值、所述预设最低门限值和预设拥塞区间参数,得到所述缓存队列内缓存的报文数量的变化幅度的步骤,包括:利用如下公式确定所述缓存队列内缓存的报文数量的变化幅度:C=Ct*λ /(W1

W2)
其中,C为所述缓存队列内缓存的报文数量的变化幅度,Ct为所述拥塞长度变化值,W1为所述预设最高门限值,W2为所述预设最低门限值,λ为所述预设拥塞区间参数。
[0007]在一些实施例中,所述CNP携带有INT(In

band Telemetry,带内遥测)头,所述目标缓存拥塞系数封装在所述INT头中。
[0008]第二方面,本申请实施例提供了一种拥塞控制方法,应用于客户端,所述方法包括:接收交换机发送的CNP,所述CNP为所述交换机中的转发芯片根据上述第一方面所述的方法生成的报文;降低所述CNP指示的数据流的传输速率。
[0009]在一些实施例中,所述CNP携带有目标缓存拥塞系数;所述降低所述CNP指示的数据流的传输速率的步骤,包括:根据预设的缓存拥塞系数和降速策略的对应关系,确定所述目标缓存拥塞系数对应的目标降速策略,所述对应关系中,第一缓存拥塞系数对应的第一降速策略的降速幅度大于第二缓存拥塞系数对应的第二降速策略的降速幅度,所述第一缓存拥塞系数大于所述第二缓存拥塞系数;根据所述目标降速策略、所述目标缓存拥塞系数、降速因子和所述CNP指示的数据流的当前传输速率,更新所述数据流的传输速率,更新后的传输速率小于所述当前传输速率。
[0010]在一些实施例中,所述根据所述目标降速策略、所述目标缓存拥塞系数、降速因子和所述CNP指示的数据流的当前传输速率,更新所述数据流的传输速率的步骤,包括:利用如下降速策略的公式更新所述数据流的传输速率:其中,RT为更新后的传输速率,Rc为所述当前传输速率,α为所述降速因子,C为所述目标缓存拥塞系数,λ为所述预设拥塞区间参数。
[0011]第三方面,本申请实施例提供了一种拥塞控制装置,应用于交换机中的转发芯片,所述装置包括:监控模块,用于监控所述交换机中缓存队列内缓存的报文数量;生成模块,用于当所述报文数量大于等于预设最低门限值时,生成CNP;发送模块,用于向客户端发送所述CNP,以使所述客户端降低所述CNP指示的数据流的传输速率。
[0012]在一些实施例中,所述生成模块,还用于:获取所述缓存队列内缓存的报文数量的变化幅度,作为目标缓存拥塞系数;将所述目标缓存拥塞系数封装在所述CNP中。
[0013]在一些实施例中,所述生成模块,具体用于:获取所述缓存队列内缓存的当前报文数量和上一时刻报文数量的差值,得到所述缓存队列的拥塞长度变化值;根据所述拥塞长度变化值、预设最高门限值、所述预设最低门限值和预设拥塞区间参数,得到所述缓存队列内缓存的报文数量的变化幅度,作为目标缓存拥塞系数。
[0014]在一些实施例中,所述生成模块,具体用于:利用如下公式确定所述缓存队列内缓存的报文数量的变化幅度:C=Ct*λ /(W1

W2)其中,C为所述缓存队列内缓存的报文数量的变化幅度,Ct为所述拥塞长度变化值,W1为所述预设最高门限值,W2为所述预设最低门限值,λ为所述预设拥塞区间参数。
[0015]在一些实施例中,所述CNP携带有INT头,所述目标缓存拥塞系数封装在所述INT头中。
[0016]第四方面,本申请实施例提供了一种拥塞控制装置,应用于客户端,所述装置包括:接收模块,用于接收交换机发送的CNP,所述CNP为所述交换机中的转发芯片根据上述第三方面所述的装置生成的报文;降低模块,用于降低所述CNP指示的数据流的传输速率。
[0017]在一些实施例中,所述CNP携带有目标缓存拥塞系数;所述降低模块,具体用于:根据预设的缓存拥塞系数和降速策略的对应关系,确定所述目标缓存拥塞系数对应的目标降速策略,所述对应关系中,第一缓存拥塞系数对应的第一降速策略的降速幅度大于第二缓存拥塞系数对应的第二降速策略的降速幅度,所述第一缓存拥塞系数大于所述第二缓存拥塞系数;根据所述目标降速策略、所述目标缓存拥塞系数、降速因子和所述CNP指示的数据流的当前传输速率,更新所述数据流的传输速率,更新后的传输速率小于所述当前传输速率。
[0018]在一些实施例中,所述降低模块,具体用于:利用如下降速策略的公式更新所述数据流的传输速率:
其中,RT为更新后的传输速率,Rc为所述当前传输速率,α为所述降速因子,C为所述目标缓存拥塞系数,λ为所述预设拥塞区间参数。
[0019]第五方面,本申请实施例提供了一种转发芯片,执行上述第一方面所述的方法步骤。
[0020]第六方面,本申请实施例提供了一种客户端,包括处理器和机器可读本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种拥塞控制方法,其特征在于,应用于交换机中的转发芯片,所述方法包括:监控所述交换机中缓存队列内缓存的报文数量;当所述报文数量大于等于预设最低门限值时,生成拥塞通知报文CNP;向客户端发送所述CNP,以使所述客户端降低所述CNP指示的数据流的传输速率。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取所述缓存队列内缓存的报文数量的变化幅度,作为目标缓存拥塞系数;将所述目标缓存拥塞系数封装在所述CNP中。3.根据权利要求2所述的方法,其特征在于,所述获取所述缓存队列内缓存的报文数量的变化幅度,作为目标缓存拥塞系数的步骤,包括:获取所述缓存队列内缓存的当前报文数量和上一时刻报文数量的差值,得到所述缓存队列的拥塞长度变化值;根据所述拥塞长度变化值、预设最高门限值、所述预设最低门限值和预设拥塞区间参数,得到所述缓存队列内缓存的报文数量的变化幅度,作为目标缓存拥塞系数。4.根据权利要求3所述的方法,其特征在于,所述根据所述拥塞长度变化值、预设最高门限值、所述预设最低门限值和预设拥塞区间参数,得到所述缓存队列内缓存的报文数量的变化幅度的步骤,包括:利用如下公式确定所述缓存队列内缓存的报文数量的变化幅度:C=Ct*λ /(W1

W2)其中,C为所述缓存队列内缓存的报文数量的变化幅度,Ct为所述拥塞长度变化值,W1为所述预设最高门限值,W2为所述预设最低门限值,λ为所述预设拥塞区间参数。5.根据权利要求2

4任一项所述的方法,其特征在于,所述CNP携带有带内遥测INT头,所述目标缓存拥塞系数封装在所述INT头中。6.一种拥塞控制方法,其特征在于,应用于客户端,所述方法包括:接收交换机发送的拥塞通知报文CNP,所述CNP为所述交换机中的转发芯片根据权利要求1

5任一项所述的方法生成的报文;降低所述CNP指示的数据流的传输速率。7.根据权利要求6所述的方法,其特征在于,所述CNP携带有目标缓存...

【专利技术属性】
技术研发人员:宁可
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:

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

1