天天看點

​雲計算網絡,沒那麼簡單 ​雲計算網絡,沒那麼簡單

​雲計算網絡,沒那麼簡單

——華三通信在2014年GITC(全球網際網路技術大會)的演講節選

文/李蔚

資料中心虛拟化成為了趨勢,通過伺服器虛拟化提高資源使用率,同時降低機關能耗。但是,随着資料中心虛拟化程度的不斷提高、虛拟化伺服器規模的不斷擴大,帶來了巨大的管理壓力。這就孕育了雲計算誕生的條件。在大規模虛拟化的基礎上,實作了自動化管理和集中化管理,就是雲計算的基本模型。這一點在網際網路行業尤其重要。

一、        網際網路雲計算對網絡的需求

       網際網路行業資料中心的基本特征就是伺服器的規模偏大。進入雲計算時代後,其業務特征變得更加複雜,包括:虛拟化支援、多業務承載、資源靈活排程等(如圖1所示)。與此同時,網際網路雲計算的規模不但沒有縮減,反而更加龐大。這就給雲計算的網絡帶來了巨大的壓力。

​雲計算網絡,沒那麼簡單 ​雲計算網絡,沒那麼簡單

圖1. 網際網路雲計算的業務特點

l  大容量的MAC表項和ARP表項

虛拟化會導緻更大的MAC表項。假設一個網際網路雲計算中心的伺服器有5000台,按照1:20的比例進行虛拟化,則有10萬個虛拟機。通常每個虛拟機會配置兩個業務網口,這樣這個雲計算中心就有20萬個虛拟網口,對應的就是需要20萬個MAC位址和IP位址。雲計算要求資源靈活排程,業務資源任意遷移。也就是說任意一個虛拟機可以在整個雲計算網絡中任意遷移。這就要求全網在一個統一的二層網絡中。全網任意交換機都有可能學習到全網所有的MAC表項。與此對應的則是,目前業界主流的接入交換機的MAC表項隻有32K,基本無法滿足網際網路雲計算的需求。另外,網關需要記錄全網所有主機、所有網口的ARP資訊。這就需要網關裝置的有效ARP表項超過20萬。大部分的網關裝置晶片都不具備這種能力。

l  4K VLAN Trunk問題

傳統的大二層網絡支援任意VLAN的虛拟機遷移到網絡的任意位置,一般有兩種方式。方式一:虛拟機遷移後,通過自動化網絡管理平台動态的在虛拟機對應的所有端口上下發VLAN配置;同時,還需要動态删除遷移前虛拟機對應所有端口上的VLAN配置。這種方式的缺點是實作非常複雜,同時自動化管理平台對多廠商裝置還面臨相容性的問題,是以很難實作。方式二:在雲計算網絡上靜态配置VLAN,在所有端口上配置VLAN trunk all。這種方式的優點是非常簡單,是目前主流的應用方式。但這也帶來了巨大的問題:任一VLAN内如果出現廣播風暴,則全網所有VLAN内的虛拟機都會受到風暴影響,出現業務中斷。

l  4K VLAN上限問題

雲計算網絡中有可能出現多租戶需求。如果租戶及業務的數量規模超出VLAN的上限(4K),則無法支撐客戶的需求。

l  虛拟機遷移網絡依賴問題

VM遷移需要在同一個二層域内,基于IP子網的區域劃分限制了二層網絡連通性的規模。

二、        網際網路雲計算網絡為什麼選擇Overlay

針對網際網路雲計算對網絡提出的這些挑戰,H3C選擇了基于VXLAN技術的Overlay網絡架構來建構自己的雲計算網絡解決方案。

1.   Overlay如何應對雲計算網絡的挑戰

首先,Overlay的核心是重新建構一個邏輯網絡平面,其技術手段的關鍵是采用隧道技術實作L2oIP的封裝。通過隧道實作各虛拟機之間的二層直連。這樣網絡隻看見Overlay邊緣節點的MAC位址,實體網絡學習到的MAC表項非常有限,現有接入交換機32K的MAC表項足以滿足需求(如圖2所示)。對應的Overlay邊緣節點實作基于會話的位址學習機制,也就是說隻學習有互動流量的虛拟機MAC位址。這樣也嚴格限制了邊緣節點的位址表項。

​雲計算網絡,沒那麼簡單 ​雲計算網絡,沒那麼簡單

圖2. Overlay網絡如何應對雲計算網絡的挑戰

其次,Overlay網絡僅僅是一個邏輯上的二層直連網絡。其依賴的實體網絡,是一個傳統的路由網絡。這個路由網絡是一個三層到邊緣的網絡。也就是說二層廣播域被縮小到極緻。這樣,網絡風暴潛在的風險大幅度降低。同時,對于一些需要依賴二層廣播的協定封包,例如:ARP封包,Overlay網絡通過ARP代理等方式實作協定的内容透傳,不會影響協定封包的正常運作。

再次,針對4K VLAN上限問題,Overlay網絡通過L2oIP的封裝字段,提供24bits長度的隔離ID,最大可以支援16M租戶或業務。

最後,針對網絡虛拟化問題。Overlay網絡本身就是一個從實體網絡中抽離的邏輯網絡,通過名址分離使得内層IP位址完全作為一個尋址标簽,不再具備路由功能,可以實作不同subnet之間二層互通,保證二層網絡的連通性不受IP位址段的限制。

2.   H3C為什麼選擇VXLAN

從Overlay網絡出現開始,業界陸續定義了多種實作Overlay網絡的技術,主流技術包括:VXLAN、NVGRE、STT、Dove等(如圖3所示)。

​雲計算網絡,沒那麼簡單 ​雲計算網絡,沒那麼簡單

圖3  Overlay主流技術概覽

從标準化程度進行分析,DOVE和STT到目前為止,标準化進展緩慢,基本上可以看作是IBM和VMware的私有協定。是以,從H3C的角度來看無法選擇這兩種技術。

從技術的實用性來看,XLAN和NVGRE兩種技術基本相當。其主要的差别在于鍊路Hash能力。由于NVGRE采用了GRE的封裝報頭,需要在标準GRE報頭中修改部分位元組來進行Hash實作鍊路負載分擔。這就需要對實體網絡上的裝置進行更新改造,以支援基于GRE的負載分擔。這種改造大部分客戶很難接受。相對而言,VXLAN技術是基于UDP報頭的封裝,傳統網絡裝置可以根據UDP的源端口号進行Hash實作鍊路負載分擔。這樣VXLAN網絡的部署就對實體網絡沒有特殊要求。這是最符合客戶要求的部署方案,是以VXLAN技術是目前業界主流的實作方式。

3.   VXLAN為什麼選擇SDN

VXLAN的标準協定目前隻定義了轉發平面流程,對于控制平面目前還沒有協定規範,是以目前業界有三種定義VXLAN控制平面的方式。

¡  方式1:多點傳播。由實體網絡的多點傳播協定形成多點傳播表項,通過手工将不同的VXLAN與多點傳播組一一綁定。VXLAN的封包通過綁定的多點傳播組在多點傳播對應的範圍内進行泛洪。簡單來說,和VLAN方式的多點傳播泛洪和MAC位址自學習基本一緻。差別隻是前者在三層網絡中預定義的多點傳播範圍内泛洪,而後者是在二層網絡中指定VLAN範圍内泛洪。這種方式的優點是非常簡單,不需要做協定擴充。但缺點也是顯而易見的,需要大量的三層多點傳播表項,需要複雜的多點傳播協定控制。顯然,這兩者對于傳統實體網絡的交換機而言,都是巨大的負荷和挑戰,基本很難實作。同時,這種方式還給網絡帶來大量的多點傳播泛洪流量,對網絡性能有很大的影響。

¡  方式2:自定義協定。通過自定義的鄰居發現協定學習Overlay網絡的拓撲結構并建立隧道管理機制。通過自定義(或擴充)的路由協定透傳Overlay網絡的MAC位址(或IP位址)。通過這些自定義的協定可以實作VXLAN控制平面轉發表項的學習機制。這種方式的優點是不依賴多點傳播,不存在大量的多點傳播泛洪封包,對網絡性能影響很小。缺點是通過鄰居發現協定和路由協定控制所有網絡節點,這樣網絡節點的數量就受到協定的限制。換句話說,如果網絡節點的數量超過一定範圍,就會導緻對應的協定(例如路由協定)運作出現異常。這一點在網際網路行業更加明顯,因為網際網路行業雲計算的基本特征就是大規模甚至超大規模。尤其是在vSwitch上運作VXLAN自定義路由協定,其網絡節點數量可以達到幾千甚至上萬個,沒有路由協定可以支援這種規模的網絡。

¡  方式3:SDN控制器。通過SDN控制器集中控制VXLAN的轉發,經由Openflow協定下發表項是目前業界的主流方式。這種方式的優點是不依賴多點傳播,不對網絡造成負荷;另外,控制器通過叢集技術可以實作動态的擴容,是以可以支援大規模甚至超大規模的VXLAN網絡。當然,SDN控制器本身的性能和可靠性決定了全網的性能和可靠性,是以如何能夠提高控制器的性能和可靠性就是核心要素。

三、        VXLAN Fabric網絡架構的優勢

雲計算網絡一直都有一個理念:Network as a Fabric,即整網可以看作是一個交換機。通過VXLAN Overlay可以很好地實作這一理念——VXLAN Fabric(如圖4所示)。

​雲計算網絡,沒那麼簡單 ​雲計算網絡,沒那麼簡單

圖4 VXLAN Fabric網絡架構

Spine和Leaf節點共同建構了Fabric的兩層網絡架構,通過VXLAN實作Spine和Leaf之間的互聯,可以看做是交換機的背闆交換鍊路。Spine節點數量可以擴容,最大可以達到16台。Leaf節點數量也可以平滑擴容。理論上隻要Spine節點的端口密度足夠高,這個Fabric可以接入數萬台實體伺服器。

另外,通過VXLAN隧道可以實作安全伺服器節點的靈活接入。這些安全服務節點可以集中部署在一個指定區域,也可以靈活部署在任意Leaf節點下。通過Service Chain技術實作任意兩個虛拟機之間可以通過任意安全服務節點互聯。保證網絡中虛拟機業務的安全隔離和控制通路。同理,Fabric的出口節點也可以部署在任意位置,可以靈活擴充。

簡而言之,VXLAN Fabric建構了一個靈活的、穩定的、可擴充的Overlay網絡。這個網絡可以有效地解決雲計算對網絡的挑戰,是雲計算網絡發展的趨勢。

繼續閱讀