傅 宇
(宜通世紀(jì)科技股份有限公司,廣州 510000)
隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展和進(jìn)步,互聯(lián)網(wǎng)在人們的生活和企業(yè)的生產(chǎn)中得到了越來越廣泛的應(yīng)用,給人們的生活和企業(yè)的生產(chǎn)帶來了極大的便捷。但是,隨著網(wǎng)絡(luò)技術(shù)的高速發(fā)展和進(jìn)步,網(wǎng)絡(luò)流量出現(xiàn)分布不均的情況,進(jìn)而對網(wǎng)絡(luò)的安全性造成極大的威脅。基于上述情況,運(yùn)用合適的軟硬件系統(tǒng),對網(wǎng)絡(luò)流量情況進(jìn)行有效的監(jiān)控和識別,提升流量識別速度和識別準(zhǔn)確率,保證網(wǎng)絡(luò)流量的分布均勻和運(yùn)行的穩(wěn)定性,是當(dāng)前需要關(guān)注的重點(diǎn)問題。
DPI(Deep Packet Inspection,深度包檢測技術(shù)),這種網(wǎng)絡(luò)監(jiān)測技術(shù)的原理是對IP數(shù)據(jù)包中的 ISO 應(yīng)用層數(shù)據(jù)進(jìn)行讀取,該技術(shù)中的流量管理可對網(wǎng)絡(luò)運(yùn)行過程中TCP或UDP的數(shù)據(jù)流進(jìn)行重新組合,由此可對整個應(yīng)用層數(shù)據(jù)包的完整情況進(jìn)行獲取,這時,該技術(shù)通過系統(tǒng)管理規(guī)則就可進(jìn)行網(wǎng)絡(luò)流量分布的監(jiān)測。
將DPI技術(shù)運(yùn)用于網(wǎng)絡(luò)流量識別的系統(tǒng)中,不僅可以對底層數(shù)據(jù)進(jìn)行監(jiān)控,還可實(shí)現(xiàn)對不同應(yīng)用層的內(nèi)容進(jìn)行進(jìn)一步的分析。隨著當(dāng)前網(wǎng)絡(luò)技術(shù)的不斷發(fā)展和進(jìn)步,網(wǎng)絡(luò)攻擊事件屢禁不絕,但是基于DPI 技術(shù)的網(wǎng)絡(luò)流量識別系統(tǒng),在設(shè)計(jì)的過程中運(yùn)用了多模式正則特征匹配算法,這種算法的特點(diǎn)在于可對不同字符串在同一時間內(nèi)進(jìn)行識別,同時進(jìn)相應(yīng)匹配字符的處理,具備高效性,可提升系統(tǒng)的精算效率和識別精確度。
就當(dāng)前階段而言,對網(wǎng)絡(luò)流量進(jìn)行控制的主要協(xié)議為兩種,分別為HTTP和 HTTPS協(xié)議,這兩種協(xié)議的優(yōu)勢在于只需要對特殊字段進(jìn)行識別,大大提升了網(wǎng)絡(luò)流量的識別速度。該網(wǎng)絡(luò)識別系統(tǒng)針對未識別的網(wǎng)絡(luò)流量(不常見或需運(yùn)用其他方式予以識別的網(wǎng)絡(luò)流量)可運(yùn)用識別軟件予以識別。
與此同時,該系統(tǒng)可對軟件和硬件進(jìn)行識別的網(wǎng)絡(luò)流量類型通過模式串知識庫中的關(guān)鍵字進(jìn)行區(qū)分。例如硬件識別網(wǎng)絡(luò)流量的關(guān)鍵字為hardwaremode;軟件識別網(wǎng)絡(luò)流量的關(guān)鍵字為softwaremode。該系統(tǒng)可對3種不同類型的線程模式予以支持,分別為創(chuàng)建數(shù)
據(jù)庫線程;數(shù)據(jù)庫線程;知識庫編譯線程。這三種線程類型的作用有所區(qū)別。數(shù)據(jù)庫線程的作用為進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)包的解析;創(chuàng)建數(shù)據(jù)庫線程主要負(fù)責(zé)分析和加載模式串知識庫;知識庫編譯線程的主要作用為匹配字符串。該系統(tǒng)總流程圖詳情見圖1。

圖1 系統(tǒng)流程圖
該系統(tǒng)的硬件主要負(fù)責(zé)進(jìn)行匹配網(wǎng)絡(luò)中簡單字符串。因此在進(jìn)行硬件的設(shè)計(jì)過程中要對字符串的匹配速度,準(zhǔn)確率和效率進(jìn)行重點(diǎn)的關(guān)注。因此,本次研究中在進(jìn)行硬件的設(shè)計(jì)過程中運(yùn)用了OCTEON芯片,并運(yùn)用了正則表達(dá)式匹配邏輯,進(jìn)一步提升硬件的字符匹配速度和運(yùn)行效率。該系統(tǒng)硬件進(jìn)行識別的網(wǎng)絡(luò)流量詳情見圖2。

圖2 硬件識別網(wǎng)絡(luò)流量圖
從圖2中可見,硬件進(jìn)行簡單流量識別的過程首先要進(jìn)行流量表的創(chuàng)建,將待檢測數(shù)據(jù)輸送至硬件狀態(tài)機(jī),通過知識庫進(jìn)行簡單字符串的匹配,最后根據(jù)識別結(jié)果進(jìn)行流量表的更新。
該系統(tǒng)軟件識別系統(tǒng)的作用是進(jìn)行不常見或需運(yùn)用其他方式予以識別的網(wǎng)絡(luò)流量的識別。因此,在網(wǎng)絡(luò)流量中經(jīng)常存在無顯著特征的數(shù)據(jù)包或字符串,因此需要采取其他識別方式進(jìn)行輔助識別,例如少數(shù)的P2P流量要首先將數(shù)據(jù)包進(jìn)行解密后才能進(jìn)行匹配。因此,基于軟件的復(fù)雜性,我們在進(jìn)行系統(tǒng)的設(shè)計(jì)過程中選取了Linux內(nèi)核,因?yàn)槠渲械腷ytematch模式可標(biāo)識復(fù)雜的運(yùn)算符號。
因?yàn)榫W(wǎng)絡(luò)在實(shí)際的運(yùn)行過程中,會有很多不固定的流量端口存在,因此在匹配的過程中容易出現(xiàn)漏報問題。本次研究在進(jìn)行系統(tǒng)設(shè)計(jì)的過程中,將軟件識別和硬件識別相結(jié)合,實(shí)現(xiàn)更高效的進(jìn)行網(wǎng)絡(luò)流量的識別,降低誤差,保證網(wǎng)絡(luò)運(yùn)行的穩(wěn)定。基于上述設(shè)計(jì),此次研究選取了100M的寬帶網(wǎng)絡(luò)進(jìn)行實(shí)驗(yàn)驗(yàn)證,選取騰訊QQ作為驗(yàn)證軟件。本次實(shí)驗(yàn)識別流量結(jié)果詳情見圖3。

圖3 流量統(tǒng)計(jì)結(jié)果
如圖3中可見,本次研究經(jīng)系統(tǒng)識別流量結(jié)果表明,騰訊QQ軟件可在計(jì)算機(jī)上進(jìn)行正常通信,無顯著誤報現(xiàn)象出現(xiàn)。說明本次研究進(jìn)行設(shè)計(jì)的基于DPI技術(shù)的網(wǎng)絡(luò)流量識別系統(tǒng),可在網(wǎng)絡(luò)處于正常運(yùn)行狀態(tài)下避免漏報情況。
綜上所述,隨著互聯(lián)網(wǎng)絡(luò)的不斷發(fā)展和進(jìn)步,網(wǎng)絡(luò)流量和復(fù)雜化,保證人們?nèi)粘I畹挠镁W(wǎng)穩(wěn)定性是基本要求。基于上述理由,傳統(tǒng)的單純運(yùn)用硬件或軟件進(jìn)行流量識別已經(jīng)不能滿足網(wǎng)絡(luò)的快速發(fā)展,因此,基于DPI技術(shù)的系統(tǒng)設(shè)計(jì),可對傳統(tǒng)網(wǎng)絡(luò)流量識別出現(xiàn)漏報,誤報的情況予以解決,同時采取軟硬件結(jié)合,可對復(fù)雜的字符串和簡單字符串進(jìn)行同時識別,提升了識別準(zhǔn)確率,保證了識別效率。