一种数据处理方法、装置及具备相应装置的计算机制造方法及图纸

技术编号:10243617 阅读:90 留言:0更新日期:2014-07-23 17:16
本发明专利技术公开了一种数据处理方法、装置及具备相应装置的计算机,数据处理装置可用于生成任务队列,并根据预设选路规则,将生成的各任务队列划分为需由物理网卡处理的第一类任务队列或需由自身处理的第二类任务队列;以及,在第一类任务队列中接收到工作队列单元时,指示物理网卡对第一类任务队列中的工作队列单元进行处理,在第二类任务队列中接收到工作队列单元时,由自身对第二类任务队列中的工作队列单元进行处理,从而在实现软硬相结合、主机网卡负荷分担的基础上,达到了提高远程直接内存访问RDMA业务的处理效率和效果的目的。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种数据处理方法、装置及具备相应装置的计算机,数据处理装置可用于生成任务队列,并根据预设选路规则,将生成的各任务队列划分为需由物理网卡处理的第一类任务队列或需由自身处理的第二类任务队列;以及,在第一类任务队列中接收到工作队列单元时,指示物理网卡对第一类任务队列中的工作队列单元进行处理,在第二类任务队列中接收到工作队列单元时,由自身对第二类任务队列中的工作队列单元进行处理,从而在实现软硬相结合、主机网卡负荷分担的基础上,达到了提高远程直接内存访问RDMA业务的处理效率和效果的目的。【专利说明】一种数据处理方法、装置及具备相应装置的计算机
本专利技术涉及通信
,尤其涉及一种数据处理方法、装置及具备相应装置的计算机。
技术介绍
RDMA (Remote Direct Memory Access,远程直接内存访问)技术,不需要对操作系统造成影响,就可以将数据从一个应用系统快速移动到远程应用系统存储器中,从而解决了网络传输中服务器端数据处理的延迟。采用RDMA技术,可以减少传统以太网数据传输过程中对数据的内存拷贝、内核处理以及系统调用切换等过程,从而降低数据传输的时延,提闻业务处理能力。在现有技术中,可以在传统以太网链路上实现RDMA功能,其基本原理为:当有应用发出RDMA请求(WR, Work Request)时,应用将构造相应的WQE (Work Queue Element,工作队列单元)并将其压入发送队列中,由网卡从所述发送队列中取出相应的WQE进行处理,以将所述WQE重新组包成相应的RDMA报文后发送给对端;网卡还可以接收来自对端的RDMA报文,并对所述RDMA报文进行处理。由上述内容可知,在现有技术中,通常是由纯硬件网卡来实现RDMA请求或RDMA报文的处理的,当网卡出现堵塞等工作异常情况时,将导致性能瓶颈,降低RDMA业务的处理效率与处理效果。
技术实现思路
本专利技术实施例提供了一种数据处理方法、装置及具备相应装置的计算机,以解决仅由网卡来实现RDMA请求或RDMA报文的处理时,业务处理效率以及处理效果均较差的问题。第一方面,提供了一种计算机,包括数据处理装置以及物理网卡,其中:所述数据处理装置,用于生成任务队列,并根据预设的初始化选路规则,将生成的任一任务队列划分为第一类任务队列或第二类任务队列,所述第一类任务队列为需由所述物理网卡进行处理的任务队列,所述第二类任务队列为需由所述数据处理装置进行处理的任务队列;以及,在所述第一类任务队列中接收到工作队列单元时,指示所述物理网卡对所述第一类任务队列中的所述工作队列单元进行处理,在所述第二类任务队列中接收到工作队列单元时,根据处理逻辑对所述第二类任务队列中的所述工作队列单元进行处理,得到第二类RDMA请求报文,并将所述第二类RDMA请求报文发送给所述物理网卡;所述物理网卡,用于在所述第一类任务队列中接收到工作队列单元时,根据所述数据处理装置的指示,从所述第一类任务队列中获取所述工作队列单元,并根据所述处理逻辑对所述工作队列单元进行处理,得到第一类RDMA请求报文,并将所述第一类RDMA请求报文发送给对端,以及接收所述第二类RDMA请求报文并将所述第二类RDMA请求报文发送给对端。结合第一方面,在第一方面的第一种可能的实现方式中,所述初始化选路规则包括需由所述数据处理装置进行处理的任务队列的标识或者需由所述物理网卡进行处理的任务队列的标识;所述数据处理装置,具体用于根据生成的任一任务队列的标识以及所述初始化选路规则,对所述生成的任一任务队列进行标记,以将所述生成的任一任务队列标记为第一类任务队列或第二类任务队列。结合第一方面,在第一方面的第二种可能的实现方式中,所述物理网卡,还用于接收RDMA报文,并根据物理网卡队列权限信息,确定接收的RDMA报文是否需由所述物理网卡进行处理,如果否,则将所述接收的RDMA报文提供给所述数据处理装置,如果是,则根据所述处理逻辑对所述接收的RDMA报文进行处理,其中,所述物理网卡队列权限信息为所述第一类任务队列中的各任务队列的标识的集合;所述数据处理装置,还用于接收来自所述物理网卡的所述接收的RDMA报文,并根据所述处理逻辑,对所述接收的RDMA报文进行处理。结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述接收的RDMA报文为所述第一类RDMA报文的响应报文,或者所述第二类RDMA报文的响应报文,或者对端发送的RDMA读请求报文,或者对端发送的RDMA写请求报文。结合第一方面或第一方面的第一种、第二种或第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述数据处理装置,还用于对所述第一类任务队列进行监控,当监控到所述第一类任务队列中存在任务队列满足切换条件时,进行软硬切换,以使所述数据处理装置替代所述物理网卡对所述第一类任务队列中的满足切换条件的任务队列进行处理。结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述数据处理装置,具体用于当监控到所述第一类任务队列中存在任务队列的使用频率小于预设频率时,或者监测到所述第一类任务队列中存在任务队列中存在工作队列单元的单次交互时长大于预设时长时,或者监测到所述第一类任务队列中存在任务队列占用的处理器资源大于预设资源门限时,或者监测到所述第一类任务队列中存在任务队列、使得所述物理网卡从所述任务队列中获取工作队列单元的频率与接收到所述工作队列单元对应的响应报文的频率的差值大于预设值时,进行软硬切换;其中,所述工作队列单元的单次交互时长是指,对所述工作队列单元进行处理之后发送给对端的时间与接收到所述对端发送的、所述工作队列单元对应的响应报文的时间的时间差值。结合第一方面的第四种或第五种可能的实现方式,在第一方面的第六种可能的实现方式中,所述数据处理装置,具体用于当监控到所述第一类任务队列中存在任务队列满足切换条件时,指示所述物理网卡停止对所述第一类任务队列中的满足切换条件的任务队列的处理,并从所述物理网卡处获取所述第一类任务队列中的满足切换条件的任务队列的当前处理信息,以及,将所述第一类任务队列中的满足切换条件的任务队列修改为第二类任务队列,并根据所述当前处理信息,对修改为第二类任务队列的所述第一类任务队列进行处理。结合第一方面的第六种可能的实现方式,在第一方面的第七种可能的实现方式中,所述数据处理装置,还用于在监控到所述第一类任务队列中存在任务队列满足切换条件时,修改所述物理网卡队列权限信息,以将所述修改为第二类任务队列的所述第一类任务队列的标识从所述物理网卡队列权限信息中移除。结合第一方面或第一方面的第一种、第二种或第三种可能的实现方式,在第一方面的第八种可能的实现方式中,所述数据处理装置,还用于建立自身与所述第一类任务队列和所述第二类任务队列的映射关系,以及建立所述物理网卡与所述第一类任务队列的映身寸关系。第二方面,提供了一种数据处理装置,包括:初始化模块,用于生成任务队列,并根据预设的初始化选路规则,将生成的任一任务队列划分为第一类任务队列或第二类任务队列,所述第一类任务队列为需由物理网卡进行处理的任务队列,所述第二类任务队列为需由软件处理模块进行处理的任务队列;控制模本文档来自技高网
...
一种数据处理方法、装置及具备相应装置的计算机

【技术保护点】
一种计算机,其特征在于,包括数据处理装置以及物理网卡,其中:所述数据处理装置,用于生成任务队列,并根据预设的初始化选路规则,将生成的任一任务队列划分为第一类任务队列或第二类任务队列,所述第一类任务队列为需由所述物理网卡进行处理的任务队列,所述第二类任务队列为需由所述数据处理装置进行处理的任务队列,以及,在所述第一类任务队列中接收到工作队列单元时,指示所述物理网卡对所述第一类任务队列中的所述工作队列单元进行处理,在所述第二类任务队列中接收到工作队列单元时,根据处理逻辑对所述第二类任务队列中的所述工作队列单元进行处理,得到第二类远程直接内存访问RDMA请求报文,并将所述第二类RDMA请求报文发送给所述物理网卡;所述物理网卡,用于在所述第一类任务队列中接收到工作队列单元时,根据所述数据处理装置的指示,从所述第一类任务队列中获取所述工作队列单元,并根据所述处理逻辑对所述工作队列单元进行处理,得到第一类RDMA请求报文,并将所述第一类RDMA请求报文发送给对端,以及接收所述第二类RDMA请求报文并将所述第二类RDMA请求报文发送给对端。

【技术特征摘要】

【专利技术属性】
技术研发人员:曲会春程韬林忠能
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1