999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于隱馬爾可夫模型的協議識別技術

2008-04-12 00:00:00朱樹永唐朝京
現代電子技術 2008年24期

摘 要:目前的協議識別技術主要是基于端口映射或靜態報文特征匹配的。隨著網絡協議的發展,一些新的協議采用動態端口進行通信或不具有明顯的靜態報文特征,且部分協議采用了加密技術。這使得傳統的識別技術準確率大幅下降。針對傳統協議識別技術的局限性,這里提出一種基于隱馬爾可夫模型(Hidden Markov Model,HMM)的協議識別技術。它是一種基于統計特性的識別方法,選用對于加密不敏感的特征如包的大小、達到時間等來實現協議的識別。實驗結果證明,與傳統識別技術相比,它能有效地提高協議識別的準確率,并能用于加密條件下的協議識別。

關鍵詞:隱馬爾可夫模型;協議識別;特征選擇;Viterbi分類器

中圖分類號:TP393文獻標識碼:B

文章編號:1004-373X(2008)24-131-04

Technique of Protocol Identification Using Profile Hidden Markov Model

ZHU Shuyong,ZHANG Quan,TANG Chaojing

(Electronic Science and Engineering College,National University of Defence Technology,Changsha,410073,China)

Abstract:Recently,protocol identification techniques are mostly based on port mapping or static characters matching.With the development of network protocols,some new protocols use dynamic pots or messages without obvious static characters,or some protocols are encrypted.These make the accuracy with traditional identification techniques significantly reduced.Considering the limits of traditional techniques,this paper proposes a protocol identification technique using Profile Hidden Markov Model (HMM).It is based on statistic characteristics and selects those features that remain intact after encryption such as packet sizes,arrival times etc.Experiment results show that compared with traditional techniques,it can substantially increase recognition accuracy and can be applied in encrypted environment.

Keywords:hidden Markov model;protocol identification;feature selection;Viterbi classifier

1 引 言

目前常用的協議識別技術主要是基于端口映射表或靜態的報文特征來識別網絡報文所屬的協議類型[1],這樣做的依據是大多數操作系統和應用軟件都是在假定RFC被嚴格遵守的情況下編寫的。在協議規范公開的同時已經設定好該協議默認使用的通信端口并且假定使用者們都會遵守這些規范。但是近年來,隨著網絡協議的發展出現了一批新型的協議,包括SIP(Session Initiation Protocol)和P2P(Peer to Peer Protocol)協議等,它們并不采用固定協議端口,而是在協議運動過程中動態地協商端口;此外,目前各種木馬、P2P軟件為躲避檢測都采用了一些特殊的處理方式[2],主要表現在:

(1) 不使用固定通信端口進行通信;

(2) 復用公開端口進行私有協議通信(比如QQ2006版開始實用80端口并且數據報中沒有明顯特征字串);

(3) 采用已知公開協議的傳輸工具(比如迅雷采用HTTP傳輸);

(4) 有些通信業務采用了加密技術,這就使得特有的靜態特征無法進行有效的提取。

以上這些特征都給協議的準確識別帶來了困難。對于加密后的協議報文識別,某些技術將變得不再適用[3]。本文針對這些問題提出基于隱馬爾可夫模型的協議識別技術。實驗結果證明,這種技術能有效地解決上述的實際問題,比傳統的基于端口映射和靜態特征匹配協議識別技術具有較大的優越性。

2 隱馬爾可夫模型(HMM)簡介

隱馬爾可夫模型是一種用參數表示的,用于描述隨機過程統計特性的概率模型[4],它是由馬爾可夫鏈[5]演變而來的。這里所說的隨機過程,一般都是有限長的隨機序列。它可能是一維的觀察值序列或編碼符號序列,也可以是多維的矢量序列。比如一個語音段(如詞、音素或短語)可以用一串特征矢量表示,這就是一個觀察矢量序列,如果把這一串矢量逐個地進行矢量量化,每個矢量用一個編碼符號代表,這就變成了觀察符號序列。不管它是觀察矢量序列還是觀察符號序列,統稱觀察序列,記為O=o1o2…oT,它當然是一種隨機序列。一個有N個狀態(記為S1,S2,…,SN)的HMM是由三元組參數λ={π,A,B}表示的用于描述一種隨機序列的統計特性的概率模型[9],其中:

(1) π=[π1,π2,…,πN]為初始分布,用于描述觀察序列O在t=1時刻所處狀態q1屬于模型中各狀態的概率分布,即:

πi=P(q1=Si),i=1,2,…,N

它當然滿足:

∑Ni=1πi=1

(2) A={aij|i,j=1,2,…,N}為狀態轉移概率矩陣,這里只考慮一階HMM,當前所處狀態qt只與前一時刻所處狀態qt-1有關,即:

aij=P(qt=Sj|qt-1=Si,qt-2=Sk,…)

=P(qt=Sj|qt-1=Si)

它滿足:

∑Ni=1aij=1

(3) B為觀察序列O中任一觀察(它是隨機變量或隨機矢量在各狀態的觀察概率空間中的分布。這個分布有離散型HMM和連續型HMM兩類,分別相應于離散和連續,其分布分別為:

在離散HMM情況下,觀察序列為符號序列,B為一概率矩陣:

B={bj(k),j=1,2,…,N;k=1,2,…,M}

它滿足:

∑Ni=1bj=1

其中M為編碼符號集中符號的總數,在用矢量量化編碼時,M就是碼書大小。

在連續HMM情況下,觀察序列為矢量序列(設維數為D),B就是N個D維的概率密度函數的集合B={bj(O),j=1,2,…,N}

其中O為觀察矢量空間中的任一矢量,每一個密度函數都滿足歸一的條件,即:

∫Ωjbj(O)dO=1

其中Ωj表示第j狀態的觀察概率空間,它可以是矢量O所在的全空間,也可以是其中的一個子空間或一個區域。以上就是隱馬爾可夫模型的完整的定義及說明。從這個定義可以看出,HMM與有限狀態的一階馬爾可夫鏈一樣地用初始分布、狀態轉移概率矩陣描述有限長隨機序列的統計特性,但它不同于馬爾可夫鏈由每一觀察即可確知當前所處狀態,而是由每一觀察僅能估算出當前處于各種狀態的概率。這就是說,它具有雙重隨機性,是一種雙重隨機過程。

3 識別算法

本方法選用包的大小、包的到達時間等對加密不敏感的特征,利用隱馬爾可夫模型(HMM)對特征進行建模,然后采用Viterbi分類器進行分類。整個過程如圖1所示,分為3個階段:

(1) 數據采集和預處理;

(2) 特征選擇,建模和模型選擇;

(3) 實驗數據分類和識別器性能評估。

圖1 基于HMM的協議識別器建立過程

3.1 數據采集和特征選擇

對于每個截獲的TCP連接,按照每個包到達的時間順序記錄下連接中每個數據包的序列長度和到達時間。將包的到達方向編碼到包大小的符號位,因此編碼后從服務器到客戶端的包大小小于零,而從客戶端到服務器端的包大小大于零。有成果表明,對于非交互性協議,到達時間服從指數分布。而交互性的協議并不服從指數分布,其拖尾較長,可能更適合用對數正態分布。在到達時間獨立的條件下,包到達時間在不同延遲上的自相關函數會非常接近零,但是自相關函數為零并不意味著一定是獨立的。應用層協議對于一定的延遲都表現出明顯的自相關特性。有文獻研究了包大小的自相關函數,結果表明在一定的延遲上,對于同一次的網絡會話,包的大小也是明顯相關的,因此包大小也作為構建識別模型時的一個特征。

3.2 HMM建模

圖1概括了建模的整個過程。給定一個訓練序列的集合,首先構建一個初始模型,在模型中狀態鏈的長度等于訓練集中序列的平均長度(以包為單位)。每一步為所有包分配均勻概率的初始參數。

利用Baum-Welch算法迭代尋找使得訓練序列模型似然函數最大化的HMM參數。應用聚類算法重復進行上面的過程來對一個給定的協議構建多個HMM,然后將多個HMM合并為一個最終的混合模型。建立各種協議的識別模型是一項重要的工作,圖2是給出了用訓練數據構建HMM的一般過程。

圖2 對于訓練數據構建HMM的過程

如圖3所示,HMM模型的構建可以用一個從左到右模型來很好的表征,圍繞2條長的并行隱式狀態鏈,每條鏈有TCP連接中的1個狀態。每個狀態以一定的概率發射1個符號,概率對應于其在鏈中的位置,這些鏈中的狀態稱為“Match”狀態,因為其符號發射的概率分布“匹配”于包的一般結構。一般的HMM只有一個單一的“Match”狀態鏈,本方法采用2個“Match”狀態鏈。每個位置處的第二個“Match”狀態可以更好地表示TCP連接中的連續包的相關性。由于TCP利用滑動窗和握手機制來獲得可靠的數據傳輸,包的傳輸方向通常是與前一個包的傳輸方向非常相關的(正相關或負相關)。因此“Server Match”狀態匹配從客戶端到服務器端所觀察到的數據包。例如,從“Client Match”狀態到“Server Match”的轉移表示觀察到了給定協議下從客戶端到服務器的數據傳輸。

圖3 每位置兩個“Match”狀態的HMM

用于描述同一協議的TCP連接中的變化,模型對于鏈中的每個位置都有2個額外的狀態,一個稱為“Insert”,用于描述1個或多個額外包“插入”到另外的一個序列。另一個稱為“Delete”狀態,用于描述在給定位置從序列中刪除一個通常的包。實際中,“Insert”狀態表示復制包和重新傳輸,而“Delete”狀態說明網絡中的包丟失或者被檢測器去除。兩類狀態也可以表示協議棧的高層中有關協議的變化。

3.3 模型修正

為迭代找出模型的合適長度,應用一種啟發式的稱為“模型修正”的技術。模型修正是基于這樣一種思想,即鏈中所有位置都應該表示一個序列中包的相同部分,“Match”狀態應該表示一個給定位置中最典型的特性。同樣以訓練集中長度等于平均包數目的模型開始,在每次迭代中,構建和訓練當前長度的模型,然后檢查鏈中每個位置的4種狀態。如果“Insert”狀態是最可能的狀態,意味著模型將失去訓練集中的一些關鍵特性,這會在由鏈中給定位置的Match狀態表示的特性之前發生。為更好地捕捉到這種特性,將模型的長度增加1,反過來,如果“Delete”狀態是最有可能的狀態,將當前的長度減小。重復這個過程直到最大的步數或者直到當前的長度不再變化。

3.4 Viterbi分類器

基于模型的分類器將完成的任務是,給定一個觀測序列Ο和一個集合C(集合中共有k類,模型為λ=λ1,λ2,…,λk,要找出c∈C中的哪一類,即c=class(O)。第一種分類器較為簡單,根據最大似然方法判斷屬于哪一種協議。就是選擇class(O)=arg maxc(O|λc),其中arg maxc表示O中產生最大似然值的類c[7]。第二類分類器跟第一類類似,用到了著名的Viterbi分類器算法,尋找對于一個給定的輸出序列O和λ最可能的狀態序列。Viterbi算法可以用于找出最可能的狀態序列(即Viterbi路徑),與之相關的概率為Pviterbi(O,λ)=maxSP(O,S|λ)。給定一個輸出序列O,Viterbi分類器對于每個模型λi中的序列找出Viterbi路徑,選擇產生最優Viterbi路徑的模型,數學表達式可以表示為class(O)=arg maxcPviterbi(O,λc)。

3.5 多特征識別

如果將大小和時間信息融合為一個模型則可以進一步提高識別性能,采用矢量量化技術將二維包數據變換為一個符號,從而可以利用統一類型的模型和技術同時處理大小和時間信息。矢量量化技術描述如下:給定每一個包的數據<到達時間,大小>,對時間進行對數變換以減小其動態范圍,為時間和大小分配相等的權值,將<到達時間的對數,大小>歸一化到<-1,+1>區間。

所建立的HMM模型對于不同的包要按照其傳輸方向區別處理。可以將數據包分為2類:客戶端到服務器和服務器到客戶端。然后對每個矢量集獨立利用k均值聚類算法,對于集合中的數據包找出一個代表性的矢量集或者碼字。對于一個有N個碼字的碼書的量化器,隨機選擇k=N/2個矢量作為聚類的中心,然后在每次迭代中,對于每個<到達時間、大小>矢量,找出其最近的中心,為相應的聚類分配矢量。在每次迭代結束后重新計算每個中心,作為當前分配給聚類的所有矢量的均值。當從一個聚類移動到另一個聚類的矢量的一部分低于一定的門限時停止迭代。

對于2個包矢量集合聚類完成之后,將中心矢量的列表作為量化器的碼書。為量化一個包的矢量表示,找出離矢量最近的碼字,將包編碼為碼書中給定碼字的索引。在完成對于訓練序列的矢量量化之后,就可以像上面一樣構建離散的HMM,利用碼字數目作為HMM的輸出符號表。在對測試序列進行分類之前,同樣需要依據構建序列碼書的方式對其進行量化。

4 實驗結果

本實驗所采用的數據均來自于國防科技大學校園主干網,由實驗室的高速網絡采包器采集。對TRACE的詳細描述請見表1(所指的流均為雙向流)。TRACE1被用來對模型進行訓練,以得出最符合的模型參數。TRACE2被用來對該模型的識別效果進行驗證。

表1 實驗數據描述

流開始時間結束時間

TRACE12008-01-15 12:002008-01-15 13:00

TRACE22008-02-25 22:00 2008-02-25 23:00

流采集長度/B報文總數/GB流數/MB

TRACE1601.130.2

TRACE2 701.938.5

利用上述算法建模,然后用數據TRACE1對模型參數進行訓練,得到最佳的識別模型。在把數據TRACE2加密后,用傳統的基于端口映射和靜態特征匹配的方法進行識別,其準確率均在50%以下,而用該HMM模型技術進行識別,識別結果見表2。

表2 協議識別結果

協議類別

識別率/%

ftpsmtpaimhttp none

ftp83.20.00.00.016.8

smtp2.596.50.00.20.8

aim1.32.681.90.014.2

http1.30.60.594.33.3

5 結 語

針對傳統協議識別技術的局限性,提出了一種基于隱馬爾可夫模型的協議識別技術,并對如何建立準確的HMM識別模型給出了詳細的闡述。該技術不僅對傳統的通信協議具有較高的識別準確率,而且對于新的網絡應用協議如SIP,P2P協議以及未知協議等仍能進行準確的識別。由于該技術選用包的大小、傳輸方向等對于加密不敏感的特征進行建模,使它能有效地識別加密條件下的網絡應用協議。與傳統的識別技術相比,具有較好的可用性與有效性。

參考文獻

[1]Charls Writht,Fabian Monrose.HMM Profiles for Network Traffic Classification[J].VizSEC/DMSEC′04:Proceedings of the 2004 ACM Workshop on Visualization and Data Mining for Computer Security,2004:9-15.

[2]Sebasion Zander,Thuy Nguyen.Automated Traffic Classified Application Identification Using Machine Lerarning[A].In: Proceedings of the IEEE Conference on Local Computer Networks 30th Anniversary.2005.

[3]Matthew Gebski,Alex Penev,Raymond K Wong.Protocol Identification of Encrypted Network Traffic[A].In:Proceedings of the 2006 IEEE/WIC/ACM/ International Conference on Web Intelligence,2006 IEEE.2006

[4]Anonymized.HMM Profiles for Network Traffic Classification(Extended Abstract)[A].In: Proceedings of the 2004 ACM Workshop on Visualization and Data Mining for Computer Security.2004:9-15.

[5]Ye N.A Markov Chain Model of Temporal Behavior for Anomaly Detection[A].In:Proceedings of the IEEE Symposium on Security and Privacy.2002.

[6]陳亮,龔儉,徐選.應用層協議識別算法綜述[J].計算機科學,2007,34(7):73-75.

[7]Baum L E,Petrie T,Soules G.A Maximization of Technique Occurring in the Statistical Analysis of Probabilistic Functions of Markov Chains[J].Annals of Mathematical Statistics,1970,41(1):164-171.

[8]Sebanstian Zander,Thuy Nguyen,Grenville Armitage.Automated Traffic Classification and Application Identification using Machine Learning[A].In: Proceedings of the IEEE Conference on Local Computer Networks 30th Anniversary.2005.

[9]Schliep A,Schonhuth A,Steinhoff C.Using Hidden Markov Models to Analyze Gene Expression Time Course Data[J].In:Bioioformatics,2003,19(1):255-263.

[10]陳亮,龔儉,徐選.基于特征串的應用層協議識別[J].計算機工程與應用,2006,42(24):16-19,86.

[11]易克初,田斌,付強.語音信號處理[M].北京:國防工業出版社,2000.

[12]溫超,鄭雪峰,戚翔,等.基于流量分析的P2P協議識別方法的研究[J].微計算機應用,2007,28(7):714-717.

作者簡介 朱樹永 男,1984年出生,河南濮陽人,碩士研究生。研究方向為網絡信息安全。

張 權 男,副教授,碩士生導師。主要研究方向為網絡協議與密碼技術。

唐朝京 男,教授,博士生導師。主要研究方向為網絡攻防技術。

注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文

主站蜘蛛池模板: 国产一区二区三区免费观看| 国产高潮流白浆视频| 日韩欧美中文亚洲高清在线| 亚洲自偷自拍另类小说| 欧美三级日韩三级| 亚洲自偷自拍另类小说| 免费日韩在线视频| 国产91成人| 91免费国产在线观看尤物| 亚洲资源站av无码网址| 国产精品自拍露脸视频| 亚洲三级成人| 波多野结衣亚洲一区| 日韩毛片基地| 九九热在线视频| 精品久久久久久久久久久| 日韩国产亚洲一区二区在线观看| 欧美性色综合网| 欧美日韩一区二区在线播放| 日韩无码黄色网站| 色天天综合久久久久综合片| 国产69囗曝护士吞精在线视频| 成年女人18毛片毛片免费| 色亚洲成人| 99热在线只有精品| 成人精品亚洲| 久久国产精品77777| 国产成人福利在线视老湿机| 九九热精品视频在线| 2020久久国产综合精品swag| 亚洲va视频| 国产精品伦视频观看免费| 色综合久久88色综合天天提莫| 久精品色妇丰满人妻| 欧美精品不卡| 美女毛片在线| 中文字幕中文字字幕码一二区| 午夜性刺激在线观看免费| 国产精品午夜福利麻豆| 日本不卡免费高清视频| 熟妇人妻无乱码中文字幕真矢织江| 欧美国产日韩在线播放| 午夜一区二区三区| 精品成人一区二区| a毛片免费在线观看| 999国内精品久久免费视频| 亚洲精品桃花岛av在线| 亚洲欧美成aⅴ人在线观看| 搞黄网站免费观看| AV网站中文| 欧美啪啪一区| 最近最新中文字幕免费的一页| 制服丝袜国产精品| 成人国产精品一级毛片天堂| 国产交换配偶在线视频| 中文无码毛片又爽又刺激| 狠狠五月天中文字幕| 国产精品漂亮美女在线观看| 在线亚洲小视频| 2021精品国产自在现线看| AV老司机AV天堂| 美女无遮挡免费视频网站| 亚洲成人免费看| 精品国产成人三级在线观看 | 亚欧乱色视频网站大全| 丝袜久久剧情精品国产| a级毛片在线免费| 亚洲久悠悠色悠在线播放| 日韩黄色大片免费看| 久久久久亚洲精品成人网| 欧美在线伊人| 久久国产亚洲欧美日韩精品| 精品视频一区二区三区在线播| 欧美人与牲动交a欧美精品| 996免费视频国产在线播放| 亚洲首页在线观看| 亚洲91在线精品| 国产视频大全| 日韩欧美中文字幕一本 | 亚洲中文字幕av无码区| 国产大片喷水在线在线视频 | 免费激情网站|