虛擬化,網(wǎng)絡面向應用的第一步
一個面向應用的網(wǎng)絡首要的前提就是對資源進行一體化管理,屏蔽使用者對資源位置的感知,快速交付適應于該應用的網(wǎng)絡規(guī)劃。因此,虛擬化也是H3C所提出的VAN(Virtual Application Network,虛擬應用網(wǎng)絡)架構(gòu)的三大核心之一。
虛擬化的本質(zhì)是提高用戶對資源的使用效率和管理能力。為了給用戶提供端到端的資源虛擬化服務,虛擬化的網(wǎng)絡又分為虛擬化服務、虛擬化通道、虛擬化設(shè)備。服務器作為虛擬服務的承載,通過虛擬機實現(xiàn)服務的位置無關(guān)性;連接通道作為服務流量的承載,虛擬化技術(shù)配合實現(xiàn)了虛擬服務的遷移、虛擬服務的備份和負載分擔;網(wǎng)絡設(shè)備作為虛擬通道的承載,虛擬化技術(shù)提供了虛擬通道的靈活配置和虛擬通道間的負載分擔,將服務流量的接入、匯聚、核心靈活的根據(jù)用戶需要進行整合,帶來了虛擬通道部署時的穩(wěn)定性和靈活性。虛擬化通道技術(shù)在之前期刊中已有詳細描述(*注:《IP領(lǐng)航》2012第6期總第25期大二層專題),虛擬化服務屬于服務器側(cè)的范疇,本文重點描述網(wǎng)絡設(shè)備的虛擬化技術(shù)。
網(wǎng)絡設(shè)備的虛擬化技術(shù)從最初的多臺物理網(wǎng)絡設(shè)備虛擬成一臺邏輯網(wǎng)絡設(shè)備,即N:1的虛擬化,到一臺物理網(wǎng)絡設(shè)備虛擬化成多臺邏輯網(wǎng)絡設(shè)備,即1:N的虛擬化技術(shù),又發(fā)展了將這兩種虛擬化技術(shù)進行整合的網(wǎng)絡設(shè)備形態(tài),即N:1:M虛擬化技術(shù);以及在N:1橫向虛擬化的基礎(chǔ)上發(fā)展了縱向虛擬化技術(shù)。這四項技術(shù)不僅給數(shù)據(jù)中心帶來了完整的虛擬化方案,也讓數(shù)據(jù)中心在網(wǎng)絡資源的管理和利用上更加靈活。
一、 N:1虛擬化
通過N:1虛擬化,將多臺網(wǎng)絡設(shè)備虛擬化成一臺邏輯設(shè)備(*注:在本節(jié)中,所有邏輯設(shè)備都表示N:1的邏輯設(shè)備概念),網(wǎng)絡設(shè)備間的協(xié)同工作轉(zhuǎn)化為設(shè)備內(nèi)的處理,從而提高網(wǎng)絡管理和運行效率,讓網(wǎng)絡回歸簡單。
另一方面,N:1虛擬化使邏輯設(shè)備具備了強大的擴展能力。當網(wǎng)絡需要擴容時,N:1虛擬化技術(shù)可以在不改變網(wǎng)絡拓撲的前提下,向現(xiàn)有的邏輯設(shè)備中動態(tài)增加物理設(shè)備,使整個邏輯設(shè)備擁有更多的設(shè)備端口數(shù)、更大的帶寬和處理能力(如圖1所示)。
圖1 N:1虛擬化示意圖
圖2是常見的網(wǎng)絡組網(wǎng),使用MSTP、VRRP等協(xié)議來支持鏈路冗余、網(wǎng)關(guān)備份。這種組網(wǎng)在各種場合均會使用,這里僅以匯聚層與接入層之間的組網(wǎng)為例。
使用N:1虛擬化技術(shù)后,匯聚層的多個設(shè)備成為了一個單一的邏輯設(shè)備,接入設(shè)備直接連接到虛擬邏輯設(shè)備。簡化后的組網(wǎng)不再需要使用MSTP、VRRP協(xié)議,簡化了網(wǎng)絡配置。同時依靠跨設(shè)備的鏈路聚合,在成員出現(xiàn)故障時不再依賴MSTP、VRRP等協(xié)議的收斂,提高了可靠性。
圖2 使用N:1簡化組網(wǎng)示意圖
在具體技術(shù)實現(xiàn)上,H3C的相關(guān)技術(shù)是IRF(智能彈性架構(gòu)),Cisco采用的是StackWise及VSS技術(shù),Juniper采用的是Virtual Chassis技術(shù)。主要技術(shù)實現(xiàn)包括如下幾個方面:
跨物理設(shè)備的聚合
N:1虛擬化中采用的新型聚合技術(shù)讓用戶可以將不同物理設(shè)備上的物理以太網(wǎng)端口配置成一個聚合端口,這樣即使某些端口所在的設(shè)備出現(xiàn)故障,其他正常工作的成員設(shè)備會繼續(xù)管理和維護剩下的聚合端口。如圖3所示,流向網(wǎng)絡核心的流量將均勻分布在聚合鏈路上,當某一條聚合鏈路失效時,分布式鏈路聚合技術(shù)能夠?qū)⒘髁孔詣又匦路植嫉狡溆嗑酆湘溌芬詫崿F(xiàn)鏈路的彈性備份和提高網(wǎng)絡可靠性。
圖3 跨設(shè)備聚合技術(shù)
物理設(shè)備間的協(xié)議狀態(tài)互為備份
各物理設(shè)備加入邏輯設(shè)備后,協(xié)議動態(tài)運行數(shù)據(jù)在物理設(shè)備間進行同步,Master出現(xiàn)故障時,其他物理設(shè)備有協(xié)議的狀態(tài)信息,能快速恢復并保持鄰居設(shè)備的協(xié)議連接。
以路由協(xié)議為例,如圖4所示,網(wǎng)絡使用的是OSPF路由協(xié)議。當Master收到鄰居路由器發(fā)送過來的Update報文時,更新本地的路由表同時它會將更新的路由表項以及協(xié)議狀態(tài)信息發(fā)給其他所有物理設(shè)備,其他物理設(shè)備收到后會更新本地的路由表及協(xié)議狀態(tài),以保證邏輯設(shè)備內(nèi)的各個物理設(shè)備上路由相關(guān)信息的嚴格同步。
當Master故障時,新選舉的Master可以接手舊Master的工作,新的Master接收到鄰居路由器過來的OSPF報文后,會將更新的路由表項以及協(xié)議狀態(tài)信息發(fā)給其它所有物理設(shè)備,并不會影響中OSPF協(xié)議的運行。此時,域內(nèi)路由協(xié)議不會隨之出現(xiàn)中斷,二三層轉(zhuǎn)發(fā)流量和業(yè)務也不會出現(xiàn)中斷,從而實現(xiàn)了不中斷業(yè)務的故障保護和設(shè)備切換功能。
圖4 設(shè)備協(xié)議狀態(tài)備份機制
環(huán)形拓撲連接使網(wǎng)絡更可靠
如圖5所示,四個接入網(wǎng)絡通過跨設(shè)備聚合方式連接到邏輯設(shè)備上,邏輯設(shè)備采用環(huán)形拓撲方式進行連接。環(huán)形拓撲連接可以做到任何一臺設(shè)備的故障、設(shè)備端口故障、連接線故障,不影響到其他物理設(shè)備間的流量轉(zhuǎn)發(fā),提高了網(wǎng)絡高可靠性。
圖5 環(huán)形拓撲帶來更高的冗余可靠性
二、 1:N虛擬化
1:N虛擬化技術(shù)將一臺物理設(shè)備虛擬化成多臺邏輯設(shè)備(注:在本節(jié)中所有邏輯設(shè)備都表示1:N的邏輯設(shè)備概念),劃分出來的邏輯設(shè)備具有單獨的轉(zhuǎn)發(fā)表項和芯片資源,可以單獨組網(wǎng),單獨配置等網(wǎng)絡業(yè)務所需功能。
一臺物理設(shè)備虛擬成多個邏輯設(shè)備分別承擔不同的網(wǎng)絡應用,保持原有網(wǎng)絡的獨立性的同時,降低了硬件資源消耗,提高了網(wǎng)絡設(shè)備的利用率。各邏輯設(shè)備之間嚴格隔離,可以將安全級別不同的業(yè)務劃分到兩個邏輯設(shè)備中,通過虛擬化隔離,單獨進行管理和配置,不同業(yè)務之間不會相互影響。
圖6 N:1虛擬化示意圖
在具體技術(shù)實現(xiàn)上,H3C的相關(guān)技術(shù)是MDC(Multitenant Device Context,多租戶設(shè)備環(huán)境),Cisco采用的是VDC技術(shù)。各技術(shù)實現(xiàn)的功能上是一致的,以下以MDC技術(shù)為例來闡述1:N虛擬化的技術(shù)特點。
1. 網(wǎng)絡操作系統(tǒng)的虛擬化
網(wǎng)絡操作系統(tǒng)作為管理網(wǎng)絡設(shè)備的基礎(chǔ),對網(wǎng)絡設(shè)備的硬件資源和軟件資源進行了分層管理。
1:N虛擬化技術(shù)首先需對網(wǎng)絡操作系統(tǒng)進行虛擬化,目的是能做到每個邏輯設(shè)備都有支撐自身系統(tǒng)運行的硬件和軟件資源,包括獨立的接口、CPU等,獨立維護的路由和轉(zhuǎn)發(fā)表項。
以MDC技術(shù)為例,采用基于操作系統(tǒng)級別的虛擬化技術(shù),在操作系統(tǒng)內(nèi)核模擬出一個個運行應用程序的容器,操作系統(tǒng)級別的進程管理、內(nèi)存管理、磁盤管理基于每個MDC進行了虛擬化管理。對比目前服務器虛擬化時通常采用的Full-virtualization虛擬化技術(shù)(在Host操作系統(tǒng)和底層硬件之間建立一層抽象系統(tǒng),各Guest操作系統(tǒng)無需修改代碼,通過CPU支持虛擬化將Guest操作系統(tǒng)的高權(quán)限指令Trap到抽象系統(tǒng)中的代碼中代理執(zhí)行)和Para-virtualization虛擬化技術(shù)(修改Guest操作系統(tǒng)以適配Host系統(tǒng)),操作系統(tǒng)級的虛擬化由于不存在Guest系統(tǒng)到Host系統(tǒng)的轉(zhuǎn)換,調(diào)度性能上最好,耗費資源最少。
圖7 MDC 1:N虛擬化示意圖
2. 分布式物理設(shè)備的邏輯設(shè)備劃分
在核心層和匯聚層的網(wǎng)絡設(shè)備,一般采用分布式設(shè)備來提高設(shè)備的流量處理能力和性能規(guī)格。典型的分布式設(shè)備模型包括多塊主控板和多塊接口板,支持虛擬化后,每塊單板都可以支持多個邏輯設(shè)備的啟動,可將端口資源在多個邏輯設(shè)備之間進行劃分。
劃分后的邏輯設(shè)備也同樣為分布式設(shè)備形態(tài),能操作分布式資源,并且相關(guān)的數(shù)據(jù)也和獨立的分布式設(shè)備一樣,進行同步和備份。如圖8所示,數(shù)據(jù)只在邏輯設(shè)備所屬的單板間進行同步,可以將I/O單板只劃分給某個邏輯設(shè)備。由于該單板上的資源只為一個邏輯設(shè)備所有,這樣I/O單板能達到作為單獨物理設(shè)備時的規(guī)格。
圖8 邏輯設(shè)備的表項數(shù)據(jù)同步
3. 獨立的配置管理平面
從管理設(shè)備業(yè)務功能的角度來看,每一個邏輯設(shè)備就是一臺獨立的設(shè)備。用戶可通過屬于邏輯設(shè)備的虛擬網(wǎng)管口直接登入邏輯設(shè)備內(nèi),進行管理和配置。邏輯設(shè)備所產(chǎn)生的系統(tǒng)告警信息可以單獨輸出到部屬的告警服務器上。每個邏輯設(shè)備有單獨的配置文件,支持獨立的重啟和恢復配置(如圖9所示)。
圖9 用戶對邏輯設(shè)備的配置管理
4. 故障隔離
由于采用操作系統(tǒng)級的虛擬化技術(shù)后,所有邏輯設(shè)備都有獨立的進程和獨立的網(wǎng)絡轉(zhuǎn)發(fā)數(shù)據(jù),通過合理的資源劃分,甚至有獨立的轉(zhuǎn)發(fā)芯片資源和獨立的CPU資源?;诖?,一個邏輯設(shè)備的故障可以控制在本邏輯設(shè)備內(nèi),不會影響其它的邏輯設(shè)備;
如圖10中MDC1邏輯設(shè)備內(nèi)的某個服務的故障,可能導致該邏輯設(shè)備內(nèi)的該服務不可工作。但其他邏輯設(shè)備還能繼續(xù)運行提供服務。
圖10 邏輯設(shè)備內(nèi)的故障隔離
三、 N:1:M虛擬化
N:1的虛擬化和1:N的虛擬化從技術(shù)角度采用了相反的實現(xiàn)技術(shù),但可以將兩者的技術(shù)進行融合,實現(xiàn)將多臺物理設(shè)備通過N:1虛擬化技術(shù)虛擬成一臺邏輯設(shè)備,再將此邏輯設(shè)備通過1:N技術(shù)虛擬成多臺邏輯設(shè)備,這種組合簡稱為N:1:M虛擬化(如圖11所示)。
圖11 N:1:M虛擬化示意圖
以IRF+MDC組網(wǎng)為例,這種N:1:M的虛擬化的明顯特點就是:整合層次,降低運營成本。
利用IRF+MDC技術(shù),可以對數(shù)據(jù)中心設(shè)計進行多層次的整合。整合方式可以分為三種方式(如圖12所示):
水平整合:將匯聚層的4臺設(shè)備整合成兩臺物理設(shè)備。將兩臺物理設(shè)備互為主備為接入網(wǎng)絡進行服務。
垂直整合:將核心層和匯聚層的設(shè)備整合,物理設(shè)備上分成兩個MDC,分別為核心層和匯聚層服務。
混合整合:將兩臺物理設(shè)備組成IRF邏輯設(shè)備上劃分三個MDC,兩個MDC管理接入網(wǎng)絡,做到接入的業(yè)務隔離,一個MDC連接核心層,滿足清晰的分層策略需求。
圖12 數(shù)據(jù)中心N:1:M虛擬化的整合方式
四、 縱向虛擬化
上述的N:1虛擬化是一種對稱方式整合的網(wǎng)絡設(shè)備資源的技術(shù),其中的N是有相同能力的對等設(shè)備,互為備份。隨著數(shù)據(jù)中心內(nèi)服務器規(guī)模的迅速增長,縱向虛擬化技術(shù)(Vertical Converged Framework,縱向融合框架,以下簡稱VCF)應運而生??v向虛擬化技術(shù)能將非對稱的網(wǎng)絡設(shè)備進行資源整合,既提高了網(wǎng)絡設(shè)備的端口密度,又方便了整體設(shè)備的管理。
VCF在縱向維度上支持對系統(tǒng)進行異構(gòu)擴展,即在形成一臺邏輯虛擬設(shè)備的基礎(chǔ)上,可把一臺盒式設(shè)備作為一塊遠程接口板加入主設(shè)備系統(tǒng),以達到擴展I/O端口能力和進行集中控制管理的目的。
在VCF技術(shù)體系中,設(shè)備按角色分為CB(Controlling Bridge)和PE(Port Extender)兩種。CB表示控制設(shè)備,PE表示縱向擴展設(shè)備,稱遠程接口板。
CB可以是N:1虛擬化后的邏輯設(shè)備組成,和縱向的PE設(shè)備采用跨設(shè)備聚合方式來進行連接。
PE設(shè)備相當于CB設(shè)備的端口擴展板,提高CB的端口密度??刂茖用嫔系木W(wǎng)絡配置、協(xié)議計算等由CB設(shè)備進行統(tǒng)一管理;PE設(shè)備的版本和配置文件可通過CB設(shè)備進行下載。
PE間的流量經(jīng)過CB進行轉(zhuǎn)發(fā),可通過對縱向連接端口進行聚合的方式擴大帶寬(如圖13所示)。
圖13 VCF典型拓撲
如圖14所示,利用VCF技術(shù),可以將接入層和匯聚層進行整合,簡化管理,滿足網(wǎng)絡部屬中的高端口密度需求。
注:更多的VCF技術(shù)信息見本期【講堂】欄目的文章:VCF縱向虛擬化架構(gòu)
圖14 VCF對匯聚和接入層的整合
五、 虛擬化技術(shù)的整合應用
N:1網(wǎng)絡虛擬化減少了網(wǎng)絡上邏輯設(shè)備的數(shù)量,提高了設(shè)備管理效率,簡化網(wǎng)絡層次,并且提高設(shè)備擴展能力,保護用戶投資。1:N的虛擬化節(jié)約了網(wǎng)絡中的物理設(shè)備數(shù)量,用戶在網(wǎng)絡業(yè)務部屬中已經(jīng)看不到具體的物理設(shè)備,而是一個個提供網(wǎng)絡服務的邏輯設(shè)備,將這兩種技術(shù)混合的N:1:M虛擬化使得網(wǎng)絡更有利于層次的整合、易于擴展。
在數(shù)據(jù)中心的應用中,網(wǎng)絡設(shè)備虛擬化技術(shù)也深入到各個層面(如圖15所示),在接入層設(shè)備采用縱向虛擬化技術(shù)來擴大網(wǎng)絡設(shè)備的接入設(shè)備端口密度,在PE設(shè)備上采用EVB協(xié)議和虛擬服務器間通過虛擬通道進行連接;在匯聚層設(shè)備采用N:1的虛擬化技術(shù)對下行鏈路提供了可靠冗余的連接,對上行的核心設(shè)備提供的簡單的協(xié)議控制,在匯聚層連接Internet的邊緣設(shè)備上,可以采用TRILL、PBB/SPB、EVI、VPLS等技術(shù)將該站點在數(shù)據(jù)中心大二層網(wǎng)絡中互聯(lián);在核心層可以采用N:1:M的技術(shù),在進行業(yè)務冗余備份的同時,將不同用戶的云劃分到不同的MDC中,即保證了業(yè)務的安全性,又可將邏輯設(shè)備托管由用戶自行進行各站點間的拓撲結(jié)構(gòu)的管理。
圖15 數(shù)據(jù)中心內(nèi)的虛擬化技術(shù)應用
六、 結(jié)束語
隨著面向應用的網(wǎng)絡進一步深化,出現(xiàn)了軟件定義網(wǎng)絡模型(Software Defined Network,SDN),SDN的出現(xiàn)將讓用戶能基于網(wǎng)絡設(shè)備廠商API接口更好的利用現(xiàn)有網(wǎng)絡設(shè)備資源,這些API接口可以基于設(shè)備本身提供,也能基于服務器上運行的Network OS提供。當用戶能更好的根據(jù)自己的應用來定義網(wǎng)絡設(shè)備時,將更需要網(wǎng)絡設(shè)備能夠?qū)崿F(xiàn)完全徹底的虛擬化:將網(wǎng)絡設(shè)備通過N:1虛擬化后作為整體資源,通過1:N虛擬化技術(shù)根據(jù)應用創(chuàng)建新的邏輯設(shè)備和資源部屬;同時用戶可以根據(jù)該應用的流量、應用的安全等特點進行聯(lián)動——利用設(shè)備提供的自動化功能進行網(wǎng)絡資源的動態(tài)部屬,實現(xiàn)一個更加可靠、更加靈活、更易于擴展的網(wǎng)絡。