隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,云計算憑借其系統(tǒng)利用率高、人力/管理成本低以及靈活性/擴展性方面展現(xiàn)的優(yōu)勢,已經(jīng)成為目前各大行業(yè)IT建設(shè)的新趨勢。而服務(wù)器的虛擬化作為云計算的核心技術(shù)之一,也得到了越來越多的應(yīng)用,從而極大的增加了數(shù)據(jù)中心的計算密度;同時,為了實現(xiàn)業(yè)務(wù)的靈活變更部署,虛擬機在二層網(wǎng)絡(luò)中的無限制遷移需求越來越迫切。而傳統(tǒng)的經(jīng)典二、三層網(wǎng)絡(luò)已無法完全滿足這些需求。為解決云計算帶來的挑戰(zhàn),VxLAN(Virtual extensible Local Area Network,虛擬擴展局域網(wǎng))技術(shù)應(yīng)運而生,下面就讓我們來一探究竟,VxLAN的技術(shù)優(yōu)勢和技術(shù)原理。
服務(wù)器虛擬化技術(shù)越來越多的在數(shù)據(jù)中心當(dāng)中普及應(yīng)用,使我們數(shù)據(jù)中心的服務(wù)器利用率越來越高,業(yè)務(wù)、應(yīng)用部署的靈活性和可擴展性越來越強。隨之而來的,是大量經(jīng)典網(wǎng)絡(luò)疲于應(yīng)對的挑戰(zhàn):容量、靈活性及擴展性等等。對于此類問題,VxLAN網(wǎng)絡(luò)都具備合理可行的解決方案:
1. 容量問題:
a) VLAN容量:在經(jīng)典網(wǎng)絡(luò)中,二層網(wǎng)絡(luò)隔離通常通過VLAN(虛擬局域網(wǎng))完成,由于二層網(wǎng)絡(luò)環(huán)境中的廣播、組播及未知單播都會在VLAN內(nèi)泛洪,故一個VLAN內(nèi)不適宜放置大量主機,而二層網(wǎng)絡(luò)中可用VLAN的數(shù)量為4096,無法滿足虛擬化環(huán)境中的大量終端主機接入。而VxLAN網(wǎng)絡(luò)以overlay的概念,提供了多達16M個VXLAN段,同時每個VXLAN段中又可包含4096個VLAN段,解決了VLAN容量問題;
b) MAC地址容量問題:在經(jīng)典網(wǎng)絡(luò)中,二層匯聚交換機及二層核心交換機的MAC地址容量極為有限,無法支撐大量虛擬機的接入需求。而在VxLAN網(wǎng)絡(luò)中,由于其核心承載網(wǎng)為三層Overlay網(wǎng)絡(luò),大二層環(huán)境不再受限于CAM表的容量,解決了大量主機接入消耗二層核心網(wǎng)絡(luò)資源的問題;
2. 靈活性問題:
a) 虛擬機遷移:出于業(yè)務(wù)連續(xù)性的要求,業(yè)務(wù)所在虛擬機的遷移需保證平滑,即要求在虛擬機遷移前后的IP地址及MAC地址等信息不發(fā)生變化。對于跨物理地域的大規(guī)模數(shù)據(jù)中心來說,因為二層生成樹協(xié)議的收斂半徑問題,完全無法實現(xiàn)經(jīng)典網(wǎng)絡(luò)的二層打通,三層隔離導(dǎo)致特定應(yīng)用與特定數(shù)據(jù)中心、特定應(yīng)用與特定接入場景的緊耦合。此類問題可以通過VxLAN技術(shù)來實現(xiàn)overlay的大二層打通,從而進一步完成服務(wù)器與接入交換機、匯聚交換機及接入數(shù)據(jù)中心的解耦合,增強服務(wù)器、虛擬機及業(yè)務(wù)的可遷移性;
3. 擴展性問題:
a) 二層網(wǎng)絡(luò)擴展性:傳統(tǒng)二層網(wǎng)絡(luò)為了完成在引入冗余的情況下避免二層環(huán)路而引進了生成樹技術(shù),其特有的擁塞避免機制要求生成樹半徑不宜過大,同時二層設(shè)備物理距離不宜過遠,極大限制了二層網(wǎng)絡(luò)規(guī)模的擴展性。而VxLAN技術(shù)通過三層Overlay隧道技術(shù),引入隧道水平分割防環(huán)機制,在Underlay路由網(wǎng)絡(luò)基礎(chǔ)上進行大二層擴展,可完成網(wǎng)絡(luò)與網(wǎng)絡(luò)設(shè)備物理位置的解耦合,滿足大二層網(wǎng)絡(luò)多地、多中心的建設(shè)需求;
4. 二層兼容性問題:
a) 在經(jīng)典網(wǎng)絡(luò)中,金融行業(yè)數(shù)據(jù)中心常常需要配置多個獨立的二層網(wǎng)絡(luò)環(huán)境。這些獨立的二層網(wǎng)絡(luò)環(huán)境各自擁有自己獨立的沖突域、廣播域,在這些二層環(huán)境中為了增加網(wǎng)絡(luò)冗余性同時又能夠避免環(huán)路,引入了生成樹協(xié)議。而生成樹協(xié)議對不同廠商間的網(wǎng)絡(luò)設(shè)備提出了較高的兼容性挑戰(zhàn)。而引入VxLAN技術(shù)作為數(shù)據(jù)中心互聯(lián)網(wǎng)絡(luò),可以有效的在VxLAN三層underlay網(wǎng)絡(luò)的基礎(chǔ)上隔絕單數(shù)據(jù)中心內(nèi)的生成樹BPDU報文,將生成樹限制在單數(shù)據(jù)中心范圍。有效的限制了數(shù)據(jù)中心二層生成樹規(guī)模,提高了生成樹的收斂效率,同時解決了跨品牌網(wǎng)絡(luò)交換機二層對接組網(wǎng)問題;
至此,我們了解到,VxLAN技術(shù)作為一項Overlay多層標(biāo)簽封裝隧道技術(shù),其主要的功能是以三層路由網(wǎng)絡(luò)為underlay基礎(chǔ),建立大二層Overlay網(wǎng)絡(luò)。實現(xiàn)同VxLAN擴展局域網(wǎng)內(nèi)跨網(wǎng)段跨VLAN通信、降低核心二層網(wǎng)絡(luò)CAM表資源占用、虛機靈活遷移及網(wǎng)絡(luò)規(guī)模自由擴展等未來技術(shù)發(fā)展的網(wǎng)絡(luò)核心問題。下面我們再來進一步了解VxLAN的基本原理和工作機制。
VxLAN:Virtualextensible Local Area Network,虛擬擴展局域網(wǎng)。IETF定義NVO3標(biāo)準(zhǔn)技術(shù)之一,采用MAC-in-UDP報文封裝模式,通過將二層報文使用三層協(xié)議封裝實現(xiàn)二層網(wǎng)絡(luò)在三層范圍內(nèi)擴展,滿足數(shù)據(jù)中心大二層虛擬機遷移和多租戶需求;
VxLAN術(shù)語介紹:
a. NVE:NetworkVirtualization Edge,網(wǎng)絡(luò)虛擬邊緣,用于建立VxLAN隧道的網(wǎng)絡(luò)設(shè)備;
b. VTEP:VxLANtunnel End Point,VxLAN隧道端點,指建立VxLAN隧道的NVE設(shè)備端點IP,可用于靜態(tài)VxLAN配置及動態(tài)VxLAN配置;
c. VNI:VirtualNetwork Identifier,虛擬網(wǎng)絡(luò)ID,一個VNI即一個VxLAN廣播域,實現(xiàn)VxLAN廣播域隔離,相當(dāng)于VLAN中的VLAN ID;
d. BD:BridgeDomain,定義一個VxLAN廣播域,可配合配置BDIF,實現(xiàn)跨VxLAN路由,一個BD唯一映射一個VNI;
? VxLAN報文格式:
VTEP對VM發(fā)送的原始以太幀(Original L2 Frame)進行以下“包裝”:
1. VxLAN Header:8字節(jié)VxLAN頭部,包含24bit VNI字段,定義VxLAN網(wǎng)絡(luò)內(nèi)不同的廣播域。
2. UDP Header:VxLAN頭部與原始數(shù)據(jù)幀作為UDP數(shù)據(jù)。UDP目的端口號為UDP-4789,源端口為原始以太網(wǎng)通過哈希計算后得到;
3. Outer IP Header:外層IP頭部。其中源IP為源VTEP隧道端點IP。目標(biāo)IP為目標(biāo)VTEP隧道端點IP;
4. Outer MAC Header:外層二層幀頭,源MAC及目標(biāo)MAC與傳統(tǒng)網(wǎng)絡(luò)相似,每一跳路由后都會更換為當(dāng)前廣播域的兩端路由節(jié)點MAC地址。
VxLAN網(wǎng)絡(luò)中數(shù)據(jù)包的轉(zhuǎn)發(fā)一般來說分為兩大類,其中第一類為BUM報文轉(zhuǎn)發(fā),所謂BUM報文轉(zhuǎn)發(fā)即為Broadcast/UnknowUnicast/Multicast等泛洪類報文;第二類為單播已知流量轉(zhuǎn)發(fā)。下面分別就兩類報文的轉(zhuǎn)發(fā)流程做一介紹。
1. BUM報文轉(zhuǎn)發(fā):BUM報文轉(zhuǎn)發(fā)目前在VxLAN中有兩種方式可以實現(xiàn):組播和頭端復(fù)制。使用組播的情況下,需要VxLAN中underlay網(wǎng)絡(luò)啟用組播,運維較為繁瑣,不推薦使用。故這里只介紹頭端復(fù)制,其轉(zhuǎn)發(fā)流程如圖:
a. 主機A向主機B發(fā)出ARP請求,源MAC為主機A-MAC,目標(biāo)MAC為全F廣播MAC;
b. 該請求到達VTEP-1后,VTEP-1根據(jù)收到報文的二層子接口關(guān)聯(lián)BD判斷此報文傳輸對應(yīng)的VxLAN隧道及VNI編號,此后VTEP-1會根據(jù)頭端復(fù)制列表對報文進行復(fù)制及VxLAN封裝并在相應(yīng)的VxLAN隧道中進行傳輸;
c. ARP請求在VxLAN網(wǎng)絡(luò)中依據(jù)底層underlay路由網(wǎng)絡(luò)傳輸,源IP為VTEP-1端點IP,目標(biāo)IP為VTEP-2端點IP;
d. 數(shù)據(jù)包經(jīng)VxLAN網(wǎng)絡(luò)傳輸后到達VTEP-2,VTEP-2對數(shù)據(jù)包進行解封裝,得到原始ARP報文,VTEP-2記錄主機A的MAC地址、VNI及對應(yīng)遠端VTEP的IP地址信息,并將ARP原始報文繼續(xù)向后轉(zhuǎn)發(fā)至主機B;
e. 主機B收到ARP request后響應(yīng)此請求,并將ARP response回復(fù)至VTEP-2,VTEP-2根據(jù)d步驟中記錄的主機A信息以單播形式進行恢復(fù);
2. 已知單播流量轉(zhuǎn)發(fā):
a. 主機A向主機B發(fā)送數(shù)據(jù),以主機B的MACB和IPB作為數(shù)據(jù)包的目標(biāo)mac和ip. 主機A的MACA和IPA作為數(shù)據(jù)包的源mac和ip,封裝完成后將報文發(fā)送到VTEP-1;
b. VTEP-1從自己維護的CAM表中尋址得到MACB下一跳轉(zhuǎn)發(fā)目的,執(zhí)行VxLAN封裝。新增VxLAN頭、UDP頭、外層IP 及MAC包頭。外層IP頭部內(nèi)源IP為VTEP-1端點IP ,外層IP頭部內(nèi)目標(biāo)IP為VTEP-2的端點IP。外層源mac為VTEP-1的VNI隧道端點MAC, 由于在此拓撲中Router-1為下一跳,所以外層MAC的目標(biāo)MAC為Router-1的underlay網(wǎng)絡(luò)下一跳MAC;.
c. 數(shù)據(jù)包從VTEP-1發(fā)送出去后,外部網(wǎng)絡(luò)的路由器會依據(jù)外層ip頭進行路由轉(zhuǎn)發(fā),最后到達目的設(shè)備VTEP-2.
d. VTEP-2負責(zé)解封裝數(shù)據(jù)包,依次去掉外層MAC頭,外層IP頭,UDP頭和VxLAN頭并將數(shù)據(jù)包最終發(fā)送至主機B。
以上是本次對于VxLAN技術(shù)的技術(shù)優(yōu)勢、基本技術(shù)及基本轉(zhuǎn)發(fā)流程的初步介紹,Vxlan技術(shù)是目前最主流的網(wǎng)絡(luò)Overlay技術(shù),是物理網(wǎng)絡(luò)向云和虛擬化深度延伸,實現(xiàn)云網(wǎng)融合的關(guān)鍵。將其真正的應(yīng)用到我們的生產(chǎn)場景中還需要很多的技術(shù)積累,我們也將不斷的以新技術(shù)來武裝自己,不斷的完善強壯我們的網(wǎng)絡(luò)架構(gòu)。
-
云計算
+關(guān)注
關(guān)注
39文章
7993瀏覽量
142084 -
數(shù)據(jù)中心
+關(guān)注
關(guān)注
16文章
5423瀏覽量
74322 -
VxLAN
+關(guān)注
關(guān)注
0文章
24瀏覽量
4093
發(fā)布評論請先 登錄
評論