唐 倫 賀小雨 王 曉 譚 頎 胡彥娟 陳前斌
(重慶郵電大學通信與信息工程學院 重慶 400065)
(重慶郵電大學移動通信重點實驗室 重慶 400065)
網(wǎng)絡切片指在一個完整通用的物理基礎設施中,邏輯地分離網(wǎng)絡功能和資源,以保證不同通信應用場景中的服務質量(Quality of Service, QoS)需求[1]。每個切片絡包含有若干條相同服務類型的服務功能鏈(Service Function Chain, SFC),每條SFC由若干有序虛擬網(wǎng)絡功能(Virtual Network Function, VNF)組成。系統(tǒng)需要根據(jù)用戶需求和相關約束,合理地將VNF放置在底層網(wǎng)絡并為其分配CPU、內存、帶寬等物理資源。在接入網(wǎng)中,用戶終端(User Equipment, UE)的移動性使得接入網(wǎng)切片環(huán)境更具動態(tài)性和未知性[2,3]。
在接入網(wǎng)切片網(wǎng)絡中,UE通過遠端無線單元(Remote Radio Unit, RRU)將數(shù)據(jù)傳輸?shù)綄腟FC進行處理,形成了特殊的UE-RRU-SFC 3層關聯(lián)架構。因此,當UE移動時,首先會涉及到無線資源的重分配問題。文獻[4,5]考慮了UE的移動性和時變的數(shù)據(jù)到達率,通過優(yōu)化無線資源分配來降低時延。但實際上,由于形成的UE-RRU-SFC 3層關聯(lián)架構,當UE從一個RRU覆蓋范圍移動至另一個RRU時,若當前RRU無法直接為其提供所需的SFC,則需要一條新路徑將UE的數(shù)據(jù)從當前RRU傳輸?shù)綄腟FC。在這一過程中,不僅需要進行無線資源分配的調整、物理鏈路帶寬資源的重分配以及部分VNF遷移帶來的物理設備上計算資源的重分配[6]。同時,這些資源的分配方案會對系統(tǒng)時延產生影響。因此,在資源有限的網(wǎng)絡中,如何合理地設計SFC資源分配算法,從而提高資源利用率、降低系統(tǒng)時延是亟待解決的問題。
另一方面,由于UE的移動性和時變的數(shù)據(jù)到達率,需要適時地對資源進行調整。絕大多數(shù)文獻中,在調整或分配資源前,實際上都是在已知網(wǎng)絡資源狀態(tài)、UE信息以及當前VNF放置和資源分配的前提下,而事實上,這些全局信息往往很難獲得甚至無法獲得。文獻[7]提出了一種“共享賬簿”的概念,用于記錄和共享切片資源分配過程中所需的一些必要信息,且各個切片都具有修改和維護該賬簿的權限。但是并未對該種“共享賬簿機制”的實現(xiàn)展開討論。文獻[8]提出了一種基于區(qū)塊鏈的云架構,實現(xiàn)網(wǎng)絡各類資源信息在多臺設備上的共享和分布式管理。由于區(qū)塊鏈技術本身所具有的去中心化、集體維護性、自信任性、可驗證性和可追溯性等特點,提升了資源管理的可靠性和可信度[9]。
此外,隨著未來網(wǎng)絡規(guī)模的不斷增大且部署更加靈活,傳統(tǒng)方法難以解決高維度和高動態(tài)性的資源優(yōu)化問題,因此智能資源管理成為當前研究的熱點。文獻[10]采用強化學習算法對SFC中VNF的調度問題進行研究,但由于該方案利用有限的離散值對連續(xù)動作進行量化,會破壞動作空間的完備性。文獻[11]采用基于策略梯度的算法(Policy-Based Algorithm, PBA)對SFC部署問題進行研究,其能夠在連續(xù)的動作空間中有效學習隨機策略,并獲得較好的收斂性,但易收斂到局部最優(yōu)。文獻[12]首次提出了演員-評論家(Actor-Critic, A-C)學習算法,它結合了策略方案和值函數(shù)方案,使得在連續(xù)隨機策略方面有較好的優(yōu)越性。然而,A-C學習只適用單智能體進行樣本采集,可能導致得到的樣本是高度相關的,從而隨空間維度增加,算法將難以收斂。
針對接入網(wǎng)切片中SFC資源分配所存在的諸多問題,本文提出了一種基于異步優(yōu)勢演員-評論家學習(Asynchronous Advantage Actor-Critic, A3C)的SFC資源分配方案。主要貢獻包括:
(1) 考慮SFC資源分配過程需獲悉網(wǎng)絡全局信息但難以獲得的實際情況,包括UE位置信息、QoS需求、數(shù)據(jù)包到達信息,物理基礎設施中的無線資源、計算資源、鏈路帶寬資源信息以及目前VNF放置和資源分配情況信息等,提出一種基于區(qū)塊鏈的資源管理機制。通過引入?yún)^(qū)塊鏈技術,實現(xiàn)網(wǎng)絡全局信息的“分布式賬本式”存儲和管理,并進行可信可靠的共享、同步及更新,完成SFC資源分配過程的監(jiān)督和記錄。
(2) 考慮接入網(wǎng)切片場景下形成的UE-RRU-SFC 3層關聯(lián)架構,建立UE移動和數(shù)據(jù)包到達過程時變情況下的無線資源、計算資源和鏈路帶寬資源的聯(lián)合分配模型,以優(yōu)化系統(tǒng)時延并滿足UE的QoS需求。
(3) 將優(yōu)化模型轉化為馬爾科夫決策過程(Markov Decision Process, MDP)進行求解??紤]到該MDP的狀態(tài)和動作空間連續(xù)且維度較大,狀態(tài)轉移概率也未知,采用A3C方法實現(xiàn)SFC資源分配策略的求解。
圖1 接入網(wǎng)切片SFC資源分配框架
如圖1所示,基于5G C-RAN上行條件下,切片內的每個UE都擁有一條SFC進行數(shù)據(jù)傳輸。但是考慮到UE的移動性和數(shù)據(jù)包到達的時變性,需要考慮對SFC的資源分配進行適當?shù)卣{整。UE的移動伴隨著SFC中的VNFs遷移,因此需要重新為遷移的VNFs分配計算資源、鏈路帶寬資源等,因此還會涉及到無線資源的調整。VNF遷移引起的網(wǎng)絡資源重配置這一過程也會帶來額外的時延。在圖1所示的物理層中,基于區(qū)塊鏈的分布式網(wǎng)絡資源管理思想,各個UE,RRU以及物理設備之間會以點對點(Peer to Peer, P2P)網(wǎng)絡進行信息泛洪,并通過共識過程保證各個物理設備上的信息同步且一致,實現(xiàn)網(wǎng)絡全局信息可信可靠的分布式存儲記錄。本文以聯(lián)盟區(qū)塊鏈的形式構建分布式賬本,相比于公有區(qū)塊鏈更加高效[13]。物理節(jié)點分為聯(lián)盟成員和輕節(jié)點兩類,目前存在的共識算法包括工作證明,股權證明,拜占庭容錯(Practical Byzantine Fault Tolerance, PBFT)等等[14—16]。對于不需要貨幣體系的聯(lián)盟鏈而言,常采用PBFT算法。進一步,為了減少區(qū)塊鏈網(wǎng)絡壓力和時間開銷,可省去傳統(tǒng)PBFT算法的確認階段[17],因此本文采用此種優(yōu)化的PBFT算法完成共識。
SFC資源分配過程主要分為全局信息同步和資源分配兩個模塊,分為3個步驟:
(1) 全局信息同步。不同UE會由自身私鑰對最新的位置信息、QoS信息以及數(shù)據(jù)包到達信息等進行簽名,不同的物理設備也會由其自身私鑰對最新的各類物理資源容量信息以及VNF放置和資源分配情況信息進行簽名。而后,這些信息經(jīng)過P2P網(wǎng)絡進行泛洪,聯(lián)盟成員基于優(yōu)化的PBFT算法執(zhí)行共識過程,生成一個新的區(qū)塊并將包含該事務的新區(qū)塊加入到區(qū)塊鏈中。
(2) 基于A3C的SFC資源分配?;贏3C的網(wǎng)絡優(yōu)化引擎通過同步區(qū)塊鏈數(shù)據(jù)查詢到最新的全局信息,而后通過A3C算法實現(xiàn)SFC資源分配策略的求解。
(3) 服務供應。根據(jù)策略優(yōu)化結果,完成物理設備、鏈路上的VNF放置和各類資源分配,為UE提供服務。
其中,Δ 是一個極小的常數(shù),以避免分母為0的情況。
從而,在時隙t內UEu 傳輸數(shù)據(jù)的時延du(t)表示為
則系統(tǒng)中所有UE傳輸數(shù)據(jù)包的接入網(wǎng)切片總時延d(t)表示為
因此,系統(tǒng)中所有UE傳輸數(shù)據(jù)包的總平均接入網(wǎng)切片時延d 表示為
綜上,本文接入網(wǎng)切片場景的SFC資源分配問題可建立為基于無線資源、計算資源和鏈路帶寬資源聯(lián)合分配的時延最小化數(shù)學模型
在上述約束條件中,C1~C4分別代表無線資源、計算資源和帶寬資源分配約束;C5限制任意UE只能連接到1個RRU;C6限制任意VNF只能實例化在1臺物理設備上;C7限制任意VNF至多只能選擇1條物理鏈路傳輸數(shù)據(jù);C8和C9確保任意SFC上相鄰的兩個VNF若是部署在不同的物理設備上,則這兩臺設備必須相鄰;C10表示任意UE只有連接到RRU才分配無線資源;C11和C12分別表示任意SFC只有當其虛擬節(jié)點即VNF映射到物理節(jié)點、虛擬鏈路映射到物理鏈路時,才分配計算資源和帶寬資源;C13表示任意UE產生的新路徑只有映射到了實際物理鏈路上才分配帶寬資源;C14和C15確保任意UE的QoS得到滿足,即無線傳輸速率高于最小可接受傳輸速率,數(shù)據(jù)傳輸時延低于最大可容忍時延。
由于UE的移動性和數(shù)據(jù)包到達的動態(tài)性,系統(tǒng)需要支持需求驅動和自動調整的服務供應,同時考慮到動作空間的連續(xù)性,本文引入了A3C學習來優(yōu)化SFC的資源分配策略。該強化學習算法能并行地在環(huán)境中執(zhí)行多個智能體的概念,不需要經(jīng)驗池也能很好地進行更新[19]。
演員部分負責更新策略參數(shù)向量θa,其策略梯度公式表示為
圖2 SFC數(shù)目與區(qū)塊鏈共識時延關系圖
圖3 區(qū)塊鏈節(jié)點CPU使用率
圖2描述了部署4, 6, 8個聯(lián)盟成員對區(qū)塊鏈共識時延的影響。一方面,隨著系統(tǒng)中SFCs數(shù)量的增加,區(qū)塊鏈共識時延隨之升高,這是由每條SFC對應的UE信息、以及各自的VNF放置信息、資源分配信息等都屬于網(wǎng)絡全局信息需要進行同步所導致。另一方面,聯(lián)盟成員數(shù)量的增加也會導致共識時延的升高。在優(yōu)化的PBFT算法中,雖然部署更多的聯(lián)盟成員可以提高安全性和容錯性,但同時也會增大PBFT各個階段的信息廣播、交互過程的時間開銷,從而導致共識時延升高。
圖3描述了不同事務請求發(fā)送速率下,共識節(jié)點的CPU使用率。其中,在Caliper區(qū)塊鏈性能測試框架中,共識請求發(fā)送速率單位為每秒傳輸?shù)氖聞諅€數(shù)。隨著事務請求發(fā)送速率的不斷增加,由于需要進行更多的共識過程,因此CPU使用率逐漸升高,同時平均請求成功接受率下降。所部署的聯(lián)盟成員的數(shù)量越多,意味著將進行更為復雜的共識過程,安全性和容錯性也得到提升,因此會占用更多的CPU資源。
設置系統(tǒng)中S F C 條數(shù)為5 0。取值δ=0.01,δ=0.05以及δ=0.001時的算法收斂過程如圖4所示。在800個學習回合中,不同δ取值的最終收斂系統(tǒng)時延值較為接近,但是當δ=0.01,曲線的波動或突變程度較小,且收斂速度更快。因此,在后續(xù)仿真過程中采用熵超參數(shù)δ=0.01。
圖4 不同熵超參數(shù)δ的A3C算法收斂性
圖5 不同學習算法的資源使用方差百分比
圖5所示為不同算法在不同SFC數(shù)量下的節(jié)點計算資源。方差越小說明VNF的放置和互連以及多條SFC之間的資源分配更加合理。基于A3C學習的SFC資源分配算法的結果都明顯低于基于A-C學習和PBA的算法,這是因為A3C采用多智能體并行學習,能夠更好地與環(huán)境進行交互,制定出更為合理的資源分配策略,而更加均勻地資源分配也是系統(tǒng)時延性能更為優(yōu)越的直接原因。
本文考慮網(wǎng)絡全局信息難以獲悉的實際情況,針對接入網(wǎng)側UE的移動性以及業(yè)務到達的隨機性和動態(tài)性引起的系統(tǒng)時延問題,提出了一種基于A3C學習的SFC資源分配算法。本算法通過引入?yún)^(qū)塊鏈技術實現(xiàn)全局信息的“分布式賬本式”存儲和管理??紤]到UE的移動性,建立以最小化時延為目標的SFC多維資源聯(lián)合優(yōu)化模型,并采用A3C學習算法進行資源分配策略求解。仿真結果表明,本算法能夠更加合理高效地利用資源,優(yōu)化系統(tǒng)時延并保證UE需求。