VXLAN技術(shù)解析
2020-02-15 21:15 作者:艾銻無限 瀏覽量:
迎戰(zhàn)疫情,艾銻無限用愛與您同行
為中國中小企業(yè)提供免費IT外包服務(wù)

這次的肺炎疫情對中國的中小企業(yè)將會是沉重的打擊,據(jù)釘釘和微信兩個辦公平臺數(shù)據(jù)統(tǒng)計現(xiàn)有2億左右的人在家遠程辦公,那么對于中小企業(yè)的員工來說不懂IT技術(shù)將會讓他們面臨的最大挑戰(zhàn)和困難。
電腦不亮了怎么辦?系統(tǒng)藍屏如何處理?辦公室的電腦在家如何連接?網(wǎng)絡(luò)應(yīng)該如何設(shè)置?VPN如何搭建?數(shù)據(jù)如何對接?服務(wù)器如何登錄?數(shù)據(jù)安全如何保證?數(shù)據(jù)如何存儲?視頻會議如何搭建?業(yè)務(wù)系統(tǒng)如何開啟等等一系列的問題,都會困擾著并非技術(shù)出身的您。
好消息是當您看到這篇文章的時候,就不用再為上述的問題而苦惱,您只需撥打艾銻無限的全國免費熱線電話:400 650 7820,就會有我們的遠程工程師為您解決遇到的問題,他們可以遠程幫您處理遇到的一些IT技術(shù)難題。
如遇到免費熱線占線,您還可以撥打我們的24小時值班經(jīng)理電話:15601064618或技術(shù)經(jīng)理的電話:13041036957,我們會在第一時間接聽您的來電,為您提供適合的解決方案,讓您無論在家還是在企業(yè)都能無憂辦公。
那艾銻無限具體能為您的企業(yè)提供哪些服務(wù)呢?
艾銻無限始創(chuàng)于2005年,歷經(jīng)15年服務(wù)了5000多家中小企業(yè)并保障了幾十萬臺設(shè)備的正常運轉(zhuǎn),積累了豐富的企業(yè)IT緊急問題和特殊故障的解決經(jīng)驗,制定了相對應(yīng)的解決方案。我們?yōu)槟钠髽I(yè)提供的IT服務(wù)分為三大版塊:
第一版塊是保障性IT外包服務(wù):如電腦設(shè)備運維,辦公設(shè)備運維,網(wǎng)絡(luò)設(shè)備運維,服務(wù)器運維等綜合性企業(yè)IT設(shè)備運維服務(wù)。
第二版塊是功能性互聯(lián)網(wǎng)外包服務(wù):如網(wǎng)站開發(fā)外包,小程序開發(fā)外包,APP開發(fā)外包,電商平臺開發(fā)外包,業(yè)務(wù)系統(tǒng)的開發(fā)外包和后期的運維外包服務(wù)。
第三版塊是增值性云服務(wù)外包:如企業(yè)郵箱上云,企業(yè)網(wǎng)站上云,企業(yè)存儲上云,企業(yè)APP小程序上云,企業(yè)業(yè)務(wù)系統(tǒng)上云,阿里云產(chǎn)品等后續(xù)的云運維外包服務(wù)。
您要了解更多服務(wù)也可以登錄艾銻無限的官網(wǎng):www.bjitwx.com查看詳細說明,在疫情期間,您企業(yè)遇到的任何困境只要找到艾銻無限,能免費為您提供服務(wù)的我們絕不收一分錢,我們?nèi)w艾銻人承諾此活動直到中國疫情結(jié)束,我們將這次活動稱為——春雷行動。
以下還有我們?yōu)槟峁┑囊恍┘夹g(shù)資訊,以便可以幫助您更好的了解相關(guān)的IT知識,幫您渡過疫情中辦公遇到的困難和挑戰(zhàn),艾銻無限愿和中國中小企業(yè)一起共進退,因為我們相信萬物同體,能量合一,只要我們一起齊心協(xié)力,一定會成功。再一次祝福您和您的企業(yè),戰(zhàn)勝疫情,您和您的企業(yè)一定行。
北京艾銻無限告訴您:VXLAN技術(shù)解析
一 vxlan 簡介
VXLAN 全稱是 Virtual eXtensible Local Area Network,虛擬可擴展的局域網(wǎng)。它是一種 overlay 技術(shù),通過三層的網(wǎng)絡(luò)來搭建虛擬的二層網(wǎng)絡(luò)。
每一個技術(shù)出來都有它要解決的問題,VXLAN 也不例外,那么我們先看看 VXLAN 到底要解決哪些問題。
1 虛擬化(虛擬機和容器)的興起使得一個數(shù)據(jù)中心會有成千上萬的機器需要通信,而傳統(tǒng)的 VLAN 技術(shù)只能支持 4096 個網(wǎng)絡(luò)上限,已經(jīng)滿足不了不斷擴展的數(shù)據(jù)中心規(guī)模
2 越來越多的數(shù)據(jù)中心(尤其是公有云服務(wù))需要提供多租戶的功能,不同用戶之間需要獨立地分配 ip 和 MAC 地址,如何保證這個功能的擴展性和正確性也是一個待解決的問題
3 云計算業(yè)務(wù)對業(yè)務(wù)靈活性要求很高,虛擬機可能會大規(guī)模遷移,并保證網(wǎng)絡(luò)一直可用,也就是大二層的概念。解決這個問題同時保證二層的廣播域不會過分擴大,也是云計算網(wǎng)絡(luò)的要求
二 VXLAN 模型
vxlan 這類隧道網(wǎng)絡(luò)的一個特點是對原有的網(wǎng)絡(luò)架構(gòu)影響小,原來的網(wǎng)絡(luò)不需要做任何改動,在原來網(wǎng)絡(luò)基礎(chǔ)上架設(shè)一層新的網(wǎng)絡(luò)。
vxlan 自然會引入一些新的概念,這部分就講講它們。下面這張圖 是 vxlan 的工作模型,它創(chuàng)建在原來的 IP 網(wǎng)絡(luò)(三層)上,只要是三層可達(能夠通過 IP 互相通信)的網(wǎng)絡(luò)就能部署 vxlan。在每個端點上都有一個 vtep 負責 vxlan 協(xié)議報文的封包和解包,也就是在虛擬報文上封裝 vtep 通信的報文頭部。物理網(wǎng)絡(luò)上可以創(chuàng)建多個 vxlan 網(wǎng)絡(luò),這些 vxlan 網(wǎng)絡(luò)可以認為是一個隧道,不同節(jié)點的虛擬機能夠通過隧道直連。每個 vxlan 網(wǎng)絡(luò)由唯一的 VNI 標識,不同的 vxlan 可以不相互影響。
1 VTEP(VXLAN Tunnel Endpoints):vxlan 網(wǎng)絡(luò)的邊緣設(shè)備,用來進行 vxlan 報文的處理(封包和解包)。vtep 可以是網(wǎng)絡(luò)設(shè)備(比如交換機),也可以是一臺機器(比如虛擬化集群中的宿主機)
2 VNI(VXLAN Network Identifier):VNI 是每個 vxlan 的標識,是個 24 位整數(shù),一共有 2^24 = 16,777,216(一千多萬),一般每個 VNI 對應(yīng)一個租戶,也就是說使用 vxlan 搭建的公有云可以理論上可以支撐
千萬級別的租戶
3 Tunnel:隧道是一個邏輯上的概念,在 vxlan 模型中并沒有具體的物理實體想對應(yīng)。隧道可以看做是一種虛擬通道,vxlan 通信雙方(圖中的虛擬機)認為自己是在直接通信,并不知道底層網(wǎng)絡(luò)的存在。從整體來說,每個 vxlan 網(wǎng)絡(luò)像是為通信的虛擬機搭建了一個單獨的通信通道,也就是隧道
三 VXLAN報文解析
下圖是 vxlan 協(xié)議的報文,白色的部分是虛擬機發(fā)送報文(二層幀,包含了 MAC 頭部、IP 頭部和傳輸層頭部的報文),前面加了 vxlan 頭部用來專門保存 vxlan 相關(guān)的內(nèi)容,在前面是標準的 UDP 協(xié)議頭部(UDP 頭部、IP 頭部和 MAC 頭部)用來在底層網(wǎng)路上傳輸報文。
從這個報文中可以看到三個部分:
1 最外層的 UDP 協(xié)議報文用來在底層網(wǎng)絡(luò)上傳輸,也就是 vtep 之間互相通信的基礎(chǔ)
2中間是 VXLAN 頭部,vtep 接受到報文之后,去除前面的 UDP 協(xié)議部分,根據(jù)這部分來處理 vxlan 的邏輯,主要是根據(jù) VNI 發(fā)送到最終的虛擬機
3 最里面是原始的報文,也就是虛擬機看到的報文內(nèi)容
報文各個部分的意義如下:
VXLAN header:vxlan 協(xié)議相關(guān)的部分,一共8個字節(jié)
VXLAN flags:標志位
Reserved:保留位
VNID:24 位的 VNI 字段,這也是 vxlan 能支持千萬租戶的地方
Reserved:保留字段
UDP 頭部,8個字節(jié)
UDP 應(yīng)用通信雙方是 vtep 應(yīng)用,其中目的端口就是接收方 vtep 使用的端口,IANA 分配的端口是 4789
IP 頭部:20字節(jié)
主機之間通信的地址,可能是主機的網(wǎng)卡 IP 地址,也可能是多播 IP 地址
MAC 頭部:14 字節(jié)
主機之間通信的 MAC 地址,源 MAC 地址為主機 MAC 地址,目的 MAC 地址為下一跳設(shè)備的 MAC 地址
可以看出 vxlan 協(xié)議比原始報文多 50 字節(jié)的內(nèi)容,這會降低網(wǎng)絡(luò)鏈路傳輸有效數(shù)據(jù)的比例。vxlan 頭部最重要的是 VNID 字段,其他的保留字段主要是為了未來的擴展,目前留給不同的廠商用這些字段添加自己的功能。
四 VXLAN報文格式
如你所料,VTEP對VM發(fā)送的原始以太幀(Original L2 Frame)進行了以下“包裝”:
l VXLAN Header
增加VXLAN頭(8字節(jié)),其中包含24比特的VNI字段,用來定義VXLAN網(wǎng)絡(luò)中不同的租戶。此外,還包含VXLAN Flags(8比特,取值為00001000)和兩個保留字段(分別為24比特和8比特)。
2 UDP Header
VXLAN頭和原始以太幀一起作為UDP的數(shù)據(jù)。UDP頭中,目的端口號(VXLAN Port)固定為4789,源端口號(UDP Src. Port)是原始以太幀通過哈希算法計算后的值。
3 Outer IP Header
封裝外層IP頭。其中,源IP地址(Outer Src. IP)為源VM所屬VTEP的IP地址,目的IP地址(Outer Dst. IP)為目的VM所屬VTEP的IP地址。
4 Outer MAC Header
封裝外層以太頭。其中,源MAC地址(Src. MAC Addr.)為源VM所屬VTEP的MAC地址,目的MAC地址(Dst. MAC Addr.)為到達目的VTEP的路徑上下一跳設(shè)備的MAC地址。