為了滿足現(xiàn)代網(wǎng)絡(luò)的需求,數(shù)據(jù)中心網(wǎng)絡(luò)必須優(yōu)先考慮最核心的功能,例如強(qiáng)大的網(wǎng)絡(luò)帶寬、高可用性、可擴(kuò)展性和安全等。? ? 在本文中,我們?nèi)姹容^了兩種數(shù)據(jù)中心網(wǎng)絡(luò)解決方案:傳統(tǒng)數(shù)據(jù)中心架構(gòu)和葉脊架構(gòu)。 ? ?
數(shù)據(jù)中心的核心
數(shù)十年來(lái),數(shù)據(jù)中心架構(gòu)一直是計(jì)算機(jī)網(wǎng)絡(luò)生態(tài)系統(tǒng)的一部分。數(shù)據(jù)中心網(wǎng)絡(luò)涵蓋計(jì)算服務(wù)、數(shù)據(jù)庫(kù)、IP 語(yǔ)音 (VoIP) 解決方案、內(nèi)容交付網(wǎng)絡(luò) (CDN) 等多種連接解決方案,是企業(yè)和服務(wù)提供商網(wǎng)絡(luò)的核心部分。 ? 數(shù)據(jù)中心網(wǎng)絡(luò)必須提供幾個(gè)關(guān)鍵功能: ?
網(wǎng)絡(luò)帶寬- 特別是滿足東西向流量的要求(數(shù)據(jù)中心中大部分流量是東西向的)。?注意:東西向流量表示數(shù)據(jù)中心內(nèi)的服務(wù)器/應(yīng)用之間的流量,而南北向流量表示出入數(shù)據(jù)中心的流量。
高可用性/彈性——數(shù)據(jù)中心的每個(gè)組件都必須具有高可用性和彈性。從本地鏈路彈性到冗余電源和流量處理器,每個(gè)組件的設(shè)計(jì)和部署都必須考慮到彈性。
可擴(kuò)展性——網(wǎng)絡(luò)本身必須能夠快速擴(kuò)展,尤其是水平擴(kuò)展。添加新的架頂式 (TOR) 交換機(jī)等操作應(yīng)該簡(jiǎn)單明了。
安全性——安全性是設(shè)計(jì)數(shù)據(jù)中心時(shí)必須考慮的因素。從物理安全到磁盤加密和協(xié)議身份驗(yàn)證,必須鎖定對(duì)數(shù)據(jù)中心網(wǎng)絡(luò)的訪問(wèn),僅限于授權(quán)人員。
傳統(tǒng)數(shù)據(jù)中心網(wǎng)絡(luò)
傳統(tǒng)數(shù)據(jù)中心網(wǎng)絡(luò)基于第二層連接,大部分使用二層交換機(jī)和至少一對(duì)三層設(shè)備,通常是路由器或防火墻。 ?
圖 1:三層架構(gòu) ? 上述架構(gòu)通常稱為三層架構(gòu)(核心層-聚合層-訪問(wèn)層)。這是目前仍在廣泛使用的首批標(biāo)準(zhǔn)架構(gòu)之一,并且仍然提供一些基本功能。 ? 該架構(gòu)的另一種變體是折疊核心設(shè)計(jì),其中核心層和分布(聚合)層合并為一個(gè): ?
圖2:折疊核心設(shè)計(jì) ? 由于網(wǎng)絡(luò)連接需求的快速發(fā)展,基于虛擬局域網(wǎng)(VLAN)標(biāo)簽對(duì)網(wǎng)絡(luò)進(jìn)行分段成為難題(有限的VLAN數(shù)量、依賴STP進(jìn)行環(huán)路保證等),此外,二層技術(shù)也給網(wǎng)絡(luò)帶來(lái)了新的挑戰(zhàn),例如二層環(huán)路、缺乏負(fù)載均衡、生成樹(shù)協(xié)議 (STP) 融合、廣播風(fēng)暴等,這些問(wèn)題很容易導(dǎo)致整個(gè)數(shù)據(jù)中心網(wǎng)絡(luò)癱瘓。 ? ?
下一代葉脊IP Fabric數(shù)據(jù)中心
基于葉脊架構(gòu)的IP Fabric數(shù)據(jù)中心已經(jīng)存在幾年了,是一種成熟且穩(wěn)定的技術(shù)。該架構(gòu)背后的主要概念是基于第三層技術(shù)提供可預(yù)測(cè)的網(wǎng)絡(luò)連接參數(shù),從而能夠避免傳統(tǒng)數(shù)據(jù)中心中的許多問(wèn)題。 ? *注:下文中的IP Fabric和Spine-Leaf架構(gòu)這兩個(gè)術(shù)語(yǔ)可以互換,這里主要指的是IP Fabric中的“葉”和“脊”拓?fù)洹?? 葉脊拓?fù)浠?Clos 網(wǎng)絡(luò)架構(gòu)(由美國(guó)工程師 Charles Clos 于 1952 年首次形式化)。其中有兩個(gè)主要層: ?
脊層(Spine layer) - 通常由至少兩個(gè)三層高吞吐量交換機(jī)組成(兩個(gè)用于冗余目的)
葉層(Leaf layer) - 通常由 N 個(gè)功能豐富的三層交換機(jī)組成,其中 N 可以是任意數(shù)字(通常是偶數(shù),也是為了冗余)。
Clos 網(wǎng)絡(luò)以及葉脊架構(gòu)的主要特征是所有Leaf都連接到所有Spine,并且Leaf之間(通常)沒(méi)有直接連接。 ?
圖3:葉脊架構(gòu) ? 基于此架構(gòu),我們可以輕松計(jì)算所需鏈接的數(shù)量: ?
S = 脊數(shù)量
L = 葉數(shù)量
CB = 葉和脊之間的電纜數(shù)量
鏈接總數(shù) = S x L x CB ? 例如: ?
S = 4,L = 8,CB = 1
鏈接總數(shù) = 32 個(gè)鏈接
目前市場(chǎng)上有很多來(lái)自不同供應(yīng)商的Spine-Leaf技術(shù),有些是專有的(例如 Cisco ACI),有些是基于標(biāo)準(zhǔn)的,例如帶有 VXLAN 封裝的 BGP EVPN。 ? 為了與行業(yè)標(biāo)準(zhǔn)保持一致,下文將使用帶有 VXLAN 封裝的 BGP EVPN 作為我們分析Spine-Leaf解決方案的依據(jù)。 ? 首先簡(jiǎn)單介紹一下前面提到的技術(shù): ?
BGP EVPN(邊界網(wǎng)關(guān)協(xié)議以太網(wǎng)虛擬專用網(wǎng)絡(luò))是一種網(wǎng)絡(luò)技術(shù)和協(xié)議套件,專為提供商和企業(yè)網(wǎng)絡(luò)中的高效且可擴(kuò)展的多點(diǎn)以太網(wǎng)服務(wù)而設(shè)計(jì)。BGP EVPN 利用邊界網(wǎng)關(guān)協(xié)議 (BGP) 作為控制平面,對(duì)MAC (media access control)地址和IP地址信息進(jìn)行分發(fā)和管理,滿足虛擬化和云化基礎(chǔ)設(shè)施的需求。BGP EVPN 的一些主要特性: ?
二層和三層多租戶支持 - BGP EVPN 旨在支持共享網(wǎng)絡(luò)基礎(chǔ)設(shè)施中的多個(gè)租戶或客戶,適合服務(wù)提供商和有不同組網(wǎng)需求的大型企業(yè)。
EVPN 多宿主是一種基于標(biāo)準(zhǔn)的專有 MC-LAG 技術(shù)變體。允許不同供應(yīng)商的設(shè)備之間的互操作性,從而形成更加多樣化和靈活的網(wǎng)絡(luò)環(huán)境。
支持二層和三層服務(wù) - BGP EVPN 能夠通告 MAC-IP NLRI(也稱為 EVPN 路由類型 2)和全子網(wǎng) NLRI(也稱為 EVPN 路由類型 5);這兩種路由類型是 EVPN 使用案例中最常見(jiàn)的。
使用路由目標(biāo) (RT) 和路由標(biāo)識(shí)符 (RD) 的概念識(shí)別、分類和路由過(guò)濾 BGP EVPN 結(jié)構(gòu),這與 MPLS (多協(xié)議標(biāo)簽交換) L3 VPN 和 L2 VPN (使用 BGP 信令)網(wǎng)絡(luò)中的概念完全相同。此特定功能允許可擴(kuò)展的單Leaf-Spine BGP (MP-BGP) 會(huì)話部署,如果想實(shí)現(xiàn)設(shè)備之間的連接,則無(wú)需配置back to back VRF(虛擬路由和轉(zhuǎn)發(fā))BGP 會(huì)話。
基于標(biāo)準(zhǔn)的互操作性 - BGP EVPN 是基于標(biāo)準(zhǔn)的,可以實(shí)現(xiàn)不同網(wǎng)絡(luò)廠商之間的互操作性。
VXLAN 封裝:BGP EVPN 通常與 VXLAN 封裝協(xié)議結(jié)合使用,在三層基礎(chǔ)設(shè)施上創(chuàng)建虛擬二層網(wǎng)絡(luò)。VXLAN 克服了傳統(tǒng) VLAN 的限制,使網(wǎng)絡(luò)設(shè)計(jì)更具可擴(kuò)展性和靈活性。VXLAN 功能包括: ?
Overlay網(wǎng)絡(luò) - 將原始數(shù)據(jù)包封裝在新的 MAC-in-IP 標(biāo)頭中,完全“隱藏”原始信息讓數(shù)據(jù)包能夠跨越公共數(shù)據(jù)中心網(wǎng)絡(luò)。
提高可擴(kuò)展性 - 與傳統(tǒng) VLAN 中的 12 位 VLAN ID 限制 (4096) 相比,VXLAN 使用24 位的 VXLAN 網(wǎng)絡(luò)標(biāo)識(shí)符 (VNI) 來(lái)擴(kuò)展 VLAN,并提供更大的地址空間(1600 萬(wàn))。這可以在大型動(dòng)態(tài)環(huán)境中實(shí)現(xiàn)更大的可擴(kuò)展性。
支持 MAC-IP 遷移 - VXLAN(與 BGP EVPN)支持?jǐn)?shù)據(jù)中心內(nèi)的實(shí)時(shí)虛擬機(jī)遷移(例如 VMWare vMotion),也可以進(jìn)行跨數(shù)據(jù)中心遷移。
基于標(biāo)準(zhǔn)的互操作性 - VXLAN(如 BGP EVPN)是基于標(biāo)準(zhǔn)的,可以實(shí)現(xiàn)不同網(wǎng)絡(luò)廠商之間的互操作性。
下圖是 VLAN 到 VNI(VXLAN 網(wǎng)絡(luò)標(biāo)識(shí)符)映射時(shí)的VXLAN 標(biāo)頭,僅供參考: ?
圖4:VXLAN網(wǎng)絡(luò)標(biāo)識(shí)映射時(shí)的VXLAN標(biāo)頭 ? 下表展示了傳統(tǒng)數(shù)據(jù)中心和 Spine-Leaf 架構(gòu)的比較: ?
表 1. 傳統(tǒng) DC 和 Spine-Leaf 比較 ? 下面我們來(lái)看看兩種架構(gòu)分別適合哪些場(chǎng)景。 ? ?
傳統(tǒng)數(shù)據(jù)中心vs Spine-Leaf IP Fabric
我們將從以下方面分別分析每種架構(gòu)的特征: ? 可擴(kuò)展性 ? 傳統(tǒng)的二層數(shù)據(jù)中心架構(gòu)在一定程度上是可擴(kuò)展的。如果是最多 100 臺(tái)服務(wù)器的情況下,它可以很好地完成它的工作。但如果超過(guò)這個(gè)數(shù)字,傳統(tǒng)數(shù)據(jù)中心就開(kāi)始力不從心,這主要是因?yàn)?MAC 地址在整個(gè)數(shù)據(jù)中心傳播。在傳統(tǒng)二層網(wǎng)絡(luò)中,如果交換機(jī)在本地配置了 VLAN,它將自動(dòng)學(xué)習(xí)該廣播域內(nèi)的所有 MAC 地址并將它們存儲(chǔ)在本地 CAM(內(nèi)容可尋址存儲(chǔ)器)表中。CAM 成本高昂,MAC 地址數(shù)量越多,需要的資源越多,成本也越高。 ?
圖 5:存儲(chǔ)所有信息的交換機(jī) CAM 表 ? 除此之外,網(wǎng)絡(luò)內(nèi)的一些 STP 事件可能會(huì)完全刷新 CAM 表,這將觸發(fā)整個(gè)信息集的完全重新學(xué)習(xí),這是一個(gè)非常消耗資源的過(guò)程。 ? 另一方面,在BGP EVPN IP Fabric中,MAC 學(xué)習(xí)是在控制平面完成的,MAC-IP NLRI 的傳播由 BGP 處理,準(zhǔn)確地說(shuō)是通過(guò) EVPN 地址族處理的。BGP 本身使用 RAM(隨機(jī)存取存儲(chǔ)器),這比 CAM 便宜得多。? ? 此外,BGP 傳播的 MAC 信息由本地交換機(jī)過(guò)濾,只將所需的 MAC 地址下載到本地交換機(jī) CAM 表中(CAM 表仍然用于 IP Fabric 設(shè)備以及本地 MAC交換)?!八璧?MAC 地址”是指本地交換機(jī)上的主機(jī)想要與之通信的 MAC 地址。 ?
圖 6:MAC 地址過(guò)濾 - 優(yōu)化 CAM 表大小 ? 事實(shí)上,Spine-Leaf IP Fabric 在其核心使用三層協(xié)議可以實(shí)現(xiàn)更高的水平擴(kuò)展。二層拓?fù)渲荒茉?STP 域允許的范圍內(nèi)擴(kuò)展。相比之下,用作 IP Fabric 構(gòu)建塊的三層協(xié)議(OSPF/IS-IS 作為底層路由,BGP 作為 Overlay層,PIM 用于 BUM 流量處理)的可擴(kuò)展性要好得多。 ? 收斂時(shí)間? ? 傳統(tǒng)數(shù)據(jù)中心網(wǎng)絡(luò)的收斂時(shí)間主要由 STP 決定。但是存在 STP“欺騙”現(xiàn)象,例如鏈路聚合和 MC-LAG/VPC,通過(guò)欺騙STP,使其認(rèn)為鏈路不受影響,不應(yīng)該發(fā)送TCN(拓?fù)渥兓ㄖ?數(shù)據(jù)包或重新計(jì)算,從而繞過(guò)STP重新收斂。 ? Spine-Leaf網(wǎng)絡(luò)的收斂時(shí)間完全不同。在Spine-Leaf層,一切都基于三層協(xié)議工作,通過(guò)使用 BFD(雙向轉(zhuǎn)發(fā)檢測(cè))協(xié)議可以將收斂時(shí)間降至 100 毫秒以下。 ?
圖7:Spine-Leaf層 ? Spine-Leaf的另一個(gè)巨大優(yōu)勢(shì)是可以將特定的Spine或Leaf與 Fabric 的其余部分完全隔離,以便在不影響流量的情況下完成一些操作任務(wù)(如升級(jí)、硬件更換等)。由于Spine-Leaf 使用 BGP 和 OSPF/IS-IS(或者在無(wú) IGP 的場(chǎng)景中使用 BGP 代替 OSPF/ISIS),因此你可以簡(jiǎn)單地操縱 BGP 繞過(guò)Leaf節(jié)點(diǎn),也可以使用 IS-IS overload-bit/OSPF max -metric LSA 功能來(lái)實(shí)現(xiàn)相同的結(jié)果,并在計(jì)劃工作期間將Leaf從轉(zhuǎn)發(fā)路徑中移除。 ? 多租戶 ? BGP EVPN VXLAN IP Fabric 能夠提供三層租戶,而傳統(tǒng)數(shù)據(jù)中心純粹基于二層,并且只能提供 VLAN 分段。 ?
圖 8:傳統(tǒng) DC - L2 中的多租戶支持,僅基于 VLAN ? 第三層多租戶的工作原理與 MPLS 第三層 VPN 相同,即通過(guò)為給定租戶構(gòu)建和傳播專用路由表信息,從而形成新的 VPNv4/v6 唯一前綴,并通過(guò)使用其配置的擴(kuò)展社區(qū)路由目標(biāo)來(lái)控制傳播。 ?
圖 9:Spine-Leaf 中的多租戶支持 ? * 注意:BGP 會(huì)話位于Spine和Leaf之間,該圖表示從一個(gè) VTEP 到另一個(gè) VTEP 的 BGP 路由 NLRI 傳播,但這是通過(guò)在 BGP EVPN VXLAN Fabric內(nèi)具有路由反射器功能的Spine完成的。 ? Spine-Leaf設(shè)計(jì)在這里提供了明顯的優(yōu)勢(shì),因?yàn)楝F(xiàn)在三層多租戶基本是必須的,而Spine-Leaf不必?cái)y帶額外的路由器來(lái)處理它,它們可以在 Fabric 本身內(nèi)進(jìn)行處理。 ? ECMP 路由 ? 對(duì)于傳統(tǒng)數(shù)據(jù)中心,不存在真正不同的鏈路多路徑,因?yàn)?STP 會(huì)自動(dòng)阻止兩個(gè)交換機(jī)之間的獨(dú)立冗余端口。這里所說(shuō)的獨(dú)立冗余端口是指不屬于鏈路綁定的端口。如果想實(shí)現(xiàn)冗余和彈性,可以利用鏈路綁定,但這通常不是理想的多路徑場(chǎng)景。? ? 為什么說(shuō)不行呢?因?yàn)樗蕾嚨氖莃ond的哈希算法,在許多情況下,它沒(méi)有考慮到第4層報(bào)頭信息(源/目的TCP/UDP端口)。這會(huì)導(dǎo)致該特定鍵中可用的X的單個(gè)鏈接的快速極化(過(guò)度利用)。 ? 對(duì)于 BGP EVPN VXLAN IP Fabric,使用內(nèi)部報(bào)文頭信息對(duì)冗余鏈路上的流量進(jìn)行哈希處理,通常使用以下信息:源IP、目的IP、源端口、目的端口和協(xié)議號(hào),并且由于沒(méi)有附加協(xié)議來(lái)更改鏈路,因此可以實(shí)現(xiàn)真正的 ECMP。 ? 配置復(fù)雜度 ? 在前面幾個(gè)方面都是IP Fabric占優(yōu)勢(shì),但在配置復(fù)雜度方面,情況有所不同。以Cisco Nexus NX-OS為例,讓我們看一下一個(gè)簡(jiǎn)單的 VLAN 二層服務(wù)配置在傳統(tǒng)二層交換機(jī)(左側(cè))與 Spine-Leaf交換機(jī)(右側(cè))上的情況: ?
圖 10:傳統(tǒng)二層與 Spine-Leaf服務(wù)配置 ? 差異是顯而易見(jiàn)的。 ? 傳統(tǒng)二層: ?
STP,
鏈接綁定,
VLAN。
Spine-Leaf覆蓋了以上的所有內(nèi)容并且還包括: ?
BGP(IPv4 和 L2VPN EVPN)、
VRF,
VXLAN,
組播,
BFD。
也就是說(shuō),如果你的拓?fù)浣Y(jié)構(gòu)簡(jiǎn)單且非常小(例如只有一兩個(gè)交換機(jī)),那么使用傳統(tǒng)二層架構(gòu)就夠了。但你的拓?fù)浞浅?fù)雜時(shí),還是選擇Spine-Leaf架構(gòu)更合適。而且自動(dòng)化可以幫助我們擺脫 BGP EVPN VXLAN 帶來(lái)的復(fù)雜配置。 ?
可編程性和自動(dòng)化 ? 自動(dòng)化既可以用于傳統(tǒng)數(shù)據(jù)中心技術(shù),也可以用于Spine-Leaf,它可以給兩者都帶來(lái)優(yōu)勢(shì)。然而,由于配置數(shù)量巨大且存在錯(cuò)誤風(fēng)險(xiǎn)(跨多個(gè)設(shè)備的配置項(xiàng)之間存在大量鏈接 VNI 編號(hào),很容易輸入錯(cuò)誤),因此將其用于Spine-Leaf部署更有意義。對(duì)于傳統(tǒng)數(shù)據(jù)中心,自動(dòng)化有助于處理 VLAN 管理(添加、刪除、交換等),與Spine-Leaf運(yùn)營(yíng)開(kāi)銷相比,其復(fù)雜性要低得多。 ? Spine-Leaf架構(gòu)的自動(dòng)化有一個(gè)小優(yōu)勢(shì),用于構(gòu)建此類拓?fù)涞脑O(shè)備默認(rèn)比傳統(tǒng)數(shù)據(jù)中心中使用的設(shè)備更新。這意味著它們更具可編程性,并且其中許多提供某種類型的 API 系統(tǒng)(REST、XML、NETCONF 等),這使得配置、讀取和解析設(shè)備比處理 SSH 會(huì)話和解析其未格式化輸出快得多。 ?
硬件成本 ? 功能越多,可以用它們做的事情就越多,但成本就越高。與傳統(tǒng)數(shù)據(jù)中心相比,部署Spine-Leaf數(shù)據(jù)中心的成本本質(zhì)上會(huì)更高。 ? ?
結(jié)論 ? 總之,如果你正在部署的新基礎(chǔ)設(shè)施需要一臺(tái)或兩臺(tái)以上交換機(jī)且至少采用兩層設(shè)計(jì),那么Spine-Leaf是最佳選擇。傳統(tǒng)數(shù)據(jù)中心架構(gòu)至少還會(huì)存在 5 到 10 年,因?yàn)檫^(guò)渡到Spine-Leaf等現(xiàn)代架構(gòu)還需要付出很多的時(shí)間和精力。
? 審核編輯:黃飛
?
評(píng)論
查看更多