分散式邏輯路由器 VMware VXLAN 虛擬路由 NSX 網路

NSX邏輯路由器轉送機制 有效優化資料中心內路徑

2016-11-16
VMware NSX內的邏輯路由器藉由在Kernel內運作,能夠達成東西向傳輸路徑的最佳化,這是現行的硬體網路架構設定所無法企及的,藉由學理的探討及實例的推論,大家應該就能夠明白箇中的奧妙。
本期文章希望和大家討論兩件事情。上個月在NSX投稿內,曾經強調過一個問題:現行的硬體網路架構設定,無法達成資料中心內的網路傳輸路徑最優化,而NSX內的邏輯分散式路由器(Logical Distributed Router,後續簡稱LDR或邏輯路由器)藉由在Kernel內運作,則能夠達成東西向傳輸路徑的最佳化。

在此討論一下:如果要達成東西向傳輸路徑優化,那麼必須能讓各個虛擬機器在互相溝通的時候,無論是在同一網段或不同網段都要做到以下幾件事情:

·若兩個VM位在同一台伺服器上,就直接於此台伺服器的記憶體內進行封包交換。

·若兩個VM位在同一個機箱內的兩台刀鋒伺服器上,封包交換應該要在此機箱的Inter-Connect Switch進行。

·在同一個機櫃內的兩台不同伺服器上,封包交換最多應該走到機櫃的ToR(Top-of-Rack)交換器進行。

·僅有在兩個不同機櫃的不同伺服器上,封包交換才需要透過核心交換器。

利用圖1更進一步討論:左邊是很典型目前虛擬環境搭配實體網路設備的狀況,當有兩個虛機位於同一個刀鋒伺服器且位於不同網段,在兩個虛機要互相溝通時:


▲圖1 現行實體網路架構內,不同網段間的VM傳輸,都得送到核心交換器進行。

·Routing不能在Virtual Switch內發生,因為無論是Standard vSwitch/Distributed vSwitch/1000v或其他廠商的虛擬交換機,都僅有L2交換的功能,不具備路由功能。

·Routing不能在機箱內的Inter-Connect Switch發生,因為絕大部分刀鋒伺服器機箱的交換器都僅有L2的功能。

·封包必須要往外送到支援L3的設備,一般來說至少是Top-of-Rack L3 Switch,或甚至是核心交換器,才能做到網段的路由轉換。

而圖1右圖的狀況當然也相同。在這樣的架構裡面,希望的傳輸優化是VM間的封包即使要經過Routing,應該要在同一個vSphere Host上就進行路由交換,或於兩台vSphere Host連接的最近交換器上進行。

虛擬路由器無法滿足路徑優化需求

如果採用虛擬路由器,例如vCNS內的Edge Gateway或是很多網路廠商推動的VNF虛擬化路由器,就能解決這樣的問題嗎?當然也沒辦法,反而同樣可能會有所謂的Hair-pin Traffic。

如圖2所示,同樣在vSphere Host上的兩個VM,位於不同網段,要互相溝通時,該如何運作?


▲圖2 虛擬路由器,如Edge Service Gateway或VM-based NFV方案,無法滿足路徑優化的需求。

圖2內的路徑是類似以下幾個步驟所描述的:


當VM-A要與VM-B溝通,因為兩個VM是位於不同的網段內,VM-A送出封包到同樣實線網段的Default Gateway(On Edge Service Gateway,ESG)。


藉由NSX內邏輯交換器的機制(如前述文章內描述),vSphere Host透過VXLAN封裝VM-A送出的原始Ethernet Frame,傳送至ESG所在的Host。


在目的地Host VXLAN解封裝,將原始Ethernet Frame送到ESG。ESG利用自己的本機路由表進行封包轉送,將封包由實線網段轉送至虛線網段。於虛線網段內,透過ARP等機制確認VM-B的MAC地址,ESG發出Ethernet Frame將原封包往VM-B送出。


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!