羅一鳴 權偉
(北京交通大學電子信息工程學院,北京100044)
在網絡強國和網信立國的戰(zhàn)略背景下,云網融合通過結合通信技術與信息技術實現(xiàn)了網絡一體化的供給、運營與服務。云網融合要求網絡支撐業(yè)務的基本性能需求,以及保障差異化服務的實現(xiàn),這就要求網絡業(yè)務提供統(tǒng)一的云網切片能力,融合計算、存儲、網絡云、數(shù)據(jù)、算力等多維度資源,進行統(tǒng)一調度、優(yōu)化和管理[1]。
云網融合是一個發(fā)展演進過程,需要基礎設施層、功能層和操作系統(tǒng)的不斷迭代與優(yōu)化,經過協(xié)同階段、融合階段和一體階段,最終發(fā)展成熟。云網融合下的操作系統(tǒng)提供編排、自動化、智能化的能力,通過云網切片適應云資源的伸縮與彈性,靈活滿足不同場景需要。云網切片的關鍵技術包括統(tǒng)一編排、云網感知與自適應調整[1]。統(tǒng)一編排支持云網資源包裝抽象為邏輯服務,將業(yè)務的資源需求轉化為云網資源的調用要求,從而實現(xiàn)云網資源的統(tǒng)一調度。云網感知通過采集業(yè)務、客戶和底層網絡的質量和性能參數(shù),通過評價模型來實時評估云網業(yè)務和網絡的運行狀態(tài)。自適應調整要求云網切片基于云網業(yè)務和網絡的運行狀態(tài),對云網服務進行自動化調整、優(yōu)化與調度,實現(xiàn)網絡資源與路徑選擇的智能化,在網絡切片的基礎上實現(xiàn)云資源利用的最優(yōu)化。
網絡切片[2]是指通過網絡功能虛擬化[3](Network Function Virtualization,NFV)與軟件定義網絡[4](Software Defined Networking,SDN)等技術,將底層物理網絡資源抽象為虛擬資源,將物理網絡抽象為邏輯網絡,通過差異化地定制網絡切片實例(Network Slice Instance,NSI)來為切片用戶提供通信功能,映射到物理網絡的過程稱作網絡切片編排[5],云網切片要求切片具備統(tǒng)一編排和自適應的調整能力[6]。目前,切片編排過程中安全保障技術尚不成熟,存在很多安全風險[7-8],其中切片間資源競爭造成的信息泄露[9]為云網切片面臨的主要挑戰(zhàn)。
文獻[10]通過定義隔離評估值,在一定程度上提高了編排收益,增強了編排的安全性能,但降低了編排后滿足NSI需求的切片比例。文獻[11]通過減少切片實例的共存時間來抵御信息泄露風險,但算法的收斂時間較長,整體開銷較大。文獻[12]通過對底層服務器進行分組,在編排部署時進行了安全性能上的優(yōu)化,但在面對海量切片用戶的編排需求時,性能會降低。文獻[13]設計了多種遺傳算法來提高切片編排的鏈路利用率和帶寬利用率,但沒有進行安全性能優(yōu)化。文獻[14]通過權衡帶寬和主機的消耗優(yōu)化部署模型,降低了部署成本,但這種算法沒有考慮各切片之間資源共享帶來的安全風險。文獻[15]通過一種自動縮放切片的算法,在切片資源范圍內進行安全可信計算,但時間復雜度較高。文獻[16]通過遺傳算法實現(xiàn)了切片資源的分配優(yōu)化,但不能全局宏觀地自由調控資源的分配比例。文獻[17]建立了一種博弈機制來調節(jié)資源的分配情況,但不能滿足切片需要的差異化服務。文獻[18]對切片部署進行了拓撲方面的優(yōu)化,但沒有對資源部署和安全性能作出保障。
綜上所述,目前切片編排優(yōu)化算法主要將優(yōu)化目標集中在性能和成本上,忽略了切片使用者本身的安全屬性,欠缺對資源共享的整體評估。本文設計了基于資源共享評估和用戶安全評級的切片編排算法(Resource User Slicing Algorithm,RUSA),將切片編排收益作為優(yōu)化目標,通過評估切片編排的映射安全評級作為約束條件,保證了部署的NSI滿足安全性能要求,提高了算法收斂速率。
圖1是智融標識網絡切片編排模型[19],其中智慧服務層負責服務查詢與服務管理,驗證用戶請求的合法性,解析請求并利用服務映射知識庫向資源適配層下發(fā)服務需求,再根據(jù)執(zhí)行結果向用戶作出反饋。資源適配層結合上層需求,在資源映射知識庫和編排算法知識庫中匹配對應的網絡切片編排算法,構造切片編排信息生成對應的NSI,并下發(fā)至網絡組件層,此外還會動態(tài)感知底層拓撲的網絡拓撲和資源信息,對切片集群進行統(tǒng)一管理;網絡組件層是底層網絡設備和功能的集合,將設備狀態(tài)和拓撲狀態(tài)收集至資源適配層來進行信息的一體化管理,負責將NSI映射到底層網絡節(jié)點,實現(xiàn)切片數(shù)據(jù)的存儲與轉發(fā)。
圖1 智融標識網絡切片編排模型
網絡拓撲以G表示:G=(N,L,B,D),其中N表示網絡拓撲節(jié)點,L表示網絡拓撲鏈路,B表示網絡拓撲的帶寬,D表示網絡拓撲的時延。對應地,切片拓撲以Gv表示,Gv=(Nv,Lv,Bv,Dv),其中Nv表示切片拓撲的節(jié)點,Lv表示切片拓撲中的鏈路,Bv表示切片拓撲的帶寬資源,Dv表示切片拓撲的時延。
在智慧服務層完成對切片用戶請求的身份驗證后,資源適配層將分析該用戶的需求和交互過程,引入交互評價機制對本次交互行為作出評估,參考該用戶歷史交互的參數(shù),最終得出其用戶安全等級。
設用戶的互動值Sn如公式(1)所示:
(1)
其中,n為一定時間段內該用戶訪問切片的總次數(shù),為了更準確地反映該用戶的交互行為,首先設置一個優(yōu)先級隊列Q來限制加入評級計算的交互行為的數(shù)量上限,隊列的長度為w,當用戶的總交互次數(shù)超過w時,優(yōu)先級隊列Q將移除最先的交互行為,使得隊列僅記錄最近發(fā)生的w次交互行為。β為影響范圍參數(shù),可以限制不同時間段發(fā)生的交互行為對安全評級的影響,使時間軸上較近的交互行為對評級的影響更大,削弱較久前交互行為的影響。λi為第i次歷史交互行為的評價值,當評價為正常交互行為時為一個正數(shù)λg,當評價為具備安全威脅的交互行為時,為一個負值piλb,其中λb為一個負數(shù),pi為處罰系數(shù),如公式(2)所示:
pi=a(eSi-1-1)
(2)
其中,a可以用來調整處罰程度,Si-1為上次交互時計算得到的該用戶的互動值,處罰系數(shù)pi可以加大互動值較高的用戶在發(fā)生具有安全威脅的交互行為時得到的降級處罰程度。
引入Logistic函數(shù)來建模用戶安全評級的增長率。Logistic函數(shù)如公式(3)所示:
(3)
(4)
(5)
(6)
(7)
算法1:映射安全等級算法
輸入: 優(yōu)先級隊列Q的長度w,用戶互動總次數(shù)n,用戶歷史交互評價值λN,切片實例信息vj。
1: 初始化:設置影響范圍參數(shù)β,處罰系數(shù)pi,處罰程度a,評級變化程度k,權重系數(shù)δ、ε1、ε2。
2: 根據(jù)公式(2)計算交互評價λ。
3: ifn>w。
4:Q.poll()。
5: end if。
6: for 1≤i≤n≤wdo。
7: 根據(jù)公式(1)計算互動值Sn。
8: end for。
RUSA算法采用一種粒子來模擬粒子群優(yōu)化算法[20],隨機初始一個規(guī)模為X的粒子群,每個粒子代表vj的一種部署方法,定義vj有R個節(jié)點需映射,presenti=(presenti1,presenti2,…,presentiR)為粒子i的部署位置,其中i∈[1,X],presentir表示粒子i把節(jié)點r映射到底層網絡中的位置。粒子的速度更新如公式(8)所示,位置更新如公式(9)所示:
vi(n+1)=ωvi(n)+c1rand()(pbesti(n)-presenti(n))+c2rand()(gbesti(n)-presenti(n))
(8)
presenti(n+1)=presenti(n)+vi(n+1)
(9)
其中,vi(n)代表粒子i的速度,presenti(n)表示粒子所處空間,ω為慣性系數(shù),用于調節(jié)空間的搜索范圍,c1和c2表示學習參數(shù),pbesti(n)表示粒子的當期最優(yōu)值,gbesti(n)為整個粒子群的最優(yōu)值。
算法的優(yōu)化函數(shù)如公式(10)所示:
subjectto
(10)
RUSA算法流程如下。
算法2:RUSA算法
輸出: 映射結果gbest。
1:初始化:設置慣性系數(shù)ω,學習參數(shù)c1和c2,粒子數(shù)X,迭代次數(shù)N,以及安全門限γ。
2:for each particle i。
3:初始化粒子的presenti、vi、profit、pbesti。
4:end for。
5:更新粒子群當前的gbest。
6:fori=1 toN。
7:根據(jù)公式(8)更新粒子的vi。
8:根據(jù)公式(9)和(10)更新粒子的presenti。
9:更新gbest。
10:end for。
11:返回gbest。
步驟1~5為初始化階段,這個過程會初始化粒子群及其位置和速度屬性,步驟6~步驟10為第二階段,目的是根據(jù)NSI的映射安全等級和切片實例需求,結合網絡資源循環(huán)計算最優(yōu)部署結果來使編排收益最大化,并保證編排結果的安全性能高于制定安全門限γ,步驟11返回最優(yōu)部署結果。
本次試驗在Intel(R) Core(TM) i7-12700H 2.30 GHz、16.0 GB RAM的主機上進行,使用Mininet生成網絡,采用OpenFlow南向協(xié)議控制流表下發(fā),并用Matlab對結果進行分析。方案中算法涉及的參數(shù)設置如表1所示。
表1 試驗參數(shù)設置
將本文的方法(RUSA)與文獻[6]中基于SecPSO優(yōu)化的編排算法(SecPSO)及無安全控制的編排算法(SLICE)作比較。
圖2顯示了三種編排方法滿足NSI請求的需求的比例隨NSI編排數(shù)量的變化情況。當編排數(shù)量較少時,此時的網絡資源較為充足,三種方法的滿足率都是100 %。當編排數(shù)量繼續(xù)增加時,三種方法的滿足率存在著不同程度的下降,由于SLICE是一種盡最大能力滿足NSI的編排請求的方法,所以下降的程度最小。RUSA的滿足率的下降程度其次,這是由于控制了NSI進行資源共享的程度,會使得部分NSI的需求不能完全滿足,SecPSO的滿足率下降程度最高??梢钥吹絉USA在NSI編排數(shù)量為50時,滿足率相較SecPSO提高了28 %。
圖2 編排滿足率
圖3是三種編排方法的資源利用率隨NSI編排數(shù)量的變化情況,可以看到RUSA和SLICE變化趨勢基本一致,隨著NSI編排數(shù)量的增加,利用率逐漸提高,最后趨于100 %,在NSI編排數(shù)量達到40 個左右時,SecPSO限制同節(jié)點的NSI數(shù)量,利用率會受到一定影響,本文方法可以在保證資源利用率的前提下,提升切片編排的安全性能。
圖3 資源利用率
設部署NSI時的帶寬和CPU資源有固定的部署成本,并設分配給NSI流量后可以獲取一定的固定租金費,結合上文提到的收益,可以得到圖4的成本利潤率。
可以看到,在NSI的編排數(shù)量低于37 個左右時,三種編排方法的成本利潤率增長趨勢相同,原因是NSI的需求基本都可以滿足,編排數(shù)量繼續(xù)增長時,SecPSO和SLICE的增長趨勢逐漸放緩,前者略高于后者,這是由于SecPSO此時的資源利用不夠充分,而SLICE由于分配策略不能接入更多的NSI,造成了收益損失。RUSA在NSI編排數(shù)量較多時,相較其他兩種方法,可以提高6 %左右的成本利潤率。
云網融合下網絡架構需要實現(xiàn)底層資源的統(tǒng)一抽象與調度,提供云網切片的服務能力。隨著NFV和SDN技術的演進,切片編排部署的效率逐漸提高,但各切片共享網絡資源也帶來了切片管理的額外安全風險。本文提出的基于資源共享評估和用戶安全評級的切片編排算法RUSA,以最大化收益為目標,通過映射安全等級來約束NSI的編排過程,使得編排結果滿足安全性能的要求。試驗證明,本文方法可以在保證安全性能和編排收益的前提下,提升編排的滿足率、資源的利用率及編排的成本利潤率。