本發(fā)明屬于寬帶接入網(wǎng)技術(shù)領(lǐng)域,更為具體地講,涉及一種應(yīng)用于寬帶接入網(wǎng)的業(yè)務(wù)識(shí)別方法。
背景技術(shù):
隨著寬帶接入網(wǎng)技術(shù)的不斷發(fā)展,寬帶光纖接入網(wǎng)技術(shù)以其可用帶寬大、信號(hào)質(zhì)量好、支持寬帶業(yè)務(wù)等優(yōu)勢(shì)成為目前的熱門技術(shù)之一。其中PON(Passive Optical Network,無源光網(wǎng)絡(luò))技術(shù)因拓?fù)浣Y(jié)構(gòu)簡單,維護(hù)費(fèi)用低等特點(diǎn)成為當(dāng)今接入網(wǎng)技術(shù)的主流。PON接入網(wǎng)技術(shù)由于帶寬升級(jí)的壓力,其網(wǎng)絡(luò)設(shè)備的處理能力在短短的幾年內(nèi),從1Gbps、2.5Gbps發(fā)展到了現(xiàn)今的10Gbps,甚至在今后幾年有向40Gbps和100Gbps發(fā)展的趨勢(shì)。
據(jù)中國互聯(lián)網(wǎng)信息中心2015年的報(bào)告“第36次中國互聯(lián)網(wǎng)發(fā)展?fàn)顩r調(diào)查報(bào)告[R].中國:CNNIC,2015.”顯示,截至2015年6月,中國網(wǎng)民規(guī)模達(dá)6.68億且互聯(lián)網(wǎng)為用戶提供的業(yè)務(wù)不斷豐富,除了傳統(tǒng)的電話、網(wǎng)頁瀏覽、電子郵件等業(yè)務(wù)外還有一系列高速率、高質(zhì)量業(yè)務(wù)如VoIP業(yè)務(wù)、即時(shí)通信類業(yè)務(wù)、P2P(Peer-to-Peer,點(diǎn)對(duì)點(diǎn)技術(shù))業(yè)務(wù)、流媒體業(yè)務(wù)、網(wǎng)絡(luò)游戲業(yè)務(wù)、網(wǎng)上購物、電子商務(wù)等。而以P2P下載為代表的新業(yè)務(wù)流量已經(jīng)占據(jù)了整個(gè)互聯(lián)網(wǎng)流量的70%以上,P2P業(yè)務(wù)以及各種各樣的視頻類業(yè)務(wù)占據(jù)了大量的帶寬。
在論文“田輝,徐鵬.業(yè)務(wù)識(shí)別與控制技術(shù)及標(biāo)準(zhǔn)化進(jìn)展[J].電信網(wǎng)技術(shù),2007,(3):12-15”中總結(jié)了已有業(yè)務(wù)識(shí)別與控制的技術(shù)原理和缺陷,并介紹了國內(nèi)外的標(biāo)準(zhǔn)化及產(chǎn)業(yè)推動(dòng)狀況。從不同應(yīng)用角色看,政府、運(yùn)營商、企業(yè)以及家庭用戶對(duì)網(wǎng)絡(luò)的業(yè)務(wù)控制能力提出了各自的要求:
(1)從監(jiān)管者角度來說,要求網(wǎng)絡(luò)具備不良信息的識(shí)別和控制的能力,尤其是對(duì)反動(dòng)、色情、賭博、暴力等不良信息的過濾。
(2)從運(yùn)營商角度來說,要求網(wǎng)絡(luò)能夠精細(xì)化運(yùn)營,提供差異化的服務(wù)能力,尤其是有效遏制不良流量對(duì)網(wǎng)絡(luò)的影響,保障電信級(jí)業(yè)務(wù)的服務(wù)質(zhì)量。
(3)從企業(yè)用戶角度來說,要求網(wǎng)絡(luò)具備識(shí)別特定業(yè)務(wù)信息,并按照企業(yè)利益對(duì)信息進(jìn)行處理的能力,整合復(fù)雜的IT防范設(shè)備,使得企業(yè)專注與核心業(yè)務(wù)。
(4)從家庭用戶來說,結(jié)合健康上網(wǎng)的需求,要求網(wǎng)絡(luò)具備個(gè)性化業(yè)務(wù)控制功能,尤其是對(duì)不良網(wǎng)站的屏蔽和網(wǎng)絡(luò)游戲沉灑的防止。
所以,在寬帶接入網(wǎng)中加入業(yè)務(wù)識(shí)別具有重要意義,在論文“陳衛(wèi),任斌,賴樹明.10G EPON寬帶接入網(wǎng)中業(yè)務(wù)識(shí)別的設(shè)計(jì)和實(shí)現(xiàn)[J].光通信技術(shù),2012,6(12):16-18”和“莊稼.支持深度業(yè)務(wù)識(shí)別的10G EPON系統(tǒng)設(shè)計(jì)與核心模塊的FPGA設(shè)計(jì)實(shí)現(xiàn)[D].北京:北京郵電大學(xué),2014.”這兩篇論文中討論了業(yè)務(wù)識(shí)別在10G EPON寬帶接入網(wǎng)中的硬件實(shí)現(xiàn)。
然而,傳統(tǒng)的DPI(深度包檢測(cè),Deep Packet Inspection)業(yè)務(wù)識(shí)別技術(shù),主要依靠前期對(duì)業(yè)務(wù)的特征字段的手工提取,才能維持準(zhǔn)確率,雖然該方法有效,但前期的準(zhǔn)備工作和后期的更新維護(hù)太過于費(fèi)時(shí)費(fèi)力。隨后興起的DFI(深度流檢測(cè),Deep Flow Inspection)業(yè)務(wù)識(shí)別技術(shù),依靠大量提取的流特征來進(jìn)一步篩選,使用傳統(tǒng)的機(jī)器學(xué)習(xí)分類算法,大量的論文和實(shí)驗(yàn)證明了方法的有效性,但這種依靠經(jīng)驗(yàn)的流特征選取方法可能會(huì)沒有提取到或者丟掉不少關(guān)鍵特征,使得它的適應(yīng)性和可移植性大打折扣,而且其分類的精細(xì)度還太過于粗顆粒,難以適應(yīng)精細(xì)化的識(shí)別場景。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提供一種應(yīng)用于寬帶接入網(wǎng)的業(yè)務(wù)識(shí)別方法,引入深度學(xué)習(xí)中的卷積神經(jīng)網(wǎng)絡(luò)算法,實(shí)現(xiàn)細(xì)粒度、高精度業(yè)務(wù)識(shí)別。
為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明應(yīng)用于寬帶接入網(wǎng)的業(yè)務(wù)識(shí)別方法包括以下步驟:
S1:從寬帶接入網(wǎng)不同業(yè)務(wù)的若干數(shù)據(jù)幀中篩選得到TCP和UDP協(xié)議對(duì)應(yīng)的數(shù)據(jù)幀;
S2:對(duì)步驟S1篩選得到的所有數(shù)據(jù)幀,從每個(gè)數(shù)據(jù)幀中提出得到源IP地址、目的IP地址、協(xié)議類型、源端口、目的端口,構(gòu)建該數(shù)據(jù)幀對(duì)應(yīng)的五元組數(shù)據(jù);
S3:根據(jù)五元組數(shù)據(jù)對(duì)數(shù)據(jù)幀進(jìn)行業(yè)務(wù)流劃分,建立業(yè)務(wù)流流池群,其具體方法為:依次提取出數(shù)據(jù)幀,如果該數(shù)據(jù)幀為上行數(shù)據(jù)幀,則將其五元組數(shù)據(jù)與每個(gè)業(yè)務(wù)流流池中上行業(yè)務(wù)流流池的五元組數(shù)據(jù)進(jìn)行匹配,如果與某個(gè)上行業(yè)務(wù)流流池的五元組數(shù)據(jù)相同,則將該數(shù)據(jù)幀劃入對(duì)應(yīng)的上行業(yè)務(wù)流流池中,如果所有上行業(yè)務(wù)流流池的五元組數(shù)據(jù)都不同,則新建一個(gè)業(yè)務(wù)流流池,將該數(shù)據(jù)幀劃入新建業(yè)務(wù)流流池的上行業(yè)務(wù)流流池中;如果該數(shù)據(jù)幀為下行數(shù)據(jù)幀,則將其五元組數(shù)據(jù)與每個(gè)業(yè)務(wù)流流池中下行業(yè)務(wù)流流池的五元組數(shù)據(jù)進(jìn)行匹配,如果與某個(gè)下行業(yè)務(wù)流流池的五元組數(shù)據(jù)相同,則將該數(shù)據(jù)幀劃入對(duì)應(yīng)的下行業(yè)務(wù)流流池中,如果所有下行業(yè)務(wù)流流池的五元組數(shù)據(jù)都不同,則新建一個(gè)業(yè)務(wù)流流池,將該數(shù)據(jù)幀劃入新建業(yè)務(wù)流流池的下行業(yè)務(wù)流流池中;
S4:對(duì)于業(yè)務(wù)流流池群中每個(gè)業(yè)務(wù)流流池中的每個(gè)數(shù)據(jù)幀,提取得到其IP數(shù)據(jù)包,如果該數(shù)據(jù)包字節(jié)數(shù)小于A,在數(shù)據(jù)包末尾添零至字節(jié)數(shù)A,替換原有數(shù)據(jù)幀,否則直接以該數(shù)據(jù)包替換原有數(shù)據(jù)幀;其中A大于等于IP數(shù)據(jù)包的最大長度;
S5:對(duì)業(yè)務(wù)流流池群中的每個(gè)業(yè)務(wù)流流池添加業(yè)務(wù)類別標(biāo)簽;
S6:構(gòu)建集成卷積神經(jīng)網(wǎng)絡(luò),包括上行一維卷積神經(jīng)網(wǎng)絡(luò)、下行一維卷積神經(jīng)網(wǎng)絡(luò)、交互一維卷積神經(jīng)網(wǎng)絡(luò)和仲裁模塊,其中上行一維卷積神經(jīng)網(wǎng)絡(luò)用于對(duì)上行業(yè)務(wù)流數(shù)據(jù)包進(jìn)行業(yè)務(wù)識(shí)別,下行一維卷積神經(jīng)網(wǎng)絡(luò)用于對(duì)下行業(yè)務(wù)流數(shù)據(jù)包進(jìn)行業(yè)務(wù)識(shí)別,交互一維卷積神經(jīng)網(wǎng)絡(luò)用于上行、下行業(yè)務(wù)流數(shù)據(jù)包進(jìn)行業(yè)務(wù)識(shí)別,仲裁模塊對(duì)三個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)的識(shí)別結(jié)果進(jìn)行聯(lián)合仲裁;每個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)中,其輸入層包括A個(gè)神經(jīng)元,輸入層、每級(jí)隱層的特征圖和核均為一維結(jié)構(gòu);
S7:采用業(yè)務(wù)流流池群對(duì)集成卷積神經(jīng)網(wǎng)絡(luò)中的三個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行分別訓(xùn)練,其中上行一維卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練輸入為業(yè)務(wù)流流池群中的每條上行業(yè)務(wù)流數(shù)據(jù)包,其期望輸出為對(duì)應(yīng)的業(yè)務(wù)類別標(biāo)簽;下行一維卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練輸入為業(yè)務(wù)流流池群中的每條下行業(yè)務(wù)流數(shù)據(jù)包,其期望輸出為對(duì)應(yīng)的業(yè)務(wù)類別標(biāo)簽;交互一維卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練輸入為業(yè)務(wù)流流池群中的每條上行業(yè)務(wù)流數(shù)據(jù)包和下行業(yè)務(wù)流數(shù)據(jù)包,其期望輸出為對(duì)應(yīng)的業(yè)務(wù)類別標(biāo)簽;
S8:在寬帶接入網(wǎng)實(shí)際運(yùn)行時(shí),捕獲得到一段TCP或UDP業(yè)務(wù)流數(shù)據(jù)幀,從該業(yè)務(wù)流中每個(gè)數(shù)據(jù)幀中提取出數(shù)據(jù)包,末尾添零至長度為A字節(jié)的業(yè)務(wù)流數(shù)據(jù)包,將這些業(yè)務(wù)流數(shù)據(jù)包劃分為上行業(yè)務(wù)流數(shù)據(jù)包和下行業(yè)務(wù)流數(shù)據(jù)包,輸入集成卷積神經(jīng)網(wǎng)絡(luò)中的對(duì)應(yīng)一維卷積神經(jīng)網(wǎng)絡(luò),仲裁模塊根據(jù)三個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)的業(yè)務(wù)識(shí)別結(jié)果綜合仲裁得到最終業(yè)務(wù)識(shí)別結(jié)果,仲裁方法為:仲裁模塊收集三個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)的識(shí)別結(jié)果進(jìn)行聯(lián)合仲裁,先分別對(duì)每個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)的識(shí)別結(jié)果進(jìn)行統(tǒng)計(jì),選擇每個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)中數(shù)量占該一維卷積神經(jīng)網(wǎng)絡(luò)所有識(shí)別結(jié)果數(shù)量的百分比最大的識(shí)別結(jié)果作為該一維卷積神經(jīng)網(wǎng)絡(luò)的有效識(shí)別結(jié)果;在三個(gè)有效識(shí)別結(jié)果中,如果任意兩個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)的有效識(shí)別結(jié)果一致時(shí),將此有效識(shí)別結(jié)果作為最終的識(shí)別結(jié)果,否則選擇百分比最大的有效識(shí)別結(jié)果作為最終的識(shí)別結(jié)果。
本發(fā)明應(yīng)用于寬帶接入網(wǎng)的業(yè)務(wù)識(shí)別方法,從寬帶接入網(wǎng)不同業(yè)務(wù)的若干數(shù)據(jù)幀中篩選得到TCP和UDP協(xié)議對(duì)應(yīng)的數(shù)據(jù)幀,根據(jù)五元組數(shù)據(jù)對(duì)數(shù)據(jù)幀進(jìn)行業(yè)務(wù)流劃分,建立業(yè)務(wù)流流池群,每個(gè)業(yè)務(wù)流流池群包括上行業(yè)務(wù)流流池和下行業(yè)務(wù)流流池,對(duì)每個(gè)業(yè)務(wù)流流池添加業(yè)務(wù)類別標(biāo)簽,然后構(gòu)建集成卷積神經(jīng)網(wǎng)絡(luò),包括上行一維卷積神經(jīng)網(wǎng)絡(luò)、下行一維卷積神經(jīng)網(wǎng)絡(luò)、交互一維卷積神經(jīng)網(wǎng)絡(luò)和仲裁模塊,采用業(yè)務(wù)流流池群對(duì)三個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行分別訓(xùn)練;在寬帶接入網(wǎng)實(shí)際運(yùn)行時(shí),對(duì)捕獲的數(shù)據(jù)幀標(biāo)準(zhǔn)化為業(yè)務(wù)流數(shù)據(jù)包,輸入卷積神經(jīng)網(wǎng)絡(luò),得到業(yè)務(wù)識(shí)別結(jié)果。
與傳統(tǒng)的DPI和DFI方法相比,本發(fā)明完全不需要同DPI方法那樣提取數(shù)據(jù)報(bào)文的特征關(guān)鍵字,也不需要同DFI方法那樣依靠經(jīng)驗(yàn)提取所謂的流特征。這樣一來,就能夠完全消除諸如提取特征關(guān)鍵字和流特征的預(yù)處理難度,還能夠保證不侵犯用戶的隱私,同時(shí)還能實(shí)現(xiàn)高識(shí)別準(zhǔn)確率、精細(xì)化的業(yè)務(wù)識(shí)別,從而提高寬帶接入網(wǎng)系統(tǒng)中的業(yè)務(wù)識(shí)別性能。
附圖說明
圖1是本發(fā)明應(yīng)用于寬帶接入網(wǎng)的業(yè)務(wù)識(shí)別方法的具體實(shí)施方式流程圖;
圖2是本實(shí)施例中篩選TCP和UDP對(duì)應(yīng)數(shù)據(jù)幀的流程圖;
圖3是以太網(wǎng)協(xié)議的數(shù)據(jù)幀格式圖;
圖4是IPv4數(shù)據(jù)包格式圖;
圖5是TCP數(shù)據(jù)包結(jié)構(gòu)圖;
圖6是UDP數(shù)據(jù)包結(jié)構(gòu)圖;
圖7是本發(fā)明中業(yè)務(wù)流流池群的建立方法流程圖;
圖8是本發(fā)明中集成卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖;
圖9是本實(shí)施例中一維卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式進(jìn)行描述,以便本領(lǐng)域的技術(shù)人員更好地理解本發(fā)明。需要特別提醒注意的是,在以下的描述中,當(dāng)已知功能和設(shè)計(jì)的詳細(xì)描述也許會(huì)淡化本發(fā)明的主要內(nèi)容時(shí),這些描述在這里將被忽略。
實(shí)施例
圖1是本發(fā)明應(yīng)用于寬帶接入網(wǎng)的業(yè)務(wù)識(shí)別方法的具體實(shí)施方式流程圖。如圖1所示,本發(fā)明應(yīng)用于寬帶接入網(wǎng)的業(yè)務(wù)識(shí)別方法包括以下步驟:
S101:篩選TCP和UDP對(duì)應(yīng)數(shù)據(jù)幀:
從寬帶接入網(wǎng)不同業(yè)務(wù)的若干數(shù)據(jù)幀中篩選得到TCP和UDP協(xié)議對(duì)應(yīng)的數(shù)據(jù)幀。
TCP和UDP協(xié)議是IP協(xié)議的上層協(xié)議,目前寬帶接入網(wǎng)中所使用的IP協(xié)議包括IPV4和IPV6,其中最常用的是IPV4協(xié)議,因此本實(shí)施例以IPV4協(xié)議為例來說明本發(fā)明的技術(shù)方案。圖2是本實(shí)施例中篩選TCP和UDP對(duì)應(yīng)數(shù)據(jù)幀的流程圖。如圖2所示,在使用IPV4協(xié)議的寬帶接入網(wǎng)中篩選TCP和UDP協(xié)議對(duì)應(yīng)的數(shù)據(jù)幀的具體步驟包括:
S201:解析以太網(wǎng)協(xié)議數(shù)據(jù)幀:
獲取寬帶接入網(wǎng)的以太網(wǎng)協(xié)議的數(shù)據(jù)幀并進(jìn)行解析,提取得到幀類型字段。圖3是以太網(wǎng)協(xié)議的數(shù)據(jù)幀格式圖。如圖3所示,以太網(wǎng)協(xié)議數(shù)據(jù)幀由五個(gè)部分組成,分別為6個(gè)字節(jié)的源MAC地址、6個(gè)字節(jié)的目的MAC地址、2個(gè)字節(jié)的幀類型、46到1500個(gè)字節(jié)的負(fù)載數(shù)據(jù)和4個(gè)字節(jié)的幀校驗(yàn)序列。其中,對(duì)于2個(gè)字節(jié)的幀類型數(shù)據(jù),0x8808代表OAM幀,0x8809代表MPCP幀,0x0806代表ARP幀,0x0836代表RARP幀,0x0800代表IPv4幀,0x08DD代表IPv6幀。
S202:判斷幀類型字段是否為0x0800,如果是,則說明該數(shù)據(jù)幀為IPv4對(duì)應(yīng)數(shù)據(jù)幀,保留此數(shù)據(jù)幀,進(jìn)入步驟S203,否則將該數(shù)據(jù)幀丟棄,判斷下一條數(shù)據(jù)幀。
S203:提取協(xié)議類型字段:
從IPv4對(duì)應(yīng)數(shù)據(jù)幀中提取得到IP v4數(shù)據(jù)包,然后從IP v4數(shù)據(jù)包中提取得到協(xié)議類型字段。
圖4是IPv4數(shù)據(jù)包格式圖。如圖4所示,IPv4數(shù)據(jù)包的協(xié)議類型字段總共1個(gè)字節(jié),如果等于0x06則代表當(dāng)前IPv4數(shù)據(jù)包的上層協(xié)議為TCP協(xié)議,且負(fù)載數(shù)據(jù)為TCP協(xié)議數(shù)據(jù);如果等于0x11則代表當(dāng)前IPv4報(bào)文的上層協(xié)議為UDP協(xié)議,且負(fù)載數(shù)據(jù)為UDP協(xié)議數(shù)據(jù)。而IPV4中還包括ICMP報(bào)文、IGMP報(bào)文等,分別對(duì)應(yīng)各自的協(xié)議類型。因此,根據(jù)協(xié)議類型字段即可判定該數(shù)據(jù)幀對(duì)應(yīng)的上層協(xié)議類型。
S204:判斷協(xié)議類型字段是否為0x06,如果是,則說明該報(bào)文為TCP對(duì)應(yīng)數(shù)據(jù)幀,保存此數(shù)據(jù)幀,否則進(jìn)入步驟S205。
S205:判斷協(xié)議類型字段是否為0x11,如果是,則說明該報(bào)文為UDP對(duì)應(yīng)數(shù)據(jù)幀,保存此數(shù)據(jù)幀,否則將該報(bào)文丟棄,判斷下一條數(shù)據(jù)幀。
采用以上步驟,就可以從寬帶接入網(wǎng)的數(shù)據(jù)報(bào)文中提取得到TCP和UDP對(duì)應(yīng)的數(shù)據(jù)幀。
S102:提取五元組數(shù)據(jù):
一般來說,業(yè)務(wù)流的定義指的是在一段時(shí)間內(nèi)具有相同五元組的報(bào)文組成的集合。五元組的定義指的是IP協(xié)議首部和TCP或者UDP首部中的源IP地址、目的IP地址、協(xié)議類型、源端口、目的端口這五個(gè)字段,即五元組={源IP地址,目的IP地址,協(xié)議類型,源端口,目的端口}。圖5是TCP數(shù)據(jù)包結(jié)構(gòu)圖。圖6是UDP數(shù)據(jù)包結(jié)構(gòu)圖。如圖4、圖5和圖6所示,五元組在IP協(xié)議對(duì)應(yīng)的數(shù)據(jù)幀中的位置一般來說是固定的,因此將五元組數(shù)據(jù)按照位置從步驟S101中篩選得到的TCP和UDP對(duì)應(yīng)的各個(gè)數(shù)據(jù)幀中提取出來即可。
S103:建立業(yè)務(wù)流流池群:
業(yè)務(wù)流是一種雙向的包含上行請(qǐng)求與下行應(yīng)答的互動(dòng)交流數(shù)據(jù),用戶向服務(wù)器發(fā)出的請(qǐng)求報(bào)文為上行業(yè)務(wù)流,而服務(wù)器向用戶發(fā)出的應(yīng)答報(bào)文為下行業(yè)務(wù)流,且上行業(yè)務(wù)流與下行業(yè)務(wù)流的五元組數(shù)據(jù)中只有源IP地址和目的IP地址相反,其他三元組相同??梢姡陬A(yù)設(shè)時(shí)間內(nèi),具有相同的五元組的上行IP數(shù)據(jù)報(bào)文按先后順序匯聚成一條上行業(yè)務(wù)流,與之源IP地址和目的IP地址相反而其他三元組相同的業(yè)務(wù)流則匯聚為下行業(yè)務(wù)流,共同構(gòu)成雙向流集合。不同時(shí)刻捕獲的五元組相同的雙向業(yè)務(wù)流形成一個(gè)業(yè)務(wù)流流池,包括上行業(yè)務(wù)流池和下行業(yè)務(wù)流池。一個(gè)業(yè)務(wù)流池對(duì)應(yīng)一種業(yè)務(wù)類別,且所有業(yè)務(wù)流的五元組相同。一個(gè)業(yè)務(wù)流池包含許多不同時(shí)刻收集的業(yè)務(wù)流,所有不同業(yè)務(wù)流流池構(gòu)成業(yè)務(wù)流流池群。也就是說,流池群里包含許多五元組不同的流池,流池里包含五元組相同但捕獲時(shí)刻不同的流。
圖7是本發(fā)明中業(yè)務(wù)流流池群的建立方法流程圖。如圖7所示,本發(fā)明中業(yè)務(wù)流流池群的建立方法包括以下步驟:
S701:初始化參數(shù):
初始化第1個(gè)業(yè)務(wù)流流池P1=(U1,D1),U1表示第1個(gè)業(yè)務(wù)流流池的上行業(yè)務(wù)流池,D1表示第1個(gè)業(yè)務(wù)流流池的下行業(yè)務(wù)流池,令如果第1個(gè)數(shù)據(jù)幀為上行數(shù)據(jù)幀,將第1個(gè)數(shù)據(jù)幀放入第1個(gè)上行業(yè)務(wù)流池U1,如果第1個(gè)數(shù)據(jù)幀為下行數(shù)據(jù)幀,則將第1個(gè)數(shù)據(jù)幀放入第1個(gè)下行業(yè)務(wù)流池D1。
由于上、下行幀的五元組數(shù)據(jù)之間存在對(duì)應(yīng)關(guān)系,因此無論第1個(gè)數(shù)據(jù)幀是上行幀還是下行幀,U1和D1對(duì)應(yīng)的五元組數(shù)據(jù)都已經(jīng)確定了。
S702:令數(shù)據(jù)幀序號(hào)n=2:
S703:判斷第n個(gè)數(shù)據(jù)幀是否為上行數(shù)據(jù)幀,如果是,進(jìn)入步驟S704,否則進(jìn)入步驟S710;
S704:令業(yè)務(wù)流池序號(hào)m=1:
S705:判斷是否第n個(gè)數(shù)據(jù)幀屬于上行業(yè)務(wù)流池Um,即判斷第n個(gè)數(shù)據(jù)幀的五元組數(shù)據(jù)與上行業(yè)務(wù)流池Um的五元組數(shù)據(jù)相同,如果相同,則說明第n個(gè)數(shù)據(jù)幀屬于上行業(yè)務(wù)流池Um,進(jìn)入步驟S706,否則說明不屬于,進(jìn)入步驟S707。
S706:將第n個(gè)數(shù)據(jù)幀放入上行業(yè)務(wù)流池Um,進(jìn)入步驟S716。
S707:判斷是否m=M,M表示當(dāng)前業(yè)務(wù)流池的數(shù)量,如果不是,說明還有業(yè)務(wù)流池未判斷,進(jìn)入步驟S708,如果是,說明現(xiàn)有的業(yè)務(wù)流池已經(jīng)判斷完畢也未找到五元組數(shù)據(jù)相同的業(yè)務(wù)流池,進(jìn)入步驟S709。
S708:令m=m+1,返回步驟S705。
S709:新建業(yè)務(wù)流流池:
新建業(yè)務(wù)流流池PM+1=(UM+1,DM+1),將第n個(gè)數(shù)據(jù)幀放入上行業(yè)務(wù)流池UM+1,進(jìn)入步驟S716。
S710:令業(yè)務(wù)流池序號(hào)m=1:
S711:判斷是否第n個(gè)數(shù)據(jù)幀屬于下行業(yè)務(wù)流池Dm,即判斷第n個(gè)數(shù)據(jù)幀的五元組數(shù)據(jù)與下行業(yè)務(wù)流池Dm的五元組數(shù)據(jù)相同,如果相同,則說明第n個(gè)數(shù)據(jù)幀屬于下行業(yè)務(wù)流池Dm,進(jìn)入步驟S712,否則說明不屬于,進(jìn)入步驟S713。
S712:將第n個(gè)數(shù)據(jù)幀放入下行業(yè)務(wù)流池Dm,進(jìn)入步驟S716。
S713:判斷是否m=M,M表示當(dāng)前業(yè)務(wù)流池的數(shù)量,如果不是,說明還有業(yè)務(wù)流池未判斷,進(jìn)入步驟S714,如果是,說明現(xiàn)有的業(yè)務(wù)流池已經(jīng)判斷完畢也未找到五元組數(shù)據(jù)相同的業(yè)務(wù)流池,進(jìn)入步驟S715。
S714:令m=m+1,返回步驟S711。
S715:新建業(yè)務(wù)流流池:
新建業(yè)務(wù)流流池PM+1=(UM+1,DM+1),將第n個(gè)數(shù)據(jù)幀放入下行業(yè)務(wù)流池DM+1,進(jìn)入步驟S716。
S716:判斷是否n<N,N表示步驟S101篩選得到的數(shù)據(jù)幀總數(shù),如果是,說明數(shù)據(jù)幀還未全部劃入業(yè)務(wù)流流池,進(jìn)入步驟S717,否則說明所有幀全部劃入對(duì)應(yīng)的業(yè)務(wù)流流池,業(yè)務(wù)流流池群建立結(jié)束。
S717:令n=n+1,返回步驟S703。
S104:標(biāo)準(zhǔn)化業(yè)務(wù)流數(shù)據(jù):
數(shù)據(jù)幀由許多的字節(jié)構(gòu)成,且每條數(shù)據(jù)幀中IP數(shù)據(jù)包的長度不一致,所以需要把業(yè)務(wù)流數(shù)據(jù)幀轉(zhuǎn)換為可以被集成卷積神經(jīng)網(wǎng)絡(luò)接收的標(biāo)準(zhǔn)數(shù)據(jù),其具體方法為:對(duì)于每個(gè)業(yè)務(wù)流流池中的每個(gè)數(shù)據(jù)幀,提取得到其IP數(shù)據(jù)包,如果該數(shù)據(jù)包字節(jié)數(shù)小于A,在數(shù)據(jù)包末尾添零至字節(jié)數(shù)A,得到標(biāo)準(zhǔn)數(shù)據(jù)包,替換原有數(shù)據(jù)報(bào)文,否則直接以該數(shù)據(jù)包替換原有數(shù)據(jù)報(bào)文。其中A大于等于IP報(bào)文字段的最大長度。以IPv4協(xié)議為例,其IP數(shù)據(jù)包在數(shù)據(jù)幀中的字節(jié)長度在[46,1500]之間,因此A≥1500。顯然,采用以上方式可以使每個(gè)業(yè)務(wù)流數(shù)據(jù)包等長,從而對(duì)業(yè)務(wù)流數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化。本實(shí)施例中,設(shè)置A=1500。
S105:添加業(yè)務(wù)類別標(biāo)簽:
由于每個(gè)業(yè)務(wù)流流池中的數(shù)據(jù)包對(duì)應(yīng)一種業(yè)務(wù),因此對(duì)于經(jīng)過步驟S104標(biāo)準(zhǔn)化處理的業(yè)務(wù)流流池群,對(duì)每個(gè)業(yè)務(wù)流流池添加業(yè)務(wù)類別標(biāo)簽。業(yè)務(wù)類別標(biāo)簽可以借助一些現(xiàn)有的輔助工具用人工的方式獲知,由于本發(fā)明采用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行業(yè)務(wù)識(shí)別,因此業(yè)務(wù)流類別標(biāo)簽是一個(gè)根據(jù)識(shí)別粗細(xì)度自定義比特位數(shù)的二進(jìn)制數(shù)據(jù),每一個(gè)二進(jìn)制數(shù)據(jù)代表一種業(yè)務(wù)類別。
S106:構(gòu)建集成卷積神經(jīng)網(wǎng)絡(luò):
根據(jù)TCP/IP協(xié)議的有關(guān)知識(shí),上下行數(shù)據(jù)的特征是不一樣的,也就是說,上行數(shù)據(jù)有上行數(shù)據(jù)的特征,下行數(shù)據(jù)有下行數(shù)據(jù)的特征,另外需要注意的是,上行和下行是一種交互數(shù)據(jù),也就是說上行數(shù)據(jù)和下行數(shù)據(jù)是有關(guān)聯(lián)的,因此需要一種業(yè)務(wù)識(shí)別方案既能夠保留這種關(guān)聯(lián)性同時(shí)又能分別提取到上行業(yè)務(wù)流特征和下行業(yè)務(wù)流特征,使識(shí)別結(jié)果達(dá)到理想狀態(tài)。正是基于這種需要,本發(fā)明設(shè)計(jì)了并行的集成卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。
圖8是本發(fā)明中集成卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖。如圖8所示,本發(fā)明的集成卷積神經(jīng)網(wǎng)絡(luò)包括上行一維卷積神經(jīng)網(wǎng)絡(luò)、下行一維卷積神經(jīng)網(wǎng)絡(luò)、交互一維卷積神經(jīng)網(wǎng)絡(luò)和仲裁模塊,其中上行一維卷積神經(jīng)網(wǎng)絡(luò)用于對(duì)上行業(yè)務(wù)流數(shù)據(jù)包進(jìn)行業(yè)務(wù)識(shí)別,下行一維卷積神經(jīng)網(wǎng)絡(luò)用于對(duì)下行業(yè)務(wù)流數(shù)據(jù)包進(jìn)行業(yè)務(wù)識(shí)別,交互一維卷積神經(jīng)網(wǎng)絡(luò)用于上行、下行業(yè)務(wù)流數(shù)據(jù)包進(jìn)行業(yè)務(wù)識(shí)別,仲裁模塊收集三個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)的識(shí)別結(jié)果進(jìn)行聯(lián)合仲裁,先分別對(duì)每個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)的識(shí)別結(jié)果進(jìn)行統(tǒng)計(jì),選擇每個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)中數(shù)量占該一維卷積神經(jīng)網(wǎng)絡(luò)所有識(shí)別結(jié)果數(shù)量的百分比最大的識(shí)別結(jié)果作為該一維卷積神經(jīng)網(wǎng)絡(luò)的有效識(shí)別結(jié)果。在三個(gè)有效識(shí)別結(jié)果中,如果任意兩個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)的有效識(shí)別結(jié)果一致時(shí),將此有效識(shí)別結(jié)果作為最終的識(shí)別結(jié)果,否則選擇占對(duì)應(yīng)一維卷積神經(jīng)網(wǎng)絡(luò)識(shí)別結(jié)果百分比最大的有效識(shí)別結(jié)果作為最終的識(shí)別結(jié)果。
可見,在本發(fā)明的集成卷積神經(jīng)網(wǎng)絡(luò)中,三個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)是并行運(yùn)行的。由于上行業(yè)務(wù)流數(shù)據(jù)包和下行業(yè)務(wù)流數(shù)據(jù)包都是采用相同的方式進(jìn)行標(biāo)準(zhǔn)化,因此三個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)采用相同的結(jié)構(gòu)。傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)針對(duì)的是圖像,其輸入為二維數(shù)據(jù),而本發(fā)明所針對(duì)的業(yè)務(wù)流數(shù)據(jù)包是一維數(shù)據(jù),如果按照傳統(tǒng)思路,將業(yè)務(wù)流數(shù)據(jù)包轉(zhuǎn)換為二維數(shù)據(jù),由于輸入數(shù)據(jù)量維度過大,傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練需要花費(fèi)大量時(shí)間,而且業(yè)務(wù)識(shí)別也并不完全等同于圖像識(shí)別。因此為了提升卷積神經(jīng)網(wǎng)絡(luò)在業(yè)務(wù)識(shí)別中的應(yīng)用效果,需要設(shè)計(jì)適用于一維數(shù)據(jù)的卷積神經(jīng)網(wǎng)絡(luò)。
根據(jù)本發(fā)明的業(yè)務(wù)流數(shù)據(jù)特點(diǎn)可知,在一維卷積神經(jīng)網(wǎng)絡(luò)中,其輸入為A×1的業(yè)務(wù)流數(shù)據(jù),在卷積神經(jīng)網(wǎng)絡(luò)第j級(jí)隱層中,其特征圖大小為Pj×1,Kj根據(jù)需要設(shè)置,每級(jí)隱層核的大小為Qj×1,Qj根據(jù)需要設(shè)置。也就是說,在一維卷積神經(jīng)網(wǎng)絡(luò)中,輸入、每級(jí)隱層的特征圖和核均為一維結(jié)構(gòu)。而其他卷積神經(jīng)網(wǎng)絡(luò)參數(shù),例如隱層層數(shù)、每層隱層的濾波器個(gè)數(shù)等等,可以根據(jù)實(shí)際需要來設(shè)置。
圖9是本實(shí)施例中一維卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖。如圖9所示,本發(fā)明中一維卷積神經(jīng)網(wǎng)絡(luò)包括輸入層INPUT、第一卷積層C1、第一采樣層S2、第二卷積層C3、第二采樣層S4、第三卷積層C5、第三采樣層S6和輸出層OUTPUT,其中:
輸入層INPUT,神經(jīng)元個(gè)數(shù)為1500,即與業(yè)務(wù)流數(shù)據(jù)包的字節(jié)數(shù)一致,第個(gè)神經(jīng)元對(duì)應(yīng)一個(gè)字節(jié)數(shù)據(jù)。
第一卷積層C1,共有1個(gè)特征圖(特征圖個(gè)數(shù)可以根據(jù)需要自定義),特征圖由1496個(gè)神經(jīng)元構(gòu)成,即特征圖大小為1496*1。每個(gè)神經(jīng)元指定一個(gè)大小為5的接受域,由于不考慮對(duì)輸入層INPUT的邊界進(jìn)行拓展,則滑動(dòng)窗將有1496個(gè)不同的位置,也就是C1層的大小是1496,其中1496=1500-(5-1)。
第一采樣層S2,共有1個(gè)特征圖(與C1相同),特征圖由748個(gè)神經(jīng)元構(gòu)成。每個(gè)神經(jīng)元具有一個(gè)大小為2的接受域,簡單地說,由2個(gè)點(diǎn)下采樣為1個(gè)點(diǎn),也就是C1中不重復(fù)的2個(gè)數(shù)的加權(quán)平均。其中748=1496/2。
第二卷積層C3,共有1個(gè)特征圖,特征圖由744個(gè)神經(jīng)元構(gòu)成。每個(gè)神經(jīng)元指定一個(gè)大小為5的接受域,由于不考慮對(duì)S2的邊界進(jìn)行拓展,則滑動(dòng)窗將有744個(gè)不同的位置,也就是C3層的大小是744,其中744=748-(5-1)。
第二采樣層S4,共有1個(gè)特征圖(與C3相同),特征圖由372個(gè)神經(jīng)元構(gòu)成。每個(gè)神經(jīng)元具有一個(gè)大小為2的接受域,同樣地,是由2個(gè)點(diǎn)下采樣為1個(gè)點(diǎn),也就是C3中不重復(fù)的2個(gè)數(shù)的加權(quán)平均。其中372=744/2。
第三卷積層C5,共有1個(gè)特征圖,特征圖由368個(gè)神經(jīng)元構(gòu)成。每個(gè)神經(jīng)元指定一個(gè)大小為5的接受域,由于不考慮對(duì)S4的邊界進(jìn)行拓展,則滑動(dòng)窗將有368個(gè)不同的位置,也就是C4層的大小是368,其中368=372-(5-1)。
第三采樣層S6,共有1個(gè)特征圖(與C5相同),每個(gè)特征圖由184個(gè)神經(jīng)元構(gòu)成。每個(gè)神經(jīng)元具有一個(gè)大小為2的接受域,同樣地,由2個(gè)點(diǎn)下采樣為1個(gè)點(diǎn),也就是C5中不重復(fù)的2個(gè)數(shù)的加權(quán)平均。其中184=368/2。
輸出層OUTPUT是一個(gè)全連接層。輸出層的神經(jīng)元的個(gè)數(shù)是與要識(shí)別的業(yè)務(wù)種類相同的,本實(shí)施例中假定業(yè)務(wù)類型為7種,那么輸出層OUTPUT的神經(jīng)元數(shù)量即為7。
S107:分別訓(xùn)練一維卷積神經(jīng)網(wǎng)絡(luò):
采用業(yè)務(wù)流流池群對(duì)于集成卷積神經(jīng)網(wǎng)絡(luò)中的三個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行分別訓(xùn)練,其中上行一維卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練輸入為業(yè)務(wù)流流池群中的每條上行業(yè)務(wù)流數(shù)據(jù)包,其期望輸出為對(duì)應(yīng)的業(yè)務(wù)類別標(biāo)簽;下行一維卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練輸入為業(yè)務(wù)流流池群中的每條下行業(yè)務(wù)流數(shù)據(jù)包,其期望輸出為對(duì)應(yīng)的業(yè)務(wù)類別標(biāo)簽;交互一維卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練輸入為業(yè)務(wù)流流池群中的每條上行業(yè)務(wù)流數(shù)據(jù)包和下行業(yè)務(wù)流數(shù)據(jù)包,其期望輸出為對(duì)應(yīng)的業(yè)務(wù)類別標(biāo)簽。
S108:業(yè)務(wù)識(shí)別:
在寬帶接入網(wǎng)實(shí)際運(yùn)行時(shí),捕獲得到一段TCP或UDP業(yè)務(wù)流數(shù)據(jù)幀,從該業(yè)務(wù)流中每個(gè)數(shù)據(jù)幀中提取出數(shù)據(jù)包,末尾添零至長度為A字節(jié)的業(yè)務(wù)流數(shù)據(jù)包,將這些業(yè)務(wù)流數(shù)據(jù)包劃分為上行業(yè)務(wù)流數(shù)據(jù)包和下行業(yè)務(wù)流數(shù)據(jù)包,輸入集成卷積神經(jīng)網(wǎng)絡(luò)中的對(duì)應(yīng)一維卷積神經(jīng)網(wǎng)絡(luò),仲裁模塊根據(jù)三個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)的業(yè)務(wù)識(shí)別結(jié)果綜合仲裁得到最終業(yè)務(wù)識(shí)別結(jié)果,其仲裁方法為:仲裁模塊收集三個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)的識(shí)別結(jié)果,先分別對(duì)每個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)的識(shí)別結(jié)果進(jìn)行統(tǒng)計(jì),選擇每個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)中數(shù)量占該一維卷積神經(jīng)網(wǎng)絡(luò)所有識(shí)別結(jié)果數(shù)量的百分比最大的識(shí)別結(jié)果作為該一維卷積神經(jīng)網(wǎng)絡(luò)的有效識(shí)別結(jié)果。在三個(gè)有效識(shí)別結(jié)果中,如果任意兩個(gè)一維卷積神經(jīng)網(wǎng)絡(luò)的有效識(shí)別結(jié)果一致時(shí),將此有效識(shí)別結(jié)果作為最終的識(shí)別結(jié)果,否則選擇百分比最大的有效識(shí)別結(jié)果作為最終的識(shí)別結(jié)果。
為了驗(yàn)證本發(fā)明的技術(shù)效果,收集了實(shí)際寬帶接入網(wǎng)中7種不同業(yè)務(wù)、共計(jì)139800個(gè)數(shù)據(jù)幀,從每個(gè)業(yè)務(wù)的數(shù)據(jù)幀中,劃出一部分用于卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,剩下一部分用于測(cè)試,其中訓(xùn)練數(shù)據(jù)為130000個(gè)數(shù)據(jù)幀,測(cè)試數(shù)據(jù)為9800個(gè)數(shù)據(jù)幀。在對(duì)每個(gè)一維神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練時(shí),為避免過擬合現(xiàn)象,將對(duì)應(yīng)的不同業(yè)務(wù)的所有業(yè)務(wù)流數(shù)據(jù)包按照隨機(jī)順序輸入。根據(jù)實(shí)驗(yàn)結(jié)果統(tǒng)計(jì)可知,采用本發(fā)明對(duì)寬帶接入網(wǎng)業(yè)務(wù)的識(shí)別率可達(dá)到90%以上,可見采用本發(fā)明可以實(shí)現(xiàn)對(duì)寬帶接入網(wǎng)高準(zhǔn)確率的業(yè)務(wù)識(shí)別。
盡管上面對(duì)本發(fā)明說明性的具體實(shí)施方式進(jìn)行了描述,以便于本技術(shù)領(lǐng)域的技術(shù)人員理解本發(fā)明,但應(yīng)該清楚,本發(fā)明不限于具體實(shí)施方式的范圍,對(duì)本技術(shù)領(lǐng)域的普通技術(shù)人員來講,只要各種變化在所附的權(quán)利要求限定和確定的本發(fā)明的精神和范圍內(nèi),這些變化是顯而易見的,一切利用本發(fā)明構(gòu)思的發(fā)明創(chuàng)造均在保護(hù)之列。