辛 靜, 徐家品
(四川大學(xué) 電子信息學(xué)院,四川 成都 610064)
NGN是基于IP的多業(yè)務(wù)網(wǎng)絡(luò),P2P業(yè)務(wù)[1-2]、流媒體等新業(yè)務(wù)的大量出現(xiàn)對下一代網(wǎng)絡(luò)的流量模型和應(yīng)用模式產(chǎn)生了很大的沖擊[3]。在傳統(tǒng)網(wǎng)絡(luò)逐步向多業(yè)務(wù)網(wǎng)絡(luò)演進(jìn)的過程中,監(jiān)管者、運(yùn)營商以及最終用戶都對網(wǎng)絡(luò)的可管可控能力提出了差異化的要求,業(yè)務(wù)識別與控制技術(shù)營運(yùn)而生。作為當(dāng)前國內(nèi)外研究的一項(xiàng)熱點(diǎn),業(yè)務(wù)識別與控制技術(shù)得到了廣泛的關(guān)注、取得了迅猛的發(fā)展,并且在網(wǎng)絡(luò)的各個層面產(chǎn)生了許多相對獨(dú)立的用戶控制、網(wǎng)絡(luò)控制、業(yè)務(wù)控制技術(shù)[4]。
基于網(wǎng)絡(luò)的業(yè)務(wù)識別技術(shù)并不是簡單地只對數(shù)據(jù)鏈路層和網(wǎng)絡(luò)層進(jìn)行區(qū)分,而是以網(wǎng)絡(luò)業(yè)務(wù)流為對象,將眾多復(fù)雜的網(wǎng)絡(luò)流按照應(yīng)用層業(yè)務(wù)進(jìn)行識別與分類,供后續(xù)的QoS進(jìn)行處理。
目前業(yè)務(wù)流識別技術(shù)的一大限制是:識別能力范圍只局限在單一設(shè)備上,所有要被識別的業(yè)務(wù)關(guān)鍵報文必須經(jīng)過此設(shè)備,一旦報文沒有經(jīng)過或者丟失,則會造成識別不出或者誤識別該業(yè)務(wù)流。所以未來的業(yè)務(wù)識別技術(shù)應(yīng)該是基于網(wǎng)絡(luò)形式、動態(tài)的識別,而不依賴于某一設(shè)備,不依賴于時間,也不依賴于具體的網(wǎng)絡(luò)范圍。
現(xiàn)在了解TCP/IP體系結(jié)構(gòu)的基礎(chǔ)上,提出了一種基于IP網(wǎng)絡(luò)的網(wǎng)絡(luò)化業(yè)務(wù)流識別系統(tǒng)模型,并進(jìn)行了詳細(xì)設(shè)計(jì)。
現(xiàn)提出的業(yè)務(wù)流識別系統(tǒng)模型如圖1所示。為了節(jié)約成本,將業(yè)務(wù)識別節(jié)點(diǎn)分布于網(wǎng)絡(luò)的邊緣,在網(wǎng)絡(luò)的邊緣節(jié)點(diǎn)上實(shí)現(xiàn)基于網(wǎng)絡(luò)化的業(yè)務(wù)識別系統(tǒng)。每個識別節(jié)點(diǎn)具有高效的業(yè)務(wù)流識別能力,能夠獨(dú)立地識別經(jīng)過該節(jié)點(diǎn)的報文,識別率接近 100%。同時,如果要被識別的業(yè)務(wù)關(guān)鍵報文沒有經(jīng)過該識別節(jié)點(diǎn)或者丟失,那么該識別節(jié)點(diǎn)會向整個業(yè)務(wù)識別網(wǎng)絡(luò)廣播,請求其他識別節(jié)點(diǎn)協(xié)助識別。這樣,該系統(tǒng)就實(shí)現(xiàn)了動態(tài)的識別,進(jìn)一步提高了識別率。
圖1 基于邊緣節(jié)點(diǎn)的網(wǎng)絡(luò)化業(yè)務(wù)識別系統(tǒng)
要實(shí)現(xiàn)圖1所示的系統(tǒng)需要重點(diǎn)考慮三個方面的要求。①每個識別節(jié)點(diǎn)上應(yīng)該具有基于模型化的識別方法;②每個識別節(jié)點(diǎn)可以將該節(jié)點(diǎn)的識別信息實(shí)時發(fā)送到整個網(wǎng)絡(luò)識別系統(tǒng),同時不能使報文流量過大而造成網(wǎng)絡(luò)擁塞;③各個識別節(jié)點(diǎn)間區(qū)分出識別信息的冗余度,快速高效地組合成該節(jié)點(diǎn)所需要的業(yè)務(wù)信息。
對于第一個要求,目前在業(yè)務(wù)流識別這一領(lǐng)域,主要有深度報文檢測(DPI)和深度流行為檢測(DFI)兩大技術(shù),同時也有一些業(yè)務(wù)流識別通用模型被提出并加以實(shí)現(xiàn)。在此基礎(chǔ)上,設(shè)計(jì)出適合于圖1所示的識別節(jié)點(diǎn)的模型化的識別方法。
對于第二個要求,識別節(jié)點(diǎn)之間信息的交互。主要設(shè)計(jì)思路是:如果某一識別節(jié)點(diǎn)上產(chǎn)生了無法識別的報文,則該識別節(jié)點(diǎn)會馬上將該報文的相關(guān)信息向其他識別節(jié)點(diǎn)進(jìn)行廣播,請求其它識別節(jié)點(diǎn)協(xié)助識別該報文。其它識別節(jié)點(diǎn)在接收到請求后會查詢是否有與該報文相關(guān)的信息,若有,則會響應(yīng)該節(jié)點(diǎn),向該節(jié)點(diǎn)發(fā)送相關(guān)報文。
對于最后一個要求,對識別信息的處理。該系統(tǒng)主要是將不能識別出的報文和接收到的從其它節(jié)點(diǎn)發(fā)送來的相關(guān)報文依據(jù)特征信息進(jìn)行重組。然后再次進(jìn)行識別。
識別節(jié)點(diǎn)組成如圖 2所示。識別處理模塊是整個識別節(jié)點(diǎn)的核心,用來進(jìn)行業(yè)務(wù)識別、區(qū)分識別信息冗余度、組合該節(jié)點(diǎn)所需業(yè)務(wù)信息等;通信模塊用來發(fā)送請求、響應(yīng)請求,發(fā)送該節(jié)點(diǎn)產(chǎn)生的識別信息,接收其他節(jié)點(diǎn)發(fā)送過來的識別信息,發(fā)送相關(guān)報文,接收相關(guān)報文。
圖2 識別節(jié)點(diǎn)的結(jié)構(gòu)
業(yè)務(wù)識別通過對業(yè)務(wù)流量從數(shù)據(jù)鏈路層到應(yīng)用層的報文深度檢查分析,依據(jù)協(xié)議類型、端口號、特征字符串和流量行為特征等參數(shù),獲取業(yè)務(wù)類型、業(yè)務(wù)狀態(tài)、業(yè)務(wù)內(nèi)容和用戶行為等信息,并進(jìn)行分類統(tǒng)計(jì)和存儲。業(yè)務(wù)識別是一個相對復(fù)雜的過程,需要多個功能模塊的協(xié)同工作,工作過程如圖3所示,簡要描述如下。
圖3 業(yè)務(wù)流識別器
業(yè)務(wù)識別模塊采用多通道識別處理,通過對流二元素(第一個元素:源端IP地址及端口號;第二個元素:目的端IP地址及端口號)的Hash算法,將網(wǎng)絡(luò)流量均勻的分配到多個處理通道中。多處理通道并行執(zhí)行網(wǎng)絡(luò)流量的深度報文檢查,獲取網(wǎng)絡(luò)流量的特征信息,并與業(yè)務(wù)識別特征庫中的特征進(jìn)行比對。將匹配結(jié)果送往業(yè)務(wù)識別模塊,并標(biāo)識特定網(wǎng)絡(luò)流量。如果存在多個匹配結(jié)果,選取優(yōu)先級較高的匹配結(jié)果進(jìn)行標(biāo)識。特定網(wǎng)絡(luò)流量一經(jīng)識別確定,該網(wǎng)絡(luò)流量的后續(xù)連接將不再進(jìn)行深度的報文檢查,直接將其網(wǎng)絡(luò)層和傳輸層信息與已知識別結(jié)果進(jìn)行比對,提高執(zhí)行效率。業(yè)務(wù)識別模塊將網(wǎng)絡(luò)流量的業(yè)務(wù)識別結(jié)果存儲到識別結(jié)果存儲模塊中,為網(wǎng)絡(luò)流量的統(tǒng)計(jì)分析提供依據(jù)。統(tǒng)計(jì)分析模塊從識別結(jié)果存儲模塊中讀取相關(guān)信息,并以曲線、餅圖、柱狀圖或者文本的方式將識別結(jié)果信息顯示,或以文件的形式輸出[5]。
圖3所示的業(yè)務(wù)流識別器中,還擁有一個比較核心的模塊——二次識別模塊,該模塊提供二次識別機(jī)制。如果某一條業(yè)務(wù)流流經(jīng)某業(yè)務(wù)識別模塊后,被標(biāo)記為“不能識別”,那么還有進(jìn)行第二次識別的機(jī)會。一條被標(biāo)記為“不能識別”的業(yè)務(wù)流,不會被馬上送入結(jié)果存儲模塊中,而會被送入二次識別模塊中。二次識別模塊將該業(yè)務(wù)流的識別信息進(jìn)行廣播發(fā)送,請求系統(tǒng)的其他識別節(jié)點(diǎn)協(xié)助進(jìn)行識別。其他識別節(jié)點(diǎn)在接收到該識別節(jié)點(diǎn)發(fā)送來的請求后,查詢各自的業(yè)務(wù)識別結(jié)果,如果發(fā)現(xiàn)相關(guān)的業(yè)務(wù)流,那么就響應(yīng)該節(jié)點(diǎn)。該節(jié)點(diǎn)在接收到響應(yīng)后,準(zhǔn)備就緒。其他識別節(jié)點(diǎn)在接收到就緒信號后將相關(guān)報文發(fā)送給該節(jié)點(diǎn)。該節(jié)點(diǎn)接收完所有相關(guān)報文以后,二次識別模塊對原來的業(yè)務(wù)流和接收到的相關(guān)報文進(jìn)行重組,重組后的業(yè)務(wù)報文被再次送入到業(yè)務(wù)識別模塊進(jìn)行業(yè)務(wù)識別。這樣所有識別節(jié)點(diǎn)相互合作,完成業(yè)務(wù)的識別,確保最大限度地識別出業(yè)務(wù)流。
網(wǎng)絡(luò)化業(yè)務(wù)流識別系統(tǒng)在路由器上進(jìn)行了實(shí)驗(yàn),系統(tǒng)測試拓?fù)淙鐖D4所示。PC0、PC1和PC2分別位于不同的局域網(wǎng)內(nèi),通過路由器相連。業(yè)務(wù)識別系統(tǒng)由路由器 0、路由器1和路由器2組成,業(yè)務(wù)識別節(jié)點(diǎn)分布于各個路由器之上。
圖4 系統(tǒng)測試示意圖
PC0、PC1和PC2上采用ethereal軟件抓包工具獲取真實(shí)流量數(shù)據(jù),與網(wǎng)絡(luò)化業(yè)務(wù)流識別系統(tǒng)所識別出的報文統(tǒng)計(jì)數(shù)據(jù)進(jìn)行比較。測試的協(xié)議類型包括 HTTP、FTP、RTP、BT,均使用任意端口號。以PC0和路由器0為例,識別結(jié)果統(tǒng)計(jì)數(shù)據(jù)如表1所示。
表1 基于IP網(wǎng)絡(luò)的網(wǎng)絡(luò)化業(yè)務(wù)流識別系統(tǒng)模型的測試結(jié)果
從實(shí)驗(yàn)結(jié)果可以看出:業(yè)務(wù)識別率達(dá)到了99%以上;識別業(yè)務(wù)特征的關(guān)鍵報文越少、控制交互過程越簡潔,則識別率越接近 100%,符合網(wǎng)絡(luò)中業(yè)務(wù)流的真實(shí)情況。充分說明網(wǎng)絡(luò)化業(yè)務(wù)識別系統(tǒng)是正確的、完全可行的。
通過對現(xiàn)有業(yè)務(wù)識別技術(shù)的研究,在了解TCP/IP體系結(jié)構(gòu)的基礎(chǔ)上,提出了一種基于IP網(wǎng)絡(luò)的網(wǎng)絡(luò)化業(yè)務(wù)流識別系統(tǒng)模型,并詳細(xì)給出了其設(shè)計(jì)方案。論文的主要工作及創(chuàng)新點(diǎn)是:提出了網(wǎng)絡(luò)化的業(yè)務(wù)識別系統(tǒng)模型,提出了第二次識別的思想,由多個業(yè)務(wù)識別節(jié)點(diǎn)相互合作,共同完成業(yè)務(wù)的識別,提高識別能力,實(shí)時性較好;給出了識別節(jié)點(diǎn)上的模型化識別方法,降低了系統(tǒng)復(fù)雜度,提高了識別效率。
基于網(wǎng)絡(luò)化的業(yè)務(wù)識別系統(tǒng)還有以下兩點(diǎn)需要進(jìn)一步研究。一是業(yè)務(wù)識別方面,基于模型化的識別技術(shù)還有待深入研究,以實(shí)現(xiàn)對業(yè)務(wù)的更精確識別;二是系統(tǒng)應(yīng)用方面,這種網(wǎng)絡(luò)化業(yè)務(wù)流識別系統(tǒng)模型還需要與現(xiàn)有 IP網(wǎng)絡(luò)設(shè)備逐步融合,考慮網(wǎng)絡(luò)形式以確定識別節(jié)點(diǎn)的分布等。
[1] 王蕊.張順頤.基于P2P的Skype與常規(guī)業(yè)務(wù)的流量分析和識別[J].通信技術(shù),2007,40(05):42-45.
[2] 方鋮.Iur接口實(shí)現(xiàn)中的業(yè)務(wù)類型識別技術(shù)[J].通信技術(shù),2008,41(04):162-164.
[3] 劉偉彥,鄒雪蘭,錢琦.下一代網(wǎng)絡(luò)中業(yè)務(wù)感知模型研究[J].中國新通信,2009(02):21-26.
[4] 馬科,田輝,石友康.業(yè)務(wù)識別與控制技術(shù)及其測試評估[J].現(xiàn)代電信科技,2008(10):22-29.
[5] 李洋.網(wǎng)絡(luò)流量盡在掌握[N].計(jì)算機(jī)世界,2009-01-19(028).