NFV,即電信網絡功能虛擬化,通過使用X86等通用性COTS硬件以及虛擬化技術來承載網絡功能的軟件處理,從而降低網絡昂貴的設備成本。NFV可以通過軟硬件解耦及功能抽象,使網絡設備功能不再依賴于專用硬件,資源可以充分靈活共享,實現新業務的快速開發和部署,并基于實際業務需求進行自動部署、彈性伸縮、故障隔離和自愈等。NFV架構作為ETSI最新定義的通訊網絡架構,5G新建網絡必將采用NFV架構。同時,現網的部分存量網絡做網絡架構改造,比如4G網絡的CU面分離部署時,通常也會采用NFV架構。
然而技術的發展如同歷史的發展一樣,總是螺旋式上升的。NFV剛從專業硬件向通用硬件發展,面向5G網絡應用及4G網絡的CU面分離應用時,卻發現以X86服務器為主的COTS硬件并不能滿足5G及4G C U分離的網絡性能要求。這主要有兩個原因:
一是通用X86 CPU保證通用性,而喪失了專用性,即不擅長特定任務處理。比如處理編解碼轉換、報文轉發、加解密等并行處理任務。
二是X86通用處理器性能再無法按照摩爾定律進行增長,而電信業務特性對計算性能要求,超過了按“摩爾定律”增長的速度。
以5G網絡而言,為滿足5G網絡的大帶寬和低時延特性,5G RAN、5G CORE都有非常大的性能提升需求,只靠X86處理器性能難以滿足; 位于邊緣DC的MEC,受制于機房空間、散熱、成本等因素限制,使用純X86處理器難以滿足高性能計算的要求。
以4G CU分離而言,用戶面面對報文的轉發吞吐量及時延有很高的要求,而通用的X86處理器在報文轉發方面并不專業。
在4G CU分離及5G網絡應用場景中,因為NFV所采用的通用硬件在特定任務處理上的性能或成本方面具有缺陷性,從而讓X86處理器配備FGPA、GPU等協處理器(加速卡)的方案重新出現在NFV的架構中。電信網絡也經歷了從專用硬件到通用COTS硬件再到通用COTS硬件+專用加速卡硬件的螺旋式發展歷程。最新的ETSI NFV架構也將硬件加速引入到NFV架構之中。
在新的VNF架構中,對NFVI進行了增強,增加了加速資源虛擬化能力:將加速器進行抽象,以邏輯加速資源的方式呈現,統一提供全面的加速服務。虛擬化層提供統一的接口,適配不同形態的加速設備形態,如加速器等。
NFV應用中的硬件加速方案現狀
硬件加速方案現狀主要是兩部分:標準及開源組織的硬件加速研究現狀和硬件加速方案的應用現狀。
首先說標準及開源組織的硬件加速研究現狀,這里介紹兩個主要的研究(或者開源)組織——ETSI、OpenStack對硬件加速的研究現狀。
ETSI,它除了在NFV架構中定了硬件加速模塊功能外,也定義了硬件加速的兩種實現方案——pass-through方案以及抽象模型方案。
Pass-through 方案,即PCI/PCIe-pass-through,它將PCI插槽上的硬件加速卡直接pass through給某個特定的虛擬機使用。Pass-through方案是目前最通用的方案。其缺點是硬件被虛機獨占,上層應用或者虛機需要自我維護不同加速卡的硬件驅動等。
抽象模型方案:在NFVI中,也就是hypervisor中維護“Backend/HW Driver”模塊;在VNF層,在VNFC中維護“Generic Driver”模塊。NFVI負責加速卡的掃描和驅動加載,加速卡硬件虛擬化管理,并將虛擬加速卡掛載給虛擬機上。其優點是一個加速卡資源可以被多個虛機使用,加速資源可以被加載或者釋放。并且VM針對各種加速卡,只使用一個通用的加速卡驅動程序,虛機維護很簡單。
在ETSI定義硬件加速框架及實現方案的同時,開源社區OpenStack也啟動了Cyborg項目,它的主要目標是管理各種加速器的安裝驅動程序、依賴關系、安裝和卸載。它能夠將加速器和nova創建的虛機實例建立連接,旨在提供通用的硬件加速管理框架。OpenStack主要面向基礎設施中對加速硬件的驅動集成和VIM對加速硬件的感知,不涉及上層MANO。目前Cyborg項目仍然是一個框架,還沒有有效代碼。中興通訊積極參與OpenStack Cyborg社區工作,主要致力于開發Cyborg Driver用于支持未來用于5G、邊緣等高可靠低時延場景的高精度時鐘同步卡。同時,作為Cyborg子團隊sub-team lead,積極參與Cyborg文檔團隊相關工作。
從上述標準及開源社區對加速方案的介紹可以看出,目前硬件加速方案,尤其是硬件加速抽象方案尚不成熟。同時加速硬件的使用涉及加速卡廠家、云平臺廠家和網元廠家的配合與聯動。這需要針對相應的加速卡產品,在云平臺層集成驅動并虛擬化、提供相應的加速庫或SDK,網元層進行調用。
而硬件加速方案在NFV中的應用現狀,就可以總結如下:
1、使用方式簡單。當前主要使用方式為VM直通使用相應加速硬件,硬件加速卡無法彈性或多VM之間進行共享使用,導致資源利用率不均衡;
2、通用加速硬件和接口無規范。每個硬件廠家的加速芯片都是特定的加速驅動,云平臺廠家提供的SDK差異較大,網元層需要進行適配和定制開發,規范化程度低;
3、需要對MANO進行擴展。硬件加速的使用可以分為感知、分配、調度、釋放等四個階段。感知需要云平臺對硬件類型進行識別、分配需要VNFM和NFVO支持網元對加速硬件資源請求的解析、調度需要云平臺進行加速資源的監控和部署、釋放則需要云平臺對加速硬件資源進行重新編程。這些都需要對MANO進行擴展。
中興通訊NFV硬件加速方案
中興通訊作為全球領先的綜合通信解決方案提供商,在5G領域處于行業領先地位。硬件加速是5G網絡中提升網絡性能的重要方案,中興通訊積極參與ETSI及OpenStack的硬件加速標準及方案,同時已經推出了自己的硬件加速方案。
中興硬件加速方案具有如下優勢:
計算節點是加速卡虛擬化管理的最重要節點,它提供以下能力:
·通過FPGA或者GPU驅動,發現硬件加速板卡,記錄本機硬件加速能力(集),并將驅動集成如通用驅動之列,上報能力到VIM;
·生成具有特定加速能力的虛機,加載對應加速硬件,并提供提供通用虛機前端驅動;
VIM節點主要管理計算節點的加速能力,上報加速能力到NFVM/NFVO或者其他應用編排器如HEAT及完成具有加速能力的虛機的部署。
中興硬件加速方案目前已經支持基于FPGA的GTP業務加速,基于GPU的視頻音頻業務加速及QAT加解密加速。中興通訊將攜手行業伙伴,以先進技術助力網絡轉型,全面提升5G網絡能力。