◆李蘭蘭
(南京航空航天大學(xué)金城學(xué)院 江蘇 211156)
網(wǎng)絡(luò)功能虛擬化技術(shù)的發(fā)展與挑戰(zhàn)
◆李蘭蘭
(南京航空航天大學(xué)金城學(xué)院 江蘇 211156)
本文首先引入網(wǎng)絡(luò)功能虛擬化技術(shù)的產(chǎn)生背景及其概念內(nèi)涵,接著介紹了網(wǎng)絡(luò)功能虛擬化技術(shù)具有的幾大優(yōu)勢,最后著重探討了網(wǎng)絡(luò)功能虛擬化技術(shù)面臨的一些挑戰(zhàn),包含網(wǎng)絡(luò)性能、虛擬機的分配和遷移,虛擬功能網(wǎng)元外包等問題,以及這些問題目前的研究進展。
網(wǎng)絡(luò)功能虛擬化;網(wǎng)絡(luò)性能;虛擬機分配
隨著互聯(lián)網(wǎng)的飛速發(fā)展,網(wǎng)絡(luò)中的網(wǎng)絡(luò)設(shè)備種類和功能越來越豐富。傳統(tǒng)網(wǎng)絡(luò)中的網(wǎng)絡(luò)設(shè)備是軟硬件一體化的,意味著當(dāng)引入一種新的網(wǎng)絡(luò)功能時,需完整地重新開發(fā)新的專用硬件設(shè)備。硬件設(shè)備的技術(shù)開發(fā)難度、空間放置、能耗、管理復(fù)雜度等使得網(wǎng)絡(luò)開發(fā)、運維成本急劇增加,新業(yè)務(wù)帶來的利潤增長和不斷攀升的投入成本相比越來越微弱。在這個背景下,網(wǎng)絡(luò)功能虛擬化(Network Function Virtualization,NFV)概念誕生了。
2012年10月,十幾家全球頂級運營商在德國召開的SDN&OpenFlow世界大會上首次發(fā)布NFV白皮書[1]。2012年11月,世界幾大知名運營商在歐洲電信標(biāo)準(zhǔn)協(xié)會(ETSI)發(fā)起成立了一個新的網(wǎng)絡(luò)功能虛擬化標(biāo)準(zhǔn)工作組NFV ISG(Industry Specification Group),該組織致力于促進網(wǎng)絡(luò)功能虛擬化技術(shù)的快速發(fā)展,陸續(xù)發(fā)布包括用例、需求、架構(gòu)、術(shù)語、POC、白皮書等一系列公開文檔。
全球知名電信運營商是NFV技術(shù)誕生的主要推手,NFV在電信行業(yè)具有廣泛的發(fā)展空間,但這不表示電信運營商網(wǎng)絡(luò)是NFV唯一的用武之地,除了電信運營商基礎(chǔ)設(shè)施網(wǎng)絡(luò),NFV也可應(yīng)用于enterprise network或公共云中,如對防火墻、IDS、代理等中間盒虛擬化。
NFV工作組的研究目標(biāo)是希望通過采用標(biāo)準(zhǔn)化的IT虛擬化技術(shù),把多種網(wǎng)絡(luò)專業(yè)設(shè)備統(tǒng)一到業(yè)界標(biāo)準(zhǔn)的大容量的服務(wù)器、交換機和存儲平臺上,在這些業(yè)界標(biāo)準(zhǔn)平臺上承載各種各樣的網(wǎng)絡(luò)軟件功能,實現(xiàn)軟件的靈活加載,實現(xiàn)在數(shù)據(jù)中心、網(wǎng)絡(luò)節(jié)點和用戶端等各個位置靈活的部署配置[1]。
NFV技術(shù)對傳統(tǒng)的專用設(shè)備進行軟硬件解耦,把網(wǎng)元功能從網(wǎng)絡(luò)專用硬件中分離出來。NFV網(wǎng)絡(luò)分為網(wǎng)絡(luò)功能層、虛擬資源層和硬件資源層三層,傳統(tǒng)網(wǎng)絡(luò)硬件的軟硬件緊耦合特征會造成硬件資源的大量浪費、新業(yè)務(wù)部署成本高昂、運營管理成本居高不下。NFV通過虛擬化技術(shù),將網(wǎng)絡(luò)功能從傳統(tǒng)網(wǎng)絡(luò)硬件中解耦出來,引入虛擬資源層,把功能網(wǎng)元彈性部署在虛擬機上,而下層硬件資源對于上層的功能網(wǎng)元來說是不可見的,運營商則對下層硬件資源進行統(tǒng)一管理和調(diào)度。硬件資源的統(tǒng)一管理、資源池化,功能網(wǎng)元部署的靈活性和動態(tài)性使得新業(yè)務(wù)的開發(fā)不再依賴特定硬件平臺,降低了新業(yè)務(wù)開發(fā)的成本和難度、縮短了新業(yè)務(wù)的推出時間,大大節(jié)省了電信行業(yè)運維管理成本。
相比于傳統(tǒng)網(wǎng)絡(luò)設(shè)備,NFV將帶來以下三個不同:
(1)軟硬件解耦:軟件和硬件的分離使得軟件和硬件各自獨立發(fā)展。
(2)網(wǎng)絡(luò)功能的彈性部署:NFV將實現(xiàn)在硬件資源池上自動部署網(wǎng)絡(luò)功能,這些網(wǎng)絡(luò)功能可由不同的數(shù)據(jù)中心來承載。
(3)服務(wù)提供的動態(tài)性:根據(jù)當(dāng)前網(wǎng)絡(luò)狀況,實現(xiàn)對NFV性能的動態(tài)的可控的擴展。
NFV作為網(wǎng)絡(luò)領(lǐng)域里的一項創(chuàng)新技術(shù),將會大大改變電信行業(yè)的前景。NFV會降低資本投入和能耗,縮短新業(yè)務(wù)推入市場的時間,并可根據(jù)客戶需求快速提供定制化的服務(wù)。機遇總是與挑戰(zhàn)并存,NFV也不例外。在部署虛擬應(yīng)用過程中,NFV也將面臨一些技術(shù)挑戰(zhàn)。
2.1 網(wǎng)絡(luò)性能
軟件虛擬化框架(如管理編排)已成為電信行業(yè)關(guān)注熱點,而虛擬應(yīng)用環(huán)境中的網(wǎng)絡(luò)性能卻面臨著挑戰(zhàn)。Wang和Ng對亞馬遜EC2云服務(wù)的端到端的網(wǎng)絡(luò)性能進行了評測[2]。觀測結(jié)果表明TCP/UDP吞吐率非常不穩(wěn)定,在幾十毫秒的時間間隔內(nèi)吞吐率竟在0到1Gb/s之間浮動,亞馬遜EC2實例間的延遲方差也是大多傳播時延(<0.2ms)的一百倍,而這些甚至發(fā)生在網(wǎng)絡(luò)負(fù)載并不重的情形下。很明顯,虛擬化導(dǎo)致的不穩(wěn)定的網(wǎng)絡(luò)特性將會大大影響虛擬應(yīng)用程序的性能和部署。
提升VNF的網(wǎng)絡(luò)性能可采用的方式有:Linux的新應(yīng)用編程接口(New API,NAPI[3])和Intel的數(shù)據(jù)面開發(fā)工具集(Data Plane Development Kit,DPDK[4])。NAPI是對已有的Linux設(shè)備驅(qū)動中數(shù)據(jù)包處理框架進行修改,為了提升高速網(wǎng)絡(luò)的性能。在網(wǎng)絡(luò)負(fù)載較重的情形下,NAPI通過禁用部分中斷,轉(zhuǎn)而采用輪詢設(shè)備的方式,以避免頻繁中斷產(chǎn)生的重復(fù)消息處理。輪詢方式的另一個優(yōu)勢是當(dāng)內(nèi)核負(fù)擔(dān)過重時,對設(shè)備隊列中不能及時處理的數(shù)據(jù)包可采用簡單丟棄的處理方式。Intel’s DPDK是另一種提升高速網(wǎng)絡(luò)應(yīng)用程序處理效率的方式,采用的也是用輪詢方式來替代中斷,以避免相應(yīng)的中斷處理開銷。Hwang等近年來擴展了DPDK庫以獲取虛擬環(huán)境下更低的延遲和更高的網(wǎng)絡(luò)吞吐率[5]。
2.2 虛擬機分配
理想狀況下,網(wǎng)絡(luò)操縱者應(yīng)該給VNF分配合適的虛擬機,使得VNF的效率最高、成本最低。NFV對網(wǎng)絡(luò)功能進行虛擬化,但其中有些網(wǎng)絡(luò)功能對時延有著嚴(yán)格的要求。以往中間件實現(xiàn)的網(wǎng)絡(luò)功能通常依賴于網(wǎng)絡(luò)拓?fù)?,而這些中間件也一般放置在直通路徑上。當(dāng)對這些網(wǎng)絡(luò)功能進行虛擬化后,即在數(shù)據(jù)中心中以軟件方式實現(xiàn)對應(yīng)的網(wǎng)絡(luò)功能,數(shù)據(jù)流經(jīng)過的很可能是間接路徑,這將會帶來數(shù)據(jù)包的延遲。這種狀況下,為VNF分配合適的虛擬機對于業(yè)務(wù)性能來說就非常關(guān)鍵了[6]。
2.3 VNF實例化和遷移
在部署VNF時,網(wǎng)絡(luò)基礎(chǔ)設(shè)施比以往更具彈性和靈活性。網(wǎng)絡(luò)操縱者將會根據(jù)實際需求和網(wǎng)絡(luò)狀況為VNF分配合適的虛擬機,實現(xiàn)動態(tài)有效地對虛擬應(yīng)用進行實例化和遷移。在Linux或其他商用操作系統(tǒng)的傳統(tǒng)解決方案中,虛擬機將花費一個比較長的的實例化時間(幾秒)和需要一個較大的內(nèi)存空間。為了解決這個問題,Martins等提出ClickOS[7],一個微小的基于Xen的虛擬機,以實現(xiàn)NFV。ClickOS實例化需要的時間大概是30ms,運行時需要的內(nèi)存空間大約5MB。然而,對這種輕量級簡化的虛擬機進行性能優(yōu)化,尤其在大區(qū)域范圍內(nèi)的遷移情形下,這依然是個難題。
2.4 VNF外包
最初的網(wǎng)絡(luò)體系結(jié)構(gòu)不會更改正在傳輸?shù)臄?shù)據(jù)包,這一端到端的原則對于當(dāng)今內(nèi)含大量不同中間件的網(wǎng)絡(luò)來說已不再適用。Sherry等人對57個大大小小的不同企業(yè)網(wǎng)(擁有的主機數(shù)從不足千臺到多于十萬臺規(guī)模不等)進行了調(diào)研,發(fā)現(xiàn)典型的企業(yè)網(wǎng)擁有的中間件數(shù)目與主路由器數(shù)目旗鼓相當(dāng)。在過去五年,大型網(wǎng)絡(luò)在這些中間件設(shè)備的投入上多達百萬美元以上。另外,包含上百中間件的網(wǎng)絡(luò)需要雇傭100到500人手,來從事配置、升級、監(jiān)控、診斷、培訓(xùn)和與廠商的交互等工作[8]。
NFV使得網(wǎng)絡(luò)功能不再局限于本地,這也意味著把網(wǎng)絡(luò)中的中間件外包給第三方變得容易,這將使網(wǎng)絡(luò)運營商能從繁瑣的操縱和維護工作中擺脫出來。有了VNF提供商的支持,終端用戶或者小型企業(yè)也能夠更多地享有以前因為復(fù)雜性和高昂成本無法部署的網(wǎng)絡(luò)服務(wù)。然而,在真正實施以前,運營商網(wǎng)絡(luò)基礎(chǔ)設(shè)施和外包的VNF間的計費規(guī)則和交互方式還需要好好進行研究。與之相關(guān)的另一個問題是如何鑒別哪種類型的VNF可以外包給第三方以及如何進行會更有效率。
除了上面提及的方面,NFV還存在其它幾個值得研究的問題。如使用專用硬件應(yīng)用程序進行故障診斷,將更易確定故障所在,以便對相應(yīng)組件進行隔離。當(dāng)以軟件方式部署的網(wǎng)絡(luò)功能涉及多個地點,故障排除和錯誤隔離都將變得更難。另外,虛擬機創(chuàng)建比較簡便,隨著VNF數(shù)量的遞增,虛擬機的雜亂無序?qū)⒂锌赡馨l(fā)生,網(wǎng)絡(luò)中有可能充斥著大量實際很少使用的龐雜的VNF。這樣,NFV致力于解決的管理的低效將再次出現(xiàn)。對VNF進行有效的管理和編排,尤其在廣域網(wǎng)環(huán)境下,是又一個有價值的研究方向。
網(wǎng)絡(luò)功能虛擬化技術(shù)是當(dāng)今網(wǎng)絡(luò)領(lǐng)域的研究熱點,它對傳統(tǒng)網(wǎng)絡(luò)設(shè)備進行軟硬件解耦,以虛擬化的形式實現(xiàn)相應(yīng)的網(wǎng)絡(luò)功能,實現(xiàn)網(wǎng)絡(luò)的靈活部署,網(wǎng)絡(luò)的擴展性也大大加強。網(wǎng)絡(luò)功能虛擬化發(fā)展過程中,依然存在很多難題和挑戰(zhàn),相信經(jīng)多方的不斷研究探索和實踐驗證,網(wǎng)絡(luò)功能虛擬化技術(shù)將很快步入成熟的發(fā)展階段。
[1]Network Functions Virtualisation – Introductory White Paper.ETSI NFV ISG.2012.
[2]G.Wang and T.S.E.Ng,The Impact of Virtualization on Network Performance of Amazon EC2 Data Center,Proc.INFOCOM ’10,Mar.2010.
[3]A.Gember-Jacobson et al.,OpenNF:Enabling Innovation in Network Function Control,Proc.SIGCOMM 2014,Aug.2014.
[4]A.Greenberg et al.,The Cost of a Cloud:Research Problems in Data Center Networks, ACM SIGCOMM Computer Commun.Review,vol.39,no.1,Jan.2009.
[5]J.Hwang,K.K.Ramakrishnan,and T.Wood,“NetVM:High Performance and Flexible Networking Using Virtualization on Commodity Platforms,Proc. NSDI’14,Apr.2014.
[6]A.Manzalini et al.,Clouds of Virtual Machines in Edge Networks,IEEE Commun.Mag.,vol.51,no.7,July 2013.
[7]J.Martins et al.,ClickOS and the Art of Network Function Virtualization, Proc.NSDI 2014,Apr.2014.
[8]J.Sherry et al.,Making Middleboxes Someone Else’s Problem:Network Processing as a Cloud Service, Proc.SIGCOMM ’12,Aug.2012.