VLAN和VXLAN的理解
阿新 • • 發佈:2018-12-25
上圖中給出了6個終端,分別屬於2個租戶,其中,終端T1、T2和T4屬於租戶1,分配VNI為1,終端T3、T5和T6屬於租戶2,分配VNI為2,兩個VTEP節點的轉發表已在圖中給出。
每一個VTEP節點都必須擁有完整的轉發表才可以正確地進行轉發的功能,轉發表的學習過程可以基於這樣一種簡單的策略:通過ARP報文學習,當收到終端傳送的資料幀時,首先根據收到資料的埠判定資料傳送方的VNI值,根據VNI和資料幀中的目的MAC查詢對應的VTEP節點,如果查詢成功,則轉發,否則,在當前VXLAN網路中廣播ARP請求報文,這樣,連線目的MAC終端的VTEP節點就會發送ARP回答報文,這樣就學習到了新的轉發表項。
需要說明的是,在多租戶的環境下,基於資訊保安等因素,各個租戶的流量必須實現隔離,因此在傳送廣播ARP請求報文時,不可以直接在多租戶的環境中廣播,必須保證只有當前VXLAN網路的終端可以收到廣播報文,因此,和物理網路中的ARP廣播請求的實現有所不同,這裡需要通過IP組播機制來模擬廣播,IGMP等相關組播協議這裡會用到。
因此,VTEP節點還需要儲存對應於每個租戶的VNI值的組播域,即對於每一個VNI值,儲存包含當前VXLAN網路中終端的所有VTEP節點的IP,用於ARP廣播時的組播操作。對於上文中的網路拓撲,兩個VTEP的廣播表如下圖:
每一個VTEP節點都必須擁有完整的轉發表才可以正確地進行轉發的功能,轉發表的學習過程可以基於這樣一種簡單的策略:通過ARP報文學習,當收到終端傳送的資料幀時,首先根據收到資料的埠判定資料傳送方的VNI值,根據VNI和資料幀中的目的MAC查詢對應的VTEP節點,如果查詢成功,則轉發,否則,在當前VXLAN網路中廣播ARP請求報文,這樣,連線目的MAC終端的VTEP節點就會發送ARP回答報文,這樣就學習到了新的轉發表項。
需要說明的是,在多租戶的環境下,基於資訊保安等因素,各個租戶的流量必須實現隔離,因此在傳送廣播ARP請求報文時,不可以直接在多租戶的環境中廣播,必須保證只有當前VXLAN網路的終端可以收到廣播報文,因此,和物理網路中的ARP廣播請求的實現有所不同,這裡需要通過IP組播機制來模擬廣播,IGMP等相關組播協議這裡會用到。
因此,VTEP節點還需要儲存對應於每個租戶的VNI值的組播域,即對於每一個VNI值,儲存包含當前VXLAN網路中終端的所有VTEP節點的IP,用於ARP廣播時的組播操作。對於上文中的網路拓撲,兩個VTEP的廣播表如下圖: