局域網SDN技術硬核內幕 一 從二層交換到三層路由

局域網SDN技術硬核內幕 一 從二層交換到三層路由

昨天,我們在《從二層到大二層》中介紹了VXLAN二層轉發的機制。同一個網段的虛擬機需要跨越三層網絡通信時,可以將二層以太網數據包封裝在VXLAN隧道中穿越三層網絡。那麼,當不同網段的虛擬需要通信時應當如何實現呢?
在Neutron中的實現如下圖:

在這裏插入圖片描述
當網段100的VM,和網段200的VM互聯互通的時候,會在VXLAN隧道的兩端VTEP各更改一次網段ID (VNI, Virtual Network Index),使用公用的VNI互通。這種機制叫做對稱IRB。更改VNI的操作,叫做VXLAN路由 (VXLAN Routing),或RIOT(Routing In/Out Tunnel)。

在VMWare NSX中,則使用另一種叫做非對稱IRB的方式實現互通:
在這裏插入圖片描述
注意到圖中存在兩條VXLAN隧道,其VNI是不一樣的。在非對稱IRB中,在入隧道方向的VTEP進行VXLAN Routing,將VNI更換爲目標網段的VNI,而出隧道方向的VTEP進行VXLAN Bridging,拆除VXLAN隧道包頭。由於往返的VNI、封裝點均不一樣,因此被稱爲非對稱IRB。

我們發現,在對稱IRB的場景下,每個VTEP只需要維護自身所在的各個網段下的所有VM的MAC和FIB信息即可。而非對稱IRB場景下,每個VTEP不但需要維護所有VM的MAC和FIB信息,還需要維護ARP信息。
VTEP可以通過MAC/ARP學習等方式,得到所在宿主機下VM的MAC和FIB信息。當VTEP需要獲取同一網段內其他VM的MAC/FIB信息的時候,它是如何得知的呢?

明天我們將繼續詳解VTEP之間信息互通的機制。

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