初学者的MSP网络拓扑

對於管理服務提供商(MSP),構建高性能和可擴展的網絡是成功的基石。在之前的一篇博客文章中,我們介紹了基本的網絡拓撲類型,而在這篇文章中,我們將更深入地研究服務提供商喜愛的更複雜的網絡拓撲類型。閱讀這篇博客文章,了解哪種拓撲是管理服務提供商數據中心的最佳網絡拓撲,以及為什麼。

傳統的三層階層網絡

在軟件定義網絡變得普遍之前,數據中心的網絡是基於分層樹狀網絡拓撲的。該拓撲分為三個主要層次:核心層、匯聚或分發層和訪問層。在這種拓撲中,服務器連接到訪問層的交換機。邊緣路由器連接到核心,以提供對/來自廣域網(WAN)和互聯網的訪問。這些路由器位於下面方案中的核心和互聯網之間。

就OSI(開放式系統互連)模型而言,該模型將網絡劃分為數據鏈路層(L2)和網絡層(L3)等等,訪問-匯聚-核心網絡拓撲跨越了多個層次,正如圖中所示。

讓我們依次查看這三層。

核心層

網路核心(也稱為核心網路)是整個網路的中心組件。主要節點與核心相連。核心網路通常基於網狀拓撲結構,其中所有節點都與核心內的其他節點相連(對於完全網狀拓撲類型)。網路核心中的交換機和路由器通過高速連接(也稱為骨幹連接)互相連接。由於路由器在網路核心中使用,因此核心層使用L3流量運作。

分發/聚合層

這是用於將三層網路拓撲結構的底層(即操作在L2上的接入層)的上行連接匯總到核心網路層(通常在L3上運作)的中間層,方法是使用較高帶寬的連接。分發層結合了大量低速端口和少量高速主幹端口。在從接入層傳輸數據時,路由開始在此網路拓撲的分發/聚合層上進行。防火牆、負載平衡和其他安全配置設置在聚合層上。聚合/分發層用於減少和簡化數據中心的布線方案,以便更方便地管理。安裝在聚合層上的交換機必須支援在其內存中存儲更多的MAC地址。而接入層操作L2流量時,分發層操作L2和L3流量。

接入層

這一層由在 L2 上運作的交換機組成。伺服器和工作站連接到存取層交換機。通常使用 VLAN(虛擬區域網路)來分隔 L2 廣播域,以減少廣播流量並提高安全性。

為了避免瓶頸,靠近網絡核心的連接使用較粗的鏈路。例如,伺服器通過 10-Gbit/s 網絡接口連接到存取交換機,存取交換機通過 10-Gbit/s 接口連接到聚合交換機,聚合層的交換機/路由器通過 100-Gbit/s 鏈路連接到網絡核心的交換機/路由器。在這種情況下,可以使用鏈路聚合來增加帶寬和冗餘性。所有來自伺服器的流量都被轉移到上行鏈路。這個網絡拓撲的層次結構頂部有一組智能網絡設備,被暱稱為“神盒”,負責路由和所有其他服務。層次化的網絡拓撲允許您創建模塊化網絡。

在前面圖表中看到的網絡拓撲中,一個鏈路的故障導致該網絡段的故障。出於這個原因,對於這種類型的網絡拓撲(參見下圖),在每個網絡層上都使用了預留通道和冗餘。一個設備或鏈路的故障會導致性能下降,但網絡仍然可以工作。這種冗餘的網絡拓撲通常需要 STP(生成樹協議)。

維護。 如果您斷開這個 3 層網絡拓撲類型頂部的一些網絡設備來更新軟件或執行其他維護任務,網絡性能會下降。一些服務可能暫時不可用。

可擴展性。 每年伺服器上運行的服務數量都在增加,流量量也相應增加。這種情況需要在MSP網絡中升級和增加網絡帶寬。在傳統數據中心中增加網絡帶寬通常需要以下步驟:

  • 增加鏈路聚合(LAG)連接
  • 購買網絡卡
  • 如果沒有可用的插槽安裝網絡卡,則購買新的伺服器或相關設備

如果需要將新的伺服器機架(機架櫃)作為數據中心的新模塊添加,則可以將網絡帶寬增加到此機架及其安裝的伺服器。這種類型的網絡拓撲不能確保高水平的鏈路保留和冗餘,這是由於L2協議功能(例如STP和MSTP(多重生成樹協議))。

經典的三層網路拓撲在數據中心中可以與端行和機架頂部設計相結合。機架頂部連接方案現在更受歡迎。此名稱之所以使用是因為伺服器和交換機連接到每個機架上的主交換機。機架頂部交換機(ToR交換機)連接到MSP網路中較高層次的交換機/路由器。ToR交換機與用戶邊緣交換機不同,具有多個額外的高速上行端口(例如10-Gbit/s端口)和大量連接伺服器的端口。ToR交換機成對安裝以實現冗餘性並啟用交換機維護。此ToR連接方案的優點是在機架內和機架之間連接設備時具有更小的電纜長度。多層次分層網路拓撲的訪問交換機通常用作ToR交換機。

流量方向

先前所述的缺點並不太嚴重,只要進行適當的管理,數據中心網絡就可以成功運作。在網絡的一部分將L2更改為L3有助於解決一系列問題。還有另一個特性與數據中心的演變以及今天應用程序運行方式的不同有關。在2000年代,應用程序是使用集中式架構創建的,客戶端/服務器架構的應用程序主要是單片式。這意味著應用程序的組件可以位於單個服務器上。因此,在我們的圖表中,用戶請求從網絡頂部發送,應用程序生成的請求從底部服務器層返回到網絡頂部。用戶請求在單個主機上處理。主機之間的水平(東西向)流量很少,而南北向流量則居於主導地位。用於數據中心中MSP網絡的分層多層傳統網絡拓撲滿足這些要求。然而,隨著時間的推移,開發應用程序時新的架構受到青睞。

N-tier layered architecture. Application components are distributed across multiple tiers, for example, the logic tier, the presentation tier, and the data tier. Web applications that have multiple components require these components to run on different servers, for example, a web server, application server, and database server. Application components running on multiple servers interact with each other over a network.

微服務架構 假定應用程序的組件(服務)在相互連接的獨立邏輯隔離容器中運行,這些容器通過網絡互連。 容器可以在集群中的不同主機上運行。該架構具有高度可擴展性,現今在雲端廣泛使用。

資料中心現在運行著大數據、大型數據庫、分析、上下文廣告、基於人工智慧的應用程序以及其他需要與多個伺服器、存儲陣列、虛擬機器或容器互連的軟件。應用程序組件分佈在數據中心的多個伺服器或虛擬機器上。

因此,MSP網路中的東西向流量高於南北向流量。數據中心網路的內部流量(數據中心內部流量)高於向數據中心發送請求的外部用戶的流量。不要忘記在數據中心使用網路進行的存儲系統之間的內部流量、數據庫複製、數據備份和其他服務活動之間的內部流量。

在下面的圖表中,您可以看到過去幾年來數據中心內MSP網路中增長的內部流量的圖形表示。趨勢表明,數據中心內部流量增長超過了入站/出站流量。

使用傳統分層三層網路拓撲結構構建的傳統網路雖然可靠,但並不適應側向流量的最合理方式。這是由於對L2網路和南北向流量的強調。

閉網路拓撲

一開始,Clos 網路是由 Edson Erwin 在 1938 年發明的。在 1953 年,Charles Clos 決定在電話系統中使用非阻塞式交換網路,以比交叉交換通信方案更合理地利用通信。對於具有較少互連、輸入和輸出的陣列來說,連接方案乍看之下似乎很困難。然而,由於根據公式:6n^(3/2)-3n,連接點的數量較少,Clos 網路的複雜程度較低。從 36 個連接端點開始,這一事實變得清楚。

如果m是輸入開關的數量,n是輸出開關的數量,那麼根據公式計算 Clos 網路的阻塞特性。根據 Clos 定理,如果第二階段開關的數量m ≥ 2n−1,則 Clos 網路是嚴格非阻塞的。

阻塞網路是一種無法找到從空閒輸入端口到空閒輸出端口的通信路徑的網路。

非阻塞網路是一種始終存在連接任何輸入和輸出端口的路徑的網路。非阻塞網路通過添加額外的交換階段來創建。

可重排非阻塞網路是一種可以重新排列所有可能的連接所有輸入和輸出端口的路徑的網路。

在1990年代末期,隨著電信技術和電腦網路的演進,Clos網路的概念再次變得相關。網路結構中所有節點需要彼此通信,並且盡可能地不使用全網格拓撲,其中所有設備都互相連接。添加了一個新的通信層,用於連接網路設備。因此,Clos網路概念以一種新的形式復活了。在下圖中,您可以看到典型的三層Clos網路方案。

讓我們將Clos網路的視圖修改為更方便使用的廣泛使用的Leaf-Spine視圖,通過將方案的左側和右側折疊起來。這種網路拓撲被稱為Leaf-Spine、Folded Clos和三級Clos網路(見下圖)。

脊椎層。脊椎交換機用於在全網格網路拓撲中連接所有葉子交換機。脊椎層在某種程度上取代了傳統的三層分層網路拓撲中使用的匯聚層。但是脊椎層不是匯聚層的直接等效物。脊椎層的主要任務是快速從一個葉子傳輸數據到另一個葉子。端點設備不連接到脊椎交換機。

葉層。在這個模型中,數據中心中的服務器或其他端點設備連接到葉子。所有葉子都連接到所有脊椎。結果,所有服務器之間有高數量的等帶寬網路連接。脊椎和葉子之間存在L3連接(OSI模型中的L3)。

在网络中从源到目的地传输流量时,跳数相同(例如,在下图所示的两层叶脊网络中,任何服务器之间传输数据需要三个跳数)。延迟可预测且较低。网络容量也增加了,因为现在不需要使用STP。当STP用于交换机之间的冗余连接时,一次只能激活一个链接。

在叶脊网络拓扑中,可以使用等价多径(ECMP)路由协议来负载均衡流量并防止网络环路(用于L3网络连接)。也可以使用BGP、OSPF、EIGRP、ISIS协议。

这个网络概念也被称为多层脂肪树网络拓扑。其思想是避免在树的上层(靠近树根)出现瓶颈,并添加额外的链接以增加这些段的带宽。因此,向树根方向增加了链接容量。脂肪树是Clos网络的特例。将三层Clos网络折叠成两层叶脊网络后。可以使用叶交换机或叶边交换机/路由器访问外部网络和其他数据中心。

叶脊网络拓扑的优点

叶脊网络拓扑相对于访问-聚合-核心网络拓扑提供了一系列优势。这一系列优势是在数据中心中使用叶脊网络拓扑类型的原因。

優化連接。 在網絡設備之間具有高帶寬的連接對東西向流量是最佳的。沒有未使用的連接(因為使用 L3 而不是 L2)。建議使用 ECMP 以實現高效率,STP 則不是必要的。

可靠性。 一個設備的失效或一個連接的斷開不會導致顯著的負面結果和不利影響。如果作為葉子交換機的 ToR 交換機失敗,則相應的機架受到影響。如果一個樞紐交換機失敗,則網絡帶寬會下降,但與傳統的三層分層網絡拓撲相比,下降不明顯。在樞紐-葉子拓撲中,帶寬下降是 1/n,其中 n 是樞紐的數量。在這種情況下,分層拓撲的帶寬下降是 50%

高可擴展性。 您可以添加新的葉子,直到樞紐上有空閒端口。添加新的樞紐允許您增加葉子的上行連接。添加邊緣交換機/路由器以增加與外部網絡的帶寬連接。增加帶寬並連接更多服務器以用於樹層分層網絡拓撲的傳統方法是添加具有更多端口的網絡卡、具有更快網絡接口的網絡設備以及更強大的硬件。這種傳統方法稱為擴展 垂直可擴展性

在數據中心和 MSP 網絡中使用葉子-樞紐網絡拓撲時,可以添加額外的樞紐層。這種方法稱為水平可擴展性擴展化。添加一個典型的網絡設備,如交換機/路由器,可以以線性方式增加可擴展性。

維護。 您可以輕鬆地將脊椎從網絡中斷開以進行維護或更換。與神盒相比,脊椎上的維護任務並不危險,因為脊椎上沒有智能功能,在斷開後帶寬減少是最小的。

多層 Clos 網絡

在前一節中,我解釋了具有輸入開關、中間開關和輸出開關階段的三階段 Clos 網絡。由於輸入和輸出階段上的設備用於接收/發送數據,可以通過使用由兩層葉脊網絡拓撲組成的中間線將網絡方案折疊。您可以添加更多階段並構建多層 Clos 網絡以將更多網絡設備連接到此網絡。在這種情況下,您有五個階段:輸入開關、中間開關 1、中間開關 2、中間開關 3、輸出開關。

在下圖中,您可以看到重新排列藍色和綠色區塊後五階段非阻塞 Clos 網絡的初始方案。還有折疊的葉脊視圖或肥樹 (4,3) 視圖 (因為有 4 個脊椎開關和 3 個葉脊階段),但讓我們一步步看看如何將設備連接到 5 階段 Clos 網絡。具有超過 5 個階段的 Clos 網絡拓撲類型不常見且不用於實踐,因為連接數量太大。

將五階段 Clos 網路的初始配置順時針旋轉 90 度後,您將得到傳統視圖,其中包括輸入開關、輸出開關和三個中間開關階段。讓我們通過中間開關在方案中心畫出折疊線,以製作五階段 Clos 網路的折疊視圖。

折疊方案後,您將獲得此類網路拓撲的折疊視圖或葉脊視圖(見下圖)。有 4 個單獨的群組充當交付點(POD)。POD 是構建數據中心的通用單元。POD 連接到第一級脊椎。如果您需要擴展數據中心,或添加更多服務器/網絡設備,則添加新的 POD 並將其連接到網絡結構。一個 POD 的脊椎連接到其他 POD 的脊椎通過第二級脊椎。同時,不是所有的 L1 脊椎都連接到所有的 L2 脊椎,它們是由平面分開的。

在以下方案中有兩個平面 – 平面 0 和平面 1。由於脊椎端口有限,所以採用此概念並創建完全連接的網絡拓撲在這種情況下是不可能的。在下圖中,每個脊椎的端口數限制為 4 個。根據主要思想,非阻塞 Clos 網絡是基於相同的元素(如下所示的 4 端口開關)。

乍一看,您可能會對 Clos、折疊 Clos、葉脊和胖樹等術語感到困惑。讓我澄清這些術語。

ClosClos 網絡 是涵蓋 Clos 網絡拓撲類型的理論基礎的術語。

折疊式Clos是Clos網路的一種更方便的表示形式,其中輸入和輸出具有相同的角色並且位於同一位置。

葉脊是一種基於Clos網路方案的網路拓撲,在實際中被用於數據中心建立網路,包括MSP網路。

肥樹通常被稱為Clos網路的一種變體。這個術語最令人困惑,因為一些文章將肥樹提及為經典的接入-匯聚-核心網路。我參考RFC 7938文件,指出肥樹是基於折疊式Clos網路拓撲。

計算

您可以使用公式計算所需的核心交換機數量、邊緣交換機數量、總交換機數量,以及所選配置網路可連接的主機總數,其中:

k is the number of ports in the switch

L is the number of levels in the leaf-spine (fat tree) network topology

在建立網路之前計算的主要參數是支援的主機數量。肥樹配置可寫為FT(k, L)。例如,FT(32,3)是一個三層肥樹網路,具有32端口交換機。您可以使用這個免費計算器計算Clos網路,同時為所選配置生成可視化方案。

你可以計算,如果你的脂肪樹網絡方案有2級和每個交換機8個端口,那麼你可以連接32個主機到網絡。如果你增加每個交換機的端口數量,支持的主機數量增加到512。正如你所看到的,連接的主機數量取決於每個交換機上的端口數量。如果你保持脂肪樹在2級(3階段的Clos網絡)並增加每個交換機的端口數量,則支架數量將大幅增加。你可以通過將脂肪樹添加一級來解決此問題。對於三級脂肪樹,如果每個交換機的端口數量為8,則可以連接128個主機。

如果你將每個交換機的端口數量增加到32,則可以使用此網絡拓撲連接8192個主機。對於5階段的Clos網絡,此數字比3階段的Clos網絡多16倍。在計劃數據中心中的服務器和網絡設備的安裝方案時,請牢記伺服器機架的限制。

奇數階段用於構建非阻塞的Clos網絡(3,5,7等)。2級Clos網絡不能提供非阻塞連接和交換機之間的多個連接。

在下圖中,你可以看到在兩級Clos網絡的情況下,只有一個傳輸路徑可以連接Server 1和Server 2。只有1/4的端口是連接的,其他端口沒有連接,它們會阻礙你。

超訂比是從較低層到較高層的方向的輸入帶寬與輸出帶寬的比率。超訂比通常從2到4不等。

一個交換機有48個10-Gbit端口和4個40-Gbit上行端口。服務器的下行總帶寬是48×10=480 Gbit/s。上行總速度為4×40=160 Gbit/s。超額訂閱比例為480/160=4。

如果交換機的所有下行和上行端口的總帶寬速度相等,則該交換機不會超額訂閱,在這種情況下不會有瓶頸。1:1的超額訂閱比例是理想情況。在購買具有適當速度和端口數量的交換機之前,估算不同方向的流量。

超額訂閱比率高於1的交換機通常用於葉-脊網絡拓撲結構的葉級別。脊部階段應使用無超額訂閱的交換機。在葉-脊網絡拓撲類型中,葉級別上的交換機通常用作ToR交換機。但是,也可以將葉交換機安裝為行尾交換機。

主要差異

在構建網絡時,某些決策會影響網絡的佈局。以下是一些影響網絡功能的二者選一的決策。

機架頂部 vs 行尾

機架頂部(ToR)網絡連接方案在數據中心中,每個機架安裝了一個或多個交換機。使用短距離的連接線將機架頂部交換機與機架內的其他網絡設備和服務器相連。ToR交換機通常具有與更高級別交換機/路由器的高速上行連接,可以使用光纖電纜進行連接。其優勢在於,當將此連接方案用於MSP網絡時,您無需在數據中心的每個機架中安裝厚重的電纜束。使用ToR方案時,數據中心中的電纜使用更加合理。在這種情況下,您在電纜布線上的花費更少,並且擁有更好的電纜管理。您可以將每個機架視為單個模塊進行管理,而不會影響數據中心內的其他機架,因為僅影響一個機架中的服務器。儘管方案名稱如此,您仍然可以將交換機安裝在每個機架的中間或底部。

行尾(EoR)網絡連接方案是當機架行尾的服務器機架包含網絡設備時。該設備包括一個常見的網絡交換機,用於連接該行中所有機架的所有服務器和其他設備。將安裝在EoR服務器機架中的網絡設備的電纜通過安裝在每個機架中的補丁面板連接到該行中所有機架的設備。因此,長電纜用於連接該行中所有網絡設備。如果使用了冗餘的網絡連接,則電纜的數量也會增加。厚重的電纜束可能會阻擋設備的空氣進入。

伺服器機架通常位於數據中心中並排放置。一排可以包含10或12個機架,例如。整排機架在數據中心使用EoR連接方案的MSP網絡時被視為單一管理單元。在這種情況下採用每行管理模式。在EoR網絡連接模型中需要的個別交換器較少。當需要進行維護或升級交換器時,靈活性較低,因為斷開EoR交換器時會影響到更多設備。儘管名為如此,具有公共交換器(交換器)的機架可以放置在排中間。

第2層與第3層連接

在網絡中決定連接的問題是一個涉及可靠性、速度和費用的計算,以及正在創建的拓撲結構。

例如,有三層訪問-匯聚-核心網絡拓撲和葉-脊椎拓撲的網絡段。在這裡,流量是在OSI模型L2和L3上傳輸的。在階層式的三層網絡中,訪問層在L2上運行,分佈/匯聚層聚合L2鏈路並提供L3路由,核心網絡層在OSI模型的第三層上執行路由。多層葉-脊椎拓撲的網絡可以通過使用帶VLAN的L2和帶IP路由和子網的L3來配置。

L2網絡設備比L3網絡設備更實惠,但在使用L2網絡連接數據中心的MSP網絡中連接網絡設備時存在一些缺點。VLAN通常用於在同一物理環境中邏輯上隔離網絡。VLAN的最大數量為4095(減去一些保留的VLAN,如0、4095、1002-1005)。

另一個缺點,如前所述,是在L2上使用STP時無法使用冗餘連結。這是因為同時只能有一個連結是活動的,而所有連結的可用帶寬都沒有被利用。當L2域具有STP時,問題由於不恰當的布線和人為錯誤而引起的機率增加,並且故障排除變得困難。

通過L3網絡配置,工程師可以改善MSP網絡和數據中心網絡的穩定性和可擴展性。

以下網絡協議幫助您管理L3網絡並路由流量。

BGP(邊界閘道協議)是一種動態路由協議,被廣泛使用,被許多具有大規模數據中心的組織視為標準。BGP是一個高度可擴展、可擴展和高效的協議。

ECMP(等成本多路徑路由)是一種網絡路由技術,用於通過第三層OSI模型上的度量來分發流量。使用路由協議的ECMP用於大型網絡的負載平衡。大多數路由協議,包括BGP、EIGRP、IS-IS、OSPF,都支持ECMP技術。

始終嘗試使用更先進的網絡協議。但請記住,網絡中使用的協議越少,網絡管理就越方便。

NV和SDN的網絡拓撲

除了硬件虛擬化和使用虛擬機器之外,以應用為中心的網絡虛擬化也變得流行起來。像 VMware NSX、OpenStack 網絡和 Cisco ASI 這樣的網絡虛擬化(NV)解決方案密集地使用物理網絡中的東西流量,而葉脊網絡拓撲結構因此而適合於網絡虛擬化解決方案。閱讀有關 VMware NSX 的部落格文章以了解更多有關網絡虛擬化的信息。

軟件定義網絡(SDN)用於虛擬化網絡,以實現有效的資源利用、靈活性和集中式管理。這是在使用與網絡相連的虛擬機器的虛擬化數據中心中的最佳解決方案。虛擬機器可以在服務器之間遷移,從而在數據中心內創建東西流量。SDN 在 MSP 提供 IaaS(基礎設施即服務)的 MSP 網絡中被廣泛使用。

在使用底層的葉脊網絡拓撲結構、動態路由、固定的跳數、低可預測的延遲和優化數據中心中的服務器到服務器通信的東西流量時,配置軟件定義網絡是有效的。

VXLAN

VXLAN(Virtual eXtensible Local Area Network)是在覆蓋網絡中代替VLAN使用的改進網絡協議。通過使用基礎L3網絡(L3網絡底層)創建L2隧道,以提供L2網絡連接,而無需傳統的VLAN限制。使用VXLAN,您可以在L3網絡上配置L2網絡。虛擬拓撲可能與基礎網絡的物理拓撲不同。

VXLAN帧通過使用MAC-in-UDP封裝方案封裝到IP封包中。VNI是VLAN ID的等效物。VNI的最大數量是2^24,即約1600萬。VXLAN用於在地理拉伸環境中創建L2網絡,例如,當您需要在兩個地理分佈的數據中心之間創建一個網絡時。

使用VXLAN和網絡虛擬化有助於優化ToR交換機的MAC地址表的大小。這是因為使用VXLAN通過L2覆蓋網絡傳輸的VM和相關L2流量所使用的MAC地址。它們不會使物理交換機的MAC地址表超載。物理交換機的MAC地址表不會超過交換機的最大可用表容量。

結論

傳統上,資料中心的網路是使用經典的三層訪問-匯聚-核心拓撲結構來建構的。考慮到不斷發展的現代客戶端-服務器和分佈式應用程序、微服務以及其他在MSP網絡內產生東西向流量的軟件,基於Clos網絡概念的葉-脊構架網絡拓撲在現代資料中心中得到了青睞,並且是比較常見的網絡拓撲之一。葉-脊構架網絡拓撲是大型資料中心的最佳網絡拓撲,因為這種拓撲結構非常可靠且可擴展。在資料中心安裝網絡之前,要進行計算,並估算產生的流量和工作負載。在網絡中考慮服務流量,如備份和複製流量。

NAKIVO備份與複製是功能強大的虛擬機備份軟件,可保護VMware Cloud Director工作負載、VMware VM、Hyper-V VM以及物理Linux和Windows機器、Oracle數據庫。提供基礎設施即服務(IaaS)、備份即服務(BaaS)和災難恢復即服務(DRaaS)的托管服務提供商可以在多租戶模式下使用安裝了NAKIVO備份與複製的方案。下載支持多租戶安裝模式的NAKIVO備份與複製的免費試用版。

Source:
https://www.nakivo.com/blog/msp-network-topology-for-beginners/