System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 数据传输方法、设备及存储介质技术_技高网

数据传输方法、设备及存储介质技术

技术编号:40276586 阅读:9 留言:0更新日期:2024-02-02 23:03
本申请实施例提供一种数据传输方法、设备及存储介质。在本申请实施例中,在通过RDMA进行远程内存访问的场景中,提供一种新的RDMA操作,即双写单边操作,通过该双写单边操作可以将目标数据以及该目标数据在接收端的两个内存地址的信息通过一次网络传输发送给接收端的网卡设备,由接收端的网卡设备根据两个内存地址的信息执行本地内存写操作和本地内存拷贝操作,实现对目标数据的双写,保证目标数据在内存中的原子性和一致性。在双写过程中,目标数据只需经过一次网络传输,可以节约网络带宽资源,另外,双写操作是在接收端通过本地内存拷贝完成的,相比于两次网络传输来说,可以减少网络延迟,有利于提高数据双写的效率,提高系统性能。

【技术实现步骤摘要】

本申请涉及云计算,尤其涉及一种数据传输方法、设备及存储介质


技术介绍

1、远程直接数据存取(remote direct memory access,rdma)实际上是一种智能网卡与软件架构充分优化的远端内存直接高速访问技术,通过将rdma协议固化在网卡硬件上,以及支持零复制网络技术和内核内存旁路技术来实现高性能的远程直接数据存取,而不需要经过中央处理器(central processing unit,cpu)耗时的处理,因此被广泛应用到数据库、数据仓库和分布式数据存储等众多场景中。

2、在一些应用场景中,在通过rdma向远程内存写入数据过程中,需要保证被写入远程内存中的数据的原子性,避免出现内存数据不一致的情况。为此,在一些现有方案中,在通过rdma向远程内存写入数据的过程中引入了双写机制,即通过两次rdma单边操作先后将同一数据分别写入远端两个不同的内存地址中,以保证数据的原子性。但是,这种双写机制不仅浪费网络带宽资源,还会导致网络延迟的增加,进而影响系统性能。


技术实现思路

1、本申请的多个方面提供一种数据传输方法、设备及存储介质,用以在实现数据双写的情况下,节约网络带宽资源,减少网络延迟。

2、本申请实施例提供一种数据传输方法,应用于发送端的网卡设备,所述发送端运行有第一应用,所述方法包括:获取第一应用的目标数据以及所述目标数据对应的双写地址信息,所述双写地址信息包括接收端的第一内存地址信息和第二内存地址信息;使用远程直接数据存取rdma的双写单边操作,将所述目标数据、所述第一内存地址信息和所述第二内存地址信息发送给接收端的网卡设备,以指示所述接收端的网卡设备先将所述目标数据写入所述第一内存地址信息对应的第一内存地址,再执行本地内存拷贝操作,以将所述目标数据从所述第一内存地址拷贝到所述第二内存地址信息对应的第二内存地址中,以实现对所述目标数据的双写。

3、本申请实施例还提供一种数据传输方法,应用于接收端的网卡设备,所述方法包括:接收发送端的网卡设备使用远程直接数据存取rdma的双写单边操作发送的目标数据和所述目标数据对应的双写地址信息,所述双写地址信息包括接收端的第一内存地址信息和第二内存地址信息;将所述目标数据写入所述第一内存地址信息对应的第一内存地址中;以及在将所述目标数据写入所述第一内存地址后,执行本地内存拷贝操作,以将所述目标数据从所述第一内存地址拷贝到所述第二内存地址信息对应的第二内存地址中,以实现对所述目标数据的双写。

4、本申请实施例还提供一种网卡设备,应用于发送端,所述发送端运行有第一应用,所述网卡设备基于可编程硬件实现,包括:

5、获取模块,用于获取第一应用的目标数据以及所述目标数据对应的双写地址信息,所述双写地址信息包括接收端的第一内存地址信息和第二内存地址信息;

6、传输模块,用于使用远程直接数据存取rdma的双写单边操作,将所述目标数据、所述第一内存地址信息和所述第二内存地址信息发送给接收端的网卡设备,以指示所述接收端的网卡设备先将所述目标数据写入所述第一内存地址信息对应的第一内存地址,再执行本地内存拷贝操作,以将所述目标数据从所述第一内存地址拷贝到所述第二内存地址信息对应的第二内存地址中,以实现对所述目标数据的双写。

7、本申请实施例还提供一种网卡设备,应用于发送端,所述网卡设备包括:存储单元和处理单元,所述存储单元用于存储计算机程序,所述处理单元与所述存储单元耦合,用于执行所述计算机程序,以用于实现本申请实施例提供的应用于发送端的数据传输方法中的步骤。

8、本申请实施例提供一种网卡设备,应用于接收端,所述网卡设备基于可编程硬件实现,包括:

9、接收模块,用于接收发送端的网卡设备使用远程直接数据存取rdma的双写单边操作发送的目标数据和所述目标数据对应的双写地址信息,所述双写地址信息包括接收端的第一内存地址信息和第二内存地址信息;

10、写入模块,用于将所述目标数据写入所述第一内存地址信息对应的第一内存地址中;以及

11、拷贝模块,用于在将所述目标数据写入所述第一内存地址后,执行本地内存拷贝操作,以将所述目标数据从所述第一内存地址拷贝到所述第二内存地址信息对应的第二内存地址中,以实现对所述目标数据的双写。

12、本申请实施例还提供一种网卡设备,应用于接收端,所述网卡设备包括:存储单元和处理单元,所述存储单元用于存储计算机程序,所述处理单元与所述存储单元耦合,用于执行所述计算机程序,以用于实现本申请实施例提供的应用于接收端的数据传输方法中的步骤。

13、本申请实施例还提供一种电子设备,包括本申请实施例提供的任一种网卡设备。

14、本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,当所述计算机程序被处理器或网卡单元执行时,致使所述处理器或网卡单元实现本申请实施例提供的数据传输方法中的步骤。

15、在本申请实施例中,在通过rdma进行远程内存访问的场景中,提供一种新的rdma操作,即双写单边操作,通过该双写单边操作可以将向接收端双写的目标数据以及该目标数据在接收端的两个内存地址的信息通过一次网络传输发送给接收端的网卡设备,由接收端的网卡设备根据两个内存地址的信息执行本地内存写操作和本地内存拷贝操作,实现对目标数据的双写,保证目标数据在内存中的原子性和一致性。与此同时,在该双写过程中,目标数据只需经过一次网络传输,可以节约网络带宽资源,另外,双写操作是在接收端通过本地内存拷贝完成的,相比于两次网络传输来说,可以减少网络延迟,有利于提高数据双写的效率,进而提高系统性能。

本文档来自技高网...

【技术保护点】

1.一种数据传输方法,其特征在于,应用于发送端的网卡设备,所述发送端运行有第一应用,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,获取第一应用需要向接收端双写的目标数据,包括:

3.根据权利要求1所述的方法,其特征在于,获取所述目标数据对应的双写地址信息,包括:

4.根据权利要求1所述的方法,其特征在于,使用远程直接数据存取RDMA的双写单边操作,将所述目标数据、所述第一内存地址信息和所述第二内存地址信息发送给接收端的网卡设备,包括:

5.根据权利要求1-4任一项所述的方法,其特征在于,还包括:

6.根据权利要求5所述的方法,其特征在于,所述特定通知消息包括消息上报标识,所述消息上报标识表征需要向所述第一应用上报所述特定通知消息;

7.一种数据传输方法,其特征在于,应用于接收端的网卡设备,所述方法包括:

8.根据权利要求7所述的方法,其特征在于,接收发送端的网卡设备使用远程直接数据存取RDMA的双写单边操作发送的目标数据和所述目标数据对应的双写地址信息,包括:

9.根据权利要求7所述的方法,其特征在于,执行本地内存拷贝操作,以将所述目标数据从所述第一内存地址拷贝到所述第二内存地址信息对应的第二内存地址中,实现对所述目标数据的双写,包括:

10.根据权利要求7-9任一项所述的方法,其特征在于,还包括:

11.一种网卡设备,其特征在于,应用于发送端,所述发送端运行有第一应用,所述网卡设备基于可编程硬件实现,包括:

12.一种网卡设备,其特征在于,所述网卡设备包括:存储单元和处理单元,所述存储单元用于存储计算机程序,所述处理单元与所述存储单元耦合,用于执行所述计算机程序,以用于实现权利要求1-6以及权利要求7-10中任一项所述方法中的步骤。

13.一种电子设备,其特征在于,包括:如权利要求11或12所述的网卡设备。

14.一种存储有计算机程序的计算机可读存储介质,其特征在于,当所述计算机程序被处理器或网卡单元执行时,致使所述处理器或网卡单元实现权利要求1-6以及权利要求7-10中任一项所述方法中的步骤。

...

【技术特征摘要】

1.一种数据传输方法,其特征在于,应用于发送端的网卡设备,所述发送端运行有第一应用,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,获取第一应用需要向接收端双写的目标数据,包括:

3.根据权利要求1所述的方法,其特征在于,获取所述目标数据对应的双写地址信息,包括:

4.根据权利要求1所述的方法,其特征在于,使用远程直接数据存取rdma的双写单边操作,将所述目标数据、所述第一内存地址信息和所述第二内存地址信息发送给接收端的网卡设备,包括:

5.根据权利要求1-4任一项所述的方法,其特征在于,还包括:

6.根据权利要求5所述的方法,其特征在于,所述特定通知消息包括消息上报标识,所述消息上报标识表征需要向所述第一应用上报所述特定通知消息;

7.一种数据传输方法,其特征在于,应用于接收端的网卡设备,所述方法包括:

8.根据权利要求7所述的方法,其特征在于,接收发送端的网卡设备使用远程直接数据存取rdma的双写单边操作发送的目标数据和所述目标数据对应的...

【专利技术属性】
技术研发人员:方兴杨航房智勇李金虎
申请(专利权)人:杭州阿里云飞天信息技术有限公司
类型:发明
国别省市:

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

1