CN102571925B - 一种在光纤通道环境中利用rdma存取数据的方法 - Google Patents
一种在光纤通道环境中利用rdma存取数据的方法 Download PDFInfo
- Publication number
- CN102571925B CN102571925B CN201110424876.5A CN201110424876A CN102571925B CN 102571925 B CN102571925 B CN 102571925B CN 201110424876 A CN201110424876 A CN 201110424876A CN 102571925 B CN102571925 B CN 102571925B
- Authority
- CN
- China
- Prior art keywords
- read
- write
- data
- internal memory
- fcp
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Communication Control (AREA)
Abstract
本发明公开了一种在光纤通道中利用RDMA存取数据的方法,具体包括如下步骤:(1)对发起端与目标端进行内存注册,即将发起端和目标端中的用户空间的数据缓冲区分别锁定在各自的内核空间内存中;(2)发起端发起读写请求;(3)目标端接收读写请求并处理:目标端接收发送的FCP_CMND协议帧;将接收的FCP_CMND协议帧解析,获得读写信息,包括读写块设备、读写首地址以及读写长度;然后,根据所述读写信息进行读写操作;最后,数据读写操作结束后,目标端返回给发起端结果状态帧;(4)发起端接收状态帧,完成数据存取。本发明将RDMA技术应用于光纤通道环境中,可以有效地降低数据存取时对系统内存带宽和处理器的开销,对数据存储性能有很大程度的提升。
Description
技术领域
本发明属于计算机信息存储技术领域,具体涉及一种在光纤通道环境中的存取数据的方法。
背景技术
在传统的基于处理器到处理器的互联中,主机端对于数据的复制操作是低效的,所有的数据都需要在用户缓冲区与内核缓冲区间传输,这样的数据复制操作需要极大的内存带宽。当数据到达网络接口时,需要通过DMA(直接内存访问,Direct Memory Access)等方式从网络设备接口缓冲区拷贝到内核缓冲区,然后由主机处理器将数据从内核缓冲区移动到用户缓冲区,在这过程中,需要进行大量的读写操作,反向亦然。这种方法降低了CPU的效率,也消耗了大量的内存带宽。而RDMA技术为以上存在的问题提出了新的解决方案。
RDMA(Remote Direct Memory Access)全名是远程直接数据存取,RDMA让计算机可以直接读写其它计算机的内存,而不需要经过处理器参与耗时的传输,避免了数据在内核内存与用户内存之间的多次拷贝,从而有效地腾出了系统总线和CPU周期,改善了应用系统的性能。
目前随着高性能计算与应用服务的发展,更多的高性能存储区域网络开始利用高速网络与专有协议来构建。这主要包括基于以太网与iSCSI协议的IP-SAN、基于Infiniband(IB)的IB-SAN,以及基于光纤通道和FCP协议的FC-SAN。IP-SAN可以利用目前广泛使用的以太网,成本较低,但是其网络处理协议需要占用较多的主机CPU时间,针对此问题,RDMA通过在网卡上将可靠传输协议固化于硬件,以及支持零拷贝技术和内核内存旁路技术这两种途径来达到提高性能的目的。IB网络利用RDMA机制和HCA的专用协议卸载引擎可以有效降低主机处理网络协议的开销,在IB-SAN中广泛使用的基于RDMA的协议有SRP(SCSIRDMA PROTOCAL)和iSER(Iscsi extensions for RDMA)。FC-SAN物理上需要基于光纤通道网络,光纤通道技术所具有的高速、高可靠性以及稳定安全性传输特点,使其在SAN中得到了广泛应用,目前FC中支持RDMA的协议主要是FC-AE-RDMA(Fibre Channel SCSI-3RemoteDirect Memory Access),FC-AE-RDMA协议是光纤通道为了应用于航空电子环境提供了一套FC-AE(Fibre Channel Avionics Environment)的协议子集,在FC-AE-RDMA协议中制定了在实现实时光纤通道网络时所遵循的规定,它是基于SCSI-3的轻量级、低延迟、低开销通信协议,用于航电系统中各部件之间的通信,该协议的关键是通信双方的发起端(Initiator)在对远程目标端(Target)进行读写数据时可以直接访问其RDMA内存,而不必经过处理器耗时的传输以及避免内核内存和应用内存之间数据的拷贝所造成的开销,这对存储性能的提升具有很重要的意义。此前,国外对FC的研究及应用大多集中在存储区域网(SAN)方面,如FCP协议,而对FC-AE-RDMA的研究非常少。相对于FCP协议,FC-AE-RDMA协议针对其作了某些限制,不仅支持对远端结点的内存空间的直接访问,同时还调整了FCP写事务的处理流程,以更好的支持低延迟实时服务。
发明内容
本发明提出一种在光纤通道环境中利用RDMA技术存取数据的方法,解决FC-SAN存储环境下存取数据时,数据在核态缓冲区与用户缓冲区之间相互拷贝而导致存储性能低下的问题。
在Linux系统下,由于权限保护的因素,用户态应用程序不能直接访问系统内核。用户态应用程序可以通过系统调用方式访问系统内核,内核态下的设备驱动模块可以看成系统内核和硬件设备之间的接口,整个系统内核和其上层的应用程序要想使用硬件的话都要通过驱动程序访问硬件。设备驱动程序对应用程序屏蔽了底层硬件在实现上的细节,使得应用程序可以像操作普通文件一样操作外部设备。应用程序可以使用标准的系统调用接口来完成打开、读写、I/O控制、关闭等操作,而设备驱动程序就是要实现这些系统调用的函数。
本发明中整个方法的步骤包括内存注册、零拷贝设置、发起端发送读写请求、目标端接收请求并处理、发起端接收状态帧、发起端读取所请求数据,具体如下:
(1)内存注册
发起端与目标端在进行数据传输之前,两端分别要进行内存注册,将要使用的用户空间的数据缓冲区锁定在内核空间内存中,防止数据在RDMA操作过程中被系统内核交换出去。
内存注册的步骤为:
(1.1)在内核空间中通过get_free_Pages函数调用申请到一片内核内存。
(1.2)通过virt_to_page函数调用逐次获得申请的这片内核内存的struct page结构,并通过SetPageReserved函数调用设置page结构的flag标志为PG_reserved。
(2)零拷贝设置
本发明中采用Linux中的内存映射机制mmap方法,在不需要内存复制的情况下,应用程序可以直接使用mmap系统调用返回的虚拟地址来读写数据。内核空间则需要实现file_operations的.mmap函数,将(1)中注册过的内核物理内存映射到用户空间,使内核空间和用户空间访问的是同一片数据缓冲区,这样数据在内核空间和用户空间就无须跨层拷贝,提高了数据传输效率。
本发明中,通过在光纤适配器驱动模块中实现file_operations的.mmap函数。
用户空间应用程序和光纤适配器驱动模块的设置分别为:
(2.1)用户空间应用程序零拷贝的设置
用户空间应用程序只需要调用mmap即可,其系统调用原型为:mmap(caddr_t addr,size_t len,int prot,int flags,int fd,off_t offset)
(2.2)光纤适配器驱动模块中零拷贝的设置
光纤适配器驱动模块中需要实现file_operations中的.mmap函数,本实施例中的.mmap的实现例程为ml505_mmap,该例程中的最重要的实现映射的机制是remap_pfn_range函数调用,它将(1)中注册过的内存做了对应的映射,从而使得用户空间的应用程序和内核空间所注册过的内存共享同一片物理内存,进而实现了零拷贝设置。
(3)发起端发起读写请求
(3.1)用户空间应用程序通过read/write系统调用向系统内核发送读写请求;
(3.2)通过虚拟字符设备接口,读写请求传递到内核空间的光纤适配器驱动模块,该光纤适配器驱动模块根据read/write系统调用的读写首地址和读写长度,依照FC-AE-RDMA协议的规程将其封装为FCP_CMND协议帧;
(3.3)在光纤适配器驱动模块中设置相关硬件寄存器,触发光纤适配器的DMA功能,将FCP_CMND协议帧从核态内存发送到光纤适配器硬件缓存中。
(3.4)在光纤适配器驱动模块中设置相关硬件寄存器,触发光纤适配器的发送功能,将FCP_CMND协议帧从光纤适配器硬件缓存发送到光纤通道链路上,并传送到到目标端。
(4)目标端接收请求并处理
(4.1)目标端的光纤适配器驱动模块中,设置相关硬件寄存器,触发光纤适配器的接收功能,将光纤通道链路上的FCP_CMND协议帧接收到光纤适配器硬件缓存中。
(4.2)目标端的光纤适配器驱动模块中,设置相关硬件寄存器,触发光纤适配器的DMA功能,将光纤适配器硬件缓存中的FCP_CMND协议帧存放到内核内存中。。
(4.3))目标端的光纤适配器驱动模块解析收到的FCP_CMND协议帧并处理。
如果是读请求,则目标端根据要读取的块设备、读取首地址、读取长度,发起读盘操作,将结果数据从块设备读到目标端注册过的内存区域,并将结果数据封装为FCP_DATA协议帧,然后将封装好的FCP_DATA协议帧写到发起端,发起端接收到FCP-DATA协议帧,解析该帧,即去掉帧头帧尾,得到有效数据部分,然后将有效数据存放到发起端中所注册过的内存区域中。;
如果是写请求,发起端将待写数据封装为FCP_DATA协议帧,然后由光纤适配器驱动模块将FCP_DATA协议帧发送给目标端,目标端的光纤适配器模块接收此FCP_DATA协议帧,解析后将有效数据直接发送到目标端注册过的内存域中,目标端此后等待合适的时机,将目标端注册过的内存域中的数据回写到目标端的磁盘上。
(4.4)数据读写操作结束后,根据FC-AE-RDMA协议的规程,目标端要返回给发起端FCP_RSP状态帧。
(5)发起端接收状态帧
发起端接收到FCP_RSP状态帧,然后对其解析,将该FCP_RSP状态帧的结果字段(result)提取出来,并通过异步信号中断的方式告诉用户态应用程序,用户空间应用程序通过结果字段(result)判断读写过程是否正确,若正确,则进一步从发起端注册过的内存域中读取所请求的数据。
如果是读请求,本发明还包括发起端读取所请求数据的步骤:对于步骤(5)中描述的从注册过的内存中读取所请求的数据,用户空间应用程序的做法很简单,只需要从mmap系统调用返回的地址处,开始读写即可,读写长度为发起端该读写请求设定的长度。
本发明的在光纤通道环境中利用RDMA存取数据的方法,不同于传统的数据存取方式。RDMA技术可以将用户空间应用程序要传输的数据直接发送到物理光纤适配器上,而不需要像传统方式那样使得数据在用户内存和核态内存之间的相互拷贝。将RDMA技术应用于光纤通道环境中,尤其是在FC-SAN存储网络中,可以有效地降低数据存取时对系统内存带宽和处理器的开销,对数据存储性能有很大程度的提升。
附图说明
图1为本发明的流程示意图
图2为内存注册的示意图。
图3为零拷贝设置的示意图。
图4为发起端发送读写请求的示意图。
图5为目标端接收请求并处理的示意图。
具体实施方式
下面结合附图对本发明进一步详细说明。
本发明的一种在光纤通道环境中利用RDMA存取数据的方法,其步骤包括内存注册、零拷贝设置、发起端发送读写请求、目标端接收请求并处理、发起端接收状态帧、发起端读取所请求数据,如图1所示,下面具体介绍各步骤的实施方式:
(1)内存注册步骤,如图2所示:
发起端与目标端在进行数据传输之前,两端分别要进行内存注册,将要使用的用户空间的数据缓冲区锁定在内核空间内存中,防止数据在RDMA操作过程中被系统内核交换出去。内存注册的步骤为:
(1.1)申请核态内存
用户空间应用程序在调用open系统调用时,通过虚拟字符设备接口,会对应到内核空间的光纤适配器驱动模块的ml505_open函数,在该函数中通过get_free_pages函数调用申请一片内核内存,所申请的内存大小根据用户应用程序的需求而定。
(1.2)设置保留标志
通过virt_to_page函数调用逐次获得(1.1)中所申请的这片内核内存的struct page结构,并通过SetPageReserved函数调用设置page结构的flag标志为PG_reserved。
(2)零拷贝设置步骤,如图3所示:
在一般情况下,Linux用户空间是不能直接访问内核空间的,用户空间应用程序的数据要想通过底层硬件设备发送到网络上,必须经过跨层的拷贝首先拷贝给内核空间的驱动程序,然后才能发送到硬件设备上。当要传输的数据量很大时,用户空间应用程序和内核空间驱动程序的相互拷贝耗费大量CPU时间和内存带宽,严重影响系统的性能。
为了克服这一弊端,本发明中采用Linux中的内存映射机制mmap方法,在不需要内存复制的情况下,应用程序可以直接使用mmap系统调用返回的地址来读写数据,同时在内核空间的光纤适配器驱动模块中通过虚拟字符设备接口对应的实现file_operations的.mmap函数,即能将内核空间申请的物理内存映射到用户空间,这样内核空间和用户空间访问的是同一片数据缓冲区,数据在内核空间和用户空间就无须跨层的拷贝,提高了数据传输效率。
用户空间应用程序和光纤适配器驱动模块的设置分别为:
(2.1)用户空间应用程序零拷贝的设置
用户空间应用程序只需要调用mmap即可,其系统调用原型为:mmap(caddr_t addr,size_t len,int prot,int flags,int fd,off_t offset)
(2.2)光纤适配器驱动模块中零拷贝的设置
对应的光纤适配器驱动模块中需要实现file_operations中的.mmap函数,本实施例中的.mmap的实现例程为ml505_mmap,该例程中的最重要的实现映射的机制是remap_pfn_range函数调用,它将(1)中注册过的内存建立了新的页表,从而将内核空间所注册过的内存映射到了用户空间应用程序,使得用户空间应用程序和内核空间所注册过的内存共享同一片物理内存,进而实现了零拷贝设置。
mmap系统调用的实现过程为:
(2.1.1)先通过文件系统定位要映射的文件;
(2.1.2)权限检查,映射的权限不会超过文件打开的方式,也就是说如果文件是以只读方式打开的话,那么则不允许建立一个可写映射;
(2.1.3)从进程虚拟地址空间中获得一个未使用的VMA对象,并对之进行初始化;
(2.1.4)调用映射文件的mmap函数,其主要工作是给vm_ops向量表赋值;
(2.1.5)把该vma链入该进程的vma链中,如果可以和前后的vma合并则合并;
(3)发起端发起读写请求,如图4所示:
(3.1)用户空间应用程序通过read/write系统调用发送读写请求;
(3.2)通过虚拟字符设备接口,读写请求传递到内核态的光纤适配器驱动模块,光纤适配器驱动模块根据read/write系统调用的读写首地址和读写长度,依照FC-AE-RDMA协议的规程将其封装为FCP_CMND协议帧;
(3.3)在光纤适配器驱动模块中设置相关硬件寄存器,触发光纤适配器的DMA功能,将FCP_CMND协议帧从核态内存发送到光纤适配器硬件缓存中。
(3.4)在光纤适配器驱动模块中设置相关硬件寄存器,触发光纤适配器的发送功能,将FCP_CMND协议帧从光纤适配器硬件缓存发送到光纤通道链路上,并发送到目标端。
(4)目标端接收请求并处理,如图5所示:
(4.1)目标端的光纤适配器驱动模块中,,设置相关硬件寄存器,触发光纤适配器的接收帧功能,将光纤通道链路上的FCP_CMND协议帧接收到光纤适配器硬件缓存中。
(4.2)目标端的光纤适配器驱动模块中,设置相关硬件寄存器,触发光纤适配器的DMA功能,将光纤适配器硬件缓存中的FCP_CMND协议帧存放到内核内存中。
(4.3)目标端的光纤适配器驱动模块解析收到的FCP_CMND协议帧并处理。
如果是读请求,则目标端根据要读取的块设备、读取首地址、读取长度,发起读盘操作,将结果数据从块设备读到目标端注册过的内存区域,并将结果数据封装为FCP_DATA协议帧,然后将封装好的FCP_DATA协议帧写到发起端,发起端接收到FCP-DATA协议帧,解析该帧,即去掉帧头帧尾,得到有效数据部分,然后将有效数据存放到发起端中所注册过的内存区域中。
如果是写请求,发起端将待写数据封装为FCP_DATA协议帧,然后由光纤适配器驱动模块将FCP_DATA协议帧发送给目标端,目标端的光纤适配器模块接收此FCP_DATA协议帧,解析后将有效数据直接发送到目标端注册过的内存域中,目标端此后等待合适的时机,将目标端注册过的内存域中的数据回写到本端的磁盘上。
(4.4)数据读写操作结束后,根据FC-AE-RDMA协议的规程,目标端发送FCP_RSP状态帧到发起端。
(5)发起端接收状态帧
发起端接收到FCP_RSP状态帧,然后对其解析,将该FCP_RSP状态帧的结果字段(result)提取出来,并通过异步信号中断的方式告诉用户空间应用程序,用户空间应用程序通过结果字段(result)判断读写过程是否正确,若正确,则进一步从发起端注册过的内存域中读取所请求的数据。
(6)发起端读取所请求数据
对于步骤(5)中描述的从发起端注册过的内存中读取所请求的数据,用户态应用程序的做法很简单,只需要从mmap系统调用返回的地址处,开始读写即可,读写长度为发起端该读写请求设定的长度。
Claims (3)
1.一种在光纤通道中利用RDMA存取数据的方法,具体包括如下步骤:
(1)对发起端与目标端进行内存注册,即将发起端和目标端中的用户空间的数据缓冲区分别锁定在各自的内核空间内存中,以防止数据在RDMA操作过程中被系统内核交换出去:
(1.1)在内核空间中申请一片内核内存;
(1.2)逐次获得申请的该片内核内存的struct page结构,并设置该结构的flag标志为PG_reserved,即完成内存注册;
其中,发起端中所注册过的内存区域需进行零拷贝设置,即将所注册过的内核空间内存区域映射到用户空间应用程序内存中,使内核空间和用户空间应用程序共享一片物理内存,具体为:
所述用户空间应用程序通过mmap系统调用,获取所注册过的内核内存的虚拟地址,从而建立内核空间内存区域到用户空间应用程序内存的映射关系;
(2)发起端发起读写请求,具体过程为:
(2.1)发起端的用户空间应用程序发送读写请求;
(2.2)将读写请求按照FC-AE-RDMA协议封装为FCP_CMND协议帧;
(2.3)将FCP_CMND协议帧通过光纤通道发送到目标端;
(3)目标端接收读写请求并处理,具体为:
首先,目标端接收发送的FCP_CMND协议帧;其次,按照 FC-AE-RDMA协议将接收的FCP_CMND协议帧解析,获得读写信息,包括读写块设备、读写首地址以及读写长度;然后,根据所述读写信息进行读写操作;最后,数据读写操作结束后,目标端返回给发起端结果状态帧;
其中,根据所述读写信息进行读写操作的具体过程为:
如果是读请求,则目标端根据要读取的块设备、读取首地址和读取长度,发起读盘操作,将待读取数据从目标端的块设备读到目标端注册过的内存区域,然后将其封装为FCP-DATA数据帧通过光纤通道发送到发起端;
如果是写请求,发起端将待写数据直接发送到目标端注册过的内存区域中,目标端将目标端注册过的内存区域中的数据回写到本端的磁盘上;
(4)发起端接收状态帧,完成数据存取。
2.根据权利要求1所述的方法,其特征在于,所述步骤(3)中,如果是读请求,发起端还需接收目标端发送过来的FCP-DATA数据帧,其具体过程为:首先,发起端解析FCP-DATA数据帧,即去掉帧头帧尾,得到有效数据部分,然后,将所述有效数据存放到发起端中所注册过的内存区域中。
3.根据权利要求1或2所述的方法,其特征在于,所述步骤(4)中发起端接收状态帧的具体过程为:首先,解析状态帧,提取状态帧中的结果字段,然后并通过异步信号中断的方式通知用户空间应用程序;用户空间应用程序可根据该结果字段判断读写过程的正确性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110424876.5A CN102571925B (zh) | 2011-12-19 | 2011-12-19 | 一种在光纤通道环境中利用rdma存取数据的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110424876.5A CN102571925B (zh) | 2011-12-19 | 2011-12-19 | 一种在光纤通道环境中利用rdma存取数据的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102571925A CN102571925A (zh) | 2012-07-11 |
CN102571925B true CN102571925B (zh) | 2014-08-27 |
Family
ID=46416389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110424876.5A Active CN102571925B (zh) | 2011-12-19 | 2011-12-19 | 一种在光纤通道环境中利用rdma存取数据的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102571925B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102843183A (zh) * | 2012-08-27 | 2012-12-26 | 成都成电光信科技有限责任公司 | 一种光纤通道网络数据监控装置 |
CN103002046B (zh) * | 2012-12-18 | 2015-07-08 | 无锡众志和达数据计算股份有限公司 | 多系统数据拷贝的rdma装置 |
CN103929415B (zh) * | 2014-03-21 | 2018-03-06 | 华为技术有限公司 | Rdma下数据读写的方法、装置和网络系统 |
CN104580479A (zh) * | 2015-01-15 | 2015-04-29 | 浪潮集团有限公司 | 一种san存储系统主机链路带宽认证方法 |
CN106020731B (zh) * | 2016-05-23 | 2019-07-02 | 中国科学技术大学 | 存储设备、存储设备阵列和网络适配器 |
CN105933325B (zh) * | 2016-06-07 | 2019-04-12 | 华中科技大学 | 一种基于NFSoRDMA的内核态RPC通信加速方法 |
CN107147590A (zh) * | 2017-07-12 | 2017-09-08 | 郑州云海信息技术有限公司 | 一种基于rdma协议消息通信的方法及系统 |
CN107579892A (zh) * | 2017-08-29 | 2018-01-12 | 郑州云海信息技术有限公司 | 一种基于RapidIO协议和RDMA技术的通信方法 |
CN107729142B (zh) * | 2017-09-29 | 2021-06-29 | 郑州云海信息技术有限公司 | 一种自精简元数据的线程调用方法 |
CN113422669B (zh) * | 2020-07-09 | 2023-09-08 | 阿里巴巴集团控股有限公司 | 数据传输方法、装置和系统、电子设备以及存储介质 |
CN111953774A (zh) * | 2020-08-11 | 2020-11-17 | 上海百功半导体有限公司 | 暂存器的存取方法、网络装置及网络系统 |
CN112035071B (zh) * | 2020-09-27 | 2023-06-06 | 万兴科技(湖南)有限公司 | 磁盘数据读取方法、装置、计算机设备及存储介质 |
CN112463662B (zh) * | 2020-12-16 | 2024-04-05 | 福州创实讯联信息技术有限公司 | 一种用户态控制i2c设备的方法与终端 |
CN115248701B (zh) * | 2022-09-21 | 2022-12-20 | 进迭时空(杭州)科技有限公司 | 一种处理器寄存器堆之间的零拷贝数据传输装置及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1656479A (zh) * | 2002-04-19 | 2005-08-17 | 计算机联合思想公司 | 分配数据的方法和系统 |
CN101788888A (zh) * | 2010-02-09 | 2010-07-28 | 中兴通讯股份有限公司 | 一种实现目标端驱动的方法及该目标端驱动 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102009030047A1 (de) * | 2009-06-22 | 2010-12-23 | Deutsche Thomson Ohg | Verfahren und System zur Übertragung von Daten zwischen Datenspeichern durch entfernten direkten Speicherzugriff sowie Netzwerkstation die eingerichtet ist um in dem Verfahren als Sendestation bzw. als Empfangstation zu operieren |
-
2011
- 2011-12-19 CN CN201110424876.5A patent/CN102571925B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1656479A (zh) * | 2002-04-19 | 2005-08-17 | 计算机联合思想公司 | 分配数据的方法和系统 |
CN101788888A (zh) * | 2010-02-09 | 2010-07-28 | 中兴通讯股份有限公司 | 一种实现目标端驱动的方法及该目标端驱动 |
Non-Patent Citations (3)
Title |
---|
《当前网络存储中零拷贝技术浅析》;杨小虎 等;《计算机工程与设计》;20060228;第27卷(第4期);正文第3、3.4节及附图3 * |
杨小虎 等.《当前网络存储中零拷贝技术浅析》.《计算机工程与设计》.2006,第27卷(第4期), |
童薇 等.《光纤通道的高速低延迟RDMA协议研究》.《华中科技大学学报(自然科学版)》.2011,第39卷(第6期), * |
Also Published As
Publication number | Publication date |
---|---|
CN102571925A (zh) | 2012-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102571925B (zh) | 一种在光纤通道环境中利用rdma存取数据的方法 | |
US9672143B2 (en) | Remote memory ring buffers in a cluster of data processing nodes | |
US8990801B2 (en) | Server switch integration in a virtualized system | |
US8949486B1 (en) | Direct memory access to storage devices | |
US8850125B2 (en) | System and method to provide non-coherent access to a coherent memory system | |
CN103902486B (zh) | 一种远端直接内存访问实现方法、装置及系统 | |
US8032686B2 (en) | Protocol translation in a data storage system | |
US9330002B2 (en) | Multi-core interconnect in a network processor | |
US11750418B2 (en) | Cross network bridging | |
CN117171073A (zh) | 处理远程直接内存访问请求的方法和计算机设备 | |
Hou et al. | Cost effective data center servers | |
US8595401B2 (en) | Input output bridging | |
Tu et al. | Marlin: A memory-based rack area network | |
JP2012514386A (ja) | メッセージ通信方法 | |
CN108090003A (zh) | 一种基于零拷贝的提升web服务器性能的方法、系统 | |
WO2015027806A1 (zh) | 一种内存数据的读写处理方法和装置 | |
WO2024082944A1 (zh) | 一种多处理器数据交互方法、装置、设备及存储介质 | |
CN114996185A (zh) | 跨地址空间桥接 | |
CN117178263A (zh) | SmartNIC中的网络附接的MPI处理架构 | |
Nguyen et al. | Reducing data copies between gpus and nics | |
CN102868684A (zh) | 一种光纤通道目标器及光纤通道目标器实现方法 | |
US20020049875A1 (en) | Data communications interfaces | |
US10977201B1 (en) | Per IO direct memory access redirection | |
US20020049878A1 (en) | Data communications interfaces | |
US20190324926A1 (en) | System and method for port-to-port communications using direct memory access |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |