朱祖勍,孔嘉偉,牛彬,唐紹飛,房紅強(qiáng),劉思祺
(中國(guó)科學(xué)技術(shù)大學(xué)信息科學(xué)技術(shù)學(xué)院,安徽 合肥 230027)
當(dāng)前,隨著云計(jì)算和大數(shù)據(jù)等新興業(yè)務(wù)的飛速發(fā)展[1-3],主干網(wǎng)中的網(wǎng)絡(luò)流量在飛速增長(zhǎng)的同時(shí),其統(tǒng)計(jì)特性也變得越來(lái)越復(fù)雜。這些網(wǎng)絡(luò)流量給現(xiàn)有基于IP-over-Optical 的主干網(wǎng)體系架構(gòu)帶來(lái)了新的挑戰(zhàn)[4-6],也使傳統(tǒng)波分復(fù)用(DWDM,dense wavelength division multiplexing)網(wǎng)絡(luò)的可擴(kuò)展性和靈活性呈現(xiàn)出不足。為了解決這一問(wèn)題,基于靈活柵格的彈性光網(wǎng)絡(luò)(EON,elastic optical network)應(yīng)運(yùn)而生[7-11],它們提供更細(xì)的頻譜分配粒度和更加靈活的頻譜分配機(jī)制,從而極大地提升了光層的靈活性和頻譜利用率。在此基礎(chǔ)上,人們開始考慮用 EON 替換傳統(tǒng) IP-over-Optical 主干網(wǎng)中的DWDM 層,以實(shí)現(xiàn)IP-over-EON[12-14],集成IP 技術(shù)和EON 技術(shù)的優(yōu)勢(shì)。與此同時(shí),軟件定義網(wǎng)絡(luò)(SDN,software-defined networking)[15-16]技術(shù)通過(guò)分離網(wǎng)絡(luò)的控制面和數(shù)據(jù)面并提供集中式的網(wǎng)絡(luò)控制與管理(NC&M,network control and management)機(jī)制來(lái)保障網(wǎng)絡(luò)的可編程性,SDN 在EON中已經(jīng)獲得了應(yīng)用并證明了其優(yōu)越性[17-20]。因此可以預(yù)見(jiàn),將SDN 應(yīng)用于IP-over-EON 中,即實(shí)現(xiàn)SD-IPoEON(software-defined IP-over-EON),有助于改善主干網(wǎng)的適配性和可編程性。
為了全面地體現(xiàn)SD-IPoEON 架構(gòu)的優(yōu)勢(shì),還需要實(shí)時(shí)的、細(xì)粒度的網(wǎng)絡(luò)監(jiān)測(cè),以保障其中各類網(wǎng)絡(luò)應(yīng)用的服務(wù)質(zhì)量(QoS,quality of service)。但是,現(xiàn)有的傳統(tǒng)網(wǎng)絡(luò)監(jiān)測(cè)技術(shù)難以滿足實(shí)時(shí)監(jiān)控和自動(dòng)網(wǎng)絡(luò)調(diào)整的需求,造成這一問(wèn)題的原因主要有以下3個(gè)方面:首先,因?yàn)镮P-over-EON 是一個(gè)復(fù)雜的多層網(wǎng)絡(luò),針對(duì)其的故障監(jiān)測(cè)與定位需要采用跨層的方法,同時(shí)分析IP 層與EON 層的情況,然而,當(dāng)前的主流技術(shù)基本上都是單層的,僅針對(duì)IP層或EON 層進(jìn)行分析,并沒(méi)有將兩者結(jié)合起來(lái);其次,現(xiàn)有技術(shù)大多僅通過(guò)帶外的方式收集網(wǎng)絡(luò)狀態(tài)信息[21-22],這決定了它們難以實(shí)現(xiàn)實(shí)時(shí)的、端到端的和細(xì)粒度的監(jiān)測(cè),而且它們會(huì)增大控制器的負(fù)擔(dān),可擴(kuò)展性較差;最后,現(xiàn)有技術(shù)較少考慮業(yè)務(wù)級(jí)別(App-level,application level)的監(jiān)測(cè),考慮到不同的App(Application),有著各自不同的QoS需求,它們的異常監(jiān)測(cè)與故障恢復(fù)機(jī)制會(huì)有不同。
考慮到以上問(wèn)題,本文通過(guò)引入帶內(nèi)網(wǎng)絡(luò)遙測(cè)(INT,in-band network telemetry),并在其基礎(chǔ)上設(shè)計(jì)網(wǎng)絡(luò)監(jiān)控系統(tǒng),將EON 層的信息通過(guò)INT 的方式采集出來(lái),以實(shí)現(xiàn)跨層帶內(nèi)網(wǎng)絡(luò)遙測(cè)(ML-INT,multi-layer INT)機(jī)制[23],同時(shí)將IP 層和EON 層的信息封裝到ML-INT 分組中,完成實(shí)時(shí)的、分布式的和流粒度的端到端App-level 網(wǎng)絡(luò)監(jiān)測(cè)。注意到,盡管App-level 的網(wǎng)絡(luò)監(jiān)控能很好地采集業(yè)務(wù)的端到端QoS 參數(shù),它并不能單獨(dú)完成網(wǎng)絡(luò)故障的定位和網(wǎng)絡(luò)狀態(tài)的及時(shí)調(diào)整,因此,本文在這一分布式網(wǎng)絡(luò)監(jiān)控系統(tǒng)內(nèi)加入集中式的網(wǎng)絡(luò)監(jiān)測(cè),利用SDN控制器完成鏈路級(jí)別(link-level)的網(wǎng)絡(luò)監(jiān)測(cè)。具體來(lái)說(shuō),App-level 監(jiān)測(cè)通過(guò)ML-INT 實(shí)現(xiàn)端到端的實(shí)時(shí)細(xì)粒度網(wǎng)絡(luò)監(jiān)測(cè),對(duì)采集到的數(shù)據(jù)進(jìn)行分布式分析,利用深度學(xué)習(xí)(DL,deep learning)實(shí)現(xiàn)故障的初步識(shí)別與定位[24],然后將異常信息上傳給控制器。控制器再結(jié)合自身link-level 的帶外監(jiān)測(cè)信息,進(jìn)一步實(shí)現(xiàn)精確的故障定位并采取相應(yīng)的故障恢復(fù)措施。本文提出的基于深度學(xué)習(xí)的跨層網(wǎng)絡(luò)業(yè)務(wù)性能感知系統(tǒng),融合了分布式網(wǎng)絡(luò)監(jiān)測(cè)與集中式網(wǎng)絡(luò)管控的優(yōu)點(diǎn)。類似于人類的神經(jīng)系統(tǒng),集中式的SDN 控制器為大腦,負(fù)責(zé)集中式網(wǎng)絡(luò)管控;分布式的App-level 監(jiān)測(cè)為神經(jīng)感應(yīng)元,負(fù)責(zé)分布式的細(xì)粒度網(wǎng)絡(luò)監(jiān)測(cè)。因此,將其稱為網(wǎng)絡(luò)神經(jīng)系統(tǒng)(NNS,network nervous system)[25]。通過(guò)搭建小規(guī)模但真實(shí)的網(wǎng)絡(luò)平臺(tái),實(shí)現(xiàn)并用實(shí)驗(yàn)展示了NNS 的優(yōu)勢(shì),實(shí)驗(yàn)結(jié)果證明其可以針對(duì)網(wǎng)絡(luò)業(yè)務(wù)的QoS 需求,實(shí)現(xiàn)精確有效的故障識(shí)別、定位和恢復(fù)。同時(shí),實(shí)驗(yàn)結(jié)果也表明,本文所提的NNS 比傳統(tǒng)的網(wǎng)絡(luò)監(jiān)測(cè)系統(tǒng)具有更良好的可擴(kuò)展性和更靈活的可編程性。
圖1展示了NNS 的整體架構(gòu)[23,25],系統(tǒng)的數(shù)據(jù)平面由一個(gè)IP-over-EON 組成。EON 層由光纖鏈路和帶寬可變的光交換機(jī)(BV-WSS,bandwidth variable wavelength-selective switch)構(gòu)成[26-27],并可以建立光路,其中,光性能監(jiān)測(cè)器(OPM,optical performance monitor)監(jiān)控各個(gè)鏈路的狀態(tài),采集各條光路的光信噪比(OSNR,optical signal-to-noise ratio)、中心波長(zhǎng)和功率等信息。IP 層由可編程交換機(jī)和業(yè)務(wù)主機(jī)構(gòu)成,業(yè)務(wù)主機(jī)上運(yùn)行著不同QoS需求的業(yè)務(wù);可編程交換機(jī)通過(guò)INT 代理(INT agent)和OPM 進(jìn)行信息交互,INT agent 通過(guò)輪詢的方式從OPM 中獲取所需的光路信息,并發(fā)送至可編程交換機(jī)。如圖1所示,可編程交換機(jī)同時(shí)將IP 層和EON 層的數(shù)據(jù)插入INT 頭部的INT 數(shù)據(jù)字段中。IP 層數(shù)據(jù)包括可編程交換機(jī)的交換機(jī)標(biāo)識(shí)(switch ID)、分組所經(jīng)過(guò)的端口信息和排隊(duì)時(shí)延信息,EON 層的數(shù)據(jù)包括OSNR、中心波長(zhǎng)和功率信息。當(dāng)業(yè)務(wù)主機(jī)A 與業(yè)務(wù)主機(jī)B 的通信分組被轉(zhuǎn)發(fā)到最后一臺(tái)可編程交換機(jī)(INT sink)上,INT sink將INT 頭部拆除并將其發(fā)送至數(shù)據(jù)分析設(shè)備(data analyzer)。因此,ML-INT 技術(shù)對(duì)于通信的業(yè)務(wù)主機(jī)之間是透明的。data analyzer 通過(guò)解析INT 頭部的INT 字段,便可以依次獲取業(yè)務(wù)主機(jī)A 與B 的通信路徑上每一臺(tái)可編程交換機(jī)和每一條光路的信息,然后將解析出的ML-INT 數(shù)據(jù)發(fā)送至DL 故障識(shí)別和定位模塊。
圖1 NNS 整體架構(gòu)
由圖1可知,App 中集成了App-level 監(jiān)測(cè)模塊,App-level 監(jiān)測(cè)模塊包含QoS 異常監(jiān)測(cè)模塊和DL 故障識(shí)別和定位模塊。其中,QoS 異常監(jiān)測(cè)模塊通過(guò)監(jiān)測(cè)QoS 參數(shù),如接收端帶寬和抖動(dòng)等,可以實(shí)現(xiàn)基于業(yè)務(wù)的獨(dú)特QoS 需求定義異常,并及時(shí)將異常匯報(bào)給DL 故障識(shí)別和定位模塊。DL 故障識(shí)別和定位模塊接收到異常信息后,開始對(duì)data analyzer 發(fā)來(lái)的ML-INT 數(shù)據(jù)進(jìn)行分析,實(shí)現(xiàn)光路級(jí)別的故障識(shí)別和定位,并將初步的識(shí)別和定位結(jié)果傳輸至SDN 中央控制器。中央控制器共包含3個(gè)模塊,分別為數(shù)據(jù)分析模塊、網(wǎng)絡(luò)拓?fù)鋽?shù)據(jù)庫(kù)(NTD,network topology database)模塊和App 處理模塊。數(shù)據(jù)分析模塊包含App 異常分析模塊和link-level監(jiān)測(cè)模塊。App 異常分析模塊負(fù)責(zé)接收DL 故障識(shí)別和定位模塊發(fā)送的故障初步識(shí)別和定位信息,link-level 監(jiān)測(cè)模塊通過(guò)帶外遙測(cè)方式粗粒度地收集數(shù)據(jù)面信息。需要注意的是,DL 故障識(shí)別和定位模塊是App-level 的故障分析與定位,即光路級(jí)別的初步故障識(shí)別與定位。數(shù)據(jù)分析模塊通過(guò)結(jié)合控制器收集到的link-level 的光層信息和故障的初步識(shí)別和定位結(jié)果,實(shí)現(xiàn)link-level 的精確定位。NTD 模塊負(fù)責(zé)存儲(chǔ)并更新數(shù)據(jù)平面網(wǎng)絡(luò)拓?fù)湫畔?。App 處理模塊主要對(duì)業(yè)務(wù)的優(yōu)先級(jí)和所屬類別(例如是否時(shí)延敏感等)進(jìn)行分析。當(dāng)多個(gè)業(yè)務(wù)同時(shí)出現(xiàn)故障時(shí),App 處理模塊根據(jù)業(yè)務(wù)優(yōu)先級(jí)設(shè)定故障恢復(fù)的先后順序,并根據(jù)業(yè)務(wù)所屬的類別,通過(guò)路由和頻譜分配模塊(RSAM,routing and spectrum assignment module)進(jìn)行重路由(非時(shí)延敏感業(yè)務(wù))或者切換到備份光路(時(shí)延敏感業(yè)務(wù)),以實(shí)現(xiàn)最佳的故障恢復(fù)方案。
圖2詳細(xì)地說(shuō)明了NNS 在正常階段和異常階段時(shí)模塊間的信息交互過(guò)程,其中模塊1和模塊2分別代表圖1中App-level 監(jiān)測(cè)模塊中的QoS 異常監(jiān)測(cè)模塊和DL 故障識(shí)別和定位模塊。NNS 在正常階段時(shí),中央控制器通過(guò)帶外遙測(cè)方式粗粒度的方式,即輪詢時(shí)間間隔長(zhǎng),進(jìn)行l(wèi)ink-level 監(jiān)測(cè)。無(wú)論NNS 處于正常階段還是異常階段,data analyzer 都會(huì)及時(shí)地將解析出的ML-INT 數(shù)據(jù)發(fā)送至DL 故障識(shí)別和定位模塊。值得注意的是,只有在異常階段下,當(dāng)DL 故障識(shí)別和定位模塊接收到QoS 異常監(jiān)測(cè)模塊的異常報(bào)告時(shí),才會(huì)對(duì)ML-INT 數(shù)據(jù)進(jìn)行App-level 的初步識(shí)別和定位,并將識(shí)別和定位結(jié)果報(bào)告至中央控制器的App 異常分析模塊。中央控制器收到異常報(bào)告后,將會(huì)從粗粒度方式變化為細(xì)粒度方式,即輪詢間隔時(shí)間短,有針對(duì)性地對(duì)定位的故障光路進(jìn)行l(wèi)ink-level 的監(jiān)測(cè)。NNS 通過(guò)結(jié)合DL故障識(shí)別和分類模塊App-level 的初步識(shí)別和定位結(jié)果和控制器link-level 的監(jiān)測(cè)信息進(jìn)行精確的故障定位。之后中央控制器通過(guò)App 處理模塊獲得業(yè)務(wù)的優(yōu)先級(jí)和相關(guān)信息,根據(jù)NTD 模塊中存儲(chǔ)的數(shù)據(jù)面拓?fù)湫畔⑦M(jìn)行IP 層重路由或光路重配置等App-level 的故障恢復(fù)方案。
圖2 NNS 交互流程
為了實(shí)現(xiàn)ML-INT 技術(shù),通過(guò)可編程協(xié)議無(wú)關(guān)分組處理(P4,programming protocol-independent packet processor)語(yǔ)言[28]在可編程交換機(jī)上對(duì)數(shù)據(jù)包的格式進(jìn)行相關(guān)的處理。首先,當(dāng)業(yè)務(wù)分組經(jīng)過(guò)第一臺(tái)可編程交換機(jī)(INT source)時(shí),INT source 以一定的比例(例如50%)在業(yè)務(wù)分組中封裝INT 頭部,同時(shí)定義INT 結(jié)構(gòu)并在INT 頭部定義INT 數(shù)據(jù)字段。IP 層和EON 層數(shù)據(jù)通過(guò)可編程交換機(jī)寫入ML-INT 分組中的INT 數(shù)據(jù)字段。接著,ML-INT 分組被轉(zhuǎn)發(fā)至下一臺(tái)可編程交換機(jī)(INT intermediate hop),INT intermediate hop 將繼續(xù)向ML-INT 分組寫入本機(jī)相關(guān)的IP 層信息和EON 信息。最后,INT sink 將INT 頭部拆除,然后發(fā)送至data analyzer 進(jìn)行解析。為了盡量減小ML-INT 所帶來(lái)的開銷,本文指定每個(gè)可編程交換機(jī)在經(jīng)過(guò)的ML-INT 分組中只插入2個(gè)INT 數(shù)據(jù)字段,從而減小INT 頭部的長(zhǎng)度。2個(gè)INT 數(shù)據(jù)字段中,第一個(gè)INT 數(shù)據(jù)字段固定為switch ID,指示數(shù)據(jù)分組的轉(zhuǎn)發(fā)路徑和所經(jīng)過(guò)的交換機(jī)信息;第二個(gè)INT 數(shù)據(jù)字段為IP 層排隊(duì)時(shí)延、EON 層OSNR 或功率,可編程交換機(jī)將這些數(shù)據(jù)依次寫入多個(gè)ML-INT 分組中。由于網(wǎng)絡(luò)中業(yè)務(wù)通信速率通常較高(例如10 Gbit/s),分組之間的時(shí)間間隔都是微秒級(jí)別。通常情況下,網(wǎng)絡(luò)狀態(tài)難以在微秒級(jí)別的時(shí)間內(nèi)發(fā)生劇變,因此將IP 層和EON 層的數(shù)據(jù)分多次寫入ML-INT 分組中是合理的。與此同時(shí),data analyzer 需要解析多個(gè)ML-INT 分組方可獲取完整的端到端ML-INT數(shù)據(jù)。
NNS 架構(gòu)中,DL 故障識(shí)別和定位模塊主要負(fù)責(zé)對(duì)data analyzer 解析出的ML-INT 數(shù)據(jù)進(jìn)行初步故障識(shí)別和定位。傳統(tǒng)的網(wǎng)絡(luò)架構(gòu)通?;陂撝档姆绞脚袛嗄愁惞收鲜欠癜l(fā)生。隨著網(wǎng)絡(luò)規(guī)模的不斷發(fā)展,故障類型逐漸增多,為不同的故障設(shè)置不同的閾值將會(huì)增加網(wǎng)絡(luò)操作復(fù)雜度,可擴(kuò)展性較差。其次,有的故障類型難以僅通過(guò)簡(jiǎn)單的閾值進(jìn)行識(shí)別。如圖3所示,本文通過(guò)在光路中引入噪聲產(chǎn)生故障,當(dāng)接收端帶寬低于發(fā)送端的一定比例(例如90%)時(shí)即判定為異常。從圖3中可以看出,第3 s 的功率值低于第5 s 的功率值,然而第3 s處于正常階段,而第5 s 處于異常階段。這是因?yàn)橐朐肼晫?duì)功率影響較小,但當(dāng)OSNR 降低到一定值時(shí),也會(huì)引發(fā)異常。所以對(duì)于噪聲故障需要綜合考慮功率和OSNR,不能只通過(guò)閾值進(jìn)行判斷。因此,本文采取基于深度學(xué)習(xí)的DL 故障識(shí)別和分類方法。
圖3 App-level 功率監(jiān)測(cè)
DL 故障識(shí)別和分類模塊是深度神經(jīng)網(wǎng)絡(luò)(DNN,deep neural network)架構(gòu),包含輸入層、兩層隱藏層和輸出層,通過(guò)監(jiān)督式學(xué)習(xí)進(jìn)行訓(xùn)練。輸入層節(jié)點(diǎn)數(shù)等于要處理的數(shù)據(jù)的變量數(shù),即3個(gè);兩層隱藏層的節(jié)點(diǎn)數(shù)都設(shè)置為128;輸出層節(jié)點(diǎn)數(shù)等于每個(gè)輸入對(duì)應(yīng)的輸出數(shù),為4。DNN 架構(gòu)中輸出層的激活函數(shù)為softmax 函數(shù),并選取分類問(wèn)題中常用的交叉熵函數(shù)作為損失函數(shù)來(lái)刻畫預(yù)測(cè)的概率分布和真實(shí)輸出的概率分布之間的距離。DNN訓(xùn)練時(shí)通過(guò)反向傳播和梯度下降算法調(diào)整神經(jīng)網(wǎng)絡(luò)中參數(shù)的取值,從而最小化損失函數(shù)。DL 故障識(shí)別和分類模塊的輸入是ML-INT 數(shù)據(jù),包括IP層排隊(duì)時(shí)延、EON 層的功率和OSNR。值得注意的是,若ML-INT 分組經(jīng)過(guò)N個(gè)可編程交換機(jī),端到端完整ML-INT 數(shù)據(jù)會(huì)包含N組輸入(一組輸入為排隊(duì)時(shí)延、功率和OSNR)。data analyzer 在將端到端完整ML-INT 數(shù)據(jù)發(fā)送至DL 故障識(shí)別和定位模塊時(shí),會(huì)先依次從業(yè)務(wù)分組的發(fā)送端到目的端對(duì)ML-INT 數(shù)據(jù)進(jìn)行N組劃分。DL 故障識(shí)別和定位模塊依次對(duì)N組數(shù)據(jù)進(jìn)行故障識(shí)別,第一個(gè)出現(xiàn)故障的光路或可編程交換機(jī)即為故障位置,從而實(shí)現(xiàn)故障定位,這種每次僅對(duì)一組數(shù)據(jù)進(jìn)行分析的方式適用于不同的網(wǎng)絡(luò)規(guī)模,具有很好的可擴(kuò)展性。
本文通過(guò)搭建一個(gè)小規(guī)模但是真實(shí)的IP-over-EON 測(cè)試平臺(tái),模擬產(chǎn)生各種故障(擁塞異常、功率衰減異常和噪聲異常),從而獲得訓(xùn)練數(shù)據(jù)。例如,本文通過(guò)功率衰減器衰減光路中的功率,在光路中引入噪聲和加入背景流讓可編程交換機(jī)產(chǎn)生擁塞來(lái)分別模擬功率衰減異常、噪聲異常和擁塞異常。同時(shí),如果接收端的帶寬低于發(fā)送端的一定比例(例如90%),即判定產(chǎn)生異常,為訓(xùn)練數(shù)據(jù)貼上標(biāo)簽(例如0、1、2和3分別代表正常、功率衰減異常、噪聲異常和IP 層擁塞異常)。訓(xùn)練時(shí),每次只產(chǎn)生一種異常。故障樣本總共采集了約17000組,每組訓(xùn)練數(shù)據(jù)包含排隊(duì)時(shí)延、功率和OSNR 數(shù)據(jù),其中訓(xùn)練集和測(cè)試集各占90%和10%。通過(guò)離線訓(xùn)練,AI 模型在測(cè)試集上的準(zhǔn)確率達(dá)到96.99%。
本文通過(guò)搭建如圖4所示的實(shí)驗(yàn)平臺(tái)展示和驗(yàn)證NNS 架構(gòu)功能。IP 層包含6臺(tái)可編程交換機(jī),端口為10 GbE 光端口,通過(guò)2臺(tái)商用的分組發(fā)送工具來(lái)模擬端上的2個(gè)業(yè)務(wù)主機(jī)進(jìn)行通信。EON 層包括6個(gè)1×9的BV-WSS 光纖、6個(gè)OPM 和8個(gè)摻鉺光纖放大器(EDFA,erbium-doped fiber amplifier)。BV-WSS 工作頻率范圍為1528.43~1566.88 nm,頻譜分配粒度為12.5 GHz。OPM 采用光信息監(jiān)測(cè)儀(OCM,optical channel monitor),光譜分辨率為312.5 MHz。圖4中的箭頭表示的是業(yè)務(wù)通信時(shí)的路由路徑。從圖4中可以看出,業(yè)務(wù)主機(jī)A 與業(yè)務(wù)主機(jī)B 通信時(shí)經(jīng)過(guò)2個(gè)光路。第一個(gè)光路從可編程交換機(jī)1到可編程交換機(jī)2,包含a 一條鏈路,第二個(gè)光路從可編程交換機(jī)2到可編程交換機(jī)3,包含b 和c 共兩條鏈路。中央控制器基于開放式網(wǎng)絡(luò)操作系統(tǒng)(ONOS,open network operating system)平臺(tái)與數(shù)據(jù)平面進(jìn)行通信。為了驗(yàn)證NNS 架構(gòu)的有效性,本文在EON 層和IP 層各做了一個(gè)故障識(shí)別、定位和恢復(fù)的實(shí)驗(yàn)。實(shí)驗(yàn)中發(fā)送端業(yè)務(wù)的吞吐量為8 Gbit/s,分組大小為1024 B,INT source 上ML-INT分組的比例設(shè)置為50%。EON 層的實(shí)驗(yàn)中,通過(guò)功率衰減器在c 鏈路上對(duì)功率進(jìn)行衰減,用Wireshark抓取NNS 架構(gòu)間的通信數(shù)據(jù)分組,從而驗(yàn)證NNS架構(gòu)的功能。圖5(a)虛線框展示的是data analyzer(IP 地址為192.168.108.40)向DL 故障識(shí)別和定位模塊(IP 地址192.168.108.229)發(fā)送的一組ML-INT數(shù)據(jù),包括switch ID、排隊(duì)時(shí)延、功率和OSNR。每個(gè)可編程交換機(jī)都有預(yù)先定義好的switch ID,通過(guò)switch ID 對(duì)故障進(jìn)行定位。例如,業(yè)務(wù)主機(jī)A和業(yè)務(wù)主機(jī)B 通信時(shí)IP 層經(jīng)過(guò)3個(gè)可編程交換機(jī),switch ID 分別為1、2、3。在c 鏈路進(jìn)行功率衰減,第一條光路正常,第二條光路異常。DL 故障識(shí)別和定位模塊依次ML-INT 數(shù)據(jù)進(jìn)行分析,故障類型為1,switch ID 在2和3之間。如圖5(b)虛線框所示,Wireshark 抓取的是DL 故障識(shí)別和定位模塊發(fā)送至中央控制器(IP 地址為192.168.108.225)的數(shù)據(jù)分組,分組中包含的故障類型為1,switch ID 為2和3。中央控制器獲取異常信息后,通過(guò)帶外遙測(cè)方式細(xì)粒度(例如每1 s 獲取1次)獲取switch ID 在2和3之間所有鏈路的光路信息(中心頻率、功率和OSNR)并與正常階段下通過(guò)粗粒度(例如每10 s獲取1次)獲取的光路數(shù)據(jù)進(jìn)行對(duì)比和分析。由于DL 故障識(shí)別和定位模塊傳輸故障類別為1,即功率衰減故障,中央控制器依次分析b 鏈路和c 鏈路最近一段時(shí)間的功率變化趨勢(shì),通過(guò)功率變化范圍判斷(例如功率降低范圍超過(guò)4 dBm)鏈路是否產(chǎn)生異常,從而得出c 鏈路故障。最后,中央控制器通過(guò)App 處理模塊獲取業(yè)務(wù)的優(yōu)先級(jí)和所屬服務(wù)類型等信息,將c 鏈路通過(guò)BV-WSS 切換到備份鏈路進(jìn)行故障恢復(fù)。
圖4 實(shí)驗(yàn)測(cè)試平臺(tái)
接收端統(tǒng)計(jì)的是每秒收到的幀數(shù),當(dāng)數(shù)據(jù)分組大小為1024 B 時(shí),8 Gbit/s 約為950000 frame/s。當(dāng)c 鏈路功率衰減異常時(shí),接收端的帶寬降為約600000 frame/s,低于QoS 異常監(jiān)測(cè)模塊的閾值。c鏈路上OPM 監(jiān)測(cè)的功率隨時(shí)間變化趨勢(shì)如圖6(a)所示。OPM 上功率恢復(fù)時(shí)延經(jīng)過(guò)5次測(cè)量取平均值,約為1.97 s。恢復(fù)時(shí)延主要包括OPM 掃描光譜、DL 故障識(shí)別和定位模塊進(jìn)行故障初步識(shí)別和定位、中央控制器下發(fā)光流表和BV-WSS 重新配置切換鏈路的時(shí)延。圖6(b)展示的是業(yè)務(wù)主機(jī)B 的接受帶寬隨時(shí)間變化趨勢(shì),端到端恢復(fù)時(shí)延約為2.99 s,之所以比OPM 上功率的恢復(fù)時(shí)延要長(zhǎng),主要是由于本文通過(guò)商用的分組發(fā)送工具來(lái)模擬端上的2個(gè)業(yè)務(wù)主機(jī)進(jìn)行通信,然而分組發(fā)送工具接收端帶寬以秒級(jí)進(jìn)行更新,會(huì)對(duì)端到端的恢復(fù)時(shí)延造成一定的影響。
在IP 層,通過(guò)加背景流的方式使Switch ID 為2的可編程交換機(jī)產(chǎn)生擁塞。背景流發(fā)送速率為4 Gbit/s,業(yè)務(wù)主機(jī)A 和業(yè)務(wù)主機(jī)B 之間通信速率為8 Gbit/s,可編程交換機(jī)的端口最大接受速率為10 Gbit/s。因?yàn)镮P 層的擁塞會(huì)導(dǎo)致分組丟失,從而導(dǎo)致接收端帶寬變低,所以QoS 異常監(jiān)測(cè)模塊通過(guò)監(jiān)測(cè)接收端的帶寬來(lái)判斷是否有異常發(fā)生,然后將異常信息報(bào)告至DL 故障識(shí)別和分類模塊。DL 故障識(shí)別和分類模塊接收到異常信息后,對(duì)ML-INT 數(shù)據(jù)進(jìn)行分析,并將故障識(shí)別和定位結(jié)果報(bào)告至中央控制器,其數(shù)據(jù)分組和圖5(b)所示的數(shù)據(jù)格式相同,故障類型為電層擁塞(對(duì)應(yīng)數(shù)字為3),switch ID 1和2傳輸?shù)姆謩e為擁塞交換機(jī)的上一跳可編程交換機(jī)(switch ID 為1)和擁塞的可編程交換機(jī)(Switch ID 為2)的switch ID。中央控制器結(jié)合NTD 存儲(chǔ)的底層拓?fù)湫畔?,通過(guò)RSAM 從上一跳可編程交換機(jī)進(jìn)行重路由,避免擁塞的可編程交換機(jī)。
圖5 Wireshark 抓取數(shù)據(jù)分組驗(yàn)證NNS 架構(gòu)
圖6 EON 層故障分類、定位和恢復(fù)
圖7(a)展示的是switch ID 為2的交換機(jī)上排隊(duì)時(shí)延變化趨勢(shì),正常階段下排隊(duì)時(shí)延約為0.1μs,擁塞時(shí)最高排隊(duì)時(shí)延達(dá)到120μs 以上。圖7(b)展示的是接收端帶寬變化趨勢(shì)。經(jīng)過(guò)5次測(cè)量求平均值,可編程交換機(jī)上的排隊(duì)時(shí)延恢復(fù)時(shí)間約為0.85 s,接收端的帶寬恢復(fù)時(shí)延約為1.99 s。由于分組發(fā)送工具接收端的帶寬數(shù)據(jù)以秒級(jí)進(jìn)行更新,導(dǎo)致端到端的帶寬恢復(fù)時(shí)延長(zhǎng)于可編程交換機(jī)的恢復(fù)時(shí)延。
為了進(jìn)一步展示NNS 架構(gòu)帶來(lái)的可擴(kuò)展性優(yōu)勢(shì),如圖8所示,通過(guò)仿真的方式產(chǎn)生多組數(shù)據(jù),橫坐標(biāo)是數(shù)據(jù)量,每組數(shù)據(jù)包括時(shí)延、功率和OSNR;縱坐標(biāo)表示對(duì)應(yīng)數(shù)據(jù)量下所需要的故障分類時(shí)間。分類時(shí)間在顯卡為GeForce GTX 1080Ti的GPU 上進(jìn)行測(cè)試。當(dāng)數(shù)據(jù)量低于100組時(shí),分類時(shí)間約為0.2 s,當(dāng)數(shù)據(jù)量高于10000組時(shí),分類時(shí)間明顯增多。NNS 采取的是基于ML-INT 的分布式網(wǎng)絡(luò)數(shù)據(jù)分析,神經(jīng)網(wǎng)絡(luò)所需的數(shù)據(jù)量基本在100組以下。傳統(tǒng)的純帶外遙測(cè)集中式地對(duì)數(shù)據(jù)面數(shù)據(jù)進(jìn)行分析,當(dāng)網(wǎng)絡(luò)設(shè)備和鏈路增多,或者需要采取比鏈路級(jí)別更加精細(xì)的網(wǎng)絡(luò)監(jiān)測(cè)與定位時(shí)(例如需要精確定位到鏈路中具體的設(shè)備是否故障,需要監(jiān)測(cè)的數(shù)據(jù)量進(jìn)一步增加),都會(huì)顯著增加神經(jīng)網(wǎng)絡(luò)的分類時(shí)間和定位時(shí)間。值得注意的是,因?yàn)榧儙馐占瘮?shù)據(jù)的方式?jīng)]有結(jié)合App-level 端到端的異常信息,需要時(shí)刻對(duì)獲取到的數(shù)據(jù)進(jìn)行分析;而NNS 架構(gòu)在無(wú)異常發(fā)生時(shí),不需要對(duì)收集到的數(shù)據(jù)進(jìn)行分析,僅需在產(chǎn)生異常時(shí)對(duì)數(shù)據(jù)進(jìn)行初步識(shí)別和定位,因此NNS 架構(gòu)在一定程度上減輕了神經(jīng)網(wǎng)絡(luò)的處理負(fù)擔(dān)。
圖7 IP 層故障分類、定位和恢復(fù)
NNS 架構(gòu)采取App-level 的分布式方式分析,因此無(wú)異常發(fā)生時(shí),中央控制器進(jìn)行粗粒度的帶外遙測(cè),異常發(fā)生時(shí)再對(duì)故障光路進(jìn)行細(xì)粒度的帶外遙測(cè)。純帶外遙測(cè)方式的傳統(tǒng)架構(gòu)為了實(shí)現(xiàn)細(xì)粒度和實(shí)時(shí)的網(wǎng)絡(luò)監(jiān)測(cè),無(wú)論是正常還是異常階段,中央控制器都需要進(jìn)行細(xì)粒度的帶外遙測(cè)。圖9展示了NNS 架構(gòu)和傳統(tǒng)架構(gòu)在正常情況和異常情況下南向通信量的比例。本文設(shè)定粗粒度的輪詢時(shí)間間隔為10 s,細(xì)粒度的輪詢時(shí)間間隔為1 s。為了確保通信分組的大小相同,本文用同一個(gè)OPM 進(jìn)行實(shí)驗(yàn),通過(guò)Wireshark 獲取中央控制器一段時(shí)間(10 min)內(nèi)接收到的平均分組速度。如圖9所示,通過(guò)5次實(shí)驗(yàn)獲取平均值,正常階段下,NNS 架構(gòu)與傳統(tǒng)架構(gòu)的每秒平均分組速度比為0.379:2.359;異常階段下,兩架構(gòu)每秒的平均分組速度之比為1:1。當(dāng)發(fā)生異常的頻率較低時(shí),NNS 中央控制器每秒平均分組速度將遠(yuǎn)低于傳統(tǒng)架構(gòu),進(jìn)一步減少了控制器的負(fù)擔(dān),增加了可拓展性。
圖8 AI 模塊分類時(shí)間趨勢(shì)
圖9 中央控制器南向通信量對(duì)比
本文提出了基于深度學(xué)習(xí)的跨層網(wǎng)絡(luò)業(yè)務(wù)性能感知系統(tǒng),融合了分布式網(wǎng)絡(luò)監(jiān)測(cè)與集中式網(wǎng)絡(luò)管控的優(yōu)點(diǎn),實(shí)現(xiàn)了細(xì)粒度和實(shí)時(shí)的網(wǎng)絡(luò)監(jiān)測(cè)。本文通過(guò)搭建小規(guī)模的實(shí)驗(yàn)平臺(tái),實(shí)現(xiàn)并展示了NNS 架構(gòu)的優(yōu)勢(shì)。無(wú)論IP 層還是EON 層產(chǎn)生異常,NNS 架構(gòu)都可以精確快速地進(jìn)行故障分類、定位和恢復(fù)。同時(shí),通過(guò)故障識(shí)別和定位時(shí)間與中央控制器南向通信量的比較,NNS 架構(gòu)相比傳統(tǒng)的純帶外監(jiān)測(cè)系統(tǒng),有著更加良好的可拓展性。