傳統(tǒng)的三層網(wǎng)絡(luò)架構(gòu)一般分為接入層,匯聚層和核心層.
匯聚層和接入層之間是二層連接,使用生成樹(shù)協(xié)議來(lái)阻塞冗余鏈路,避免二層環(huán)路.
匯聚層和核心層之間一般采用三層連接,使用動(dòng)態(tài)路由協(xié)議,在多個(gè)冗余路徑間進(jìn)行負(fù)載均衡.
整個(gè)網(wǎng)絡(luò)帶寬有比較大的收斂比.
傳統(tǒng)的三層網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)初衷適用于東西流量、南北流量相對(duì)均衡的流量環(huán)境.
但近年來(lái),隨著企業(yè)三層軟件架構(gòu)、計(jì)算機(jī)虛擬化、私有云技術(shù)的成熟和廣泛采用,數(shù)據(jù)中心的流量發(fā)生了很大的變化.
現(xiàn)代數(shù)據(jù)中心中東西向的網(wǎng)絡(luò)流量將會(huì)遠(yuǎn)大于南北向的流量.
現(xiàn)代數(shù)據(jù)中心的流行架構(gòu)是基于CLOS架構(gòu)發(fā)展起來(lái)的,它誕生于1952年,是由 CharlesClos 提出的.
這個(gè)架構(gòu)主要描述了一種多級(jí)交換網(wǎng)絡(luò)的結(jié)構(gòu).
CLOS最大的優(yōu)點(diǎn)就是對(duì)Crossbar結(jié)構(gòu)的改進(jìn),通過(guò)Clos架構(gòu)可以提供無(wú)阻塞的網(wǎng)絡(luò).
2008年,F(xiàn)atTree拓?fù)浣Y(jié)構(gòu)是由MIT的Fares等人在改進(jìn)傳統(tǒng)樹(shù)形結(jié)構(gòu)性能的基礎(chǔ)上提出.
整個(gè)拓?fù)渚W(wǎng)絡(luò)分為三個(gè)層次:自上而下分別為邊緣層(edge)、匯聚層(aggregate)和核心層(core),其中匯聚層交換機(jī)與邊緣層交換機(jī)構(gòu)成一個(gè)pod,交換設(shè)備均采用商用交換設(shè)備.
FatTree結(jié)構(gòu)通過(guò)在核心層多條鏈路實(shí)現(xiàn)負(fù)載的及時(shí)處理,避免網(wǎng)絡(luò)熱點(diǎn);通過(guò)在pod內(nèi)合理分流,避免過(guò)載問(wèn)題.
FatTree對(duì)分帶寬隨著網(wǎng)絡(luò)規(guī)模的擴(kuò)展而增大,因此能夠?yàn)閿?shù)據(jù)中心提供高吞吐傳輸服務(wù);
不同pod之間的服務(wù)器間通信,源、目的節(jié)點(diǎn)之間具有多條并行路徑,因此網(wǎng)絡(luò)的容錯(cuò)性能良好,一般不會(huì)出現(xiàn)單點(diǎn)故障;
采用商用設(shè)備取代高性能交換設(shè)備,大幅度降低網(wǎng)絡(luò)設(shè)備開(kāi)銷;
網(wǎng)絡(luò)直徑小,能夠保證視頻、在線會(huì)與等服務(wù)對(duì)網(wǎng)絡(luò)實(shí)時(shí)性的要求;
拓?fù)浣Y(jié)構(gòu)規(guī)則、對(duì)稱,利于網(wǎng)絡(luò)布線及自動(dòng)化配置、優(yōu)化升級(jí)等.
FatTree構(gòu)建拓?fù)湟?guī)則如下:FatTree拓?fù)渲邪腜od數(shù)目為 k,每一個(gè)pod連接的sever數(shù)目為(k/2)2,
每一個(gè)pod內(nèi)的邊緣交換機(jī)及聚合交換機(jī)數(shù)量均為k/2,核心交換機(jī)數(shù)量為(K/2)^2,
網(wǎng)絡(luò)中每一個(gè)交換機(jī)的端口數(shù)量為k,網(wǎng)絡(luò)所能支持的服務(wù)器總數(shù)為K^3/4.
FatTree結(jié)構(gòu)采用水平擴(kuò)展的方式,當(dāng)拓?fù)渲兴膒od數(shù)目增加,交換機(jī)的端口數(shù)目增加時(shí),
FatTree能夠支持更多的服務(wù)器,滿足數(shù)據(jù)中心的擴(kuò)展需求,如k=48 時(shí), FatTree能夠支持的服務(wù)器數(shù)目為27648.
FatTree拓?fù)浜蛡鹘y(tǒng)拓?fù)浣M建網(wǎng)絡(luò)時(shí)的成本差異.
現(xiàn)在數(shù)據(jù)中心網(wǎng)絡(luò)一般多采用“leaf-spine架構(gòu)”,也稱為分布式核心網(wǎng)絡(luò),它及基于以上介紹的兩種技術(shù)演變而來(lái).
如上圖核心節(jié)點(diǎn)包括兩種:第一種leaf葉節(jié)點(diǎn)負(fù)責(zé)連接服務(wù)器和網(wǎng)絡(luò)設(shè)備;第二種spine針節(jié)點(diǎn)連接交換機(jī),
保證節(jié)點(diǎn)內(nèi)的任意兩個(gè)端口之間提供延遲非常低的無(wú)阻塞性能,
從而實(shí)現(xiàn)3級(jí)CLOS網(wǎng)絡(luò).通過(guò)一定的端口收斂比/超配比可以滿足數(shù)萬(wàn)臺(tái)服務(wù)器的線速轉(zhuǎn)發(fā).
現(xiàn)在流量可以分布在所有可用的鏈接上,不用擔(dān)心過(guò)載問(wèn)題。
隨著更多的連接被接入到Leaf交換設(shè)備,我們的鏈路帶寬收斂比將增加,
可以通過(guò)增加Spine和Leaf設(shè)備間的鏈路帶寬降低鏈路收斂比.
除了支持Overlay層面技術(shù)之外,Spine+Leaf網(wǎng)絡(luò)架構(gòu)的另一個(gè)好處就是,它提供了更為可靠的組網(wǎng)連接,
因?yàn)镾pine層面與Leaf層面是全交叉連接,任一層中的單交換機(jī)故障都不會(huì)影響整個(gè)網(wǎng)絡(luò)結(jié)構(gòu).
因此,任一層中的一個(gè)交換機(jī)的故障都不會(huì)使整個(gè)結(jié)構(gòu)失效.
FACEBOOK 數(shù)據(jù)中心的網(wǎng)絡(luò)架構(gòu),可以很容易的進(jìn)行橫向和縱向流量帶寬擴(kuò)展,可以同時(shí)接入海量的服務(wù)器,并進(jìn)行無(wú)阻塞線速轉(zhuǎn)發(fā).
CLOS架構(gòu)的物理網(wǎng)絡(luò)提供了足夠可用的物理通信帶寬,但如何更加高效智能的對(duì)這些資源進(jìn)行利用,
這就必須借助于下一代網(wǎng)絡(luò)—軟件定義網(wǎng)絡(luò).
SDN的三個(gè)主要特征:
1 轉(zhuǎn)控分離:網(wǎng)元的控制平面在控制器上,負(fù)責(zé)協(xié)議計(jì)算,產(chǎn)生流表;而轉(zhuǎn)發(fā)平面只在網(wǎng)絡(luò)設(shè)備上.
2 集中控制:設(shè)備網(wǎng)元通過(guò)控制器集中管理和下發(fā)流表,這樣就不需要對(duì)設(shè)備進(jìn)行逐一操作,只需要對(duì)控制器進(jìn)行配置即可.
3 開(kāi)放接口:第三方應(yīng)用只需要通過(guò)控制器提供的開(kāi)放接口,通過(guò)編程方式定義一個(gè)新的網(wǎng)絡(luò)功能,然后在控制器上運(yùn)行即可.
總的來(lái)說(shuō),隨著現(xiàn)代數(shù)據(jù)中心里虛擬化技術(shù)和軟件三層架構(gòu)的廣泛采用,數(shù)據(jù)中心內(nèi)部的流量已經(jīng)和過(guò)去發(fā)生了很大的變化,
數(shù)據(jù)中心的東西流量預(yù)測(cè)會(huì)達(dá)到80%,所以我們要思考如何對(duì)數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)進(jìn)行演進(jìn),
適應(yīng)現(xiàn)在的流量模型,提供更大的東西帶寬和最低的延遲,同時(shí)我們也要思考下一次軟件定義網(wǎng)絡(luò)所具備的特征,
包括控制層面和數(shù)據(jù)轉(zhuǎn)發(fā)層面時(shí)的分流,分布式處理,應(yīng)用流量的自動(dòng)感知及策略的自動(dòng)部署,設(shè)備的自動(dòng)化提供及運(yùn)維等.