【技术实现步骤摘要】
【国外来华专利技术】用于缓存文件系统内部结构的网络接口卡
技术介绍
[0001]在一些实施例中,本专利技术涉及通过网络进行数据传输,更具体地,但不排他性地,涉及用于在计算设备之间通过网络传输数据的网络接口卡
、
系统和方法
。
[0002]计算设备可以相互建立网络连接,以便通过网络在它们之间远程传输数据
。
这种远程数据传输会产生延迟
。
例如,远程直接内存访问
(remote direct memory access
,
RDMA)
的开发旨在减少延迟,网络文件系统
(network file system
,
NFS)
旨在通过网络提供文件系统服务
。
技术实现思路
[0003]本专利技术的目的是提供用于在主机与网络节点之间通过网络进行数据传输的网络接口卡
(network interface card
,
NIC)、
计算设备
、
系统
、
计算机程序产品和方法
。
[0004]上述和其他目的通过独立权利要求的特征实现
。
其他实现方式在从属权利要求
、
说明书和附图中显而易见
。
[0005]根据第一方面,提供一种用于通过网络进行数据传输的主机的网络接口卡
(network interface card
,
NIC)
,所述
NIC >包括:存储器,用于缓存所述主机的文件系统内部结构,用于管理存储在所述主机的非易失性数据存储设备上的数据;处理电路,用于:从网络节点接收报文;从所述报文中提取在所述主机的所述非易失性数据存储设备与所述网络节点之间通过所述网络进行数据传输的请求,所述非易失性数据存储设备由所述文件系统定义;根据存储在所述
NIC
的所述存储器中的所述文件系统内部结构,执行在所述网络节点与所述主机的所述非易失性数据存储设备之间通过所述网络进行数据传输的所述请求
。
[0006]根据第二方面,提供一种用于通过网络向主机进行数据传输的网络节点的处理器,所述处理器用于:生成报文,所述报文包括所述主机的
NIC
的处理电路根据缓存在所述
NIC
的存储器上的所述主机的文件存储系统对存储在所述主机的非易失性数据存储设备上的数据执行操作的请求;将包括所述请求的所述报文发送给所述主机的所述
NIC
,以由所述主机的所述
NIC
的所述处理电路执行
。
[0007]根据第三方面,提供一种由主机的网络接口卡
(network interface card
,
NIC)
通过网络进行数据传输的方法,所述方法包括:从网络节点接收报文;从所述报文中提取在所述主机的非易失性数据存储设备与网络节点之间通过所述网络进行数据传输的请求,所述非易失性数据存储设备由所述文件系统定义,所述文件系统用于管理存储在所述主机的非易失性数据存储设备上的数据,其中,安装在所述主机系统总线上的非易失性数据存储设备的所述文件系统内部结构缓存在所述
NIC
本地的存储器上;根据存储在所述
NIC
的所述存储器中的所述文件系统内部结构,执行在所述网络节点与所述主机的所述非易失性数据存储设备之间通过所述网络进行数据传输的所述请求
。
[0008]根据第四方面,提供一种用于通过网络从网络节点向主机进行数据传输的方法,所述方法包括:生成报文,所述报文包括所述主机的
NIC
的处理电路根据缓存在所述
NIC
的存储器上的所述主机的文件存储系统对存储在所述主机的非易失性数据存储设备上的数
据执行操作的请求;将包括所述请求的所述报文发送给所述主机的所述
NIC
,以由所述主机的所述
NIC
的所述处理电路执行
。
[0009]通过将主机的文件系统内部结构存储在
NIC
的存储器中,降低了远程网络节点与主机的非易失性数据存储设备之间数据传输的时延
。
[0010]在第一
、
第二
、
第三和第四方面的另一种实现方式中,所述
NIC
的所述处理电路执行的所述请求包括指示以下各项中的至少一项的操作命令:
(i)
通过安装在所述主机上的所述非易失性数据存储设备直接从所述文件系统上的文件中读取数据,并通过所述网络将所述读取的数据发送到所述网络节点,
(ii)
从所述网络节点接收通过所述网络发送的数据,并通过安装在所述主机上的所述非易失性数据存储设备将所述接收到的数据直接写入所述文件系统上的文件
。
[0011]将文件系统内部结构缓存在
NIC
的存储器中,可以将
NIC
用作文件系统的桥梁,这不要求远程网络节点知道指向内存地址的指针,从而能够通过网络实现低时延和
/
或高性能的数据传输
。
[0012]在第一
、
第二
、
第三和第四方面的另一种实现方式中,通过所述网络进行数据传输的所述请求指示文件粒度
。
[0013]该请求能够实现按文件粒度而不是内存粒度进行远程访问
。
[0014]在第一
、
第二
、
第三和第四方面的另一种实现方式中,所述请求包括用于对存储在所述主机的所述非易失性数据存储设备上的文件远程执行操作的指令,所述请求选自由以下各项组成的群组:文件打开
、
文件关闭
、
读取文件
、
写入文件和通过文件系统接口进行文件查找
。
[0015]网络节点可以对主机的非易失性数据存储设备直接远程地执行操作
。
[0016]在第一
、
第二
、
第三和第四方面的另一种实现方式中,所述数据的所述传输由所述处理电路执行,并且不包括由所述主机的中央处理器
(central processing unit
,
CPU)
进行的处理
。
[0017]主机
CPU
不涉及文件系统操作,这提高了主机
CPU
的效率
。
[0018]在第一
、
第二
、
第三和第四方面的另一种实现方式中,所述处理电路还用于:通过挂载所述主机的所述文件系统并缓存所述文件系统的内部结构来执行所述文件系统的启动过程,其中,所述文件系统存储在所述主机上安装的所述非易失性数据存储设备上,所述内部结构包括所述
NIC
的所述存储器上的文件分配数据结构
。
本文档来自技高网...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.
一种用于通过网络
(112)
进行数据传输的主机
(110)
的网络接口卡
(network interface card
,
NIC)(102)
,其特征在于,包括:存储器
(106)
,用于缓存所述主机的文件系统
(106A)
内部结构,用于管理存储在所述主机的非易失性数据存储设备
(108)
上的数据;处理电路
(104)
,用于:从网络节点
(114)
接收报文;从所述报文中提取在所述主机的所述非易失性数据存储设备与所述网络节点之间通过所述网络进行数据传输的请求,所述非易失性数据存储设备由所述文件系统定义;根据存储在所述
NIC
的所述存储器中的所述文件系统内部结构,执行在所述网络节点与所述主机的所述非易失性数据存储设备之间通过所述网络进行数据传输的所述请求
。2.
根据权利要求1所述的网络接口卡,其特征在于,所述
NIC
的所述处理电路执行的所述请求包括指示以下各项中的至少一项的操作命令:
(i)
通过安装在所述主机上的所述非易失性数据存储设备直接从所述文件系统上的文件中读取数据,并通过所述网络将所述读取的数据发送到所述网络节点,
(ii)
从所述网络节点接收通过所述网络发送的数据,并通过安装在所述主机上的所述非易失性数据存储设备将所述接收到的数据直接写入所述文件系统上的文件
。3.
根据上述权利要求中任一项所述的网络接口卡,其特征在于,通过所述网络进行数据传输的所述请求指示文件粒度
。4.
根据上述权利要求中任一项所述的网络接口卡,其特征在于,所述请求包括用于对存储在所述主机的所述非易失性数据存储设备上的文件远程执行操作的指令,所述请求选自由以下各项组成的群组:文件打开
、
文件关闭
、
读取文件
、
写入文件和通过文件系统接口进行文件查找
。5.
根据上述权利要求中任一项所述的网络接口卡,其特征在于,所述数据的所述传输由所述处理电路执行,并且不包括由所述主机的中央处理器
(central processing unit
,
CPU)
进行的处理
。6.
根据上述权利要求中任一项所述的网络接口卡,其特征在于,所述处理电路还用于:通过挂载所述主机的所述文件系统并缓存所述文件系统的内部结构来执行所述文件系统的启动过程,其中,所述文件系统存储在所述主机上安装的所述非易失性数据存储设备上,所述内部结构包括所述
NIC
的所述存储器上的文件分配数据结构
。7.
根据权利要求6所述的网络接口卡,其特征在于,在所述初始化过程之后,所述
NIC
的所述处理电路管理所述主机的所述文件系统,并服务所述网络上的其他节点的读写请求,其中,在所述初始化过程之后,对所述主机的所述文件系统的访问被阻止
。8.
根据上述权利要求中任一项所述的网络接口卡,其特征在于,所述处理电路用于分析缓存在所述
NIC
的所述存储器上的所述文件系统内部结构,以在所述主机的所述非易失性数据存储设备上找到用于服务所述请求的位置,所述请求包括从文件读取和
/
或写入文件中
。9.
根据权利要求8所述的网络接口卡,其特征在于,所述文件系统被分析以进行以下操作中的至少一个:分配用于在所述非易失性数据存储设备上写入从所述网络节点接收的数据的空间量,以及在所述非易失性数据存储设备上获取所述文件的物理地址,用于读取
/
写
入数据
、
服务所述请求,其中,所述文件具有偏移
。10.
根据上述权利要求中任一项所述的网络接口卡,其特征在于,通过所述网络进行所述数据传输是根据以下各项中的至少一项:远程直接内存访问
(remote direct memory access
,
RDMA)
协议和网络文件系统
(network file
‑
system
,
NFS)
协议
。11.
根据权利要求
10
所述的网络接口卡,其特征在于,所述请求指示新的发送工作请求
(send work request
,
SWR)
操作码
。12.
根据权利要求
11
所述的网络接口卡,其特征在于,所述新的
SWR
操作码选自由以下各项组成的群组:
fopen()
映射到
RDMA_SWR_REMOTE_FOPEN[opcode<7
‑
0>
=
00011000]、fclose()
映射到
RDMA_SWR_REMOTE_FCLOSE[opcode<7
‑
0>
=
00011001]、readv()
映射到
RDMA_SWR_REMOTE_READV[opcode<7
‑
0>
=
00011010]、writev()
映射到
RDMA_SWR_REMOTE_WRITEV[opcode<7
‑
0>
=
00011011]、fseek()
映射到
RDMA_SWR_REMOTE_FSEEK[opcode<7
...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。