将数据写入存储设备的方法及存储设备的制造方法_4

文档序号:9349754阅读:来源:国知局
[0093]即处理器302将所述数据写入磁盘304,并在写入成功后向网卡301返回写成功消息,否则返回写失败消息。在一种具体实现方式中,处理器302可以通知文件系统将所述数据写入磁盘304。此处,文件系统将所述数据写入磁盘的方法属于现有技术,在此不作赘述。
[0094]网卡301在接收到处理器302返回的写成功消息或者写失败消息后,向NAS客户端返回上述写成功消息或者写失败消息。
[0095]在一种具体实现方式中,当有多个写成功消息或者写失败消息需要发送时,则多个写成功消息或者写失败消息组成发送队列(Send Queue,SQE),先进入该发送队列的写成功消息或者写失败消息优先发送。
[0096]需要说明的是,网卡301在接收到处理器302返回的写成功消息之后,还可以向处理器302发送第二通知消息,处理器302根据所述第二通知消息撤销内存地址。举例来说,处理器302预分配的内存地址包括:20K-100K,则处理器302回收起始地址20Κ至终止地址100Κ的内存地址,以便写入新的RPC消息的待写入存储设备的数据。
[0097]本申请实施例存储设备的各功能模块的功能,可以通过上述方法实施例的各步骤来实现,因此,本申请提供的设备的具体工作过程,在此不复赘述。
[0098]本发明实施提供的存储设备,网卡301接收远程过程调用RPC消息,所述RPC消息包括属性信息和待写入所述存储设备的数据;根据所述属性信息对所述RPC消息进行解析,获得所述数据;处理器302为所述数据预分配内存地址,并向所述网卡发送地址分配消息,所述地址分配消息包括预分配的所述内存地址;网卡301接收所述地址分配消息,根据所述地址分配消息中的预分配的所述内存地址,将所述数据写入内存303中。由此,可以避免存储设备中数据部分的重复拷贝,从而可以达到节约存储设备的处理器资源的目的。
[0099]专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0100]结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
[0101]以上所述的【具体实施方式】,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的【具体实施方式】而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【主权项】
1.一种将数据写入存储设备的方法,其特征在于,所述存储设备包括网卡、内存和处理器;所述方法由网卡执行包括以下步骤: 接收远程过程调用RPC消息,所述RPC消息包括属性信息和待写入所述存储设备的数据; 根据所述属性信息对所述RPC消息进行解析,获得所述数据; 接收所述处理器发送的地址分配消息,所述地址分配消息包括所述处理器为所述数据预分配的内存地址; 根据所述内存地址将所述数据写入所述内存中。2.根据权利要求1所述的方法,其特征在于,所述内存包括至少一个存储单元,所述存储单元的大小是根据所述存储设备的网络传输时延、网络带宽以及响应时间确定的,所述内存地址是指所述存储单元的地址。3.根据权利要求1或2所述的方法,其特征在于,所述内存地址是由所述处理器通过调用所述存储设备的应用程序接口 API函数为所述数据预分配的。4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括: 判断所述RPC消息是否全部接收完成; 当所述RPC消息全部接收完成时,向所述处理器发送第一通知消息,所述第一通知消息用于指示所述处理器根据所述内存地址从所述内存中读取所述数据,并对所述数据进行处理。5.根据权利要求4所述的方法,其特征在于,所述存储设备还包括:磁盘,所述方法还包括: 在接收到所述处理器在将所述数据写入所述磁盘后返回的写成功消息时,向所述处理器发送第二通知消息,所述第二通知消息用于指示所述处理器撤销所述内存地址。6.一种存储设备,其特征在于,所述存储设备包括:网卡、内存和处理器; 所述网卡,用于接收远程过程调用RPC消息,所述RPC消息包括属性信息和待写入所述存储设备的数据; 所述网卡,还用于根据所述属性信息对所述RPC消息进行解析,获得所述数据; 所述处理器,用于为所述数据预分配内存地址,并向所述网卡发送地址分配消息,所述地址分配消息包括预分配的所述内存地址; 所述网卡,还用于接收所述地址分配消息,根据所述地址分配消息中的预分配的所述内存地址,将所述数据写入所述内存中; 所述内存,用于存储所述数据。7.根据权利要求6所述的存储设备,其特征在于,所述内存包括至少一个存储单元,所述存储单元的大小是根据所述存储设备的网络传输时延、网络带宽以及响应时间确定的,所述内存地址是指所述存储单元的地址。8.根据权利要求6或7所述的存储设备,其特征在于,所述内存地址是由所述处理器通过调用所述存储设备的应用程序接口 API函数为所述数据预分配的。9.根据权利要求6-8任一项所述的存储设备,其特征在于, 所述网卡,还用于判断所述RPC消息是否全部接收完成,当所述RPC消息全部接收完成时,向所述处理器发送第一通知消息; 所述处理器,还用于接收所述第一通知消息,根据所述内存地址从所述内存中读取所述数据,并对所述数据进行处理。10.根据权利要求9所述的存储设备,其特征在于,所述存储设备还包括:磁盘; 所述处理器,还用于将所述数据写入所述磁盘,并向所述网卡返回写成功消息; 所述磁盘,用于存储所述数据; 所述网卡,还用于接收所述写成功消息,向所述处理器发送第二通知消息; 所述处理器,还用于接收所述第二通知消息,根据所述第二通知消息撤销所述内存地址。
【专利摘要】本发明实施例涉及一种将数据写入存储设备的方法及存储设备,该存储设备包括网卡、内存和处理器;所述方法由网卡执行包括:接收远程过程调用RPC消息,RPC消息包括属性信息和待写入存储设备的数据;根据属性信息对RPC消息进行解析,获得数据;接收处理器发送的地址分配消息,地址分配消息包括处理器为数据预分配的内存地址;根据内存地址将数据写入内存中。由此,可以避免存储设备中数据部分的重复拷贝,从而可以达到节约存储设备的处理器资源的目的。
【IPC分类】G06F9/44
【公开号】CN105068817
【申请号】CN201510530129
【发明人】罗先强, 邱军, 严华兵
【申请人】华为技术有限公司
【公开日】2015年11月18日
【申请日】2015年8月26日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1