首页> 中国专利> 一种在IPv6下基于IPSec硬件防火墙的系统及处理方法

一种在IPv6下基于IPSec硬件防火墙的系统及处理方法

摘要

本发明提供一种在IPv6下基于IPSec硬件防火墙的系统,包括:以太网模块,用于接收和发送来自以太网上的数据包;数据包过滤模块,用于检测所述来自以太网上的数据包所含信息是否符合要求;内容地址存储CAM模块,用于存储所述来自以太网上的数据包所含信息,并对数据包所含信息进行快速的数据匹配;网络掩码RAM模块,用于存储源IP和目的IP信息;协调控制模块,用于初始化所述网络掩码RAM模块和所述CAM模块中的数据,并且协调各连接模块之间的信息传输。本发明提供的系统可以提高IP数据的处理效率和正确率,以增强了网络对用户的安全性。

著录项

  • 公开/公告号CN104168295A

    专利类型发明专利

  • 公开/公告日2014-11-26

    原文格式PDF

  • 申请/专利权人 东南大学;

    申请/专利号CN201410461476.5

  • 申请日2014-09-11

  • 分类号H04L29/06;H04L29/12;

  • 代理机构江苏永衡昭辉律师事务所;

  • 代理人王斌

  • 地址 214135 江苏省无锡市新区菱湖大道99号

  • 入库时间 2023-12-17 01:54:18

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-11-07

    授权

    授权

  • 2014-12-24

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20140911

    实质审查的生效

  • 2014-11-26

    公开

    公开

说明书

技术领域

本发明涉及硬件防火墙技术领域,特别涉及一种在IPv6下基于IPSec硬件防火墙的系统及处理方法。 

背景技术

在互联网时代,通过互联网进行数据传输和交流成为人们生活的一部分,而网络由于与生俱来的开放性和互联性越来越成为网络信息安全的隐患。与此同时,网络也越来越成为全国信息战的战略目标。所以网络安全技术成为国家战略防卫力量的重要组成部分。

随着互联网络的蓬勃发展,截至2013年12月全球上网人数已达22.7亿,然而IPv4协议仅能提供约2.5亿个IP位置。虽然网络地址转换及无类别域间路由等技术可延缓网络位置匮乏之现象,但为了从根本上解决问题, 1998年12月被互联网工程研究团队通过公布互联网标准规范(RFC 2460)的方式提出了IPv6协议。相比IPv4,IPv6定义了一种新的分组格式,目的是为了最小化路由器处理的报文首部。因此,IPv6的优点包括以下几个方面:(1)更大的地址空间;(2)更小的路由表;(3)增强的组播(Multicast)支持以及对流的支持(Flow-control);(4)加入了对自动配置(Auto-configuration)的支持;(5)更高的安全性。然而,由于IPv4报文和IPv6报文首部有很大的不同,这两种协议无法互操作。

IPSec网络安全协议主要包括认证头(AH,Authentication Header)协议、封装安全载荷(ESP,Encapsulation Security Payload)协议和Internet密钥交换(IKE,Internet Key Exchange)协议,其中:AH协议提供数据源认证、无连接的完整性,以及可选的抗重放服务;ESP协议提供数据保密性、有限的数据流保密性、数据源认证、无连接的完整性,以及抗重放服务。IPSec的AH协议和ESP协议有两种操作模式:传输模式和隧道模式,其中:传输模式保护上层协议,隧道模式保护整个IP数据包。根据防火墙对内外来往数据的处理方法,大致可以分为两大类:包过滤防火墙和代理防火墙。

有鉴于此,针对目前IPSec网络安全协议难以有效实现在IPv6协议下对来自外网的数据进行有效处理的问题,有必要提出一种在IPv6下基于IPSec硬件防火墙的系统和方法,以提高IP数据的处理效率和正确率,以增强了网络对用户的安全性。

发明内容

为了克服上述所指的现有技术中的不足之处,本发明旨在提出一种在IPv6下基于IPSec硬件防火墙的系统和方法,该设计能够有效的提升对IP数据包的过滤和检测的速率,并且能够实时更新数据的检测规则,跟IPSec数据处理模块能够达到合适的协作。

为了实现上述目的,本发明的一个方面提供了一种在IPv6下基于IPSec硬件防火墙的系统,包括:以太网模块,用于接收和发送来自以太网上的数据包,数据在接收和发送过程中是通过数据传输的中间结构FIFO来控制数据的传输,其中:所述数据包具有如下信息之一:IP数据的版本号、目的端口、源IP地址、源端口、目的IP地址、源IP和目的IP和/或源MAC地址;数据包过滤模块,其连接所述以太网模块,用于检测所述来自以太网上的数据包所含信息是否符合要求;内容地址存储CAM(Content Addressable Memory)模块,其连接所述数据包过滤模块,用于存储所述来自以太网上的数据包所含信息,并对数据包所含信息进行快速的数据匹配,其中:匹配的信息包括:IP数据的版本号、目的端口、源IP地址、源端口、目的IP地址和源MAC地址;网络掩码RAM模块,其连接所述数据包过滤模块,用于存储源IP和目的IP信息;协调控制模块,其分别连接所述以太网模块、所述数据包过滤模块、所述CAM模块和所述网络掩码RAM模块,用于初始化所述网络掩码RAM模块和所述CAM模块中的数据,并且协调各连接模块之间的信息传输。

优选地,所述CAM模块包括:M个CAM,每个CAM的宽度为N字节、深度为P,其中:M是指使用CAM的个数,这里CAM的总数为M=18个,用于比对目的端口号为2个CAM,源端口号为2个CAM,目的IP地址为4个CAM,源IP地址为4个CAM,源MAC地址为6个CAM,每个CAM都是相同的N和P,其中N为1字节,P为16。

优选地,所述网络掩码RAM模块包括:A个RAM,每个RAM的宽度为B字节、深度为C,其中:这里用到RAM的个数为A=2,用于存储目的IP地址用1个RAM、用于存储源IP地址用1个RAM,每个RAM的宽度为4个字节,深度为16。

进一步地,所述以太网模块包括:数据包接收子模块,用于当所述协调控制模块发出要接收以太网数据的命令时,开始接收数据,若有接收错误或者进行CRC检查时有错误,就丢弃该包,否则就让数据包通过一个FIFO缓存起来,并通知协调控制模块成功接收该数据包;数据包发送子模块,用于当所述协调控制模块向所述FIFOFIFO发出要发送数据的命令时,从将数据包通过所述FIFO发送出去。

进一步地,所述的数据包过滤模块包括:IP包提取模块,用于将IP数据进行分段提取;数据比较模块,用于将提取后的数据与CAM模块中存储的数据进行比较,判断数据是否是符合要求的。

为了实现上述目的,本发明的另一个方面提供了一种在IPv6下基于IPSec硬件防火墙的处理方法,包括如下步骤:接收和发送以太网上的数据;将IP数据包进行筛选和过滤,首先将IP包进行提取,并将提取出来的相应字段进行筛选决定是否丢弃该IP数据包;通过初始化将CAM中存储匹配规则,然后对IP数据相应的数据段进行匹配,输出匹配是否成功信息;通过初始化在RAM中存储源IP和目的IP子网掩码信息;初始化网络掩码RAM和CAM中的数据,以及协调各个模块之间的信息传输。

进一步地,所述的接收和发送以太网上的数据包括:在协调控制模块发出要准备接收以太网数据时,接收模块将内存清空,准备接收来自以太网上的数据,当数据到来时,进行ERC校验,若没有接收错误就将数据发往一个FIFO中,等待随时发到FIFO;若协调控制模块通知FIFO要发送数据时,FIFO就从将数据包通过FIFO发送出去。

进一步地,所述的数据包过滤包括:根据数据包的各字段的分布规则将数据包进行拆分,拆分成版本号字段、源IP地址字段、目的IP地址字段、源端口号字段、目的端口号字段、源MAC地址字段;将提取出的各字段送到相对应的CAM中进行数据匹配。决定是否丢弃或保留该IP数据包。

进一步地,所述的用于存储匹配规则的CAM进一步包括:用于匹配源IP地址范围的CAM;用于匹配目的IP地址范围的CAM;用于匹配源端口号的CAM;用于匹配目的端口号的CAM;用于匹配源MAC地址的CAM。

本发明中涉及的防火墙模块采用的是基于包过滤技术的防火墙。其优点是包过滤防火墙容易实现,处理速度较快,满足整个IPSec数据处理对速率的要求,并且该防火墙模块能对IP数据包准确的判断是否要对该数据包进行IPSec处理。本发明提供了一种在IPv6下基于IPSec硬件防火墙的系统和方法,有效的对IPv6下的数据包进行高效率的检测,特别地利用CAM模块对源端口号、目的端口号、源MAC地址进行匹配,提升了数据匹配的速度,另外对于源IP地址CAM和目的IP地址CAM中不是直接存放的地址值,而是存储的是源IP地址和目的IP地址的范围,这样更快速的实现数据的匹配。由于该防火墙系统和方法是针对IPSec协议处理模型而特定设计的,因此,为IPSec协议处理模型提供了完全符合标准的IPV6数据包,这样IPSec协议处理模型可以更专注于对IPv6数据包进行IPSec处理,而不必在考虑是否要对该数据包进行IPSec处理,从而大大提高了IPSec协议处理模型的工作效率。

本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

图1示出根据本发明一实施例方式的一种在IPv6下基于IPSec硬件防火墙的系统的结构示意图;

图2示出本发明提供的一种在IPv6下基于IPSec硬件防火墙的系统的另一具体实施方式的结构示意图;

图3示出本发明提供的一种在IPv6下基于IPSec硬件防火墙的系统的一个实施例中网络掩码RAM模块的具体实施方式的结构示意图;

图4示出本发明提供的一种在IPv6下基于IPSec硬件防火墙的系统的一个实施例中数据包过滤模块具体实施方式的结构示意图;

图5示出本发明实施例提供的一种在IPv6下基于IPSec硬件防火墙的方法中数据包过滤模块的流程图;

图6示出本发明实施例提供的一种在IPv6下基于IPSec硬件防火墙的方法的流程图。 

具体实施方式

下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。

图1示出本发明实施例提供的一种在IPv6下基于IPSec硬件防火墙的系统和方法的结构示意图。如图1所示,本发明提供一种在IPv6下基于IPSec硬件防火墙的系统和方法的结构包括:以太网模块102、CAM模块、数据包过滤模块106、网络掩码RAM模块108、协调控制模块110。

以太网模块102用于接收和发送从以太网来的数据,数据在接收和发送过程中是通过FIFO来控制数据的传输,在接收数据时若发生接收错误或进行CRC校验时有错误就丢弃该数据包,接收正确则将数据送到与FIFO相连的FIFO里,然后FIFO若收到来自控制协调模块110的发送信号,就将刚才接收到的数据包发给数据包过滤模块106。例如,控制协调模块110发出信号让以太网模块102准备接收数据,若有数据过来,则接收数据并检查数据的正确性,正确就交给FIFO随时准备将数据发送给数据包过滤模块106,进行数据的进一步处理。

作为一种实施方式,CAM模块104用于存储目的IP地址、源IP地址、源端口号、目的端口号、源MAC地址,所以这个CAM模块104包含了5中不同类型和规格的CAM,包括:源IP地址CAM,其宽度为128位,深度为16。目的IP地址CAM,其宽度为128位,深度为16。源端口号CAM,其宽度为16位,深度为16。目的端口号CAM,其宽度为16位,深度为16。源MAC地址CAM,其宽度为48位,深度为16。当数据包过滤模块106要对分段数据进行匹配时,就将该分段数据输入对应的CAM中,进行查找,最后CAM模块反馈回来信息,表示是否匹配成功。例如,数据包过滤模块106要将源端口号16位的数据进行检查,就将该16位的数据送到源端口号CAM中,该CAM会将送来的源端口号数据与该CAM中存储的数据进行每位的匹配,若匹配成功就发出该项目匹配成功的信号,否则就就发出丢弃该包的信号。

作为另一种实施方式,所述CAM模块104包括:M个CAM,每个CAM的宽度为N字节、深度为P,其中:M是指使用CAM的个数,这里CAM的总数为M=18个,用于比对目的端口号为2个CAM,源端口号为2个CAM,目的IP地址为4个CAM,源IP地址为4个CAM,源MAC地址为6个CAM,每个CAM都是相同的N和P,其中N为1字节,P为16

数据包过滤模块106用于对以太网模块102发来的数据进行检查和过滤的功能,首先判断该IP数据包是否为IPv6数据,若不是就直接丢弃,若是IPv6数据包则在对发来的数据包进行5项内容的检查,分别为源IP地址、目的IP地址、源端口号、目的端口号、源MAC地址。只有这5项内容都满足要求才说明该数据包是符合要求的,因此可以将该数据包发到下一级进行处理。否则就丢弃。例如,在对源IP地址进行过滤时,首先将源IP地址在IP数据包中的源IP地址字段提取出来,为128位,该源IP地址先要与网络掩码RAM模块108中的源IP的RAM进行相与的操作,把操作的结果在发到CAM模块104中对应的源IP地址CAM中进行数据的匹配,匹配的结果返回作为该数据包是否符合要求的条件之一。

作为一种实施方式,网络掩码RAM模块108用于存储源IP和目的IP的,该模块包括两个RAM,一个是用于存储源IP数据的,宽度为128位,宽度为16。另一个RAM是用于存储目的IP数据的,宽度为128位,深度为16。当需要对源IP地址和目的IP地址进行检查时,由于IP地址数据位数较大而且变化范围太大,若是单纯用CAM进行匹配,用需要大量的CAM单元,对资源消耗太大,采取检测IP地址的范围来判定该数据包的地址是否符合要求就大大加快的匹配的效率。例如,要检查目的IP地址是否符合要求,将目的IP地址数据段与对应网络掩码RAM中目的IP的RAM数据调出来跟目的IP地址进行想与的操作,结果输出,在跟CAM模块104中的目的IP地址CAM进行数据的匹配。匹配的结果作为判断该数据包是否满足要求的条件之一。

作为另一种实施方式,所述网络掩码RAM模块进一步包括:A个RAM,每个RAM的宽度为B字节、深度为C,其中:这里用到RAM的个数为A=2,用于存储目的IP地址用1个RAM、用于存储源IP地址用1个RAM,每个RAM的宽度为4个字节,深度为16。

协调控制模块110用于协调和控制整个防火墙系统的运作,刚开始对各个CAM和RAM进行初始化,将特定的数据输入到各个存储器中,作为筛选的条件。需要对数据进行检测时,发出信号给以太网模块102,该模块将数据准备好发到下一级进行处理,有任何错误会发出报告,协调控制模块110根据相应的信号决定是丢弃还是继续处理。任何模块发现匹配错误或者发出其他错误信号给该模块时,协调控制模块110都会进行相应的处理。若最后所有处理过程都没有错误信号发出则该模块就将完整的IP数据送到一个FIFO中,留给下一级模块调用。例如,当数据包过滤模块有要丢弃数据包的信号发出时,协调控制模块110会根据错误报告决定丢弃该包,并发出信息来控制其他模块停止处理当前的数据包。

图2示出本发明提供的一种在IPv6下基于IPSec硬件防火墙的系统和方法的另一具体实施方式的结构示意图;

如图2所示,以太网模块202进一步包括接收模块2020、FIFO2022。

其中,接收模块2020用于以太网上数据的接收工作,当协调控制模块210发出可以准备接收以太网数据包的指令时,该模块就准备接收数据包,当有数据包过来时,还要进行CRC的校验,若有误就发出错误信号给协调控制模块210,若没有错误就将数据传给FIFO2022。例如,接收模块接收到一个1500字节的数据包,并且没有发现错误,就将这1500字节的数据包传给接收模块2022。

FIFO2022用于发送刚才从接收模块2020接收的数据,当协调控制模块210发出要接收以太网模块数据包的指令时,FIFO就开始发送数据包。例如,发送一个1500字节的数据包给数据包过滤模块206。

CAM模块204进一步包括目的端口CAM 2040、源端口CAM 2042、源IP地址CAM 2044、目的IP地址CAM 2046、源MAC地址CAM 2048。

其中,目的端口CAM 2040模块用于存放目的端口号的信息,如TCP、UDP目的端口号。

例如,CAM 2040模块中存放16位的TCP目的端口号。

源端口CAM 2042模块用于存放目的端口号的信息,如TCP、UDP源端口号。例如,CAM 2042模块中存放16位的TCP源端口号。

源IP地址CAM 2044模块用于存放源IP地址的信息。例如,CAM 2044模块中存放128位的源IP地址。

目的IP地址CAM 2046模块用于存放目的IP地址的信息。例如,CAM 2046模块中存放128位的目的IP地址。

源MAC地址CAM 2048模块用于存放源MAC地址的信息。例如,CAM 2048模块中存放48位的源MAC地址。

数据包过滤模块206进一步包括数据包提取模块2060、数据比较模块2062。

其中,数据包提取模块2060用于将一个IP数据包中相关信息字段提取出来,送到相应的CAM中进行匹配。例如,将一个1500字节的IP数据包,将其中的源端口号字段提取出来送到源端口CAM 2042模块中,进行数据的匹配。

数据比较模块2062用于将提取出来的数据与对应的CAM匹配后,得到几个匹配是否成功的信号,根据这些信号进行判断这个IP数据包是否符合要求。例如,总共有5个CAM小模块,这个5个CAM都返回匹配成功信号才说明该数据是符合要求的。

网络掩码RAM模块208进一步包括源IP RAM 2080、目的IP RAM 2082。

其中,源IP RAM 2080用于存放源IP地址的子网掩码。例如,存储的子网掩码为255.255.255.255.255.255.255.255.255.255.255.0。

目的IP RAM 2082用于存放目的IP地址的子网掩码。例如,存储的子网掩码为255.255.255.255.255.255.255.255.255.255.255.0。

如图3所示,该图描述了当提取IP源地址和IP目的地址时,在送到相应CAM模块中匹配时先要同网络掩码中的RAM模块进行相与的操作,具体过程是:当提取到IP源地址,此时网络掩码RAM中源IP地址RAM中对应的数据与该IP源地址进行与操作后数据输出。对于提取到IP目的地址,此时网络掩码RAM中目的IP地址RAM中对应的数据与该IP目的地址进行与操作后数据输出。

如图4所示,该图描述了包过滤模块的实施的模块图,当以太网模块发送过来IP数据包时,包提取模块402将发送过来的IP数据包进行拆分,提取出相应的数据段分别送到对应的CAM模块404中进行匹配,并输出结果。例如,提取到源端口号字段,就送到源端口号CAM进行数据匹配,并将匹配的结果输出。

图5示出本发明提供的一种在IPv6下基于IPSec硬件防火墙的系统和方法的流程图。

如图5所示,一种在IPv6下基于IPSec硬件防火墙的实现方法的流程500包括:

步骤502,以太网模块接收并发送数据,将IP数据传出,例如,以太网模块接收1500字节的IP数据,经过简单的检查和处理若没有发现错误就将数据送出。

步骤504,根据以太网模块接收和发送数据是否发现错误来判断是否要接收以太网模块发来的数据,若没有发现错误就接收该数据,若发现有错误就丢弃该数据包。例如,接收该数据包。

步骤506,数据包过滤模块对数据包进行拆分,并和相应的CAM模块进行匹配,其中将数据包拆分成源IP地址字段、目的IP地址字段、源端口号字段、目的端口号字段、源MAC地址字段,其中源MAC地址字段是在以太网模块中提取的。所有需要提取的字段经过提取后送往相对应的CAM模块进行数据的匹配。例如,提取到源端口号字段,将该字段送到对应的源端口号CAM中进行匹配,得到输出结果为正确或错误。

步骤508,根据数据包拆分后与对应的CAM模块进行依次的匹配,只有当源IP地址CAM模块发出成功信号,目的IP地址CAM模块发出成功信号,源端口号CAM模块发出成功信号,目的端口号CAM模块发出成功信号,源MAC地址CAM模块发出成功信号,只有这五个成功信号同时发生时才表示匹配成功,该数据包符合要求。例如,源端口号CAM发出错误信号,就丢弃该数据包。

步骤510,协同控制模块根据匹配成功的信息,将完整的数据包传输到输出FIFO,协同控制模块还控制着每个模块的运行情况,跟协调每个模块的工作,提高数据包处理的效率。例如,匹配成功,将1500字节的数据包送到输出FIFO中,供下一级调用。

如图6所示,实现数据包过滤处理方法的流程图。

步骤602,以太网模块接收并发送数据,将IP数据传出,此时的数据包是标准的IP数据包,此时的报头是标准的IP报头,所以在进行下一步的操作的时候可以按照标准的形式进行数据包的提取。

步骤604,用于甄别该IP数据包是否为IPv6数据包,若是IPv6数据包则选择继续下一级数据的传输。若是IPv4数据包则丢弃。例如,该数据是IPv4数据,则直接丢弃。

步骤606,包提取模块将IP数据包分解成各种需要的片段,分解成源IP地址、目的IP地址、源端口号、目的端口号字段,对每个字段的数据分别发送不同的模块。例如,将IP数据包拆分成IP源端口号字段。

步骤608,存储源IP和目的IP的网络掩码RAM,例如,存储128位的源IP子网掩码的RAM。

步骤610,存储IP地址的CAM,例如,128位的源IP地址CAM模块。

步骤612,存储IP端口号的CAM,例如,128位的源IP端口的CAM模块。

步骤614,存储源MAC地址的CAM,例如,48位的源MAC地址CAM模块。

步骤616,IP地址CAM匹配的结果显示出来,例如,匹配成功。

步骤618,IP端口号CAM匹配的结果显示出来,例如,匹配成功。

步骤620,源MAC地址的CAM匹配的结果显示出来,例如,匹配成功。

步骤622,将五个CAM模块的匹配结果进行整理,输出总的结果。例如,CAM模块都显示成功,输出整个IP数据包。

参考前述本发明示例性的描述,本领域技术人员可以知晓本发明具有以下优点:

本发明提供了一种在IPv6下基于IPSec硬件防火墙的系统和方法,该系统及方法可应用于IPv6下IPSec协议处理模型,该系统对来自外网的数据进行第一步处理,为IPSec协议处理做了最基础的工作也是非常关键的准备工作。该设计提高了对IP数据处理的效率,并且有严格的数据过滤规则,提高了对IP数据的处理正确率,进一步加强了用户对网络安全性的要求。

本发明提供了一种快速的数据匹配规则,利用CAM存储要匹配的数据,提高了匹配处理的速度和准确性,该数据匹配规则可适当的优化,也可用于其他需要进行数据筛选的应用中。

作为另一种实施方式,一种在IPv6下基于IPSec硬件防火墙的系统和方法,该系统包括:以太网模块,用于以太网上的数据包的接收和发送,数据包过滤模块,用于检测以下6种信息是否符合要求,需要检测的7种信息如下:(1)IP数据的版本号(2)目的端口、(3)源IP地址、(4)源端口、(5)目的IP地址、(6)源IP和目的IP以及(7)源MAC地址;内容地址存储CAM(Content Addressable Memory),用于存储以下7种信息并进行快速的数据匹配,匹配的信息包括:(1)IP数据的版本号、(2)目的端口、(3)源IP地址、(4)源端口、(5)目的IP地址以及(6)源MAC地址;网络掩码RAM模块,用于存储源IP和目的IP信息;协调控制模块,用于初始化网络掩码RAM和CAM中的数据,以及协调各个模块之间的信息传输。

本发明提供的一种在IPv6下基于IPSec硬件防火墙的系统和方法的一个实施例中,以太网模块实现的方法进一步包括:在数据包接收子模块中,当协调控制模块发出要接收以太网数据时,该模块开始接收数据,若有接收错误或者进行CRC检查时有错误,就丢弃该包,否则就让数据包通过一个FIFO缓存起来,并通知协调控制模块成功接收该数据包;数据包发送子模块,若协调控制模块通知FIFO要发送数据时,该模块就从将数据包通过FIFO发送出去。

本发明提供的一种在IPv6下基于IPSec硬件防火墙的系统和方法的一个实施例中,数据包过滤模块实现方法进一步包括:IP包提取模块,用于将IP数据进行分段提取;首先将IPv6的报头的40字节进行提取,通过检报头中测版本号字段可知该数据包是否为IPv6数据包,若不是就丢弃该数据包,并发出丢弃信号,由协调控制模块对数据进行相应处理,若是IPv6数据包则进行下一步的检测,判断源/目的IPv6地址,是否符合要求,在CAM模块中与相应的CAM进行数据的匹配,若匹配的结果错误则丢弃该包,若正确则继续检测报头中下一报头字段的值,根据检测到下一报头字段的值来进行相关的判断,并根据下一报头字段的值提取对应的端口号;数据比较模块,用于将提取后的数据与CAM模块中存储的数据进行比较,判断数据是否是符合要求的。若符合要求则将完整的IPv6数据包提交给下一层。否则丢弃整个IPv6数据包。

本发明提供的一种在IPv6下基于IPSec硬件防火墙的系统和方法的一个实施例中,CAM模块的实现方法进一步包括:M个CAM,每个CAM的宽度为N字节(Byte),深度为P,分成几种不同规格的CAM是为了保证一个CAM中存储同一个类型的数据。这样在进行匹配的时候不同的CAM可以同时进行,提高数据匹配的速度,从而整体提高防火墙的数据处理的速度。

本发明提供的一种在IPv6下基于IPSec硬件防火墙的系统和方法的一个实施例中,网络掩码RAM模块的实现方法进一步包括:A个RAM,每个RAM的宽度为B字节(Byte),深度为C,分成不同类型的RAM是为了保证每个RAM中存储同一种类型的数据。这样在进行数据匹配的时候可以同时进行,从而提高匹配的速率。

本发明提供的一种在IPv6下基于IPSec硬件防火墙的系统和方法的一个实施例中,协调控制模块的实现方法进一步包括:用于初始化网络掩码RAM和CAM中的数据,以及协调各个模块之间的信息传输。合理的安排数据的流动。

本发明中涉及的防火墙模块采用的是基于包过滤技术的防火墙。其优点是包过滤防火墙容易实现,处理速度较快,满足整个IPSec数据处理对速率的要求,并且该防火墙模块能对IP数据包准确的判断是否要对该数据包进行IPSec处理。本发明提供了一种在IPv6下基于IPSec硬件防火墙的系统和方法,有效的对IPv6下的数据包进行高效率的检测,特别地利用CAM模块对源端口号、目的端口号、源MAC地址进行匹配,提升了数据匹配的速度,另外对于源IP地址CAM和目的IP地址CAM中不是直接存放的地址值,而是存储的是源IP地址和目的IP地址的范围,这样更快速的实现数据的匹配。由于该防火墙系统和方法是针对IPSec协议处理模型而特定设计的,因此,为IPSec协议处理模型提供了完全符合标准的IPV6数据包,这样IPSec协议处理模型可以更专注于对IPv6数据包进行IPSec处理,而不必在考虑是否要对该数据包进行IPSec处理,从而大大提高了IPSec协议处理模型的工作效率。

本技术领域技术人员可以理解,本发明可以涉及用于执行本申请中所述操作中的一项或多项操作的设备。所述设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备,所述通用计算机有存储在其内的程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、随即存储器(RAM)、只读存储器(ROM)、电可编程ROM、电可擦ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存、磁性卡片或光线卡片。可读介质包括用于以由设备(例如,计算机)可读的形式存储或传输信息的任何机构。例如,可读介质包括随即存储器(RAM)、只读存储器(ROM)、磁盘存储介质、光学存储介质、闪存装置、以电的、光的、声的或其他的形式传播的信号(例如载波、红外信号、数字信号)等。

本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来生成机器,从而通过计算机或其他可编程数据处理方法的处理器来执行的指令创建了用于实现结构图和/或框图和/或流图的框或多个框中指定的方法。

本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。

以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号