[发明专利]一种多CPU环境下网卡数据处理方法和装置在审
| 申请号: | 201510983045.X | 申请日: | 2015-12-24 |
| 公开(公告)号: | CN105630731A | 公开(公告)日: | 2016-06-01 |
| 发明(设计)人: | 姜彦君 | 申请(专利权)人: | 曙光信息产业(北京)有限公司 |
| 主分类号: | G06F15/163 | 分类号: | G06F15/163 |
| 代理公司: | 北京新知远方知识产权代理事务所(普通合伙) 11397 | 代理人: | 郭玉梅 |
| 地址: | 100193 北京市海淀*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 cpu 环境 网卡 数据处理 方法 装置 | ||
1.一种多CPU环境下网卡数据处理方法,其特征在于,所述方法包括:
获取位于内存的接收队列中存储的网卡数据,所述网卡数据包含报文;
确定所述多CPU中与所述报文对应的处理CPU;
将所述报文发送至所述处理CPU对应的处理队列,以使所述处理CPU从处 理队列中获取并处理所述报文。
2.如权利要求1所述的方法,其特征在于,所述接收队列为环形队列,并 且,所述接收队列的写指针由网卡通过硬件方式更新,所述接收队列的读指针 通过软件方式更新。
3.如权利要求1所述的方法,其特征在于,所述确定所述多CPU中与所述 报文对应的处理CPU,包括:
对所述报文进行哈希计算,根据计算结果确定所述多CPU中与所述报文对 应的处理CPU。
4.如权利要求1至3中任一项所述的方法,其特征在于,所述将所述报文 发送至所述处理CPU对应的处理队列,包括:
创建所述报文的描述符;
将所述报文和所述描述符发送至所述处理CPU对应的处理队列。
5.如权利要求1至3中任一项所述的方法,其特征在于,在执行所述获取 位于内存的接收队列中存储的网卡数据步骤之前,还包括:
创建接收进程;
在所述接收进程中执行获取位于内存的接收队列中存储的网卡数据,所述 网卡数据包含报文;确定所述多CPU中与所述报文对应的处理CPU;将所述报 文发送至所述处理CPU对应的处理队列,以使所述处理CPU从处理队列中获取 并处理所述报文的步骤。
6.一种多CPU环境下网卡数据处理装置,其特征在于,所述装置包括:
获取模块,用于获取位于内存的接收队列中存储的网卡数据,所述网卡数 据包含报文;
确定模块,用于确定所述多CPU中与所述报文对应的处理CPU;
发送模块,用于将所述报文发送至所述处理CPU对应的处理队列,以使所 述处理CPU从处理队列中获取并处理所述报文。
7.如权利要求6所述的装置,其特征在于,所述接收队列为环形队列,并 且,所述接收队列的写指针由网卡通过硬件方式更新,所述接收队列的读指针 通过软件方式更新。
8.如权利要求6所述的装置,其特征在于,所述确定模块,具体用于对所 述报文进行哈希计算,根据计算结果确定所述多CPU中与所述报文对应的处理 CPU。
9.如权利要求6至8中任一项所述的装置,其特征在于,所述发送模块, 具体用于:创建所述报文的描述符;将所述报文和所述描述符发送至所述处理 CPU对应的处理队列,以使所述处理CPU从处理队列中获取并处理所述报文。
10.如权利要求6至8中任一项所述的装置,其特征在于,所述装置还 包括创建模块,用于创建接收进程;
所述获取模块,具体用于在所述接收进程中执行获取位于内存的接收队列 中存储的网卡数据,所述网卡数据包含报文;
所述确定模块,具体用于在所述接收进程中确定所述多CPU中与所述报文 对应的处理CPU;
所述发送模块,具体用于在所述接收进程中将所述报文发送至所述处理 CPU对应的处理队列,以使所述处理CPU从处理队列中获取并处理所述报文的 步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于曙光信息产业(北京)有限公司,未经曙光信息产业(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510983045.X/1.html,转载请声明来源钻瓜专利网。





