使用网卡进行数据处理的方法、网络设备及计算机系统技术方案

技术编号:33510457 阅读:10 留言:0更新日期:2022-05-19 01:19
本申请实施例提供一种计算机系统,包括计算节点及存储节点。所述计算节点通过所述存储节点的网卡连接至所述存储节点。所述计算节点用于发送第一写请求,所述第一写请求中包括第一写入地址,所述第一写入地址为所述第一写请求所访问的地址空间中写入待写数据的地址;所述网卡用于接收所述第一写请求,根据所述第一写入地址将所述待写数据写入所述存储节点;在确定访问所述地址空间的且写入地址在所述第一写入地址之前的写请求已全部完成时,通知所述计算节点所述第一写请求已完成。本申请实施例提供的技术方案通过存储节点的网卡控制地址空间的保序写入,降低了计算节点的负载。降低了计算节点的负载。降低了计算节点的负载。

【技术实现步骤摘要】
使用网卡进行数据处理的方法、网络设备及计算机系统


[0001]本申请涉及存储领域,具体涉及一种使用网卡进行数据处理的方法、网络设备及计算机系统。

技术介绍

[0002]在主要用于存储数据的计算机系统中,通常包括多个计算节点和多个存储节点。当计算节点需要在存储节点中的一段地址空间中写入数据时,为了保证在存储节点的存储空间中不会出现零散的未使用空间(即空洞),计算节点需要实现对该段地址空间的保序写入。具体是,计算节点在从上层应用(Application,APP)接收到对所述地址空间写入数据的请求之后,首先在该段地址空间为该数据分配写入地址,并按照所述存储空间的地址顺序记录所述写请求,之后,将所述写请求发送至存储节点的网卡。存储节点的网卡在接收到写请求之后基于远程直接内存访问(Remote Direct Memory Access,RDMA)技术将所述数据写入存储节点并返回写请求的完成消息。计算节点在接收到所述写请求的完成消息之后,根据记录的所述写请求的地址顺序将写请求的完成消息返回给上层应用,从而实现对该段地址空间的保序写入。上述技术实现主要通过计算节点控制地址空间的保序写入,增加了计算节点的负载。

技术实现思路

[0003]本申请实施例旨在提供一种对存储节点的存储空间保序写入的数据处理方案,该方案通过网卡控制地址空间的保序写入,降低了计算节点的负载。
[0004]为实现上述目的,本申请一方面提供一种计算机系统,包括计算节点及存储节点。所述计算节点通过所述存储节点的网卡连接至所述存储节点。所述计算节点用于发送访问第一地址空间的写请求至所述网卡,所述第一地址空间对应所述存储节点中的第二地址空间。所述网卡用于将所述写请求对应的待写数据写入所述存储节点中的所述第二地址空间,并根据所述写请求对应的写入地址在所述第一地址空间中的地址顺序向所述计算节点返回所述写请求的完成消息。
[0005]上述技术方案,网卡会根据写入请求的在地址空间的地址顺序返回写请求的完成消息,即通过网卡控制地址空间的保序写入,因此计算节点在接收到写请求的完成消息后,可直接将写请求的完成消息返回给应用,不需要再进行保序控制,从而降低了计算节点的负载。
[0006]在一种实施方式中,所述网卡在用于根据所述写请求对应的写入地址在所述第一地址空间中的地址顺序返回所述写请求的完成消息时,具体用于:在确定访问所述第一地址空间的且写入地址在所述写请求对应的写入地址之前的写请求已全部完成时,向所述计算节点返回所述写请求的完成消息。
[0007]在一种实施方式中,所述存储节点包括多个存储节点,所述计算节点用于向所述多个存储节点中的每个存储节点的网卡分别发送所述写请求,并在接收到所述多个存储节
点发送的所述写请求的完成消息后,确定所述写请求已完成。
[0008]计算节点通过向多个存储节点分别发送写请求,以对多个存储节点分别写入数据副本,以保证数据可靠性,在该实现方式中,计算节点只需要在确定接收到多个存储节点返回的写请求的完成消息之后,即可确定写请求完成,而不需要进行保序控制,降低了计算节点的负载。
[0009]在一种实施方式中,所述网卡还用于记录所述写请求的信息,所述信息用于指示所述写请求的写入地址在所述地址空间中的地址顺序,所述网卡还用于根据所述写请求的信息确定的所述写请求的写入地址在所述地址空间中的地址顺序向所述计算节点返回所述写请求的完成消息。
[0010]通过由网卡记录写请求的信息,由于所述信息指示写请求的写入地址在地址空间中的地址顺序,网卡可基于该信息保序地返回写请求的完成消息。
[0011]在一种实施方式中,所述写请求的信息为所述写请求的请求编号,所述写请求的请求编号由所述计算节点基于所述写请求的生成顺序分配,所述网卡在用于确定访问所述第一地址空间的且写入地址在所述写请求对应的写入地址之前的写请求已全部完成时,具体用于:在确定所述写请求的编号为所述网卡中所记录的访问所述第一地址空间的未完成的写请求的编号中的最小编号时,则确定所述写请求确定访问所述第一地址空间的且写入地址在所述写请求对应的写入地址之前的写请求已全部完成。
[0012]通过由网卡记录写请求的请求编号,由于写请求的编号的大小与写请求的写入地址的大小相对应,即,写请求的编号可指示写入地址在地址空间中的地址顺序,因此,网卡可通过确定该写请求的编号是否为访问所述第一地址空间的未完成的写请求的编号中的最小编号,来确定该写请求的写入是否为保序写入,从而保序地返回写请求的完成消息。
[0013]在一种实施方式中,所述写请求的信息为所述写请求对应的写入地址,所述网卡在用于确定访问所述第一地址空间的且写入地址在所述写请求对应的写入地址之前的写请求已全部完成时,具体用于:确定所述写请求对应的写入地址为所述网卡中所记录的访问所述第一地址空间的未完成的写请求包括的写入地址中的最小写入地址。
[0014]通过由网卡记录写请求的写入地址,可通过确定该写入地址是否为访问所述第一地址空间的未完成的写请求包括的写入地址中的最小写入地址来确定该写请求的写入是否为保序写入,从而保序地返回写请求的完成消息。
[0015]在一种实施方式中,所述网卡还用于在确定访问所述第一地址空间的且写入地址在所述写请求对应的写入地址之前的写请求未全部完成时,将所述写请求的信息记录至所述网卡中的未完成写请求队列中。
[0016]在一种实施方式中,所述网卡中记录当前待返回的写请求的信息,当确定所述写请求的信息与所述当前待返回的写请求的信息匹配时,所述网卡确定访问所述第一地址空间的且写入地址在所述写请求的写入地址之前的写请求已全部完成。
[0017]本申请另一方面提供一种数据处理方法,所述方法由存储节点的网卡执行,所述存储节点通过所述网卡与计算节点连接,其特征在于,所述方法包括:接收由计算节点发送的第一写请求,所述第一写请求中包括第一写入地址,所述第一写入地址为所述第一写请求所访问的地址空间中写入待写数据的地址;根据所述第一写入地址将所述待写数据写入所述存储节点;在确定访问所述地址空间的且写入地址在所述第一写入地址之前的写请求
已全部完成时,通知所述计算节点所述第一写请求已完成。
[0018]在一种实施方式中,在将所述待写数据写入所述存储节点之后,所述方法还包括:记录所述第一写请求的信息,所述信息指示所述第一写入地址在所述地址空间中的地址顺序,其中,确定访问所述地址空间的且写入地址在所述第一写入地址之前的写请求已全部完成包括,基于所述记录的所述第一写请求的信息,确定访问所述地址空间的且写入地址在所述第一写入地址之前的写请求已全部完成。
[0019]在一种实施方式中,所述第一写请求的信息为所述第一写请求的请求编号,所述第一写请求的请求编号由所述计算节点基于所述第一写请求的生成顺序分配,其中,基于所述记录的所述第一写请求的信息,确定访问所述地址空间的在且写入地址在所述第一写入地址之前的写请求已全部完成包括:确定所述第一写请求的请求编号为所记录的未本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种计算机系统,包括计算节点及存储节点,所述计算节点通过所述存储节点的网卡连接至所述存储节点,其特征在于,所述计算节点用于发送访问第一地址空间的写请求至所述网卡,所述第一地址空间对应所述存储节点中的第二地址空间;所述网卡用于将所述写请求对应的待写数据写入所述存储节点中的所述第二地址空间,并根据所述写请求对应的写入地址在所述第一地址空间中的地址顺序向所述计算节点返回所述写请求的完成消息。2.根据权利要求1所述的计算机系统,其特征在于,所述网卡在用于根据所述写请求对应的写入地址在所述第一地址空间中的地址顺序返回所述写请求的完成消息时,具体用于:在确定访问所述第一地址空间的且写入地址在所述写请求对应的写入地址之前的写请求已全部完成时,向所述计算节点返回所述写请求的完成消息。3.根据权利要求1或2所述的计算机系统,其特征在于,所述存储节点包括多个存储节点,所述计算节点用于向所述多个存储节点中的每个存储节点的网卡分别发送所述写请求,并在接收到所述多个存储节点发送的所述写请求的完成消息后,确定所述写请求已完成。4.根据权利要求1

3任意一项所述的计算机系统,其特征在于,所述网卡还用于记录所述写请求的信息,所述信息用于指示所述写请求的写入地址在所述地址空间中的地址顺序,所述网卡还用于根据所述写请求的信息确定的所述写请求的写入地址在所述地址空间中的地址顺序向所述计算节点返回所述写请求的完成消息。5.根据权利要求4所述的计算机系统,其特征在于,所述写请求的信息为所述写请求的请求编号,所述写请求的请求编号由所述计算节点基于所述写请求的生成顺序分配,所述网卡在用于确定访问所述第一地址空间的且写入地址在所述写请求对应的写入地址之前的写请求已全部完成时,具体用于:在确定所述写请求的编号为所述网卡中所记录的访问所述第一地址空间的未完成的写请求的编号中的最小编号时,则确定所述写请求确定访问所述第一地址空间的且写入地址在所述写请求对应的写入地址之前的写请求已全部完成。6.根据权利要求4所述的计算机系统,其特征在于,所述写请求的信息为所述写请求对应的写入地址,所述网卡在用于确定访问所述第一地址空间的且写入地址在所述写请求对应的写入地址之前的写请求已全部完成时,具体用于:确定所述写请求对应的写入地址为所述网卡中所记录的访问所述第一地址空间的未完成的写请求包括的写入地址中的最小写入地址。7.根据权利要求1

6任意一项所述的计算机系统,其特征在于,所述网卡还用于在确定访问所述第一地址空间的且写入地址在所述写请求对应的写入地址之前的写请求未全部完成时,将所述写请求的信息记录至所述网卡中的未完成写请求队列中。8.一种数据处理方法,所述方法由存储节点的网卡执行,所述存储节点通过所述网卡与计算节点连接,其特征在于,所述方法包括:接收由计算节点发送的第一写请求,所述第一写请求中包括第一写入地址,所述第一写入地址为所述第一写请求所访问的地址空间中写入待写数据的地址;根据所述第一写入地址将所述待写数据写入所述存储节点;在确定访问所述地址空间的且写入地址在所述第一写入地址之前的写请求已全部完
成时,通知所述计算节点所述第一写请求已完成。9.根...

【专利技术属性】
技术研发人员:陈晓雨游俊余博伟
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1