黃鳳,王瑤,黃莉,姚繼明,劉世棟
(國網(wǎng)智能電網(wǎng)研究院,江蘇 南京210003)
隨著互聯(lián)網(wǎng)應(yīng)用的不斷豐富,網(wǎng)絡(luò)中的數(shù)據(jù)種類和流量都呈幾何級數(shù)膨脹[1],網(wǎng)絡(luò)流量需求與網(wǎng)絡(luò)帶寬之間的矛盾日益增大,網(wǎng)絡(luò)流量管理的作用顯得尤為重要。在盡力而為(best-effort service)的服務(wù)模式下,所有網(wǎng)絡(luò)流量都一視同仁地被盡可能快地傳遞,網(wǎng)絡(luò)不提供任何時延或可靠性保障[2];這將導(dǎo)致P2P文件傳輸?shù)确顷P(guān)鍵流量消耗著大量的帶寬,而關(guān)鍵業(yè)務(wù)流的服務(wù)質(zhì)量卻沒有得到保證,用戶和業(yè)務(wù)流量的大幅增長給網(wǎng)絡(luò)服務(wù)質(zhì)量 (quality of service,QoS)[3,4]帶來了巨大的壓力,特別是當(dāng)大量次要業(yè)務(wù)流量(如P2P下載等)搶占有限的網(wǎng)絡(luò)資源,嚴(yán)重影響一些主要業(yè)務(wù)的正常開展時,問題更為突出。
提升網(wǎng)絡(luò)QoS保障,簡單增加網(wǎng)絡(luò)帶寬是不夠的,帶寬資源始終是有限的,無法保障不被耗盡,而且提升帶寬還會帶來巨大的成本。在這種情況下,保障網(wǎng)絡(luò)的QoS是業(yè)界的研究熱點(diǎn),例如IETF先后提出了綜合業(yè)務(wù)模型IntServ[5]和區(qū)分服務(wù)模型DiffServ[6],取得了一定效果,但是可操作性和可擴(kuò)展性卻不盡如人意。與此同時,網(wǎng)絡(luò)流量管理逐漸受到重視,并成為一種有效的QoS解決方案,其核心是流量識別與資源管理,通過對流量的識別,將不同業(yè)務(wù)的網(wǎng)絡(luò)流量按照預(yù)定的規(guī)則、策略和優(yōu)先級等,采用不同方式進(jìn)行處理、轉(zhuǎn)發(fā)、限速和整形,以實現(xiàn)對網(wǎng)絡(luò)資源有計劃地分配和利用,盡可能減少網(wǎng)絡(luò)擁塞,限制非關(guān)鍵業(yè)務(wù)占用過多帶寬,從而保障關(guān)鍵業(yè)務(wù)的服務(wù)質(zhì)量。與此理念相同的是,為優(yōu)化網(wǎng)絡(luò)管理以及提高網(wǎng)絡(luò)資源利用率,業(yè)界提出“智能管道”技術(shù),旨在根據(jù)用戶的需求以及不同類型的應(yīng)用傳輸數(shù)據(jù),智能區(qū)分不同的QoS需求,動態(tài)調(diào)整管理策略,進(jìn)行精細(xì)化的帶寬資源管控,達(dá)到“用戶可識別、業(yè)務(wù)可區(qū)分、流量可調(diào)控、網(wǎng)絡(luò)可管理”的目的。由于網(wǎng)絡(luò)流量的復(fù)雜性,網(wǎng)絡(luò)業(yè)務(wù)流量識別相對于用戶識別更具挑戰(zhàn)性,而網(wǎng)絡(luò)業(yè)務(wù)流量識別是進(jìn)行流量調(diào)控和差異化、精細(xì)化網(wǎng)絡(luò)管控的基礎(chǔ)。
在網(wǎng)絡(luò)業(yè)務(wù)流量識別方面,當(dāng)今的識別方法大體分為以下幾種。
·基于端口的靜態(tài)流量識別方法:該方法采用TCP/UDP端口來識別各種不同的應(yīng)用程序流量,隨著端口動態(tài)變化業(yè)務(wù)的不斷出現(xiàn)以及諸多業(yè)務(wù)采用常規(guī)業(yè)務(wù)端口作為隧道穿越,該方法也變得越來越低效和不準(zhǔn)確。
·基于凈荷特征的流量識別方法:該方法采用深度分組檢測(deep packet inspection,DPI)技術(shù)匹配各種應(yīng)用特征,從而識別出不同的多媒體業(yè)務(wù)流量。然而隨著私有協(xié)議業(yè)務(wù)、匿名加密或者VPN業(yè)務(wù)的不斷出現(xiàn),這種方法就不適用了。
·基于流量特征統(tǒng)計的識別方法:該方法不涉及具體凈荷內(nèi)容,而是通過對業(yè)務(wù)流的各種統(tǒng)計信息的分析來區(qū)分不同業(yè)務(wù)流量,如流內(nèi)分組大小分布、分組間到達(dá)間隔、平均流存貨周期、連接特性等,流量統(tǒng)計特征識別法最大的缺點(diǎn)是無法做到高準(zhǔn)確率的識別。
·跨層業(yè)務(wù)識別方法:該方法綜合凈荷特征識別和流量特征統(tǒng)計識別方法,在一定程度上彌補(bǔ)了流量特征統(tǒng)計方法準(zhǔn)確性上的不足,然而對于新增業(yè)務(wù)或者業(yè)務(wù)特征變化的情況,如匿名加密VoIP、動態(tài)變化且特征不規(guī)則的P2P多媒體信息流等,仍無法適用。
·基于智能計算的流量識別方法:該方法通過自學(xué)習(xí)的方式適應(yīng)業(yè)務(wù)的動態(tài)變化特征,特別是針對“流變種”業(yè)務(wù)和新增業(yè)務(wù)的情況,一般采取基于機(jī)器學(xué)習(xí)和模式識別的方式,針對流量特征識別業(yè)務(wù)類型。該方法具有較強(qiáng)的適應(yīng)能力,對于有監(jiān)督學(xué)習(xí)模式下,識別準(zhǔn)確率受學(xué)習(xí)樣本以及算法參數(shù)設(shè)置的影響,需要結(jié)合流量特征選擇合適的算法類型和參數(shù)配置,目前,該類流量識別方法仍屬于前沿類研究熱點(diǎn)。
以流量控制為目標(biāo)的流量識別,需要對不同業(yè)務(wù)流量進(jìn)行區(qū)分管理。實時網(wǎng)絡(luò)流量的分布具有隨機(jī)性,業(yè)務(wù)類型并不均衡,此外,重要業(yè)務(wù)和次要業(yè)務(wù)的識別錯誤代價也不同。基于以上需求,本文設(shè)計并實現(xiàn)了一種基于多層級聯(lián)機(jī)器學(xué)習(xí)算法的網(wǎng)絡(luò)業(yè)務(wù)流量識別方法,該方法以網(wǎng)絡(luò)流量的統(tǒng)計特征作為輸入,充分利用流量類別的先驗知識,采用有監(jiān)督學(xué)習(xí)的方式,學(xué)習(xí)得到性能和效率較高的流量識別器。該方法采用多層級聯(lián)的方式,優(yōu)先識別較容易被識別的流量類型,識別代價高的流量則被推送到下一級別的識別器中,這種方式可以保障識別器的時間性能,不至于因為整體流量類型的復(fù)雜性導(dǎo)致整個識別器的時間性能的下降,識別時間是實時流量識別和流量管理至關(guān)重要的一點(diǎn);此外,層級之間的級聯(lián)算法充分考慮了重要業(yè)務(wù)被錯分類的代價高于次要業(yè)務(wù)也被錯分類的情況,有助于保障重要業(yè)務(wù)的QoS特性。
基于有監(jiān)督機(jī)器學(xué)習(xí)方式進(jìn)行流量識別的一般過程為,首先采集樣本數(shù)據(jù)進(jìn)行學(xué)習(xí),得到識別器,而后基于測試數(shù)據(jù)對識別器的性能進(jìn)行測試,如果算法的準(zhǔn)確率和召回率等性能參數(shù)符合預(yù)期目標(biāo),則放棄學(xué)習(xí);如果不符合預(yù)期目標(biāo),則需要修改樣本數(shù)據(jù)或?qū)W習(xí)算法繼續(xù)學(xué)習(xí),直到得到性能參數(shù)優(yōu)異的識別器,然后基于識別器進(jìn)行網(wǎng)絡(luò)流量業(yè)務(wù)識別,圖1為通用的機(jī)器學(xué)習(xí)識別過程。
圖1 基于機(jī)器學(xué)習(xí)的流量識別過程
圖2 多層級聯(lián)算法的流量識別過程
基于多層級聯(lián)機(jī)器學(xué)習(xí)算法TrafCasd的網(wǎng)絡(luò)業(yè)務(wù)流量識別過程與圖1類似,其核心在于該方法構(gòu)建了一組多層級聯(lián)式學(xué)習(xí)器,不同層級的學(xué)習(xí)器通過學(xué)習(xí)某種流量特征的內(nèi)在模式,從而實現(xiàn)某些類型業(yè)務(wù)流量的快速識別。設(shè)在第i級的學(xué)習(xí)器為hi,當(dāng)流量特征數(shù)據(jù)x到達(dá)第i級后,若hi能夠以高置信度確定其為某一類型業(yè)務(wù)流量,則將x標(biāo)記為該業(yè)務(wù)類型,若不能以高置信度進(jìn)行識別,則送交下一級學(xué)習(xí)器進(jìn)行判斷,直到最終獲得識別結(jié)果為止?;诩壜?lián)的設(shè)計,使得不同層級的學(xué)習(xí)器可以關(guān)注不同的模式,從而使容易被識別的業(yè)務(wù)流量在前一兩個層級就能被正確識別,而級聯(lián)結(jié)構(gòu)中偏后的學(xué)習(xí)器則負(fù)責(zé)關(guān)注如何識別更加難以識別的流量模式,而不會受到前幾個層級識別出的較為容易識別的流量特征的影響,如圖2所示。
為了進(jìn)一步考慮業(yè)務(wù)流量的錯分代價,本文提出的多層級聯(lián)流量識別算法可以在每一層級中根據(jù)錯誤識別代價,調(diào)整學(xué)習(xí)器的輸出和級聯(lián)之間的權(quán)值,從而體現(xiàn)出重要業(yè)務(wù)流量的代價敏感性。本文采用的級聯(lián)結(jié)構(gòu)是Asymmetric AdaBoost[7,8],它采用了考慮代價敏感的級聯(lián)關(guān)系:
其中,C(xi)是學(xué)習(xí)器給流量特征數(shù)據(jù)的識別標(biāo)記,重要業(yè)務(wù)被錯分為次要業(yè)務(wù)的代價是次要業(yè)務(wù)被錯分為重要業(yè)務(wù)的代價的k倍,將式(1)所示的錯誤代價嵌入傳統(tǒng)AdaBoost優(yōu)化目標(biāo)中:
推導(dǎo)得出非對稱級聯(lián)的優(yōu)化目標(biāo):
多層級聯(lián)流量識別算法的每一層級的學(xué)習(xí)方法和采用的特征可以根據(jù)具體的應(yīng)用場景需求進(jìn)行針對性的調(diào)整,最初的幾個層次可以采用識別速度快的方法,如線性支持向量機(jī)(SVM),后面的層級中則采用相對復(fù)雜的模型,如深度神經(jīng)網(wǎng)絡(luò)或多學(xué)習(xí)器集成方法。每一層級的流量特征的選取也可根據(jù)需要進(jìn)行調(diào)整,以優(yōu)化算法性能。當(dāng)網(wǎng)絡(luò)中出現(xiàn)“流變種”業(yè)務(wù)和新增業(yè)務(wù)時,多層級聯(lián)流量識別方法可以通過重新獲取樣本數(shù)據(jù)進(jìn)行學(xué)習(xí),以達(dá)到正確識別“流變種”業(yè)務(wù)和新增業(yè)務(wù)的目的。
本文采用Java語言構(gòu)建流量識別實驗環(huán)境,基于多層級聯(lián)流量識別算法TrafCasd開發(fā)實現(xiàn)了多種機(jī)器學(xué)習(xí)算法的級聯(lián),包括支持向量機(jī)、Rtree、Boost、k近鄰以及神經(jīng)網(wǎng)絡(luò),在學(xué)習(xí)階段需要設(shè)置算法的層級個數(shù)、每一層級的算法類型以及流量特征。選取包括網(wǎng)絡(luò)類型、APN、瀏覽工具在內(nèi)的38項流量特征進(jìn)行業(yè)務(wù)識別,部分流量特征見表1。
為測試算法性能,選取支持向量機(jī)、Rtree、Boost以及神經(jīng)網(wǎng)絡(luò)單算法識別作為對比。多層級聯(lián)流量識別算法TrafCasd設(shè)置為3層結(jié)構(gòu),3層算法逐層復(fù)雜,分別為SVM、Rtree以及神經(jīng)網(wǎng)絡(luò)算法。為獲得更為客觀的實驗結(jié)果,采用多倍交叉驗證的方法獲取算法性能,即將流量特征數(shù)據(jù)源等分成若干份,取其中一份作為測試數(shù)據(jù),其余作為訓(xùn)練數(shù)據(jù),調(diào)整不同的組合,再進(jìn)行訓(xùn)練和測試,求取平均值獲得最終結(jié)果,本文采用5倍交叉驗證法。本文采用流量識別的預(yù)測準(zhǔn)確率(precision)、召回率(recall)以及綜合準(zhǔn)確率和召回率的F1作為評價指標(biāo),實驗結(jié)果如圖3所示。
圖3 實驗結(jié)果對比
多層級聯(lián)流量識別算法可用性強(qiáng),可根據(jù)具體的網(wǎng)絡(luò)情況挑選合適的算法組合,經(jīng)過多次訓(xùn)練和測試,可以獲得性能優(yōu)異的流量識別器。圖3表明,基于多種算法級聯(lián)的流量識別方法在性能上優(yōu)于單個機(jī)器學(xué)習(xí)算法,多層級聯(lián)的方式均衡了不同類型機(jī)器學(xué)習(xí)算法的優(yōu)缺點(diǎn),如SVM簡單快速但是識別效率低,可作為第一層級算法,而神經(jīng)網(wǎng)絡(luò)算法經(jīng)優(yōu)化后識別率高,但是在時間性能上不如SVM,可作為后面層級的算法,使得容易識別的業(yè)務(wù)流量被SVM快速識別,而難以識別的業(yè)務(wù)流量被后續(xù)的復(fù)雜模型識別,以此獲得在時間性能和識別率上的平衡,為實時流量管理提供技術(shù)保障;此外,由于在級聯(lián)算法上考慮了代價敏感性,TrafCasd算法更為重視重要業(yè)務(wù)的識別準(zhǔn)確率,因此在重要業(yè)務(wù)的QoS保障方面具有突出優(yōu)勢。
表1 部分流量特征
本文針對網(wǎng)絡(luò)業(yè)務(wù)流量復(fù)雜多變、識別算法難以應(yīng)對網(wǎng)絡(luò)業(yè)務(wù)發(fā)展的局面,提出一種多層級聯(lián)的流量識別算法,該算法采用非均衡代價敏感級聯(lián)設(shè)計,一方面彌補(bǔ)了不同類型機(jī)器學(xué)習(xí)算法在時間特征和識別準(zhǔn)確率方面此長彼消的矛盾,獲得優(yōu)異的識別性能;另一方面算法考慮不同等級業(yè)務(wù)的錯分代價,級聯(lián)算法充分考慮了重要業(yè)務(wù)被錯誤識別為次要業(yè)務(wù)的代價是次要業(yè)務(wù)被錯誤識別為重要業(yè)務(wù)的多倍關(guān)系,使得算法更為重視重要業(yè)務(wù)的識別。更為重要的是,在網(wǎng)絡(luò)業(yè)務(wù)流量出現(xiàn)變化識別性能下降時,可通過重新采樣學(xué)習(xí)和訓(xùn)練以提高算法的識別性能,具有很強(qiáng)的適應(yīng)能力。在網(wǎng)絡(luò)業(yè)務(wù)發(fā)展迅速的情況下,基于業(yè)務(wù)流量識別的流量管理是提高整個網(wǎng)絡(luò)性能的關(guān)鍵,本文提出的多層級聯(lián)流量識別算法是基于智能計算流量識別方法中的一種,可為智能化的網(wǎng)絡(luò)管理及“智能管道”提供技術(shù)保障。
[1]李明.Linux的帶寬管理技術(shù)研究與應(yīng)用[D].成都:電子科技大學(xué),2009.LI M.The research and application of bandwidth management for Linux[D].Chengdu:University of Electronic Science and Technology of China,2009.
[2]SHELDON T.Encyclopedia of networking&telecommunications[M].New York:McGraw-Hill,2001.
[3]MARCHESE M.QoS over heterogeneous networks[M].New Jersey:Wiley,2007.
[4]EVANS J,FILSFILS C.Deploying IP and MPLS QoS for multiservice networks:theory and practice[M].California:Morgan Kaufmann,2007.
[5]An architecture for differentiated services:IETF RFC 2475[S/OL].(1994-06-11)[2015-10-20].http://wenku.baidu.com/link?url=S4zppGzxZTfp GmDsiCfoHuhPiES6Ew_qmlziWCAGItn7eY9xRd Skjd5ys1_fh6 Nqz4mwGu9c8i9LF5eh_5oabKMkr3VCuoOpxp7-CURWyUq&qq-pf-to=pcqq.c2c.
[6]Integrated services in the internet architecture:an overview:IETF RFC 1633[S/OL].(1998-12-20)[2015-10-20].http://wenku.baidu.com/link?url=kteAiOa0LiupeCGVaXrlDo C2MdJW GJg3T3NJlpV7d7EsDK-cQU 7aiuZZ_NbrznkMzmOfKTnlhBw69ha QIGqSUrmFTBipTgB9i8nIna_9Gl3&qq-pf-to=pcqq.c2c
[7]MASNADI-SHIRAZI H,VASCONCELOS N.Asymmetric boosting[C]//The 24th International Conference on Machine Learning,June 20-24,2007,Corvallis,Oregon,USA.New York:ACM Press,2007:609-619.
[8]WEN J B,XIONG Y S.Asymmetric constraint optimization based adaptive boosting for cascade face detector[C]//The 7th International Conference an Advanced Intelligent Computing Theories and Applications:with Aspects of Artificial Intelligence,August 11-14,2011,Zhengzhou,China.Berlin:Springer-Verlag Berlin Heidelberg,2012:226-234.