<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • 入侵檢測模式匹配算法的研究與改進

    時間:2024-08-29 21:22:38 計算機應用畢業論文 我要投稿
    • 相關推薦

    入侵檢測模式匹配算法的研究與改進

      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算法還是入侵檢測系統中主要使用的模式匹配方法,而它本身存在的一些問題使其還是有改進的余地,本文對其進行了改進,并且通過實驗結果分析得出改進以后在匹配效率的提高。以后我們還可以在檢測引擎中結合其他智能化的檢測方法,如協議分析、神經網絡、遺傳算法等,這將是我們下一步研究的重點。

    【入侵檢測模式匹配算法的研究與改進】相關文章:

    關于LZW算法的改進研究03-25

    一種改進的粒子濾波算法的研究03-07

    話音激活檢測(VAD)算法的研究11-22

    V-BLAST簡化檢測算法的研究03-07

    自適應道路檢測算法研究03-07

    一種改進的無線鏈路調度算法研究03-07

    V-BLAST檢測算法的研究及性能分析03-07

    MIMO系統中ZF及MMSE檢測算法的研究03-07

    基于中值的改進均值濾波算法在玻璃瓶檢測中的應用03-07

    主站蜘蛛池模板: 国产精品视频全国免费观看| 精品乱码久久久久久夜夜嗨| 亚洲欧美日韩精品久久| 亚洲午夜精品一级在线播放放| 99久久精品免费看国产免费| 91精品最新国内在线播放| 亚洲国产另类久久久精品小说| 久久精品无码专区免费| 97精品国产高清自在线看超| 国产综合色在线精品| 亚洲国产精品日韩专区AV| 国产精品 综合 第五页| 91精品国产91久久久久福利| 日本国产精品久久| 91精品国产成人网在线观看| 成人区人妻精品一区二区不卡视频| 亚洲国产精品综合久久网络 | 九九热这里只有国产精品| 亚洲国产人成精品| 欧美久久久久久午夜精品| 国产精品欧美亚洲韩国日本久久| 久久精品成人国产午夜| 91视频国产精品| 2022精品天堂在线视频| 亚洲色精品vr一区二区三区| 午夜精品久久久内射近拍高清| 国产精品日韩欧美在线第3页| 91无码人妻精品一区二区三区L| 国产偷亚洲偷欧美偷精品| 69SEX久久精品国产麻豆| 国产精品丝袜一区二区三区| 精品国产午夜理论片不卡| 无码人妻精品一区二区三区在线| 久99精品视频在线观看婷亚洲片国产一区一级在线 | 久久精品成人免费网站| 精品国产一区二区三区久久| 99久久精品国产高清一区二区| 国产综合色在线精品| 992tv精品视频tv在线观看 | 小辣椒福利视频精品导航| 无码精品国产VA在线观看|