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