陳 冰 南福星 楊紹光 王 翔
1 中國聯(lián)合網(wǎng)絡(luò)通信有限公司 北京 100033
2 中國聯(lián)通研究院 北京 100032
SDN[1]和NFV[2]是近些年來網(wǎng)絡(luò)發(fā)展較為熱門的技術(shù)。經(jīng)過幾年的發(fā)展,SDN和NFV對網(wǎng)絡(luò)變革產(chǎn)生的價值得到了清晰認(rèn)識和廣泛共識,這兩項(xiàng)技術(shù)逐漸邁過炒作階段,進(jìn)入規(guī)?;渴痣A段:SDN部署的急先鋒Google已基本完成其數(shù)據(jù)中心網(wǎng)絡(luò)的SDN改造,在開放網(wǎng)絡(luò)峰會上并沒有進(jìn)一步展示其關(guān)于SDN的新應(yīng)用場景;公有云巨頭微軟和阿里巴巴則分享了他們關(guān)于SDN在云服務(wù)上的實(shí)戰(zhàn)經(jīng)驗(yàn);而電信運(yùn)營商AT&T也宣布繼續(xù)推進(jìn)其網(wǎng)絡(luò)向SDN轉(zhuǎn)型的Domain 2.0計(jì)劃[3],基于SDN的“Network on Demand”解決方案衍生的“Switched Ethernet”服務(wù)已在全美100多個城市得到部署。
從宏觀上說,SDN最重要的價值就是將網(wǎng)絡(luò)從上到下自動化打通,并且提供近乎實(shí)時的按需網(wǎng)絡(luò)路徑調(diào)整能力,大大提升自動化能力,提升網(wǎng)絡(luò)能力提供的效率。NFV則提供了基于通用服務(wù)器標(biāo)準(zhǔn)硬件的標(biāo)準(zhǔn)運(yùn)行環(huán)境,使網(wǎng)絡(luò)業(yè)務(wù)基于此標(biāo)準(zhǔn)運(yùn)行環(huán)境進(jìn)行開發(fā)和集成,將軟硬件緊耦合系統(tǒng)工程轉(zhuǎn)化為軟件系統(tǒng)工程,大大縮短業(yè)務(wù)上市時間,提升業(yè)務(wù)部署效率。如同智能手機(jī)取代功能機(jī)一樣,SDN和NFV所產(chǎn)生的效率提升是明確的,必將是未來建設(shè)網(wǎng)絡(luò)的核心技術(shù)。
在具體部署過程中,SDN和NFV技術(shù)高度互補(bǔ),但并不相互依賴。NFV可以不基于SDN技術(shù)進(jìn)行實(shí)現(xiàn),然而兩者相融合則可能產(chǎn)生更大的潛在價值。利用數(shù)據(jù)中心現(xiàn)有的技術(shù),NFV的目標(biāo)可以基于非SDN的機(jī)制而實(shí)現(xiàn)。SDN所提出的控制平面和數(shù)據(jù)平面解耦的思路,可以進(jìn)一步提升現(xiàn)有部署服務(wù)的性能并簡化其互操作性,減輕運(yùn)維負(fù)擔(dān)。NFV能夠?yàn)镾DN軟件提供其運(yùn)行所需要的基礎(chǔ)設(shè)施。此外,NFV與SDN的目標(biāo)都是盡可能使用通用/白牌服務(wù)器/交換機(jī)來實(shí)現(xiàn)功能,圖1展示了SDN與NFV在網(wǎng)絡(luò)服務(wù)上協(xié)作互補(bǔ)的關(guān)系。SDN只有擁抱NFV,才能完善自己。沒有NFV,SDN停留在網(wǎng)絡(luò)拓?fù)浜涂刂茮Q策層面,沒有靈活的資源可供調(diào)度,網(wǎng)絡(luò)高層功能的實(shí)現(xiàn)會成為絆腳石;沒有SDN,NFV停留在軟件化和虛擬化層面,無法靈活地按需提供服務(wù)。只有兩者相結(jié)合,NFV的功能才能更加豐富,SDN的控制功能才更顯強(qiáng)大,網(wǎng)絡(luò)才能真正“活”了,也才可能變得更有智慧,最終使網(wǎng)絡(luò)成為服務(wù)。
圖1 SDN與NFV的關(guān)系
考慮技術(shù)的成熟性、網(wǎng)絡(luò)的平滑演進(jìn),SDN和NFV的部署需要一個循序漸進(jìn)的過程。SDN和NFV涉及的范圍非常廣泛,先期的部署需要找到一些突破口。局部的、新興的、層疊的網(wǎng)絡(luò)是最容易實(shí)施的地方。結(jié)合云網(wǎng)絡(luò)多租戶需求,DC的虛擬化,VDC成為SDN和NFV實(shí)踐的第一個理想的實(shí)驗(yàn)場景。不同于傳統(tǒng)數(shù)據(jù)中心,云計(jì)算以“租用”的方式改變了數(shù)據(jù)中心內(nèi)IT資源的交付手段。租戶對資源“按需申請”和“按使用付費(fèi)”,使得部署在云數(shù)據(jù)中心網(wǎng)絡(luò)中的計(jì)算、存儲和網(wǎng)絡(luò)資源處于持續(xù)改變的狀態(tài)。圖2展示了單個租戶所看到的VDC業(yè)務(wù)部署的拓?fù)?。由于租戶之間是相互隔離的,因此,其它租戶的網(wǎng)絡(luò)業(yè)務(wù)在該圖中并不可見。每個租戶能夠獨(dú)立請求一個或多個虛擬的L2網(wǎng)絡(luò),并在此基礎(chǔ)上構(gòu)建一個L3網(wǎng)絡(luò);不同租戶在其L2和L3網(wǎng)絡(luò)中可以共享使用所有可用的地址空間。所有L3網(wǎng)絡(luò)的子網(wǎng)可以通過一個服務(wù)網(wǎng)關(guān)互聯(lián),而該網(wǎng)關(guān)同時也是租戶云端網(wǎng)絡(luò)接入Internet的網(wǎng)關(guān);租戶可以在該網(wǎng)關(guān)上部署子網(wǎng)間以及Internet接入的網(wǎng)絡(luò)安全或服務(wù)質(zhì)量策略。這些網(wǎng)絡(luò)元素都是經(jīng)過虛擬化之后與物理網(wǎng)絡(luò)元素相分離的,能夠根據(jù)租戶的需求按需啟動和部署。
圖2 VDC租戶網(wǎng)絡(luò)拓?fù)?/p>
VDC里面,Overlay方式的虛擬網(wǎng)絡(luò)又是被最先選擇的方式[4],因?yàn)镺verlay方式最容易實(shí)現(xiàn)實(shí)際部署。用于數(shù)據(jù)中心網(wǎng)絡(luò)虛擬化封裝的協(xié)議主要有三個,即VXLAN,NVGRE和STT。它們在設(shè)計(jì)上的相同之處就是將虛擬網(wǎng)絡(luò)由全局唯一的ID進(jìn)行標(biāo)識,并打標(biāo)進(jìn)數(shù)據(jù)平面網(wǎng)包的封裝格式中;這三者僅在封裝格式和少部分實(shí)現(xiàn)細(xì)節(jié)上有所區(qū)別。當(dāng)前開源OpenStack已成為云網(wǎng)絡(luò)事實(shí)管理系統(tǒng),VDC內(nèi)部SDN控制器通過Openflow流表模型,對上為OpenStack提供網(wǎng)絡(luò)服務(wù),對下對OVS和Overlay網(wǎng)關(guān)進(jìn)行管理,構(gòu)成VDC內(nèi)完整解決方案,支持多租戶的云應(yīng)用,也支持NFV業(yè)務(wù)功能虛擬化,形成一套基礎(chǔ)環(huán)境。圖3展示了經(jīng)過VXLAN封裝的數(shù)據(jù)包流經(jīng)網(wǎng)絡(luò)路徑時的變化。從圖3可以看出,不同的虛擬網(wǎng)絡(luò)在VXLAN協(xié)議中是通過VNID來進(jìn)行標(biāo)識,由UDP協(xié)議進(jìn)行封裝的。虛擬機(jī)發(fā)出的原始網(wǎng)包為標(biāo)準(zhǔn)的以太網(wǎng)格式,在VTEP(軟件交換機(jī)或機(jī)架頂交換機(jī))進(jìn)行VXLAN封裝。封裝之后網(wǎng)包的L2和L3層地址分別為源和目的VTEP的地址,而原始網(wǎng)包作為UDP的載荷被封裝進(jìn)行傳輸。
圖3 基于VXLAN的網(wǎng)絡(luò)虛擬化封裝
目前,主要運(yùn)營商都在進(jìn)行類似方案的試點(diǎn),這將逐步形成云應(yīng)用的模式和業(yè)務(wù)功能虛擬化的模式,對未來有較深遠(yuǎn)的影響。但這只是起點(diǎn),在此基礎(chǔ)上,云應(yīng)用將得到很好的支撐,同時,NFV虛擬化使得安全、智能的工作比以前或得到更好的實(shí)現(xiàn),各類安全組件以軟件模塊形式存在,各類智能應(yīng)用以軟件模塊形成編寫調(diào)整,通過很好的集成工作可以快速定義、上線和提供業(yè)務(wù),并且能夠支持業(yè)務(wù)快速地迭代升級。在提供很好業(yè)務(wù)的同時,SDN基礎(chǔ)設(shè)施能力也將逐步演進(jìn),從Overlay模式開始逐步硬化轉(zhuǎn)發(fā)能力,最終螺旋式演變回具有更高性能支持的Underlay原生模式,但是功能將更加豐富,并覆蓋原來Overlay定義時所增加的各類功能。
對于城域網(wǎng)、骨干網(wǎng)等廣域網(wǎng)絡(luò),由于牽涉地域廣泛,管理域復(fù)雜,實(shí)際操作起來難度要大很多。城域網(wǎng)、骨干網(wǎng)以提供連接為主,因此,牽涉到的主要是SDN的工作。在廣域網(wǎng)場景,SDN強(qiáng)調(diào)更多的是面向連接的演進(jìn),在數(shù)據(jù)模型上會面向連接,而有可能并不實(shí)現(xiàn)流表。在南向協(xié)議上,除了Open fl ow細(xì)顆粒度接口以外,也會選擇BGP-LS、PCEP、NETCONF等粗顆粒接口,這些粗顆粒接口有時在廣域網(wǎng)上效率可能更高,使得實(shí)際操作性能得到保障。在廣域網(wǎng)上,端到端地對某一連接屬性進(jìn)行控制有一定的應(yīng)用價值,具體地來說,比如VPN連接、優(yōu)化的流量路徑[5]。
為實(shí)現(xiàn)對大網(wǎng)管理,廣域網(wǎng)的SDN控制器需要分層[6],最基本的層次是廠家單域控制器,其上是通用單域控制器,再其上是層次化多域控制器。為避免廠商綁定,需要在單域控制器以上定義通用接口。在產(chǎn)業(yè)鏈還沒有足夠成熟的時候,往往需要運(yùn)營商和供應(yīng)商共同協(xié)商制定通用接口?;谶@樣的通用接口,要進(jìn)行開發(fā)和對接測試,測試通過后要進(jìn)行跨域的試點(diǎn),然后在小規(guī)模范圍內(nèi)試用。實(shí)際試點(diǎn)操作時,會遇到既不支持也難以升級到SDN的傳統(tǒng)網(wǎng)絡(luò),這時需要使用Overlay技術(shù),使SDN穿越這些傳統(tǒng)網(wǎng)絡(luò),實(shí)現(xiàn)需要的端到端業(yè)務(wù)功能。廣域網(wǎng)的規(guī)模很大,這樣的試點(diǎn)需要做好全局協(xié)同,或者就定位為小范圍的試驗(yàn)網(wǎng)。
在廣域網(wǎng)上,即便單域和多域控制器組合得很好,離應(yīng)用和部署還有很大的距離。最關(guān)鍵的距離就是如何將OSS/BSS系統(tǒng)以演進(jìn)的方式與SDN控制器連接起來,中間需要一個編排層[7],編排層進(jìn)行語言的轉(zhuǎn)化,把業(yè)務(wù)需求轉(zhuǎn)化為SDN控制器認(rèn)識的網(wǎng)絡(luò)需求,同時,對虛擬化網(wǎng)元進(jìn)行生命周期管理。編排層對一個大的運(yùn)營商來說非常重要,它很好地解釋了業(yè)務(wù)對網(wǎng)絡(luò)的需求,并很好地進(jìn)行虛擬網(wǎng)元和SDN連接的串聯(lián),使得智能化的業(yè)務(wù)能很好地實(shí)現(xiàn)。行業(yè)的一些開源工具如TOSCA,一些思維方式,如NETCONF/YANG方法值得在應(yīng)用時考慮。
由于廣域網(wǎng)的SDN化是一個巨大的系統(tǒng)工程,大型的運(yùn)營商需要啟用從上向下的設(shè)計(jì),從OSS/BSS為起點(diǎn),向下將編排器、層次化多域控制器、單域控制器、廠商單域控制器、廠商設(shè)備串起來,打通之后才能對端到端業(yè)務(wù)部署提供積極的作用。運(yùn)營商和設(shè)備廠商需要通力合作,才有可能把系統(tǒng)定義和部署好。另外,即便在模型定義得很完善之后,實(shí)踐仍是第一位的,需要在小規(guī)模試點(diǎn)應(yīng)用中積累經(jīng)驗(yàn),逐步將網(wǎng)絡(luò)應(yīng)用規(guī)模擴(kuò)大。對于中間無法進(jìn)行SDN協(xié)同的傳統(tǒng)網(wǎng)絡(luò),積極采用Overlay或打隧道方式穿越,不必等萬事具備,才開展相關(guān)工作。只有SDN的網(wǎng)絡(luò)規(guī)模不斷壯大,最終才可能實(shí)現(xiàn)全網(wǎng)的SDN化。
在廣域網(wǎng)SDN試點(diǎn)和建設(shè)過程中,為VDC服務(wù)始終是重點(diǎn)需求之一,因?yàn)閂DC發(fā)展迅速,VDC之間互聯(lián)對廣域網(wǎng)有一定的需求,廣域網(wǎng)SDN在解決VDC互聯(lián)過程中,也實(shí)現(xiàn)自身支持功能的完善,從而實(shí)現(xiàn)更好地發(fā)展。在廣域網(wǎng)SDN發(fā)展過程中,面向連接是最基本的需求,此后,針對不同的需求,還會出現(xiàn)其他的軟件定義,如SDN SFC[8]的支持,將為NFV提供必要的更好的連接支持[9]。
下面針對SDN在廣域網(wǎng)上的部署應(yīng)用,分別選取了AT&T和Google作為運(yùn)營商和互聯(lián)網(wǎng)企業(yè)的代表,分析它們在SDN應(yīng)用上所做的工作和取得的成果。
圖4 隨選以太網(wǎng)服務(wù)部署模式
圖5 NetBond VPN服務(wù)部署模式
國際領(lǐng)先的運(yùn)營商AT&T基于SDN技術(shù)推出隨選網(wǎng)絡(luò)(Network on Demand)業(yè)務(wù)[10],通過在線自助服務(wù)門戶將網(wǎng)絡(luò)服務(wù)交付給商業(yè)客戶,客戶可以通過該門戶實(shí)時地訂購、添加和更改自己的網(wǎng)絡(luò)服務(wù)等級和擴(kuò)展帶寬等,從而靈活實(shí)現(xiàn)服務(wù)變更,更好地適配業(yè)務(wù)并優(yōu)化成本。其中,以太網(wǎng)服務(wù)允許用戶連接兩個或多個獨(dú)立的以太網(wǎng),形成一個單獨(dú)的網(wǎng)絡(luò),帶寬支持達(dá)1~10Gbs。圖4展示了隨選以太網(wǎng)服務(wù)的兩種部署模式,即“單點(diǎn)-多點(diǎn)”和“多點(diǎn)-多點(diǎn)”兩種常見的企業(yè)網(wǎng)絡(luò)架構(gòu)。此外,NetBond VPN服務(wù)面向企業(yè)客戶提供MPLS VPN與各數(shù)據(jù)中心之間持續(xù)、安全的互聯(lián),使得網(wǎng)絡(luò)和計(jì)算資源可以彈性串聯(lián),以支持系統(tǒng)的波動需求。圖5展示了隨選VPN服務(wù)的部署模式。
在流量路徑優(yōu)化的應(yīng)用上,做的最出名也最有特色的是Google的B4。由于SDN能夠?qū)崟r監(jiān)控并動態(tài)調(diào)整網(wǎng)絡(luò)帶寬和路徑,傳統(tǒng)通過靜態(tài)帶寬預(yù)留方式保證服務(wù)質(zhì)量的做法顯得極其低效和僵化。Google廣域網(wǎng)的出口設(shè)備有上百條對外鏈路,分成很多的ECMP負(fù)載均衡組,在這些均衡組內(nèi)的多條鏈路之間用的是基于靜態(tài)Hash的負(fù)載均衡方式。由于靜態(tài)Hash的方式并不能做到完全均衡,為避免很大的流量被分發(fā)到同一個鏈路上導(dǎo)致丟包,Google不得不使用過量鏈路,提供比實(shí)際需要多得多的帶寬。這導(dǎo)致實(shí)際鏈路帶寬利用率只有30%~40%,且仍不可避免有的鏈路很空,有的鏈路產(chǎn)生擁塞,設(shè)備必須支持很大的包緩存,成本太高,而且也無法對上文中不同的數(shù)據(jù)區(qū)別對待。從一個數(shù)據(jù)中心到另外一個數(shù)據(jù)中心,中間可以經(jīng)過不同的數(shù)據(jù)中心,比如可以是 A→B→D,也可以是A→C→D,也許有的時候B很忙,C很空,路徑不是最優(yōu)。除此之外,增加網(wǎng)絡(luò)可見性、穩(wěn)定性,簡化管理,希望靠應(yīng)用程序來控制網(wǎng)絡(luò),都是其網(wǎng)絡(luò)改造的動機(jī)之一。以上原因也決定了Google這個基于SDN的網(wǎng)絡(luò),最主要的應(yīng)用是流量工程,最主要的控制手段是軟件應(yīng)用程序。圖6展示了Google B4網(wǎng)絡(luò)的整體架構(gòu)。
圖6 Google B4網(wǎng)絡(luò)的整體架構(gòu)
總結(jié)起來,SDN和NFV是網(wǎng)絡(luò)發(fā)展明確趨勢;數(shù)據(jù)中心網(wǎng)絡(luò)以VDC和虛擬化為核心,OpenStack、SDN和NFV技術(shù)迅速得到應(yīng)用,形成未來業(yè)務(wù)系統(tǒng)基礎(chǔ);廣域網(wǎng)絡(luò)復(fù)雜度很高,不僅需要多層控制器協(xié)同,還需要OSS/BSS與編排器和控制器的協(xié)同,大型運(yùn)營商需要實(shí)施自上而下的設(shè)計(jì),并推動局部試點(diǎn),以逐步形成規(guī)模應(yīng)用。在SDN和NFV的部署過程中,兩者需要緊密配合協(xié)同工作,才能產(chǎn)生良好的性能與效益提升。但是SDN與NFV架構(gòu)的核心——控制器的發(fā)展仍不明朗,分別代表運(yùn)營商和設(shè)備廠商的ONOS和OpenDaylight仍然在爭奪主導(dǎo)地位;各廠商對SDN的支持程度也有差異,實(shí)現(xiàn)協(xié)同操作還有一定難度;NFV設(shè)備相比SDN設(shè)備,其標(biāo)準(zhǔn)更加難以建立,其實(shí)現(xiàn)方式也更加碎片化;同時,SDN和NFV的集中控制方式及開放性將使得網(wǎng)絡(luò)架構(gòu)的安全性成為潛在風(fēng)險,這些都將是未來SDN和NFV發(fā)展中需要研究和解決的問題。
參考文獻(xiàn)
[1] Software-Defined Networking:The New Norm for Networks[EB/OL].[2016-01-08].https://www.opennetworking org/images/stories/downloads/sdnresources/white-papers/wp-sdn-newnorm.pdf
[2] Network Functions Virtualisation[EB/OL].[2016-01-08].https://portal.etsi.org/nfv/nfv_white_paper.pdf
[3] Domain 2.0 White Paper[EB/OL].[2016-01-08].https://www.att.com/Common/about_us/pdf/AT&T%20 Domain%202.0%20Vision%20White%20Paper.pdf
[4] Koponen T,Amidon K,Balland P,et al.Network Virtualization in Multi-tenant Datacenters[EB/OL].[2016-01-08].http://www.docin.com/p-1476505232.html
[5] Jain S,Kumar A,Mandal A,et al.B4:experience with a globally-deployed software defined wan[EB/OL].[2016-01-08].http://www.medsci.cn/sci/show_paper.asp?id=9e6d4390449
[6] S Hassas Y,Ganjali Y. Kandoo:a framework for ef fi cient and scalable offloading of control applications[EB/OL].[2016-01-08].http://conferences.sigcomm.org/sigcomm/2012/paper/hotsdn/p19.pdf
[7] Berde P,Gerola M,Hart J,et al.ONOS:towards an open,distributed SDN OS[EB/OL].[2016-01-08].http://www-csstudents.stanford.edu/~rlantz/papers/onos-hotsdn.pdf
[8] Service Function Chaining[EB/OL].[2016-01-08]. https://datatracker.ietf.org/wg/sfc/documents/
[9] Qazi Z A,Tu C C,Chiang L,et al.SIMPLE-fying middlebox policy enforcement using SDN[EB/OL].[2016-01-08].http://conferences.sigcomm.org/sigcomm/2013/papers/sigcomm/p27.pdf
[10] AT&T Network on Demand[EB/OL].[2016-01-08].http://about.att.com/innovation/showcase/networkondemand