[发明专利]多核多线程系统中IPSec转发的方法无效

专利信息
申请号: 201110450898.9 申请日: 2011-12-29
公开(公告)号: CN102546617A 公开(公告)日: 2012-07-04
发明(设计)人: 陈海滨 申请(专利权)人: 汉柏科技有限公司
主分类号: H04L29/06 分类号: H04L29/06
代理公司: 北京路浩知识产权代理有限公司 11002 代理人: 王莹
地址: 300384 天津市西青区*** 国省代码: 天津;12
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 多核 多线程 系统 ipsec 转发 方法
【说明书】:

技术领域

发明涉及网络安全技术领域,尤其涉及一种多核多线程系统中IPSec转发的方法。

背景技术

因特网协议安全(IPSec),是由IETF(Internet Engineering Task Force)定义的一套在网络层提供因特网协议(IP)安全性的协议,其通过对数据加密、认证、完整性检查来保证数据传输的可靠性、私有性、保密性。它由一系列RFC文档组成,其中RFC2401定义IPSec的基本结构;RFC2402定义IPSec的验证头(AH);RFC2406定义IPSec的封装安全载荷(ESP);RFC2409定义IPSec的因特网密钥交换(IKE)。

IPSec协议包括:AH、ESP、IKE等。ESP封装安全载荷为IP载荷提供数据加密和验证的功能。AH认证头为IP头提供数据完整性和验证的功能。数据加密和验证算法由安全相关(SA)指定。IKE密钥交换为IPSec协议生成密钥。安全策略数据库(SPD)决定两个实体之间能否通讯及通讯转码方式。解析域(DOI)用来组合相关协议,通过使用ISAKMP协商安全连接。

现有的IPsec技术通常采用基于单核处理器的处理方式,加解密芯片将解密后的报文放入解密队列,此时由一个线程处理解密队列,由于线程对解密后的报文要做包括nat、aaa、路由等三层业务,在处理速度上一个加解密芯片的处理速度大于一个cpu处理速度,当加解密芯片满负荷运转时,会导致报文丢包,报文处理瓶颈限制了cpu处理能力。

现有技术通过增加解密队列的队列长度来缓冲由于加解密芯片和cpu处理速度不同导致的丢包,这种方法在网路流量时大时小时能起到一定的缓解作用,但并不能根本解决单个cpu性能低导致的整机处理能力下降的问题。

发明内容

(一)要解决的技术问题

本发明要解决的技术问题是:提供一种多核多线程系统中IPSec转发的方法,其能够提高整机IPSec报文处理性能。

(二)技术方案

为解决上述问题,本发明提供了一种多核多线程系统中IPSec转发的方法,包括以下步骤:

A:多线程中的一个线程读取解密后的报文;

B:该线程对所读取的解密后的报文重新计算ip五元组,并根据计算结果将解密后的报文放入多个hash分发队列;

C:多线程中的其他线程并行处理每个hash分发队列中的报文。

优选地,所述步骤B中,根据计算结果将解密后的报文放入多个分发hash队列包括:将计算结果中ip五元组不同的报文放入不同的hash分发队列。

优选地,所述步骤C进一步包括:线程分别判断每个hash分发队列是否正在被别的线程处理,如果没有被别的线程处理,且该队列需要被处理,则获取该队列的处理权,并循环处理该队列中的报文,处理完毕后放弃该队列的处理权。

优选地,所述ip五元组为源IP地址,源端口,目的IP地址,目的端口,和传输层协议号。

(三)有益效果

本发明多核多线程系统中IPSec转发的方法采用报文分发机制,将报文通过ip五元组重新进行hash计算,不同ip五元组的报文放入不同队列,通过多个CPU协作处理多队列的方法提高整机IPSec报文处理性能。由于多个cpu线程协同处理解密后的报文,速度大于一个cpu线程处理解密后的报文速度,因此本发明根本解决了由于单个cpu线程性能低于加解密芯片处理速度导致ipsec处理慢的问题。

附图说明

图1为本发明实施方式中所述多核多线程系统中IPSec转发的方法的流程图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

如图1所示,本发明所述的多核多线程系统中IPSec转发的方法,包括以下步骤:

A:多线程中的一个线程读取解密后的报文;

B:该线程对所读取的解密后的报文重新计算ip五元组,并根据计算结果将解密后的报文放入多个hash分发队列;

本步骤中,将计算结果中ip五元组不同的报文放入不同的hash分发队列。所述ip五元组为源IP地址,源端口,目的IP地址,目的端口,和传输层协议号。

C:多线程中的其他线程并行处理每个hash分发队列中的报文。

本步骤中,线程分别判断每个hash分发队列是否正在被别的线程处理,如果没有被别的线程处理,且该队列需要被处理,则获取该队列的处理权,并循环处理该队列中的报文,处理完毕后放弃该队列的处理权。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于汉柏科技有限公司,未经汉柏科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201110450898.9/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top