云計算最重要的技術(shù)實現(xiàn)就是虛擬化技術(shù),計算虛擬化商用的解決方案得到了較成熟的應用,而存儲虛擬化已經(jīng)在SAN上實現(xiàn)得很好了,在網(wǎng)絡虛擬化技術(shù)方面。業(yè)界主流廠商都提出了自己的解決方案,本文分析了數(shù)據(jù)中心中網(wǎng)絡虛擬化的實現(xiàn)相關(guān)技術(shù)和發(fā)展思路。
最早的網(wǎng)絡虛擬化技術(shù)代表是交換機集群(Cluster)技術(shù),多以盒式小交換機為主,較為古老,當前數(shù)據(jù)中心里面已經(jīng)很少見了。而新的技術(shù)則主要分為兩個方向,控制平面虛擬化與數(shù)據(jù)平面虛擬化。在探討網(wǎng)絡虛擬化技術(shù)之前,先定義一下云計算數(shù)據(jù)中心中各種網(wǎng)絡類型的定義,數(shù)據(jù)中心中網(wǎng)絡流量的根本出發(fā)點是服務器,結(jié)合云計算最適合的核心——接入二層網(wǎng)絡結(jié)構(gòu),可以把各種網(wǎng)絡分類:
Network1:VM本地互訪網(wǎng)絡,邊界是AccessSwitch,包括物理服務器本機VM互訪和跨AccessSwitch的不同物理服務器VM互訪兩個層面。
Network2:Ethemet與FC融合就是FCoE,邊界仍然是AccessSwitch。
Network3:跨核心層服務器互訪網(wǎng)絡,邊界是AccessSwitch與Core Switch。
Network4:數(shù)據(jù)中心跨站點二層網(wǎng)絡,邊界是Core Switch。
Network5:數(shù)據(jù)中心外部網(wǎng)絡,邊界是CoreSwitch與ISP IP網(wǎng)絡。
在大規(guī)模數(shù)據(jù)中心部署虛擬化計算和虛擬化存儲以后,對網(wǎng)絡產(chǎn)生了新的需求:虛擬機(VM)之間的互通,在DC內(nèi)部和DC間任意互通,遷移和擴展資源-更多的接口,更多的帶寬,至少按照10000個l0Gbit/s端口容量構(gòu)建資源池。二層網(wǎng)絡規(guī)模擴大,保證業(yè)務與底層硬件的透明和隨需部署,數(shù)據(jù)中心站點間二層互聯(lián)。DC資源整合,地域無差別。構(gòu)建真正的大云。服務器前后端網(wǎng)絡融合,DC內(nèi)部網(wǎng)絡整合。
1 控制平面虛擬化
顧名思義,控制平面虛擬化是將所有設(shè)備的控制平面合而為一,只有一個主體去處理整個虛擬交換機的協(xié)議處理,表項同步等工作。從結(jié)構(gòu)上來說,控制平面虛擬化又可以分為縱向與橫向虛擬化兩種方向。
縱向虛擬化指不同層次設(shè)備之間通過虛擬化合多為一,相當于將下游交換機設(shè)備作為上游設(shè)備的接口擴展而存在,虛擬化后的交換機控制平面和轉(zhuǎn)發(fā)平面都在上游設(shè)備上,下游設(shè)備只有一些簡單的同步處理特性,報文轉(zhuǎn)發(fā)也都需要上送到上游設(shè)備進行。可以理解為集中式轉(zhuǎn)發(fā)的虛擬交換機。
橫向虛擬化多是將同一層次上的同類型交換機設(shè)備虛擬合一,控制平面工作如縱向一般,都由一個主體去完成,但轉(zhuǎn)發(fā)平面上所有的機框和盒子都可以對流量進行本地轉(zhuǎn)發(fā)和處理,是典型分布式轉(zhuǎn)發(fā)結(jié)構(gòu)的虛擬交換機。控制平面虛擬化從一定意義上來說是真正的虛擬交換機,能夠同時解決統(tǒng)一管理與接口擴展的需求。
2 數(shù)據(jù)平面虛擬化
數(shù)據(jù)通信的兩個維度,一個是控制平面,另一個就是數(shù)據(jù)平面,也就是數(shù)據(jù)轉(zhuǎn)發(fā)平面。為實現(xiàn)數(shù)據(jù)平面的虛擬化,于是有了TRILL和SPB這兩個新的協(xié)議的推出。兩個協(xié)議都是用L2 ISIS作為控制協(xié)議在所有設(shè)備上進行拓撲路徑計算,轉(zhuǎn)發(fā)的時候會對原始報文進行外層封裝,以不同的目的Tag在TRILL/SPB區(qū)域內(nèi)部進行轉(zhuǎn)發(fā)。對外界來說,可以認為TRILL/SPB區(qū)域網(wǎng)絡就是一個大的虛擬交換機,Ethemet報文從人口進去后,完整的從出口吐出來,內(nèi)部的轉(zhuǎn)發(fā)過程對外是不可見且無意義的。
這種數(shù)據(jù)平面虛擬化多合一已經(jīng)是廣泛意義上的多虛一了,此方式在二層Ethemet轉(zhuǎn)發(fā)時可以有效的擴展規(guī)模范圍,作為網(wǎng)絡節(jié)點的多個節(jié)點虛擬成一個節(jié)點來說,控制平面虛擬化目前還在個位到十位數(shù)級別,數(shù)據(jù)平面虛擬化已經(jīng)可以輕松達到百位的范疇。但其缺點也很明顯,引入了控制協(xié)議報文處理,增加了網(wǎng)絡的復雜度,同時由于轉(zhuǎn)發(fā)時對數(shù)據(jù)報文多了外層頭的封包解包動作,降低了Ethemet的轉(zhuǎn)發(fā)效率。
在構(gòu)建數(shù)據(jù)中心二層網(wǎng)絡模型中,核心層與接入層設(shè)備有兩個問題是必須要解決的,一是拓撲無環(huán)路,二是多路徑轉(zhuǎn)發(fā)。但在傳統(tǒng)Ethemet轉(zhuǎn)發(fā)中只有使用STP才能確保無環(huán),但STP導致了多路徑冗余中部分路徑被阻塞浪費帶寬,給整網(wǎng)轉(zhuǎn)發(fā)能力帶來了瓶頸。因此云計算中需要新的技術(shù)在避免環(huán)路的基礎(chǔ)上提升多路徑帶寬利用率,網(wǎng)絡虛擬化技術(shù)提到了兩個解決上述需求的思路。
首先是控制平面多虛一,將核心層虛擬為一個邏輯設(shè)備,通過鏈路聚合使此邏輯設(shè)備與每個接入層物理或邏輯節(jié)點設(shè)備均只有一條邏輯鏈路連接,將整個網(wǎng)絡邏輯拓撲形成無環(huán)的樹狀連接結(jié)構(gòu),從而滿足無環(huán)與多路徑轉(zhuǎn)發(fā)的需求。
另一個思路是數(shù)據(jù)平面多虛一,在接入層與核心層交換機引入外層封裝標識和動態(tài)尋址協(xié)議來解決L2MP(Layer2 MultiPath)需求,可以理解這個思路相當于在Ethemet外面搞出一套類似IP+OSPF的協(xié)議機制來。對接入層以下設(shè)備來說,整個接入層與核心層交換機虛擬成了一臺邏輯的框式交換機,Ethemet報文進Ethemet報文出,中間系統(tǒng)就是個黑盒,就好像IP層面用不著了解到Ethemet是怎么轉(zhuǎn)發(fā)處理的一樣。這種思路的代表技術(shù)是IETF(Intemet EngineeringTask Force)標準組織提出的TRILL和IEEE提出的802.1aq SPB兩套標準控制平面多虛一技術(shù)。
3 控制平面多虛一技術(shù)
目前業(yè)界應用最廣泛的控制平面多虛一技術(shù)就是VSS和IRF,VSS(Virtual Switching System)是Cisco的私有技術(shù),IRF(Intellig嘰t ResilientFramework)是在H3C所有數(shù)據(jù)中心交換機中實現(xiàn)的私有技術(shù)。二者的關(guān)鍵技術(shù)點如下:
(1)專用鏈路跑私有協(xié)議:Vss使用VSL(Virtual Switch Link),IRF使用IRF link來承載各自的控制平面私有交互協(xié)議VsLP和IRF。專用鏈路使用私有協(xié)議來初始化建立鄰接、協(xié)商主備(描繪拓撲)、同步協(xié)議狀態(tài),同時會在虛擬化完成后,傳輸跨機框轉(zhuǎn)發(fā)的數(shù)據(jù)流量;
(2)基于引擎的主備模式:二者的控制平面都是只有一塊主控引擎作為虛擬交換機的主控制引擎,其它的引擎都是備份。
所有的協(xié)議學習,表項同步等工作都是由這一塊引擎獨立完成。好在這些設(shè)備大都是分布式交換,數(shù)據(jù)轉(zhuǎn)發(fā)的工作由交換板自己完成了,只要不是類似OsPF鄰居太多,拓撲太大等應用情況,一塊主控大部分也都能完成了。
(3)跨設(shè)備鏈路聚合:前面說了網(wǎng)絡虛擬化主要是應對二層多路徑環(huán)境下防止環(huán)路,因此跨設(shè)備鏈路聚合就是必須的了;
(4)雙活檢測處理:當VSL或IRF link故障后,組成虛擬化的兩個物理設(shè)備由于配置完全相同會在網(wǎng)絡中出現(xiàn)雙活節(jié)點,對上下游設(shè)備造成IP網(wǎng)關(guān)混亂。因此VSS/IRF都設(shè)計了一些雙活處理機制以應對專用鏈路故障。首先網(wǎng)絡中如果有跨設(shè)備鏈路聚合時,VSS使用PAgP,IRF使用LACP擴展報文來互相檢測通知,如果有富裕接口在虛擬化的兩臺物理設(shè)備間可以單獨再拉根直連線路專門用做監(jiān)控,Vss使用VSLP FastHello、IRF使用BFD機制進行檢測通知。另外vss還可以使用IP BFD通過互聯(lián)的三層鏈路進行監(jiān)控,IRF則支持使用免費ARP通過二層鏈路進行監(jiān)控。上述幾種方式都是監(jiān)控報文傳輸?shù)逆溌坊蛘咄鈱映休d協(xié)議不同。當發(fā)現(xiàn)專用鏈路故障時,VSS/IRF操作結(jié)果目前都是會將處于備份狀態(tài)的物理機框設(shè)備的所有接口全部關(guān)閉,直到專用鏈路恢復時再重新協(xié)商。需要注意這兩種虛擬化技術(shù)在進行初始協(xié)商時都需要將角色為備份的機框設(shè)備進行重啟才能完成虛擬化部署。下面以ciscoVss的3種故障檢測方式舉例,IRF也差不多。如圖1所示。
除了上述4個關(guān)鍵技術(shù)點外,Vss/IRF還有一些小的相似技術(shù)設(shè)定,如Domain的設(shè)定、版本一致性檢查、三層虛接口MAC協(xié)商等,都是基于各方面的細節(jié)需求來的。由于應用環(huán)境相似,因此實現(xiàn)的東西也區(qū)別不大。VSs和IRF都是當前較為成熟的虛擬化技術(shù),其優(yōu)點是可以簡化組網(wǎng),便捷管理,目前IRF技術(shù)已經(jīng)可以支持4個框式核心設(shè)備虛擬化一個核心設(shè)備,提供單節(jié)點超過2000個10Gbit/s接口,具有很強的系統(tǒng)擴展性。
4 數(shù)據(jù)平面多虛一技術(shù)
數(shù)據(jù)平面多虛一技術(shù)的統(tǒng)一特征就是在二層Ethemet報文外面再封裝一層標識用于尋址轉(zhuǎn)發(fā),這樣基于外層標識就可叭做些多路徑負載均衡和環(huán)路避免等處理工作了。目前正在推動的公有標準協(xié)議主要有TRILL/SPB。
4.1 TRILL協(xié)議及其技術(shù)實現(xiàn)
TRILL(TRansDarent Interconnect of Lots ofLinks)全稱透明多鏈路互連,在2010年3月時TRlLL已經(jīng)提交了IETF RFC 5556規(guī)范(TRILL:Problemand Applicability Statement),此RFc只是描述了TRILL要解決的問題以及應用范圍,定義協(xié)議細節(jié)的文檔目前都還處于Draft階段,形成完整的協(xié)議標準體系應該還得1~2年。TRILL是專門為數(shù)據(jù)中心開發(fā)的技術(shù),其定義的是在大型Ethemet網(wǎng)絡中解決多路徑問題的方案。
控制平面上TRILL引入了L2 ISIS作為尋址協(xié)議,運行在所有的TRILL RB(Routing Bridge)之間,部署于一個可自定義的獨立協(xié)議VLAN內(nèi),做的還是建立鄰接、繪制拓撲和傳遞Tag那幾件事。數(shù)據(jù)平面在內(nèi)外層Ethemet報頭之間引入了TRILL報頭,使用NickName作為轉(zhuǎn)發(fā)標識,用于報文在TRILL網(wǎng)絡中的尋址轉(zhuǎn)發(fā)(可理解為類似IP地址在IP網(wǎng)絡里面轉(zhuǎn)發(fā)時的作用)。每個RB都具有唯一的Nickname,同時維護其它RB的TRILL公共區(qū)域MAC地址、Nickname和私有區(qū)域內(nèi)部MAC地址的對應關(guān)系表。因為TRILL封裝是MACinMAC方式,因此在TRILL公共區(qū)域數(shù)據(jù)報文可以經(jīng)過傳統(tǒng)Bridge和Hub依靠外部Ethemet報頭轉(zhuǎn)發(fā)。
普通Ethemet報文在首次從TRILL邊緣RB設(shè)備進入TRILL區(qū)域時,作為未知單播還是依照傳統(tǒng)以太網(wǎng)傳播方式,廣播給所有其它的RB節(jié)點。但是除了邊緣RB外,TRILL區(qū)域中間的RB和傳統(tǒng)Bridge都不會學習此數(shù)據(jù)報文中私有區(qū)域內(nèi)部MAC地址信息,有效的降低了中間設(shè)備的MAC地址表壓力。為了防止環(huán)路同時做到多路徑負載均衡,TRILL的每個RB在初始建立鄰接繪制拓撲時,都會構(gòu)造出多個多播樹,分別以不同的Nickname為根,將不同的未知單播/多播/廣播流量Hash到不同的樹,分發(fā)給其它所有RB。由于全網(wǎng)拓撲唯一且構(gòu)造樹時采用的算法一致,可保證全網(wǎng)RB的多播/廣播樹一致。在RB發(fā)送報文時,通過將報文TRILL頭中的M標志位置l來標識此報文為多播,并填充樹根Nickname到目的Nickname字段,來確保沿途所有RB采用同一顆樹進行廣播。多播與廣播報文的轉(zhuǎn)發(fā)方式與未知單播相同。已知單播報文再發(fā)送的時候,會根據(jù)目的RB的Nickname進行尋路,如果RB問存在多條路徑時,會逐流進行Hash發(fā)送,以確保多路徑負載分擔。另外TRILL除了支持外層Ethemet封裝在傳統(tǒng)以太網(wǎng)中傳輸外,還規(guī)定了一種外層PPP封裝方式可以跨廣域網(wǎng)技術(shù)傳輸。
TRILL的主要技術(shù)結(jié)構(gòu)就是上面這些了,目前各個芯片廠商都已經(jīng)進入TRILL Ready的階段,隨著技術(shù)標準完善發(fā)布并被廣泛客戶所接受,相關(guān)產(chǎn)品商用是很快的。
4.2 SPB協(xié)議及其技術(shù)實現(xiàn)
要說SPB需要先談PBB(Provider BackboneBridging)。PBB是IEEE于2008年完成的802.1ah標準,為運營商城域以太網(wǎng)定義了一整套MACinMAC的轉(zhuǎn)發(fā)機制。但PBB只定義了轉(zhuǎn)發(fā)平面的封裝內(nèi)容,當報文封裝上外層Ethemet報頭在運營商骨干區(qū)域二層網(wǎng)絡中時,仍然需要依靠傳統(tǒng)的STP進行環(huán)路避免和轉(zhuǎn)發(fā)控制。于是IEEE在2009年又定義了802.1QayPBB—TE(Provider Backbone Bridge TrafficEngineering),用于在運營商的骨干區(qū)域中進行拓撲管理與環(huán)路保護,說白了就是通過手工方式配置一堆指定路徑取代STP的自動收斂。目前IEEE還有個相關(guān)的標準P802.1Qbf,PBB—TE infraStructure protection處于草案階段,預計2011年發(fā)布。
PBB—TE靜態(tài)規(guī)劃轉(zhuǎn)發(fā)路徑,明顯無法適用于大型二層網(wǎng)絡擴展,于是IEEE再搞出個P802.1aq SPB(ShoIrtest Path Bridging)來,當前也還處于草案階段。從IEEE的資料上看SPB主要是為了解決STP阻塞鏈路浪費帶寬的問題而研究出來的。從實現(xiàn)上來看,同樣是采用了L2 ISIS作為其控制平面協(xié)議進行拓撲學習計算,用MACinMAC封裝方式在SPB區(qū)域內(nèi)部進行報文傳輸。
SPB可細分為SPBV(VLAN QinQ)和SPBM(MACinMAC)兩個部分,目前看主要用到的是SPBM。
SPBM是標準的MACinMAC封裝,在SPB區(qū)域中數(shù)據(jù)報文也都是依靠外層MAC做傳統(tǒng)Ethemet轉(zhuǎn)發(fā)。外層Ethemet報頭中的源目的MAC就代表了SPB區(qū)域邊緣的UNI設(shè)備,此設(shè)備MAC是由L2 ISIS在SPB區(qū)域中傳遞的。
由于在SPB網(wǎng)絡中還是采用傳統(tǒng)Ethemet進行轉(zhuǎn)發(fā),因此需要定義一系列的軟件算法以保證多路徑的廣播無環(huán)和單播負載均衡。下面介紹幾個主要的部分:
(1)首先SPB定義了I—SID來區(qū)分多個拓撲,I—SID信息在數(shù)據(jù)報文中以BVID(外層Ethemet報頭中的VLAN Tag)形式攜帶,這樣可以解決不同業(yè)務多拓撲轉(zhuǎn)發(fā)的問題;
(2)每個SPB節(jié)點都會為每個I—SID計算3棵樹:到達所有相關(guān)UNI節(jié)點的SPT(Shortest Path Tree)用于單播與多播報文的轉(zhuǎn)發(fā)l ECT(Equal Cost Tree)以處理兩個UNI間存在多條等價路徑時負載均衡轉(zhuǎn)發(fā),自己為根的多播樹MT(Multicast Tree)用于未知單播與廣播報文轉(zhuǎn)發(fā)。
表1 SPB和TRILL相比主要不同
(3)任意兩點間的Shortest Path一定是對稱的IECT的負載均衡是基于不同I—SID分擔的。
總的來說,SPB和TRILL相比主要不同如表1所示。SPB目前的最大困擾是轉(zhuǎn)發(fā)路徑靠軟件算法保障,尤其在多路徑負載分擔時,對CPU計算壓力遠遠超過TRILL和FabricPath。因此實際轉(zhuǎn)發(fā)效率還有待驗證。
5 小結(jié)
從云計算數(shù)據(jù)中心網(wǎng)絡虛擬化技術(shù)發(fā)展來看,控制平面的虛擬化技術(shù),如已經(jīng)得到廣泛商用的VSS/IRF,這個技術(shù)的使用,作為網(wǎng)絡虛擬化技術(shù)的第一步,目前能夠?qū)?shù)據(jù)中心單節(jié)點的端口容量擴展到2000個10Gbit/s端口,后續(xù)會向3000個10Gbit/s端口的規(guī)模升級。隨著云計算網(wǎng)絡規(guī)模的增大,如運營商提出在云基地建設(shè)40萬臺服務器規(guī)模的數(shù)據(jù)中心,勢必要引入新的技術(shù),其中本文提到的數(shù)據(jù)平面虛擬化技術(shù)TRILL/SPB都是下一步網(wǎng)絡虛擬化實施中可能的選擇,這些技術(shù)比以前的STP在帶寬上多了一倍的擴充,組網(wǎng)規(guī)模上也得到擴展,可以構(gòu)建多層次,面向l~5萬個10Gbit/s端口級別的數(shù)據(jù)中心網(wǎng)絡,更適用于云計算超大規(guī)模的網(wǎng)絡需求。
核心關(guān)注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務領(lǐng)域、行業(yè)應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業(yè)務領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標題:網(wǎng)絡虛擬化技術(shù)在云計算數(shù)據(jù)中心的應用
本文網(wǎng)址:http://www.ezxoed.cn/html/support/1112153702.html