【技术实现步骤摘要】
数据处理方法、远程直接访存网卡和设备
本申请涉及计算机
,尤其涉及数据处理方法、远程直接访存网卡和设备。
技术介绍
存储级存储器(storageclassmemory,SCM),例如3DXpoint,是一种新型非易失性存储器(non-volatilememory,NVM),它是一种同时结合了传统的存储介质(如机械硬盘、固态硬盘等)和存储器(如动态随机存取存储器)的复合型存储器。SCM可以像动态随机存取存储器一样嵌入主机板的插槽中,相较于动态随机存取存储器,SCM在失去电源的状态下仍然可以不间断地保存资料,具备断电保存的特性。SCM能够提供比快闪存储器更快的读写速度,在成本上比动态随机存取存储器更便宜。在一些计算设备系统架构中,SCM被用作内存使用。在一些方案中,通过以互连的方式将多个以SCM作为内存的计算设备连接形成SCM资源池以扩大SCM的容量,从而实现对数据的冗余备份。在多个以SCM作为内存的计算设备组成的SCM资源池中,任意两台计算设备之间可以基于远程直接内存访问(remotedirectmemoryaccess,RDMA)技术通信以及传输数据,远程直接内存访问可以简称为远程直接访存。与传统的网络传输技术不同,RDMA技术可以将数据直接从一台计算设备的内存传输到另一台计算设备的内存,而无需两台计算设备的操作系统或内核介入。对于基于RDMA技术进行通信以及数据传输的SCM资源池,需要解决远程内存持久化的问题。内存持久化,指的是将数据从计算设备的易失性存储介质写回到计算设备的非易失性存储介质中;而远程 ...
【技术保护点】
1.一种数据处理方法,其特征在于,包括:/n第一远程直接访存网卡RNIC接收第二RNIC发送的远程直接访存RDMA写请求,所述RDMA写请求包括第一数据和数据持久化标记,所述RDMA写请求用于请求将所述第一数据写入第一设备,所述数据持久化标记用于指示所述第一数据为待持久化的数据,所述第一RNIC为所述第一设备的RNIC,所述第二RNIC为第二设备的RNIC,所述第一设备和所述第二设备基于RDMA方式通信;/n所述第一RNIC向第一处理器发送直接内存访问DMA写请求,所述DMA写请求包括所述第一数据,所述DMA写请求用于指示所述第一处理器将所述第一数据写入所述第一设备,所述第一处理器为所述第一设备的处理器,所述第一RNIC和所述第一处理器基于DMA方式通信;/n所述第一RNIC根据所述数据持久化标记指示所述第一处理器将所述第一数据存储至所述第一设备的非易失性存储器中。/n
【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:
第一远程直接访存网卡RNIC接收第二RNIC发送的远程直接访存RDMA写请求,所述RDMA写请求包括第一数据和数据持久化标记,所述RDMA写请求用于请求将所述第一数据写入第一设备,所述数据持久化标记用于指示所述第一数据为待持久化的数据,所述第一RNIC为所述第一设备的RNIC,所述第二RNIC为第二设备的RNIC,所述第一设备和所述第二设备基于RDMA方式通信;
所述第一RNIC向第一处理器发送直接内存访问DMA写请求,所述DMA写请求包括所述第一数据,所述DMA写请求用于指示所述第一处理器将所述第一数据写入所述第一设备,所述第一处理器为所述第一设备的处理器,所述第一RNIC和所述第一处理器基于DMA方式通信;
所述第一RNIC根据所述数据持久化标记指示所述第一处理器将所述第一数据存储至所述第一设备的非易失性存储器中。
2.根据权利要求1所述的方法,其特征在于,所述数据持久化标记为写持久化指令。
3.根据权利要求1所述的方法,其特征在于,所述数据持久化标记为所述第一数据对应的目的存储地址,所述目的存储地址对应的存储空间用于存储所述第一数据,所述目的存储地址为所述第一设备中的持久存储地址,所述持久存储地址对应的存储空间用于存储待持久化的数据。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述第一RNIC根据所述数据持久化标记指示所述第一处理器将所述第一数据存储至所述第一设备的非易失性存储器中包括:
所述第一RNIC根据所述数据持久化标记在与所述第二RNIC对应的接收队列中添加DMA最低有效位读请求;
所述第一RNIC向所述第一处理器发送所述DMA最低有效位读请求,所述DMA最低有效位读请求用于指示所述第一处理器将缓存在所述第一设备的外设总线链路中的所有数据存储至所述第一设备的非易失性存储器中。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述第一RNIC根据所述数据持久化标记指示所述第一处理器将所述第一数据存储至所述第一设备的非易失性存储器中包括:
所述第一RNIC在根据所述数据持久化标记以及所述第一数据生成RDMA接收请求对应的工作队列项WQE之后,清除所述WQE,所述RDMA接收请求用于接收所述第二设备发起的RDMA发送请求;
所述第一RNIC生成所述RDMA接收请求对应的完成队列项CQE,所述RDMA接收请求对应的CQE用于指示所述第一处理器将缓存在所述第一处理器的易失性存储介质中的第一数据存储至所述第一设备的非易失性存储器中。
6.一种数据处理方法,其特征在于,包括:
第二远程直接访存网卡RNIC接收第二处理器发送的远程直接访存RDMA写持久化请求,所述RDMA写持久化请求包括数据持久化标记,所述RDMA写持久化请求用于请求将第一数据存储至第一设备的非易失性存储器中,所述数据持久化标记用于指示所述第一数据为待持久化的数据,所述第二RNIC为第二设备的RNIC,所述第二处理器为所述第二设备的处理器,所述第一设备和所述第二设备基于RDMA方式通信,所述第二RNIC和所述第二处理器基于DMA方式通信;
所述第二RNIC根据所述RDMA写持久化请求生成RDMA写请求,所述RDMA写请求包括所述第一数据和所述数据持久化标记;
所述第二RNIC向第一RNIC发送所述RDMA写请求,所述RDMA写请求用于请求将所述第一数据写入所述第一设备,所述第一RNIC为所述第一设备的RNIC。
7.根据权利要求6所述的方法,其特征在于,所述数据持久化标记为写持久化指令。
8.根据权利要求6所述的方法,其特征在于,所述数据持久化标记为所述第一数据对应的目的存储地址,所述目的存储地址对应的存储空间用于存储所述第一数据,所述目的存储地址为所述第一设备中的持久存储地址,所述持久存储地址对应的存储空间用于存储待持久化的数据。
9.根据权利要求6-8任一项所述的方法,其特征在于,所述第二RNIC向第一RNIC发送所述RDMA写请求之后,还包括:
当接收到所述第一RNIC发送的所述第一数据对应的接收确认消息时,所述第二RNIC缓存所述第一数据对应的接收确认消息,所述第一数据对应的接收确认消息包括第一数据包序列号PSN,所述第一PSN为所述第一数据的序列号,所述第一数据对应的接收确认消息用于指示所述第一RNIC接收到所述第一数据;
所述第二RNIC接收所述第一RNIC发送的第一确认消息,所述第一确认消息包括第二PSN;
当所述第一PSN与所述第二PSN相同时,所述第二RNIC生成所述RDMA写持久化请求对应的完成项CQE,所述RDMA写持久化请求对应的CQE用于通知所述第二处理器所述第一数据已经存储至所述第一设备的非易失性存储器中。
10.根据权利要求6-8任一项所述的方法,其特征在于,所述第二RNIC向第一RNIC发送所述RDMA写请求之后,还包括:
当接收到所述第一RNIC发送的所述第一数据对应的接收确认消息时,所述第二RNIC缓存所述第一数据对应的接收确认消息,所述第一数据对应的接收确认消息包括第一PSN,所述第一PSN为所述第一数据的序列号,所述第一数据对应的接收确认消息用于指示所述第一RNIC接收到所述第一数据;
所述第二RNIC生成所述RDMA写持久化请求对应的CQE,所述RDMA写持久化请求对应的CQE用于通知所述第二处理器所述第一数据已经写入所述第一设备;
所述第二RNIC接收所述第二处理器发送的RDMA接收请求;
所述第二RNIC接收所述第一RNIC发送的第一确认消息,所述第一确认消息包括第二PSN;
当所述第二PSN与所述第一PSN相同时,所述第二RNIC生成所述RDMA接收请求对应的CQE,所述RDMA接收请求对应的CQE用于通知所述第二处理器所述第一数据已经存储至所述第一设备的非易失性存储器中。
11.一种远程直接访存网卡RNIC,其特征在于,包括:
接收模块,用于接收第二...
【专利技术属性】
技术研发人员:孙贝磊,周超,李涛,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。