1. 程式人生 > >大規模SDN雲計算數據中心組網的架構設計

大規模SDN雲計算數據中心組網的架構設計

out size spf flow 排隊 nta 業界 穩定性 消息處理機制

本文首先分析了在大規模SDN數據中心組網中遇到的問題。一方面Underlay底層組網規模受限於設備實際的轉發能力和端口密度,單一Spine-leaf的Fabric架構無法滿足大規模組網的需求;另一方面在SDN技術實現方案上,Openstack和SDN控制器分別有管理控制能力上的限制。

本文分別從多POD大規模數據中心的Underlay組網及路由規劃,和跨POD互聯互通SDN技術實現方案兩方面,深入到技術細節,結合網絡業務流量模型的實現,闡述了大規模SDN數據中心組網架構。
1.大規模SDN數據中心組網需解決問題分析

大規模的SDN數據中心組網需實現幾萬臺服務器作為一個資源池來承載和編排調度。綜合考慮Underlay組網以及SDN解決方案的實現,主要有以下三個方面的問題需要解決。

(一)在數據中心Underlay組網層面。雖然隨著芯片不斷的升級換代,數據中心交換機處理轉發能力極大提升,但是基於目前的數據中心交換機端口能力,同時考慮到每個機房實際機櫃的數目,以及機房間跨機房布線的難易程度,單一的Spine-leaf兩層架構組網不能滿足上萬服務器的承載需求。

例如在一個數據中心組網中,選用目前業界主流廠商成熟的16槽的核心交換機設備為Spine,100G板卡端口密度是20個/板卡,40G板卡端口密度是30個/板卡;選用配置48個萬兆6個40G的接入交換機為Leaf。Leaf到Spine全互聯,Spine核心數量滿配6臺,核心交換機各配置2塊100G板卡用於連接外部防火墻、專網或專線路由設備等。在滿足帶寬1:1收斂比的情況下,經計算單一Spine-Leaf架構最多能支持服務器的數量為5760臺,不能滿足幾萬臺服務器的承載需求。

(二)SDN控制器的管理規模和管理範圍。SDN控制器管理VSW或者硬件交換機會啟用TCP長連接,從占用CPU內存資源,數量過多的被納管設備將極大地消耗SDN控制器的資源,進而降低控制器的性能,這是SDN控制器管理規模主要限制因素。SDN控制器的管理範圍主要受控制器和被納管設備間的網絡時延限制,因此SDN控制器建議本地部署而不建議長距離異地遠程管理。目前主流設備廠家在SDN控制器3機集群的情況下,可以管理2000個VSW或者1000個硬件SDN交換機。

(三)雲操作系統Openstack的管理能力。Openstack是集中式消息處理機制,所有交互操作會到指令層面進行拆分,而指令並發處理能力低,主要以單進程隊列方式進行。比如資源池內同時對100臺虛擬機進行操作的場景,交互操作進行指令拆分處理時,因指令並發處理能力差,拆解出的大量指令不得不排隊等待執行,Openstack系統此時的交互操作響應效率和及時性都會惡化,影響用戶的實際感知。

Cell技術可以極大地提升Openstack平臺的消息處理效率,Nova可以擴展為多個Nova處理節點,每個節點有獨立的數據庫,采用數據庫同步的方式,實現多個nova節點的協同和分布式工作。但是,Openstack系統性能是和企業的實際研發能力密切相關的,目前基於開源Openstack研發的主流廠家產品,管理能力為500臺虛擬化Host(5000個VM)或者3000臺裸金屬服務器。

2.大規模SDN數據中心的多POD組網架構

由於單一Spine-Leaf結構的Underaly網絡接入承載能力,Openstack平臺的管理能力以及SDN控制器的控制範圍、控制規模的限制,因此在大規模SDN數據中心組網時,需要分解成多個單獨的Spine-Leaf模塊進行部署。模塊間通過統一的應用層借助於SDN-DCI技術進行協同,實現整個數據中心資源池的統一管理和編排。每個單獨的Spine-leaf模塊為一個單獨的Fabric,也稱為一個POD(Point of Delivery)。

POD內組網采用標準SDN數據中心架構,每個POD單獨的Openstack雲操作系統和SDN控制器。根據主流廠家的Openstack雲操作系統產品性能指標,限定POD內的裸金屬服務器場景下支持服務器數量3000臺,虛擬化服務器場景下支持服務器Host主機數量500臺。同時根據主流廠商的SDN控制器性能,限定POD內的硬件交換機數量不大於1000臺,VSW數量不大於2000臺。

多POD的大規模SDN數據中心組網,POD內Underlay組網是標準的Spine-Leaf架構。POD內SDN-GW可以和Spine合設也可以旁掛Spine部署,防火墻、負載均衡設備旁掛SDN-GW部署。

目前SDN-GW主要是兩臺堆疊部署,以便於SDN控制器的統一管理,因此如果POD規模較大,需要兩臺以上Spine時,不建議SDN-GW和Spine合設,SDN-GW應單獨旁掛部署。

為實現POD之間的流量互通,設置東西向流量匯聚核心交換機Core-Spine用於承載跨POD的東西向流量;為實現POD內到外網的互訪,設置南北向流量匯聚核心交換機Out-Spine用於承載南北向流量。東西向流量匯聚核心交換機和南北向匯聚核心交換機的數量可以根據實際的POD規模、POD數量和網絡收斂比要求靈活計算。POD內Spine到POD間匯聚核心交換機一般是跨機房互聯,為提高鏈路利用率,應采用100G光模塊互聯。

如果POD間東西向流量規劃很大,建議POD內Spine直接上連東西向匯聚交換機。此時的流量模型為,POD間互通流量從POD內Spine去到SDN-GW,SDN-GW解開原有VXLAN封裝,再將互通流量導入不同的互聯VNI後發回給Spine,最後由Spine發送到東西匯聚交換機。此流量模型下相同業務流量會穿越POD內Spine兩次,因此如果流量規劃完全在SDN-GW交換機設備的承受範圍內,建議由SDN-GW上連東西向匯聚交換機,這樣可以減少POD內Spine上的來回穿透流量。

技術分享圖片

大規模SDN數據中心多POD組網架構

POD內的SDN數據中心轉發控制技術實現方案,可以是Openflow+Netconf也可以是E×××+Netconf。虛擬機場景推薦使用表項更大更靈活的VSW作為VTEP,從而采用Openflow+Netconf方案。裸金屬服務器場景采用硬件SDN接入交換機作為VTEP,可以根據具體網絡設備能力情況靈活選擇E×××+Netconf的方案或者Openflow+Netconf的方案。

在Openflow+Netconf和E×××+Netconf混合部署的場景,需要在SDN控制器上進行兩種控制技術方案的翻譯和打通。SDN控制器和SDN-GW建立E×××鄰居,將E×××控制面的信息翻譯成Openflow發送給VSW,將VSW的相關Openflow信息翻譯成E×××控制信息發送給硬件SDN交換機。從而控制實現在VSW和硬件SDN交換機之間建立VXLAN隧道和轉發數據。

POD間互聯的方案將完全借鑒SDN-DCI的相關技術,采用E×××+VXLAN的技術。POD內的SDN-GW將同時作為DCI-GW,與不同POD的SDN-GW間建立E×××鄰居,在統一的協同層的控制下實現跨POD流量的互通。

共享分布式塊存儲、分布式文件存儲、分布式對象存儲可以單獨規劃組成存儲POD。訪問存儲POD的流量在SDN-GW解開VXLAN封裝以後走Underaly網絡路由轉發達到存儲POD。在POD內配置單獨的VRF用於隔離訪問存儲的流量和其他業務流量。存儲POD有訪問外網需求的,存儲匯聚交換機規劃上連南北匯聚交換機。FC SAN存儲建議直接部署在各POD內。

技術分享圖片

存儲POD網絡規劃圖

3.大規模SDN數據中心Underlay組網及路由規劃

多POD的大規模數據中心的Underlay組網,網絡內網絡設備數量眾多,按每POD內500臺網絡設備數量計算,10個POD組網網絡設備將超過5000臺,因此如何規劃好Underlay層面的路由配置,對大規模數據中心網絡的高性能轉發非常重要。

普通數據中心場景IGP路由主要是以OSPF路由為主,OSPF路由技術成熟,網絡建設運維人員使用經驗豐富。使用OSPF作為大規模數據中心組網的IGP路由協議,各POD應劃分為不同的Area區域,東西匯聚交換機作為骨幹區域Area0,以減少LSA的傳播區域和傳播數量。各POD內SDN-GW作為OSPF區域邊界網絡設備,將不同接口劃入不同的區域,上連東西匯聚交換機接口劃入Area0,下連POD內Spine接口劃入各POD單獨Area。南北匯聚交換機一般工作在二層透傳模式,三層終結在外網防火墻,因此南北匯聚交換機可不運行路由協議。

技術分享圖片
大規模數據中心組網OSPF路由規劃

相比較OSPF,ISIS 支持ISPF(Incremental SPF),對大規模網絡的支持能力和收斂性能更好。ISIS支持靈活的TLV編碼方式,協議擴展性更好。ISIS因其收斂速度快、結構清晰、適用於較大規模網絡,一直比較多應用於城域網場景或者IP專網場景作為IGP路由協議。隨著數據中心規模越來越大、設備數量越來越多,ISIS也更多的應用於數據中心場景。ISIS的區域邊界在鏈路,每臺網絡設備只能屬於一個ISIS區域。為減少LSP的傳播區域和傳播數量,在大規模數據中心場景ISIS分層次進行規劃,骨幹區域包括POD間東西匯聚交換機和每個POD內的SDN-GW。POD間東西匯聚交換機運行ISIS level2,POD內的SDN-GW運行ISIS的level-1-2。每個POD內Spine和Leaf運行ISIS level1。
技術分享圖片

大規模數據中心組網ISIS路由規劃

RFC7938提出了將EBGP路由協議應用於大規模數據中心的建議,而且目前也有少量將EBGP應用於數據中心內作為底層路由協議的實例。有別於OSPF、ISIS等鏈路狀態協議,BGP是一種距離矢量路由協議,因此BGP的擴展性更好。在中小型的數據中心組網時,使用BGP和使用ISIS、OSPF等鏈路狀態協議性能區別不大,但是在超大型數據中心的網絡中,應用BGP的性能會更優。OSPF、ISIS等鏈路狀態協議需要在網絡內傳遞大量的LSA,路由信息生成過程是先完成LSA信息同步,再計算生成路由信息。在網絡部分節點發生變動或者網絡割接升級時,會引起大量LSA的傳遞。而距離矢量路由協議BGP不存在這樣的問題,BGP節點間直接通告路由,在網絡擴展和割接升級時的網絡穩定性更好。

目前關於OSPF和ISIS路由協議的LSA優化在IETF已經有相應的draft,目的都是為了減少LSA的傳播數量和傳播範圍,已使OSPF和ISIS在超大規模數據中心組網中的性能更優,但是目前並沒有非常有效的並被實際應用的方案。雖然目前將EBGP應用於數據中心應用並不廣泛,但是未來超大規模數據中心的底層路由協議選擇,距離矢量路由協議BGP很可能會得到更廣泛的應用。

EBGP路由的規劃和配置相對於OSPF和ISIS會復雜一些。POD內的多臺Spine設備規劃為同一AS號,多臺東西匯聚交換機規劃為同一AS號,每組堆疊Leaf規劃一個單獨 AS號。雖然每個POD內Leaf只和本POD內Spine建立EBGP鄰居,Leaf間不建立EBGP鄰居,但是Spine上仍然需要配置大量的Leaf鄰居信息。規劃配置復雜,是限制EBGP在數據中心內應用的因素之一。

在使用EBGP作為底層路由協議的大規模數據中心,如果POD內同時以E×××+Netconf為轉發控制方案,POD內E×××需以IBGP為基礎建立,因此需要一臺網絡設備同時配置EBGP+IBGP兩個不同AS號的BGP進程。目前已經有主流廠家網絡設備支持不同AS號的BGP雙進程。

常規BGP報文AS號為16比特長度,取值範圍為0-65535,其中私有AS號範圍64512到65534,因此可用於數據中心內組網規劃的私有AS號數量為1023個。按照每組堆疊Leaf一個AS號的原則,顯然無法滿足多POD大規模數據中心組網的AS號分配需求。RFC6793建議將BGP的AS號擴展到32比特長度,擴展後AS號數量滿足大規模數據中心組網已經完全沒有問題,且目前業界主流設備已具備32比特AS號長度的支持能力。

技術分享圖片
大規模數據中心組網EBGP路由規劃

SDN數據中心的管理網除了滿足傳統的設備帶外管理功能,還要部署Openstack雲管理平臺和SDN控制器,因此相比傳統數據中心的管理網更加重要。隨著數據中心規模的增大,管理網的規模也必然同時增大,因此大規模數據中心的管理網也需要分POD部署。POD內管理網核心交換機配置各網段網關,管理網接入交換機工作在二層VLAN透傳模式。管理網POD間設置管理匯聚交換機,POD內管理網核心和POD間匯聚交換機三層互聯,可以運行ISIS或者OSPF路由協議。為了減小POD內管理網廣播域使管理網更加穩定,也可以將管理網段的網關配置在管理接入交換機上,規劃三層到邊緣的管理網絡,但是這樣做同時帶來的弊端是需要更詳細的管理地址規劃,過於細分的管理地址規劃會在一定程度上浪費地址資源,因此三層到邊緣的管理網規劃並不常見。

4.大規模SDN數據中心POD間互聯互通

大規模SDN數據中心需要將不同POD內資源統一管理和調度,構造大規模數據中心統一資源池。大規模SDN數據中心采用SDN-DCI技術實現POD間互聯互通。

SDN-DCI技術通過E×××+VXLAN建立跨POD互聯通路,管理面采用E×××協議,數據面采用VXLAN隧道承載。POD內的SDN-GW將同時作為DCI-GW,各POD的SDN-GW之間配置運行Full mesh的EBGP協議。基於EBGP協議,各POD的SDN-GW之間建立E×××鄰居關系,通過E×××建立互聯互通的控制面,傳遞租戶VPC內(Virtual Private Cloud)的MAC、ARP和IP網段路由信息。

大規模數據中心部署統一雲管理平臺,協同編排各POD內SDN控制器實現跨POD網絡業務流量互通。考慮到實際網絡部署時,POD間很可能為異廠家設備,因此雲管理平臺需要對接不同廠家SDN控制器,為此需定義標準的SDN控制器到雲管平臺的北向API開放接口,異廠家SDN控制器據此標準接口接收雲管平臺指令並控制本POD內轉發設備完成指令的執行。

技術分享圖片
跨POD互通E×××+VXLAN技術方案示意圖

通過分析大規模數據中心跨POD業務互聯互通需求,可以得出以下流量模型:同業務域同租戶跨POD互通,不過內網防火墻;同業務域不同租戶跨POD互通,過內網防火墻;不同業務域同租戶跨POD互通,過內網防火墻;不同業務域不同租戶跨POD互通,過內網防火墻。

將以上網絡流量模型總結分析,可以歸納簡化為兩種互通流量模型,即跨POD過防火墻互通和跨POD不過防火墻互通。在雲管平臺跨POD互通業務接口指令模板中,增加防火墻狀態使能開關來決定是否過防火墻。另外考慮到流量模型的對稱,在過墻的場景下要求雙側POD內均過墻。

跨POD互通不過防火墻流量,租戶流量在本地接入VTEP封裝進本地VXLAN隧道,到達POD內SDN-GW解開本地VXLAN封裝,並重新封裝進互聯VXLAN後發往對端POD內SDN-GW。流量達到對端POD內SDN-GW後解開互聯VXLAN封裝,再封裝進相應租戶本地VXLAN隧道。不同業務的跨POD互通流量應予以隔離,需要為每組業務互通流量規劃一個單獨的VNI和VRF,並將VNI和VRF綁定。
技術分享圖片

跨POD不過防火墻流量模型

跨POD互通過防火墻流量模型,租戶流量到達POD內SDN-GW解開本地VXLAN封裝後通過VLAN二層轉發送往防火墻,防火墻處理完畢後送回SDN-GW,SDN-GW重新封裝進互聯VXLAN後發往對端POD內SDN-GW。流量達到對端POD內SDN-GW後解開互聯VXLAN封裝,通過VLAN二層轉發送往本POD內防火墻,防火墻處理完畢後送回SDN-GW,SDN-GW再將流量封裝進相應租戶本地VXLAN隧道。

跨POD不過防火墻流量模型

不同業務的跨POD互通流量應予以隔離,需要為每組業務互通流量規劃一個單獨的VNI和VRF,並將VNI和VRF綁定。對於部分需要經過負載均衡設備處理的業務流量,可以由雲管平臺統一編排流量經過相應的負載均衡。

5.大規模SDN數據中心南北向流量簡述

大規模SDN數據中心對南北向流量的處理,在引入多POD組網後,增加了南北匯聚交換機。由南北匯聚交換機分別上連互聯網防火墻、IP專網和專線路由器。南北匯聚交換機在互聯網南北業務流量的處理上工作在二層透傳模式,三層分別終結在SDN-GW和外網防火墻。在進出IP專網和專線的南北流量處理上可以視具體情況工作在二層透傳或者三層模式,工作在三層模式需要配置VRF進行不同業務流量的隔離。
創作:http://www.ie-lab.cn/
本文首先分析了在大規模SDN數據中心組網中遇到的問題。一方面Underlay底層組網規模受限於設備實際的轉發能力和端口密度,單一Spine-leaf的Fabric架構無法滿足大規模組網的需求;另一方面在SDN技術實現方案上,Openstack和SDN控制器分別有管理控制能力上的限制。

本文分別從多POD大規模數據中心的Underlay組網及路由規劃,和跨POD互聯互通SDN技術實現方案兩方面,深入到技術細節,結合網絡業務流量模型的實現,闡述了大規模SDN數據中心組網架構。
1.大規模SDN數據中心組網需解決問題分析

大規模的SDN數據中心組網需實現幾萬臺服務器作為一個資源池來承載和編排調度。綜合考慮Underlay組網以及SDN解決方案的實現,主要有以下三個方面的問題需要解決。

(一)在數據中心Underlay組網層面。雖然隨著芯片不斷的升級換代,數據中心交換機處理轉發能力極大提升,但是基於目前的數據中心交換機端口能力,同時考慮到每個機房實際機櫃的數目,以及機房間跨機房布線的難易程度,單一的Spine-leaf兩層架構組網不能滿足上萬服務器的承載需求。

例如在一個數據中心組網中,選用目前業界主流廠商成熟的16槽的核心交換機設備為Spine,100G板卡端口密度是20個/板卡,40G板卡端口密度是30個/板卡;選用配置48個萬兆6個40G的接入交換機為Leaf。Leaf到Spine全互聯,Spine核心數量滿配6臺,核心交換機各配置2塊100G板卡用於連接外部防火墻、專網或專線路由設備等。在滿足帶寬1:1收斂比的情況下,經計算單一Spine-Leaf架構最多能支持服務器的數量為5760臺,不能滿足幾萬臺服務器的承載需求。

(二)SDN控制器的管理規模和管理範圍。SDN控制器管理VSW或者硬件交換機會啟用TCP長連接,從占用CPU內存資源,數量過多的被納管設備將極大地消耗SDN控制器的資源,進而降低控制器的性能,這是SDN控制器管理規模主要限制因素。SDN控制器的管理範圍主要受控制器和被納管設備間的網絡時延限制,因此SDN控制器建議本地部署而不建議長距離異地遠程管理。目前主流設備廠家在SDN控制器3機集群的情況下,可以管理2000個VSW或者1000個硬件SDN交換機。

(三)雲操作系統Openstack的管理能力。Openstack是集中式消息處理機制,所有交互操作會到指令層面進行拆分,而指令並發處理能力低,主要以單進程隊列方式進行。比如資源池內同時對100臺虛擬機進行操作的場景,交互操作進行指令拆分處理時,因指令並發處理能力差,拆解出的大量指令不得不排隊等待執行,Openstack系統此時的交互操作響應效率和及時性都會惡化,影響用戶的實際感知。

Cell技術可以極大地提升Openstack平臺的消息處理效率,Nova可以擴展為多個Nova處理節點,每個節點有獨立的數據庫,采用數據庫同步的方式,實現多個nova節點的協同和分布式工作。但是,Openstack系統性能是和企業的實際研發能力密切相關的,目前基於開源Openstack研發的主流廠家產品,管理能力為500臺虛擬化Host(5000個VM)或者3000臺裸金屬服務器。

2.大規模SDN數據中心的多POD組網架構

由於單一Spine-Leaf結構的Underaly網絡接入承載能力,Openstack平臺的管理能力以及SDN控制器的控制範圍、控制規模的限制,因此在大規模SDN數據中心組網時,需要分解成多個單獨的Spine-Leaf模塊進行部署。模塊間通過統一的應用層借助於SDN-DCI技術進行協同,實現整個數據中心資源池的統一管理和編排。每個單獨的Spine-leaf模塊為一個單獨的Fabric,也稱為一個POD(Point of Delivery)。

POD內組網采用標準SDN數據中心架構,每個POD單獨的Openstack雲操作系統和SDN控制器。根據主流廠家的Openstack雲操作系統產品性能指標,限定POD內的裸金屬服務器場景下支持服務器數量3000臺,虛擬化服務器場景下支持服務器Host主機數量500臺。同時根據主流廠商的SDN控制器性能,限定POD內的硬件交換機數量不大於1000臺,VSW數量不大於2000臺。

多POD的大規模SDN數據中心組網,POD內Underlay組網是標準的Spine-Leaf架構。POD內SDN-GW可以和Spine合設也可以旁掛Spine部署,防火墻、負載均衡設備旁掛SDN-GW部署。

目前SDN-GW主要是兩臺堆疊部署,以便於SDN控制器的統一管理,因此如果POD規模較大,需要兩臺以上Spine時,不建議SDN-GW和Spine合設,SDN-GW應單獨旁掛部署。

為實現POD之間的流量互通,設置東西向流量匯聚核心交換機Core-Spine用於承載跨POD的東西向流量;為實現POD內到外網的互訪,設置南北向流量匯聚核心交換機Out-Spine用於承載南北向流量。東西向流量匯聚核心交換機和南北向匯聚核心交換機的數量可以根據實際的POD規模、POD數量和網絡收斂比要求靈活計算。POD內Spine到POD間匯聚核心交換機一般是跨機房互聯,為提高鏈路利用率,應采用100G光模塊互聯。

如果POD間東西向流量規劃很大,建議POD內Spine直接上連東西向匯聚交換機。此時的流量模型為,POD間互通流量從POD內Spine去到SDN-GW,SDN-GW解開原有VXLAN封裝,再將互通流量導入不同的互聯VNI後發回給Spine,最後由Spine發送到東西匯聚交換機。此流量模型下相同業務流量會穿越POD內Spine兩次,因此如果流量規劃完全在SDN-GW交換機設備的承受範圍內,建議由SDN-GW上連東西向匯聚交換機,這樣可以減少POD內Spine上的來回穿透流量。

大規模SDN數據中心多POD組網架構

POD內的SDN數據中心轉發控制技術實現方案,可以是Openflow+Netconf也可以是E×××+Netconf。虛擬機場景推薦使用表項更大更靈活的VSW作為VTEP,從而采用Openflow+Netconf方案。裸金屬服務器場景采用硬件SDN接入交換機作為VTEP,可以根據具體網絡設備能力情況靈活選擇E×××+Netconf的方案或者Openflow+Netconf的方案。

在Openflow+Netconf和E×××+Netconf混合部署的場景,需要在SDN控制器上進行兩種控制技術方案的翻譯和打通。SDN控制器和SDN-GW建立E×××鄰居,將E×××控制面的信息翻譯成Openflow發送給VSW,將VSW的相關Openflow信息翻譯成E×××控制信息發送給硬件SDN交換機。從而控制實現在VSW和硬件SDN交換機之間建立VXLAN隧道和轉發數據。

POD間互聯的方案將完全借鑒SDN-DCI的相關技術,采用E×××+VXLAN的技術。POD內的SDN-GW將同時作為DCI-GW,與不同POD的SDN-GW間建立E×××鄰居,在統一的協同層的控制下實現跨POD流量的互通。

共享分布式塊存儲、分布式文件存儲、分布式對象存儲可以單獨規劃組成存儲POD。訪問存儲POD的流量在SDN-GW解開VXLAN封裝以後走Underaly網絡路由轉發達到存儲POD。在POD內配置單獨的VRF用於隔離訪問存儲的流量和其他業務流量。存儲POD有訪問外網需求的,存儲匯聚交換機規劃上連南北匯聚交換機。FC SAN存儲建議直接部署在各POD內。

存儲POD網絡規劃圖

3.大規模SDN數據中心Underlay組網及路由規劃

多POD的大規模數據中心的Underlay組網,網絡內網絡設備數量眾多,按每POD內500臺網絡設備數量計算,10個POD組網網絡設備將超過5000臺,因此如何規劃好Underlay層面的路由配置,對大規模數據中心網絡的高性能轉發非常重要。

普通數據中心場景IGP路由主要是以OSPF路由為主,OSPF路由技術成熟,網絡建設運維人員使用經驗豐富。使用OSPF作為大規模數據中心組網的IGP路由協議,各POD應劃分為不同的Area區域,東西匯聚交換機作為骨幹區域Area0,以減少LSA的傳播區域和傳播數量。各POD內SDN-GW作為OSPF區域邊界網絡設備,將不同接口劃入不同的區域,上連東西匯聚交換機接口劃入Area0,下連POD內Spine接口劃入各POD單獨Area。南北匯聚交換機一般工作在二層透傳模式,三層終結在外網防火墻,因此南北匯聚交換機可不運行路由協議。

大規模數據中心組網OSPF路由規劃

相比較OSPF,ISIS 支持ISPF(Incremental SPF),對大規模網絡的支持能力和收斂性能更好。ISIS支持靈活的TLV編碼方式,協議擴展性更好。ISIS因其收斂速度快、結構清晰、適用於較大規模網絡,一直比較多應用於城域網場景或者IP專網場景作為IGP路由協議。隨著數據中心規模越來越大、設備數量越來越多,ISIS也更多的應用於數據中心場景。ISIS的區域邊界在鏈路,每臺網絡設備只能屬於一個ISIS區域。為減少LSP的傳播區域和傳播數量,在大規模數據中心場景ISIS分層次進行規劃,骨幹區域包括POD間東西匯聚交換機和每個POD內的SDN-GW。POD間東西匯聚交換機運行ISIS level2,POD內的SDN-GW運行ISIS的level-1-2。每個POD內Spine和Leaf運行ISIS level1。

大規模數據中心組網ISIS路由規劃

RFC7938提出了將EBGP路由協議應用於大規模數據中心的建議,而且目前也有少量將EBGP應用於數據中心內作為底層路由協議的實例。有別於OSPF、ISIS等鏈路狀態協議,BGP是一種距離矢量路由協議,因此BGP的擴展性更好。在中小型的數據中心組網時,使用BGP和使用ISIS、OSPF等鏈路狀態協議性能區別不大,但是在超大型數據中心的網絡中,應用BGP的性能會更優。OSPF、ISIS等鏈路狀態協議需要在網絡內傳遞大量的LSA,路由信息生成過程是先完成LSA信息同步,再計算生成路由信息。在網絡部分節點發生變動或者網絡割接升級時,會引起大量LSA的傳遞。而距離矢量路由協議BGP不存在這樣的問題,BGP節點間直接通告路由,在網絡擴展和割接升級時的網絡穩定性更好。

目前關於OSPF和ISIS路由協議的LSA優化在IETF已經有相應的draft,目的都是為了減少LSA的傳播數量和傳播範圍,已使OSPF和ISIS在超大規模數據中心組網中的性能更優,但是目前並沒有非常有效的並被實際應用的方案。雖然目前將EBGP應用於數據中心應用並不廣泛,但是未來超大規模數據中心的底層路由協議選擇,距離矢量路由協議BGP很可能會得到更廣泛的應用。

EBGP路由的規劃和配置相對於OSPF和ISIS會復雜一些。POD內的多臺Spine設備規劃為同一AS號,多臺東西匯聚交換機規劃為同一AS號,每組堆疊Leaf規劃一個單獨 AS號。雖然每個POD內Leaf只和本POD內Spine建立EBGP鄰居,Leaf間不建立EBGP鄰居,但是Spine上仍然需要配置大量的Leaf鄰居信息。規劃配置復雜,是限制EBGP在數據中心內應用的因素之一。

在使用EBGP作為底層路由協議的大規模數據中心,如果POD內同時以E×××+Netconf為轉發控制方案,POD內E×××需以IBGP為基礎建立,因此需要一臺網絡設備同時配置EBGP+IBGP兩個不同AS號的BGP進程。目前已經有主流廠家網絡設備支持不同AS號的BGP雙進程。

常規BGP報文AS號為16比特長度,取值範圍為0-65535,其中私有AS號範圍64512到65534,因此可用於數據中心內組網規劃的私有AS號數量為1023個。按照每組堆疊Leaf一個AS號的原則,顯然無法滿足多POD大規模數據中心組網的AS號分配需求。RFC6793建議將BGP的AS號擴展到32比特長度,擴展後AS號數量滿足大規模數據中心組網已經完全沒有問題,且目前業界主流設備已具備32比特AS號長度的支持能力。

大規模數據中心組網EBGP路由規劃

SDN數據中心的管理網除了滿足傳統的設備帶外管理功能,還要部署Openstack雲管理平臺和SDN控制器,因此相比傳統數據中心的管理網更加重要。隨著數據中心規模的增大,管理網的規模也必然同時增大,因此大規模數據中心的管理網也需要分POD部署。POD內管理網核心交換機配置各網段網關,管理網接入交換機工作在二層VLAN透傳模式。管理網POD間設置管理匯聚交換機,POD內管理網核心和POD間匯聚交換機三層互聯,可以運行ISIS或者OSPF路由協議。為了減小POD內管理網廣播域使管理網更加穩定,也可以將管理網段的網關配置在管理接入交換機上,規劃三層到邊緣的管理網絡,但是這樣做同時帶來的弊端是需要更詳細的管理地址規劃,過於細分的管理地址規劃會在一定程度上浪費地址資源,因此三層到邊緣的管理網規劃並不常見。

4.大規模SDN數據中心POD間互聯互通

大規模SDN數據中心需要將不同POD內資源統一管理和調度,構造大規模數據中心統一資源池。大規模SDN數據中心采用SDN-DCI技術實現POD間互聯互通。

SDN-DCI技術通過E×××+VXLAN建立跨POD互聯通路,管理面采用E×××協議,數據面采用VXLAN隧道承載。POD內的SDN-GW將同時作為DCI-GW,各POD的SDN-GW之間配置運行Full mesh的EBGP協議。基於EBGP協議,各POD的SDN-GW之間建立E×××鄰居關系,通過E×××建立互聯互通的控制面,傳遞租戶VPC內(Virtual Private Cloud)的MAC、ARP和IP網段路由信息。

大規模數據中心部署統一雲管理平臺,協同編排各POD內SDN控制器實現跨POD網絡業務流量互通。考慮到實際網絡部署時,POD間很可能為異廠家設備,因此雲管理平臺需要對接不同廠家SDN控制器,為此需定義標準的SDN控制器到雲管平臺的北向API開放接口,異廠家SDN控制器據此標準接口接收雲管平臺指令並控制本POD內轉發設備完成指令的執行。

跨POD互通E×××+VXLAN技術方案示意圖

通過分析大規模數據中心跨POD業務互聯互通需求,可以得出以下流量模型:同業務域同租戶跨POD互通,不過內網防火墻;同業務域不同租戶跨POD互通,過內網防火墻;不同業務域同租戶跨POD互通,過內網防火墻;不同業務域不同租戶跨POD互通,過內網防火墻。

將以上網絡流量模型總結分析,可以歸納簡化為兩種互通流量模型,即跨POD過防火墻互通和跨POD不過防火墻互通。在雲管平臺跨POD互通業務接口指令模板中,增加防火墻狀態使能開關來決定是否過防火墻。另外考慮到流量模型的對稱,在過墻的場景下要求雙側POD內均過墻。

跨POD互通不過防火墻流量,租戶流量在本地接入VTEP封裝進本地VXLAN隧道,到達POD內SDN-GW解開本地VXLAN封裝,並重新封裝進互聯VXLAN後發往對端POD內SDN-GW。流量達到對端POD內SDN-GW後解開互聯VXLAN封裝,再封裝進相應租戶本地VXLAN隧道。不同業務的跨POD互通流量應予以隔離,需要為每組業務互通流量規劃一個單獨的VNI和VRF,並將VNI和VRF綁定。

跨POD不過防火墻流量模型

跨POD互通過防火墻流量模型,租戶流量到達POD內SDN-GW解開本地VXLAN封裝後通過VLAN二層轉發送往防火墻,防火墻處理完畢後送回SDN-GW,SDN-GW重新封裝進互聯VXLAN後發往對端POD內SDN-GW。流量達到對端POD內SDN-GW後解開互聯VXLAN封裝,通過VLAN二層轉發送往本POD內防火墻,防火墻處理完畢後送回SDN-GW,SDN-GW再將流量封裝進相應租戶本地VXLAN隧道。

技術分享圖片

跨POD不過防火墻流量模型

不同業務的跨POD互通流量應予以隔離,需要為每組業務互通流量規劃一個單獨的VNI和VRF,並將VNI和VRF綁定。對於部分需要經過負載均衡設備處理的業務流量,可以由雲管平臺統一編排流量經過相應的負載均衡。

5.大規模SDN數據中心南北向流量簡述

大規模SDN數據中心對南北向流量的處理,在引入多POD組網後,增加了南北匯聚交換機。由南北匯聚交換機分別上連互聯網防火墻、IP專網和專線路由器。南北匯聚交換機在互聯網南北業務流量的處理上工作在二層透傳模式,三層分別終結在SDN-GW和外網防火墻。在進出IP專網和專線的南北流量處理上可以視具體情況工作在二層透傳或者三層模式,工作在三層模式需要配置VRF進行不同業務流量的隔離。
創作:http://www.ie-lab.cn/

大規模SDN雲計算數據中心組網的架構設計