CN102387160B - 一种基于ip报文五元组过滤策略的***和方法 - Google Patents

一种基于ip报文五元组过滤策略的***和方法 Download PDF

Info

Publication number
CN102387160B
CN102387160B CN201110413606.4A CN201110413606A CN102387160B CN 102387160 B CN102387160 B CN 102387160B CN 201110413606 A CN201110413606 A CN 201110413606A CN 102387160 B CN102387160 B CN 102387160B
Authority
CN
China
Prior art keywords
tuple
data
address
fifo
rule
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110413606.4A
Other languages
English (en)
Other versions
CN102387160A (zh
Inventor
白宗元
刘朝辉
窦晓光
张磊
邵宗有
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dawning Information Industry Beijing Co Ltd
Dawning Information Industry Co Ltd
Original Assignee
Dawning Information Industry Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dawning Information Industry Beijing Co Ltd filed Critical Dawning Information Industry Beijing Co Ltd
Priority to CN201110413606.4A priority Critical patent/CN102387160B/zh
Publication of CN102387160A publication Critical patent/CN102387160A/zh
Application granted granted Critical
Publication of CN102387160B publication Critical patent/CN102387160B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种基于IP报文五元组过滤策略的***和方法,所述***包括五元组的FIFO、DispatchFSM仲裁模块、HashFilter、结果收集器模块和SRAM访问控制器,其中存储五元组的FIFO的数据被DispatchFSM仲裁模块分发到多个HashFilter中,SRAM访问控制器从多个Hash过滤器读取数据并进行规则匹配;所述方法首先将用户设定的规则表通过PCIe接口按照一定的算法写入到QDR的某个地址,当存储五元组的FIFO有数据时,从FIFO中读取一组数据,通过四元组按照相同的算法计算出存贮与之对应的在QDR中的规则,将其取出后进行比较,若匹配则成功,将规则中的动作信息提取出传输给后续模块,按照用户要求产生相应的数据包。本发明提供的过滤策略的***和方法,不会大量占用内核资源,降低了***调用带来的开销。

Description

一种基于IP报文五元组过滤策略的***和方法
技术领域
本发明属于网络安全领域,具体涉及一种基于IP报文五元组过滤策略的***和方法。
背景技术
公开号为CN101068229的申请专利基于Linux***平台,实现了网络内容分析与实时监控。实现了在网络层过滤应用层信息的目的,利用网络过滤器Netfilter框架,在内核态下进行数据包采集与过滤。其大量使用了Linux内核资源,增加了***调用带来的开销。
本发明采用FPGA实现了针对IP包中的源目IP地址,源目端口以及协议进行过滤的策略,可解放CPU,从而提高主机的性能,增强对网络的监控能力,保证网络的安全性。
发明内容
本发明克服现有技术不足,采用FPGA实现了针对IP包中的源目IP地址,源目端口以及协议进行过滤的策略,可解放CPU,从而提高主机的性能,增强对网络的监控能力,保证网络的安全性。
本发明提供了一种基于IP报文五元组过滤策略的***,包括五元组的FIFO、DispatchFSM仲裁模块、HashFilter、结果收集器模块和SRAM访问控制器,其中存储五元组的FIFO的数据被DispatchFSM仲裁模块分发到多个HashFilter中,SRAM访问控制器从多个Hash过滤器读取数据并进行规则匹配。
本发明提供了一种基于IP报文五元组过滤策略的***,包括AppInfoRam,用于存储附加信息。
本发明提供了一种基于IP报文五元组过滤策略的***,DispatchFSM仲裁模块轮询的将每个四元组产生的地址写入到HashFilter中。
本发明提供了一种基于IP报文五元组过滤策略的***,Hash过滤器是并行的。
本发明还提供了一种基于IP报文五元组过滤策略的方法,首先将用户设定的规则表通过PCIe接口按照一定的算法写入到QDR的某个地址,当存储五元组的FIFO有数据时,从FIFO中读取一组数据,通过四元组按照相同的算法计算出存贮与之对应的在QDR中的规则,将其取出后进行比较,若匹配则成功,将规则中的动作信息提取出传输给后续模块,按照用户要求产生相应的数据包。
本发明提供的基于IP报文五元组过滤策略的方法,利用DispatchFSM仲裁模块实现数据的仲裁,轮询的将每个四元组产生的地址写入对应的HashFilter中。
本发明提供的基于IP报文五元组过滤策略的方法,SRAM访问控制器从多个Hash过滤器的访问请求中选择一个,发送到规则管理模块进行匹配。
本发明提供的基于IP报文五元组过滤策略的方法,DispatchFSM仲裁模块将四元组产生的地址写到Buffer中,并将四元组数据写入到与Buffer对应的HashFilter中。
本发明提供的基于IP报文五元组过滤策略的方法,该方法采用FPGA可编程技术,针对源目IP地址、源目端口以及协议进行过滤。
本发明提供的基于IP报文五元组过滤策略的方法,结果收集器将所有Hash过滤器产生的过滤结果收集起来,并通知PCI-E控制器。
本发明提供的基于IP报文五元组过滤策略的方法,首先将每个“元”执行32位异或运算得到一个32位数,将这个数右移17位并与本身异或,再将得到的结果左移15位并与本身进行一次异或运算得到一个新的32位数,从而产生地址T。
本发明提供的基于IP报文五元组过滤策略的方法,每个四元组产生的地址被提供给QDR SDRAM,并读取其对应的规则。
本发明提供的基于IP报文五元组过滤策略的方法,将每个五元组产生的12个地址依次写入RAM中,之后再读取下一个五元组并进行同样操作。
本发明提供的基于IP报文五元组过滤策略的方法,每一个五元组产生的12个地址对应一个Buffer;从Buffer中取出一个地址进行Hash过滤。
与现有技术相比,本发明的有益效果在于:不在内核态下进行数据包采集与过滤,从而不会大量占用内核资源,降低了***调用带来的开销。而且本发明采用FPGA实现了针对IP包中的源目IP地址,源目端口以及协议进行过滤的策略,解放了CPU,在提高主机的性能的同时,也保证了网络的安全性。
附图说明
图1是本发明结构示意图;
图2是本发明的五元组产生12个地址对应的Buffer示意图;
图3是本发明的DispatchFSM状态机流程示意图。
具体实施方式
该方法主要检测网络数据包的源目IP地址,源目端口以及协议,与规则表中的源目IP地址,源目端口以及协议进行匹配。结果一致的数据包,根据规则过滤结果,分析包头信息及过滤动作,判断是否发送封堵包以及发送哪种类型的封堵包。
本发明采用FPGA可编程技术,针对源目IP地址、源目端口以及协议进行过滤。首先将用户设定的规则表通过PCIe接口按照一定的算法写入到QDR的某个地址,当存储五元组的FIFO有数据时,从FIFO中读取一组数据,通过四元组按照相同的算法计算出存贮与之对应的在QDR中的规则,将其取出后进行比较,若匹配则成功,将规则中的动作信息提取出传输给后续模块,按照用户要求产生相应的数据包。
结构框图如下所示,该结构采用8路流水实现并行处理。规则过滤模块有1个DispatchFSM仲裁模块实现数据的仲裁,轮询的将每个四元组产生的地址写入到Buffer中,并将四元组数据写入到与Buffer对应的HashFilter中。片外SRAM访问控制器从8个Hash过滤器的访问请求中选择一个,发送到规则管理模块。当所查询的规则数据返回时,通知对应的Hash过滤器。
结果收集器将所有Hash过滤器产生的过滤结果收集起来,通知PCI-E控制器。由于所得到的计算结果相对较少,我们使用一个结果收集器即可。
首先将本轮中使能的每个“元”执行32位异或运算得到一个32位数,将这个数右移17位并与本身异或,再将得到的结果左移15位并与本身进行一次异或运算得到一个新的32位数,这个数就是产生的地址T,该地址需要提供给QDR SDRAM,读取其对应的规则。将产生的12个地址依次写入RAM0中;完成此操作后再读取另一个五元组,进行计算将其地址写入RAM1中;依次再向RAM2,RAM7写入。并将附加信息存入AppInfoRam中,AppInfoRam存储数据格式如图2;
每一个五元组产生的12个地址对应一个Buffer;从Buffer中取出一个地址进行Hash过滤。
规则过滤算法是一个复杂耗时的算法,需要进行大量的数学逻辑运算。为了加速规则过滤,最好的办法就是增加处理电路的并行性,利用多个数学逻辑单元(过滤单元)同时过滤多个IP报文的五元组。
根据所选用FPGA芯片规模的不同,我们可以实现不同数量的过滤单元。当然,各个并行运算部件的数量应该与各总算法运算量的大小成比例,图中用了1个DispatchFsm仲裁模块、8个Hash过滤器。
模块DispatchFSM状态机如图3所示。
以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所述领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者同等替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。

Claims (7)

1.一种基于IP报文五元组过滤策略的***,包括五元组的FIFO、DispatchFSM仲裁模块、Hash过滤器、结果收集器模块和SRAM访问控制器,其中存储五元组的FIFO的数据被DispatchFSM仲裁模块分发到多个Hash过滤器中,SRAM访问控制器从多个Hash过滤器读取数据并进行规则匹配;所述规则匹配采用FPGA可编程技术,针对源目IP地址、源目端口以及协议进行过滤;首先将用户设定的规则表通过PCIe接口写入到4倍数据倍率QDR的某个地址,当存储五元组的FIFO有数据时,从FIFO中读取一组数据,通过四元组计算出存贮与之对应的在4倍数据倍率QDR中的规则,将其取出后进行比较,若匹配则成功,将规则中的动作信息提取出传输给后续模块,按照用户要求产生相应的数据包;
所述***包括AppInfoRam,用于存储附加信息;
所述DispatchFSM仲裁模块轮询的将每个四元组产生的地址写入到Hash过滤器中;所述四元组产生的地址过程为:首先将本轮中使能的每个“元”执行32位异或运算得到一个32位数,将这个数右移17位并与本身异或,再将得到的结果左移15位并与本身进行一次异或运算得到一个新的32位数,这个数就是产生的地址T;
所述Hash过滤器是并行的。
2.一种基于IP报文五元组过滤策略的方法,首先将用户设定的规则表通过PCIe接口写入到4倍数据倍率QDR的某个地址,当存储五元组的FIFO有数据时,从FIFO中读取一组数据,通过四元组计算出存贮与之对应的在4倍数据倍率QDR中的规则,将其取出后进行比较,若匹配则成功,将规则中的动作信息提取出传输给后续模块,按照用户要求产生相应的数据包;
利用DispatchFSM仲裁模块实现数据的仲裁,轮询的将每个四元组产生的地址写入对应的Hash过滤器中;所述四元组产生的地址过程为:首先将本轮中使能的每个“元”执行32位异或运算得到一个32位数,将这个数右移17位并与本身异或,再将得到的结果左移15位并与本身进行一次异或运算得到一个新的32位数,这个数就是产生的地址T;
SRAM访问控制器从多个Hash过滤器的访问请求中选择一个,发送到规则管理模块进行匹配;
DispatchFSM仲裁模块将四元组产生的地址写到Buffer中,并将四元组数据写入到与Buffer对应的Hash过滤器中。
3.权利要求2的方法,其特征在于该方法采用FPGA可编程技术,针对源目IP地址、源目端口以及协议进行过滤。
4.权利要求2或3的方法,其特征在于结果收集器将所有Hash过滤器产生的过滤结果收集起来,并通知PCI-E控制器。
5.权利要求4的方法,其特征在于,每个四元组产生的地址被提供给4倍数据倍率QDRSDRAM,并读取其对应的规则。
6.权利要求5的方法,其特征在于,将每个五元组产生的12个地址依次写入RAM中,之后再读取下一个五元组并进行同样操作。
7.权利要求6的方法,其特征在于,每一个五元组产生的12个地址对应一个Buffer;从Buffer中取出一个地址进行Hash过滤。
CN201110413606.4A 2011-12-13 2011-12-13 一种基于ip报文五元组过滤策略的***和方法 Active CN102387160B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110413606.4A CN102387160B (zh) 2011-12-13 2011-12-13 一种基于ip报文五元组过滤策略的***和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110413606.4A CN102387160B (zh) 2011-12-13 2011-12-13 一种基于ip报文五元组过滤策略的***和方法

Publications (2)

Publication Number Publication Date
CN102387160A CN102387160A (zh) 2012-03-21
CN102387160B true CN102387160B (zh) 2014-10-22

Family

ID=45826134

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110413606.4A Active CN102387160B (zh) 2011-12-13 2011-12-13 一种基于ip报文五元组过滤策略的***和方法

Country Status (1)

Country Link
CN (1) CN102387160B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106254395B (zh) * 2016-10-08 2019-06-14 湖南智卓创新信息产业股份有限公司 一种数据过滤方法及***
CN107483508B (zh) * 2017-09-30 2020-04-24 北京东土军悦科技有限公司 报文过滤方法、装置、设备及存储介质
CN114006868B (zh) * 2021-10-30 2024-04-26 杭州迪普信息技术有限公司 流量筛选方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1564547A (zh) * 2004-03-25 2005-01-12 上海复旦光华信息科技股份有限公司 保持连接特性的高速过滤分流方法
CN101572891A (zh) * 2009-06-15 2009-11-04 东南大学 基于fpga的3g数据包过滤***及方法
CN101702723A (zh) * 2009-10-30 2010-05-05 曙光信息产业(北京)有限公司 Ip报文的过滤方法和装置
CN101707617A (zh) * 2009-12-04 2010-05-12 福建星网锐捷网络有限公司 报文过滤方法、装置及网络设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8036232B2 (en) * 2006-08-22 2011-10-11 Samsung Electronics Co., Ltd Apparatus and method for filtering packet in a network system using mobile IP

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1564547A (zh) * 2004-03-25 2005-01-12 上海复旦光华信息科技股份有限公司 保持连接特性的高速过滤分流方法
CN101572891A (zh) * 2009-06-15 2009-11-04 东南大学 基于fpga的3g数据包过滤***及方法
CN101702723A (zh) * 2009-10-30 2010-05-05 曙光信息产业(北京)有限公司 Ip报文的过滤方法和装置
CN101707617A (zh) * 2009-12-04 2010-05-12 福建星网锐捷网络有限公司 报文过滤方法、装置及网络设备

Also Published As

Publication number Publication date
CN102387160A (zh) 2012-03-21

Similar Documents

Publication Publication Date Title
CN104572574B (zh) 基于千兆以太网视觉协议的以太网控制器ip核及方法
US20220156648A1 (en) Systems for constructing hierarchical training data sets for use with machine-learning and related methods therefor
CN102387160B (zh) 一种基于ip报文五元组过滤策略的***和方法
CN110546654A (zh) 通过构造接口的带宽控制来增强dnn模块的处理性能
CN107124286A (zh) 一种海量数据高速处理、交互的***及方法
CN108021487B (zh) 一种gpu图形处理性能监测与分析方法
JP2014170552A5 (zh)
CN102497322A (zh) 一种基于分流网卡和多核cpu实现的高速包过滤设备和方法
CN104111870B (zh) 一种中断处理装置及中断处理方法
CN104065588B (zh) 一种数据包调度和缓存的装置及方法
CN102006142A (zh) 用于基于误差保护包的帧的接收器
CN102098227A (zh) 报文捕获方法及内核模块
CN102970244A (zh) 一种多cpu核间负载均衡的网络报文处理方法
CN107102897A (zh) 一种多gpu并行处理的数据库主动防御方法
CN103544098B (zh) 一种压力测试的方法和装置
CN109769029A (zh) 基于用电信息采集***的通信连接方法及终端设备
CN104156299A (zh) 一种用于并行***的监测方法
CN103235754B (zh) 分布式文件***中请求的处理方法和装置
CN103885900B (zh) 数据访问处理方法、PCIe设备和用户设备
CN106817262A (zh) 一种日志分析装置
CN103916316A (zh) 网络数据包线速捕获方法
CN103995789B (zh) 一种直接内存存取的实现***及方法
CN103095595B (zh) 一种基于单向并行多链表的网络数据管理方法及***
CN105139890B (zh) 一种信息处理方法及固态硬盘
CN204720499U (zh) 一种具有压力检测功能的加酸机

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20220728

Address after: 100193 No. 36 Building, No. 8 Hospital, Wangxi Road, Haidian District, Beijing

Patentee after: Dawning Information Industry (Beijing) Co.,Ltd.

Patentee after: DAWNING INFORMATION INDUSTRY Co.,Ltd.

Address before: 100084 Beijing Haidian District City Mill Street No. 64

Patentee before: Dawning Information Industry (Beijing) Co.,Ltd.

TR01 Transfer of patent right