尷尬的VXLAN

    VXLAN(Virtual eXtensible Local Area Network)技術(shù)是由VMware、思科、Arista、Broadcom、Citrix和紅帽共同提出的IETF草案,用以解決數(shù)據(jù)中心多租戶(hù)間通信和隔離時(shí)解決vlan不夠的問(wèn)題;Vxlan草案里給出的封裝格式是MAC-IN-UDP,即將原始報(bào)文封裝在UDP報(bào)文里,其本意是在用于不同數(shù)據(jù)中心之間的VM(Virtual Machine)之間進(jìn)行通信時(shí)數(shù)據(jù)報(bào)文封裝格式。但是這種技術(shù)到底是否是一種完美的解決方案哪?

    先對(duì)VXLAN的技術(shù)的提出其標(biāo)準(zhǔn)里主要想解決以下幾個(gè)問(wèn)題進(jìn)行說(shuō)明:

    1)STP協(xié)議缺陷和VLAN ID數(shù)目少帶來(lái)的限制

    對(duì)于國(guó)內(nèi)互聯(lián)網(wǎng)的公司如BAT的數(shù)據(jù)中心,STP協(xié)議多數(shù)是不開(kāi)啟的,明顯的缺陷是vxlan標(biāo)準(zhǔn)中所提及的,會(huì)導(dǎo)致鏈路帶寬的大量浪費(fèi),并且一旦拓?fù)渥兓蕉倥_(tái)網(wǎng)絡(luò)設(shè)備的時(shí)候,收斂性能會(huì)明顯變慢;所以大型數(shù)據(jù)中心會(huì)通過(guò)對(duì)網(wǎng)絡(luò)的合理規(guī)劃,來(lái)避免環(huán)路。

    2)云計(jì)算[注]中多租戶(hù)環(huán)境下的通信和隔離

    對(duì)于為了提高CPU的使用率以及服務(wù)器維護(hù)/遷移等操作便捷的云計(jì)算來(lái)說(shuō),不同租戶(hù)的云主機(jī)需要進(jìn)行私網(wǎng)隔離,對(duì)于同一個(gè)租戶(hù)的多個(gè)云主機(jī)私網(wǎng)內(nèi)需要二層數(shù)據(jù)隔離而可以通過(guò)三層轉(zhuǎn)發(fā)進(jìn)行通信,并且當(dāng)云主機(jī)在多個(gè)數(shù)據(jù)中心之間的進(jìn)行熱遷移時(shí)為了保持其提供服務(wù)的不間斷需要保證遷移前后在一個(gè)vlan內(nèi),即多個(gè)數(shù)據(jù)中心組成的二層某個(gè)VLAN網(wǎng)路有多大,那么著里面的VM就能遷移有多遠(yuǎn),也就是所謂的大二層技術(shù)。然而一個(gè)數(shù)據(jù)中心的物理服務(wù)器規(guī)模十萬(wàn)級(jí)在國(guó)內(nèi)已經(jīng)出現(xiàn),國(guó)外Google等已有百萬(wàn)級(jí)規(guī)模的數(shù)據(jù)中心,此類(lèi)環(huán)境下僅有12bit的VLAN數(shù)目對(duì)于云計(jì)算的租戶(hù)數(shù)目來(lái)講是遠(yuǎn)遠(yuǎn)不夠的;其實(shí)vlan數(shù)目不夠很早就被意識(shí)到,并提出了 Q-IN-Q之類(lèi)的技術(shù)(還有靈活Q-IN-Q等),為什么這些技術(shù)不直接被拿來(lái)在云計(jì)算虛擬網(wǎng)絡(luò)環(huán)境里使用哪?因?yàn)殡m然我們可以在數(shù)據(jù)中心內(nèi)部控制報(bào)文的TAG情況,但是一旦報(bào)文到了公網(wǎng),其路徑經(jīng)過(guò)的網(wǎng)絡(luò)設(shè)備是路由器還是交換機(jī)無(wú)法得知,根本無(wú)法保證讓帶各種不同TAG的報(bào)文安然通過(guò)公網(wǎng)達(dá)到對(duì)端數(shù)據(jù)中心;然后就看有了vxlan的技術(shù)被提出和應(yīng)用。

    3)TOR交換機(jī)的MAC地址表不充足

    再討論一下云計(jì)算環(huán)境下TOR交換機(jī)MAC地址表不足的問(wèn)題,在以前TOR因?yàn)樽呷龑愚D(zhuǎn)發(fā),只會(huì)學(xué)習(xí)到與其之戀直連設(shè)備及二層相連設(shè)備的MAC;而隨著大二層的出現(xiàn),不僅要學(xué)習(xí)本數(shù)據(jù)中心二層的設(shè)備MAC地址,還有更多其他數(shù)據(jù)中心二層范圍內(nèi)的地址,包括海量的虛擬機(jī)的MAC地址都有可能要被TOR學(xué)習(xí)到,這無(wú)疑大大增加了TOR的MAC表項(xiàng)容量的要求。我們知道對(duì)于傳統(tǒng)的商業(yè)交換芯片如Broadcom的ESW系列芯片,基本都有128K的MAC表項(xiàng)大小,這個(gè)容量相對(duì)于現(xiàn)代一個(gè)數(shù)據(jù)中心十萬(wàn)級(jí)甚至百萬(wàn)級(jí)設(shè)備的數(shù)據(jù)量真不算太大。

    4)針對(duì)VXLAN技術(shù)的內(nèi)容有以下幾點(diǎn)討論:

    a)沒(méi)有說(shuō)明同一個(gè)租戶(hù)下不同VNID之間如何通信;以前對(duì)于同一個(gè)vlan或不同的vlan來(lái)說(shuō)兩個(gè)主機(jī)通過(guò)交換機(jī)進(jìn)行通信,需要添加或刪除報(bào)文的vlan TAG;但是對(duì)于同一個(gè)同一個(gè)VNID或不同的VNID的主機(jī)進(jìn)行通信,封裝VXLAN報(bào)文還需要額外提供一個(gè)從L2以太網(wǎng)到L4 UDP的頭部,始終讓人感覺(jué)非常的怪異;

    b)VLXAN技術(shù)將隔離區(qū)域數(shù)目從原來(lái)的12bit的VLAN ID擴(kuò)展到現(xiàn)在24bit的VNI,可能猶如原先VLAN提出時(shí)看待其12bit的大小覺(jué)得已經(jīng)很多了,但是現(xiàn)在網(wǎng)絡(luò)規(guī)模越來(lái)越大,隨著業(yè)務(wù)的需求擴(kuò)展比如多個(gè)行星之間的星際通信發(fā)展后,可能很快又無(wú)法滿足需求;這種擴(kuò)展的方式始終是有缺陷的;

    c)對(duì)原有VLAN技術(shù)的兼容

    Vxlan技術(shù)如其他革命性的網(wǎng)絡(luò)技術(shù)的出現(xiàn)(OSPF代替RIP或IPV6代替IPV4),應(yīng)該取代vlan,并且兼容vlan,這點(diǎn)VXLAN技術(shù)標(biāo)準(zhǔn)文檔里也有提及,即如何讓VXLAN里的設(shè)備與VLAN里的設(shè)備進(jìn)行通信,也可以考慮將vlan作為VXLAN一個(gè)子域的PVLAN技術(shù);但是兼容性其他方面依然是個(gè)值得考慮的問(wèn)題,比如三層交換機(jī)現(xiàn)有的IP轉(zhuǎn)發(fā)時(shí)基于vlan創(chuàng)建三層接口的,可以簡(jiǎn)單理解為DIP VLAN進(jìn)行查找表項(xiàng),然后更改報(bào)文的VLAN ID號(hào)轉(zhuǎn)發(fā)到另一個(gè)VLAN里轉(zhuǎn)出;當(dāng)VXLAN代替VLAN后,如何芯片基于VXLAN的VNID進(jìn)行三層轉(zhuǎn)發(fā)時(shí)VXLAN標(biāo)準(zhǔn)里沒(méi)有提及的內(nèi)容(+微信關(guān)注網(wǎng)絡(luò)世界),還有如QOS中vlan shapping的映射等技術(shù)也存在這個(gè)問(wèn)題;而且封裝后還會(huì)有報(bào)文轉(zhuǎn)發(fā)效率、對(duì)轉(zhuǎn)發(fā)負(fù)載均衡性能等方面的影響;

    d)對(duì)于vxlan技術(shù)的出現(xiàn),現(xiàn)有網(wǎng)絡(luò)設(shè)備支持度也不夠;僅有盛科、BCM的T2等芯片,值得一提的是Openvswitch是支持的;VXLAN技術(shù)應(yīng)該常規(guī)的傳統(tǒng)L3芯片類(lèi)似,應(yīng)提供同一個(gè)VNI范圍內(nèi)的主機(jī)二層互通,不同VNI范圍內(nèi)的主機(jī)通過(guò)IP地址三層轉(zhuǎn)發(fā)互通(一個(gè)租戶(hù)有兩個(gè)VNID),跨數(shù)據(jù)中心的主機(jī)流量進(jìn)行二層或三層通信時(shí)需要添加含有公網(wǎng)IP地址的outer ip header來(lái)走外網(wǎng)進(jìn)行通信,當(dāng)然有需求可以提出在VXLAN下trunk、hybrid、access的端口屬性,但是這些都沒(méi)有做出規(guī)定;這個(gè)功能安裝基于vlan的三層轉(zhuǎn)發(fā)來(lái)講不是什么高級(jí)的特性; 但是這個(gè)技術(shù)都必須在新的交換芯片上來(lái)做,而新出的芯片都是比較高級(jí)的,比如broadcom的trident系列和Marvell的lion系列,如果在上面加這些功能,暫時(shí)沒(méi)有出現(xiàn)Vxlan與某些技術(shù)比如MPLS、TRILL等技術(shù)兼容的方案,即如果用了vxlan,這些技術(shù)雖然被芯片支持,但很大可能是芯片的表項(xiàng)及其支持的功能就被浪費(fèi)了;硬件支持工作還有相當(dāng)大的。

    為了解決vlan不夠的問(wèn)題,類(lèi)似VXLAN的技術(shù)還有微軟的NVGER和STT等,個(gè)人意見(jiàn)是這種技術(shù)解決問(wèn)題方式是非常不徹底的,是革命性替代技術(shù),但是兼容性不足且治標(biāo)不治本。最當(dāng)初利用vlan技術(shù)對(duì)網(wǎng)絡(luò)進(jìn)行隔離的選擇可能是網(wǎng)絡(luò)技術(shù)發(fā)展史上最大的一個(gè)錯(cuò)誤,現(xiàn)在因?yàn)樵谄浠A(chǔ)上建立的三層轉(zhuǎn)發(fā)和受其限制而引發(fā)的一系列挽救技術(shù)都顯得蹩腳,尤其在現(xiàn)在得云計(jì)算趨勢(shì)下;我們是不是應(yīng)該考慮從根上解決該問(wèn)題而不是每次都做補(bǔ)丁,因?yàn)檫@樣導(dǎo)致了技術(shù)的復(fù)雜性越來(lái)越大,報(bào)文的這種天價(jià)頭部的多次封裝又導(dǎo)致了傳輸效率的降低,慢慢的又會(huì)引入新的限制從而影響新技術(shù)被應(yīng)用到各種領(lǐng)域,比如逐漸成熟的移動(dòng)互聯(lián)網(wǎng)。所以讓我們回到二層,回到vlan沒(méi)有出現(xiàn)的時(shí)候所遇到的網(wǎng)絡(luò)廣播風(fēng)暴和安全隔離的問(wèn)題上,可能會(huì)提出更好的解決辦法,衍生更多的好技術(shù),以避免今天網(wǎng)絡(luò)的痛苦和無(wú)奈。

作者:微博@北京-小武

   來(lái)源:SDN聯(lián)合播報(bào)
掃碼關(guān)注5G通信官方公眾號(hào),免費(fèi)領(lǐng)取以下5G精品資料

本周熱點(diǎn)本月熱點(diǎn)

 

  最熱通信招聘

業(yè)界最新資訊


  最新招聘信息