專利名稱:無線流量判別方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)安全領(lǐng)域,特別涉及無線流量判別方法。
背景技術(shù):
802. 11無線局域網(wǎng)因其所具有的安裝便捷、使用靈活、易于擴展等優(yōu)點已經(jīng)成為 有線接入方式的重要擴展和補充。該類型網(wǎng)絡(luò)中的終端節(jié)點既可以通過以太網(wǎng)方式接入網(wǎng) 絡(luò)(即有線接入方式),也可以通過無線局域網(wǎng)方式接入網(wǎng)絡(luò)(即無線接入方式),在這種 有線接入方式、無線接入方式并存的混合接入網(wǎng)中,無線媒介的開放特性給網(wǎng)絡(luò)帶來了潛 在的安全威脅與性能威脅。通過無線接入方式接入網(wǎng)絡(luò)的終端節(jié)點所發(fā)出的數(shù)據(jù)流為無線 流量,在現(xiàn)有系統(tǒng)上最小化這種潛在危害首先要快速、準確地識別無線流量。近年來國內(nèi)外 針對無線流量識別展開了一系列的研究,所提出的方法大致可分為兩類無線端識別方法 (Over-The-Air)和有線端識別方法(Over-The-Wire)。無線端識別方法通常采用旁路監(jiān)聽的模式,通過設(shè)置無線監(jiān)測點、利用無線網(wǎng)卡 的特殊模式捕獲接收范圍內(nèi)的無線信號,捕獲無線數(shù)據(jù)幀,并解析MAC幀頭信息,獲取無線 AP的SSID、MAC地址等。這種識別方法需要大量的硬件傳感器,存在系統(tǒng)鋪設(shè)復(fù)雜、維護困 難、成本高昂等問題。有線端識別方法通過在有線鏈路上設(shè)置一個網(wǎng)絡(luò)監(jiān)控點來檢測無線流量。該方法 一般利用網(wǎng)絡(luò)數(shù)據(jù)流的某一統(tǒng)計特性來識別有線流和無線流,較無線端識別方法具有運行 方式簡單、移植性強的優(yōu)點。現(xiàn)有技術(shù)中典型的無線流量特征指標包括包間隔、ACK-pairs 包對以及Segmental TCP jitter等。在下面的參考文獻中分別對如何利用上述指標檢測 無線流量的過程做了說明。在參考文獻 l“Beyah R,Kangude S,Yu G,et al. Rogue access point detection using temporal traffic characteristics. In Proc. of GL0BEC0M ' 04. Dallas. Texas USA,2004”中提出了數(shù)據(jù)包間隔特征指標(inter-packet spacing)的識別方法。所謂數(shù)據(jù) 包間隔是指被監(jiān)控主機連續(xù)發(fā)送的兩個數(shù)據(jù)包之間的時間間隔。該方法對無線主機產(chǎn)生的 數(shù)據(jù)流和有線主機產(chǎn)生的數(shù)據(jù)流分別進行了監(jiān)控,從中提取包間隔大小,并繪制了無線流 中和有線流中的包間隔大小的經(jīng)驗累積分布曲線。通過統(tǒng)計曲線的對比,證明了有線流量 和無線流量的流統(tǒng)計特性存在差異性。在參考文獻2"Wei W, Suh K,Wang B, et al. Passive online rogue access point detection using sequential hypothesis testing with TCP ACK-Pairs. In Proc.of SIGCOMM' 07. Kyoto,Japan,2007”中提出了基于TCP ACK-pairs的識別方法。該方法中所 提到的ACK-pairs是指在一個TCP流中相繼的兩個TCP數(shù)據(jù)包所引起的兩個TCP ACK包之 間的時間間隔。該方法在檢測無線流量時,該方法在一個企業(yè)級局域網(wǎng)網(wǎng)關(guān)處捕獲的trace 文件中提取了有線流和無線流中ACK-pairs值,通過ACK-pairs的經(jīng)驗累積分布函數(shù)曲線 表明該指標在有線流量和無線流量上具有不同的統(tǒng)計概率分布,設(shè)計并實現(xiàn)了基于特征指 標的有無訓(xùn)練集合的兩種序貫假設(shè)檢驗的識別算法,從而以實現(xiàn)對無線流量的自動識別。
在參考文獻 3 "Xie G, He T, Zhang G. Rogue access point detection using segmental TCP jitter. In Proc. of WWW' 08. Bei jing,China,2008”中提出 了基于新特征 參數(shù)segmental TCPjitte的改進的序貫假設(shè)檢驗識別算法。該方法將監(jiān)控點部署在局域 網(wǎng)出口網(wǎng)關(guān)處,將捕獲的TCP數(shù)據(jù)流中的RTT時延分成了兩部分發(fā)送端到監(jiān)控點的外網(wǎng)部 分以及監(jiān)控點到接收端的內(nèi)網(wǎng)部分,通過實驗說明了內(nèi)網(wǎng)RTT時延的抖動在一定程度上表 征了 TCP數(shù)據(jù)包在不同MAC協(xié)議下排隊時延的變化,從而反映了 CSMA/CA和CSMA/⑶協(xié)議 對TCP數(shù)據(jù)流的不同影響。作者基于這一點,設(shè)計并實現(xiàn)了基于segmental TCP jitter的 改進序貫假設(shè)檢驗算法,以實現(xiàn)無線流量的自動識別。現(xiàn)有技術(shù)中雖然已經(jīng)有了多種在有線端實現(xiàn)的無線流量識別方法,但這些方法都 存在以下缺陷1、不能同時應(yīng)用于TCP/UDP數(shù)據(jù)流。參考文獻2和參考文獻3中的方法均利用了 TCP協(xié)議中的ACK確認機制,與具體的傳輸層的協(xié)議類型相關(guān)聯(lián),不具有通用性。在僅有UDP 數(shù)據(jù)流,或者TCP數(shù)據(jù)流極少的網(wǎng)絡(luò)場景中,這兩種方法將難以適用。2、指標的健壯性較差。參考文獻1中的方法僅適用于監(jiān)測點距離有線終端或無線 終端只有一跳距離的情況。由于實際應(yīng)用中,監(jiān)測點一般部署在邊界路由器上,所以當局 域網(wǎng)的拓撲結(jié)構(gòu)比較復(fù)雜,局域網(wǎng)網(wǎng)關(guān)距離終端系統(tǒng)的跳數(shù)較多時,該方法就難以適用了 ; 對于參考文獻2中的方法而言,當網(wǎng)絡(luò)干擾負載增加或者終端的TCP協(xié)議棧沒有啟動延遲 ACK機制的情況下,“合格ACK-pairs”不易獲得,當一個終端產(chǎn)生的數(shù)據(jù)流中所包含的”合 格ACK-pairs”的個數(shù)小于算法要求的最小”合格ACK-pairs”數(shù)時,該終端的接入類型就無 法判定,從而極大限制了算法的適用場景。3、無法應(yīng)用于有NAT設(shè)備的網(wǎng)絡(luò)場景。上文所述的三種方法均為基于IP識別粒 度的識別方法。以IP為識別粒度方法假定一個源IP對應(yīng)一個終端,認為源IP相同的數(shù)據(jù) 包均來自于同一終端,因此將源IP作為判決單位,對源IP相同的數(shù)據(jù)流先匯聚再判定。實 際局域網(wǎng)中普遍存在的NAT設(shè)備使以上假設(shè)難以成立。假設(shè)一個NAT設(shè)備后連接了一臺無 線AP和幾臺有線終端,無線AP與幾臺無線終端通信。以IP為識別粒度的監(jiān)測系統(tǒng)會將AP 和有線終端發(fā)出的數(shù)據(jù)包都匯聚成一個識別單位。在這種有線無線混合的數(shù)據(jù)流中,無線 流的流量特性極易被有線流所掩蓋,造成無線流的漏判。所以,以IP為識別粒度的方法無 法應(yīng)用于有NAT設(shè)備的網(wǎng)絡(luò)場景中。綜上所述,如何減少對有效特征指標的限制,從而使識別方法也適用于干擾負載 較大的場景中,以及如何定義一個與傳輸層協(xié)議類型無關(guān)的特征指標,使得識別方法對 TCP、UDP數(shù)據(jù)流均可適用都是當前亟待解決的問題。
發(fā)明內(nèi)容
本發(fā)明的目的是克服現(xiàn)有技術(shù)對有效特征指標的限制較為嚴重,不能適用于干擾 負載較大的場景的缺陷,從而提供一種無線流量判別方法。為了實現(xiàn)上述目的,本發(fā)明提供了一種無線流量判別方法,包括步驟1)、捕獲網(wǎng)絡(luò)中的數(shù)據(jù)包,將所捕獲的數(shù)據(jù)包匹配到相應(yīng)的數(shù)據(jù)流上;步驟2)、為所述數(shù)據(jù)流計算J-IAT歸一化熵值,所述J-IAT歸一化熵值用h(J)表示。所述h(J)=-∑Pilog2Pi/log2N其中J為所述數(shù)據(jù)流上相鄰的兩對非重發(fā)的數(shù)據(jù)包時間間隔△之差的絕對值,P= (Pi,P2. ..ΡΝ}是J-IAT參數(shù)向量J= {Ji;J2. ..JnI的概率向量,N是J-IAT 參數(shù)向量基數(shù);步驟3)、將步驟2)計算得到的數(shù)據(jù)流的J-IAT歸一化熵值與第一閾值加以比較, 當所述數(shù)據(jù)流的J-IAT歸一化熵值小于該第一閾值時,所述數(shù)據(jù)流為有線流量,否則為無
線流量。上述技術(shù)方案中,所述步驟2)包括步驟2-1)、記錄所述數(shù)據(jù)流中相鄰兩個數(shù)據(jù)包之間的時間間隔;步驟2-2)、將所述時間間隔與第二閾值進行比較,以判別該時間間隔的有效性;步驟2-3)、求所述數(shù)據(jù)流中兩個相繼的有效的時間間隔的差的絕對值,所得到的 結(jié)果為一個J-IAT樣本點;步驟2-4)、重復(fù)前一步驟,得到所述數(shù)據(jù)流的J-IAT序列;步驟2-5)、按照時間間隔將所述數(shù)據(jù)流的J-IAT序列的序列值分成多個小區(qū)間, 統(tǒng)計所述數(shù)據(jù)流的J-IAT參數(shù)在每個區(qū)間上的頻率,從而計算所述數(shù)據(jù)流的J-IAT歸一化熵值。上述技術(shù)方案中,所述第一閾值通過一預(yù)計算操作得到,該預(yù)計算操作包括步驟a)、確定有線節(jié)點的IP集合EIP以及無線節(jié)點的IP集合WIP ;步驟b)、將從網(wǎng)絡(luò)中捕獲的數(shù)據(jù)包匹配到相應(yīng)的數(shù)據(jù)流上;步驟c)、在得到所述的EIP與WIP后,由所述數(shù)據(jù)流的源IP確定該數(shù)據(jù)流為有線 流還是無線流;步驟d)、計算所述數(shù)據(jù)流的J-IAT歸一化熵值;步驟e)、將屬于有線流的數(shù)據(jù)流的J-IAT歸一化熵值放入有線流的J-IAT歸一化 熵值集合E-JIAT中,將屬于無線流的數(shù)據(jù)流的J-IAT歸一化熵值放入無線流的J-IAT歸一 化熵值集合W-JIAT中;步驟f)、以一定的步長遍歷W,l]閾值取值區(qū)間,在遍歷過程中利用所述的 E-JIAT、W-JIAT以及數(shù)據(jù)流的判定結(jié)果計算假陽率和真陽率,從而得到使得假陽率最低并 且真陽率最高的閾值,該閾值為所述的第一閾值。上述技術(shù)方案中,在所述的步驟1)中,所捕獲的數(shù)據(jù)包根據(jù){源IP、目的IP、源端 口、目的端口、協(xié)議類型}匹配到相應(yīng)的數(shù)據(jù)流上。本發(fā)明的優(yōu)點在于判定規(guī)則明確,復(fù)雜度低,易于實現(xiàn),且具有良好的檢測效果。
圖1 (a)為有線流的實驗場景;圖1 (b)為無線流的實驗場景;圖2(a)為有線流中的數(shù)據(jù)包到達間隔抖動散點圖;圖2(b)為無線流中的數(shù)據(jù)包到達間隔抖動散點圖3為訪問www. ict. ac. cn的有線、無線流量的J-IAT歸一化熵值比較圖;圖4為訪問誦.yahoo, com的有線、無線流量的J-IAT歸一化熵值比較圖;圖5為訪問誦.google, com的有線、無線流量的J-IAT歸一化熵值比較圖;圖6中為用于檢測數(shù)據(jù)流的檢測點在網(wǎng)絡(luò)中的安放位置;圖7為本發(fā)明在訓(xùn)練階段的流程圖;圖8為本發(fā)明在檢測階段的流程圖;圖9(a)為基本拓撲仿真實驗場景的網(wǎng)絡(luò)拓撲圖;圖9(b)為NAT仿真實驗場景的網(wǎng)絡(luò)拓撲圖;圖9(c)為交叉流量仿真實驗場景的網(wǎng)絡(luò)拓撲圖。
具體實施例方式下面結(jié)合附圖和具體實施方式
對本發(fā)明加以說明。在對本發(fā)明方法做詳細說明前,首先對本發(fā)明中所涉及的相關(guān)概念做統(tǒng)一的描 述。無線流數(shù)據(jù)流的通信雙方分別是被監(jiān)測區(qū)域中通過IEEE 802. 11無線局域網(wǎng)接 入的無線主機和監(jiān)測區(qū)域外主機的網(wǎng)絡(luò)流。J-IAT(Jitter of Inter-Arrival Time,數(shù)據(jù)包到達間隔抖動)特指在發(fā)送端為 被監(jiān)測區(qū)域內(nèi)節(jié)點、接收端為被監(jiān)測區(qū)域外節(jié)點的數(shù)據(jù)流上,相鄰的兩對非重發(fā)的數(shù)據(jù)包 時間間隔Δ之差的絕對值Ji = I Aw-AiI。歸一化熵值設(shè)離散有限狀態(tài)的隨機變量X= (X1, X2... XJ,其概率向量為P =
則X的信息熵定義為//⑷=-Σ斤loS乂。在得到X的信息熵后,為該信息熵做歸
一化操作,令h(x) = H(X)/Iog2II,這一 h(x)為X向量的歸一化熵值,其中的η為X向量的 基數(shù)。由信息熵的性質(zhì)可知,h(x)為
區(qū)間上的無量綱的值。J-IAT歸一化熵值h (J)令助_奢
J為被監(jiān)測數(shù)據(jù)流上相鄰的兩對非重
log,
發(fā)的數(shù)據(jù)包時間間隔Δ之差的絕對值,即Ji= Δ^-Δ,Ι,Ρ= (P1, P2... ΡΝ}是J-IAT參 數(shù)向量J= U1, J2...JN}的概率向量,N是J-IAT參數(shù)向量基數(shù)。h(J)的物理意義是表示 隨機變量J的隨機性。真陽率(True Positive Ratio, TPR)正確識別的無線流個數(shù)/總的無線流個數(shù)。假陽率(False Positive Ratio, FPR)誤識別為無線流的有線流個數(shù)/總的有線 流個數(shù)。以上是對本發(fā)明中所涉及到的相關(guān)概念的說明,其中的J-IAT歸一化熵值為本發(fā) 明新提出的概念。本發(fā)明通過為網(wǎng)絡(luò)中的數(shù)據(jù)流計算其J-IAT歸一化熵值來判別該數(shù)據(jù)流 是有線流還是無線流。下面對J-IAT歸一化熵值之所以能夠判別有線流和無線流的原理加 以說明。J-IAT歸一化熵值來源于對不同MAC協(xié)議所造成的流量特性差異性的分析。作為 流量特性的一個重要衡量指標——數(shù)據(jù)包到達間隔(Inter-Arrival Time,簡稱IAT)在無 線局域網(wǎng)下和以太網(wǎng)下存在顯著的差異。無線局域網(wǎng)下的數(shù)據(jù)包到達間隔主要由三部分組成平均傳輸時延、平均退避時延和平均碰撞時延;而以太網(wǎng)下的數(shù)據(jù)包到達間隔主要由 平均傳輸時延和平均等待時延兩部分構(gòu)成。在本發(fā)明中將由相繼數(shù)據(jù)包到達間隔差值的絕 對值所形成的J-IAT作為特征指標,在各類幀長字節(jié)一定、網(wǎng)絡(luò)傳輸速率一定的情況下,無 線局域網(wǎng)和以太網(wǎng)下的平均傳輸時延為規(guī)定值。因此,無線局域網(wǎng)下的J-IAT指標由平均 傳輸時延抖動和平均碰撞時延抖動組成,而以太網(wǎng)下的J-IAT指標由平均等待時延抖動組 成。由于無線信號的不穩(wěn)定性和無線頻帶的有限性,無線局域網(wǎng)中幀碰撞概率遠大于以太 網(wǎng),其數(shù)據(jù)包間隔抖動的隨機性遠大于有線網(wǎng)絡(luò)。因此本發(fā)明中用J-IAT歸一化熵值來定 量描述數(shù)據(jù)包間隔抖動的隨機性大小,進而區(qū)分有線流和無線流。下面可從理論和實驗兩 個方面驗證J-IAT歸一化熵值指標的有效性。1、理論分析通過理論分析,可證明有99. 8%的無線流量下的J-IAT歸一化熵值大于有線流量 下的J-IAT歸一化熵值,也就說明了 J-IAT歸一化熵值特征指標對于有線、無線流量是可區(qū) 分的,并且存在一個能將兩者區(qū)分開的閾值。具體推導(dǎo)如下為了簡化理論推導(dǎo),本文采用以下兩個假設(shè)條件。假設(shè)1無線局域網(wǎng)的信道狀態(tài)是理想的無包丟失、無碰撞。無線數(shù)據(jù)包時間間隔 僅受數(shù)據(jù)包傳輸時間、MAC層的CSMA/CA協(xié)議影響。
兩足
假設(shè)2有線鏈路可以用Μ/Μ/1排隊模型來描述。
推論1 (無線局域網(wǎng))在檢測點觀測到的802. 11無線流量下的J-IAT熵值大小
其中,
為最小退避窗口,CWmax為最大退避窗口。ρ為無線站點
^ ^min
平均碰撞概率(ρ e
),N為同時發(fā)送數(shù)據(jù)的站點個數(shù),PwS無線鏈路的利用率。證明根據(jù)現(xiàn)有技術(shù)中的相關(guān)文獻,在二進制指數(shù)退避過程中無線站點平均退避 窗口大小為 其中,rn = Iog2 —,Cfffflin為最小退避窗口,CWmax為最大退避窗口。P為無線站點
I^nin
平均碰撞概率(p e
),N為同時發(fā)送數(shù)據(jù)的站點個數(shù),λ為單位時間內(nèi)無線幀的到達 個數(shù),μ為無線信道的傳輸速率,可記Av= Α,則PwS無線信道的利用率。
μ由下文中的公式(8)可知,無線局域網(wǎng)下的J-IAT參數(shù)主要由兩部分組成退避時 延的抖動和碰撞時延的抖動。根據(jù)假設(shè)1,無線信道是理想狀態(tài),無數(shù)據(jù)包碰撞發(fā)生,因此可 認為J-IAT參數(shù)大小即等于退避時延的抖動值,則J-IAT熵值也即退避時延抖動值的熵值。 基于這一點,結(jié)合熵值的定義,下面給出在無碰撞情況下無線流量中J-IAT熵值的大小。根據(jù)802. 11協(xié)議標準可知,無線站點的退避窗口大小是隨機選擇的,因此可以假 設(shè)平均退避窗口大小是服從均勻分布的,則平均退避窗口抖動的取值范圍為[-示,示]。根據(jù)信息熵的定義可知,若隨機變量X服從[ab]區(qū)間上的均勻分布,即XDU[a,b],則X的信 息熵為H(X) = Iog2 (b-a)(3)將公式(2)代入公式(3),可得 以上推導(dǎo)是基于無線信道為理想狀態(tài)、無數(shù)據(jù)幀碰撞的假設(shè)前提。事實上,任何數(shù) 據(jù)包丟失、重傳行為都會進一步增加包間隔變化的隨機性,使得J-IAT的熵值變大,因此部 署在網(wǎng)關(guān)處的監(jiān)測點上所測量的無線流量中的J-IAT熵值必將大于或等于以上推導(dǎo)的無 線幀間隔在二進制指數(shù)退避階段所帶來的熵值,也就是說 將公式(4)帶入公式(5)即得證。推論2 (以太網(wǎng))在監(jiān)測點觀測到的有線流量下的J-IAT熵值大小滿足 其中ρ e為有線鏈路利用率(P e e
), Ue為有線鏈路的傳輸速率。證明已知P e為有線鏈路利用率,根據(jù)排隊論,M/M/1模型中的系統(tǒng)中等待時間 Twait的標準差為 因為產(chǎn)—==-Twaiti,并且,可認為是獨立同分布的隨機變 量,則有 根據(jù)最大信息熵原理,在均值和方差相同的條件下,當隨機變量X服從正態(tài)分布 時其信息熵最大,最大熵為 其中σ為隨機變量X的標準差。公式(9)帶入公式(10)可得有線流量中的J-IAT 熵值的最大值為 即得證。推論3 (無線局域網(wǎng)vs.以太網(wǎng))802. IlbWLAN流量中的J-IAT歸一化熵值和以 太網(wǎng)流量中的歸一化熵值滿足以下統(tǒng)計意義上的關(guān)系 證明在常見的百兆以太網(wǎng)中,有線局域網(wǎng)的傳輸速率Pe= IOOMps0在802. Ilb無線局域網(wǎng)中, 記D(p w,P e) = H(Jwlan)-H(Jethemet),將推論 1、2 帶入式中,則有
, 3lNp (l-p-p(2p)5) I1 Απ =Iog2 +ln(l-pe)+ 17.5則無線流量中的J-IAT熵值大于有線流量中的J-IAT熵值的概率為 通過簡單計算易知,當Pw>0.001 Pe< 0.999時,有D(PW,Pe)彡0,并且Pw,
Pe可認為是Wl]區(qū)間上符合均勻分布的隨機變量,則
O QQQxO QQQ 公式(14)說明了 99. 8%的802. Ilb流量的J-IAT歸一化熵值大于以太網(wǎng)流量的 J-IAT歸一化熵值,即有 =99.8%其中η是J-IAT的最大取值個數(shù),即得證。從推論3中可看出在統(tǒng)計意義上J-IAT歸一化熵值在無線流量和有線流量上的區(qū) 分閾值是存在的。2、實驗分析下面通過在實際網(wǎng)絡(luò)中的離線trace分析說明特征指標J-IAT歸一化熵值的可區(qū) 分性以及閾值的存在性。為進一步探討有線流、無線流的包間隔抖動的統(tǒng)計差異性,在圖1 (a)和圖1 (b)中 分別給出了有線流和無線流的實驗場景。在該場景中,有線客戶端、無線客戶端、服務(wù)器均 處于同一網(wǎng)段中,客戶端向服務(wù)器發(fā)起一 TCP文件傳輸連接,文件大小約41M,持續(xù)時間約 2min。由于客戶端和服務(wù)器處于同一網(wǎng)段,數(shù)據(jù)包擁塞、數(shù)據(jù)包丟失等情況基本不會發(fā)生, 可以認為兩種接入方式下的數(shù)據(jù)包間隔抖動僅受到MAC協(xié)議和交叉流量的影響。該場景中 有線流和無線流中數(shù)據(jù)包到達間隔抖動的散點圖如圖2所示,其中的圖2(a)為有線流中的 數(shù)據(jù)包到達間隔抖動散點圖,圖2(b)為無線流中的數(shù)據(jù)包到達間隔抖動散點圖。在實驗中 從trace樣本traCe_4_l中提取了 6組數(shù)據(jù)流集合,構(gòu)成了三組不同應(yīng)用下的對比實驗,以 觀察在不同的應(yīng)用下,J-IAT歸一化熵值對于有線流量和無線流量的區(qū)分情況。這三組對 比實驗分別是(1)訪問www. yahoo, com主頁的無線和有線流量;(2)訪問m ict. ac. cn 主頁的無線和有線流量;(3)訪問google, com主頁的無線有線流量。根據(jù)數(shù)據(jù)流的J-IAT歸一化熵值的提取方法,分別從以上trace中計算出每條數(shù)據(jù)流的J-IAT歸一化熵值。對于每組對比實驗,分別得到了有線流量下的J-IAT歸一化熵值 集合E-JIAT和無線流量下的歸一化熵值集合W-JIAT,其中的圖3為訪問·ι ict. cn的有 線、無線流量的J-IAT歸一化熵值比較圖,圖4為訪問mm. yahoo, com的有線、無線流量的 J-IAT歸一化熵值比較圖,圖5為訪問誦.google, com的有線、無線流量的J-IAT歸一化熵 值比較圖。在圖3-圖5中,每幅圖的橫坐標為數(shù)據(jù)流序號,縱坐標為該數(shù)據(jù)流的J-IAT歸 一化熵值。從這些圖中可以看出,縱坐標的取值范圍為W,l]之間。圖中的點代表有線流 量的J-IAT歸一化熵值,星號代表無線流量的J-IAT歸一化熵值。顯而易見,每幅圖的有線 流量的J-IAT歸一化熵值集合和無線流量的J-IAT熵值集合之間均存在著明顯的分界線。 這說明存在一個J-IAT歸一化熵值的分割閾值可將有線流量和無線流量區(qū)分開。上面分別從理論與實驗兩個角度對J-IAT歸一化熵值能夠判別有線流和無線流 的原因做了說明,下面將結(jié)合具體的實例就這一判別過程加以說明。圖6中給出了用于檢測數(shù)據(jù)流的檢測點在網(wǎng)絡(luò)中的安放位置,從圖中可以看出, 這一檢測點位于內(nèi)網(wǎng)的出口網(wǎng)關(guān)處。該檢測點包括有數(shù)據(jù)包捕獲程序,該程序用于捕獲源 IP為內(nèi)網(wǎng)IP的所有數(shù)據(jù)包。在捕獲到數(shù)據(jù)包后,檢測點根據(jù){源IP、目的IP、源端口、目的 端口、協(xié)議類型}的數(shù)據(jù)流的五元組定義計算哈希索引值,通過哈希函數(shù)將捕獲到的數(shù)據(jù) 包匹配到相應(yīng)的數(shù)據(jù)流上,從而完成了由數(shù)據(jù)包到數(shù)據(jù)流的檢測過程。在內(nèi)網(wǎng)中,用戶既可 以通過有線端接入網(wǎng)絡(luò),也可以通過無線端接入網(wǎng)絡(luò)。因此,檢測點捕獲到的數(shù)據(jù)包所對應(yīng) 的數(shù)據(jù)流既可能是通過有線端發(fā)送的也可能是通過無線端發(fā)送的,需要對數(shù)據(jù)流的來源加 以識別。對無線流量的識別可包括兩個階段,一個階段是訓(xùn)練階段,另一個階段是檢測階 段。訓(xùn)練階段的目的在于找出用于區(qū)分無線流和有線流的最優(yōu)閾值。因此,如果某一網(wǎng)絡(luò) 的最優(yōu)閾值已知,則所述的訓(xùn)練階段可以省略。另外,由于所述最優(yōu)閾值的大小通常與網(wǎng)絡(luò) 的拓撲結(jié)構(gòu)有關(guān),因此一個網(wǎng)絡(luò)的已知的最優(yōu)閾值不能照搬到另一個不同拓撲結(jié)構(gòu)的網(wǎng)絡(luò) 中,對于一新的網(wǎng)絡(luò),如果未知其最優(yōu)閾值,需要通過訓(xùn)練階段加以計算。在訓(xùn)練階段中,如圖7所示,所要完成的操作包括以下步驟步驟11)、確定兩個已知接入網(wǎng)類型的節(jié)點IP集合,分別是有線節(jié)點的IP集合 EIP, 10.21.2. 0/24網(wǎng)段,以及無線節(jié)點的IP集合WIP,如10. 103. 0. 0/16網(wǎng)段。步驟12)、將檢測點所捕獲的數(shù)據(jù)包匹配到相應(yīng)的數(shù)據(jù)流上,得到多條檢測點所接 收到的數(shù)據(jù)流。數(shù)據(jù)包如何匹配到數(shù)據(jù)流在前文對檢測點的說明中已經(jīng)有詳細描述,此處 不再重復(fù)。步驟13)、在步驟11)中得知所述的EIP和WIP后,就可以根據(jù)檢測點所接收到的 數(shù)據(jù)流的源IP知道該數(shù)據(jù)流屬于有線流還是無線流。步驟14)、計算各個數(shù)據(jù)流的J-IAT歸一化熵值。在計算數(shù)據(jù)流的J-IAT歸一化熵 值時,首先要得到該數(shù)據(jù)流的J-IAT序列。所述的J-IAT序列的生成過程包括首先記錄在檢測點上所檢測到的源站點所發(fā) 送的相鄰兩個數(shù)據(jù)包之間的時間間隔,如果所得到的時間間隔小于閾值Τκ,則這兩個相鄰 數(shù)據(jù)包之間沒有發(fā)生數(shù)據(jù)包丟失或數(shù)據(jù)包重傳,該時間間隔有效,如果所得到的時間間隔 大于所述的閾值Tk,則代表相鄰數(shù)據(jù)包之間發(fā)生了數(shù)據(jù)包丟失或數(shù)據(jù)包重傳,該時間間隔 無效。求兩個相繼的有效的時間間隔的差的絕對值,所得到的結(jié)果為一個J-IAT樣本點。重復(fù)這一操作,當數(shù)據(jù)流結(jié)束時,也就能夠得到該數(shù)據(jù)流的J-IAT序列。在得到數(shù)據(jù)流的J-IAT序列后,以一定的時間間隔將所述J-IAT序列的序列值分 成若干個小區(qū)間,統(tǒng)計該數(shù)據(jù)流的J-IAT參數(shù)在每個區(qū)間上的頻率,根據(jù)歸一化熵值的定 義,計算得到該數(shù)據(jù)流的J-IAT歸一化熵值。步驟15)、在步驟13)中已經(jīng)知道檢測點所接收到的數(shù)據(jù)流是有線流還是無線流, 而且在步驟14)中也已經(jīng)計算出數(shù)據(jù)流的J-IAT歸一化熵值,因此可以將有線流的J-IAT 歸一化熵值放入有線流的J-IAT歸一化熵值集合E-JIAT中,將無線流的J-IAT歸一化熵值 放入無線流的J-IAT歸一化熵值集合W-JIAT中。步驟16)、由于J-IAT歸一化熵值是W,l]區(qū)間內(nèi)的一個無量綱的值,因此可以以 一定的步長(如0.01)遍歷w,l]閾值取值區(qū)間,利用步驟15)中所得到的E-JIAT、W-JIAT 以及數(shù)據(jù)流的判定結(jié)果計算假陽率和真陽率,從而得到使得假陽率最低并且真陽率最高的 閾值(也就是ROC曲線上離(0,1)點最近的點所對應(yīng)的閾值),此閾值即為所求的訓(xùn)練階段 最優(yōu)閾值。通過訓(xùn)練階段得到用于區(qū)分有線流和無線流的最優(yōu)閾值后,就可以在檢測階段對 檢測點所接收到數(shù)據(jù)流是有線流還是無線流加以判別。在檢測階段,如圖8所示,所要完成的操作包括以下步驟步驟21)、檢測點捕獲數(shù)據(jù)包,將所捕獲到的數(shù)據(jù)包匹配到相應(yīng)的數(shù)據(jù)流上,得到 多條檢測點所接收到的數(shù)據(jù)流。步驟22)、計算數(shù)據(jù)流的J-IAT歸一化熵值。該步驟的具體實現(xiàn)方式與前述步驟 14)并無不同,因此不在此處重復(fù)。步驟23)、在計算出數(shù)據(jù)流的J-IAT歸一化熵值以后,就可以將該值與訓(xùn)練階段所 得到的最優(yōu)閾值加以比較,如果數(shù)據(jù)流的J-IAT序列的歸一化熵值小于最優(yōu)閾值,則將其 判定為有線流量,否則判定為無線流量。以上是對本發(fā)明利用J-IAT歸一化熵值判別數(shù)據(jù)流是有線流還是無線流的說明, 下面通過實驗證明本發(fā)明方法較現(xiàn)有技術(shù)中的相關(guān)方法具有更好的效果。圖9給出了現(xiàn)有技術(shù)中最為常見的三種仿真實驗場景的網(wǎng)絡(luò)拓撲圖,其中的圖 9(a)代表基本拓撲場景,圖9(b)代表NAT場景,圖9 (c)代表交叉流量場景(包含10%交 叉流量與70%交叉流量的場景)。在這三種場景中分別統(tǒng)計了 J-IAT方法的判定結(jié)果,并 且與參考文獻2中利用Ack-Pair指標進行檢測的方法進行對比,在下面的表1中給出了相
關(guān)評價指標的定義。
detection time, ADT 判決階段中一次判定所需的平均時間表 1 在下面的表2中給出了上述三種仿真實驗環(huán)境的實驗結(jié)果。 表2基本場景的對比實驗說明了在理想的網(wǎng)絡(luò)環(huán)境中,本發(fā)明的J-IAT方案和參考文 獻2中的ACK-pairs方案的識別效果都很好,均能夠正確識別出網(wǎng)絡(luò)中的所有無線流量和 有線流量。并且本發(fā)明的J-IAT方案由于判定規(guī)則明確,復(fù)雜度低,其平均判定時間遠低于 ACK-pairs 方案。NAT場景的實驗結(jié)果說明了以ACK-pairs為代表的基于IP識別粒度的判定方案的 不足無法判定NAT后的有線、無線數(shù)據(jù)流。因為NAT設(shè)備后的數(shù)據(jù)流具有相同的源IP,在 以IP為識別粒度的判定算法中將被聚合為同一識別對象,而此時可能包括有線數(shù)據(jù)流和 無線數(shù)據(jù)流,所以其判定結(jié)果必定是不準確的,并且無線流的流量特征往往被有線流所掩 蓋,導(dǎo)致誤判。而本發(fā)明的J-IAT方法以流為識別粒度,將 < 源IP、源端口、目的IP、目的端 口、類型〉五元組相同的數(shù)據(jù)包進行聚合,不會僅僅將源IP相同的數(shù)據(jù)包聚合,避免了上述 問題,對NAT后的有線、無線數(shù)據(jù)流仍然可以正確判定。在干擾負載實驗場景(即交叉流量場景)中,隨著干擾負載的比例增加,J-IAT方 法的無線檢測率降低幅度比ACK-pairs方法的無線檢測率降低幅度要小,這說明了 J-IAT 的抗干擾性優(yōu)于ACK-pairs方法,在干擾較大的網(wǎng)絡(luò)場景中也適用。在下面的表3中還給出了實際網(wǎng)絡(luò)的測試結(jié)果。 表3這一實驗結(jié)果表明J-IAT方法的無線檢測率高于80%,虛警率低于20%,平均判 定時間不超過ls,可應(yīng)用于實時監(jiān)控場景。最后所應(yīng)說明的是,以上實施例僅用以說明本發(fā)明的技術(shù)方案而非限制。盡管參 照實施例對本發(fā)明進行了詳細說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當理解,對本發(fā)明的技術(shù)方 案進行修改或者等同替換,都不脫離本發(fā)明技術(shù)方案的精神和范圍,其均應(yīng)涵蓋在本發(fā)明 的權(quán)利要求范圍當中。
權(quán)利要求
一種無線流量判別方法,包括步驟1)、捕獲網(wǎng)絡(luò)中的數(shù)據(jù)包,將所捕獲的數(shù)據(jù)包匹配到相應(yīng)的數(shù)據(jù)流上;步驟2)、為所述數(shù)據(jù)流計算J IAT歸一化熵值,所述J IAT歸一化熵值用h(J)表示,所述其中J為所述數(shù)據(jù)流上相鄰的兩對非重發(fā)的數(shù)據(jù)包時間間隔Δ之差的絕對值,P={P1,P2...PN}是J IAT參數(shù)向量J={J1,J2...JN}的概率向量,N是J IAT參數(shù)向量基數(shù);步驟3)、將步驟2)計算得到的數(shù)據(jù)流的J IAT歸一化熵值與第一閾值加以比較,當所述數(shù)據(jù)流的J IAT歸一化熵值小于該第一閾值時,所述數(shù)據(jù)流為有線流量,否則為無線流量。FSA00000200219700011.tif
2.根據(jù)權(quán)利要求1所述的無線流量判別方法,其特征在于,所述步驟2)包括 步驟2-1)、記錄所述數(shù)據(jù)流中相鄰兩個數(shù)據(jù)包之間的時間間隔;步驟2-2)、將所述時間間隔與第二閾值進行比較,以判別該時間間隔的有效性; 步驟2-3)、求所述數(shù)據(jù)流中兩個相繼的有效的時間間隔的差的絕對值,所得到的結(jié)果 為一個J-IAT樣本點;步驟2-4)、重復(fù)前一步驟,得到所述數(shù)據(jù)流的J-IAT序列;步驟2-5)、按照時間間隔將所述數(shù)據(jù)流的J-IAT序列的序列值分成多個小區(qū)間,統(tǒng)計 所述數(shù)據(jù)流的J-IAT參數(shù)在每個區(qū)間上的頻率,從而計算所述數(shù)據(jù)流的J-IAT歸一化熵值。
3.根據(jù)權(quán)利要求1或2所述的無線流量判別方法,其特征在于,所述第一閾值通過一預(yù) 計算操作得到,該預(yù)計算操作包括步驟a)、確定有線節(jié)點的IP集合EIP以及無線節(jié)點的IP集合WIP ; 步驟b)、將從網(wǎng)絡(luò)中捕獲的數(shù)據(jù)包匹配到相應(yīng)的數(shù)據(jù)流上;步驟c)、在得到所述的EIP與WIP后,由所述數(shù)據(jù)流的源IP確定該數(shù)據(jù)流為有線流還 是無線流;步驟d)、計算所述數(shù)據(jù)流的J-IAT歸一化熵值;步驟e)、將屬于有線流的數(shù)據(jù)流的J-IAT歸一化熵值放入有線流的J-IAT歸一化熵值 集合E-JIAT中,將屬于無線流的數(shù)據(jù)流的J-IAT歸一化熵值放入無線流的J-IAT歸一化熵 值集合W-JIAT中;步驟f)、以一定的步長遍歷W,l]閾值取值區(qū)間,在遍歷過程中利用所述的E-JIAT、 W-JIAT以及數(shù)據(jù)流的判定結(jié)果計算假陽率和真陽率,從而得到使得假陽率最低并且真陽率 最高的閾值,該閾值為所述的第一閾值。
4.根據(jù)權(quán)利要求1或2所述的無線流量判別方法,其特征在于,在所述的步驟1)中,所 捕獲的數(shù)據(jù)包根據(jù){源IP、目的IP、源端口、目的端口、協(xié)議類型}匹配到相應(yīng)的數(shù)據(jù)流上。
全文摘要
本發(fā)明提供一種無線流量判別方法,包括捕獲網(wǎng)絡(luò)中的數(shù)據(jù)包,將所捕獲的數(shù)據(jù)包匹配到相應(yīng)的數(shù)據(jù)流上;為所述數(shù)據(jù)流計算J-IAT歸一化熵值,所述J-IAT歸一化熵值用h(J)表示,所述其中J為所述數(shù)據(jù)流上相鄰的兩對非重發(fā)的數(shù)據(jù)包時間間隔Δ之差的絕對值,P={P1,P2...PN}是J-IAT參數(shù)向量J={J1,J2...JN}的概率向量,N是J-IAT參數(shù)向量基數(shù);將計算得到的數(shù)據(jù)流的J-IAT歸一化熵值與第一閾值加以比較,當所述數(shù)據(jù)流的J-IAT歸一化熵值小于該第一閾值時,所述數(shù)據(jù)流為有線流量,否則為無線流量。本發(fā)明中的判定規(guī)則明確,復(fù)雜度低,易于實現(xiàn),且具有良好的檢測效果。
文檔編號H04L29/06GK101917732SQ20101023275
公開日2010年12月15日 申請日期2010年7月16日 優(yōu)先權(quán)日2010年7月16日
發(fā)明者張廣興, 張弦, 楊建華, 謝高崗 申請人:中國科學(xué)院計算技術(shù)研究所