CN104219242A - 一种基于硬件的网络数据包的过滤结构 - Google Patents

一种基于硬件的网络数据包的过滤结构 Download PDF

Info

Publication number
CN104219242A
CN104219242A CN201410455294.7A CN201410455294A CN104219242A CN 104219242 A CN104219242 A CN 104219242A CN 201410455294 A CN201410455294 A CN 201410455294A CN 104219242 A CN104219242 A CN 104219242A
Authority
CN
China
Prior art keywords
packet
data
filtering
module
data packet
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.)
Pending
Application number
CN201410455294.7A
Other languages
English (en)
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.)
Tianjin University
Original Assignee
Tianjin University
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 Tianjin University filed Critical Tianjin University
Priority to CN201410455294.7A priority Critical patent/CN104219242A/zh
Publication of CN104219242A publication Critical patent/CN104219242A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于硬件的网络数据包的过滤结构,包括数据包发送模块、数据包接收模块、包过滤模块、关键字缓存、IP及MAC地址缓存、数据包缓存、过滤规则配置模块,其中:数据包发送模块和数据包接收及关键字段提取模块与以太网数据接口连接;数据包接收及关键字段提取模块在数据包接收的同时进行数据包关键字段的提取,当接收到的某个16位数据是关键字的时候,在将该16位数据发送到数据包缓存的同时,也将其发送到关键字缓存;包过滤模块对上述已经提取的这些关键字段逐一比对,如果有比对成功的关键字,则包过滤模块根据已经配置的过滤规则对所接收的数据包进行包过滤,如果不存在比对成功的关键字,则包过滤模块对所接收的数据包进行传递。

Description

一种基于硬件的网络数据包的过滤结构
技术领域
本发明涉及网络通信技术与硬件设计技术,具体涉及一种基于硬件的,对网络数据包进行过滤及传递的结构。
背景技术
互联网技术的发展正在推动着社会信息化的技术革命。个人、企业以及政府的各个部门通过计算机网络来获取、存储、处理和传输信息,广泛的利用信息进行生产过程控制和经济计划的决策。全国乃至全球范围的计算机网络不断的高速发展并日益深入到国民经济和社会生活的各个方面,计算机网络已经成为人们日常工作与生活中的必不可少的工具。
与互联网快速发展伴随而来的是越来越受到关注的网络与信息安全问题。根据瑞星2010年度安全报告:国内互联网2010年出现病毒750万个,比2010年下降56%,受害网民7.03亿人次,有不到2%的网民遇到过严重病毒危害,如网银被盗、电脑不断重启、系统崩溃等;2010年共截获挂马网站3382万个,遭挂马网站攻击的网民从2010年初的日均300万人次,下降到2010年底的日均140万左右,下降54%;钓鱼网站数量急剧增加,瑞星公司共截获钓鱼网站175万个,比去年同期增加1186%,受害网民4411万人次,损失超过200亿元。可见,信息安全问题对个人、政府、商业的信息、财产安全方面造成了严重的威胁。
为了提高网络安全性与可靠性,人们采取了许多措施。防火墙、杀毒软件、VPN等技术都一定程度上提高了网络的安全性。但是基于软件的安全防护措施对新病毒、变种病毒、新的攻击方式往往束手无策,所以始终难以保证网络安全。这就需要一种更为可靠的安全防护手段。
参考文献:
[1]《包过滤防火墙系统的设计与研究》赵可新,陈玉芳;现代电子技术,2011年第34卷第6期。
[2]《互联网安全新形势及对策分析》魏亮;通信管理与技术,2011年4月第2期。
[3]《网络安全技术介绍》范萍,徐明玉;制造业自动化,2005年12月,增刊第27卷。
发明内容
超大规模集成电路设计与制造技术的发展给网络安全带来了新的方法,由于硬件的可靠性与不易攻击性,相对于传统的软件网络安全防护,硬件防护使得网络更加安全可靠。因此,本发明提供一种基于硬件的网络数据包的过滤结构,可以实现网络数据包的双向传递,并且根据用户的需求,对过滤规则进行简单的配置。通过对网络协议关键字段的分析,可以实现诸如IP地址过滤、禁止文件上行(下行)传输等功能。
本发明一种基于硬件的网络数据包的过滤结构的技术方案是:该过滤结构包括数据包发送模块、数据包接收模块、包过滤模块、关键字缓存、IP及MAC地址缓存、数据包缓存、过滤规则配置模块,该过滤结构是一种整体对称结构,该过滤结构外部与以太网互联,通过接收以太网数据包,对数据链路层首部、网络层首部、传输层首部、应用层的数据设置过滤规则,实现数据包的过滤以及对通过过滤的数据包的双向传递;其中:
数据包发送模块和数据包接收及关键字段提取模块与以太网数据接口连接,数据包发送模块将存储在数据包缓存中的数据以16位的形式向以太网接口发送;所述数据包接收及关键字段提取模块接收的数据是以16位为单位的,所述数据包接收及关键字段提取模块在数据包接收的同时进行数据包关键字段的提取,当接收到的某个16位数据是关键字的时候,在将该16位数据发送到数据包缓存的同时,也将其发送到关键字缓存;所述包过滤模块对上述已经提取的这些关键字段逐一比对,如果存在有比对成功的关键字,则所述包过滤模块根据已经配置的过滤规则对所接收的数据包进行包过滤,如果需要进行IP和MAC地址过滤,就将关键字段中IP和MAC地址与IP及MAC地址缓存中的地址进行比对;如果不存在比对成功的关键字,则所述包过滤模块对所接收的数据包进行传递。
进一步讲,本发明基于硬件的网络数据包的过滤结构,其中,所述以太网数据接口是一个并行的总线接口。
整体对称结构中的两个包过滤模块设置成不同的过滤规则,以实现通过过滤的数据包的单向传递。
与现有技术相比,本发明的有益效果是:
在面对不断“发展”的安全问题时,传统的软件安全策略往往并不可靠,而硬件的可靠性安全性方面胜过软件,它不易被攻击,面对一些安全问题将更加牢靠。一种简单易行高效的基于硬件的网络双向传递及包过滤结构,在面对外部攻击以及防止信息泄露方面,比软件防御更胜一筹。实验例:根据本发明的基于硬件的网络数据包的过滤结构,在两台电脑之间,用FPGA开发板实现此结构,并通过电脑中的ping程序测试。Ping在Windows系下是自带的一个可执行命令,利用它可以检查网络是否能够连通。这里的两台电脑的IP地址分别为:电脑1(192.168.1.169),电脑2(192.168.1.120)。先不设置过滤规则,即所有数据包都可以通过过滤转发到另一端。整个系统启动后,用电脑1去ping电脑2,结果如图8所示。由此,可以发现电脑2收到电脑1的数据包并给出回复。之后认为电脑2(192.168.1.120)这个IP是不安全的,在IP及MAC地址缓存中存入此地址(二进制格式),再次启动整个系统,用电脑1去ping电脑2,结果如图9所示。可以看到已经没有数据包在系统中传输,电脑1没收到回复,拦截成功。
附图说明
图1是本发明一种基于硬件的网络数据包的过滤结构功能示意图;
图2是本发明一种基于硬件的网络数据包的过滤结构的模块示意图;
图3是图2中所示关键字缓存示意图;
图4是图2中所示IP、MAC地址缓存示意图;
图5是数据链路层首部示意图;
图6是网络层首部示意图;
图7是本发明中包过滤模块状态机示意图;
图8是实验例中没有设置过滤规则的测试结果;
图9是实验例中设置过滤规则的测试结果。
具体实施方式
下面结合附图和具体实施例对本发明技术方案作进一步详细描述。
如图2所示,本发明一种基于硬件的网络数据包的过滤结构,包括数据包发送模块、数据包接收模块、包过滤模块、关键字缓存、IP及MAC地址缓存、数据包缓存、过滤规则配置模块,该过滤结构是一种整体对称结构。通过基于FPGA(Field-Programmable GateArray,现场可编程门阵列)的纯硬件过滤模块,对接收到的以太网数据包进行缓存并同步提取其关键字段以加快整个结构的速度,图3为关键字缓存示意图。通过对数据包进行过滤,防止有害数据包在网络中的传输,并且通过对过滤规则的配置,使用户灵活改变过滤规则以适应其应用环境,并通过FPGA硬件收发模块实现对经过过滤的数据包的传递。
本发明过滤结构实现的功能如图1所示,通过FPGA实现其功能。FPGA(Field-Programmable Gate Array),即现场可编程门阵列,使用硬件描述语言进行设计。在对FPGA进行编程配置后,在FPGA内部则生成对应的电路。该过滤结构外部与以太网互联,通过接收以太网数据包,对数据链路层首部、网络层首部、传输层首部、应用层的数据设置过滤规则,实现数据包的过滤以及对通过过滤的数据包的双向传递。下面对某些模块进行详细阐述。数据包发送与接收模块与以太网接口连接,通常以太网数据接口是一个并行的总线接口,根据设计的不同可以是8位,16位或者32位等等。以16位为例,数据包发送模块便将存储在数据包缓存中的数据以16位的形式向以太网接口发送,同理数据包接收模块接收的数据也是以16位为单位的。在数据包接收模块同时进行数据包关键字段的提取,当接收到的某个16位数据是关键字的时候,在将其发送到数据包缓存的同时,也将其发送到关键字的缓存,这样在数据包接收完毕的同时,数据包关键字的提取也已经完成,这样后续模块便不需要再从数据包缓存中提取关键字,提高速度。在互联网中,每个数据包的产生都是层层打包的,通常,应用层发送数据之后,到达传输层(TCP层),TCP层在应用层数据前面添加TCP首部并将其传输到网络层(IP)层,IP层再将IP首部添加到TCP数据包前,并将其发送到数据链路层,链路层再将链路层首部添加到IP数据包前,并在结尾添加校验字段,最后打包完成发送到网络中。各个首部包含了许多关键信息,这些信息便作为关键字段,是我们过滤规则判断的对象。在包过滤模块,只需要对这些已经提取的关键字段逐一比对,如果有任何一个关键字比对成功,则这个数据包便需要被过滤,不能进行传递,如果全部比对都没成功,则这个数据包便可以进行传递。过滤模块的状态机如图7所示。
本发明过滤结构的整体功能如下:以太网接口与以太网连接,数据接收模块接收以太网数据包,将数据包存入数据包缓存,同时提取数据包关键字段并存入关键字缓存。数据包关键字段一般都在每个数据包的各个首部当中,图5和图6分别给出数据链路层首部和网络(IP)层首部示意图。此模块中,把数据包的接收和关键字提取放在一起,虽然对数据包的接收的时候并行提取关键字段增加了少许时间,但是在后续的包过滤的时候,由于关键字段已经提取,就不需要在数据包缓存中重复提取关键字段,大幅提高速度。数据包完全存入缓存后,包过滤模块便开始根据已经配置的过滤规则进行包过滤,如果需要进行IP、MAC地址过滤,就将关键字段中IP、MAC地址与IP、MAC地址缓存中的地址进行比对,图4为IP、MAC地址缓存示意图。如果包过滤模块拦截了这个数据包,就将其丢弃,如果不拦截,即认为其安全,就控制数据包发送模块将此包发送。两端的过程,除了包过滤规则可以根据需要配置成两种不同的规则之外,其他过程两端是对称的。
这种基于硬件的结构,由于采用硬件实现数据包过滤的功能,从速度上比软件实现要快,并且安全可靠性比软件高。对于关键字段提取,虽然涉及一些协议的解析,但是通常都是针对各个层的首部,而这些首部都有其完整并且规整的统一格式,从图5和图6可以看出,其首部中关键信息往往都是以8位或者16位为单位,可以很好的契合以太网接口中数据的位数,给提取关键字段提供了方便。在进行包过滤对比关键字段时,同样以16位为单位,这样在结构内部数据传递的位宽就统一了,易于其实现,也可以同时提取多个关键字段进行并行的比对以提高速度,代价是在包过滤模块与关键字缓存模块之间的位宽增加了,电路规模也相对提高。总之这种基于硬件的过滤结构,速度快,安全性可靠性好,并且易于电路的实现,具有很高的实用性。
举例:针对一些常见的攻击手段,比如ARP(地址解析协议)攻击,TCP攻击与危险IP地址,其过程如下:首先在数据接收模块接收数据,在接收到链路层首部(图5)中的类型字段时,将类型字段存入关键字缓存。之后继续读取数据包,在读到IP首部(图6)时,将源IP地址存入关键字缓存,继续读包。在读到TCP首部是,将标志位ASK与SYN存入关键字缓存。整个数据包读完之后,包过滤模块开始进行过滤,对之前提取的关键字逐一比对,如果有某个关键字比对成功,即认为此数据包有危险,便将其清空不发送。如果是其他数据包,经过包过滤模块比对后,认为其无害,包过滤模块就会给发送模块信号,让其发送这个数据包。图8和图9是有无过滤规则结果对比图,未添加过滤规则,两台主机之间是连通的,通过ping程序验证可知主机1(IP:192.168.1.169)可以与主机2(IP:192.168.1.120)通信,如图8。添加过滤规则后,同样用ping程序测试,两个主机之间无法连通,如图9。其他过滤规则不在此一一列举。
在FPGA开发板上实现整个结构。两个以太网接口分别连接数据链路层两端,用户事先设定预期的过滤规则以及需要过滤的IP、MAC地址,以太网数据包经过以太网接口被数据包接受模块接受并存入缓存,同时提取其关键字段并存储以提高速度,包过滤模块则根据设定的过滤规则对收到的数据包进行过滤,并决定是丢弃数据包还是由发送模块发送数据包。整体结构对称,可以完成双向的数据包的传递,也可以根据不同的需要,两个包过滤模块设置成不同的过滤规则,完成单向传递等用户需要的功能。
尽管上面结合附图对本发明进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨的情况下,还可以做出很多变形,这些均属于本发明的保护之内。

Claims (3)

1.一种基于硬件的网络数据包的过滤结构,其特征在于,包括数据包发送模块、数据包接收模块、包过滤模块、关键字缓存、IP及MAC地址缓存、数据包缓存、过滤规则配置模块,该过滤结构是一种整体对称结构,该过滤结构外部与以太网互联,通过接收以太网数据包,对数据链路层首部、网络层首部、传输层首部、应用层的数据设置过滤规则,实现数据包的过滤以及对通过过滤的数据包的双向传递;其中:
数据包发送模块和数据包接收及关键字段提取模块与以太网数据接口连接,数据包发送模块将存储在数据包缓存中的数据以16位的形式向以太网接口发送;
所述数据包接收及关键字段提取模块接收的数据是以16位为单位的,所述数据包接收及关键字段提取模块在数据包接收的同时进行数据包关键字段的提取,当接收到的某个16位数据是关键字的时候,在将该16位数据发送到数据包缓存的同时,也将其发送到关键字缓存;
所述包过滤模块对上述已经提取的这些关键字段逐一比对,如果存在有比对成功的关键字,则所述包过滤模块根据已经配置的过滤规则对所接收的数据包进行包过滤,如果需要进行IP和MAC地址过滤,就将关键字段中IP和MAC地址与IP及MAC地址缓存中的地址进行比对;如果不存在比对成功的关键字,则所述包过滤模块对所接收的数据包进行传递。
2.根据权利要求1所述基于硬件的网络数据包的过滤结构,其特征在于,所述以太网数据接口是一个并行的总线接口。
3.根据权利要求1所述基于硬件的网络数据包的过滤结构,其特征在于,整体对称结构中的两个包过滤模块设置成不同的过滤规则,以实现通过过滤的数据包的单向传递。
CN201410455294.7A 2014-09-09 2014-09-09 一种基于硬件的网络数据包的过滤结构 Pending CN104219242A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410455294.7A CN104219242A (zh) 2014-09-09 2014-09-09 一种基于硬件的网络数据包的过滤结构

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410455294.7A CN104219242A (zh) 2014-09-09 2014-09-09 一种基于硬件的网络数据包的过滤结构

Publications (1)

Publication Number Publication Date
CN104219242A true CN104219242A (zh) 2014-12-17

Family

ID=52100376

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410455294.7A Pending CN104219242A (zh) 2014-09-09 2014-09-09 一种基于硬件的网络数据包的过滤结构

Country Status (1)

Country Link
CN (1) CN104219242A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104917705A (zh) * 2015-06-18 2015-09-16 国家电网公司 一种智能变电站过程层交换机的网络报文管理方法
CN113114707A (zh) * 2021-06-15 2021-07-13 南方电网数字电网研究院有限公司 一种电力芯片以太网控制器规则过滤方法
CN114968872A (zh) * 2022-05-11 2022-08-30 天津光电聚能专用通信设备有限公司 基于fpga和cpu协同工作的高速关键字过滤方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101483649A (zh) * 2009-02-10 2009-07-15 浪潮电子信息产业股份有限公司 一种基于fpga的网络安全内容处理卡
CN101599963A (zh) * 2009-06-10 2009-12-09 电子科技大学 网络疑似威胁信息筛选器及筛选处理方法
CN102098289A (zh) * 2010-12-17 2011-06-15 天津曙光计算机产业有限公司 一种基于fpga的网络安全连接封堵处理方法
US20140157405A1 (en) * 2012-12-04 2014-06-05 Bill Joll Cyber Behavior Analysis and Detection Method, System and Architecture

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101483649A (zh) * 2009-02-10 2009-07-15 浪潮电子信息产业股份有限公司 一种基于fpga的网络安全内容处理卡
CN101599963A (zh) * 2009-06-10 2009-12-09 电子科技大学 网络疑似威胁信息筛选器及筛选处理方法
CN102098289A (zh) * 2010-12-17 2011-06-15 天津曙光计算机产业有限公司 一种基于fpga的网络安全连接封堵处理方法
US20140157405A1 (en) * 2012-12-04 2014-06-05 Bill Joll Cyber Behavior Analysis and Detection Method, System and Architecture

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
芦世雄: "《基于FPGA的抗网络攻击关键技术研究》", 《中国优秀硕士学位论文全文数据库信息科技集》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104917705A (zh) * 2015-06-18 2015-09-16 国家电网公司 一种智能变电站过程层交换机的网络报文管理方法
CN113114707A (zh) * 2021-06-15 2021-07-13 南方电网数字电网研究院有限公司 一种电力芯片以太网控制器规则过滤方法
CN113114707B (zh) * 2021-06-15 2021-08-24 南方电网数字电网研究院有限公司 一种电力芯片以太网控制器规则过滤方法
CN114968872A (zh) * 2022-05-11 2022-08-30 天津光电聚能专用通信设备有限公司 基于fpga和cpu协同工作的高速关键字过滤方法

Similar Documents

Publication Publication Date Title
CN101267313B (zh) 泛洪攻击检测方法及检测装置
CN102594625B (zh) 一种apt智能检测分析平台中的白数据过滤方法及系统
CN105337991B (zh) 一种一体化的报文流查找与更新方法
CN102801659B (zh) 一种基于流策略的安全网关实现方法及装置
CN105429963A (zh) 基于Modbus/Tcp的入侵检测分析方法
CN105282169B (zh) 基于SDN控制器阈值的DDoS攻击预警方法及其系统
US7555774B2 (en) Inline intrusion detection using a single physical port
CN104363231A (zh) 一种基于单向通道的网络安全隔离与信息交换方法及系统
CN102123076A (zh) 网络安全设备的高可用性
CN104579948A (zh) 一种报文分片处理方法及装置
CN202424770U (zh) 一种网络数据安全隔离器
CN104702460A (zh) 基于SVM的Modbus TCP通讯的异常检测方法
CN104219242A (zh) 一种基于硬件的网络数据包的过滤结构
CN104717105A (zh) 一种基于ISA100.11a标准的工业传感网数据重复检测方法
CN103916379A (zh) 一种基于高频统计的cc攻击识别方法及系统
CN106657145B (zh) 一种基于通信协议和sql语法的数据库自动发现方法
Amin et al. A novel coding scheme to implement signature based IDS in IP based Sensor Networks
CN115695041B (zh) 基于sdn的ddos攻击检测与防护的方法及应用
CN116827655A (zh) 流量检测加速方法和系统、电子设备及存储介质
CN103685320A (zh) 网络数据包的特征匹配方法及装置
CN102385677B (zh) 一种统一威胁管理系统及其数据处理方法
CN105187424A (zh) 一种网络安全检测方法及装置
CN101848091A (zh) 数据查找处理方法及系统
CN104702451A (zh) 基于关键字提取策略对发送公共邮件风险监测的方法
JP7477939B2 (ja) スイッチング装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20141217