【技术实现步骤摘要】
一种数据写入的方法、设备及网卡
[0001]本申请涉及数据存储领域,尤其涉及一种数据写入的方法、装置及网卡
技术介绍
[0002]近年来,随着NoF(NVMe over Fabric)等协议的快速发展,存储设备可以通过网络与主 机(host)通信,为多个客户端提供数据存储的服务。当前,存储设备的网卡在接收到主机 发送的写请求以后,将该写请求转发给存储设备的处理器进行处理,然后网卡根据处理器指 示的缓存位置,将数据写入缓存中;然后当满足条件时,处理器再将缓存中的数据拷贝至持 久化存储介质中。在该处理流程中,存储设备在处理来自主机的写请求时需要CPU的参与, 并且还需要执行一次内存拷贝操作,数据写入的效率低下。
[0003]另外,为了增加存储设备外部接口的数量,当前存储设备中往往会部署多张网卡。每张 网卡都会接收来自主机的写入请求,在这样的场景下,如何确保数据的写一致性是亟待解决 的问题。
技术实现思路
[0004]本申请提供了一种用于数据写入的方法、设备以及网卡,用于确保存储设备的数据写一 致性。
[0005]第一方面,本申请提供了一种用于数据写入的方法,该方法应用于存储设备,该存储设 备包括第一网卡、第二网卡以及处理器。该方法包括:第一网卡接收包括第一数据的第一写 请求,然后将第一数据与第一序列号存入第一存储区域;第二网卡接收包括第二数据的第二 写请求,然后将第二数据与第二序列号存入第二存储区域;其中第一序列号和第二序列号用 于区分存储设备接收到第一数据与第二数据的先后顺序。
...
【技术保护点】
【技术特征摘要】
1.一种用于数据写入的方法,应用于存储设备,所述存储设备包括第一网卡、第二网卡以及处理器,其特征在于,所述方法包括:所述第一网卡接收第一写请求,所述第一写请求包括第一数据;所述第一网卡将所述第一数据与第一序列号存入第一存储区域;所述第二网卡接收第二写请求,所述第二写请求包括第二数据;所述第二网卡将所述第二数据与第二序列号存入第二存储区域;其中,所述第一序列号与所述第二序列号用于区分所述存储设备接收所述第一数据与所述第二数据的先后顺序。2.根据权利要求1所述的方法,其特征在于,所述第一序列号与所述第二序列号属于同一组单调递增或者单调递减的序列。3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:所述第一网卡将所述第一数据在所述第一存储区域的第一存储位置以及所述第一序列号发送给所述处理器;所述处理器记录所述第一序列号与所述第一存储位置的对应关系。4.根据权利要求1
‑
3任一所述的方法,其特征在于,所述方法还包括:所述处理器根据所述第一序列号和所述第二序列号所指示的先后顺序将所述第一数据和所述第二数据存入持久化存储介质中。5.根据权利要求4所述的方法,其特征在于,所述第一序列号在所述第二序列号之前,当所述第一写请求包括的第一写入地址与所述第二写请求包括的第二写入地址有重合时,所述方法还包括:所述处理器将所述第一数据从所述第一存储区域转入所述持久化介质之后,再将所述第二数据从所述第二存储区域转入所述持久化存储介质,使得所述第一数据中的部分或全部数据被所述第二数据中的部分或全部数据所覆盖。6.根据权利要求1
‑
5任一所述的方法,其特征在于,所述存储设备还包括存储器,所述存储器为具有保电能力的存储介质,所述第一存储区域为所述处理器在所述存储器中为所述第一网卡分配的存储区域,所述第二存储区域为所述处理器在所述存储器中为所述第二网卡分配的存储区域。7.根据权利要求1
‑
6任一所述的方法,其特征在于,所述第一网卡将所述第一数据与第一序列号存入第一存储区域包括:所述第一网卡根据所述第一数据的长度以及所述第一序列号的大小为所述第一数据在所述第一存储区域中分配存储空间;所述第一网卡将所述第一数据与所述第一序列号存入所述存储空间。8.根据权利要求1
‑
6任一所述的方法,其特征在于,所述第一网卡将所述第一数据与第一序列号存入第一存储区域包括:所述第一网卡将所述第一数据、所述第一序列号以及其他描述信息存入所述第一存储区域,所述其他描述信息包括所述第一数据所属的输入/输出I/O请求的标识,所述I/O请求包括的数据块的数量。9.根据权利要求1
‑
8任一所述的方法,其特征在于,所述第一序列号是所述第一网卡通过高速串行计算机扩展总线标准PCIe原子机制获取的。
10.一种用于数据写入的设备,其特征在于,...
【专利技术属性】
技术研发人员:韩兆皎,蒋凡璐,余博伟,姚建业,徐启明,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。