張 鵬,陳 博
(中國(guó)人民解放軍戰(zhàn)略支援部隊(duì)信息工程大學(xué),鄭州 450002)
近年來(lái),隨著信息技術(shù)與人類(lèi)經(jīng)濟(jì)社會(huì)的深度融合,人們對(duì)于信息傳輸?shù)男枨蟛粩嘣鲩L(zhǎng)。遠(yuǎn)程會(huì)議、5G、虛擬現(xiàn)實(shí)(Virtual Reality,VR)等新興技術(shù)的蓬勃發(fā)展,極大增加了網(wǎng)絡(luò)傳輸?shù)男畔⒘啃枨螅o信息網(wǎng)絡(luò)基礎(chǔ)設(shè)施的傳輸能力帶來(lái)了巨大的承載壓力,也對(duì)網(wǎng)絡(luò)服務(wù)質(zhì)量的精細(xì)化提出了更高的要求。針對(duì)網(wǎng)絡(luò)中不斷增長(zhǎng)的流量需求,傳統(tǒng)的方法通常依賴(lài)于物理設(shè)備的擴(kuò)容,包括增設(shè)傳輸線路、增加交換機(jī)數(shù)量等。然而,由于網(wǎng)絡(luò)流量存在巨大的波動(dòng)性,單純的物理設(shè)備擴(kuò)容面臨著資源利用率低、更新周期長(zhǎng)等問(wèn)題,不能在有限成本下實(shí)現(xiàn)更好的網(wǎng)絡(luò)傳輸效果和網(wǎng)絡(luò)服務(wù)質(zhì)量(Quality of Service,QoS)[1]。
通過(guò)網(wǎng)絡(luò)流量的路由控制,能夠使網(wǎng)絡(luò)流量更加合理地分布于不同的網(wǎng)絡(luò)設(shè)備上,從而減少網(wǎng)絡(luò)資源使用的不均衡情況,提升網(wǎng)絡(luò)的平均資源利用率。傳統(tǒng)網(wǎng)絡(luò)的路由算法基于不同路由器中運(yùn)行的分布式路由算法實(shí)現(xiàn)。分布式路由算法通常按照“盡力而為”的原則進(jìn)行路由計(jì)算,對(duì)于流量的控制精度有限,無(wú)法取得較好的網(wǎng)絡(luò)服務(wù)質(zhì)量。隨著軟件定義網(wǎng)絡(luò)(Software-Defined Network,SDN)技術(shù)的出現(xiàn),基于集中化網(wǎng)絡(luò)視圖的流量控制策略得以實(shí)現(xiàn)。SDN 控制器通過(guò)收集全網(wǎng)信息,能夠?qū)诰W(wǎng)絡(luò)狀態(tài)的宏觀掌控信息制定網(wǎng)絡(luò)策略,從而為網(wǎng)絡(luò)提供更加精細(xì)化的服務(wù)策略。然而,基于網(wǎng)路全局信息制定最優(yōu)化的網(wǎng)絡(luò)路由策略已經(jīng)被證明為NP 難問(wèn)題[2]?,F(xiàn)有的路由優(yōu)化算法為保證路由策略生成的動(dòng)態(tài)性和實(shí)效性,通?;谌斯ぴO(shè)計(jì)啟發(fā)式算法實(shí)現(xiàn),無(wú)法保證路由策略的質(zhì)量。針對(duì)該問(wèn)題,業(yè)界將目光放在近年來(lái)發(fā)展迅速的人工智能技術(shù)?;谌斯ど窠?jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN)、深度強(qiáng)化學(xué)習(xí)(Deep Reinforcement Learning,DRL)等技術(shù)的路由方案優(yōu)勢(shì)漸顯。其中,基于深度強(qiáng)化學(xué)習(xí)的智能路由方案相比其他機(jī)器學(xué)習(xí)方案具有自主訓(xùn)練、適應(yīng)性強(qiáng)、無(wú)需人工標(biāo)記大量數(shù)據(jù)等優(yōu)勢(shì),在眾多基于機(jī)器學(xué)習(xí)的方案中脫穎而出。然而,現(xiàn)有的基于DRL 實(shí)現(xiàn)的智能路由方案大多基于前饋神經(jīng)網(wǎng)絡(luò)(Feedforward Neural Network,F(xiàn)NN)、循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)等神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)實(shí)現(xiàn),其網(wǎng)絡(luò)結(jié)構(gòu)固定、泛化能力差,難以適應(yīng)動(dòng)態(tài)的網(wǎng)絡(luò)拓?fù)渥兓?/p>
針對(duì)上述問(wèn)題,本文提出一種基于圖神經(jīng)網(wǎng)絡(luò)(Graph Neural Network,GNN)實(shí)現(xiàn)的智能路由機(jī)制SmartRoute。SmartRoute基于DRL框架實(shí)現(xiàn)GNN參數(shù)的智能調(diào)優(yōu),在訓(xùn)練環(huán)境下不斷迭代更新策略參數(shù),自動(dòng)搜索網(wǎng)絡(luò)的最優(yōu)路由策略。
當(dāng)前基于機(jī)器學(xué)習(xí)算法實(shí)現(xiàn)的智能路由方案由于需要全局化網(wǎng)絡(luò)視圖信息,通?;赟DN 框架實(shí)現(xiàn)。按照機(jī)器學(xué)習(xí)算法的特征,主要可以分為基于監(jiān)督學(xué)習(xí)、基于無(wú)監(jiān)督學(xué)習(xí)和基于強(qiáng)化學(xué)習(xí)的3 類(lèi)智能路由實(shí)現(xiàn)方案。
基于監(jiān)督學(xué)習(xí)的方案主要通過(guò)深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)實(shí)現(xiàn)。HUANG 等[3]使用DNN 設(shè)計(jì)一種流量分類(lèi)方案,基于不同流量類(lèi)別分別適配不同的靜態(tài)路由方案;文獻(xiàn)[4-5]提出基于DNN 的流量分類(lèi)方案,通過(guò)不同流量類(lèi)別實(shí)現(xiàn)不同的路由算法完成網(wǎng)絡(luò)流量的調(diào)度。MAO 等[6]提出基于深度置信網(wǎng)絡(luò)(Deep Belief Network,DBN)的智能路由方案,通過(guò)不同的流量特征實(shí)現(xiàn)網(wǎng)絡(luò)邊緣節(jié)點(diǎn)和核心節(jié)點(diǎn)的路由調(diào)整。總體來(lái)說(shuō),基于監(jiān)督學(xué)習(xí)的智能路由方案需要人工標(biāo)記大量網(wǎng)絡(luò)流量特征,難以實(shí)現(xiàn)通用性。
基于無(wú)監(jiān)督學(xué)習(xí)的方案通常也是基于網(wǎng)絡(luò)流量特征分析實(shí)現(xiàn)網(wǎng)絡(luò)路由策略。例如,文獻(xiàn)[7-8]提出使用K-means 算法實(shí)現(xiàn)網(wǎng)絡(luò)流量的分類(lèi),文獻(xiàn)[9]使用主成分分析(Principal Content Analysis,PCA)法實(shí)現(xiàn)網(wǎng)絡(luò)特征提取。完成網(wǎng)絡(luò)流量的特征分析后,上述方案仍然需要人工設(shè)計(jì)相應(yīng)的路由策略,并且由于無(wú)監(jiān)督學(xué)習(xí)的算法精度通常較難保證,因此基于無(wú)監(jiān)督學(xué)習(xí)的智能路由方案通常難以取得較好的性能。
基于強(qiáng)化學(xué)習(xí)算法的智能路由方案通過(guò)強(qiáng)化學(xué)習(xí)算法(包括DRL 算法)實(shí)現(xiàn)網(wǎng)絡(luò)的智能路由。不同于前述2 類(lèi)智能路由方案,基于強(qiáng)化學(xué)習(xí)算法的智能路由方案能夠直接實(shí)現(xiàn)從網(wǎng)絡(luò)輸入信息(例如流量分布視圖)到路由策略的映射,并且能夠在訓(xùn)練環(huán)境下實(shí)現(xiàn)自主調(diào)優(yōu),因此,其路由方案通常能夠取得更優(yōu)的性能。BOYAN 等[10]提出基于Q-learning 算法的路由方案,能夠智能調(diào)整路由的下一條選擇;DRL-TE[11]通過(guò)DRL 算法調(diào)整多路徑路由的不同路徑分流比,優(yōu)化了多路徑路由的性能;文獻(xiàn)[12-13]使用DRL 算法調(diào)整網(wǎng)絡(luò)拓?fù)渲械穆酚蓹?quán)重,從而實(shí)現(xiàn)了全網(wǎng)路由計(jì)算結(jié)果的動(dòng)態(tài)調(diào)整??傮w來(lái)說(shuō),基于強(qiáng)化學(xué)習(xí)的智能路由方案已經(jīng)成為當(dāng)前智能化路由方案的研究主體。然而,在上述基于強(qiáng)化學(xué)習(xí)的智能路由方案中,神經(jīng)網(wǎng)絡(luò)主要采用前饋神經(jīng)網(wǎng)絡(luò)和循環(huán)神經(jīng)網(wǎng)絡(luò)等傳統(tǒng)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),此類(lèi)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)只能處理歐式輸入數(shù)據(jù)結(jié)構(gòu)(例如固定維度的一維文本數(shù)據(jù)或者二維圖像數(shù)據(jù)),對(duì)于輸入數(shù)據(jù)格式具有嚴(yán)格的確定性限制;而在實(shí)際應(yīng)用中,網(wǎng)絡(luò)拓?fù)渥兓笊窠?jīng)網(wǎng)絡(luò)輸入數(shù)據(jù)格式也將發(fā)生變化,傳統(tǒng)神經(jīng)網(wǎng)絡(luò)無(wú)法將訓(xùn)練經(jīng)驗(yàn)泛化到新的網(wǎng)絡(luò)拓?fù)渲?。因此,現(xiàn)有的基于強(qiáng)化學(xué)習(xí)實(shí)現(xiàn)的智能路由方案對(duì)于訓(xùn)練過(guò)程所使用的網(wǎng)絡(luò)拓?fù)渚哂羞^(guò)擬合性,無(wú)法靈活應(yīng)用于不同網(wǎng)絡(luò)拓?fù)洌膊荒茌^好地處理網(wǎng)絡(luò)鏈路故障等被動(dòng)性網(wǎng)絡(luò)拓部變化。
本文針對(duì)上述研究,提出一種基于圖神經(jīng)網(wǎng)絡(luò)的智能路由機(jī)制。本文方案的主要貢獻(xiàn)如下:
1)提出一種基于DRL 實(shí)現(xiàn)的網(wǎng)絡(luò)路由動(dòng)態(tài)調(diào)整機(jī)制,能夠隨著網(wǎng)絡(luò)流量的波動(dòng)性實(shí)現(xiàn)流量的動(dòng)態(tài)化調(diào)度。
2)設(shè)計(jì)一種結(jié)合GNN 與DRL 技術(shù)的智能訓(xùn)練算法,能夠大幅提高智能路由算法的泛化能力,提升算法的魯棒性。
3)設(shè)計(jì)基于NS2 的仿真環(huán)境,完成智能路由策略的離線訓(xùn)練。
本節(jié)主要介紹了結(jié)合GNN 和DRL 的智能路由方案SmartRoute,闡述了SmartRoute 的主要架構(gòu)和各部分實(shí)現(xiàn)機(jī)制。
SmartRoute 主要基于SDN 框架實(shí)現(xiàn),其架構(gòu)如圖1 所示。其中,實(shí)現(xiàn)智能路由的功能主要由數(shù)據(jù)平面的可編程交換機(jī)、控制平面的SDN 控制器以及控制器之上運(yùn)行的DRL 算法實(shí)現(xiàn)??删幊探粨Q機(jī)負(fù)責(zé)統(tǒng)計(jì)網(wǎng)絡(luò)中的流量信息(包括實(shí)時(shí)流量分布、流量傳輸性能等指標(biāo));SDN 控制器負(fù)責(zé)收集和統(tǒng)計(jì)流量信息、更新交換機(jī)的轉(zhuǎn)發(fā)表;DRL 算法負(fù)責(zé)根據(jù)網(wǎng)絡(luò)中的狀態(tài)信息生成輸出動(dòng)作,該輸出動(dòng)作值直接用于路由策略生成。
圖1 SmartRoute 架構(gòu)Fig.1 SmartRoute architecture
DRL 算法結(jié)合圖神經(jīng)網(wǎng)絡(luò)進(jìn)行網(wǎng)絡(luò)輸入數(shù)據(jù)的動(dòng)態(tài)分析,將生成的輸出動(dòng)態(tài)作為鏈路權(quán)重,基于此動(dòng)態(tài)調(diào)整鏈路權(quán)重,SDN 控制器通過(guò)加權(quán)最短路徑算法可以靈活調(diào)整網(wǎng)絡(luò)路由,從而實(shí)現(xiàn)路由的智能控制。其中,由于SmartRoute基于圖神經(jīng)網(wǎng)絡(luò)進(jìn)行網(wǎng)絡(luò)流量數(shù)據(jù)的分析,在網(wǎng)絡(luò)拓?fù)渥兓瘯r(shí),Smart Route具有良好的泛化性能,從而提升不同網(wǎng)絡(luò)環(huán)境下路由性能的穩(wěn)定性。
DRL 算法由強(qiáng)化學(xué)習(xí)的基本框架擴(kuò)展而來(lái)。強(qiáng)化學(xué)習(xí)通過(guò)強(qiáng)化學(xué)習(xí)算法與其運(yùn)行環(huán)境之間的信息交互,不斷優(yōu)化算法參數(shù),從而實(shí)現(xiàn)算法的訓(xùn)練。其中,強(qiáng)化學(xué)習(xí)的基本模型將網(wǎng)絡(luò)建模為一個(gè)馬爾科夫過(guò)程,其算法的主要交互元素包含(st,at,rt)3 個(gè)部分,st表示t時(shí)刻下環(huán)境的狀態(tài)信息,at表示t時(shí)刻下算法的輸出動(dòng)作,rt表示對(duì)于t時(shí)刻算法動(dòng)作內(nèi)容產(chǎn)生結(jié)果的回報(bào)值。由狀態(tài)信息生成輸出動(dòng)作可以通過(guò)查表、函數(shù)計(jì)算等不同方式實(shí)現(xiàn),而深度強(qiáng)化學(xué)習(xí)正是使用了深度神經(jīng)網(wǎng)絡(luò)完成這一過(guò)程,因此被稱(chēng)為深度強(qiáng)化學(xué)習(xí)。深度強(qiáng)化學(xué)習(xí)的學(xué)習(xí)目標(biāo)是在一個(gè)階段內(nèi)實(shí)現(xiàn)回報(bào)值的最大化積累,即或者添加折扣因子γ的最大化折扣回報(bào)值累積
深度強(qiáng)化學(xué)習(xí)通過(guò)獎(jiǎng)勵(lì)值rt實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)參數(shù)的調(diào)整,根據(jù)具體實(shí)現(xiàn)方式的不同可以分為值優(yōu)化、策略梯度優(yōu)化等多種算法框架。本文所使用的深度強(qiáng)化學(xué)習(xí)框架為策略梯度優(yōu)化。策略梯度優(yōu)化方法可以通過(guò)式(1)表述:
其中:Q(sk,ak)為當(dāng)前狀態(tài)-動(dòng)作內(nèi)容的評(píng)估價(jià)值;π表示當(dāng)前的動(dòng)作生成策略。在每個(gè)時(shí)刻,由式(1)可以計(jì)算出神經(jīng)網(wǎng)絡(luò)的更新梯度值。在實(shí)際更新神經(jīng)網(wǎng)絡(luò)參數(shù)的過(guò)程中,SmartRoute 采用文獻(xiàn)[14]的實(shí)現(xiàn)方案,即可以通過(guò)對(duì)于Q值的變形處理實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)的更新梯度值計(jì)算,如式(2)所示:
其中:θ表示神經(jīng)網(wǎng)絡(luò)的參數(shù)集合;vk由折扣回報(bào)值計(jì)算得到,作為梯度更新值的加權(quán)因子。SmartRoute 的整體DRL 算法如下:
算法1DRL 算法
網(wǎng)絡(luò)中流量分布等信息的呈現(xiàn)結(jié)構(gòu)依賴(lài)于網(wǎng)絡(luò)拓?fù)湫螤?。為更好地處理網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)信息,提升神經(jīng)網(wǎng)絡(luò)對(duì)于不同拓?fù)浣Y(jié)構(gòu)數(shù)據(jù)的泛化能力,本文使用GNN作為DRL 算法框架的神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)。具體來(lái)講,本文所使用的GNN 類(lèi)型為信息傳遞神經(jīng)網(wǎng)絡(luò)(Message Passing Neural Network,MPNN)[15]。MPNN 的主要功能通過(guò)信息傳遞過(guò)程實(shí)現(xiàn),其過(guò)程如圖2 表示。圖2 左側(cè)展示一個(gè)包含4 個(gè)圖節(jié)點(diǎn)的MPNN,其中箭頭表示節(jié)點(diǎn)4 接收其他節(jié)點(diǎn)傳輸信息的過(guò)程,hi表示節(jié)點(diǎn)i的隱藏狀態(tài)。在每一時(shí)刻,每個(gè)節(jié)點(diǎn)按照?qǐng)D2 所示的方式與其所有鄰居節(jié)點(diǎn)交換信息,交換信息的計(jì)算方式由圖2 中的函數(shù)(神經(jīng)網(wǎng)絡(luò))m(·)和u(·)實(shí)現(xiàn)。通過(guò)每個(gè)節(jié)點(diǎn)信息的不斷迭代,MPNN 最終完成網(wǎng)絡(luò)的整體信息更新。由于SmartRoute 中的MPNN 主要處理流量變化信息,因此在實(shí)現(xiàn)過(guò)程中,函數(shù)m(·)由全連接神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn),u(·)通過(guò)門(mén)控循環(huán)單元(Gated Recurrent Unit,GRU)實(shí)現(xiàn)。
圖2 MPNN 工作流程Fig.2 The working procedure of MPNN
在SmartRoute 中,實(shí)際的信息通信網(wǎng)絡(luò)與MPNN 中的圖采用不同建模方式進(jìn)行映射。具體來(lái)講,MPNN 主要通過(guò)其圖中節(jié)點(diǎn)信息的交互完成網(wǎng)絡(luò)的信息傳輸和計(jì)算,而SmartRoute 通過(guò)調(diào)整鏈路權(quán)重完成網(wǎng)絡(luò)路由的調(diào)整,因此其調(diào)整的元素為網(wǎng)絡(luò)拓?fù)渲械逆溌沸畔?。為使用MPNN 實(shí)現(xiàn)信息通信網(wǎng)絡(luò)中鏈路權(quán)重的調(diào)整,SmartRoute 將通信網(wǎng)絡(luò)的鏈路映射為MPNN 的節(jié)點(diǎn),通過(guò)MPNN 中節(jié)點(diǎn)信息的傳遞和計(jì)算,最終完成信息通信網(wǎng)絡(luò)中鏈路的信息更新和計(jì)算。其中,信息通信網(wǎng)絡(luò)中鏈路信息包括鏈路的實(shí)時(shí)帶寬占用信息。整體的計(jì)算過(guò)程如圖3 所示。
圖3 網(wǎng)絡(luò)信息計(jì)算過(guò)程Fig.3 Calculation process of network information
基于上述神經(jīng)網(wǎng)絡(luò)設(shè)計(jì),SmartRoute 中DRL 的基本接口可以表述如下:
1)狀態(tài)。SmartRoute 中DRL 算法的狀態(tài)信息為鏈路利用率和鏈路時(shí)延信息。每條鏈路的上述信息按照一定的格式輸入,作為MPNN 對(duì)應(yīng)節(jié)點(diǎn)的輸入信息。
2)動(dòng)作。SmartRoute 中DRL 算法的動(dòng)作內(nèi)容為鏈路權(quán)重。MPNN 經(jīng)過(guò)計(jì)算后,每個(gè)節(jié)點(diǎn)輸出值對(duì)應(yīng)于網(wǎng)絡(luò)中的所有鏈路權(quán)重信息。SDN 控制器根據(jù)此鏈路權(quán)重信息可以計(jì)算網(wǎng)絡(luò)的端到端加權(quán)最短路徑。
3)回報(bào)值?;貓?bào)值的設(shè)計(jì)決定了DRL 算法的自主優(yōu)化方向,也即網(wǎng)絡(luò)性能的優(yōu)化方向。常見(jiàn)的性能指標(biāo)可以結(jié)合網(wǎng)絡(luò)的總體吞吐率、平均端到端傳輸時(shí)延等性能指標(biāo)設(shè)計(jì)。SmartRoute 中采用網(wǎng)絡(luò)的平均端到端時(shí)延作為回報(bào)值。
在每一步DRL 交互過(guò)程中,MPNN 的計(jì)算過(guò)程偽代碼如表2 所示。
算法2MPNN 算法
本節(jié)主要闡述SmartRoute 的仿真驗(yàn)證環(huán)境以及相關(guān)仿真結(jié)果的分析。
本文基于NS2 環(huán)境實(shí)現(xiàn)了SmartRoute 的仿真驗(yàn)證平臺(tái)。在SmartRoute 中所使用的DRL 算法基于Tensorflow 1.12 實(shí)現(xiàn),采用Python3.7 語(yǔ)言編寫(xiě)。在Tensorflow 與NS2 之間,本文采用Python 語(yǔ)言編寫(xiě)了基于OpenAI 的Gym環(huán)境[16]接口用于連接DRL算法和訓(xùn)練環(huán)境。實(shí)驗(yàn)的硬件實(shí)現(xiàn)平臺(tái)具有一顆i7 9700K CPU、16 GB DDR4內(nèi)存和一塊1080Ti顯卡。
SmartRoute中DRL算法迭代次數(shù)設(shè)置為60 000次,算法2 中MPNN 的迭代次數(shù)T設(shè)置為8 次,神經(jīng)網(wǎng)絡(luò)參數(shù)優(yōu)化方式采用基于Nesterov Momentum 的隨機(jī)梯度下降[17]法,學(xué)習(xí)率設(shè)置為5×10-5。在本文的硬件實(shí)驗(yàn)平臺(tái)下,完成一次算法訓(xùn)練耗時(shí)約為6 h。訓(xùn)練完成后,所得方案可以部署到不同網(wǎng)絡(luò)拓?fù)渲?,?shí)現(xiàn)快速路由計(jì)算(OS3E 拓?fù)湎耂martRoute 每次計(jì)算生成新的路由規(guī)則耗時(shí)287 μs)。
在仿真環(huán)境中,采用了Topology Zoo[18]中選取的OS3E 拓?fù)洌總€(gè)拓?fù)涞逆溌穾捜萘拷y(tǒng)一設(shè)置為100 Mb/s。網(wǎng)絡(luò)中的流量生成按照隨機(jī)流量與周期性流量組合的方式生成[12,19-21],通過(guò)調(diào)整隨機(jī)流量與周期流量的比例改變流量特征。每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)都可以與任意一個(gè)其他網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)起通信需求,其平均流量設(shè)置為網(wǎng)絡(luò)總吞吐量的特定比例(20%、30%、40%)。
在本文實(shí)驗(yàn)中,SmartRoute 主要與以下3 種方案進(jìn)行性能對(duì)比:
1)TIDE[12]。TIDE 通過(guò)使用DDPG 算法框架,用循環(huán)神經(jīng)網(wǎng)絡(luò)作為主要神經(jīng)網(wǎng)絡(luò)對(duì)網(wǎng)絡(luò)鏈路的流量分布進(jìn)行計(jì)算,輸出不同鏈路的權(quán)重信息。通過(guò)更新鏈路權(quán)重信息,網(wǎng)絡(luò)可以更新路由計(jì)算結(jié)果。
2)DRL-TE[11]。將網(wǎng)絡(luò)端到端通信通過(guò)多路徑實(shí)現(xiàn)(每個(gè)端到端通信設(shè)置3 條備份路徑),通過(guò)DRL 算法感知網(wǎng)絡(luò)中的流量分布,調(diào)節(jié)每個(gè)數(shù)據(jù)流在3 條備份路徑上的分流比,從而實(shí)現(xiàn)流量工程。
3)ECMP。ECMP 通過(guò)等價(jià)多路徑傳輸網(wǎng)絡(luò)中的流量,為網(wǎng)絡(luò)中的典型流量工程方案之一。
性能評(píng)估主要包括以下3 個(gè)方面:
1)端到端時(shí)延對(duì)比。本文實(shí)驗(yàn)主要使用網(wǎng)絡(luò)中的平均端到端時(shí)延作為網(wǎng)絡(luò)性能的衡量指標(biāo)。分別設(shè)置了3 組不同的網(wǎng)絡(luò)流量特征(即不同的周期流量/隨機(jī)流量)。圖4~圖6 分別展示了不同流量強(qiáng)度下OS3E 拓?fù)渲辛髁刻卣鞯钠骄说蕉藭r(shí)延。由圖4~圖6 的總體趨勢(shì)可以看出,隨著網(wǎng)絡(luò)中總流量的提高,各個(gè)方案的平均端到端時(shí)延都呈現(xiàn)出上升趨勢(shì),符合直觀推斷。圖4~圖6 中橫坐標(biāo)表示由不同的流量構(gòu)成,以圖4 為例(圖5、圖6 具有相同規(guī)律),可以看出,隨著隨機(jī)流量的增多,DRL-TE、TIDE 和SmartRoute 的平均端到端時(shí)延呈現(xiàn)出了明顯增長(zhǎng)的趨勢(shì),而ECMP 的平均端到端時(shí)延具有相對(duì)穩(wěn)定的數(shù)值,只有流量的時(shí)延方差明顯增大。這是因?yàn)镈RL-TE、TIDE 和SmartRoute 都是通過(guò)訓(xùn)練后的神經(jīng)網(wǎng)絡(luò)提取網(wǎng)絡(luò)中的流量規(guī)律從而制定相應(yīng)的路由策略,而隨著隨機(jī)流量的增多,流量所呈現(xiàn)出的規(guī)律性明顯減弱,上述3 種方案對(duì)于流量特征提取的能力也相應(yīng)減弱,造成路由策略的時(shí)延性能下降??傮w來(lái)講,SmartRoute 在不同流量特征下的時(shí)延大多優(yōu)于其他方案,在最佳情況下能夠比當(dāng)前最優(yōu)方案節(jié)省9.6%的平均端到端時(shí)延。
圖4 20%吞吐量下平均端到端時(shí)延Fig.4 Average end-to-end delay under the 20% throughput
圖5 30%吞吐量下平均端到端時(shí)延Fig.5 Average end-to-end delay under the 30% throughput
圖6 40%吞吐量下平均端到端時(shí)延Fig.6 Average end-to-end delay under the 40% throughput
2)路由策略的泛化能力。常見(jiàn)的人工神經(jīng)網(wǎng)絡(luò)通常具有過(guò)擬合的缺點(diǎn),即在訓(xùn)練過(guò)程中的輸入數(shù)據(jù)格式需要保持不變,而訓(xùn)練完成后,該神經(jīng)網(wǎng)絡(luò)也難以適應(yīng)不同的輸入數(shù)據(jù)格式。DRL 算法主要依賴(lài)于神經(jīng)網(wǎng)絡(luò)計(jì)算產(chǎn)生策略,因此采用循環(huán)神經(jīng)網(wǎng)絡(luò)等神經(jīng)網(wǎng)絡(luò)的DRL 算法也存在過(guò)擬合的問(wèn)題。在本文實(shí)驗(yàn)場(chǎng)景中,在OS3E 拓?fù)湎峦瓿刹煌穆酚煞桨赣?xùn)練后,將所得路由算法應(yīng)用到其他網(wǎng)絡(luò),以測(cè)試不同方案的泛化能力,其結(jié)果如圖7 所示。其中,橫坐標(biāo)表示以O(shè)S3E 拓?fù)錇榛A(chǔ)不同測(cè)試拓?fù)涞墓?jié)點(diǎn)數(shù)量變化(即增多的節(jié)點(diǎn)數(shù)量),縱坐標(biāo)表示相對(duì)于OS3E原始拓?fù)湎戮W(wǎng)絡(luò)的端到端時(shí)延變化(正值表示時(shí)延性能有優(yōu)化,負(fù)值表示時(shí)延增加)。
圖7 不同路由方案泛化能力Fig.7 The generalizaiton ability of different routing schemes
由圖7 數(shù)據(jù)可以看出,隨著網(wǎng)絡(luò)拓?fù)渥兓絹?lái)越大(比原始訓(xùn)練拓?fù)銸S3E 增加節(jié)點(diǎn)越來(lái)越多),TIDE 和DRL-TE 的流量傳輸呈現(xiàn)出明顯的時(shí)延增加趨勢(shì),而ECMP 和SmartRoute 則無(wú)明顯的性能下降趨勢(shì)。其中,ECMP 和DRL-TE 在不同拓?fù)湎碌臅r(shí)延波動(dòng)性主要由拓?fù)浔旧淼男再|(zhì)造成。
3)魯棒性。本文實(shí)驗(yàn)主要測(cè)試SmartRoute 等方案在網(wǎng)絡(luò)鏈路失效情況下的路由魯棒性,從而展示其在實(shí)際網(wǎng)絡(luò)運(yùn)行環(huán)境下的可用性能。在測(cè)試中,將OS3E 拓?fù)潆S機(jī)選取不同數(shù)量的鏈路斷開(kāi)(若所選鏈路破壞了拓?fù)涞倪B通性,則重新選擇鏈路),以模擬真實(shí)網(wǎng)絡(luò)運(yùn)行環(huán)境下的網(wǎng)絡(luò)鏈路故障。由于TIDE 和DRL-TE 依賴(lài)于原始網(wǎng)絡(luò)拓?fù)?,無(wú)法適應(yīng)鏈路故障,因此本測(cè)試僅對(duì)比ECMP 和SmartRoute 的鏈路故障后路由性能。從圖8 的實(shí)驗(yàn)結(jié)果可以看出,在鏈路失效后,SmartRoute 總是能夠比ECMP 具有更低的端到端時(shí)延,證明了SmartRoute 方案在網(wǎng)絡(luò)鏈路故障場(chǎng)景下路由性能的魯棒性。
圖8 鏈路故障下的魯棒性測(cè)試結(jié)果Fig.8 Robustness test results under link failure
本文結(jié)合GNN 和DRL 技術(shù),提出一種智能路由機(jī)制SmartRoute。SmartRoute 使用DRL 算法實(shí)現(xiàn)方案參數(shù)的自主訓(xùn)練,網(wǎng)絡(luò)的交互過(guò)程不依賴(lài)于人工經(jīng)驗(yàn)搜索最優(yōu)策略。同時(shí),通過(guò)使用GNN 計(jì)算網(wǎng)絡(luò)中基于拓?fù)浣Y(jié)構(gòu)的流量分布數(shù)據(jù),能夠?qū)崿F(xiàn)在不同網(wǎng)絡(luò)拓?fù)湎侣酚刹呗缘姆夯芰吐酚刹呗缘聂敯粜浴O乱徊綄⑼ㄟ^(guò)構(gòu)建深度學(xué)習(xí)模型,對(duì)神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì)結(jié)構(gòu)進(jìn)行優(yōu)化,提升網(wǎng)絡(luò)的智能路由策略性能。