林坤
?
DPI技術(shù)應(yīng)用發(fā)展研究
林坤
中國(guó)移動(dòng)通信集團(tuán)山東有限公司聊城分公司,山東 聊城 252000
DPI技術(shù)是一種針對(duì)數(shù)據(jù)包的檢測(cè)技術(shù)。在互聯(lián)網(wǎng)和大數(shù)據(jù)越來(lái)越發(fā)展的今天,這種基于數(shù)據(jù)包的檢測(cè)技術(shù)得到了廣泛的應(yīng)用。隨著“互聯(lián)網(wǎng)+”行業(yè)內(nèi)容的不斷擴(kuò)展,大數(shù)據(jù)分析技術(shù)在各行各業(yè)得到了越來(lái)越多的重視。如何快速分析數(shù)據(jù)是一項(xiàng)非常重要的研究,對(duì)于搶占互聯(lián)網(wǎng)市場(chǎng)有重要的意義。
DPI;技術(shù)應(yīng)用;發(fā)展研究
當(dāng)今社會(huì)是互連網(wǎng)時(shí)代,也是大數(shù)據(jù)時(shí)代。通過(guò)對(duì)大數(shù)據(jù)的分析可以了解更多的信息,包括每個(gè)人的衣食品味,甚至可以對(duì)一個(gè)人的性格進(jìn)行評(píng)價(jià)分析,只要有足夠的數(shù)據(jù)。在這種大數(shù)據(jù)飛速發(fā)展的時(shí)代,對(duì)數(shù)據(jù)進(jìn)行處理的方法是非常重要的,尤其是對(duì)這種龐大的數(shù)據(jù)包的處理。這項(xiàng)研究對(duì)計(jì)算機(jī)行業(yè)和大數(shù)據(jù)應(yīng)用有很大的影響,可以應(yīng)用在很多領(lǐng)域。
DPI技術(shù),也叫深度包檢測(cè)技術(shù),是基于應(yīng)用層的一種流量檢測(cè)和控制技術(shù)。這種技術(shù)需要讀取IP地址,然后對(duì)協(xié)議中的應(yīng)用層信息進(jìn)行分析。目前這種技術(shù)主要包括對(duì)“特征字”進(jìn)行識(shí)別、對(duì)應(yīng)用層的網(wǎng)關(guān)進(jìn)行識(shí)別,以及對(duì)行為模式進(jìn)行識(shí)別。
DPI模塊的部署主要有旁路式和串聯(lián)式兩種方式。旁路式也就是并聯(lián)的方式,顧名思義就是在原有流量線路的基礎(chǔ)上部署一個(gè)并聯(lián)的線路,對(duì)數(shù)據(jù)進(jìn)行收集和處理。這種旁支路線路的設(shè)置一般是通過(guò)流量分離器,例如分光器、流量鏡像,利用這些方法對(duì)流量進(jìn)行拷貝[1]。串聯(lián)式就是將DPI的處理模塊串聯(lián)地設(shè)置在用戶的應(yīng)用層流量鏈路中,對(duì)流經(jīng)的流量進(jìn)行監(jiān)控和分析。這兩種方法都能很好地對(duì)應(yīng)用層的流量信息進(jìn)行監(jiān)控和管理,應(yīng)根據(jù)不同的情況進(jìn)行合理地選用。
DPI技術(shù)之所以稱之為深層包檢測(cè)技術(shù),其“深層”的含義是相對(duì)于傳統(tǒng)的數(shù)據(jù)檢測(cè)手段來(lái)說(shuō)的。傳統(tǒng)的數(shù)據(jù)檢測(cè)是基于端口,而DPI技術(shù)能夠進(jìn)行更深層次的數(shù)據(jù)解析,是基于端口的上一層源IP或者目的IP。它的準(zhǔn)確性更好,主要特征有如下幾點(diǎn)。
第一,DPI技術(shù)的研究是在端口識(shí)別技術(shù)之上進(jìn)行的,原理上有很大的相似,基本原理都是對(duì)數(shù)據(jù)包進(jìn)行拆包和分析。不同的地方在于DPI技術(shù)可以對(duì)數(shù)據(jù)進(jìn)行更深層次地處理。除能對(duì)數(shù)據(jù)包的信息進(jìn)行檢測(cè)外,DPI技術(shù)還能對(duì)特征信息進(jìn)行識(shí)別,并對(duì)網(wǎng)絡(luò)的流量信息進(jìn)行協(xié)議識(shí)別。DPI技術(shù)對(duì)特征的識(shí)別是建立在自身?yè)碛械奶卣鲾?shù)據(jù)包庫(kù)基礎(chǔ)上的,因此需要對(duì)這個(gè)數(shù)據(jù)庫(kù)進(jìn)行不斷地更新、擴(kuò)容和維護(hù)。
第二,DPI技術(shù)是一種簡(jiǎn)單、高效的端口識(shí)別技術(shù)。這種技術(shù)在識(shí)別協(xié)議時(shí),首先進(jìn)行端口的識(shí)別,然后是更深層次的數(shù)據(jù)包識(shí)別,這樣能夠增加整體數(shù)據(jù)的處理效率。
第三,DPI技術(shù)采用的是應(yīng)用層的網(wǎng)關(guān)識(shí)別技術(shù),對(duì)應(yīng)用產(chǎn)生的數(shù)據(jù)可以進(jìn)行高效地分流和控制,區(qū)分信息的數(shù)據(jù)來(lái)源的原地址。因?yàn)檫@樣的特征,DPI技術(shù)可以更好地識(shí)別流量數(shù)據(jù)的區(qū)別,進(jìn)行分流處理。目前的DPI技術(shù)可以識(shí)別出將近600種應(yīng)用協(xié)議,基本覆蓋了當(dāng)前網(wǎng)絡(luò)中常見(jiàn)的網(wǎng)絡(luò)協(xié)議,包括P2P、HTTP、網(wǎng)絡(luò)電視、流媒體協(xié)議等等比較常見(jiàn)的網(wǎng)絡(luò)協(xié)議。
第四,網(wǎng)絡(luò)的現(xiàn)狀是在不停地發(fā)展,而且發(fā)展的速度非常快,可以說(shuō)是日新月異,每一天都會(huì)有不同的新產(chǎn)品出現(xiàn)。因此需要不斷擴(kuò)容和更新網(wǎng)絡(luò)協(xié)議的數(shù)據(jù)庫(kù),這樣才能滿足飛速發(fā)展的互聯(lián)網(wǎng)時(shí)代的要求,保證DPI技術(shù)的識(shí)別能力一直滿足客戶的使用需求。
DPI技術(shù)是一種深層數(shù)據(jù)包解析技術(shù)。這種技術(shù)能夠高效地進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)流量的分流處理和信息的識(shí)別,能夠幫助互聯(lián)網(wǎng)行業(yè)的商家對(duì)數(shù)據(jù)進(jìn)行處理,提供更好的服務(wù)[2]。最常見(jiàn)的就是位置的定位,確認(rèn)位置信息后,推送附近的消息,提供更加便利的信息。另一種是服務(wù)行業(yè)的差別服務(wù),會(huì)根據(jù)每個(gè)人的喜好,推送相關(guān)的服務(wù)或者產(chǎn)品的信息?;诖髷?shù)據(jù)的支持,深層數(shù)據(jù)包的分析技術(shù)可以分析每個(gè)人的消費(fèi)和應(yīng)用層的流量,判斷每個(gè)人的喜好,然后根據(jù)相應(yīng)的喜好推送相應(yīng)的服務(wù),這大大增加了互聯(lián)網(wǎng)服務(wù)的機(jī)動(dòng)性,能夠進(jìn)行點(diǎn)對(duì)點(diǎn)的服務(wù)。
DPI技術(shù)和SDN技術(shù)進(jìn)行組合,能夠產(chǎn)生更加強(qiáng)大的功能,出現(xiàn)更大的推動(dòng)力,讓每一個(gè)獨(dú)立的技術(shù)都發(fā)揮更大的作用。這兩者的結(jié)合可以很好地優(yōu)化網(wǎng)絡(luò)的結(jié)構(gòu)和性能。SDN是一種基于軟件的網(wǎng)絡(luò)結(jié)構(gòu),可以分離平面狀態(tài)和平面信息狀態(tài),是適合軟件網(wǎng)絡(luò)的一種技術(shù),可以對(duì)高集成化的網(wǎng)絡(luò)進(jìn)行有效地控制,非常適合軟件網(wǎng)絡(luò)的應(yīng)用。SDN一般劃分為三層,即基礎(chǔ)設(shè)施層、控制層及應(yīng)用層。這種分成的結(jié)構(gòu)保證了集成網(wǎng)絡(luò)的高效運(yùn)轉(zhuǎn)?;赟DN的網(wǎng)絡(luò)結(jié)構(gòu),在結(jié)合DPI這種簡(jiǎn)單、高效的信息處理手段后,會(huì)出現(xiàn)相互促進(jìn)的結(jié)果。SDN網(wǎng)絡(luò)的分成可以更好地幫助SPI技術(shù)進(jìn)行網(wǎng)絡(luò)的分流,這樣DPI可以在一定程度上借鑒原有的分離進(jìn)行運(yùn)行,大大降低了DPI設(shè)備的數(shù)量,可以在網(wǎng)絡(luò)中設(shè)置更少的DPI設(shè)備[3]。DPI技術(shù)是一種基于應(yīng)用層的特征識(shí)別技術(shù),可以將DPI技術(shù)應(yīng)用于SDN軟件網(wǎng)絡(luò)的應(yīng)中層中,更方便地進(jìn)行信息流的特征分析。在數(shù)據(jù)的高效分析下,SDN能夠更好地工作,提供服務(wù),而DPI技術(shù)也因?yàn)榕cSDN技術(shù)的結(jié)合產(chǎn)生了更高效的數(shù)據(jù)分析效率。
隨著網(wǎng)絡(luò)的快速發(fā)展,在良好的網(wǎng)絡(luò)環(huán)境中也存在很多的惡意破壞網(wǎng)站或者各種負(fù)面信息。這些不好的方面表現(xiàn)在很多方面,例如有人會(huì)利用重新定向的技術(shù)對(duì)一些主流的網(wǎng)站進(jìn)行重新定向,然后劫持主流網(wǎng)站,造成用戶不能正常訪問(wèn)網(wǎng)站信息,給商家和用戶帶來(lái)非常大的損失。有人會(huì)利用重定向技術(shù)劫持主流網(wǎng)站后,將地址轉(zhuǎn)移到其他的網(wǎng)站中,這樣就可以快速提高另一個(gè)網(wǎng)站的訪問(wèn)量。這種跳轉(zhuǎn)是非常常見(jiàn)的,帶來(lái)了極差的用戶體驗(yàn)。跳轉(zhuǎn)的網(wǎng)站一般都是傳播不良信息或者違法信息的網(wǎng)站,非常不利于網(wǎng)絡(luò)文明的建立。還有些人會(huì)故意注冊(cè)很多域名,將這些域名進(jìn)行重定向,最終指向一個(gè)網(wǎng)頁(yè),這樣也可以提高這一網(wǎng)頁(yè)的瀏覽次數(shù)[4]。對(duì)于這些問(wèn)題,DPI技術(shù)可以很好地解決。相關(guān)人員基于DPI技術(shù)研發(fā)了互聯(lián)網(wǎng)的報(bào)文檢測(cè)技術(shù),這樣就可以對(duì)這些網(wǎng)絡(luò)信息進(jìn)行分析處理。對(duì)互聯(lián)網(wǎng)數(shù)據(jù)運(yùn)用DPI技術(shù)進(jìn)行識(shí)別和分析,能夠很好地定位全網(wǎng)的報(bào)文信息,對(duì)網(wǎng)絡(luò)中存在的重定向問(wèn)題進(jìn)行檢測(cè)和控制。當(dāng)發(fā)現(xiàn)這些重定向的網(wǎng)絡(luò)域名時(shí)便進(jìn)行攔截,可以很好地解決那些利用客戶的感知非法牟利的行為。運(yùn)用DPI的數(shù)據(jù)分析手段,可以對(duì)用戶訪問(wèn)的報(bào)文進(jìn)行細(xì)致地分析和運(yùn)算,可以提取整個(gè)網(wǎng)絡(luò)的重定向報(bào)文,監(jiān)控訪問(wèn)次數(shù)多的域名,攔截異常的重定向報(bào)文。
為了能夠?qū)ヂ?lián)網(wǎng)的業(yè)務(wù)進(jìn)行實(shí)時(shí)地感知、監(jiān)控,需要一種高效的數(shù)據(jù)處理工具。這種需求就促進(jìn)了DPI技術(shù)在互聯(lián)網(wǎng)業(yè)務(wù)感知技術(shù)中的應(yīng)用。最為明顯的就是微博、新聞端、人民網(wǎng)、鳳凰網(wǎng)這樣的信息推送量比較大、用戶參與度高的軟件。對(duì)這些軟件信息進(jìn)行監(jiān)控是非常必要的,能夠保證絕大多數(shù)的用戶有良好的使用體驗(yàn),也能對(duì)軟件中的信息流進(jìn)行管理。這兩者的共同點(diǎn)都是對(duì)業(yè)務(wù)進(jìn)行實(shí)時(shí)感知,對(duì)用戶的體驗(yàn)進(jìn)行檢測(cè)。業(yè)務(wù)感知App布置在用戶終端,采集ISP和KQI數(shù)據(jù),對(duì)用戶的體驗(yàn)進(jìn)行實(shí)時(shí)感知。DPI技術(shù)布置與ECP側(cè),提取分析用戶面和信令面數(shù)據(jù),將這兩者進(jìn)行結(jié)合就可以提升用戶的感知體驗(yàn)。通關(guān)時(shí)間關(guān)聯(lián)技術(shù),也就是在業(yè)務(wù)感知App和DPI之中設(shè)置時(shí)間節(jié)點(diǎn),對(duì)信息流進(jìn)行分段定義。
DPI技術(shù)作為底層報(bào)文的分析工具,它的匹配算法是非常關(guān)鍵的.匹配算法性能的優(yōu)越可以直接影響DPI系統(tǒng)的性能[5]。DPI匹配算法大致有三種分類,近似匹配算法、正則表達(dá)式匹配算法和精確匹配算法。每一種算法都有其優(yōu)越性,例如精確匹配算法可以在字符串中找到子字符串,而且效率比較高[6]。正則算法可以利用正則表達(dá)式獲得匹配的結(jié)果,目前這種表達(dá)式在網(wǎng)絡(luò)數(shù)據(jù)中使用得比較多。正則表達(dá)式的使用非常廣,但是也有些不足,使用的算術(shù)式太多就會(huì)導(dǎo)致效率的下降。為了改變這種不足,最新的研究主要是改進(jìn)正則算法[7]。對(duì)正則算法進(jìn)行改進(jìn)的核心思想是對(duì)出現(xiàn)頻率較高的特征字符進(jìn)行搜索,然后進(jìn)行分組,并將字符改為DFA,這樣就可以降低內(nèi)存的使用和資源的占用。
本文主要闡述了目前深度包檢測(cè)的基本應(yīng)用場(chǎng)景、基礎(chǔ)算法以及未來(lái)的可能性應(yīng)用。DPI作為數(shù)據(jù)分析的一種基礎(chǔ)工具,在大數(shù)據(jù)時(shí)代對(duì)于網(wǎng)絡(luò)安全以及提升網(wǎng)絡(luò)運(yùn)營(yíng)都具有積極的效果。
[1]程燁,周雁,徐偉杰. 大數(shù)據(jù)背景下運(yùn)營(yíng)商IP城域網(wǎng)DPI部署方案研究[J]. 郵電設(shè)計(jì)技術(shù),2015(10):62-67.
[2]饒瑾. 深度包檢測(cè)(DPI)技術(shù)淺談及應(yīng)用[J]. 信息通信,2014(11):245-246.
[3]徐江紅,趙婉芳. 使用DPI技術(shù)研究校園網(wǎng)站的用戶行為[J]. 微處理機(jī),2013(4):29-32.
[4]潘潔,郗卓寧,林鵬. 基于SDN/NFV的DPI智能化網(wǎng)絡(luò)體系的構(gòu)建[J]. 電信科學(xué),201(6):115-119,125.
[5]楊榮,孟進(jìn). 深度包檢測(cè)技術(shù)中模式匹配算法分析[J]. 軟件導(dǎo)刊,2014(9):45-47.
[6]王凱. 基于DPI系統(tǒng)的改進(jìn)正則表達(dá)式算法[D]. 贛州:江西理工大學(xué),2014.
[7]張巍,陳佼,趙美凱. 深度包檢測(cè)中一種正則表達(dá)式匹配算法的改進(jìn)[J]. 現(xiàn)代電子技術(shù),2015(5):87-92.
DPI Technology Application Development Research
Lin Kun
China Mobile Communications Corporation Shandong Co., Ltd., Liaocheng Branch, Shandong Liaocheng 252000
DPI technology is a detection technology for data packets. Today, as the Internet and big data are more and more developed, this packet-based detection technology has been widely used. With the continuous expansion of “Internet+” industry content, big data analysis technology has received more and more attention in all walks of life. How to quickly analyze data is a very important research, and it is of great significance to the preemption of the Internet market.
DPI; technology application; development research
TN915.07
A