当前位置:首页 > 读后感 > [BM及其改进算法性能对比研究] rsa算法 p=5 q=3
 

[BM及其改进算法性能对比研究] rsa算法 p=5 q=3

发布时间:2019-06-30 04:08:59 影响了:

  摘要:模式匹配算法在很多场合都有应用,BM算法是轻量级入侵检测系统SNORT的内置的单模式匹配算法,高速网络环境下,算法的模式匹配效率的高低在很大程度上影响入侵检测系统的性能。该文通过对BM及改进后的两种BM算法进行测试。实验结果表明,改进后的BM算法在实际匹配次数、窗口最大位移量以及跳跃发生的次数上对比BM算法具有很大的优势,有着实用价值。关键词:BM算法;匹配次数;窗口最大位移量
  中图分类号:TP301文献标识码:A文章编号:1009-3044(2012)20-4816-03
  随着网络数据流量的不断增长,对基于网络数据捕获平台的网络入侵检测系统面临着新的挑战。高速网络环境中,如何有效提高网络入侵检测系统的效率显得尤为重要。传统的linux环境下轻量级snort入侵检测系统中BM模式匹配算法在匹配效率上存在着匹配次数多、匹配失败时最大位移小等缺陷,这些多余的匹配操作将很大程度上影响入侵检测系统的效率。该文通过分析并改进BM及相关算法,并进行了实验,结果表明改进后的BM算法有着在小字节数据包的网络环境中,满足了在高速链路下网络入侵检测系统的要求。 1.1 BM算法[1]
  Bm单模匹配算法中使用字符串和模式串从左到右对齐,进行字符匹配时窗口向右滑动,匹配过程从右到左进行,匹配算法在匹配的过程中,取Skip(x)与Shift(x)中的较大者作为跳跃的距离。BM算法在执行时按照两个步骤进行:初始化处理阶段以及查找阶段。初始化处理时主要进行Badchar()和Goodsuffix()两个偏移量计算。预处理时间复杂度为O(m+s),查找时的时间复杂度为O(m·n),最好情况下的时间复杂度为O(n/m),最坏情况下时间复杂度为O(m·n)。两个偏移量的计算机流程是:Badchar()函数主要计算字符串中单个字符的偏移量,假设其中的一个字符在模式串中不止一次出现,那么它的最右边出现的偏移量是决定性的。GoodSuffix偏移量主要是计算模式串中的后缀匹配成功时指针可以向右移动的偏移量,其算法描述如下:
  设字符串长度为n,模式串长度为m,坏字符和好后缀匹配字串滑动距离用skip(x)和shift(x)表示,x表示在P串中最右边的位置,dist=max{skip(x),shift(x)}
  字符串T和模式串P从左到右对齐,匹配从模式串最右边的第一个字符开始;搜索P串中是否含有与P串中对应的T串的字符,如果没有,将P串向右滑动m的长度,如果包含有该字符,则启动Skip搜索,并计算所需要滑动的距离,然后滑动相应的距离,其中:
  ELSE
  IF(模式串末字符比较成功)
  JUMP(移动距离)=模式长度-DoubleChar[下一字符]-l;
  ELSE
  JUMP(移动距离)=Max(末字符求得跳转距离,下—字符求得跳转距离);i=新窗口匹配位置;
  j=模式串长度-l;}
  匹配失败,返回-1;}
  BM算法由sonrt.C文件获得,C语言编写主程序中调用这3个算法,编译主程序依次进行算法匹配测试,算法对比测试数据使用网络小说英文哈利波特HarryPotter.txt,从中截取文本长度10000个字符,随机取模式串50个,长度在3字符-20个字符。算法比较次数统计通过在程序中增加变量实现,算法匹配时间使用GetTickCount( )函数,单位ms。三种算法分别在字符比较次数(见图1)、算法运行时间(见图2)对比测试结果如下图所示:
  BM模式匹配算法和BM模式匹配算法1以及BM模式匹配算法2的最大位移量分别是m,m+1,m+1,在最大位移量上,相差不大,模式匹配算法的时间复杂度分别是O(n/m)、O(n/m+1)、O(n/m+1)。
  评价一个模式匹配算法的优劣主要的指标有字符匹配次数、算法的运行时间等。其中在字符比较次数上,BM改进算法2比BM算法在在各种长度的模式串中字符比较次数平均减少了25%,BM改进算法2比BM改进算法1在各种长度的模式串中字符比较次数平均减少了18%。在算法运行时间上,BM改进算法2比BM算法在各种长度的模式串中算法运行时间平均减少了37%,BM改进算法2比BM改进算法1在各种长度的模式串中算法运行时间平均减少了29.6%。
  综上所述由于在不增加空间的情况下,由于字符比较次数的减少,同时在运行时间上也有较明显优势,总体上来说,BM改进算法2比BM算法和BM改进算法1的执行效率都高,加快了模式匹配的速度。同时也说明改进后的BM算法在各种应用场合有着良好的性能。
  [1]程玉青,梅登华.入侵检测系统中BM模式匹配算法的改进[J].计算机技术与发展, 2009,19(3):120-121.
  [2]周文秋,吕岳.一种快速模式匹配算法及其在IDS中的应用[J].信息技术,2009,10(3):45-47
  [3]王浩.基于入侵检测系统snort的BM模式匹配Snort和改进[J].计算机技术,2009,2(12):38
  [4]刘胜飞,张云泉.改进的BMH模式匹配算法[J].计算机科学,2008,35(11):164-166.
  [5]孙克雷.IDS中一种快速模式匹配算法[J].安徽理工大学学报:自然科学版,2006,26(3):52-55.

猜你想看
相关文章

Copyright © 2008 - 2022 版权所有 职场范文网

工业和信息化部 备案号:沪ICP备18009755号-3