嘿,运维!你与VXLAN有场约会……
圖片來源:網(wǎng)絡
作者
Bert
如有轉(zhuǎn)載,請聯(lián)系本公眾號。
VXLAN概述 ▍
顧名思義,VXLAN(Virtual eXtensible Local Area Network)提供了類似VLAN的二層網(wǎng)絡服務,并且比VLAN更具備擴展性和靈活性,該技術(shù)將數(shù)據(jù)中心物理網(wǎng)絡架構(gòu)(underlay)與數(shù)據(jù)中心邏輯網(wǎng)絡架構(gòu)(overlay)解耦,滿足了云計算對數(shù)據(jù)中心網(wǎng)絡架構(gòu)靈活部署和彈性擴展的需求。
對比VLAN,VXLAN優(yōu)勢如下:
?業(yè)務靈活部署:VXLAN可以在共享的數(shù)據(jù)中心物理網(wǎng)絡架構(gòu)之上提供邏輯的大二層擴展,用戶或者管理員可以實現(xiàn)業(yè)務的靈活按需部署。
?優(yōu)良的彈性:VXLAN使用24-bit VNI(VXLAN Network Identifier),允許多達
1600萬的VXLAN段(segment)在相同的管理域中共存。
?更佳的底層網(wǎng)絡利用率:VLAN為避免環(huán)路,使用STP阻斷(block)冗余鏈路。VXLAN采用UDP封裝,利用第三層IP路由、等成本路徑(ECMP)和鏈路聚合(LACP)技術(shù)使用了全部可用路徑。
VXLAN數(shù)據(jù)包格式
VXLAN是一種承載協(xié)議,定義了MAC-over-UDP的封裝方案,由內(nèi)(inner)到外(outer)分別增加了8字節(jié)VXLAN頭部,8字節(jié)UDP頭部,20字節(jié)IP頭部和14字節(jié)以太網(wǎng)頭部,合計增加了50字節(jié)封裝。
VXLAN包格式如圖1所示:
圖1
VXLAN術(shù)語
?VXLAN隧道端點(VTEP):VTEP(VXLAN Tunnel Endpoint )負責VXLAN報文的封裝與解封裝。每個VTEP具備兩個接口:一個是本地橋接接口,負責原始以太幀接收和發(fā)送,另一個是IP接口,負責VXLAN數(shù)據(jù)幀接收和發(fā)送。VTEP可以是物理交換機或軟件交換機。
VTEP如圖2所示:
圖2
?VXLAN IP網(wǎng)關(guān):VXLAN IP網(wǎng)關(guān)(VXLAN IP Gateway)負責VXLAN和非VXLAN之間、不同VXLAN之間的網(wǎng)絡通訊。
VXLAN網(wǎng)關(guān)如圖3所示:
圖3
?VXLAN組播:VXLAN組播(multicast)用于減小VXLAN主機的廣播洪泛范圍,實現(xiàn)遠程VTEP發(fā)現(xiàn)、完成遠程主機MAC地址與MAC-to-VTEP映射學習。每個VXLAN段可被映射到一個組播組,VTEP設備通過Internet Group Management Protocol(IGMP)協(xié)議加入這個組播組。。
VXLAN組播組部署如圖4所示:
圖4
VXLAN技術(shù)
?遠程VTEP發(fā)現(xiàn)和MAC地址學習
本文僅討論經(jīng)典模式的遠程VTEP發(fā)現(xiàn)和MAC地址學習機制。圖5中顯示了VTEP發(fā)現(xiàn)和MAC地址學習過程。有三個VTEP參與VXLAN 10,使用組播組239.1.1.1,終端設備A(使用IP-A,MAC-A)與終端設備B(使用IP-B,MAC-B)通訊。
①終端設備A發(fā)送ARP請求,請求終端設備B的MAC地址;
②VTEP-1收到終端設備A發(fā)送的ARP請求,此時VTEP-1還沒有終端設備B對應的地址映射表項,VTEP-1將ARP請求進行VXLAN封裝,VNI設置為10,outer-src-ip是VTEP-1的IP,outer-dst-ip是加入的組播地址,封裝完成后轉(zhuǎn)發(fā)至VXLAN組播組;?
③VTEP-2、VTEP3加入相同的組播組,所有組成員都會收到VTEP-1發(fā)送的組播報文,解封裝后檢查VNI與本地VNI是否匹配,如匹配則將ARP請求發(fā)送至本地網(wǎng)絡,同時記錄終端設備A的VNI、inner MAC、outer IP的對應關(guān)系,構(gòu)建控制平面地址映射表項。如VNI不匹配則丟棄數(shù)據(jù)包。
④終端設備B通過VTEP-2收到ARP請求后,以單播方式發(fā)送ARP響應,并且記錄IP-A-to-MAC-A映射。
⑤VTEP-2收到終端設備B的ARP響應后進行VXLAN封裝,此時VTEP-2已經(jīng)構(gòu)建控制平面地址映射表項,通過VXLAN封裝后以UDP單播方式發(fā)送。Outer-src-ip是VTEP-2的IP地址,outer-dst-ip是VTEP-1的IP地址;
⑥VTEP-1收到封裝后的ARP響應后,解封裝比對VNI,如匹配將ARP響應發(fā)送至終端設備A,同時記錄VNI、inner MAC、outer IP的對應關(guān)系,構(gòu)建控制平面表項;
⑦此時VTEP-1、VTEP-2均已成功構(gòu)建控制平面地址映射信息,后續(xù)VXLAN數(shù)據(jù)使用單播在VTEP-1和VTEP-2之間傳輸。
小貼士:VTEP可以配置ARP proxy,減少ARP組播請求。
圖5
?VXLAN數(shù)據(jù)轉(zhuǎn)發(fā)
VTEP為原始數(shù)據(jù)幀增加UDP報頭,新的報頭到達目的VTEP后才會被去掉,中間路徑的網(wǎng)絡設備只會根據(jù)外層(outer)包頭內(nèi)的目的地址進行數(shù)據(jù)轉(zhuǎn)發(fā)。在圖6中,VXLAN 10中的Host-A和Host-B通過VTEP-1和VTEP-2之間的VXLAN隧道相互通信。這個例子假設在兩邊都已經(jīng)完成了地址學習,并且在兩個VTEP上都有相應的MAC-to-VTEP映射。
①當Host-A向Host-B發(fā)送流量時,它會將主機的MAC-B地址作為目標MAC地址,并將其發(fā)送到VTEP-1。
②VTEP-1在其映射表中映射了MAC-B到VTEP-2,通過在數(shù)據(jù)包中添加VXLAN、UDP和外部IP地址頭來執(zhí)行VXLAN封裝。在外部IP地址頭中,源IP地址是VTEP-1的IP地址,目標IP地址是VTEP-2的IP地址。VTEP-1對VTEP-2的IP地址進行IP地址查找,找到傳輸網(wǎng)絡中的下一個跳,然后使用下一跳設備的MAC地址進一步封裝數(shù)據(jù)幀,發(fā)送到下一跳設備。
③ROUTER-1和ROUTER-2通過查找路由表,依據(jù)外部IP地址頭信息進行轉(zhuǎn)發(fā)。
④這些信息包基于其外部IP地址頭信息被路由到VTEP-2,后者的IP地址為VTEP-2。
VTEP-2接收數(shù)據(jù)包之后,它會去掉外部以太網(wǎng)、IP、UDP和VXLAN頭信息,并根據(jù)以太網(wǎng)幀中原始的目標MAC地址將數(shù)據(jù)包轉(zhuǎn)發(fā)給Host-B。
圖6
結(jié)論
數(shù)據(jù)中心的云計算網(wǎng)絡架構(gòu)規(guī)劃、部署和配置是一項復雜的工作。虛擬網(wǎng)絡抽象不但隱藏了底層網(wǎng)絡部署的復雜性,而且能夠更好的管理網(wǎng)絡資源,最大程度減少了網(wǎng)絡部署耗時和配置錯誤。TCP平臺將虛擬網(wǎng)絡(overlay)承載在數(shù)據(jù)中心傳統(tǒng)網(wǎng)絡(underlay)之上,允許用戶像定義傳統(tǒng)L2/L3網(wǎng)絡那樣定義自己的虛擬網(wǎng)絡,一旦虛擬網(wǎng)絡完成定義,TCP平臺會將此邏輯虛擬網(wǎng)絡通過overlay 技術(shù)映射到underlay網(wǎng)絡并自動分配網(wǎng)絡資源。
后續(xù)我們還將分享:VXLAN在云計算中心的部署實踐、服務鏈(SFC)在云計算基礎(chǔ)架構(gòu)中的應用、NFV在云計算基礎(chǔ)機構(gòu)中的應用,以及云計算安全等話題,敬請期待。
掃描下方二維碼加入【云計算學習交流群】,和志同道合的朋友們共同打卡學習吧~~
成為群成員,或拉人進群,
還有機會獲得免費贈書哦~~
完
投稿啦!!!
精彩繼續(xù)
CSDN作為國內(nèi)專業(yè)的云計算服務平臺,目前提供云計算、大數(shù)據(jù)、虛擬化、數(shù)據(jù)中心、OpenStack、CloudStack、機器學習、智能算法等相關(guān)云計算觀點、技術(shù)、平臺、實踐、云產(chǎn)業(yè)咨詢等服務。CSDN?公眾號也一直堅持「與千萬技術(shù)人共成長」的理念,深度解讀行業(yè)內(nèi)熱門技術(shù)與場景應用,致力于讓所有開發(fā)者保持敏銳的技術(shù)嗅覺、對行業(yè)趨勢與技術(shù)獲得更廣闊的認知。
文章題材
首先你需要關(guān)注我們的公眾號“CSDN云計算”,這樣你會更準確了解我們需要的文章風格;
側(cè)重于云計算領(lǐng)域相關(guān)的文章,可以是技術(shù)、運維、趨勢等方面的務實內(nèi)容;
原創(chuàng),要求文章有鮮明觀點和看法。
投稿須知
?稿費:根據(jù)原創(chuàng)性、實用性和時效性等方面進行審核,通過的文章會發(fā)布在本微信平臺。一經(jīng)采用,我們將支付作者酬勞。酬勞可能不多,這代表的是一個心意,更多是因為愛好,是有識之士抒發(fā)胸懷的一種方式;
字數(shù)要求:稿件字數(shù)以2K-8K為宜,少于2K或多于8K都會一定程度降低閱讀愉悅感;
投稿郵箱:lijy@csdn.net。或者添加微信表明來意,微信號:tangguoyemeng。請備注投稿+姓名+公司職位。
如果咱們的合作穩(wěn)定又愉快,還可以簽訂合同長期合作哦!
總結(jié)
以上是生活随笔為你收集整理的嘿,运维!你与VXLAN有场约会……的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一座在云端的工厂是什么样的?
- 下一篇: 云漫圈 | AR VR傻傻分不清楚。。