[发明专利]一种实现IPSEC VPN加解密处理的方法及装置有效
申请号: | 201210264843.3 | 申请日: | 2012-07-30 |
公开(公告)号: | CN102780625A | 公开(公告)日: | 2012-11-14 |
发明(设计)人: | 罗俊 | 申请(专利权)人: | 成都卫士通信息产业股份有限公司 |
主分类号: | H04L12/56 | 分类号: | H04L12/56 |
代理公司: | 成都九鼎天元知识产权代理有限公司 51214 | 代理人: | 徐宏 |
地址: | 610041 *** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 ipsec vpn 解密 处理 方法 装置 | ||
技术领域
本发明属于数据通信领域,尤其涉及一种采用异步机制高速实现IPSEC VPN加解密处理的方法及装置。
背景技术
术语解释:
IPESC:Internet Protocol Security的缩写,表示Internet 协议安全性。是一种开放标准的框架结构,通过使用加密的安全服务以确保在 Internet 协议 (IP) 网络上进行保密而安全的通讯;
VPN:虚拟专用网络(Virtual Private Network ,简称VPN)指的是在公用网络上建立专用网络的技术。其之所以称为虚拟网,主要是因为整个VPN网络的任意两个节点之间的连接并没有传统专网所需的端到端的物理链路,而是架构在公用网络服务商所提供的网络平台,如Internet、ATM(异步传输模式〉、Frame Relay (帧中继)等之上的逻辑网络,用户数据在逻辑链路中传输。它涵盖了跨共享网络或公共网络的封装、加密和身份验证链接的专用网络的扩展。VPN主要采用了隧道技术、加解密技术、密钥管理技术和使用者与设备身份认证技术。
目前,市场上的IPSEC VPN设备在处理数据报文加解密的时候,通常是分别为加解密协处理器和网卡维持单独的数据队列,并采用生产者-消费者模型实现数据报文的处理,其处理模型如图1所示:
在网络处理器中,分别用网卡接收队列、网卡发送队列管理网卡接收的未经加解密协处理器处理的数据报文和经加解密协处理器处理后可立即由网卡发送的数据报文,在加解密协处理器中,则用协处理器队列管理等待处理的数据报文,这三个队列都分别配置有生产者和消费者两个队列指针。
在中央处理器的调度下,网卡接收的数据报文经指针生产者1指示按序存入网卡接收队列,再经指针消费者1指示从网卡接收队列中按序读取数据报文,同步传输至协处理器,在指针生产者2的指示下按序存入协处理器队列,协处理器经指针消费者2从协处理器队列中读取数据报文进行处理,此时中央处理器需等待协处理器的加解密结果才能继续下一流程,即触发数据发送处理线程工作。处理完的报文同步传输给网卡,在指针生产者3的指示下按序存入网卡发送队列,网卡再在指针消费者3的指示下从网卡发送队列中按序读取数据报文进行发送。
现有的这种网络数据报文的处理方法,由于其不但要维持各队列内的数据报文处理,还要时刻维持队列间的同步以及系统内部的实时数据传输,中央处理器经常处于等待状态,造成数据报文的处理效率以及协处理器的利用效率都非常低,而且还需要占用很多的内存资源和中央处理器的开销,数据报文的处理效率(即吞吐率)最高还不到30%。
发明内容
本发明所要解决的技术问题是:针对现有技术中用多个单独的数据队列来分别管理加解密协处理器和网卡中的数据报文,从而为了维持各队列内的数据报文处理,以及维持队列间的同步和系统内部的实时数据传输,使得数据报文的处理效率及协处理器的利用效率很低,且内存资源和中央处理器的开销过大的问题,提供一种采用异步机制高速实现IPSEC VPN加解密处理的方法及装置,采用内核线程共享的数据接收处理线程(数据接收处理模块)、数据加解密处理线程(数据加解密处理模块)、数据发送处理线程(数据发送处理模块)对网卡输入的数据进行异步处理,同时几个线程(模块)还可同时并行工作,操作队列的生产者、操作者、消费者三个指针实现数据报文的互斥、协同处理,顺序协调队列中数据报文的进出以及与加解密协处理器的通信,加解密协处理器工作时收发网络数据和其他的数据处理工作仍然可以同时进行,从而可以极大地减少数据传输和同步维持带来的开销,实现数据报文的处理率及协处理器的利用效率的大幅提高。除此之外,通过设定生产者指针、操作者指针、消费者指针相对的位置关系,使得对环形缓冲队列中数据的处理效率进一步提高,除此之外,对网卡输入的不同的数据报文处理采用并行处理,除此之外,在环形缓冲队列中的报文数据经过数据发送处理线程处理后对数据报文的数据缓冲区进行清空,确保下一帧存储在此数据缓冲区的数据的准确性。
本发明采用的技术方案如下:
一种实现IPSEC VPN加解密处理的方法包括步骤:
步骤一:网卡中断发生时,数据接收处理线程将网卡接收到未经加密协处理器处理的数据报文经生产者指针存入环形缓冲队列,并触发数据加解密处理线程工作;
步骤二:数据加解密处理线程通过操作者指针从所述环形缓冲队列中获取数据报文发送给加解密协处理器进行处理后,在经由操作者指针存入环形缓冲队列,并触发数据发送处理线程工作;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都卫士通信息产业股份有限公司,未经成都卫士通信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210264843.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电力系统故障实景采集处理的方法
- 下一篇:一种液压柱塞泵用滑靴式柱塞