毛永琦+崔文博
摘要:SDN/FV已成為運(yùn)營(yíng)商推動(dòng)網(wǎng)絡(luò)架構(gòu)向軟件化、集約化、智能化和開放化演進(jìn)的關(guān)鍵技術(shù),本文對(duì)NFV實(shí)現(xiàn)的關(guān)鍵技術(shù)進(jìn)行了較為詳細(xì)的研究,并對(duì)運(yùn)營(yíng)商部署NFV需要注意的問題進(jìn)行了淺析。
1 NFV虛擬化云操作系統(tǒng)1NFV架J簡(jiǎn)介
NFV: 網(wǎng)絡(luò)功能虛擬化(NetworkFunction Virtualization),通過使用X86等通用硬件以及虛擬化技術(shù),來承載不同功能、業(yè)務(wù)的軟件處理,從而降低網(wǎng)絡(luò)的資本性支出和運(yùn)營(yíng)成本。NFV將軟硬件解耦并將功能抽象,使通信設(shè)備功能不再依賴于專用硬件,資源可以充分靈活共享、調(diào)度,從而實(shí)現(xiàn)新業(yè)務(wù)的快速開發(fā)和部署,并基于實(shí)際客戶需求進(jìn)行業(yè)務(wù)自動(dòng)組合、彈性變更、故障隔離和應(yīng)用自愈等。
NFV主要包括三部分架構(gòu):NFVI、VNF. MANO。
(1) NFVI (NFV Infrastructure)包含物理硬件和虛擬硬以及虛擬化層(hypervisor,如vSwitch、KVM、XEN等)。
(2) VNF指的是具體的虛擬網(wǎng)絡(luò)功能,可以提供的網(wǎng)絡(luò)服務(wù),是軟件,可以理解手機(jī)的APP。
(3) MANO (Management andOrchestration),指的是NFV的管理和編排,由NFVO (NFVOrchestrator)、VNFM (VNFManager)以及VIM (Virtualised infrastructuremanager)三部分共同組成。
2 NFV關(guān)鍵技術(shù)
2.1 虛擬化
目前可以采用的虛擬架構(gòu)包括KVM、XEN、VMware,其中,KVM和XEN均為開源軟件,而VMware則是收費(fèi)軟件。目前各CT場(chǎng)景主要采用KVM或者XEN作為虛擬化軟件,而國(guó)外運(yùn)營(yíng)商,根據(jù)IT業(yè)務(wù)發(fā)展經(jīng)驗(yàn),部分運(yùn)營(yíng)商在NFV架構(gòu)中仍然選購(gòu)VMware軟件。本文根據(jù)國(guó)內(nèi)實(shí)際情況只比較KVM、XEN。
虛擬化技術(shù)可以分為完全虛擬化(Full Virtualization)和半虛擬化技術(shù)(paravirtualization)。KVM采用完全虛擬化技術(shù),XEN采用半虛擬化技術(shù)。如圖1所示。
完全虛擬化是指虛擬化軟件-Hypervisor位于虛擬機(jī)和硬件之問。Hypervisor也叫虛擬機(jī)管理程序(VMM)。KVM的hypervisor直接運(yùn)行在物理硬件之上。KVM集成到Linux內(nèi)核,是X86架構(gòu)且硬件支持虛擬化技術(shù)(IntelVT或AMD-V)的Linux的全虛擬化解決方案。它是Linux的一個(gè)模塊,利用Linux完成任務(wù)調(diào)度、內(nèi)存管理與硬件設(shè)備交互等。準(zhǔn)確來說,KVM是Linuxkemel的一個(gè)模塊。如圖2所示。
KVM架構(gòu)可以分解為兩部分KVM驅(qū)動(dòng),即linux kemel的一個(gè)模塊:Qemu,即用于模擬虛擬機(jī)的用戶空問組件.提供I/O設(shè)備模型,訪問外設(shè)的途徑。
XEN是在全虛擬化的基礎(chǔ)上,修改了Guest OS,通過增加專用API,使Guest OS集成了虛擬化功能,XEN無需重新編譯或引起陷阱,因?yàn)椴僮飨到y(tǒng)自身能夠與虛擬進(jìn)程進(jìn)行很好的協(xié)作。
KVM與XEN優(yōu)缺點(diǎn),如表1所示。
2.2 云操作系統(tǒng)
OpenStack是一個(gè)開源的云計(jì)算管理平臺(tái)項(xiàng)目,由幾個(gè)主要的組件組合起來完成具體工作。OpenStack支持幾乎所有類型的云環(huán)境,項(xiàng)目目標(biāo)是提供實(shí)施簡(jiǎn)單、可大規(guī)模擴(kuò)展、豐富、標(biāo)準(zhǔn)統(tǒng)一的云計(jì)算管理平臺(tái)。OpenStack通過各種互補(bǔ)的服務(wù)提供了基礎(chǔ)設(shè)施即服務(wù)的解決方案,每個(gè)服務(wù)提供API以進(jìn)行集成。如圖3所示。
NFV對(duì)Openstack的大量訴求中關(guān)系到對(duì)Nova的資源管理及調(diào)度的需求,包括NUMA親和性、IO-NUMA親和性,大頁而、反親和性等。如圖4所示。
3 運(yùn)營(yíng)商部署NFV需要考慮的問題
3.1 NFVI
目前主要是Hypervisor,Hypervisor自主研發(fā)的好處是未來可以全網(wǎng)統(tǒng)一使用Hypervisor,有利于統(tǒng)一資源調(diào)度。目前大部分廠商都是基于開源KVM進(jìn)行商業(yè)化定制和優(yōu)化,特別是針對(duì)NFV轉(zhuǎn)發(fā)性能要求高的特點(diǎn),各個(gè)廠商都做了針對(duì)性的技術(shù)優(yōu)化,所以目前基本沒有人提Hypervisor的自主研發(fā)設(shè)想。各個(gè)廠商的Hypervisor與各自的VIM是捆綁的,形成各自的“小王國(guó)”,暫無法實(shí)現(xiàn)不同廠商Hypervisor的互通。
3.2 VNFs
各類網(wǎng)元原來都是軟硬件一體化的,運(yùn)營(yíng)商對(duì)網(wǎng)元的內(nèi)部實(shí)現(xiàn)機(jī)制并不熟悉,需要有人真正去探究網(wǎng)元設(shè)備的大型軟件系統(tǒng)該如何實(shí)現(xiàn),因?yàn)閂NFs是未來運(yùn)營(yíng)商必然要去逐步攻克的,否則實(shí)現(xiàn)軟件化只是表而的工夫,這部分需要運(yùn)營(yíng)商逐步去積累和投入,重點(diǎn)是實(shí)現(xiàn)VNF的分布式部署,微服務(wù)化,為將來實(shí)現(xiàn)真正的基于容器的部署打下基礎(chǔ)。
3.3 MANO
如前所述,MANO是由NFVO、VNFM和VIM組成的,VNFM與VNF是強(qiáng)相關(guān)的(存在部分通用VNFM)、VIM與hypervisor也是強(qiáng)相關(guān)的,這兩部分運(yùn)營(yíng)商目前暫未能自主研發(fā),所以只能選擇與運(yùn)營(yíng)商oss關(guān)系緊密的NFVO入手自主研發(fā),但即使是NFVO,近期來看,也還無法直接應(yīng)用自主研發(fā)成果,需要經(jīng)過現(xiàn)網(wǎng)的考驗(yàn)和不斷迭代完善,初期很可能還是采用商業(yè)化NFVO方案?,F(xiàn)階段NFV關(guān)注的重點(diǎn)應(yīng)該是NFVO(虛擬網(wǎng)絡(luò)編排器),因?yàn)榫幣牌髟谖磥砭W(wǎng)絡(luò)中的關(guān)鍵地位已經(jīng)形成共識(shí),所以SDN,NFV架構(gòu)中負(fù)責(zé)業(yè)務(wù)組織、編排、資源調(diào)度的編排器成為運(yùn)營(yíng)商必須自主掌控的核心能力。endprint