牛凱廷 康京山 郝曉芳
摘要:對VXLAN二層網絡邏輯互聯技術和其應用進行了深入分析。闡述了VXLAN虛擬網絡技術的概念,這是通過三層網絡建立二層網絡的邏輯隧道技術;在MAC地址表容量、VLAN數量和虛擬機遷移方面探討了VXLAN技術相對于傳統的VLAN技術的優勢;講解了VXLAN技術的原理并重點分析了VXLAN技術的從建立虛擬隧道到數據報轉發的整個轉發機制;對VXLAN技術的應用場景進行了詳細講解。
關鍵詞:VXLAN;優勢;原理;轉發機制;應用場景
中圖分類號:TP3文獻標志碼:A文章編號:1008-1739(2022)18-51-5

網絡虛擬技術的迅速發展,凸顯傳統IP網絡的瓶頸,例如大量MAC地址受到網絡設備MAC地址表項容量的限制、VLAN數量不能滿足大量租戶的隔離需求、虛擬機(Virtual Machine,VM,)業務在不同物理機之間遷移受限等問題。為了解決上述問題,虛擬可擴展局域網(Virtual Extensible Local Area Network,VXLAN)技術應運而生。
VXLAN(Virtual Extensible Local Area Network)是虛擬可擴展局域網技術,可為分散的物理站點提供大二層互聯,為大量租戶提供二層業務的隔離服務;它利用三層物理網絡建立二層邏輯隧道,有效地解決了云數據中心虛擬網絡環境中VM規模增大和遷移問題。
VXLAN技術具有以下優勢:
①解決了MAC地址表容量限制問題[1]。VM發出的數據包被封裝在UDP報文中,并使用物理網絡的IP地址和MAC地址進行三層和二層的外層封裝。只有VXLAN隧道的網絡邊緣設備需要識別VM真實的MAC地址,極大地降低了二層網絡對MAC地址容量的需求。
②解決了傳統IP網絡VLAN數量上限問題。VXLAN的網絡標示是由其Header中的VXLAN ID表示,VXLAN ID由24 bit組成,可提供224個虛擬隔離網絡,與212個VLAN數量相比,實現了數量級的增長,解決了虛擬多租戶環境的通信隔離問題[2]。
③解決了云數據中心VM的遷移問題。VM在大二層網絡中發生遷移時,采用MAC in UDP的封裝形式,這種封裝使其真實的IP地址和MAC地址保持不變,保證了VM在遷移過程中業務的正常運行。
綜上,VXLAN技術的應用大大減輕了網絡設備MAC地址的學習壓力,提供了海量的邏輯隔離網絡,保證了虛擬業務在遷移過程中不中斷,實現了在三層物理網絡之上邏輯大二層網絡的互通。
VXLAN是一種大二層的虛擬技術,其原理是引入UDP外層隧道,重新封裝數據包的網絡層和鏈路層,將原始數據報文作為隧道凈荷。
VXLAN技術是以現有物理網絡作為Underlay網絡的一種虛擬Overlay網絡。Overlay網絡通過隧道封裝,利用Underlay網絡的三層路由,實現租戶(處于同一VXLAN的VM)的二層報文通過三層網絡在不同站點間傳遞[3]。Underlay網絡對于租戶是透明的,同一租戶的不同站點就像工作在一個局域網中。組網模型如圖1所示,隧道兩端的VM/VLAN100通過VSI/VXLAN100互通,VM/VLAN200通過VSI/VXLAN200互通。

虛擬交換實例(Virtual Switch Instance,VSI):是隧道端點設備上的一臺虛擬交換機,該交換機以1:1的方式與VXLAN對應,并根據VXLAN對數據幀進行二層轉發。
VTEP(VXLAN Tunnel End Point):VXLAN的隧道端點設備,它可以是獨立的物理設備也可以是一套軟件。VTEP具備2個接口:一個是二層接口,負責接收本地的原始數據幀,并根據其對應的VSI識別出其所屬VXLAN,然后進行隧道封裝轉發;另一個是三層接口,負責接收隧道上的封裝數據幀并將其解封裝,然后根據其原始MAC地址進行轉發。
VXLAN Tunnel:2個VTEP之間建立的點到點邏輯隧道,用于在VTEP之間傳遞VXLAN封裝報文。
核心設備(Provider,P):IP網絡中的核心設備,上不參與VXLAN的處理,僅根據報文外層目的IP地址進行轉發。
VXLAN轉發機制即VTEP對數據幀進行隧道封裝、解封裝及轉發的過程。可概括為,建立VXLAN隧道并與之關聯、識別VXLAN、源MAC地址學習和數據報文轉發4個過程[4]。
3.1建立隧道并與之關聯
VXLAN網絡中的VTEP通過VXLAN隧道,可使二層網絡突破物理上的界限,實現大二層網絡的通信。若2個VTEP下的VM有大二層互通需求,則VTEP之間需兩兩建立VXLAN隧道。VXLAN隧道建立示意圖如圖2所示,VM A與VM B、VM B與VM C、VM C與VM D、VM D與VM A需要互通,則VTEP A與VTEP B、VTEP B與VTEP C、VTEP C與VTEP D、VTEP D與VTEP A需兩兩建立VXLAN隧道。

②Untagged,是指VTEP在本地接收的,進入VXLAN隧道前的原始報文不允許攜帶VLAN Tag。VTEP在進行VXLAN封裝前,不為報文添加VLAN Tag;VTEP在隧道上收到的報文,解封裝后不對VLAN Tag進行修改,直接轉發。
③Default,是指VTEP在本地接收的,進入VXLAN隧道前的原始報文,可以帶VLAN Tag也可以不帶Tag。VTEP設備對VXLAN封裝前和解封裝后的原始報文的VLAN標簽不進行修改,直接轉發。
VXLAN技術是基于三層網絡的網絡虛擬化技術,有效地解決了云數據中心虛擬機規模不斷增大和虛擬機的遷移問題。
隨著數云據中心業務量的不斷增加,規模逐漸擴大,為了降低運營和建設成本,采用VXLAN技術,促使基于物理網絡的云數據中心業務向大二層網絡和服務器虛擬化方向快速發展。
VXLAN在云數據中心的應用,主要分為3個方面:一是解決在物理位置上相互隔離的數據中心之間、相同網段的VM之間的互通問題;二是解決在物理位置上相互隔離的數據中心之間、不同網段的VM之間的互通問題;三是解決在物理位置上相互隔離的數據中心之間、不同或相同網段的VM的遷移問題。
4.1相同網段不同VM的互通
在這種應用場景下,由于不同數據中心的VM工作在相同的網段,因此將與之相連的接入交換機作為VXLAN的二層網關,在不同VM相連的接入交換機上配置VXLAN隧道,通過兩端接入交換機的二層隧道,實現相同網段VM的互通。
例如,某公司數據中心1中的接入交換機1連接服務器1,服務器1上運行著2個虛擬機VM1和VM2。VM1屬于VLAN10,VM2屬于VLAN20,2個VM的工作網段為192.168.1.10/24;數據中心2中的接入交換機2連接服務器2,服務器2上運行著2個虛擬機VM3和VM4。VM3屬于VLAN10,VM4屬于VLAN20,2個VM的工作網段為192.168.1.20/24。
當VM1,VM2想要和VM3,VM4通信時,由于4個VM均工作在相同的網段192.168.1.0/24,所以只需在數據中心1中的接入交換機1和數據中心2中的接入交換機2之間建立二層隧道,實現2個數據中心的不同VM之間的互通。
4.2不同網段不同VM的互通
在這種應用場景下,由于不同數據中心的VM工作在不同的網段,因此將與之相連的接入交換機作為VXLAN的二層網關,將接入三層網絡的交換機作為VXLAN的三層網關,在本端二層網關和三層網關之間建立VXLAN隧道,通過三層網關轉發,實現不同網段的VM之間的互通。
例如,某公司數據中心1中的接入交換機1連接服務器1,服務器1上運行著2個虛擬機VM1和VM2,與接入交換機1互聯的三層交換機3作為VXLAN的三層網關。VM1屬于VLAN10,VM2屬于VLAN20,2個VM的工作網段為192.168.1.10/24;數據中心2中的接入交換機2連接服務器2,服務器2上運行著2個虛擬機VM3和VM4,與接入交換機2互聯的三層交換機4作為VXLAN的三層網關。VM3屬于VLAN10,VM4屬于VLAN20,2個VM的工作網段為192.168.2.10/24。
當VM1,VM2想要和VM3,VM4通信時,由于VM1,VM2和VM3,VM4工作在不同的網段,因此需要分別在數據中心1中的接入交換機1和三層交換機3之間,數據中心2中的接入交換機2和三層交換機4之間建立VXLAN隧道,通過三層轉發,實現2個數據中心的不同VM之間的互通。
4.3 VM在不同站點間遷移
隨著數據中心虛擬化程度的不斷提高,物理服務器上VM的數量也在不斷增加,為數據中心整體資源利用率的整合帶來了很大的挑戰。例如,將數據中心中資源利用率超限的虛擬集群中VM遷移至資源利用率較低的虛擬集群中,實現VM在不同站點間遷移,達到數據中心整體資源的合理利用。
當VM在不同站點間遷移時,要保證在遷移過程中業務不中斷,保證數據中心業務運行的穩定性和不間斷性。
VXLAN技術的應用保證了VM在遷移過程中的業務不中斷。要保證VM在遷移過程中數據業務不中斷,實際上就是要保證VM的IP地址和MAC地址等參數在遷移過程中不發生改變,也就是要求VM遷移前后的2個網絡環境處在同一個二層網絡。VXLAN技術的應用,很好地解決了大二層網絡互通問題,適合不同站點間VM業務的不中斷遷移。
例如,某公司有3個部門:部門1,部門2和部門3,分別工作不同網段。該公司的數據中心建立了2個虛擬集群,集群1和集群2。部門1業務量較大,工作在集群1;部門2和部門3業務量較小,工作在集群2。但隨著部門2和部門3的業務擴展,集群2的可用計算資源顯示不足,而此時集群1的資源利用率不高。這時,為了整體資源整合,提高利用率,需要將部門2或部門3的某個VM遷移到集群1中,并保證在遷移過程中業務不中斷。
遷移過程要采用“不同網段的VM互通”的方式,在VM遷移前后的2個集群之間,通過三層網關建立VXLAN隧道,實現VM的無縫遷移。當VM遷移到新的集群后,會發送免費ARP報文。這是一種特殊的ARP請求報文,它并不是要得到目的IP地址對應的MAC地址,而是在本網段中通告自己的IP地址和MAC地址。VM通過這種報文,來檢測當前網絡環境中是否存在IP地址沖突,并將自己的IP地址和MAC地址通告給其他主機,讓其更新ARP緩存表,達到大二層網絡互通,實現VM在不同站點間的“無感知”遷移。
本文從云數據中心虛擬網絡的發展瓶頸入手,引入VXLAN技術,分析了VXLAN的技術優勢和技術原理,重點探討了VXLAN技術的轉發機制,并詳細介紹了VXLAN技術在不同場景的應用。本文為VXLAN技術在大規模云數據中心建設中的應用提供了有力的支撐,為后續科研以及工程人員對該技術做深一步的研究提供了有力的參考。
[1]繆仕福.VXLAN網絡技術研究[J].科技資訊,2015,13(4): 15-16.
[2]李道.基于PPPoE的轉發與控制分離系統的設計與實現[D].成都:西南交通大學,2018.
[3]楊先華,余毅,黃俊.網絡技術VXLAN在數據中心網絡中的應用[J].信息與電腦(理論版),2019(10):194-195.
[4]姬凌宇,賈小云,蔣遠輝.軟件定義網絡VXLAN的研究與應用[J].延安職業技術學院學報,2017,31(5):98-99.
[5]呂文天.基于CAS云平臺的VXLAN測試系統設計與開發[D].重慶:重慶大學,2017.
[6]李平,張超,呂博,等.探析VXLAN技術在通信接入網中應用[D].通信設計與應用,2017(16):38-39.