亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于遺傳算法的包匹配方法與流程

文檔序號:12600620閱讀:200來源:國知局
本發(fā)明涉及網(wǎng)絡(luò)安全
技術(shù)領(lǐng)域
:,具體涉及一種基于遺傳算法的包匹配方法。
背景技術(shù)
::防火墻包匹配算法對防火墻的包轉(zhuǎn)發(fā)效率有著關(guān)鍵性的影響,近些年很多學者從不同角度提出了不同的包匹配算法,這些算法有的適應(yīng)特定的環(huán)境,在特定的環(huán)境下性能很好,有些算法綜合性能較優(yōu),但具體的某個性能表現(xiàn)一般,有的算法只能處理特定的數(shù)據(jù),有的算法需要特定的硬件支持,總之,所有的算法都有其優(yōu)秀的一面,肯定也有它的缺陷,沒有一個算法能在所有的環(huán)境下,性能都是最優(yōu)。包匹配算法根據(jù)其特點大體可分為基于軟件、基于硬件以及混雜的。現(xiàn)在常把包匹配算法分為五類:窮舉搜索匹配算法、分解匹配算法、決策樹匹配算法、元祖空間匹配算法以及基于智能的算法。這些算法都是從算法本身出發(fā)去尋找解決問題的切入點,其中分解匹配算法是把整個維度進行分割,分而治之。窮舉搜索匹配算法是以犧牲時間、效率來節(jié)省空間。決策樹匹配算法需要消耗大量的無效空間?;谥悄艿乃惴ㄟ€處于探索階段,如何把高維的問題降維成低維的問題,如何從控制論的角度去分析問題,上述各種匹配算法,理論上都有待于完善。包匹配問題面對的是128位的IP地址,16位的端口號,8位的上層協(xié)議,相異的規(guī)則數(shù)目理論上應(yīng)該是2128*2128*216*216*28,實際上網(wǎng)絡(luò)設(shè)備中的規(guī)則數(shù)遠遠小于這個數(shù),這就意味著296個特征位有許多冗余特征為,而相關(guān)特征的數(shù)目卻是一個很小的數(shù)值。因此,從包匹配問題的本身考慮,可以發(fā)現(xiàn)問題本身存在大量的冗余,可以考慮采用降維的思想去降低問題的復雜程度,附帶減少規(guī)則庫的規(guī)則間存在的冗余。目前,降維有兩類主流技術(shù):特征選擇和特征變換。特征選擇就是去尋找能有效對問題進行分類的特征子集,通過這些特征子集識別個體的能力和運用問題的所有特征識別問題的能力要存在一定程度的近似性。這種近似性也是衡量特征選擇是否確當?shù)囊罁?jù)。特征選擇就是特征壓縮,壓縮掉冗余的特征,針對具體的問題就是屬性選擇或者變量選擇。對于特征子集的選擇方法主要有隨機的方法、啟發(fā)式方法、窮舉法以及智能優(yōu)化的方法。啟發(fā)式方法運用啟發(fā)式思想去尋找特征子集,這種方法不能估算收斂時間,也不能保證尋找的特征子集是最優(yōu)的,一般尋找到的只是問題的較優(yōu)子集。窮舉法是一種思想最單純的降維策略,對于N維的特征集合,有2N種可能的搜索子集,窮舉法可以尋找到問題的最優(yōu)子集,但是從性能上講,由于開銷太大,它是不實際的一種降維方法。隨機的方法依據(jù)一定的概率來尋找問題的特征子集,性能較差。而智能優(yōu)化方法是模擬生物進化或者種群的生活規(guī)律來實現(xiàn)問題優(yōu)化,智能優(yōu)化方法一般能尋找到問題全局最優(yōu)解,能找到問題的最優(yōu)特征子集,但是也僅限于找的問題的近似解。技術(shù)實現(xiàn)要素:本發(fā)明的發(fā)明目的是解決上述技術(shù)問題,提供一種基于遺傳算法的包匹配方法,無論包規(guī)則庫在什么規(guī)模下,都能改善包匹配算法的各項性能指標。為解決上述技術(shù)問題,本發(fā)明的實施例提供一種基于遺傳算法的包匹配方法,包括如下步驟:(1)采用遺傳算法來進行特征選擇,選出相關(guān)特征位,去除冗余特征位和無關(guān)特征位;(2)對包規(guī)則庫中的規(guī)則進行分析和處理,精簡規(guī)則庫中的覆蓋規(guī)則和交叉規(guī)則。其中,上述的包匹配方法還包括步驟(2)之后的步驟(3)算法設(shè)計,具體步驟如下:(3-1)設(shè)定初始值:種群規(guī)模NP=2000,演化代數(shù)I=100,調(diào)節(jié)兩個因子的權(quán)重α=0.9,β=0.1,交叉因子Λ=10;(3-2)設(shè)置循環(huán)終止條件:演化代數(shù)I達到100或公式(1)的適應(yīng)值小于0.01;(3-3)根據(jù)公式(1)對個體進行評價,fitness=α(1/H)+βS1(1),其中,S1為染色體中基因值為1的基因數(shù)目,α、β分別為調(diào)節(jié)兩個因子的權(quán)重,α要遠大于β,否者會導致局部最優(yōu),優(yōu)選α=0.9,β=0.1;(3-4從NP中選擇兩個個體;(3-5)對選擇的兩個個體進行交叉操作;(3-6)對選擇的個體進行變異操作;(3-7)結(jié)束。其中,步驟(1)中解決如下兩個問題:(1-1)適應(yīng)值設(shè)置:把包規(guī)則庫中的規(guī)則像染色體一樣映射成一串二進制字符串,針對染色體所有基因值為0的位,把二進制串的相應(yīng)位去除;假定:染色體位數(shù)為8,群體中一個染色體為1011101,有三條規(guī)則相應(yīng)的二進制串分別為:100011111011000101010011,染色體1011101的第二位和第七位為“0”,所以把三條規(guī)則對應(yīng)的二進制串的第二位和第七位刪去,結(jié)果如下所示:100111111001001001,計算處理后的包規(guī)則庫中任何兩條規(guī)則的相異度用它們的海明距離去度量,海明距離H,按下面的公式(2)計算:其中,RN為包規(guī)則庫中的規(guī)則數(shù),hij為包規(guī)則庫中的規(guī)則i和規(guī)則j之間的海明距離;適應(yīng)值按照公式(1)計算,fitness=α(1/H)+βS1(1);(1-2)個體編碼:采用二進制編碼,染色體長度為296位,NP規(guī)模設(shè)為2000,交叉操作采用掩碼的均勻交叉,每次交叉從種群里隨機選擇兩個個體,根據(jù)掩碼的設(shè)置產(chǎn)生交叉子個體,例如:假設(shè)隨機選擇的兩父個體為:父個體1:1000111101001011父個體2:1011000111010100掩碼:0011100111011001則均勻交叉產(chǎn)生的子個體為:1000100101001101;變異采用隨機選擇Λ位進行變異,Λ隨演化代數(shù)逐漸降低,在每一代演化過程中都把最優(yōu)解保留下來,如果下一代中沒有個體的適應(yīng)值優(yōu)于上一代保留的最優(yōu)解,就用上一代保留的最優(yōu)解隨機替換下一代中的任一個體。其中,步驟(2)中,對應(yīng)規(guī)則間存在覆蓋矛盾和交叉矛盾,要對規(guī)則進行分析,有時還要對日志文件進行分析,對于防火墻規(guī)則或者路由器的訪問控制列表,要詢問系統(tǒng)管理員當時設(shè)置此規(guī)則的意圖,分析矛盾規(guī)則間處理的決策。進一步,步驟(2)中,假定一個規(guī)則定義為:X{[x1min,x2max],...[xnmin,xnmax]},覆蓋的定義為:規(guī)則X={x1,x2,...xn}和規(guī)則Y={y1,y2,...yn},如果對于任何xj,都存在yj被xj包含,那就定義為X規(guī)則覆蓋y規(guī)則;處理行為一樣的覆蓋規(guī)則為覆蓋冗余,匹配結(jié)果不一樣的覆蓋規(guī)則為覆蓋矛盾;交叉的定義為:如果規(guī)則X和規(guī)則Y在一維或多維之間存在范圍重疊的現(xiàn)象,而剩余的別的維都是xj=y(tǒng)j,那就定義規(guī)則X和規(guī)則Y重疊。本發(fā)明的上述技術(shù)方案的有益效果如下:本發(fā)明對包規(guī)則庫進行降維處理,在降維的同時對包規(guī)則庫的冗余規(guī)則進行分析和處理,無論包規(guī)則庫在什么規(guī)模下,都能改善包匹配算法的各項性能指標。附圖說明圖1為本發(fā)明實施例中4種算法預處理時間性能比較圖;圖2為本發(fā)明實施例中4種算法的包匹配時間性能比較圖;圖3為本發(fā)明實施例中4種算法的平均內(nèi)存消耗比較圖。具體實施方式為使本發(fā)明要解決的技術(shù)問題、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖及具體實施例進行詳細描述。包匹配問題面對的是128位的IP地址,16位的端口號,8位的上層協(xié)議,相異的規(guī)則數(shù)目理論上應(yīng)該是2128*2128*216*216*28,實際上網(wǎng)絡(luò)設(shè)備中的規(guī)則數(shù)遠遠小于這個數(shù),這就意味著296個特征位有許多冗余特征為,而相關(guān)特征的數(shù)目卻是一個很小的數(shù)值。表1規(guī)則表簡例表1是一個只包含源IP地址的簡單規(guī)則表示例,可以看出規(guī)則1和2異或運算的結(jié)果只有一位是1,也就是要區(qū)分這兩條規(guī)則只有這一位是相關(guān)特征,而別的127位都是無關(guān)特征,再看第1條規(guī)則和第三條規(guī)則,執(zhí)行相異運算結(jié)果只有低位的64位網(wǎng)卡地址部分是1,也就是這64位是相關(guān)特征位,第二條規(guī)則和第三條規(guī)則相異運算結(jié)果只有65位是1,同樣說明只有這65位是相關(guān)特征位。整合后,區(qū)分這三條規(guī)則的相關(guān)特征位就是65位,別的都是無關(guān)特征位。本發(fā)明基于包匹配問題本身存在大量的冗余,從而考慮采用降維的思想去降低問題的復雜程度,附帶減少規(guī)則庫的規(guī)則間存在的冗余。本發(fā)明提供一種基于遺傳算法的包匹配方法,包括如下步驟:(1)采用遺傳算法來進行特征選擇,選出相關(guān)特征位,去除冗余特征位和無關(guān)特征位;解決如下兩個問題:(1-1)適應(yīng)值設(shè)置:受MosesCharikar提出的局部敏感(simhash)思想的啟發(fā),把包規(guī)則庫中的規(guī)則像染色體一樣映射成一串二進制字符串,針對染色體所有基因值為0的位,把二進制串的相應(yīng)位去除;假定:染色體位數(shù)為8,群體中一個染色體為1011101,有三條規(guī)則相應(yīng)的二進制串分別為:100011111011000101010011,染色體1011101的第二位和第七位為“0”,所以把三條規(guī)則對應(yīng)的二進制串的第二位和第七位刪去,結(jié)果如下所示:100111111001001001,計算處理后的包規(guī)則庫中任何兩條規(guī)則的相異度用它們的海明距離去度量,海明距離H,按下面的公式(2)計算:其中,RN為包規(guī)則庫中的規(guī)則數(shù),hij為包規(guī)則庫中的規(guī)則i和規(guī)則j之間的海明距離;適應(yīng)值按照公式(1)計算:fitness=α(1/H)+βS1(1),其中,S1為染色體中基因值為1的基因數(shù)目,α、β分別為調(diào)節(jié)兩個因子的權(quán)重,α要遠大于β,否者會導致局部最優(yōu),優(yōu)選α=0.9,β=0.1。(1-2)個體編碼:采用二進制編碼,染色體長度為296位,NP規(guī)模設(shè)為2000,交叉操作采用掩碼的均勻交叉,每次交叉從種群里隨機選擇兩個個體,根據(jù)掩碼的設(shè)置產(chǎn)生交叉子個體,例如:假設(shè)隨機選擇的兩父個體為:父個體1:1000111101001011父個體2:1011000111010100掩碼:0011100111011001則均勻交叉產(chǎn)生的子個體為:1000100101001101;變異采用隨機選擇Λ位進行變異,Λ隨演化代數(shù)逐漸降低,在每一代演化過程中都把最優(yōu)解保留下來,如果下一代中沒有個體的適應(yīng)值優(yōu)于上一代保留的最優(yōu)解,就用上一代保留的最優(yōu)解隨機替換下一代中的任一個體。(2)對包規(guī)則庫中的規(guī)則進行分析和處理,精簡規(guī)則庫中的覆蓋規(guī)則和交叉規(guī)則;規(guī)則庫里面的很多規(guī)則存在冗余、矛盾的地方,假定一個規(guī)則定義為:X{[x1min,x2max],...[xnmin,xnmax]}。規(guī)則庫里規(guī)則之間可能存在覆蓋的問題。覆蓋的定義如下:規(guī)則X={x1,x2,...xn}和規(guī)則Y={y1,y2,...yn},如果對于任何xj,都存在yj被xj包含,那就定義為X規(guī)則覆蓋y規(guī)則。例如:表1規(guī)則1和規(guī)則3,規(guī)則3覆蓋規(guī)則1。遇到覆蓋的規(guī)則,如果它們的處理行為一樣,就存在規(guī)則冗余。例如,假如規(guī)則3和規(guī)則1的匹配結(jié)果都是“drop”,或都是“Access”,那規(guī)則1和規(guī)則3就存在冗余??梢詣h除規(guī)則1,如果規(guī)則3和規(guī)則1的匹配結(jié)果不一致,那就存在矛盾或沖突的問題。規(guī)則庫里的規(guī)則間存在交叉的問題,交叉的定義如下:如果規(guī)則X和規(guī)則Y在一維或多維之間存在范圍重疊的現(xiàn)象,而剩余的別的維都是xj=y(tǒng)j,那就定義規(guī)則X和規(guī)則Y重疊,對于重疊問題同樣也能存在冗余和矛盾。在上面計算hij時,設(shè)計一閾值Φ,若hij小于閾值時,就去判斷是否存在覆蓋和交叉的規(guī)則集合。存在就分別進行相應(yīng)的處理。如果覆蓋冗余,就直接刪除被覆蓋的規(guī)則,如果是交叉冗余,對其中一條規(guī)則執(zhí)行去除冗余操作。表2規(guī)則表示例對于表2中的規(guī)則1和規(guī)則2就是存在交叉冗余,可以對規(guī)則1,進行處理如下表3。表3處理冗余的結(jié)果對于規(guī)則間存在覆蓋矛盾和交叉矛盾,要對規(guī)則進行分析,有時還要對日志文件進行分析,對于防火墻規(guī)則或者路由器的訪問控制列表,要詢問系統(tǒng)管理員當時設(shè)置此規(guī)則的意圖,分析矛盾規(guī)則間處理的決策。這個不是技術(shù)層面的事。(3)算法設(shè)計,具體步驟如下:(3-1)Initialization:NP=2000,I=100,α=0.9,β=0.1,Λ=10//NP:populationsize,I:iterations,α,β:formulation(3-2)regulatoryfactors,Λ:crossoverdigits.即:設(shè)定初始值:種群規(guī)模NP=2000,演化代數(shù)I=100,調(diào)節(jié)兩個因子的權(quán)重α=0.9,β=0.1,交叉因子Λ=10;(3-2)for(terminationconditions):即:設(shè)置循環(huán)終止條件:演化代數(shù)I達到100或公式(1)的適應(yīng)值小于0.01;(3-3)assessment,根據(jù)公式(1)對個體進行評價;(3-4)selection,從NP中選擇兩個個體;(3-5)crossover,對選擇的兩個個體進行交叉操作;(3-6)mutation,對選擇的個體進行變異操作;(3-7)endfor,結(jié)束。利用本發(fā)明的技術(shù)方案,將算法ACO-PF以及基于差分演化算法和傳統(tǒng)線性搜索算法相結(jié)合的算法(RDEPM),分別和他們利用降維預處理后的算法N-ACO-PF、N-RDEPM進行對比實驗。實驗是在Linux仿真環(huán)境下實現(xiàn),在仿真實驗過程中,把防火墻的最大數(shù)據(jù)包處理速率設(shè)置為4000個/s,每一次測試時間為5s,優(yōu)化算法中的定時器初始時長設(shè)為1s。實驗中采用的操作系統(tǒng)軟件平臺:LinuxRedhat9.0,CPU采用的是Core17980XM,16G內(nèi)存;所用的仿真軟件是NS-2(NetworkSimulatorv2.27)。本實驗基礎(chǔ)數(shù)據(jù)是6組規(guī)則庫,每組又分為十小組,其中9小組是訓練數(shù)據(jù),第十小組是測試數(shù)據(jù)。在6種情況中,當規(guī)則數(shù)線性增長時,觀察相應(yīng)研究數(shù)據(jù)各自的變化趨勢。在規(guī)則數(shù)線性增長的情況下,研究四種算法的優(yōu)劣。本實驗是以iptables建立的防火墻規(guī)則為實驗數(shù)據(jù),由于防火墻的規(guī)則相比于路由器中的規(guī)則復雜一些,從而本實驗使用前者更具有說服力。實驗的結(jié)果都是運算40次的平均值。表44種算法性能比較表4展示了4種算法預處理過程的時間消耗、數(shù)據(jù)包匹配平均時間消耗、以及內(nèi)存平均消耗。從表4可知,本章提出的降維思想運用RDEPM和ACO-PF后,使RDEPM和ACO-PF性能得到大大提高。從表4以及圖1來看,降維思想運用后,使包匹配的預處理時間無論在什么規(guī)模下都改善了許多。RDEPM的作者通過數(shù)值實驗驗證得出,RDEPM的性能普遍比ACO-PF強,但是在預處理時間消耗上,NACO-PF比RDEPM強。從表4以及圖2看,在平均包匹配時間消耗上,降維思想運用后,無論在什么規(guī)模下此性能都改善了許多。從表4以及圖3顯示出,降維思想運用算法改造后,使包匹配的內(nèi)存消耗無論在什么規(guī)模下都改善了許多,而且發(fā)現(xiàn)隨著規(guī)則庫規(guī)模的增加,N-ACO-PF性能顯著增強,相對于ACO-PF而言。RDEPM的作者通過實驗告訴我們,RDEPM算法的內(nèi)存消耗性能比ACO-PF算法強了很多,但是,本數(shù)值實驗發(fā)現(xiàn)N-ACO-PF的內(nèi)存消耗能力比RDEPM強多了。本發(fā)明通過運用遺傳算法去對防火墻的包規(guī)則庫進行降維處理,在降維的同時對包規(guī)則庫的冗余規(guī)則進行分析和處理,數(shù)值實驗顯示本發(fā)明提出的思想,無論包規(guī)則庫在什么規(guī)模下,都能改善包匹配算法的各項性能指標。以上所述是本發(fā)明的優(yōu)選實施方式,應(yīng)當指出,對于本
技術(shù)領(lǐng)域
:的普通技術(shù)人員來說,在不脫離本發(fā)明所述原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應(yīng)視為本發(fā)明的保護范圍。當前第1頁1 2 3 當前第1頁1 2 3 
當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1