蔡衛(wèi)紅,郭旭靜,李聰
湖南郵電職業(yè)技術(shù)學(xué)院信息通信學(xué)院,湖南 長(zhǎng)沙 410015
5G 移動(dòng)系統(tǒng)通過將一個(gè)物理網(wǎng)絡(luò)分割成多個(gè)邏輯虛擬網(wǎng)絡(luò),來滿足各種5G 業(yè)務(wù)QoS(Quality of Service,服務(wù)質(zhì)量)的需求。歐洲電信標(biāo)準(zhǔn)化協(xié)會(huì)(ETSI)定義的NFV(Network Function Virtualization,網(wǎng)絡(luò)功能虛擬化)開放網(wǎng)絡(luò)架構(gòu)將5G 網(wǎng)絡(luò)功能與底層硬件解耦,實(shí)現(xiàn)資源管理的靈活彈性、資源靈活共享、新業(yè)務(wù)快速開發(fā)和部署,使5G 網(wǎng)絡(luò)能以更低成本和更高靈活性滿足各種業(yè)務(wù)需求。我們通過仿真支持三種不同類型帶寬要求eMBB(Enhanced Mobile Broadband,增強(qiáng)型移動(dòng)寬帶)應(yīng)用場(chǎng)景服務(wù)的多切片架構(gòu)、單切片架構(gòu)設(shè)計(jì),比較其在吞吐量、響應(yīng)時(shí)間和CPU 利用率方面的差異。
5G 核心網(wǎng)使用開源軟件,將用戶平面和控制平面功能分離,各平面獨(dú)立部署和演進(jìn),其提供的5G NFs(Network Functions,網(wǎng)絡(luò)功能)包括:網(wǎng)絡(luò)切片選擇功能、認(rèn)證服務(wù)器功能、網(wǎng)絡(luò)存儲(chǔ)庫功能、接入和移動(dòng)管理功能、統(tǒng)一數(shù)據(jù)管理功能、會(huì)話管理功能、策略控制功能、應(yīng)用功能、網(wǎng)絡(luò)開放功能、統(tǒng)一數(shù)據(jù)存儲(chǔ)庫功能、用戶面功能等,從而實(shí)現(xiàn)NFV 環(huán)境下網(wǎng)絡(luò)功能的靈活高效部署。
NFV 是5G 移動(dòng)系統(tǒng)實(shí)現(xiàn)網(wǎng)絡(luò)切片的關(guān)鍵技術(shù),消除了對(duì)專有硬件的要求,為eMBB、uRLLC(ultra Reliable Low Latency Communication,超可靠低延遲通信)、mMTC(massive Machine Type of Communication,海量機(jī)器類通信)三類特定場(chǎng)景的QoS 需求量身定制。借助NFV,可將NFs 作為VNFs(Virtual Network Functions,虛擬網(wǎng)絡(luò)功能)部署到云計(jì)算基礎(chǔ)架構(gòu)上。
1.2.1 NFV-MANO 體系結(jié)構(gòu)
NFV-MANO(Management and Orchestration,管理編排)負(fù)責(zé)配置、部署、管理和擴(kuò)展網(wǎng)絡(luò)切片,包括三個(gè)主要部分:NFVO(NFV Orchestrator,NFV 編排器)、VNFM(VNF Manager,VNF 管理器)和VIM(Virtualized Infrastructure Manager,虛擬化基礎(chǔ)設(shè)施管理器)。另外還有幾個(gè)補(bǔ)充組件:NS(Network Service,網(wǎng)絡(luò)服務(wù))目錄、VNF(Virtualized Network Function,虛擬網(wǎng)絡(luò)功能)目錄、NFVI(NFV Infrastructure,網(wǎng)絡(luò)功能虛擬化基礎(chǔ)設(shè)施)資源庫和NFV 實(shí)例庫[1]。
NFV-MANO 體系各組件功能分別為:(1)NFVO:NS 生命周期管理模塊,負(fù)責(zé)對(duì)NFV資源(含VNFs 和NFVI)的編排和NSs 的管理;(2)VNFM:VNF 管理模塊,負(fù)責(zé)VNF 實(shí)例的生命周期管理、控制和監(jiān)視,一般與VNF 一一對(duì)應(yīng);(3)VIM:NFVI 管理模塊,負(fù)責(zé)管理NFVI,包括計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)資源;(4)NS 目錄:表示網(wǎng)絡(luò)服務(wù)的存儲(chǔ)庫,支持通過NFVO 公開的接口操作創(chuàng)建和管理NS 部署模板,包括NSD(Network Service Descriptor,網(wǎng)絡(luò)服務(wù)描述符)、VLD(Visual Link Descriptor,虛擬鏈路描述符)、VNFFGD(VNF Forwarding Graph Descriptor,網(wǎng)絡(luò)功能虛擬化轉(zhuǎn)發(fā)圖描述符);(5)VNF 目錄:表示所有已加載VNF 包的存儲(chǔ)庫,支持通過NFVO 公開的接口操作創(chuàng)建和管理VNF 包;(6)NFVI 資源庫:保存了關(guān)于可用的、保留的和已分配的NFVI 資源的信息,并被NFVO 用于編排和管理VIM 抽象的資源;(7)NFV 實(shí)例庫:保存所有VNF 實(shí)例和網(wǎng)絡(luò)服務(wù)實(shí)例信息。
1.2.2 3GPP 網(wǎng)絡(luò)切片和NFV 網(wǎng)絡(luò)服務(wù)
根據(jù)3GPP,網(wǎng)絡(luò)切片是一種端到端的網(wǎng)絡(luò)架構(gòu),它由多個(gè)網(wǎng)絡(luò)切片子網(wǎng)組成[2]。每個(gè)網(wǎng)絡(luò)切片子網(wǎng)包含一個(gè)或多個(gè)網(wǎng)絡(luò)功能,還可包含其他網(wǎng)絡(luò)切片子網(wǎng)。每個(gè)網(wǎng)絡(luò)切片子網(wǎng)可為端到端網(wǎng)絡(luò)中的一個(gè)組成網(wǎng)段,如接入網(wǎng)、核心網(wǎng)和傳輸網(wǎng)[3-4]。對(duì)NSI(Network Slice Instance,網(wǎng)絡(luò)切片實(shí)例)包含至少一個(gè)VNF 的情況,可將NFV NS 視為網(wǎng)絡(luò)切片以資源為中心的視圖[5]。根據(jù)3GPP,一個(gè)NSSI(Network Slice Subnet Instance,網(wǎng)絡(luò)切片子網(wǎng)實(shí)例)可被多個(gè)NSIs 共享[6]。NFV-MANO 作為網(wǎng)絡(luò)切片關(guān)鍵使能技術(shù),將每個(gè)網(wǎng)絡(luò)切片(或網(wǎng)絡(luò)切片子網(wǎng))映射到一個(gè)NS。因此,要實(shí)例化一個(gè)網(wǎng)絡(luò)切片子網(wǎng),通常需要使用NSD 來描述NFVMANO。
1.2.3 網(wǎng)絡(luò)服務(wù)描述符
NSD(Network Service Descriptor,網(wǎng)絡(luò)服務(wù)描述符)是NS 的部署模板,其NS 部署模板還包含所有NS 組件的描述符,如VNFDs(Virtualized Network Function Descriptors,虛擬化網(wǎng)絡(luò)功能模塊描述符)、VLDs、VNFFGDs。NFV-MANO 使用這些描述符來實(shí)現(xiàn)網(wǎng)絡(luò)服務(wù)的動(dòng)態(tài)組合,部署專用網(wǎng)絡(luò)服務(wù),并管理網(wǎng)絡(luò)切片的服務(wù)質(zhì)量[7]。
(1)OpenStack:是云計(jì)算管理工具,通過命令或基于Web 可視化控制面板來管理IaaS云 端 的 資 源 池;(2)Tacker:是OpenStack 下的一個(gè)內(nèi)孵化模塊,提供VNF 管理功能,管理VNF 生命周期,配置、監(jiān)視、重啟和擴(kuò)展VNF;(3)Kubernetes:是一個(gè)開源管理云平臺(tái)中多主機(jī)上容器化的應(yīng)用,通過抽象底層的計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)基礎(chǔ)設(shè)施,使部署容器化的應(yīng)用變得簡(jiǎn)單且高效;(4)CNI:是云原生計(jì)算基金會(huì)推出的容器插件(模塊化)網(wǎng)絡(luò)接口的解決方案,定義了編寫插件在Linux 容器中配置網(wǎng)絡(luò)接口的規(guī)范,以實(shí)現(xiàn)互操作性。
5G 核心網(wǎng)切片系統(tǒng)設(shè)計(jì)使用OpenStack 作為VIM,使用Tacker 同時(shí)作為NFVO 及VNFM,使用free5GC 提供所需的5GC NFs,以此建立一個(gè)支持5G 核心網(wǎng)切片的NFV-MANO 測(cè)試平臺(tái)。我們?cè)O(shè)計(jì)使用相同環(huán)境支持NFV 的兩種5G 核心網(wǎng)架構(gòu):多切片架構(gòu)、單切片架構(gòu)。
對(duì)多切片核心網(wǎng)架構(gòu),設(shè)計(jì)3 個(gè)網(wǎng)絡(luò)切片來支持3 種不同帶寬需求的eMBB 業(yè)務(wù);對(duì)單切片網(wǎng)絡(luò)架構(gòu),設(shè)計(jì)1 個(gè)網(wǎng)絡(luò)切片來滿足3 種不同帶寬需求的eMBB 業(yè)務(wù)。以上兩種核心網(wǎng)切片架構(gòu),雖然每個(gè)切片都實(shí)現(xiàn)一個(gè)獨(dú)立5G 核心網(wǎng)絡(luò)功能,但對(duì)前者來說,3 個(gè)切片分別連到其對(duì)應(yīng)的數(shù)據(jù)服務(wù)器,而后者唯一的切片同時(shí)連到3 個(gè)數(shù)據(jù)服務(wù)器。
假設(shè)兩種5G 核心網(wǎng)架構(gòu)都用9 個(gè)VNF 來部署。其中CP(Control Plane,控制面)有8 個(gè):NRF(Network Repository Function,網(wǎng) 絡(luò) 倉 儲(chǔ) 功能)、AMF(Access and Mobility Management Function,接入和移動(dòng)性管理功能)、SMF(Session Management Function,會(huì) 話 管 理 功 能)、UDR(Unified Data Repository,統(tǒng)一數(shù)據(jù)倉庫存儲(chǔ))、PCF(Policy Control Function,策略控制功能)、UDM(Unified Data Management,統(tǒng)一數(shù)據(jù)管理)、AUSF(Authentication Server Function,認(rèn)證服務(wù)器功能)、MongoDB。UP(User Plane,用戶面)有1個(gè):UPF(User Plane Function,用戶面功能)。多切片架構(gòu)的每個(gè)切片都有一個(gè)單獨(dú)CP 來提供信令交換,每個(gè)切片都有一個(gè)單獨(dú)UP 以實(shí)現(xiàn)并行處理數(shù)據(jù)包轉(zhuǎn)發(fā)。
假設(shè)每個(gè)5G 核心網(wǎng)VNF 都在單獨(dú)的OpenStack虛擬機(jī)或Kubernetes 容器上運(yùn)行。兩種架構(gòu)都采用3 種數(shù)據(jù)產(chǎn)生器來模擬5G UE 發(fā)送數(shù)據(jù)包,每個(gè)數(shù)據(jù)產(chǎn)生器模擬多個(gè)終端運(yùn)行,并使終端注冊(cè)到5G 核心網(wǎng),3 種數(shù)據(jù)產(chǎn)生器分別用于模擬高(900 Mbps)、中(100 Mbps)、低(10 Mbps)3 種eMBB 數(shù)據(jù)傳輸服務(wù)。高、中、低3 種數(shù)據(jù)產(chǎn)生器均傳輸兩類數(shù)據(jù)包:不同數(shù)據(jù)速率(如900 Mbps、100 Mbps 和10 Mbps)UDP 數(shù)據(jù)包;每秒一次的ICMP 回復(fù)數(shù)據(jù)包。通過UDP 數(shù)據(jù)包速率,可測(cè)量5G 核心網(wǎng)切片的吞吐量,通過ICMP 回復(fù)數(shù)據(jù)包可測(cè)得UE 和DS 數(shù)據(jù)服務(wù)器在5G 核心網(wǎng)切片上的響應(yīng)時(shí)間。對(duì)多切片網(wǎng)絡(luò)架構(gòu),3 種不同數(shù)據(jù)速率數(shù)據(jù)包被定向到帶寬最匹配的網(wǎng)絡(luò)切片上。對(duì)單切片網(wǎng)絡(luò)架構(gòu),3 種不同數(shù)據(jù)速率數(shù)據(jù)包被發(fā)到唯一網(wǎng)絡(luò)切片,該切片提供了足夠帶寬來處理所有的數(shù)據(jù)流量。以上兩種核心網(wǎng)切片架構(gòu)都使用3 個(gè)數(shù)據(jù)服務(wù)器作為5G PDU 會(huì)話接收器,接收來自3個(gè)數(shù)據(jù)產(chǎn)生器的數(shù)據(jù)包,并測(cè)量其切片吞吐量。此外,數(shù)據(jù)服務(wù)器還將ICMP 回復(fù)消息發(fā)回?cái)?shù)據(jù)產(chǎn)生器,以計(jì)算響應(yīng)時(shí)間。
在通過Tacker NFVO 基于VM(Virtual Machine,虛擬機(jī))環(huán)境部署5G 核心網(wǎng)切片前,NSs 和VNFs都需在基于云應(yīng)用TOSCA 標(biāo)準(zhǔn)用YAML 編寫的NSDs 和VNFDs 中來進(jìn)行描述。在Tacker 中,VNF的行為和部署信息在VNFD 中定義。VNFD 由以下部分組成:VDU(Virtualization Deployment Unit,虛擬部署單元)、CPD(Connection Point Descriptor,連接點(diǎn)描述符)、VLD、FIP(Floating IP Address,動(dòng)態(tài)IP地址)。在當(dāng)前的Tacker 實(shí)現(xiàn)中,VNF 包括VDU、CPt(Connection Point,連接點(diǎn))和VL(Virtual Link,虛擬鏈路)。每個(gè)VDU 都需通過CPt 連到VL,每個(gè)CPt 都必須與VDU 綁定。VL 為VDUs 間的通信提供連接。當(dāng)VDU 需訪問公網(wǎng)時(shí),可為其分配動(dòng)態(tài)IP 地址。一個(gè)VNFD 用于部署5G 核心網(wǎng)的一個(gè)VNF,且每個(gè)VNF 只有一個(gè)VDU,故VNF、VDU和一個(gè)5G 核心網(wǎng)NF 在邏輯上是等價(jià)的,同一個(gè)5G 核心網(wǎng)切片的VDUs 通過它們的CPts 連接到同一個(gè)VL。
網(wǎng)絡(luò)切片使用NSD 部署。根據(jù)ETSI NFVMANO,NSD 包括:VNFD、VNFFGD、VLD 和PNFD(Physical Network Function Descriptor,物理網(wǎng)絡(luò)功能描述符)。我們的VL 處于NS 級(jí)別,不同于VNF 級(jí)別的VL,VNFFGD 通常用于定義VNFs的連接拓?fù)浣Y(jié)構(gòu),以創(chuàng)建業(yè)務(wù)功能鏈。根據(jù)VNFD中的部署信息,5G 核心網(wǎng)的每個(gè)組件都將作為VNF 部署,然后使用NSD 導(dǎo)入5G 核心網(wǎng)NFs 的9 個(gè)VNFDs,以創(chuàng)建一個(gè)5G 核心網(wǎng)切片。
切片系統(tǒng)工作流程如圖1 所示。
圖1 基于OpenStack 的NFV-MANO 體系結(jié)構(gòu)系統(tǒng)切片工作流程
2.3.1 準(zhǔn)備
將NS 實(shí)例化到一個(gè)目標(biāo)VIM。使用Tacker前先進(jìn)行VIM 注冊(cè),NFVO 使用身份驗(yàn)證URL、用戶名、密碼、證書、令牌等賬戶信息,通過存在點(diǎn)(POP)將OpenStack 注冊(cè)為VIM。
2.3.2 加載
VIM 注冊(cè)成功后,先前設(shè)計(jì)的VNFDs/NSDs在NS 實(shí)例化前提交給NFVO,此過程即“加載”。NFVO 驗(yàn)證加載的VNFDs 及NSDs 的完整性和安全性,一旦核實(shí),NFVO 將把NSDs 和VNFDs 分別插入NS 目錄和VNF 目錄中。
2.3.3 實(shí)例化
提供加載網(wǎng)絡(luò)切片ID,通過NFVO 請(qǐng)求實(shí)例化5G 網(wǎng)絡(luò)切片。NFVO 收到請(qǐng)求后,會(huì)請(qǐng)求VIM檢查VNF 實(shí)例化和互連所需的網(wǎng)絡(luò)資源的可用性,并預(yù)留這些資源。一旦VIM 確認(rèn)資源預(yù)留完成,NFVO 將請(qǐng)求VNFM 通過將相應(yīng)VNFD 轉(zhuǎn)換為用于VIM 執(zhí)行部署操作的Heat 模板來實(shí)例化NS 中的每個(gè)VNF,完成后,NFVO 將確認(rèn)網(wǎng)絡(luò)切片實(shí)例化完成。
2.3.4 QoS 策略設(shè)置
通過VIM 設(shè)置每個(gè)網(wǎng)絡(luò)切片的QoS 策略。QoS策略定義了帶寬、時(shí)延、可靠性等網(wǎng)絡(luò)切片服務(wù)要求。設(shè)計(jì)中所提的多切片架構(gòu)由3 個(gè)對(duì)帶寬有不同QoS 要求的切片組成。而單切片架構(gòu)僅使用1 個(gè)QoS要求切片,該切片支持3 個(gè)子切片提供的帶寬總和。
2.3.5 測(cè)試
多切片/單切片系統(tǒng)就緒后,數(shù)據(jù)產(chǎn)生器開始通過網(wǎng)絡(luò)切片發(fā)送UDP 和ICMP 數(shù)據(jù)包到數(shù)據(jù)服務(wù)器。數(shù)據(jù)服務(wù)器通過接收到的數(shù)據(jù)包來計(jì)算出吞吐量,同時(shí)通過Linux 信令監(jiān)視服務(wù)器。監(jiān)視CPU在收到ICMP 包后,發(fā)確認(rèn)Echo 應(yīng)答消息,數(shù)據(jù)產(chǎn)生器收到Echo 應(yīng)答消息后計(jì)算出響應(yīng)時(shí)間。
使用3 個(gè)相同服務(wù)器來進(jìn)行仿真,其配置見表1。一種OpenStack 用于測(cè)試多切片網(wǎng)絡(luò)架構(gòu),另一種OpenStack 用于測(cè)試單切片網(wǎng)絡(luò)架構(gòu)。兩種架構(gòu)配置如表2 和表3 所示。3 個(gè)數(shù)據(jù)產(chǎn)生器和3 個(gè)數(shù)據(jù)服務(wù)器的配置是1 個(gè)vCPU、16 GB RAM 和20 GB 磁盤,每個(gè)都配備Ubuntu 18.04。數(shù)據(jù)產(chǎn)生器和數(shù)據(jù)服務(wù)器部署為OpenStack VNF,且與5G 核心網(wǎng)環(huán)境分離。
表1 實(shí)施環(huán)境配置
表2 單切片網(wǎng)絡(luò)架構(gòu)配置
表3 多切片網(wǎng)絡(luò)架構(gòu)配置
如表2 所示,單切片架構(gòu)只有1 個(gè)切片,其切片虛擬資源相當(dāng)于多切片架構(gòu)中3 個(gè)切片之和。如表3 所示,多切片架構(gòu)的每個(gè)切片上設(shè)置了9 個(gè)5G 核心網(wǎng)NFs 作為VNFs,每個(gè)VNF 都運(yùn)行在OpenStack 虛擬機(jī)上。OpenStack 上總共部署有27 個(gè)虛擬機(jī),3 個(gè)切片配置相同CP NF,但3 個(gè)UPF 根據(jù)其QoS 要求配置不同帶寬,以支持5G eMBB 業(yè)務(wù)的高、中、低三種服務(wù)帶寬,故每個(gè)UPF 配置不同大小的RAM 來處理相應(yīng)流量。
通過仿真來比較多切片、單切片網(wǎng)絡(luò)架構(gòu)在吞吐量、響應(yīng)時(shí)間、CPU 利用率三方面性能的差異。結(jié)果表明:多切片網(wǎng)絡(luò)架構(gòu)在吞吐量、響應(yīng)時(shí)間方面表現(xiàn)較好,而單切片網(wǎng)絡(luò)架構(gòu)在CPU 利用率方面表現(xiàn)較好。多切片網(wǎng)絡(luò)架構(gòu)的數(shù)據(jù)產(chǎn)生器分別通過切片1、2、3 向各自數(shù)據(jù)服務(wù)器發(fā)送900 Mbps、100 Mbps、10 Mbps 的UDP 報(bào)文。單切片網(wǎng)絡(luò)架構(gòu)的3 個(gè)數(shù)據(jù)產(chǎn)生器將其UDP 報(bào)文通過相同切片發(fā)送到對(duì)應(yīng)數(shù)據(jù)服務(wù)器。兩種架構(gòu)中的每個(gè)數(shù)據(jù)產(chǎn)生器同時(shí)向相應(yīng)數(shù)據(jù)服務(wù)器發(fā)送UDP報(bào)文和ICMP Echo 請(qǐng)求報(bào)文,并接收數(shù)據(jù)服務(wù)器返回的ICMP Echo 應(yīng)答報(bào)文,來計(jì)算響應(yīng)時(shí)間。數(shù)據(jù)服務(wù)器通過接收到的數(shù)據(jù)包統(tǒng)計(jì)各切片吞吐量,同時(shí)收集整個(gè)物理服務(wù)器在實(shí)驗(yàn)時(shí)的CPU 利用率。仿真持續(xù)10 min,測(cè)試取3 個(gè)數(shù)據(jù)服務(wù)器和3 個(gè)數(shù)據(jù)產(chǎn)生器記錄的吞吐量平均值、響應(yīng)時(shí)間平均值和CPU 利用率平均值。
圖2 為兩種架構(gòu)設(shè)計(jì)平均吞吐量的仿真結(jié)果。多切片網(wǎng)絡(luò)架構(gòu)具有較好的數(shù)據(jù)吞吐性能,其平均吞吐量大約比單切片網(wǎng)絡(luò)架構(gòu)高100 Mbps。
圖2 平均吞吐量
圖3 為以微秒(μs)為單位的兩種架構(gòu)設(shè)計(jì)平均響應(yīng)時(shí)間結(jié)果。結(jié)果表明,多切片網(wǎng)絡(luò)架構(gòu)具有較好的平均響應(yīng)性能,其平均響應(yīng)時(shí)間大約為單切片網(wǎng)絡(luò)架構(gòu)的1/8。
圖3 平均響應(yīng)時(shí)間
圖4 以百分比(%)顯示了兩種架構(gòu)設(shè)計(jì)平均CPU 利用率的對(duì)比情況。結(jié)果表明,多切片網(wǎng)絡(luò)架構(gòu)具有較高CPU 利用率,與單切片網(wǎng)絡(luò)架構(gòu)相比,平均CPU 利用率增加了約20 個(gè)百分點(diǎn)。
圖4 平均CPU 利用率
仿真結(jié)果表明,在虛擬資源和物理資源配置相同的情況下,我們提出的多切片架構(gòu)需占用更多CPU 資源,但其吞吐量和響應(yīng)時(shí)間優(yōu)于單切片網(wǎng)絡(luò)架構(gòu),因?yàn)槎嗲衅軜?gòu)需同時(shí)使用3 個(gè)UPF 來并行處理數(shù)據(jù)流量,故有更高的CPU 利用率,但具有更高吞吐量和更短響應(yīng)時(shí)間。
綜上所述,利用NCTU free5GC、Tacker、OpenStack 和Kubernetes,可 研 究NFV 環(huán)境 不同5G 核心網(wǎng)切片架構(gòu)設(shè)計(jì)對(duì)核心網(wǎng)性能的影響,仿真對(duì)比多切片架構(gòu)與單切片架構(gòu)在吞吐量、響應(yīng)時(shí)間和CPU 利用率方面的差異。通過實(shí)驗(yàn)仿真,我們驗(yàn)證了多切片架構(gòu)可提高5G 核心網(wǎng)吞吐量和縮短響應(yīng)時(shí)間,但其比單切片架構(gòu)占用更多CPU 資源。
長(zhǎng)沙大學(xué)學(xué)報(bào)2023年2期