欢迎光临112期刊网!
网站首页 > 论文范文 > 计算机论文 > 计算机应用 > 论入侵检测系统的研究与改进

论入侵检测系统的研究与改进

日期:2023-01-24 阅读量:0 所属栏目:计算机应用


1 bm算法研究
  
  1977年boyer和moore提出了一种全新的算法,即bm算法。它的特点在于匹配过程中,模式从左向右移动,但字符比较却从右向左进行。其基本算法思想是:(1)匹配从右至左进行。(2)若匹配失败发生在pi≠ti且ti不出现在模式p中,则将模式右移直到pi位于匹配失败位置t的右边第一位(即ti 1位),若ti在p中有若干地方出现,则选择j=max{k|pk=ti}即通过skip函数计算文本字符ti失配时模式向右移动的距离,也称坏字符启发。(3)若模式后面k位与文本t中一致的部分有一部分在p中其他地方出现,则可以将p向右移动,直接使这部分对齐,且要求这一部分尽可能大,shift函数通过对已经匹配部分的考查决定模式向右移动的距离,也称好后缀启发。
  实例分析:
  第1次匹配:
  example
  here is a simple example
  第2次匹配(坏字符启发):
  example
  here is a simple example
  第3次匹配(坏字符启发):
  example
  here is a simple example
  第4次匹配(好后缀启发):
  example
  here is a simple example
  第5次匹配(坏字符启发):
  example
  here is a simple example
  bm算法预处理时间复杂度为o(m s),空间复杂度为o(s),s是与p, t相关的有限字符集长度,搜索阶段时间复杂度为o(mn)。最坏情况下要进行3n次比较,最好情况下的时间复杂度为o(n/m)。
  
  2 改进bm匹配算法研究
  
  2.1 改进的意义
  综合分析会发现虽然bm算法考虑较全面,但它使用了两个数组,预处理时间开销较大,于是在bm算法基础上我们对其进行了简化,使得算法更简单、高效,提出了一种改进的bm算法。通过实验表明改进的模式匹配算法能减少比较次数,有效地提高了匹配效率。
  2.2 改进的原理
  在bm算法匹配过程中,常出现模式的一部分后缀与文本匹配,而模式的前缀却不匹配,在这种情况下,就进行了一些不必要的比较。因此在bmgj算法中,我们在对模式串与文本字符串进行匹配时采用从模式两端向中间位置交替的匹配顺序,模式匹配先从模式最右端pm开始进行。若pm匹配不成功,则通过skip函数计算出模式向右移动的距离,这与bm算法中坏字符启发思想相同;若pm匹配成功,则比较模式p1与文本中相应的字符。若p1匹配不成功,则考查文本中与模式中pm下一个字符对齐的字符,若该字符不出现在模式中,则模式可以向右移动m 1个位置,若该字符出现在模式中,则计算其skip函数,然后将模式向右移动相应的长度;若p1匹配成功,则按上述方法依次对pm-1,p2,pm-2,p3,…进行匹配,依此类推,直到匹配过程完成。实例分析:

  第1次匹配:
  example
  here is a simple example
  第2次匹配:
  example
  here is a simple example
  第3次匹配(传统bm算法匹配中,此遍比较需要从右端比较5次才可以找到一个坏字符,但对于改进后的算法,只比较两次就可以找到一个坏字符):
  example
  here is a simple example
  第4次匹配:
  example
  here is a simple example
  第5次匹配:
  example
  here is a simple example
  在上例中,我们可以看出用传统的bm算法匹配共进行了4次移动15次比较,用改进的bm算法匹配共进行了4次移动12次比较,匹配次数减少。
  改进后的bm算法的预处理时间复杂度为o(m s),空间复杂度为o(s),搜索阶段时间复杂度为o(mn)。该算法在比较右端字符失配时采用bm坏字符启发的思想,在比较了左端字符失配时采用对文本中与模式最右端对齐的下一个字符进行考查的方法,使得大多数情况下具有比bm算法更大的右移长度,从而有更好的平均性能。
2.3 改进的实验分析
  我们所做的实验软件环境主要是:采用的操作系统是microsoft windows xp professional(service pack2),使用jbuilder2006编译工具,所用jdk为jdk1.6。
  为了对各算法的性能进行比较次数和比较用时的测试,我们随机地选取了一段纯英文自然语t文本和模式串p,在同一台计算机上用不同算法进行3万、5万、10万次循环匹配,分别统计各算法循环匹配所进行的字符比较次数和总消耗的时间。
  文本串:t=one day one pig went to a bar and the bar tender asked what can i get for you today and the pig said five beers. he drank up all the beer and then he asked were the bathroom was the bar tender said straight down the hall to the left. then three more pigs came in and the bar tender asked what can i get you today.
  模式串:p= i get you today.
  测试结果下表1所示:

  经过多次匹配实验,结果显示改进后的bm算法进行模式匹配时字符比较次数、匹配时间均少于原bm算法,匹配效率有所提高。
  
  3 结语
  
  随着网络规模的不断扩大和入侵手段的不断更新,对入侵检测也提出了更高的要求。目前,bm算法还是入侵检测系统中主要使用的模式匹配方法,而它本身存在的一些问题使其还是有改进的余地,本文对其进行了改进,并且通过实验结果分析得出改进以后在匹配效率的提高。以后我们还可以在检测引擎中结合其他智能化的检测方法,如协议分析、神经网络、遗传算法等,这将是我们下一步研究的重点。
  
  参考文献
  [1]?谷晓钢,江荣安,赵铭伟.snort的高效规则匹配算法[j].计算机工程,2006,(18).
  [2]?唐正军.入侵检测技术导论(第一版)[m].北京:机械工业出版社,2004.
  [3]?边肇祺,阎平凡,杨存荣.模式识别(第一版)[m].北京:清华大学出版社,1988.
  [4]?郭军,笹尾勤.入侵检测中模式匹配算法的fpga实现[j].科技创新导报,2007,(14).

本文链接:http://www.qk112.com/lwfw/jsjlw/jisuanjiyingyong/243995.html

论文中心更多

发表指导
期刊知识
职称指导
论文百科
写作指导
论文指导
论文格式 论文题目 论文开题 参考文献 论文致谢 论文前言
教育论文
美术教育 小学教育 学前教育 高等教育 职业教育 体育教育 英语教育 数学教育 初等教育 音乐教育 幼儿园教育 中教教育 教育理论 教育管理 中等教育 教育教学 成人教育 艺术教育 影视教育 特殊教育 心理学教育 师范教育 语文教育 研究生论文 化学教育 图书馆论文 文教资料 其他教育
医学论文
医学护理 医学检验 药学论文 畜牧兽医 中医学 临床医学 外科学 内科学 生物制药 基础医学 预防卫生 肿瘤论文 儿科学论文 妇产科 遗传学 其他医学
经济论文
国际贸易 市场营销 财政金融 农业经济 工业经济 财务审计 产业经济 交通运输 房地产经济 微观经济学 政治经济学 宏观经济学 西方经济学 其他经济 发展战略论文 国际经济 行业经济 证券投资论文 保险经济论文
法学论文
民法 国际法 刑法 行政法 经济法 宪法 司法制度 法学理论 其他法学
计算机论文
计算机网络 软件技术 计算机应用 信息安全 信息管理 智能科技 应用电子技术 通讯论文
会计论文
预算会计 财务会计 成本会计 会计电算化 管理会计 国际会计 会计理论 会计控制 审计会计
文学论文
中国哲学 艺术理论 心理学 伦理学 新闻 美学 逻辑学 音乐舞蹈 喜剧表演 广告学 电视电影 哲学理论 世界哲学 文史论文 美术论文
管理论文
行政管理论文 工商管理论文 市场营销论文 企业管理论文 成本管理论文 人力资源论文 项目管理论文 旅游管理论文 电子商务管理论文 公共管理论文 质量管理论文 物流管理论文 经济管理论文 财务管理论文 管理学论文 秘书文秘 档案管理
社科论文
三农问题 环境保护 伦理道德 城镇建设 人口生育 资本主义 科技论文 社会论文 工程论文 环境科学