[发明专利]一种多CPU环境下网卡数据处理方法和装置在审
申请号: | 201510983045.X | 申请日: | 2015-12-24 |
公开(公告)号: | CN105630731A | 公开(公告)日: | 2016-06-01 |
发明(设计)人: | 姜彦君 | 申请(专利权)人: | 曙光信息产业(北京)有限公司 |
主分类号: | G06F15/163 | 分类号: | G06F15/163 |
代理公司: | 北京新知远方知识产权代理事务所(普通合伙) 11397 | 代理人: | 郭玉梅 |
地址: | 100193 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 cpu 环境 网卡 数据处理 方法 装置 | ||
技术领域
本申请涉及计算机技术领域,尤其涉及一种多CPU环境下网卡数据处理方 法和装置。
背景技术
在多CPU环境下,多核处理器自带的专用以太网卡,由于硬件支持,数据 报文可以根据要求分发到预期的多CPU进行处理。但是多核处理器通常还需要 兼容通用以太网卡,现有的多核处理器兼容通用以太网卡的方案包括以下两 种:
方案一:通用以太网卡具有一个硬件队列,网卡将接收的数据报文发送至 多核处理器中的一个CPU进行处理,其他CPU不参与网卡数据的处理。
方案二:由通用以太网卡自身提供多个硬件队列,经配置后,网卡可将接 收到的数据报文按报文特征分发到自身的多个硬件队列中,再由多个CPU分别 对应处理各网卡硬件队列中的数据报文。
现有技术方案一的不足在于,网卡数据中的一个报文在某一时刻只能发送 至一个CPU进行处理,对称多处理结构(SMP,SymmetricMulti-Processing) 方式下无法通过硬件的支持把数据报文分发到多个CPU处理,因此除参与网卡 数据处理的一个CPU外,多核处理器的其他CPU资源被浪费,限制了系统整体 的处理性能。
现有技术方案二的不足在于,现有技术中自身能够提供多硬件队列的通用 网卡,其硬件队列的数量通常是有限并且固定的,因此只能兼容CPU数目与所 述通用网卡中硬件队列数量相同的多核处理器,即不能灵活兼容具有不同数量 CPU的多核处理器。
发明内容
本申请实施例提出了解决上述问题的技术方案,能够使网卡充分利用多核 处理器中各CPU的资源,优化系统整体处理性能,同时兼容具有不同数量CPU 的多核处理器。
在一个方面,本申请实施例提供了一种多CPU环境下网卡数据处理方法, 其特征在于,所述方法包括:
获取位于内存的接收队列中存储的网卡数据,所述网卡数据包含报文;
确定所述多CPU中与所述报文对应的处理CPU;
将所述报文发送至所述处理CPU对应的处理队列,以使所述处理CPU从处 理队列中获取并处理所述报文。
优选的,所述接收队列为环形队列,并且,所述接收队列的写指针由网卡 通过硬件方式更新,所述接收队列的读指针通过软件方式更新。
优选的,所述确定所述多CPU中与所述报文对应的处理CPU,包括:
对所述报文进行哈希计算,根据计算结果确定所述多CPU中与所述报文对 应的处理CPU。
优选的,所述将所述报文发送至所述处理CPU对应的处理队列,包括:
创建所述报文的描述符;
将所述报文和所述描述符发送至所述处理CPU对应的处理队列。
优选的,在执行所述获取位于内存的接收队列中存储的网卡数据步骤之 前,还包括:
创建接收进程;
在所述接收进程中执行获取位于内存的接收队列中存储的网卡数据,所述 网卡数据包含报文;确定所述多CPU中与所述报文对应的处理CPU;将所述报 文发送至所述处理CPU对应的处理队列,以使所述处理CPU从处理队列中获取 并处理所述报文的步骤。
在另一个方面,本申请实施例提供了一种多CPU环境下网卡数据处理装置, 其特征在于,所述装置包括:
获取模块,用于获取位于内存的接收队列中存储的网卡数据,所述网卡数 据包含报文;
确定模块,用于确定所述多CPU中与所述报文对应的处理CPU;
发送模块,用于将所述报文发送至所述处理CPU对应的处理队列,以使所 述处理CPU从处理队列中获取并处理所述报文。
优选的,所述接收队列为环形队列,并且,所述接收队列的写指针由网卡 通过硬件方式更新,所述接收队列的读指针通过软件方式更新。
优选的,所述确定模块,具体用于对所述报文进行哈希计算,根据计算结 果确定所述多CPU中与所述报文对应的处理CPU。
优选的,所述发送模块,具体用于:创建所述报文的描述符;将所述报文 和所述描述符发送至所述处理CPU对应的处理队列,以使所述处理CPU从处理 队列中获取并处理所述报文。
优选的,所述装置还包括创建模块,用于创建接收进程;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于曙光信息产业(北京)有限公司,未经曙光信息产业(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510983045.X/2.html,转载请声明来源钻瓜专利网。