1 / 6
文档名称:

一种基于FPGA的报文内容过滤算法.doc

格式:doc   大小:114KB   页数:6页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

一种基于FPGA的报文内容过滤算法.doc

上传人:sssmppp 2020/9/4 文件大小:114 KB

下载得到文件列表

一种基于FPGA的报文内容过滤算法.doc

相关文档

文档介绍

文档介绍:一种基于FPGA的报文内容过滤算法FH礼明杨奕王滨华(江南计算技术研究所,江苏无锡211083)摘要报文内容过滤技术是防火墙、入侵检测系统和情报信息综合系统的重要技术之一。本文提出的算法充分发挥了硕件并行运算和流水线的优势,采用并行移位的匹配模块结构展宽了处理带宽,使用BloomFilter技术加速自动状态机转换,同时设计了高效的Hash硬件电路,提高了算法性能。。关键字报文内容过滤;ITGA;BloomMiter;自动状态机所谓报文内容过滤,顾名思义是对11>包数据段的载荷进行过滤,过滤规则是字符串形式的数据内容。以IDS系统为例,管理员根据所学握的入侵情况事先为系统设定入侵规则,这些规则的一个重要组成部分就是IP数据载荷的某些内容,具体表现为字符串。当系统接收到一个IP包后,IDS的内容过滤部分就会用自身的系统算法将规则库屮的字符串逐一和包的内容匹配,一旦匹配了某个字符串,则证明匹配了相应的规则。随着网络信息复杂化以及安全需求多样化,对报文内容过滤的需求也更加迫切。首先从安全角度來看,防火墙和入侵监测系统急盂高效率的报文内容过滤算法。山于当今的入侵行为和攻击方式更具有复杂性,主要表现在数据载荷的内容中出现特征字符串,例如蠕虫病毒“Niindd”、“CodeRed”、"Slanuner"都包含特殊的字符串:从网络应用來看,应用于深度报文分类的路山设备、流最控制等同样需要获得并且对IP数据内容分类,例如一些多媒体数据、P2P数据都含有特定的字符串信息作为本身的标识;另外从信息获取的角度來看,技侦领域和数据挖掘如何从海最数据屮发掘令用信息和情报资源,同样需要内容过滤。*,的多模式匹配算法(即一次搜索查找可以判定多个字符串匹配问题)。简单地说,AC算法使用了有限自动机的结构來接收并存储规则库中所有的字符串。自动机是结构化的,这样每个前缀都可用唯一的状态來标识,甚至是那些多个模式的前缀,这样复杂的前缀就可以简单的转化为状态机中的一个状态。当文木T中下一个字符不是模式中预期的下个字符中的一个时,会有一条失败链指向那个状态,代表最长的模式前缀,同时也是当前状态的相应后缀。在实践中,我们设定三个函数:状态转移函数goto()、成功匹配输出函数output()、匹配失败跳转函数failure()。,对AC算法进行了改进°。算法在自动状态机思想的基础上,应用了 算法。的跳转思想,即利用了匹R!过程中匹fi!失败的信息,跳过尽可能多的字符。实现了快速的多模式匹配算法。在匹配的过程中,同样使用goto()函数转移当前状态,在找到匹配结果之后output()函数输出成功信息。而在匹配失败的时候,使用skip函数大幅度划文本T,减少goto()函数的调用次数,从而提高过滤效率。3BloomFilter算法BloomKilter法最初多用于数据库存储和查询结构,近年來也应用于IP包内容过滤等领域。BloomFilter算法的原理是找到k个hash函数,其值域都是{1,2,…,m}同时设定一个模式矢量其长度为m。 对于规则库P中的每个模式,计算hashi(p