隨著網(wǎng)絡(luò)應(yīng)用技術(shù)的飛速發(fā)展,人們對數(shù)據(jù)包的安全性檢查已經(jīng)不再局限于數(shù)據(jù)的傳輸層以下信息,對數(shù)據(jù)包中的包含的應(yīng)用層信息的檢查顯得越發(fā)重要;網(wǎng)絡(luò)中P2P、SIP等應(yīng)用日益盛行,占用大量帶寬、帶寬消耗無計劃性,此外,各種網(wǎng)絡(luò)攻擊日益猖獗,如DDOS攻擊,蠕蟲傳播,VoIP服務(wù)劫持,信用卡詐騙等,具有識別、監(jiān)測、控制的DPI技術(shù)應(yīng)運(yùn)而生。
DPI(深度包檢測),一種基于數(shù)據(jù)包的應(yīng)用層流量檢測和控制技術(shù),針對數(shù)據(jù)包的不同層信息(如IP地址、應(yīng)用層端口、應(yīng)用層協(xié)議、凈荷內(nèi)容等)進(jìn)行深度檢測和分析,從而得到整個數(shù)據(jù)流或數(shù)據(jù)包的應(yīng)用層信息;然后按照系統(tǒng)定義的策略對流量進(jìn)行統(tǒng)計分析和控制。DPI設(shè)備的解析識別能力是DPI技術(shù)中首要環(huán)節(jié),是指通過對網(wǎng)絡(luò)流量進(jìn)行采集分析,然后基于一定的特征將該流量歸類為某種協(xié)議或者應(yīng)用的過程,如果解析識別能力不足,則無法滿足設(shè)備對流量的歸類統(tǒng)計以及后續(xù)對流量的分析控制等功能要求。因此,為了保證DPI設(shè)備解析識別能力符合要求,需要對其進(jìn)行驗(yàn)證和測試。
DPI解析識別能力是DPI系統(tǒng)的基礎(chǔ)能力,所有對流量應(yīng)用層面的監(jiān)控、管理以及統(tǒng)計都依賴于DPI識別的準(zhǔn)確性,可以說,DPI的解析識別能力是DPI系統(tǒng)的靈魂。DPI解析識別能力除了具備傳統(tǒng)的IP報文檢測技術(shù)(即檢測報文2層~4層內(nèi)容),還要對應(yīng)用層內(nèi)容進(jìn)行深層次檢測,這也是DPI最重要的特點(diǎn)之一,因此考察DPI解析識別能力,最直觀最實(shí)用的是通過DPI對應(yīng)用或者業(yè)務(wù)的識別情況來反映。所以,能否對各種業(yè)務(wù)類型進(jìn)行有效識別是評估DPI解釋識別能力的重要體現(xiàn)。
隨著網(wǎng)絡(luò)中的應(yīng)用業(yè)務(wù)不斷發(fā)展,業(yè)務(wù)類型多種多樣,如中國電信根據(jù)目前網(wǎng)絡(luò)中主流業(yè)務(wù)應(yīng)用按照即時通信、視頻業(yè)務(wù)、游戲業(yè)務(wù)等方面定義了20多個大類、200多個小類和數(shù)千個業(yè)務(wù)細(xì)分應(yīng)用。此外,網(wǎng)絡(luò)中的應(yīng)用還具有覆蓋廣、典型性、時效性強(qiáng)、業(yè)務(wù)特征明確等特點(diǎn),同時,對于測試方法也希望能夠具備調(diào)整靈活、易于在實(shí)驗(yàn)室實(shí)現(xiàn)等特點(diǎn)。為了能夠滿足以上測試需求,對于測試方法以及測試工具都提出了相當(dāng)高的要求,針對DPI解析能力的測試,目前存在以下難點(diǎn)。
(1)業(yè)務(wù)種類多,難以全部覆蓋;
(2)很多業(yè)務(wù)為私有協(xié)議,或者是基于標(biāo)準(zhǔn)協(xié)議,但做了很多私有的實(shí)現(xiàn),借助一般的工具難以在實(shí)驗(yàn)室進(jìn)行模擬;
(3)難以確保測試用例中模擬的流量帶有準(zhǔn)確的業(yè)務(wù)特征供DPI系統(tǒng)進(jìn)行識別;
(4)難以在大流量高帶寬的場景下模擬現(xiàn)網(wǎng)的真實(shí)壓力,驗(yàn)證DPI系統(tǒng)的協(xié)議識別能力;
(5)業(yè)務(wù)識別的準(zhǔn)確性如何衡量。
根據(jù)上述測試需求及難點(diǎn),下面通過測試拓?fù)?、測試流量構(gòu)建、測試業(yè)務(wù)模型、測試結(jié)果分析和測試方法改進(jìn)及展望5個方面探討DPI識別能力的測試方法。
在現(xiàn)實(shí)網(wǎng)絡(luò)中,DPI設(shè)備的接入方式一般有兩種:串接形式及并接形式,由于這兩種接入方式對DPI解析識別能力測試區(qū)別不大,只是DPI接入方式不同、流量輸入輸出不同,故本文以并接接入形式為例。如圖1,模擬現(xiàn)實(shí)網(wǎng)絡(luò):測試儀模擬真實(shí)流量,通過路由器模擬現(xiàn)網(wǎng)中的一段傳輸真實(shí)流量的網(wǎng)絡(luò),并通過分光器把流量鏡像分光到被測DPI設(shè)備。
圖1 DPI解析能力識別測試拓?fù)?/p>
為保證測試流量能夠比較真實(shí)地模擬現(xiàn)實(shí)流量,且又能夠易于在實(shí)驗(yàn)室實(shí)現(xiàn),測試中采用典型業(yè)務(wù)樣包采樣、報文回放等技術(shù)構(gòu)建測試流量。
3.2.1 典型業(yè)務(wù)樣包采集
典型業(yè)務(wù)樣包的采集是模擬現(xiàn)實(shí)流量的重要方式,在進(jìn)行業(yè)務(wù)報文采集的時候需要注意以下幾點(diǎn),以確保能夠采集到純凈的、完整的、準(zhǔn)確的業(yè)務(wù)樣包。
(1)采集的終端多樣化,PC、Andriod手機(jī)、iphone、iPAD等都可以包括,不同的終端特征可能有所不同,甚至不同的軟件版本也會有差異,因此,采集的終端需保證多樣化;
(2)采集業(yè)務(wù)報文的時候要保證過程盡可能完整,以確保在樣包中包含流量特征。
(3)部分業(yè)務(wù)可能會包含多個流程、多個通道,比如FTP分為控制通道和數(shù)據(jù)傳輸通道、視屏點(diǎn)播業(yè)務(wù)包含RTSP播放控制交互和媒體流等,需要進(jìn)行一些分析和處理以后才能用于回放,以保證業(yè)務(wù)的準(zhǔn)確性。
(4)保證純凈的采集環(huán)境,例如可以采用虛擬機(jī),減少雜包過多、環(huán)境對樣包的干擾等因素。
(5)采集到的報文需要進(jìn)行處理,將無關(guān)的雜包過濾掉,確定樣包完整性以及準(zhǔn)確性,避免對測試造成影響。
3.2.2 通過報文回放技術(shù)實(shí)現(xiàn)業(yè)務(wù)流量模擬
由于不同業(yè)務(wù)采用的協(xié)議和技術(shù)實(shí)現(xiàn)千差萬別,要在實(shí)驗(yàn)室中模擬現(xiàn)網(wǎng)的業(yè)務(wù)流量,最好的辦法是采用報文回放的方式。但是一般的報文回放技術(shù)會存在一些限制或不足。
(1)為準(zhǔn)確抓取帶有協(xié)議特診的流量,通常只針對一個用戶進(jìn)行抓包,這也導(dǎo)致回放的時候只能回放一個用戶的流量,在用戶數(shù)、流量壓力上都比較少
(2)一般的報文回放,是原始報文重放,在MAC地址、IP地址、協(xié)議端口號等都不會變化,對于測試來說,報文的轉(zhuǎn)發(fā)、測試流量的變化性就有所不足
在測試過程中,為了避免上述不足,將采用Spirent公司Avalanche儀表上的應(yīng)用層播放仿真引擎(Scalable Application Playback Emulation Engine,SAPEE)的回放技術(shù)進(jìn)行報文回放。SAPEE功能的特點(diǎn)有:
(1)支持標(biāo)準(zhǔn)的PCAP格式報文導(dǎo)入,并進(jìn)行分析之后,按流進(jìn)行編輯處理和回放。
(2)可以修改流量的源、目標(biāo)地址、協(xié)議端口號。
(3)可以通過變化源IP地址實(shí)現(xiàn)海量用戶的仿真。
(4)可以在回放報文的載荷部分通過插入變量等方式進(jìn)行修改,以適用于更加豐富的測試場景。
(5)可以修改原始報文的收發(fā)間隔,來模擬網(wǎng)絡(luò)中網(wǎng)絡(luò)傳輸時延的變化、服務(wù)器響應(yīng)時間的變化等情況。
(6)回放報文重新構(gòu)建真實(shí)的TCP/IP協(xié)議棧,回放報文在網(wǎng)絡(luò)中可尋址、可路由,遵循真實(shí)的TCP、UDP報文傳輸機(jī)制,使測試流量更加具有真實(shí)性。
(7)回放報文可統(tǒng)計,為測試結(jié)果提供評判標(biāo)準(zhǔn)。
在測試過程中,業(yè)務(wù)模型需要按照現(xiàn)實(shí)網(wǎng)絡(luò)流量適配,但又不僅僅局限于現(xiàn)實(shí)網(wǎng)絡(luò),故測試業(yè)務(wù)模型應(yīng)包括以下類型。
(1)流量協(xié)議種類:應(yīng)包含互聯(lián)網(wǎng)各種主流應(yīng)用,具備多樣性,并達(dá)到一定的數(shù)量:HTTP文本、圖像和視頻流量、P2P流量、Web視頻類/Web瀏覽類流量、游戲類、自營業(yè)務(wù)等。
(2)業(yè)務(wù)流量成分:IPv6和IPv4的混合流。
(3)新建并發(fā)連接數(shù):為了更真實(shí)模擬現(xiàn)網(wǎng)流量壓力,要求測試流量TCP并發(fā)連接數(shù)以及每秒新建數(shù)不低于指定值(如,并發(fā)連接數(shù)>5 000萬/100 G鏈路、新建連接數(shù)>200萬/100 G鏈路)。
(4)壓力疊加:測試網(wǎng)絡(luò)中總的流量壓力要達(dá)到被測系統(tǒng)的標(biāo)稱值(如400 G平臺);由于業(yè)務(wù)識別的測試流量難以達(dá)到如此高的規(guī)格,因此其他部分的流量需要用背景流量進(jìn)行填充,為了避免被測系統(tǒng)有針對性地通過流量過濾的方式來減輕測試壓力,背景流量應(yīng)該模擬有意義的UDP或TCP業(yè)務(wù),如DNS、HTTP等,且IP地址、協(xié)議端口號也應(yīng)該符合一定的分布。
(5)被測DPI同時使能功能:被測DPI需要同時開啟現(xiàn)網(wǎng)/測試要求的主要功能,正常上報話單或?qū)嵤┛刂乒δ艿龋苊馔ㄟ^只開啟協(xié)議識別模塊來進(jìn)行性能提升。
圖2 DPI設(shè)備識別結(jié)果
通過上述構(gòu)造流量以及業(yè)務(wù)模型,在實(shí)驗(yàn)室模擬現(xiàn)實(shí)網(wǎng)絡(luò)拓?fù)?,利用儀表把測試流量注入到被測DPI設(shè)備,DPI設(shè)備由此會產(chǎn)生識別話單;通過比對DPI設(shè)備的識別話單以及儀表回放流量的報文統(tǒng)計信息,可以評定DPI設(shè)備解析識別能力的強(qiáng)弱。能力強(qiáng)弱可以通過以下幾點(diǎn)來評定。
(1)應(yīng)用種類識別率。計算公式:應(yīng)用種類識別率=識別的種類數(shù)/真實(shí)應(yīng)用種類數(shù);同等情況下,A設(shè)備能應(yīng)用種類識別率比B設(shè)備高,A設(shè)備的解析識別能力明顯比B設(shè)備強(qiáng)。
(2)單應(yīng)用識別率。計算公式:單應(yīng)用識別率=1-(單應(yīng)用真實(shí)總流量-單應(yīng)用識別流量)/單應(yīng)用真實(shí)總流量;單應(yīng)用識別率越高,說明該設(shè)備對該應(yīng)用的解析識別能力強(qiáng)。
如某次實(shí)際測試中,兩款DPI設(shè)備(A,B)測試結(jié)果如圖2所示,設(shè)備A種類識別率比B的高,說明在A設(shè)備在多應(yīng)用場景下的總體解析識別能力要強(qiáng)于B,而在某些應(yīng)用中,B設(shè)備的單應(yīng)用解析識別能力要強(qiáng)于A。因此,我們可以根據(jù)具體的需求,通過這些測試結(jié)果多方面來評定DPI設(shè)備的解析識別能力強(qiáng)弱。
目前有關(guān)DPI的測試歷時不長,相關(guān)經(jīng)驗(yàn)不多,DPI解析識別能力方法仍然還有不少提升和改進(jìn)的空間,比如:
(1)業(yè)務(wù)種類的時效性和覆蓋的全面性
互聯(lián)網(wǎng)的業(yè)務(wù)日新月異,測試的流量庫一定要及時更新,能反映現(xiàn)網(wǎng)的中最具有代表性的業(yè)務(wù)。
(2)業(yè)務(wù)流量的比例和吞吐量
目前測試中,由于測試手段的限制,業(yè)務(wù)的流量與現(xiàn)網(wǎng)差別較大,更多的是以海量的背景流量情況下產(chǎn)生少量的帶有有效測試信息的測試業(yè)務(wù)流量。這種方法滿足了測試流量的需求,但對真正現(xiàn)網(wǎng)運(yùn)維提供的參考相對有限,未來也期望能夠從流量和業(yè)務(wù)吞吐量上越來越接近真實(shí)現(xiàn)網(wǎng)。
(3)加密業(yè)務(wù)的識別和處理
現(xiàn)在互聯(lián)網(wǎng)業(yè)務(wù)中,以SSL/TLS為代表的加密流量的比重越來越高,在這種情況下,DPI設(shè)備要進(jìn)行業(yè)務(wù)識別的難度也越來越大,從測試的角度也需要考慮適應(yīng)這種變化的趨勢。
DPI解析識別能力的測試是評估DPI設(shè)備整體功能性能的最重要一環(huán),同時也是DPI設(shè)備最本質(zhì)的特點(diǎn)——深度報文檢測的最直接體現(xiàn)。本文探討的DPI解析識別能力的測試方法,為當(dāng)前DPI設(shè)備解析識別能力測試提供一種有效可行的方案,提升了DPI測試的科學(xué)性與合理性。由于互聯(lián)網(wǎng)業(yè)務(wù)變化快、應(yīng)用新增多、應(yīng)用更新快等特點(diǎn),DPI解析識別能力的測試需要實(shí)時跟進(jìn)業(yè)務(wù)應(yīng)用的變化、增加測試的業(yè)務(wù)樣包以及更新新的業(yè)務(wù)應(yīng)用回放技術(shù),并不斷完善整體測試技術(shù)方案。