【網絡】葉脊(Spine-Leaf)網絡拓撲下全三層網絡設計與實踐(一) - 葉脊網絡架構簡介

1.  葉脊網絡架構簡介

天地萬物,應運而生。傳統的三層網絡架構,在發展了多年後,終於也命數將盡了,替代它的,將是葉脊網絡架構。究其原因,是因爲傳統三層網絡架構自身存在一些無法突破的限制與弊端,在當今雲計算風起雲湧,虛擬化如火如荼,數據中心越來越大,網絡規模需要無限擴展的時代,葉脊網絡架構應運而生。

1.1 傳統三層網絡的弊端

如上圖是傳統三成網絡架構的典型拓撲結構:

  1. 接入層:接入交換機通常位於機架頂部,所以它們也被稱爲ToR(Top of Rack)交換機,它們物理連接服務器。
  2. 匯聚層:匯聚交換機連接同一個二層網絡(VLAN)下的接入交換機,同時提供其他的服務,例如防火牆,SSL offload,入侵檢測,網絡分析等, 它可以是二層交換機也可以是三層交換機。
  3. 核心層: 核心交換機爲進出數據中心的包提供高速的轉發,爲多個二層局域網(VLAN)提供連接性,核心交換機爲通常爲整個網絡提供一個彈性的三層網絡。

在這種網絡架構下,存在如下的一些弊端:

  1. 帶寬的浪費:爲了防止環路,匯聚層和接入層之間通常會運行STP協議,使得接入交換機的上聯鏈路中實際承載流量的只有一條,而其他上行鏈路將被阻塞(如圖中虛線所示),造成了帶寬的浪費;
  2. 故障域較大:STP協議由於其本身的算法,在網絡拓撲發生變更時需要重新收斂,容易發生故障,從而影響整個VLAN的網絡;
  3. 難以適應超大規模網絡:在雲計算領域,網絡規模擴大,數據中心也分佈在不同的地理位置,虛擬機要求能在任意地點創建,遷移,而保持其網絡屬性(IP, 網關等)保持不變,需要支持大二層網絡,在上圖的拓撲中,無法在VLAN10和VLAN20之間作上述遷移;

對於上述帶寬浪費的問題,思科提出的解決方案是vPC(virtual Port Channel)協議,可以將接入交換機的兩條上行鏈路做成一個vPC,同時承載流量,從而避免了帶寬的浪費,提升了帶寬的利用率,然而,一方面,這種方案仍然無法做到水平擴展,因爲vPC只支持最多兩個上行鏈路,上行鏈路增多時,無法線性增加帶寬;另一方面,vPC是思科的私有協議,對於廠商的依賴性強,成本上不具有優勢,下圖爲vPC的架構圖:

 

上圖的方案提高了帶寬利用率,但仍沒有解決大二層的問題,解決方案是將核心層以下的部分全部放在同一個二層網絡中,但是,同一個二層網絡中容納如此多的設備,二層網絡中的廣播風暴將隨着設備的增加而越來越嚴重,最終給交換機帶來沉重的負載,從而影響流量,下圖爲傳統網絡大二層的解決方案示意圖:

 

在過去的業務模式中,分佈式還沒有興起,一個服務通常需要訪問的資源在同一個服務器上,因此東西向流量較少,主要需要關注的是南北向流量,以一個web服務爲例,後端服務也許只位於一個服務器上,這個服務處理請求時不需要向別的服務器發起請求,在本機上就可以完成處理,處理完成後將結果返回給瀏覽器,如果訪問請求增多,則南北向流量增大,對單個服務器的運算能力也要求較大,然而東西向流量並不會變多。

然而由於技術的發展,如今的數據中心對網絡的需求早已發生了變化:

  1. 虛擬化的興起:爲了提高計算和存儲資源的利用率,如今的數據中心幾乎都會採用虛擬化技術,而虛機資源的遷移會大大增加網絡中的東西向流量;
  2. 軟件架構的解耦:當今的一個服務可能會拆分成多個服務部署在不通的虛擬機上,可能位於不通的位置,這些服務之間會頻繁的通信,會大大增加東西向流量;
  3. 分佈式應用的興起:數據和應用如今會分佈在成千上萬個服務器上,任務需要在這些服務起上進行分發,計算,彙總,返回,會大大增加東西向流量;

傳統架構下,當存在大量東西向流量時,匯聚交換機和核心交換機的壓力會大大增加,網絡規模和性能也就限制在了匯聚層和核心層。要支持大規模的網絡,就必須有性能最好,端口密度最大的匯聚層核心層設備,這樣的設備成本高,不是所有企業都買得起,且必須在建設網絡時就預先規劃好網絡規模,在網絡規模小時,會造成資源的浪費,在網絡規模繼續擴大時,擴容也比較困難,因而讓企業陷入了成本和可擴展性的兩難選擇之中。

1.2 葉脊網絡架構的優勢

 

如上圖所示爲葉脊網絡架構的簡單模型,SPINE和LEAF之間爲全網狀連接(Full Mesh),具有如下優勢:

  1. 帶寬利用率高:每個LEAF到SPINE的多條上行鏈路以負載均衡方式工作,充分的利用了帶寬;
  2. 網絡延遲可預測:在以上模型中,各LEAF之間的連通路徑的條數可確定,均只需經過一個SPINE,東西向網絡延時可預測;
  3. 可水平擴展帶寬:帶寬不足時,增加SPINE交換機數量,可水平擴展帶寬;
  4. 服務器數量水平擴展:服務器數量增加時,增加LEAF交換機,擴大數據中心規模
  5. 單個交換機要求低:南北向流量可以從LEAF節點出去,也可從SPINE節點出去,東西向流量會分佈在多條路徑上,對單個交換機的性能要求不高;
  6. 高可用性強大:傳統網絡採用STP協議,當一臺設備故障時就會重新收斂,影響網絡性能甚至發生故障,SPINE LEAF架構中一臺設備故障時,不需重新收斂,流量繼續在其他正常路徑上通過,網絡連通性不受影響,帶寬也只減少一條路徑的帶寬,性能影響微乎其微;
  7. 可擴展性好:無需提前規劃網絡規模,按需擴容,小規模啓用,大規模適用。

接下來我們可以根據交換機的端口數量和帶寬,對SPINE LEAF架構的網絡適用的規模進行簡單的估計,如下圖所示的拓撲:

估算基於以下假設:

  1. SPINE數量:16臺 
  2. 每個SPINE的下聯端口:48個 × 100G
  3. SPINE上聯端口:16個 × 100G
  4. LEAF數量:48臺
  5. 每個LEAF的下聯端口:64個 × 25G
  6. LEAF的上聯端口: 16個 × 25G

SPINE的下聯端口數量和LEAF的上聯端口數量相同,以充分利用端口,在考慮鏈路SPINE LEAF之間的帶寬全部跑滿的情況下,每個LEAF下聯的服務器數量最多爲:

16*100/25=64

即剛好等於LEAF的下聯端口數量,總共可支持的服務器數量爲:

64*48=3072

也就是說,在上述假設下,一組SPINE LEAF網絡可以支持3072臺服務器,這是相當於一箇中大型規模的數據中心,那麼如果仍有擴展的需求該怎麼辦呢?根據上述的計算,LEAF和SPINE的下聯端口都已經耗盡,在這個網絡中已無法增加SPINE,LEAF或服務器。讓我們繼續深入一下,看看Facebook的Fabric網絡架構:

在這種架構中,我們的SPINE LEAF網絡是其中的一個POD, 我們的SPINE是圖中的Fabric Switches,我們的LEAF是圖中的Rack Switches,最上面的Spine Switches把各個POD連通起來。當一個POD的容量已滿時,可以增加POD,並用SPINE將這些POD連通起來,實現了網絡的繼續擴展。除了前面描述的POD和SPINE,上圖中還有黃色的Edge Plane,這是爲數據中心提供南北向流量的模塊。它們與SPINE交換機的連接方式,與前文中簡單的的SPINE LEAF架構一樣。並且它們也是可以水平擴展的。

SPINE LEAF網絡架構只是一種網絡部署的拓撲方式,具體的實現方法與配置多種多樣,有的廠商根據這種拓撲結構定義了特定的網絡協議,如思科的Fabric Path等。接下來,筆者將要介紹的是利用SPINE LEAF網絡架構構建一個全三層的網絡的設計思路與實踐方案。

點擊進入下一節: 葉脊(Spine-Leaf)網絡拓撲下全三層網絡設計與實踐(二) - 架構設計思路 - 網絡規劃

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章