在數(shù)據(jù)中心和云計(jì)算的網(wǎng)絡(luò)方案和技術(shù)討論中,大二層已經(jīng)成為熱點(diǎn)話題,涌現(xiàn)了各種軟件和硬件技術(shù)、直接和間接手段等,目的都是為了解決“L2 over XX”的問(wèn)題。那么,為什么有這么多大二層技術(shù)?在數(shù)據(jù)中心方案規(guī)劃和設(shè)計(jì)中該如何選擇?本文進(jìn)行一個(gè)總體的剖析,并在后續(xù)的文章中就主要技術(shù)與應(yīng)用進(jìn)行詳細(xì)的分析和介紹。
一、 為什么需要大二層
1. 虛擬化對(duì)數(shù)據(jù)中心提出的挑戰(zhàn)
傳統(tǒng)的三層數(shù)據(jù)中心架構(gòu)結(jié)構(gòu)的設(shè)計(jì)是為了應(yīng)付服務(wù)客戶端-服務(wù)器應(yīng)用程序的縱貫式大流量,同時(shí)使網(wǎng)絡(luò)管理員能夠?qū)α髁苛鬟M(jìn)行管理。工程師在這些架構(gòu)中采用生成樹(shù)協(xié)議(STP)來(lái)優(yōu)化客戶端到服務(wù)器的路徑和支持連接冗余。
虛擬化從根本上改變了數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)的需求。最重要的一點(diǎn)就是,虛擬化引入了虛擬機(jī)動(dòng)態(tài)遷移技術(shù)。從而要求網(wǎng)絡(luò)支持大范圍的二層域。從根本上改變了傳統(tǒng)三層網(wǎng)絡(luò)統(tǒng)治數(shù)據(jù)中心網(wǎng)絡(luò)的局面。
2. 虛擬機(jī)遷移與數(shù)據(jù)中心二層網(wǎng)絡(luò)的變化
在傳統(tǒng)的數(shù)據(jù)中心服務(wù)器區(qū)網(wǎng)絡(luò)設(shè)計(jì)中,通常將二層網(wǎng)絡(luò)的范圍限制在網(wǎng)絡(luò)接入層以下,避免出現(xiàn)大范圍的二層廣播域。
如圖1所示,由于傳統(tǒng)的數(shù)據(jù)中心服務(wù)器利用率太低,平均只有10%~15%,浪費(fèi)了大量的電力能源和機(jī)房資源。虛擬化技術(shù)能夠有效地提高服務(wù)器的利用率,降低能源消耗,降低客戶的運(yùn)維成本,所以虛擬化技術(shù)得到了極大的發(fā)展。但是,虛擬化給數(shù)據(jù)中心帶來(lái)的不僅是服務(wù)器利用率的提高,還有網(wǎng)絡(luò)架構(gòu)的變化。具體的來(lái)說(shuō),虛擬化技術(shù)的一項(xiàng)伴生技術(shù)—虛擬機(jī)動(dòng)態(tài)遷移(如VMware的VMotion)在數(shù)據(jù)中心得到了廣泛的應(yīng)用。簡(jiǎn)單來(lái)說(shuō),虛擬機(jī)遷移技術(shù)可以使數(shù)據(jù)中心的計(jì)算資源得到靈活的調(diào)配,進(jìn)一步提高虛擬機(jī)資源的利用率。但是虛擬機(jī)遷移要求虛擬機(jī)遷移前后的IP和MAC地址不變,這就需要虛擬機(jī)遷移前后的網(wǎng)絡(luò)處于同一個(gè)二層域內(nèi)部。由于客戶要求虛擬機(jī)遷移的范圍越來(lái)越大,甚至是跨越不同地域、不同機(jī)房之間的遷移,所以使得數(shù)據(jù)中心二層網(wǎng)絡(luò)的范圍越來(lái)越大,甚至出現(xiàn)了專業(yè)的大二層網(wǎng)絡(luò)這一新領(lǐng)域?qū)n}。
3. 傳統(tǒng)網(wǎng)絡(luò)的二層為什么大不起來(lái)
在數(shù)據(jù)中心網(wǎng)絡(luò)中,“區(qū)域”對(duì)應(yīng)VLAN的劃分。相同VLAN內(nèi)的終端屬于同一廣播域,具有一致的VLAN-ID,二層連通;不同VLAN內(nèi)的終端需要通過(guò)網(wǎng)關(guān)互相訪問(wèn),二層隔離,三層連通。傳統(tǒng)的數(shù)據(jù)中心設(shè)計(jì),區(qū)域和VLAN的劃分粒度是比較細(xì)的,這主要取決于“需求”和“網(wǎng)絡(luò)規(guī)模”。
傳統(tǒng)的數(shù)據(jù)中心主要是依據(jù)功能進(jìn)行區(qū)域劃分,例如WEB、APP、DB,辦公區(qū)、業(yè)務(wù)區(qū)、內(nèi)聯(lián)區(qū)、外聯(lián)區(qū)等等。不同區(qū)域之間通過(guò)網(wǎng)關(guān)和安全設(shè)備互訪,保證不同區(qū)域的可靠性、安全性。同時(shí),不同區(qū)域由于具有不同的功能,因此需要相互訪問(wèn)數(shù)據(jù)時(shí),只要終端之間能夠通信即可,并不一定要求通信雙方處于同一VLAN或二層網(wǎng)絡(luò)。
傳統(tǒng)的數(shù)據(jù)中心網(wǎng)絡(luò)技術(shù), STP是二層網(wǎng)絡(luò)中非常重要的一種協(xié)議。用戶構(gòu)建網(wǎng)絡(luò)時(shí),為了保證可靠性,通常會(huì)采用冗余設(shè)備和冗余鏈路,這樣就不可避免的形成環(huán)路。而二層網(wǎng)絡(luò)處于同一個(gè)廣播域下,廣播報(bào)文在環(huán)路中會(huì)反復(fù)持續(xù)傳送,形成廣播風(fēng)暴,瞬間即可導(dǎo)致端口阻塞和設(shè)備癱瘓。因此,為了防止廣播風(fēng)暴,就必須防止形成環(huán)路。這樣,既要防止形成環(huán)路,又要保證可靠性,就只能將冗余設(shè)備和冗余鏈路變成備份設(shè)備和備份鏈路。即冗余的設(shè)備端口和鏈路在正常情況下被阻塞掉,不參與數(shù)據(jù)報(bào)文的轉(zhuǎn)發(fā)。只有當(dāng)前轉(zhuǎn)發(fā)的設(shè)備、端口、鏈路出現(xiàn)故障,導(dǎo)致網(wǎng)絡(luò)不通的時(shí)候,冗余的設(shè)備端口和鏈路才會(huì)被打開(kāi),使得網(wǎng)絡(luò)能夠恢復(fù)正常。實(shí)現(xiàn)這些自動(dòng)控制功能的就是 STP(Spanning Tree Protocol,生成樹(shù)協(xié)議)。
由于STP的收斂性能等原因,一般情況下STP的網(wǎng)絡(luò)規(guī)模不會(huì)超過(guò)100臺(tái)交換機(jī)。同時(shí)由于STP需要阻塞掉冗余設(shè)備和鏈路,也降低了網(wǎng)絡(luò)資源的帶寬利用率。因此在實(shí)際網(wǎng)絡(luò)規(guī)劃時(shí),從轉(zhuǎn)發(fā)性能、利用率、可靠性等方面考慮,會(huì)盡可能控制STP網(wǎng)絡(luò)范圍。
4. 大二層也是為了流通的要求
隨著數(shù)據(jù)大集中的發(fā)展和虛擬化技術(shù)的應(yīng)用,數(shù)據(jù)中心的規(guī)模與日俱增,不僅對(duì)二層網(wǎng)絡(luò)的區(qū)域范圍要求也越來(lái)越大,在需求和管理水平上也提出了新的挑戰(zhàn)。
數(shù)據(jù)中心區(qū)域規(guī)模和業(yè)務(wù)處理需求的增加,對(duì)于集群處理的應(yīng)用越來(lái)越多,集群內(nèi)的服務(wù)器需要在一個(gè)二層VLAN下。同時(shí),虛擬化技術(shù)的應(yīng)用,在帶來(lái)業(yè)務(wù)部署的便利性和靈活性基礎(chǔ)上,虛擬機(jī)的遷移問(wèn)題也成為必須要考慮的問(wèn)題。為了保證虛擬機(jī)承載業(yè)務(wù)的連續(xù)性,虛擬機(jī)遷移前后的IP地址不變,因此虛擬機(jī)的遷移范圍需要在同一個(gè)二層VLAN下。反過(guò)來(lái)即,二層網(wǎng)絡(luò)規(guī)模有多大,虛擬機(jī)才能遷移有多遠(yuǎn)。
傳統(tǒng)的基于STP備份設(shè)備和鏈路方案已經(jīng)不能滿足數(shù)據(jù)中心規(guī)模、帶寬的需求,并且STP協(xié)議幾秒至幾分鐘的故障收斂時(shí)間,也不能滿足數(shù)據(jù)中心的可靠性要求。因此,需要能夠有新的技術(shù),在滿足二層網(wǎng)絡(luò)規(guī)模的同時(shí),也能夠充分利用冗余設(shè)備和鏈路,提升鏈路利用率,而且數(shù)據(jù)中心的故障收斂時(shí)間能夠降低到亞秒甚至毫秒級(jí)。
二、 大二層需要有多大
既然二層網(wǎng)絡(luò)規(guī)模需要擴(kuò)大,那么大到什么程度合適?這取決于應(yīng)用場(chǎng)景和技術(shù)選擇。
1. 數(shù)據(jù)中心內(nèi)
大二層首先需要解決的是數(shù)據(jù)中心內(nèi)部的網(wǎng)絡(luò)擴(kuò)展問(wèn)題,通過(guò)大規(guī)模二層網(wǎng)絡(luò)和VLAN延伸,實(shí)現(xiàn)虛擬機(jī)在數(shù)據(jù)中心內(nèi)部的大范圍遷移。由于數(shù)據(jù)中心內(nèi)的大二層網(wǎng)絡(luò)都要覆蓋多個(gè)接入交換機(jī)和核心交換機(jī),主要有以下兩類技術(shù)。
?虛擬交換機(jī)技術(shù)
虛擬交換機(jī)技術(shù)的出發(fā)點(diǎn)很簡(jiǎn)單,屬于工程派。既然二層網(wǎng)絡(luò)的核心是環(huán)路問(wèn)題,而環(huán)路問(wèn)題是隨著冗余設(shè)備和鏈路產(chǎn)生的,那么如果將相互冗余的兩臺(tái)或多臺(tái)設(shè)備、兩條或多條鏈路合并成一臺(tái)設(shè)備和一條鏈路,就可以回到之前的單設(shè)備、單鏈路情況,環(huán)路自然也就不存在了。尤其是交換機(jī)技術(shù)的發(fā)展,虛擬交換機(jī)從低端盒式設(shè)備到高端框式設(shè)備都已經(jīng)廣泛應(yīng)用,具備了相當(dāng)?shù)某墒於群头€(wěn)定度。因此,虛擬交換機(jī)技術(shù)成為目前應(yīng)用最廣的大二層解決方案。
虛擬交換機(jī)技術(shù)的代表是H3C公司的IRF、Cisco公司的VSS,其特點(diǎn)是只需要交換機(jī)軟件升級(jí)即可支持,應(yīng)用成本低,部署簡(jiǎn)單。目前這些技術(shù)都是各廠商獨(dú)立實(shí)現(xiàn)和完成的,只能同一廠商的相同系列產(chǎn)品之間才能實(shí)施虛擬化。同時(shí),由于高端框式交換機(jī)的性能、密度越來(lái)越高,對(duì)虛擬交換機(jī)的技術(shù)要求也越來(lái)越高,目前框式交換機(jī)的虛擬化密度最高為4:1。虛擬交換機(jī)的密度限制了二層網(wǎng)絡(luò)的規(guī)模大約在1萬(wàn)~2萬(wàn)臺(tái)服務(wù)器左右。
?隧道技術(shù)
隧道技術(shù)屬于技術(shù)派,出發(fā)點(diǎn)是借船出海。二層網(wǎng)絡(luò)不能有環(huán)路,冗余鏈路必須要阻塞掉,但三層網(wǎng)絡(luò)顯然不存在這個(gè)問(wèn)題,而且還可以做ECMP(等價(jià)鏈路),能否借用過(guò)來(lái)呢?通過(guò)在二層報(bào)文前插入額外的幀頭,并且采用路由計(jì)算的方式控制整網(wǎng)數(shù)據(jù)的轉(zhuǎn)發(fā),不僅可以在冗余鏈路下防止廣播風(fēng)暴,而且可以做 ECMP。這樣可以將二層網(wǎng)絡(luò)的規(guī)模擴(kuò)展到整張網(wǎng)絡(luò),而不會(huì)受核心交換機(jī)數(shù)量的限制。
隧道技術(shù)的代表是TRILL、SPB,都是通過(guò)借用IS-IS路由協(xié)議的計(jì)算和轉(zhuǎn)發(fā)模式,實(shí)現(xiàn)二層網(wǎng)絡(luò)的大規(guī)模擴(kuò)展。這些技術(shù)的特點(diǎn)是可以構(gòu)建比虛擬交換機(jī)技術(shù)更大的超大規(guī)模二層網(wǎng)絡(luò)(應(yīng)用于大規(guī)模集群計(jì)算),但尚未完全成熟,目前正在標(biāo)準(zhǔn)化過(guò)程中。同時(shí)傳統(tǒng)交換機(jī)不僅需要軟件升級(jí),還需要硬件支持。
2. 跨數(shù)據(jù)中心
隨著數(shù)據(jù)中心多中心的部署,虛擬機(jī)的跨數(shù)據(jù)中心遷移、災(zāi)備,跨數(shù)據(jù)中心業(yè)務(wù)負(fù)載分擔(dān)等需求,使得二層網(wǎng)絡(luò)的擴(kuò)展不僅是在數(shù)據(jù)中心的邊界為止,還需要考慮跨越數(shù)據(jù)中心機(jī)房的區(qū)域,延伸到同城備份中心、遠(yuǎn)程災(zāi)備中心。
一般情況下,多數(shù)據(jù)中心之間的連接是通過(guò)路由連通的,天然是一個(gè)三層網(wǎng)絡(luò)。而要實(shí)現(xiàn)通過(guò)三層網(wǎng)絡(luò)連接的兩個(gè)二層網(wǎng)絡(luò)互通,就必須實(shí)現(xiàn)“L2 over L3”。
L2oL3技術(shù)也有許多種,例如傳統(tǒng)的VPLS(MPLS L2VPN)技術(shù),以及新興的Cisco OTV、H3C EVI技術(shù),都是借助隧道的方式,將二層數(shù)據(jù)報(bào)文封裝在三層報(bào)文中,跨越中間的三層網(wǎng)絡(luò),實(shí)現(xiàn)兩地二層數(shù)據(jù)的互通。這種隧道就像一個(gè)虛擬的橋,將多個(gè)數(shù)據(jù)中心的二層網(wǎng)絡(luò)貫穿在一起。
另外,也有部分虛擬化和軟件廠商提出了軟件的L2 over L3技術(shù)解決方案。例如VMware的VXLAN、微軟的NVGRE,在虛擬化層的vSwitch中將二層數(shù)據(jù)封裝在UDP、GRE報(bào)文中,在物理網(wǎng)絡(luò)拓?fù)渖蠘?gòu)建一層虛擬化網(wǎng)絡(luò)層,從而擺脫對(duì)網(wǎng)絡(luò)設(shè)備層的二層、三層限制。這些技術(shù)由于性能、擴(kuò)展性等問(wèn)題,也沒(méi)有得到廣泛的使用。
三、 結(jié)束語(yǔ)
大規(guī)模二層網(wǎng)絡(luò)的需求目前已經(jīng)非常的清晰,各廠商都提出了有針對(duì)性的技術(shù)和方案,滿足大二層的當(dāng)前要求和未來(lái)擴(kuò)展需求。但從實(shí)際應(yīng)用情況來(lái)看,除了虛擬交換機(jī)技術(shù)在成熟度和應(yīng)