邊緣虛擬橋EVB(Edge Virtual Bridging)技術是當前用于解決虛擬化環境的虛擬機VM(Virtual Machine)與網絡之間的連接與管理邊界問題而產生。并在此標準802.1Qbg定義的框架基礎上可以實現VM生命周期與網絡的自動化關聯、網絡屬性的靈活變更。
一、 EVB數據轉發層面標準化實現
EVB原來由802.1Qbg和802.1Qbh組成,數據層面的實現一共有四種(如圖1所示):其中802.1Qbg包含了三種,即VEB(Virtual Ethernet Bridging)模式、VEPA(Virtual Ethernet Port Aggregator)模式和Multi Channel模式;802.1Qbh為PE(Port Extender)模式。當前802.1Qbh已經在EVB內取消,因此EVB目前也就是802.1Qbg。802.1Qbg的各種模式具體轉發行為,請參考本刊《802.1Qbg、802.1Qbh、802.1BR、VN-Tag技術比較》一文,此處不再贅述。
圖1 EVB的多種數據轉發實現
從技術實現的角度,以及某些特殊應用場景下,802.1Qbg的不同模式是可以同時存在的,并且技術上要求能夠多層級聯,這在標準預備文檔中也進行了描述。但在更多的場景下,并不需要復雜的級聯拓撲和層次,標準在使用上建議了一個基本的EVB架構,如圖2所示。
圖2 EVB轉發層面基本架構
圖2中邊緣中繼單元ER(Edge Relay)指代了VEB/VEPA各種部件。EVB技術中,ER位于服務器一側,對服務器的流量進行轉發,ER轉發的流量包括虛擬服務器之間,和虛擬服務器與邊緣交換機(與物理服務器直連)之間的全部流量。ER既可以通過軟件實現,也可以使用專門的硬件單元實現(虛擬化網卡功能)。 ER-1標識了一種雙端口的VEB或VEPA,在實現上完全作為一個通道,無需地址學習表項管理;ER-2標識VEPA;ER-3標識VEB。所有的VM通過Virtual Station Interface(VSI)連接在ER上,基于級聯性架構,ER邏輯上掛接在Multi Channel的S-Component組件上,S-Component組件是實現Multichannel的核心邏輯組件,每個通道稱為S-Channel。
二、 EVB控制協議簡析
EVB的控制協議最關鍵有兩個:VDP(VSI Discovery Protocol) 和CDCP(S-Channel Discovery and Configuration Protocol)。
1. CDCP協議
CDCP是專門用于建立Multi Channel模式下S-Component組件與網絡連接的通道,這些通道邏輯上只在服務器和物理網絡端口本地有效,如圖3所示。
圖3 CDCP建立多通道
1) CDCP基本操作內容
S-Channel配置由交換機決定,并保存在交換機上; 由服務器向交換機發起S-Channel資源請求; 交換機根據請求提供最佳資源集; 如果交換機不能提供所有資源則提供資源子集;
2) CDCP交互過程
以太網接口上使能EVB功能后,交換機通過LLDP報文向外發布S通道狀態,與服務器的交互機制如圖4所示。
圖4 CDCP協議交互示意圖
當VM有創建S通道的請求,或者原有的請求發生變化時,向交換機發出請求報文(消息1)。交換機為其分配或者釋放SVID,創建或者刪除對應的S通道接口。隨后回復響應報文,通知服務器分配的SVID(消息2)。服務器和交換機都在后續的報文中攜帶當前存在的S通道的信息作為狀態通告。
3) CDCP報文格式
CDCP 協議TLV字段如圖5所示,包括角色(交換機為bridge,服務器為station)、對S組件的支持能力(SComp)、支持的S通道的個數、以及S通道ID與對應的SVID對。CDCP TLV與LLDP中其它dot1q的TLV一樣,type取值為127,subtype取值0x0E。
圖5 CDCP協議TLV格式
本設備角色(Role):等于1表示本設備為服務器(station),等于0表示本設備為交換機(bridge)。
保留位(Resv):暫不使用,以0填充。
S組件支持能力(SComp):等于1表示能支持S-VLAN組件,等于0時表示不支持。
本設備支持的S通道數目(Chncap):包括已經成功創建和尚未創建的。
SCID/SVID對:S通道索引和對應的SVID。第一個必須是缺省S通道,即<1,1>。CDCP報文中最多支持167個SCID/SVID對,包括缺省S通道的SCID/SVID。
服務器發出的請求中,SVID為0,形式如。如果交換機成功為其創建S通道,那么回復報文的形式如,b為有效的VLAN ID。如果交換機不能創建,則回復報文中仍然維持的形式。如果服務器將某一已經生效 的SCID/SVID對從本方報文中刪除,表示向交換機申請刪除該S通道。
2. VDP協議
VDP協議報文由服務器發起。服務器發送的VDP請求分為預關聯、資源預留的預關聯、關聯和去關聯請求四種。交換機只回復對應的響應報文。
VM創建時,服務器向交換機發送關聯或者預關聯請求。關聯請求處理成功時,VM的流量就可以開始經由交換機轉發。預關聯請求處理成功時,VM處于一種就緒等待的狀態,直到發送關聯請求處理成功后,才開始收發流量。
VM關閉時,向交換機發送去關聯請求,邊緣交換機將對應的流量轉發通道關閉。
一般來說,VM遷移時,新的VM先處于預關聯狀態下,等待虛擬機管理中心指令原有VM發送去關聯請求。原有VM發送去關聯請求后,新VM發送關聯請求,接替原有VM的流量收發工作。
1) VDP交互過程
服務器發送關聯請求時,與交換機、VSI管理服務器的交互過程如圖6所示。
圖6 關聯請求處理
服務器先發送預關聯請求再發送關聯請求的交互過程如圖7所示。
圖7 預關聯請求處理
服務器發送去關聯請求的交互過程如圖8所示
圖8 去關聯請求處理
2) VDP報文信息
VDP是VM與網絡關聯、創建遷移感知的關鍵協議,這里僅針對其中比較關鍵的消息內容進行介紹。
關聯消息。如圖9所示的關聯消息類型,傳遞了VM和網絡之間的關聯、解關聯操作請求。
圖9 VDP關聯消息類型
VM遷移信息。圖10的VDP消息位向網絡通告了VM的遷移性質。
圖10 VM的遷移告知
VDP中VSI過濾信息(由具體支持的特征信息類型決定取值)。圖11的VSI過濾信息提供了VM關聯信息:VLAN、MAC、GroupID(可用于>4K VLAN擴展),這些信息的組合可以保證VM連接網絡的正確屬性以及策略匹配。
圖11 VSI過濾信息
在EVB控制協議作用下,便可實現VM的自動化關聯網絡,如圖12所示,A中VM不進行VDP關聯,網絡不對其下發相應的屬性,網絡沒有針對此VM的相關配置,則VM流量不能進入網絡。B中VM經過VDP正常關聯網絡,網絡管理系統基于VM信息合理性下發針對VM的網絡策略與配置,可保證VM正常服務提供。C中VM雖然關聯網絡,但其屬性被網絡系統判斷為非法VM,網絡拒絕VM接入,不為VM分配資源和配置。
圖12 EVB協議VM關聯網絡
三、 EVB網絡中虛擬機的創建與遷移過程
在EVB技術關聯的計算與網絡系統中,定義了兩個管理系統:虛擬機管理系統VMM和網絡管理系統NMS(H3C的EVB NMS有專用組件iMC CRM---Connection Resource Manager)。
1) VM創建過程
在虛擬化環境中,VM基于業務要求具有其網絡屬性(VLAN、MAC、VSIID…),大量的VM屬性信息必須如圖13所示在虛機管理系統與網絡管理系統之間同步識別,這樣無論是主機側還是網絡側,對一個VM或一類虛擬服務的業務要求、控制策略都能完全統一,并且能夠基于VDP信息的傳遞、管理系統之間的交互而進行更新。
圖13 VMM與NMS交互VM的屬性
如圖14所示為VM創建,消息從主機側向網絡側傳遞的過程:
虛機管理系統使用VSI相關信息創建VM; VM/ER使用VDP關聯網絡; 交換機將VM信息傳遞給網絡管理系統(H3C iMC CRM)。
圖14 創建VM過程一
如圖15所示為VM創建,消息從網絡側向主機側傳遞的過程:
圖15 創建VM過程二
2) VM遷移過程
VM遷移前,先需要在目標主機上創建VM,該VM與原VM具有相同的VLAN、MAC、IP、VSI等信息(如圖16所示)。
1) 目標VM創建
2) 目標VM關聯網絡
3) 源VM與目標VM的狀態信息同步
圖16 VM遷移:創建目標VM
VM切換,當目標VM創建完成,虛擬機信息同步一致后便可進行VM切換,完成遷移
4) 拆離釋放原VM
5) 激活目標VM
6) 原VM主機VDP解關聯請求
7) 網絡刪除profile,釋放網絡資源
8) 網絡HTTPS通告管理系統解關聯,釋放網絡資源
圖17 VM切換
四、 結束語
EVB定義了標準化的主機與網絡之間虛擬化信息的關聯控制,使得虛擬機的服務變更可以通過網絡的感知來自動化響應,同時需要在虛擬計算管理與網絡管理系統之間針對VM服務定義統一的業務類型描述,保證主機側的虛擬機EVB屬性與網絡側的屬性一致,才能實現EVB的控制目的。