陳榮平
(中國移動通信集團(tuán)廣東有限公司,廣州 510000)
伴隨互聯(lián)網(wǎng)技術(shù)水平不斷提升,網(wǎng)絡(luò)應(yīng)用也在不斷革新,用戶對于網(wǎng)絡(luò)質(zhì)量和網(wǎng)絡(luò)安全性的要求也在變高著。為保護(hù)用戶隱私,保證數(shù)據(jù)傳遞的可靠性,互聯(lián)網(wǎng)開始引入了HTTPS協(xié)議,從而實現(xiàn)了互聯(lián)網(wǎng)數(shù)據(jù)的加密。而伴隨加密流量的數(shù)額巨升,在保證數(shù)據(jù)傳輸可靠性的同時,運營商同時也要對加密流量進(jìn)行識別,從而為用戶提供差異化服務(wù)。
當(dāng)前主要有三種網(wǎng)絡(luò)流量識別方法:
其主要依照TCP/UDP 協(xié)議端口號展開應(yīng)用流量識別。IANA所分配的通用端口號是0-1023,比如說,能夠利用80端口識別WEB應(yīng)用,利用23端口識別 Telnet,利用21端口識別FTP等,很多應(yīng)用程序都于早期設(shè)置過特定端口,所以通過端口號來進(jìn)行流量識別的方式很容易想到[1]。通過端口號來進(jìn)行流量識別的方式比較簡單,且具備可操作性,對于傳統(tǒng)-網(wǎng)絡(luò)的流量識別非常精準(zhǔn)。然而伴隨互聯(lián)網(wǎng)技術(shù)的普及和發(fā)展,很多新興業(yè)務(wù)已經(jīng)開始不再采用標(biāo)準(zhǔn)化端口,都選擇繞過防火墻,采取動態(tài)端口的方式,這就導(dǎo)致通過端口號來進(jìn)行流量識別的方式不再適用,無論是識別精準(zhǔn)度,還是識別難度,都受到非常大的影響。
通過特征字段進(jìn)行流量石碑,其技術(shù)就是Deep Packet Inspection,簡稱DPI技術(shù)。DPI技術(shù)會通過特征字段來進(jìn)行業(yè)務(wù)的匹配,并分解網(wǎng)絡(luò)數(shù)據(jù)包,從而就可以分析數(shù)據(jù)包特征碼,進(jìn)而就可以確定應(yīng)用程序類型。所以,DPI技術(shù)對于應(yīng)用程序端口的依賴程度較低,能夠有效是被P2P等護(hù)理網(wǎng)應(yīng)用類型[2]。然而DPI技術(shù)的識別取決于應(yīng)用協(xié)議特征字段,因此沒有辦法對數(shù)據(jù)包荷載未知情況進(jìn)行識別,伴隨數(shù)據(jù)加密技術(shù)和應(yīng)用的不斷發(fā)展,這種檢測方式已經(jīng)沒有辦法有效滿足實際應(yīng)用需求。
機(jī)器學(xué)習(xí)系統(tǒng)模型如下圖所示:

圖1 機(jī)器學(xué)習(xí)系統(tǒng)模型
如圖1所示,機(jī)器學(xué)習(xí)系統(tǒng)模型是閉環(huán)系統(tǒng),能夠互相促進(jìn)和更新。首先,系統(tǒng)在外部環(huán)境中采集到相關(guān)信息,然后對數(shù)據(jù)信息進(jìn)行有效處理,知識庫模板中會有固定的規(guī)律知識模型,按照知識庫規(guī)則方法來進(jìn)行實際問題的解決,并驗證評判實際應(yīng)用效果,與此同時,還會把收集到的價值信息傳至學(xué)習(xí)模塊來進(jìn)行規(guī)則方法的補充更新。通過機(jī)器學(xué)習(xí)進(jìn)行流量識別的方式會先提取流量統(tǒng)計特征,然后利用機(jī)器學(xué)習(xí)算法把統(tǒng)計特征訓(xùn)練成為流量識別模型,然后進(jìn)行未知流量類型的有效識別[3]。不管是通過端口號進(jìn)行流量識別,還是通過特征字段進(jìn)行流量識別,從本質(zhì)上來說都為解析識別方式,必須要按照相應(yīng)設(shè)置規(guī)則來進(jìn)行流量識別,都缺乏足夠的智能性。然而與之相比,通過機(jī)器學(xué)習(xí)來進(jìn)行流量識別的方式并不再局限于流量局部解析特征,其是利用流量宏觀特征來進(jìn)行識別,利用數(shù)據(jù)挖掘分類技術(shù)進(jìn)行流量類型劃分,智能性較高。但其也存在局限性,無法對具體應(yīng)用進(jìn)行識別。
基于DPI和機(jī)器學(xué)習(xí)的加密流量類型識別方法有效地結(jié)合了DPI識別技術(shù)和機(jī)器學(xué)習(xí)識別技術(shù)的優(yōu)勢,具體流量如下圖所示:

圖2 加密流量類型識別流程
數(shù)據(jù)采集與清洗模塊:利用DPI技術(shù)對SSL/TLS協(xié)議中的HOST進(jìn)行提取,然后重新填至用戶話單內(nèi),從而就會形成一個加密話單數(shù)據(jù)。
特征選擇模塊:按照從話單中得到的原始數(shù)據(jù)及相應(yīng)計算口徑產(chǎn)生TCP數(shù)據(jù)集,之后就可以向下輸出[4]。
建模建塊:通過隨機(jī)森林算法來對當(dāng)前獲取到的大數(shù)據(jù)展開建模,依據(jù)上選取查準(zhǔn)率、查全率及F值,對模型進(jìn)行評估,之后展開參數(shù)調(diào)優(yōu)。
加密流量分類模塊:對流量種類不明確的加密流量流特征進(jìn)行計算,通過模型來對計算結(jié)果進(jìn)行判定,從而就可以獲取到是否為加密流量。
在本文的研究出指出了一種結(jié)合DPI技術(shù)優(yōu)勢和機(jī)器學(xué)習(xí)優(yōu)勢的新型加密流量識別方式,利用DPI技術(shù)來對網(wǎng)絡(luò)流量進(jìn)行識別,能夠獲取到很多已知特征的數(shù)據(jù)。這一點可以有效地降低機(jī)器學(xué)習(xí)計算量,且可以對具體應(yīng)用進(jìn)行識別,之后利用機(jī)器學(xué)習(xí)對未知特征加密流量進(jìn)行有效識別,這可以在很大程度上彌補DPI技術(shù)沒有辦法對未知加密流量進(jìn)行識別,從而就可以大大提升識別率。