王永程,褚衍杰
(盲信號處理重點實驗室,四川 成都 610041)
?
基于社區(qū)挖掘的網(wǎng)絡業(yè)務監(jiān)控方法
王永程,褚衍杰
(盲信號處理重點實驗室,四川 成都 610041)
摘要:網(wǎng)絡業(yè)務監(jiān)控通常應用于大型企業(yè)級網(wǎng)絡監(jiān)控,通過分析企業(yè)網(wǎng)中承載的業(yè)務數(shù)據(jù),實現(xiàn)對網(wǎng)絡中業(yè)務類型及不同業(yè)務對應的終端分布情況的監(jiān)測。提出了一種基于社區(qū)挖掘的網(wǎng)絡業(yè)務監(jiān)控方法,該方法的輸入為企業(yè)網(wǎng)中IP通聯(lián)數(shù)據(jù),通過構(gòu)建IP通聯(lián)圖,并基于IP通聯(lián)圖進行社區(qū)挖掘,輸出IP通聯(lián)社區(qū),每個社區(qū)代表一種業(yè)務類型,社區(qū)內(nèi)節(jié)點代表相應的業(yè)務終端。通過對某大型跨國企業(yè)網(wǎng)絡數(shù)據(jù)的實證分析,發(fā)現(xiàn)與傳統(tǒng)業(yè)務監(jiān)控方法相比,該方法不僅能夠有效發(fā)現(xiàn)各業(yè)務網(wǎng)絡,實時監(jiān)控業(yè)務網(wǎng)絡狀態(tài),且能對網(wǎng)絡中出現(xiàn)的新業(yè)務進行預警。
關(guān)鍵詞:網(wǎng)絡監(jiān)控;社區(qū)挖掘;業(yè)務網(wǎng)絡;深度包檢測(DPI)監(jiān)測
0前言
網(wǎng)絡業(yè)務監(jiān)控一直是網(wǎng)絡管理、網(wǎng)絡監(jiān)控鄰域的重要內(nèi)容。隨著網(wǎng)絡業(yè)務越來越呈現(xiàn)出多樣化、復雜化的特點,對于網(wǎng)絡業(yè)務的精細化分和監(jiān)測成為學術(shù)界和工業(yè)界的重點研究課題。
傳統(tǒng)網(wǎng)絡業(yè)務監(jiān)控方法包括早期的端口識別[1-2]、深度包檢測(deep packet inspection,DPI)[3-6]以及基于機器學習[7-10]的業(yè)務識別、監(jiān)控方法。端口識別是IP網(wǎng)絡發(fā)展初期常見的業(yè)務監(jiān)控手段,但隨著越來越多的業(yè)務采用動態(tài)端口、端口偽裝以及端口封裝等規(guī)避網(wǎng)絡監(jiān)控的方式后,端口識別手段已經(jīng)不再適用。DPI深度包檢測[3-6]是目前應用最廣的一類方法,該方法通過分析數(shù)據(jù)包載荷中的特征字段來識別業(yè)務。大多數(shù)協(xié)議含有一個或多個用于區(qū)分不同協(xié)議的字段,且這些字段通常是公開和易于分析得到的,這樣通過檢測和匹配這些字段就可以識別相應的業(yè)務,如HTTP協(xié)議的GET,POST等字段。DPI檢測與端口識別本質(zhì)上是一樣的,都是確定性方法,區(qū)別在于前者利用的字段信息更多、更準確。然而,DPI檢測方法仍不能解決私有協(xié)議業(yè)務、加密流量下的業(yè)務識別。利用機器學習的方法來識別網(wǎng)絡業(yè)務是近幾年的研究熱點,如業(yè)務聚類研究[7],樸素貝葉斯用于業(yè)務分類[8],貝葉斯網(wǎng)絡[9]以及SVM方法[10]等。這類方法不涉及具體的業(yè)務承載內(nèi)容,只需要特定的統(tǒng)計特征,不足之處在于業(yè)務識別的性能與機器學習方法的選擇依賴性大,且往往計算復雜度較高。
本文提出利用復雜網(wǎng)絡鄰域的社區(qū)挖掘技術(shù)[11]來識別網(wǎng)絡業(yè)務的方法,該方法的輸入為網(wǎng)絡中的IP終端通聯(lián)數(shù)據(jù),基于這些通聯(lián)信息構(gòu)建IP通聯(lián)圖,通過社區(qū)挖掘技術(shù),輸出IP通聯(lián)社區(qū),每個社區(qū)代表一種業(yè)務類型,社區(qū)內(nèi)節(jié)點(IP節(jié)點)代表相應的業(yè)務終端。方法假設每個IP終端只運行一種業(yè)務類型,顯然這個假設在公眾通信網(wǎng)中往往不合適,故這個方法適用于特定行業(yè)的專用網(wǎng)絡。我們有針對性地選取了某大型跨國企業(yè)網(wǎng)絡數(shù)據(jù)進行實證分析,網(wǎng)絡終端都是該公司的辦公終端,每一終端運行的網(wǎng)絡業(yè)務不超過2種,實驗結(jié)果發(fā)現(xiàn)與傳統(tǒng)業(yè)務監(jiān)控方法相比,該方法不僅能夠有效發(fā)現(xiàn)各業(yè)務網(wǎng)絡,實時監(jiān)控業(yè)務網(wǎng)絡狀態(tài),且能對網(wǎng)絡中出現(xiàn)的新業(yè)務以及異常業(yè)務進行預警。
1網(wǎng)絡業(yè)務監(jiān)控總體框架
1.1應用場景描述
基于社區(qū)挖掘的網(wǎng)絡業(yè)務監(jiān)控涉及的應用場景如下:在公司專網(wǎng)內(nèi)的各路由器處,部署網(wǎng)絡數(shù)據(jù)采集器以及IP通聯(lián)元數(shù)據(jù)提取和預處理軟件。各采集點輸出的IP通聯(lián)記錄格式為四元組{t,IPsrc,IPdst,proto},其中,t為時間戳,表示IP包采集時刻,IPsrc為源IP地址,IPdst為目的IP地址,proto為IP包頭內(nèi)的協(xié)議字段,利用proto可以對前端輸入進行過濾,如只對TCP包所承載的業(yè)務感興趣的話,可以只分析proto=6的IP通聯(lián)記錄。
這里我們采用集中處理模式,即各采集點的通聯(lián)記錄統(tǒng)一傳輸?shù)郊刑幚碇行模?lián)元數(shù)據(jù)的采樣間隔T可由用戶自定義,由于在特定采集間隔內(nèi),具有相同源地址、目的地址以及協(xié)議類型的通聯(lián)數(shù)據(jù)包只產(chǎn)生一次記錄,且集中處理中心會進一步去重,故通聯(lián)元數(shù)據(jù)的傳輸對網(wǎng)絡帶寬的影響基本可忽略。
用戶既可以對多個時間段的IP通聯(lián)記錄分別進行網(wǎng)絡業(yè)務分析,進而監(jiān)控網(wǎng)絡業(yè)務的動態(tài)變化情況,也可以長時間持續(xù)收集IP通聯(lián)記錄,進行一次性業(yè)務分析。
1.2網(wǎng)絡業(yè)務監(jiān)控總體框架
如圖 1所示,網(wǎng)絡業(yè)務監(jiān)控總體分2大部分,第1部分是各數(shù)據(jù)采集點IP通聯(lián)元數(shù)據(jù)的采集和預處理,第2部分是集中處理中心的網(wǎng)絡業(yè)務監(jiān)控引擎,完成數(shù)據(jù)收集去重、數(shù)據(jù)篩選、IP通聯(lián)圖構(gòu)建以及社區(qū)挖掘算法,最終輸出各業(yè)務網(wǎng)絡。這里業(yè)務網(wǎng)絡指由運行相同業(yè)務的IP終端形成的通聯(lián)圖,是整個IP通聯(lián)圖的子圖。社區(qū)挖掘算法我們采用基于鄰域相似性的社區(qū)劃分方法[11],下節(jié)將對該方法進行詳細介紹。
圖1 網(wǎng)絡業(yè)務監(jiān)控總體框架Fig.1 Framework of network service monitoring
2基于鄰域相似性的社區(qū)挖掘
IP通信網(wǎng)絡具有大量的節(jié)點和復雜的連接關(guān)系,具有和其功能相適應的結(jié)構(gòu)特征,如小世界、無標度、高積聚系數(shù)和組織結(jié)構(gòu)等特性。這些特性從不同的層面揭示了網(wǎng)絡的相關(guān)特征,對于分析和判斷網(wǎng)絡的功能、演化特性具有重要的意義。業(yè)務網(wǎng)絡結(jié)構(gòu)從網(wǎng)絡通信拓撲的角度來理解就是指內(nèi)部緊密、外部松散的耦合模式,與傳統(tǒng)的社區(qū)結(jié)構(gòu)概念類似。如圖 2是一個簡單的示意圖,其中,節(jié)點表示IP,邊表示IP之間具有通信關(guān)系?;贗P通聯(lián)圖的網(wǎng)絡業(yè)務監(jiān)控就是利用IP通聯(lián)關(guān)系實現(xiàn)圖中社區(qū)結(jié)構(gòu)的自動發(fā)現(xiàn)。
圖2 具有3個社區(qū)的簡單網(wǎng)絡Fig.2 Simple network with three communities
2.1IP通聯(lián)圖的構(gòu)建及社區(qū)結(jié)構(gòu)的度量
IP之間的通聯(lián)關(guān)系是一種關(guān)系型數(shù)據(jù),可以建模為圖模型,IP作為圖中的節(jié)點,IP之間的通信關(guān)系作為圖中的邊。
設網(wǎng)絡G=(V,E),具有n個節(jié)點,m條邊,即
(1)
(2)
其鄰接矩陣A=(Aij)n×n定義為
(3)
(4)
以及
(5)
(6)
對于社區(qū)結(jié)構(gòu)未知的網(wǎng)絡,模塊度度量了網(wǎng)絡不同劃分方式的差異。因此,社區(qū)發(fā)現(xiàn)問題可在一定程度上轉(zhuǎn)化為尋求網(wǎng)絡的某個劃分,使其具有最大的模塊度取值。
2.2基于鄰域相似性的社區(qū)劃分方法
首先定義網(wǎng)絡的鄰域為
(7)
它表示與節(jié)點Vi的距離不超過α的點的集合。其中,dist(Vi,Vj)表示頂點Vi,Vj之間的最短距離。如果α=0,它只有一個點,即Vi本身Cover(Vi,α)={Vi};如果α=diameter(G),其中,diameter(G)表示圖的直徑,它包含G中全部的點,即Cover(Vi,diameter(G))=V。
α為控制參數(shù),在實驗中,α的取值從0開始逐漸增大至diameter(G),我們?nèi)∈沟媚K度為最大值時對應的α為最佳α取值。
我們的社區(qū)發(fā)現(xiàn)過程是自下而上的,開始時每個節(jié)點都屬于單獨的劃分,即
(8)
(9)
每次合并2個最相似的成員集合,不妨設合并編號為i與編號為j的非空集合,新的集合編號設為j,此時編號為i的集合為空集,可以從劃分中刪除。即按照(10)式更新劃分。
(10)
此時,按照(11)式更新合并得到的集合與其他集合的相似性
(11)
(11)中,Ni表示合并前編號為i的集合所含的頂點數(shù)目。
(12)
即第i個劃分由n+1-i個不同的集合所構(gòu)成。然后比較這些劃分的模塊度取值,將取值最大的輸出,作為社區(qū)發(fā)現(xiàn)的結(jié)果。
(13)
注意,上述過程是對特定的α來進行的。為了獲得更好的結(jié)果,我們讓α從0開始逐漸增大,來獲取最大的模塊度取值。最終的結(jié)果可表示為
(14)
Input:IPgraphG=(V,E)
4.H←newHeap()
5.for(Vi,Vj)∈E
6.Sij=sim(Vi,Vj|α)
7.H.insert(Sij,i,j)
8.endfor
9.whereH.isnotEmpty()
10.i=H.popMax(),j=H.popMax()
14.ifSik>0orSjk>0then
15. Sik=Ski=0
17. H.update(Sjk,j,k)
18. H.delete(Sik,i,k)
19.endif
20.endfor
21.ifQ>Qm
22. Qm=Q
24.endif
25.endwhile
3實驗分析
為了驗證該技術(shù)的有效性,利用某大型跨國企業(yè)網(wǎng)絡2015年1月至2015年6月的IP通聯(lián)數(shù)據(jù),構(gòu)建IP通聯(lián)圖,該圖中有5 000多個節(jié)點,數(shù)十萬條邊,應用鄰域相似性的社區(qū)劃分方法對網(wǎng)絡業(yè)務進行挖掘,圖3為實驗結(jié)果圖。從圖3中可以明顯看出幾大主要的網(wǎng)絡業(yè)務,分別用橢圓曲線標明,通過人工驗證,對主要的業(yè)務進行了標注,考慮到隱私性,專用業(yè)務用私有業(yè)務進行標示。橢圓內(nèi)的社區(qū)結(jié)構(gòu)模塊度強,與外部社區(qū)的聯(lián)系很少,說明該網(wǎng)絡中的主機(即圖中的一個節(jié)點,對應一個IP地址)大多僅負責單一的功能,如VOIP業(yè)務、FTP業(yè)務等,這符合專用網(wǎng)絡的特點。僅有少數(shù)主機與外部社區(qū)有通信聯(lián)系,說明該部分主機同時負責多種業(yè)務。另外可以發(fā)現(xiàn),在圖3的左下方存在未知業(yè)務社區(qū),這部分業(yè)務未在該網(wǎng)絡事先約定的業(yè)務列表中,屬于異?,F(xiàn)象,從而說明本文提出的網(wǎng)絡業(yè)務監(jiān)控方法能夠有效發(fā)現(xiàn)網(wǎng)絡中的新業(yè)務,而利用DPI檢測等方法將無法發(fā)現(xiàn)此類新業(yè)務,這一功能對網(wǎng)絡監(jiān)控而言具有重要意義。
圖3 網(wǎng)絡業(yè)務發(fā)現(xiàn)結(jié)果圖Fig.3 Network service discovery results
我們對圖3中的VOIP業(yè)務社區(qū)進行了細粒度的分析,對其進行放大處理,得到圖4所示的VOIP業(yè)務社區(qū)圖。從圖4中可以明顯看出,該業(yè)務的通信分成了模塊度強的2個社區(qū),經(jīng)過對2部分社區(qū)涉及到的網(wǎng)絡數(shù)據(jù)的人工分析,發(fā)現(xiàn)圖4中右方的社區(qū)屬于正常的VOIP業(yè)務通信,而左側(cè)方框內(nèi)的部分并不是真正的語音業(yè)務數(shù)據(jù)。這2種數(shù)據(jù)都采用相同特征的端口,且用于識別VOIP業(yè)務的數(shù)據(jù)包載荷中的特征字段也相同,如果采用DPI檢測方法,將無法發(fā)現(xiàn)框內(nèi)的異常業(yè)務。上述現(xiàn)象表明,本文提出的網(wǎng)絡業(yè)務監(jiān)控方法能夠發(fā)現(xiàn)異常業(yè)務通信社區(qū),從而識別出異常業(yè)務。
圖4 VOIP業(yè)務社區(qū)圖Fig.4 VOIP community result
4結(jié)論
本文提出了一種基于社區(qū)挖掘的網(wǎng)絡業(yè)務監(jiān)控方法,該方法不僅能夠有效發(fā)現(xiàn)各業(yè)務網(wǎng)絡,實時監(jiān)控業(yè)務網(wǎng)絡狀態(tài),且能對網(wǎng)絡中的異常業(yè)務及出現(xiàn)的新業(yè)務進行預警?;谀炒笮涂鐕髽I(yè)網(wǎng)絡數(shù)據(jù)的實證分析,證明了該方法的有效性。
參考文獻:
[1]張治斌,譚靜.基于K均值與決策樹的P2P流量識別研究[J].計算機工程與設計,2014,35(03):798-802.
ZHANG Z B, TAN J. Research of P2Ptraffic identification based on K-Means and decision tree[J]. Computer Engineering & Design, 2014, 35(03):798-802.
[2]KARAGIANNIS T, PAPAGIANNAKI K, FALOUTSOS M. BLINC: Multilevel Traffic Classification in the Dark[J]. ACM Sigcomm Computer Communication Review, 2005, 35(4):229-240.
[3]SEN S, WANG J. Analyzing peer-to-peer traffic across large networks[J]. IEEE/ACM Transactions on Networking(ToN), 2004, 12(2): 219-232.
[4]LUCHAUP D, DE C L, JHA S, et al. Deep packet inspection with DFA-trees and parametrized language overapproximation[C]// INFOCOM, 2014 Proceedings IEEE.
Toronto: IEEE Press, 2014:531-539.
[5]BREMLER A, HARCHOL Y, HAY D, et al. Deep packet inspection as a service[C]//Proceedings of the 10th ACM International on Conference on emerging Networking Experiments and Technologies. New York: ACM Press, 2014: 271-282.
[6]SHIN S, JUNG J, BALAKRISHNAN H. Malware prevalence in the KaZaA file-sharing network[C]//Proceedings of the 6th ACM SIGCOMM conference on Internet measurement. New York: ACM Press, 2006: 333-338.
[7]ZENG Y, CHEN T M, ZENG Y, et al. Classification of Traffic Flows into QoS Classes by Unsupervised Learning and KNN Clustering[J]. Ksii Transactions on Internet & Information Systems, 2009, 3(2):134-146.
[9]AULD T, MOORE A W, GULL S F. Bayesian neural networks for internet traffic classification[J]. Neural Networks, IEEE Transactions on, 2007, 18(1): 223-239.
[10] YUAN R, LI Z, GUAN X, et al. An SVM-based machine learning method for accurate internet traffic classification[J]. Information Systems Frontiers, 2010, 12(2):149-156.
[11] XU L, ZHENG X, YI D Y. Community Detection by Neighborhood Similarity[J]. Chinese Physics Letters, 2012, 29(4):48902-48905.
Research on network traffic monitoring based on community minging
WANG Yongcheng,CHU Yanjie
(National Key Laboratory of Blind Signal Processing,Chengdu 6100412,P.R.China)
Abstract:Network traffic monitoring is usually applied to large enterprise network in monitoring traffic types and correponding terminals through the analysis of traffic data in network. We put forward a network traffic monitoring method based on community mining, with the IP communication data as input. This method constructs IP communication graph to mining IP community output IP communities. Each community represents a traffic type where nodes represent the corresponding service terminals. Through empirical analysis of the network data of a large multinational enterprise, the method can not only effectively discover the network traffic types, monitoring the network state in real time, but also give early warnings for new emerging traffic type.
Keywords:network monitoring; community mining; service network; deep packet inspection (DPI) monitoring
DOI:10.3979/j.issn.1673-825X.2016.03.024
收稿日期:2015-11-17
修訂日期:2016-04-28通訊作者:王永程407541127@qq.com
基金項目:國家自然科學基金(61372076)
Foundation Item:The National Natural Science Foundation of China (61372076)
中圖分類號:TP393
文獻標志碼:A
文章編號:1673-825X(2016)03-0426-05
作者簡介:
王永程(1987-),男,山西人,博士研究生,主要研究方向為網(wǎng)絡測量、數(shù)據(jù)挖掘。E-mail:407541127@qq.com。
褚衍杰(1983-),男,山東人,博士研究生,工程師,主要研究方向為數(shù)據(jù)挖掘、智能信息處理。
(編輯:田海江)