任語錚+謝人超+黃韜
摘要:提出了一種基于增強學習的網絡切片資源動態(tài)優(yōu)化方案。使用該方案動態(tài)調整網絡切片資源時,通過考慮未來網絡切片中的業(yè)務流量變化情況,對業(yè)務流量進行預測,從而推斷出未來網絡資源的劃分情況;再通過增強學習算法,使得未來時刻的網絡資源劃分狀態(tài)對當前劃分策略做出影響,從而得到當前的最佳策略?;谠撍惴?,可以保證在資源分配過程中對網絡需求變化做出快速響應,并通過仿真進行了驗證。
關鍵詞: 5G;網絡切片;增強學習;動態(tài)優(yōu)化
Abstract: In this paper, a dynamic optimization algorithm based on reinforcement learning for network slicing division is proposed. Network resources can be dynamically allocated in the following ways: the traffic flow can be predicted by considering the changes of flow, then the division of future network resources can be deduced; based on reinforcement learning algorithm, the current partition strategy will be affected by the state of network resource partitioning in the future, and the best division strategy can be got. Based on this algorithm, the change of network requirements can be rapidly responded in the process of resource allocation, and verified by simulation.
Key words: 5G; network slicing; reinforcement learning; dynamic optimization
1 5G網絡架構與網絡切片
的概念
為了能對各業(yè)務提供獨立的網絡服務而又不鋪設專用網絡,5G網絡引入了網絡切片技術[1-2],即使用軟件網絡定義(SDN)/網絡功能虛擬化(NFV)技術,將物理基礎設施資源虛擬化為多個相互獨立的平行的網絡切片,每個網絡切片服務于某一具體的業(yè)務場景,以滿足不同業(yè)務場景對帶寬、時延、服務質量等差異化要求,從而滿足各種垂直行業(yè)多樣化需求,以增強網絡彈性和自適應性。網絡切片技術提升了網絡資源利用率,節(jié)省了運營商的花費。
下一代移動通信網(NGMN)5G白皮書中的網絡切片如圖1[3]所示。目前NGMN對不同的應用場景進行了劃分,并為每個應用場景設計了相應的網絡切片,總共定義了8個系列,覆蓋了現今業(yè)務的大部分場景[3]。
然而網絡切片資源的劃分并非是一成不變的,而應隨各業(yè)務流量的變化進行動態(tài)調整。首先,由于部分用戶在不斷移動,且用戶需求往往會隨著時間的改變發(fā)生改變,所以網絡中各業(yè)務流量也是動態(tài)變化的。此外,第三方服務提供商可能會開發(fā)不同的網絡業(yè)務,形成不同的應用需求,從而要求一個不同的網絡切片實例。這都導致了網絡切片的劃分要隨需求的改變發(fā)生變動。在基于切片的網絡架構中,切片劃分的優(yōu)劣程度直接影響了網絡性能,所以如何對切片資源進行動態(tài)優(yōu)化至關重要。
針對網絡切片資源的動態(tài)優(yōu)化,有學者提出了一種基于比例公平算法的半靜態(tài)資源分配方案。該方案使各網絡切片之間能實現更公平地資源分配[4]。然而該算法更著眼于公平性而不是性能,所以其資源利用率還有提升空間。還有學者認為可以通過對流量進行統(tǒng)計分析,從而得到全網的流量分布特征,再根據流量分布預先構造好基本切片。之后通過分析實時流量的負載和需求構造切片,并將構造結果通過 OpenFlow 協(xié)議下發(fā)到交換節(jié)點上[5]。
然而,以上的切片劃分算法都是依據當前時刻流量進行優(yōu)化,而未考慮未來網絡流量變化的影響。事實上,在動態(tài)優(yōu)化網絡切片資源時需要將未來網絡流量的情況一并考慮進來,因為如果在決策時考慮了未來網絡的流量變化,則相當于在切片劃分策略中引入了預測功能。使得劃分結果可以更快地對未來網絡的需求變化作出響應。
為了解決這一問題,我們提出了一種基于增強學習的動態(tài)優(yōu)化網絡切片資源方案。
2 基于增強學習的網絡
切片動態(tài)優(yōu)化方案
2.1 增強學習
增強學習(RL)是近些年機器學習和智能控制領域的主要方法之一。RL通過使累積效用最大化,從而確定智能體在環(huán)境中應該采取的一組行為。RL累積效用的計算方式并不取決于過去的行為,而取決于未來的狀態(tài),也就是說未來所處的狀態(tài)會影響到當前的狀態(tài)選擇。通過增強學習,一個智能體可以知道在某個特定狀態(tài)下應該采取什么行動。
RL的思想很像馬爾可夫過程(MDP)。它定義了四元組{S,A,[Psa],R}。其中,S是智能體當前所處的狀態(tài),A是智能體采取的行為,[Psa]是智能體在狀態(tài)S下做出動作A之后轉移到其它狀態(tài)的概率分布,R是每個狀態(tài)的效用函數。此外,RL還定義了狀態(tài)到行為的映射,[π:S→A],被稱為策略。
如圖2所示,狀態(tài)[S00]在動作[a00]下,以一定的轉移概率轉移到了[S10],狀態(tài)[S00]的效用函數是[r00],狀態(tài)[S10]的效用函數是[r10]。
增強學習通過定義和最優(yōu)化值函數來得到最優(yōu)策略,最常見的值函數形式如式(1):
[Vπ(s)=Eπ(i=0∞γiri|s0=s)] (1)endprint
可以看到:這是對一組效用函數的加權和求期望,其中[γ]被稱為折合因子,描述了未來效用對當前效用的重要程度。
有了值函數的定義之后,求最優(yōu)策略就變成了最大化值函數,即:
[π*=argmaxπVπ(s),?s∈S] (2)
我們可以依據以下原則來對已有策略進行改進:若保持策略[π]的其他行為不變,僅將狀態(tài)s下的動作a改變?yōu)閇a],由此得到了新策略[π]。若值函數[V>V],則說明策略[π]好于策略[π]。我們可以通過動態(tài)規(guī)劃的算法來得到最優(yōu)策略[π*]。
2.2 基于增強學習的網絡切片動態(tài)
優(yōu)化方案
2.2.1 算法的基本思想
端到端的網絡切片主要包括無線接入網(RAN)側切片、核心網(CN)切片,以及連接兩者的傳輸網絡切片。本算法主要針對CN切片。在5G網絡中,核心網節(jié)點分布式協(xié)作,以擁有更優(yōu)的網絡性能。
算法的基本思想是:通過定義鏈路狀態(tài)矩陣和節(jié)點狀態(tài)矩陣來描述CN切片的不同劃分方式,則切片在不同劃分方式間的改變就映射成了一張狀態(tài)轉移圖,再通過定義各狀態(tài)下的效用函數和搜索最大化效用函數的方式,得到下一個最佳轉移狀態(tài),也就得到了CN切片的最優(yōu)化分方式。
2.2.2 算法中幾個重要定義
(1)定義鏈路狀態(tài)和節(jié)點狀態(tài)。首先需要對CN資源進行離散化,即對核心網鏈路與核心網節(jié)點資源劃分資源片。在動態(tài)優(yōu)化時,以一個資源片為最小的變動單位。鏈路和節(jié)點在劃分切片時的不同劃分方式對應著不同的狀態(tài)向量。
(2)預測未來鏈路和節(jié)點所處的狀態(tài)。如果動態(tài)優(yōu)化算法具有一定的預測功能,那么CN的劃分結果則能更快地對網絡需求變化作出響應,所以在決策時需要考慮將來時刻核心網可能處于的劃分狀態(tài)。由此我們還需要進行流量分析,從而預測出未來各時刻CN所處的狀態(tài)。
(3)鏈路效用函數、節(jié)點效用函數與總效用函數。效用函數描述了關心的若干指標。由于對鏈路和節(jié)點往往關心不同的指標,需要分別定義鏈路效用函數和節(jié)點效用函數。
以鏈路效用函數為例,假設在一個網絡中有n類業(yè)務,則可以定義某狀態(tài)下的鏈路效用函數為:[Vl=i=0nVli],其中[Vli]為該鏈路的第i個網絡切片的效用函數。第i個網絡切片的子效用函數可以按照如下的思路定義:首先,鏈路的利用率應該為一個合適的值,因為鏈路利用率過高會帶來擁塞、丟包;鏈路利用率過低會帶來資源的浪費,所以在定義效用函數時,可以給定一個參考鏈路利用率[α],當鏈路的實際利用率偏離[α]的程度越小時,該網絡切片的子效用函數越高。另外,對某一業(yè)務而言,不同切片的重要性可能不同,所以可以定義越重要的切片對應的效用函數越高等等。
同理,可以定義節(jié)點的效用函數[Vn]。于是,在某時刻t下,可以定義總的效用函數[Vt=Vl+Vn],則[t0]時刻的最大化目標函數為:
其中,[γ]為折合因子,描述了未來狀態(tài)對當前決策的重要程度。
2.3 算法的具體步驟
算法包括輸入和輸出。輸入指各鏈路、節(jié)點在一段時間內的歷史數據包,數據包信息主要包括:數據的業(yè)務類型及其對應的網絡切片號、數據包長度、時間戳等。
輸出指此時應該對網絡鏈路和網絡節(jié)點做出怎樣的劃分。
算法的流程如下:
(1)內容預測?;谶^去一段時間內核心網中的數據請求情況,預測未來各離散時刻下每條鏈路中各類業(yè)務包的流量情況。
(2)資源離散化。將各鏈路和網絡節(jié)點的資源劃分資源片,日后在進行資源配置時都以一個資源片為最小的劃分單位。
(3)維護兩個狀態(tài)矩陣,分別描述核心網的鏈路狀態(tài)和節(jié)點狀態(tài)。假設網絡中共有n類切片,給定鏈路初始狀態(tài)[Sl]。此時第i條鏈路的資源劃分情況為[li=(a1,a2,…,an)],其中,[ak]是第k個網絡切片分得的資源片數,[i=0nai]為該條鏈路的資源片總數,則可得到整個網絡的鏈路資源劃分矩陣[Am×n],其中每個行向量描述了各條鏈路的資源劃分情況。定義[Sl=Am×n](m條鏈路)。
給定節(jié)點初始狀態(tài)[Sn],此時對第j個節(jié)點的資源劃分情況為[nj=(b1,b2,…,bn)],其中[bk]是第k個網絡切片分得的資源片數,[i=0nbi]為該網絡節(jié)點的資源片總數,則可得到整個網絡的節(jié)點資源劃分矩陣[Bk×n],其中每個行向量描述了各節(jié)點的資源劃分情況。定義[Sn=Bk×n](k個節(jié)點)。
(4)定義效用函數。根據關心的指標定義鏈路效用函數[Vl]和網絡節(jié)點效用函數[Vn];從而得到總的效用函數[Vt=Vl+Vn]。假設關心未來T個時刻網絡狀態(tài)對當前決策的影響,則需要最大化的目標函數為:
[V總=Vt0+γ1?Vt1+γ2?Vt2+…+γT?VtT=k=0Tγk?Vtk] (4)
(5)假設需要優(yōu)化的為[t0]時刻,此時的鏈路狀態(tài)為[Sl]、節(jié)點狀態(tài)為[Sn],則可求得其相應的鏈路效用函數和節(jié)點效用函數。在某一action下,鏈路狀態(tài)和節(jié)點狀態(tài)在[t1]時刻將轉移到其相鄰狀態(tài)[Sl′]和[Sn′]。[Sl′]和[Sn′]均為集合,里面的元素是當前狀態(tài)的相鄰狀態(tài)。
由于核心網的鏈路資源往往比節(jié)點資源更為豐富,且不同的業(yè)務對網絡節(jié)點的資源需求不同,例如:有的CN切片需要較大的計算資源,有的切片則需要更大的存儲資源,所以每次轉移到新的一組狀態(tài)[Sl′]和[Sn′]之后需要將[Sl′]代入[Sn′]內進行檢驗,考查新的鏈路資源劃分是否滿足此時的節(jié)點劃分需求,若滿足,則可求得新狀態(tài)下[Sl′]和[Sn′]的效用函數,然后繼續(xù)進行下一次狀態(tài)轉移;若不滿足,則將該狀態(tài)對標記為無效狀態(tài),即從狀態(tài)轉移圖中將該轉移節(jié)點刪除。鏈路狀態(tài)[Sl′]回退到狀態(tài)[Sl],重新轉移到[Sl′]集合中的其他狀態(tài),再繼續(xù)進行驗證,于是可以得到未來T個時刻的網絡狀態(tài),再根據預測的數據包流量情況算出其各自的效用函數,并以一定的折合率影響當前決策,得到了該組策略對應的效應值:endprint
[V總=Vt0+γ1?Vt1+γ2?Vt2+…+γT?VtT=k=0Tγk?Vtk] (5)
(6)最大化目標函數[V總]。使用動態(tài)規(guī)劃算法進行策略改進,從而收斂到最優(yōu)策略,即可得到當前時刻與未來時刻的鏈路和節(jié)點的資源劃分。
3 仿真結果分析
我們對比考察了3種算法的性能:方法1是基于比例的網絡切片動態(tài)優(yōu)化方案,該方案會依據當前各業(yè)務流量按比例劃分切片資源;方法2是基于公平的靜態(tài)網絡切片分配方案,該方案將網絡資源公平地分配到各切片上,且不根據網絡流量變化進行調整;方法3是基于增強學習的5G網絡切片資源動態(tài)優(yōu)化方案,即文中第3部分所述方案。下面的實驗模擬5G核心網,其中的核心網節(jié)點假設采用分布式協(xié)作。首先保證核心網的網絡資源不變,通過提升網絡中請求數據量,比較3種算法的資源利用率;再保證核心網資源和請求數據量不變,通過改變折合因子[γ]的取值,考察網絡資源的利用率。
假設有4個核心網網關節(jié)點,每個節(jié)點可提供的資源數按照以40為中心的均勻分布生成,CN節(jié)點的資源包括計算資源、存儲資源等,兩個CN節(jié)點間的鏈路以一定的概率P生成,每條鏈路的資源數按照以55為中心的均勻分布生成。假設運營商同時構建了2個CN切片,各切片的請求數據包數量在一定的范圍內隨機生成,例如:當各切片的最大內容請求數為N,則每條鏈路各切片請求數均為0~N內的隨機數,依次可以得到每條鏈路的數據包請求數,進而可得到通過每個節(jié)點的數據包請求數,其值為連接在該節(jié)點上的各鏈路數據量之和的1/2,總共可以生成T組數據,用以模擬未來T時間內各切片的需求情況。
3.1 網絡中數據量的影響
圖3、圖4描述了5G核心網中,當前時刻各算法的節(jié)點平均資源利用率和鏈路平均資源利用率。節(jié)點平均資源利用率依據以下方式得到:首先考察一個CN節(jié)點,并根據當前時刻的流量情況算出該節(jié)點各切片的節(jié)點資源利用率,再根據各切片的資源利用率算出該節(jié)點的資源利用率。同理可得到每個CN節(jié)點的資源利用率,進而可得到節(jié)點的平均資源利用率,以及鏈路平均資源利用率。圖3、圖4主要用于考察3種算法對網絡資源的利用情況。
圖5、圖6描述了5G核心網中,未來時刻各算法的節(jié)點平均資源利用率和鏈路平均資源利用率。節(jié)點平均資源利用率按照以下方式得到:保持網絡劃分結果不變,首先考察一個CN節(jié)點,根據未來時刻的流量情況算出該節(jié)點各切片的資源利用率;再根據各切片的資源利用率算出該節(jié)點的平均資源利用率;同理可得到每個CN節(jié)點的資源利用率,進而可得到節(jié)點的平均資源利用率,以及鏈路平均資源利用率。圖5、圖6主要用于考察各算法的網絡劃分結果對未來時刻數據流量的匹配程度。
由圖3、圖4可以看到:當各CN切片的最大內容請求數上升,即核心網中的數據總量上升時,3種算法的資源利用率隨之上升,并且兩種動態(tài)調整算法的資源利用率提升幅度要高于靜態(tài)劃分算法。這主要是因為動態(tài)的資源分配結果與網絡需求更為匹配,所以讓核心網資源被更好地利用。
由圖5、圖6可以看到:基于增強學習的5G網絡切片資源動態(tài)優(yōu)化方案的平均資源利用率最高,基于公平的靜態(tài)劃分算法其次,基于比例的劃分算法最后,其中基于比例的網絡切片動態(tài)優(yōu)化方案最不穩(wěn)定。直觀地,各CN切片的最大內容請求數增加主要會帶來兩方面的變化:第一,使得核心網中的數據總量上升,從而資源被更充分的利用;第二,各CN切片流量需求的變動幅度加大。這意味著當網絡中流量變動時,基于比例的劃分算法需要反復調整網絡劃分結果,而核心網資源的不斷調整會消耗大量時間和資源,所以其資源劃分結果對未來網絡的需求變化響應較慢,且不具有穩(wěn)定性。因此當網絡劃分結果與未來時刻流量不匹配時,會導致資源利用率很低。
3.2 [γ]取值的影響
折合因子[γ]描述了未來效用對當前效用的重要程度。下面我們考察其對基于增強學習的5G網絡切片動態(tài)優(yōu)化方案性能的影響。
假設運營商同時構建了2個CN切片,拓撲及核心網資源的生成方式與3.1中一致,各切片最大內容請求數為18。共生成T組數據,用以模擬未來T時間內各切片的需求情況。固定以上參數不變,通過改變折合因子[γ]的取值,考察其對資源利用率的影響,結果如圖7、圖8所示。節(jié)點資源利用率根據以下方式得到:先考察一個CN節(jié)點。分別根據當前時刻、未來時刻的流量情況算出該節(jié)點各切片資源利用率;再根據各切片的資源利用率算出該節(jié)點的平均資源利用率;同理可得到每個CN節(jié)點的資源利用率,進而可得到節(jié)點的平均資源利用率,同理可得到鏈路平均資源利用率。[t0]為當前時刻的資源利用率,[t1]為未來時刻的資源利用率。
隨著折合因子[γ]的增加,當前時刻的資源利用率略有下降,未來時刻的資源利用率大幅提升。
4 算法的簡化與參數選擇
從前文我們可以看到:增強學習得到的是5G核心網在未來一段時間內的一組劃分策略。這組策略除了包括當前策略及未來策略,這意味我們可以通過檢測核心網中數據包的實際情況來簡化計算量。如果未來時刻核心網數據包的實際流量情況與預測的結果相差不大,那么只需要在計算好的未來策略的基礎上做演近式微調,就可以得到新的策略。基于這種方式,我們可以大大簡化該算法的計算量。
另外,我們還可以通過5G核心網中的鏈路與節(jié)點資源的約束來定義無效狀態(tài),并以此來簡化計算量。因為實際的5G網絡中往往會存在鏈路和節(jié)點資源不匹配的問題,所以鏈路和網絡節(jié)點則存在著一系列的約束關系。在劃網絡資源時,移動運營商往往需要根據網絡切片類型和網絡負載情況為各個網絡切片分配固定的資源以滿足其最低要求,這說明有些狀態(tài)是不能被轉移的。所以,我們可以定義無效狀態(tài),并且在實際計算的過程中不斷標注無效狀態(tài),刪除不符合資源約束條件的狀態(tài)組合,不斷縮小狀態(tài)轉移圖的規(guī)模,以此來簡化計算量。
我們需要考慮的另一個問題是如何對核心網資源進行離散化。網絡資源的離散化粒度決定了計算量的大小,如果離散化粒度過小,則狀態(tài)矩陣維度太高,計算時間太長;如果離散化粒度過大,雖然可以簡化計算,但計算結果卻很難逼近最優(yōu)解。另外,每一條鏈路和網絡節(jié)點的離散化粒度可以不同。endprint
此外,我們還需要找到合適的折合因子[γ],它表明了未來效用對當前效用的影響,并據此來影響當前的決策。[γ]的值不可過大或者過小,如果[γ]過大,而對數據包的情況預測與事實相差很大,則會導致對將來時刻的效用計算不夠準確,進而影響當前策略的選擇;如果[γ]過小,則將來時刻的狀態(tài)對此刻選擇的策略影響不夠,就可能達不到我們的目的,無法更好地反應各切片對資源的需求變化。
最后我們還需要選擇合適的時間窗T,它描述了我們需要考慮將來多長一段時間內的狀態(tài)與效用函數??梢钥吹剑篢不可以過大,一方面T值的選擇直接決定了本文算法的計算量大??;另一方面,如果T值過大,而對數據包的情況預測與事實相差很大,則會導致對將來時刻的效用計算不夠準確,進而影響當前策略的選擇。但T也不可以過小,如果T太小則對未來狀態(tài)考慮得不夠,同樣不能更好地實現我們的目的。
5 結束語
針對如何動態(tài)調整5G核心網網絡切片資源,我們提出了一種基于增強學習的5G網絡切片資源動態(tài)優(yōu)化方案。該算法首先對未來時刻的核心網狀態(tài)進行預測,再依據核心網未來時刻所處的狀態(tài)對當前決策做出影響,以使切片劃分結果更快地對網絡的需求變化做出響應、改善網絡整體性能。
該算法中的一些參數會較大地影響性能,如何對這些參數進行選取在日后還值得更多的研究。
參考文獻
[1] ITRI. Updates to Solution 6.1.3:Introducing Network Instance ID:S2-162666[R/OL].(2016-08-30)[2016-08-30].http://www.3gpp.org/ftp/tsg_sa/wg2_arch/tsgs2_115_Nanjing_China/Docs/
[2] IMT-2020 (5G)推進組.5G網絡架構設計白皮書[R/OL].(2016-08-30)[2016-08-30].http://www.catr.cn/kxyj/qwfb/bps/201606/t2016024_2173031.html
[3] NGMN Alliance. 5G White Paper[R]. 2015
[4] 粟欣,龔金金,曾捷.面向5G網絡切片無線資源分配[J].電子產品世界,2017,24(04):30-32+40
[5] 周恒,暢志賢,楊武軍,郭娟.一種5G網絡切片的編排算法[J].電信科學,2017,33(08):130-137endprint