數(shù)據(jù)中心網(wǎng)絡(luò)的那些二層技術(shù)談
數(shù)據(jù)中心的傳統(tǒng)網(wǎng)絡(luò)設(shè)計都是三層架構(gòu),目的是為了進行業(yè)務(wù)隔離,形成一個扁平型的網(wǎng)絡(luò)流量模型,南北和東西流量進行二八互分,這種網(wǎng)絡(luò)架構(gòu)流行了幾十年,現(xiàn)在的數(shù)據(jù)中心依然也都正使用著這種架構(gòu)。然而隨著虛擬化技術(shù)的引入,需要網(wǎng)絡(luò)支持虛擬機動態(tài)遷移技術(shù),這就要求網(wǎng)絡(luò)支持大范圍的二層域,傳統(tǒng)三層網(wǎng)絡(luò)逐漸要退出歷史舞臺。當然,這是一個漸進發(fā)展的過程,而且二層區(qū)域越大,實際上網(wǎng)絡(luò)越不安全,廣播區(qū)域也會造成帶寬的浪費,單點故障容易引發(fā)整網(wǎng)的故障。那么數(shù)據(jù)中心的二層網(wǎng)絡(luò)規(guī)模需要多大,這取決于應(yīng)用場景和技術(shù)選擇,二層網(wǎng)絡(luò)規(guī)模有多大,虛擬機才能遷移有多遠,這樣二層網(wǎng)絡(luò)規(guī)模完全看虛擬機部署的遷移規(guī)模。根據(jù)二層網(wǎng)絡(luò)所處的不同位置,二層網(wǎng)絡(luò)技術(shù)進行了延伸發(fā)展,逐漸形成了三大流派的二層技術(shù)。下面,本文將一一道來。
物理二層區(qū)域內(nèi)轉(zhuǎn)發(fā)
數(shù)據(jù)中心網(wǎng)絡(luò)中,相同VLAN內(nèi)的終端屬于同一廣播域,具有一致的VLAN-ID,二層連通;不同VLAN內(nèi)的終端需要通過網(wǎng)關(guān)互相訪問,二層隔離,三層連通。這里所提的物理二層區(qū)域指的就是相同VLAN內(nèi)的轉(zhuǎn)發(fā)(或者相同VXLAN ID),這樣的網(wǎng)絡(luò)天然可以支持虛擬機遷移,只要按照以太MAC地址查找完成轉(zhuǎn)發(fā)即可?,F(xiàn)在一臺服務(wù)器可以虛擬出很多個虛擬機,這些虛擬機要完成二層互通,有的需要經(jīng)過網(wǎng)絡(luò),也有的直接在服務(wù)器內(nèi)部就可以完成轉(zhuǎn)發(fā),這時服務(wù)器內(nèi)部會包含有實現(xiàn)二層轉(zhuǎn)發(fā)的交換模塊,比如:VMware實現(xiàn)的Linux網(wǎng)橋、OpenvSwitch,不過這樣實現(xiàn)對服務(wù)器性能有消耗,還有802.1Qbg EVB。邊緣虛擬橋EVB(Edge Virtual Bridging)技術(shù)是當前用于解決虛擬化環(huán)境的虛擬機與網(wǎng)絡(luò)之間的連接與管理邊界問題而產(chǎn)生,并在此標準802.1Qbg定義的框架基礎(chǔ)上可以實現(xiàn)虛擬機生命周期與網(wǎng)絡(luò)的自動化關(guān)聯(lián)、網(wǎng)絡(luò)屬性的靈活變更。EVB衍生出了VEB、VEPA、Multi Channel等技術(shù),這些技術(shù)均可實現(xiàn)二層網(wǎng)絡(luò)內(nèi)的虛擬機遷移,有的偏重硬件轉(zhuǎn)發(fā),提升效率,有的偏重軟件轉(zhuǎn)發(fā),注重靈活,各有優(yōu)缺點,都獲得了部分廠家的支持。
跨三層網(wǎng)的二層交換
現(xiàn)有數(shù)據(jù)中心都是三層網(wǎng)絡(luò),為了支持云計算,總不能將現(xiàn)有網(wǎng)絡(luò)推倒重建,這就需要在現(xiàn)有三層網(wǎng)絡(luò)基礎(chǔ)上,再構(gòu)建一個虛擬的二層網(wǎng)絡(luò),讓虛擬機之間實現(xiàn)二層轉(zhuǎn)發(fā),虛擬機感知不到三層網(wǎng)絡(luò)的存在。這種技術(shù)既保護了現(xiàn)有網(wǎng)絡(luò),又引入了云計算新技術(shù),將數(shù)據(jù)中心平滑過渡到云數(shù)據(jù)中心。這里有兩大類技術(shù),一種是通過虛擬化技術(shù),將所有的網(wǎng)絡(luò)設(shè)備虛擬化成一臺設(shè)備,完成二層轉(zhuǎn)發(fā),這樣不僅便于管理網(wǎng)絡(luò),也消除了二層環(huán)路問題。另一種是通過隧道封裝技術(shù)實現(xiàn)。隧道技術(shù)代表是TRILL、SPB,都是通過借用IS-IS路由協(xié)議的計算和轉(zhuǎn)發(fā)模式,實現(xiàn)二層網(wǎng)絡(luò)的大規(guī)模擴展,之所以成為隧道技術(shù),這類技術(shù)通過MACinMAC的封裝,在原始報文上添加新的報文頭,包括PBB、Fabric Path、E-TRILL、L2MP等也都屬于隧道技術(shù)。這些技術(shù)都是不同網(wǎng)絡(luò)廠家提出的,有些隧道封裝具有私有屬性,技術(shù)實現(xiàn)有排它性,不像TRILL技術(shù)具有通用性,已經(jīng)漸漸成為跨三層網(wǎng)絡(luò)的二層協(xié)議標準,受到廣泛支持。
跨數(shù)據(jù)中心二層交換
數(shù)據(jù)中心內(nèi)部的虛擬機遷移已經(jīng)無法滿足云計算的發(fā)展,很多數(shù)據(jù)中心往往由多地數(shù)據(jù)中心組成,要實現(xiàn)不同數(shù)據(jù)中心之間的虛擬機自由遷移,如此可以極大方便業(yè)務(wù)部署,同時還大大提升了系統(tǒng)可靠性。一旦一個數(shù)據(jù)中心出現(xiàn)故障,業(yè)務(wù)虛擬可以自動遷移到其它數(shù)據(jù)中心繼續(xù)工作,業(yè)務(wù)可靠性大幅提升,真正才能做到全年業(yè)務(wù)零秒中斷??鐢?shù)據(jù)中心之間要實現(xiàn)二層互通,也有很多辦法。除了光纖直接互聯(lián)打通之外,還有很多隧道封裝技術(shù)可以實現(xiàn)。這些隧道封裝技術(shù)使用的是IPINIP,與數(shù)據(jù)中心內(nèi)部的隧道技術(shù)有所不同,這也使得隧道技術(shù)要豐富一些。比如有基于MPLS的二層互聯(lián),包括VLL和VPLS技術(shù),還有PTN,PTN是基于 MPLS-TP實現(xiàn),最初面向二層互聯(lián),現(xiàn)已支持三層;有基于IP網(wǎng)絡(luò)的三層互聯(lián)LISP(思科私有協(xié)議,目的是解決 IP 地址既當作位置信息,又當作識別信息的耦合);有基于GRE隧道實現(xiàn)的NVGRE;有VMware實現(xiàn)的STT,VCDNI(vCloud Director Network Isolation);還有L2TPV3、OTV、VXLAN等等,這類技術(shù)的確不少,讓人看得有些眼花繚亂,其實萬變不離其宗,仔細研讀這些網(wǎng)絡(luò)協(xié)議,很容易發(fā)現(xiàn)都具有共同的屬性,就是三層封裝,通過在原始報文上增加一個新的報文頭,實現(xiàn)虛擬機跨數(shù)據(jù)中心的二層遷移。像MPLS和GRE以及IPINIP技術(shù)很多人都不陌生,這些技術(shù)實際上早已在網(wǎng)絡(luò)中有大量應(yīng)用,為了區(qū)分局域網(wǎng)和骨干網(wǎng)業(yè)務(wù),在網(wǎng)絡(luò)層面進行隔離,就需要使用這些封裝技術(shù)。所以,這些技術(shù)早已成為跨數(shù)據(jù)中心的重要技術(shù),不過要很好地支持虛擬機遷移,這些技術(shù)都存在一定的局限性,畢竟這些技術(shù)的設(shè)計初衷并沒有考慮到虛擬機遷移,那時虛擬機遷移的技術(shù)還沒有出現(xiàn)。這樣就又涌現(xiàn)出了新技術(shù),比如最近最火的VXLAN技術(shù),這個由Cisco和VMware發(fā)起,目前Brocade、Avaya、Arista等均已支持,得到了數(shù)據(jù)中心廣泛認可。VXLAN用24位VXLAN ID(VNI)取代原先的12位VLAN ID,隧道兩端是VTEP,負責進行封裝(VLAN ID->VNI)和解封裝(VNI -> VLAN ID)??刂破矫嫔峡梢杂梅庋b的ARP包來進行定位,利用IP組播來詢問和傳播位置信息。VXLAN技術(shù)能天然支持SDN,可以和SDN很好地融合,是實現(xiàn)軟件定義網(wǎng)絡(luò)***的基礎(chǔ)協(xié)議,這也是VXLAN能夠得到認可的關(guān)鍵因素。
隨著云計算、大數(shù)據(jù)技術(shù)普及,數(shù)據(jù)中心二層(虛擬)網(wǎng)絡(luò)規(guī)模將越來越大,擁有這些二層技術(shù),數(shù)據(jù)中心才能獲得高速發(fā)展。