Cisco最后的王牌—FabricPath
眾所周知,Cisco正憑借Nexus產(chǎn)品平定整個數(shù)據(jù)中心網(wǎng)絡(luò)市場,2010年,Cisco打出了深藏已久的最后一張王牌—FabricPath,至此,Nexus交換機(jī)的主要特性已全部面向公眾發(fā)布,F(xiàn)abricPath為整個計劃添上了最后一塊基石,進(jìn)一步穩(wěn)固了Nexus作為下一代數(shù)據(jù)中心網(wǎng)絡(luò)平臺的地位。
大部分人(包括我)第一次閱讀FabricPath華麗的白皮書后,只朦朧地知道這是一個“能在大型二層數(shù)據(jù)中心網(wǎng)絡(luò)實現(xiàn)多路徑的東東”,既然FabricPath解決的是數(shù)據(jù)中心的問題,我們首先需要弄清楚數(shù)據(jù)中心到底有什么問題。
今天的大部分?jǐn)?shù)據(jù)中心網(wǎng)絡(luò)是遵循標(biāo)準(zhǔn)的層次化理念建設(shè)的,分為接入層和匯聚/核心層,接入層和匯聚層之間為二層鏈路,三層網(wǎng)關(guān)設(shè)在匯聚或核心,所有的二層鏈路上都運行生成樹協(xié)議(STP),當(dāng)任意兩點間有一條以上路徑可達(dá)時,STP會block多余的路徑,以保證兩點間只有一條路徑可達(dá),從而防止環(huán)路的產(chǎn)生。這種模式在過去很長一段時間被大規(guī)模采用,因為其部署起來非常簡單,接入層設(shè)備不需要復(fù)雜的配置,大部分的網(wǎng)絡(luò)策略只要在匯聚層集中部署就能分發(fā)到全網(wǎng)。但隨著數(shù)據(jù)中心的規(guī)模不斷擴(kuò)張,這種模型逐漸顯得力不從心。
未來數(shù)據(jù)中心內(nèi)部的橫向流量將越來越大,新加入的設(shè)備同原有設(shè)備之間仍然要運行STP,如果兩臺服務(wù)器之間只有一條鏈路可行,其余的萬兆交換機(jī)端口全被block,不但是投資的極大浪費,也無法支持業(yè)務(wù)的快速擴(kuò)展;其次,當(dāng)交叉鏈路數(shù)量增加時,二層網(wǎng)絡(luò)的設(shè)計會變得非常復(fù)雜,哪條鏈路該保留哪條鏈路該阻斷?三層網(wǎng)關(guān)設(shè)在何處?類似這樣的問題會冒出一大堆,這就失去二層網(wǎng)絡(luò)配置簡單的優(yōu)勢;最后,傳統(tǒng)的二層MAC地址沒有層次化的概念,同一個二層網(wǎng)絡(luò)內(nèi)的接入交換機(jī)上存儲本網(wǎng)段所有設(shè)備的MAC地址,這很容易導(dǎo)致邊緣設(shè)備的MAC地址空間耗盡,特別是在虛擬化的數(shù)據(jù)中心內(nèi),虛擬機(jī)的MAC地址數(shù)量可能以千計。
如果二層互聯(lián)不能解決問題,另一種思路是在匯聚交換機(jī)和接入交換機(jī)上設(shè)置IP網(wǎng)關(guān),通過三層路由將所有交換機(jī)連接起來,類似的解決方案還包括將網(wǎng)關(guān)設(shè)置在核心設(shè)備上,通過核心設(shè)備集中互聯(lián)。這個做法以前也許勉強可行,但在虛擬化環(huán)境中,二層網(wǎng)絡(luò)是虛擬機(jī)遷移的基礎(chǔ)。虛擬化的最大特點是可以將業(yè)務(wù)動態(tài)部署到數(shù)據(jù)中心的任何計算資源上,如果這些計算資源(也就是服務(wù)器)被過多的三層網(wǎng)關(guān)隔離開來,也就失去了虛擬化的優(yōu)勢。
同時,采用三層接入設(shè)備會產(chǎn)生大量的三層網(wǎng)關(guān)以及無數(shù)個讓網(wǎng)管人員抓狂的地址段。動態(tài)路由協(xié)議的行為往往難以預(yù)測,在重要數(shù)據(jù)中心,為了保證網(wǎng)絡(luò)行為的可控性,每臺交換機(jī)的路由策略都要經(jīng)過仔細(xì)琢磨,這個工作量過于龐大;而如果采用靜態(tài)路由,一旦后期需要改動某個地址段的范圍,可能需要改寫一大段接入換機(jī)的路由表,更不用提相關(guān)訪問控制策略的變動。
至此,我們走進(jìn)了死胡同,虛擬化的應(yīng)用要求基礎(chǔ)網(wǎng)絡(luò)在擴(kuò)展時保持一個完整的二層環(huán)境,而隨之而來的STP和地址空間問題又成為繞不開的坎,在接受二層環(huán)境的同時,我們基本上也就同一大堆時髦的字眼say byebye了,這些字眼包括但不僅限于“動態(tài)擴(kuò)展”、“多路徑”、“快速收斂”、“層次化尋址”等等,仰望IP路由,二層網(wǎng)絡(luò)就好象一個生活在原始社會的苦行僧,忍受著種種的考驗,傳統(tǒng)網(wǎng)絡(luò)在支持虛擬化數(shù)據(jù)中心擴(kuò)張時已經(jīng)越來越吃力。
為了改變這種尷尬的局面,在燒掉大把銀子之后,Cisco的FabricPath終于閃亮登場了!
目標(biāo)
簡單說,F(xiàn)abricPath是Cisco Nexus交換機(jī)上的一項技術(shù)特性,其目標(biāo)是在保證二層環(huán)境的前提下,修復(fù)前文所說的缺陷,這個技術(shù)需要做到以下幾點:
實現(xiàn)兩點間多條路徑同時轉(zhuǎn)發(fā)流量EMCP(Equal Cost Multi Pathing);
類似IP網(wǎng)絡(luò)的平滑擴(kuò)展;
快速收斂;
防止廣播風(fēng)暴;
保持原有二層網(wǎng)絡(luò)配置的簡潔性
更準(zhǔn)確地說,我們要擺脫傳統(tǒng)二層“交換”的弊端,在二層環(huán)境中實現(xiàn)類似三層IP的“路由”行為。
二、FabricPath:從“交換”到“路由”
L2不給力的原因
我們知道FabricPath的目標(biāo)是為傳統(tǒng)二層環(huán)境設(shè)計一個增強型方案,以屏蔽原來的缺陷,實現(xiàn)對數(shù)據(jù)幀的“路由”轉(zhuǎn)發(fā)。要明白FabricPath是怎么做到這點的,首先要看看layer 2這些不給力的毛病到底是怎么出來的?
傳統(tǒng)二層以太網(wǎng)環(huán)境中的數(shù)據(jù)轉(zhuǎn)發(fā)是非常簡單的,一臺二層交換機(jī)一輩子干的活可以用以下幾句話概括:
1)收到數(shù)據(jù)幀–>2)查看目的地址–>3)查看MAC地址表–>4)將數(shù)據(jù)幀從對應(yīng)端口送出去
偶爾,當(dāng)這個流程進(jìn)行到第三步時,交換機(jī)會發(fā)現(xiàn)目的地址不在自己的MAC地址表中,它會怎么做呢?這臺茫然的交換機(jī)就會將這個數(shù)據(jù)幀從所有的端口廣播出去!沒錯,是整個幀從所有端口發(fā)送出去,希望其他交換機(jī)能知道正確目的地。且不說,這個方式在今天看來是多沒有效率,當(dāng)設(shè)備之間存在環(huán)路時,這種幀會被無盡地轉(zhuǎn)發(fā)下去,最終形成廣播風(fēng)暴。
為了解決這個問題,交換機(jī)廠商引入了STP。STP的機(jī)制也極其簡單,就是通過阻斷二層端口來防止環(huán)路,并阻止數(shù)據(jù)幀從其接收到的端口再轉(zhuǎn)發(fā)出去。
廣播幀在任意節(jié)點只會被轉(zhuǎn)發(fā)一次,避免了被永遠(yuǎn)轉(zhuǎn)發(fā)下去。但如前所述,運行STP的代價是非常昂貴的,接入設(shè)備只有一條上聯(lián)鏈路沒被block,而且,在復(fù)雜的網(wǎng)絡(luò)連接中,控制STP的行為變得很困難,一旦出現(xiàn)震蕩,其收斂效率也非常低下。
另一方面,二層交換機(jī)通過學(xué)習(xí)接收到的數(shù)據(jù)幀的源地址建立MAC地址表,所有接收到的數(shù)據(jù)幀源地址都會被放進(jìn)MAC地址表中,導(dǎo)致一臺交換機(jī)可能學(xué)習(xí)到整個網(wǎng)段內(nèi)的所有二層地址,就算它大部分時間只跟其中的一小部分有聯(lián)系。
由此可見,今天的二層網(wǎng)絡(luò)過于簡單,交換機(jī)只會學(xué)習(xí)網(wǎng)絡(luò)地址,不會基于學(xué)到的地址規(guī)劃出一套轉(zhuǎn)發(fā)數(shù)據(jù)的最優(yōu)方案,它的問題類似于只有一個數(shù)據(jù)平面,沒有控制平面的概念,這就導(dǎo)致二層交換機(jī)不可能有效地進(jìn)行“路由”,從而引入了STP等一系列問題。
- 第 1 頁:Cisco最后的王牌—FabricPath(1)
- 第 2 頁:FabricPath的實現(xiàn):新的控制平面#
- 第 3 頁:結(jié)語#
本文導(dǎo)航
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%
相關(guān)閱讀:
- [通信設(shè)計應(yīng)用] Cisco多信道STM-1模塊功能試驗 2009-08-20
( 發(fā)表人:簡單幸福 )