System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请实施例涉及计算机,尤其涉及一种数据传输方法、装置、电子设备及计算机存储介质。
技术介绍
1、随着高性能计算(hpc)技术、云技术、数据中心的发展,rdma(remote directmemory access)作为一种直接进行远程内存存取的技术,因其具有高带宽、低时延及低cpu占用率的特点,在数据传输领域得到了广泛的应用。
2、随着网络拥塞的情况加剧,需要对具有rdma功能的网卡进行流量管理,以确保网卡的服务质量。
技术实现思路
1、有鉴于此,本申请实施例提供一种数据传输方法、装置、电子设备及计算机存储介质,可以利用不同优先级的发送队列对数据报文的报文类型进行精细化管理,优先保证高优先级发送队列的带宽,以提高网卡的服务质量。
2、根据本申请实施例的第一方面,提供了一种数据传输方法,应用于具有rdma功能的网卡,所述网卡的一端与主设备连接,另一端连接有多个目标设备,所述方法包括:
3、根据接收的当前批次的数据读写请求,在所述网卡的设定区域获取待发送数据报文;
4、根据所述待发送数据报文的报文类型,将所述待发送报文存储至对应的发送队列,其中,所述网卡中设置有多个所述发送队列,多个所述发送队列之间存储的数据报文的所述报文类型是不同的,多个所述发送队列之间的优先级是不同的,所述发送队列的优先级与所述发送队列的预设带宽值呈正相关;
5、根据所述发送队列中每个所述待发送数据报文的报文长度,确定所述发送队列的第一等效带宽值;
>6、在检测到所述发送队列的所述第一等效带宽值不为0的情况下,将所述发送队列中的所述待发送数据报文发送至对应的所述目标设备。
7、在一些实施例中,所述方法还包括:
8、在当前批次数据传输完成时,根据所述发送队列的所述第一等效带宽值和所述发送队列的所述预设带宽值,确定带宽差值;
9、在所述带宽差值小于0的情况下,根据所述发送队列的所述预设带宽值与所述带宽差值,确定第二等效带宽值,并将所述第二等效带宽值确定为,下一批次传输数据时所述发送队列的所述预设带宽值;
10、在所述带宽差值大于等于0的情况下,不调整所述发送队列下一批次传输数据的所述预设带宽值。
11、在一些实施例中,所述根据所述发送队列中每个所述待发送数据报文的报文长度,确定所述发送队列的第一等效带宽值,包括:
12、依次获取所述发送队列中每个所述待发送数据报文的报文长度;
13、根据每个所述待发送数据报文的报文长度确定所述发送队列中所述待发送数据报文的总报文长度,并将所述总报文长度确定为所述发送队列的所述第一等效带宽值。
14、在一些实施例中,根据所述发送队列中每个所述待发送数据报文的报文长度,确定所述发送队列的第一等效带宽值,包括:
15、在检测到所述发送队列为最高优先级的所述发送队列的情况下,确定所述发送队列的所述第一等效带宽值为无穷小;
16、在检测到所述发送队列为非最高优先级的所述发送队列的情况下,根据所述发送队列中每个所述待发送数据报文的报文长度,确定所述发送队列的所述第一等效带宽值。
17、在一些实施例中,所述将所述发送队列中的所述待发送数据报文发送至对应的所述目标设备,包括:
18、在检测到所述发送队列的数量大于或等于2的情况下,使用轮询调度的方式将每个所述发送队列中的所述待发送数据报文发送至对应的所述目标设备。
19、在一些实施例中,所述方法还包括:
20、在检测到全部所述发送队列的总等效带宽值大于所述网卡的预设总带宽值的持续时间大于预设时间的情况下,使用优先级的调度方式将每个所述发送队列中的所述待发送数据报文发送至对应的所述目标设备。
21、根据本申请实施例的第二方面,提供了一种数据传输装置,应用于具有rdma功能的网关,所述网卡的一端与主设备连接,另一端连接有多个目标设备,所述装置包括:
22、获取模块,用于根据接收的当前批次的数据读写请求,在所述网卡的设定区域获取待发送数据报文;
23、存储模块,用于根据所述待发送数据报文的报文类型,将所述待发送报文存储至对应的发送队列,其中,所述网卡中设置有多个所述发送队列,多个所述发送队列之间存储的数据报文的所述报文类型是不同的,多个所述发送队列之间的优先级是不同的,所述发送队列的优先级与所述发送队列的预设带宽值呈正相关;
24、确定模块,用于根据所述发送队列中每个所述待发送数据报文的报文长度,确定所述发送队列的第一等效带宽值;
25、发送模块,用于在检测到所述发送队列的所述第一等效带宽值不为0的情况下,将所述发送队列中的所述待发送数据报文发送至对应的所述目标设备。
26、根据本申请实施例的第三方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如第一方面所述的数据传输方法对应的操作。
27、根据本申请实施例的第四方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的数据传输方法。
28、根据本申请实施例提供的数据传输方案,通过将不同报文类型的待发送数据报文,存储至对应的发送队列,可以利用多个发送队列对待发送数据报文进行精细化管理,进一步地,不同的发送队列之间具有不同的优先级,并通过为高优先级的发送队列配置高带宽值,可以优先保证高优先级发送队列的带宽,提高了网卡的服务质量。
本文档来自技高网...【技术保护点】
1.一种数据传输方法,应用于具有RDMA功能的网卡,所述网卡的一端与主设备连接,另一端连接有多个目标设备,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述根据所述发送队列中每个所述待发送数据报文的报文长度,确定所述发送队列的第一等效带宽值,包括:
4.根据权利要求3所述的方法,其特征在于,根据所述发送队列中每个所述待发送数据报文的报文长度,确定所述发送队列的第一等效带宽值,包括:
5.根据权利要求1所述的方法,其特征在于,所述将所述发送队列中的所述待发送数据报文发送至对应的所述目标设备,包括:
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
7.一种数据传输装置,应用于具有RDMA功能的网关,所述网卡的一端与主设备连接,另一端连接有多个目标设备,其特征在于,所述装置包括:
8.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
9.一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-6中任一所述的数据传输方法。
10.一种计算机程序产品,包括计算机指令,所述计算机指令指示计算设备执行如权利要求1-6中任一所述的数据传输方法对应的操作。
...【技术特征摘要】
1.一种数据传输方法,应用于具有rdma功能的网卡,所述网卡的一端与主设备连接,另一端连接有多个目标设备,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述根据所述发送队列中每个所述待发送数据报文的报文长度,确定所述发送队列的第一等效带宽值,包括:
4.根据权利要求3所述的方法,其特征在于,根据所述发送队列中每个所述待发送数据报文的报文长度,确定所述发送队列的第一等效带宽值,包括:
5.根据权利要求1所述的方法,其特征在于,所述将所述发送队列中的所述待发送数据报文发送至对应的所述目标设备,包括...
【专利技术属性】
技术研发人员:张丰涛,
申请(专利权)人:中科驭数北京科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。