【技术实现步骤摘要】
【国外来华专利技术】通过RDMA进行分布式存储节点中的输入/输出处理相关申请案交叉申请本申请要求2019年1月30日递交的专利技术名称为“通过RDMA进行分布式存储节点中的输入/输出处理(Input/outputProcessinginaDistributedStorageNodewithRDMA)”的美国临时申请62/798890的在先申请优先权,所述在先申请的全部内容以引入的方式并入本文本中。
本公开涉及存储节点计算。一些方面涉及分布式存储节点中的输入/输出(input/output,I/O)处理。更具体地,一些方面涉及通过远程直接内存访问(remotedirectmemoryaccess,RDMA)进行分布式存储节点中的前端I/O处理。
技术介绍
在分布式数据存储网络架构中,当在客户端设备与其它存储节点之间传输数据时,分布式存储节点可以用作中介。然而,在客户端设备与目的地存储节点之间的数据传输中,经常需要多个数据副本,并且在分布式存储节点等每个中介设备处执行多个数据副本。另外,客户端设备与目的地存储节点之间的数据传输可能还 ...
【技术保护点】
1.一种用于由分布式存储节点进行远程直接内存访问(remote direct memoryaccess,RDMA)的计算机实现的方法,其特征在于,所述方法包括:/n接收对与数据相关联的输入/输出(input/output,I/O)进程的请求;/n响应于所述请求,使用所述分布式存储节点的操作系统驱动程序分配在所述操作系统与在所述分布式存储节点上运行的用户进程之间共享的内存段,其中:/n所述用户进程包括用于处理所述请求的I/O堆栈;/n所述共享内存段包括存储与所述I/O堆栈相关联的上下文信息的上下文内存部分、存储用于所述I/O进程的报头信息的报头内存部分,以及用于存储所述数据的 ...
【技术特征摘要】
【国外来华专利技术】20190130 US 62/798,8901.一种用于由分布式存储节点进行远程直接内存访问(remotedirectmemoryaccess,RDMA)的计算机实现的方法,其特征在于,所述方法包括:
接收对与数据相关联的输入/输出(input/output,I/O)进程的请求;
响应于所述请求,使用所述分布式存储节点的操作系统驱动程序分配在所述操作系统与在所述分布式存储节点上运行的用户进程之间共享的内存段,其中:
所述用户进程包括用于处理所述请求的I/O堆栈;
所述共享内存段包括存储与所述I/O堆栈相关联的上下文信息的上下文内存部分、存储用于所述I/O进程的报头信息的报头内存部分,以及用于存储所述数据的数据内存部分;并且
在目标存储节点注册所述共享内存段用于RDMA访问;
在所述分布式存储节点的所述共享内存段与所述目标存储节点之间执行RDMA传输以完成所述I/O进程;以及
接收到所述RDMA传输完成的状态指示符后,对所述共享内存段解除分配。
2.根据权利要求1所述的计算机实现的方法,其特征在于,所述上下文信息与以下各项中的一个或多个相关联:数据缓存操作、数据复制操作,以及由所述I/O堆栈执行以完成所述I/O进程的RDMA传输操作。
3.根据权利要求2所述的计算机实现的方法,其特征在于,所述上下文信息包括所述操作系统驱动程序的上下文信息,所述上下文信息包括:
回调上下文信息,其指示所述用户进程或在完成所述I/O进程时将由所述分布式存储节点执行的功能;以及
I/O结构,其进行与所述I/O进程相关联的活动块I/O操作。
4.根据权利要求2所述的计算机实现的方法,其特征在于,所述上下文信息包括由所述I/O堆栈使用的缓冲区的散集(scatter/gather,s/g)列表。
5.根据权利要求1所述的计算机实现的方法,其特征在于,所述报头信息包括以下各项中的一个或多个:
与所述I/O进程相关联的数据处理操作的类型;
逻辑单元号(logicalunitnumber,LUN),其标识所述目标存储节点内的对象以用于存储或检索所述数据;
标识所述RDMA传输的内存偏移量的逻辑块地址(logicalblockaddress,LBA);
与所述数据的大小相关联的长度信息;以及
标识执行所述RDMA传输的时间点或时间范围的快照ID。
6.根据权利要求5所述的计算机实现的方法,其特征在于,所述I/O进程包括从主机设备接收的读操作,并且所述方法还包括:
使用所述I/O堆栈内的RDMA模块向所述目标存储节点传送所述报头信息,所述报头信息标识与由所述读操作请求的所述数据相关联的所述LUN和所述LBA。
7.根据权利要求8所述的计算机实现的方法,其特征在于,还包括:
从所述目标存储节点接收由所述读操作请求的所述数据和所述状态指示符,所述状态指示符指示所述读操作成功完成;以及
将所请求的数据和所述状态指示符转发到所述主机设备。
8.根据权利要求1所述的计算机实现的方法,其特征在于,所述I/O进程包括写操作,并且所述方法还包括:
通过所述操作系统驱动程序执行直接内存访问(directmemoryaccess,DMA)操作,以将所述数据存储在所述共享内存段的所述数据内存部分中。
9.根据权利要求8所述的计算机实现的方法,其特征在于,还包括:
使用所述I/O堆栈内的RDMA模块执行从所述共享内存段到所述目标存储节点内的RDMA内存的所述报头信息和所述数据的所述RDMA传输;以及
从所述目标存储节点接收所述状态指示符,其中所述状态指示符指示所述写操作成功完成。
10.根据权利要求1所述的计算机实现的方法,其特征在于,所述操作系统驱动程序包括光纤通道(FiberChannel,FC)驱动程序或因特网小型计算机系统接口(InternetSmallComputerSystemsInterface,iSCSI)RDMA扩展(iSCSIExtensionforRDMA,ISER)驱动程序中的一个或两个。
11.一种分布式存储节点,其特征在于,包括:
存储指令的存储器;以及
与所述存储器通信的一个或多个处理器,其中所述一个或多个处理器执行所述指令以进行以下操作:
接收对与数据相关联的输入/输出(input/output,I/O)进程的请求;
响应于所述请求,使用所述分布式存储节点的操作系统驱动程序分配在所述操作系统与在所述分布式存储节点上运行的用户进程之间共享的内存段,其中:
所述用户进程包括用于处理所述请求的I/O堆栈;
所述共享内存段包括存储与所述I/O堆栈相关联的上下文信息的上下文内存部分、存储用于所述I/O进程的报头信息的报头内存部分,以及用于存储所述数据的数据内存部分;并且
在目标存储节点注册所述共享内存段用于RDMA访问;
在所述分布式存储节点...
【专利技术属性】
技术研发人员:彼得·普荷伏,罗伯特·福利,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。