自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

五分鐘技術(shù)趣談 | VXLAN隧道及其在“云網(wǎng)關(guān)”中的應(yīng)用

云計算
VXLAN隧道作為建立在IP網(wǎng)絡(luò)上的二層隧道技術(shù),不僅實現(xiàn)了不同地市數(shù)據(jù)中心間的大二層互通,還解決了傳統(tǒng)VLAN網(wǎng)絡(luò)租戶數(shù)量不夠的痛點,可容納用戶數(shù)量實現(xiàn)了指數(shù)級的增長。VXLAN隧道也被應(yīng)用在了中國移動自研的“云網(wǎng)關(guān)”架構(gòu)中。

Part 01

簡介 

作為目前傳統(tǒng)數(shù)據(jù)中心網(wǎng)絡(luò)的面臨著如下幾個痛點:

? 交換機MAC表限制

虛擬化技術(shù)的應(yīng)用,使目前數(shù)據(jù)中心的服務(wù)器上都運行著大量的虛擬機,每個虛擬機都包含至少一個MAC地址,我們知道二層轉(zhuǎn)發(fā)需要交換機學(xué)習(xí)MAC地址,這會導(dǎo)致ToR交換機需要學(xué)習(xí)的MAC表數(shù)量指數(shù)級增長,一旦MAC表溢出,就會造成交換機泛洪,影響轉(zhuǎn)發(fā)效率[1];

? 租戶數(shù)量的限制

傳統(tǒng)的數(shù)據(jù)中心內(nèi)是通過VLAN進(jìn)行租戶隔離,不同的租戶會被劃分到不同的VLAN中,而VLAN報文中用來表示用戶標(biāo)識的VID的長度為12位,也就說最多可以容納212-2=4094個租戶(通常0和4095作為保留值),而對于大型的數(shù)據(jù)中心來說,這個數(shù)量的租戶遠(yuǎn)遠(yuǎn)不夠用,會讓網(wǎng)絡(luò)擴(kuò)展受到限制;

? 虛擬機遷移的限制

數(shù)據(jù)中心會出現(xiàn)服務(wù)器的硬件擴(kuò)容或者機房遷移的情況,此時虛擬機需要被遷移到其他的服務(wù)器上來避免對業(yè)務(wù)的影響,虛擬機的MAC和IP地址需要保持不變,因此遷移只能發(fā)生在二層網(wǎng)絡(luò)內(nèi),對業(yè)務(wù)的靈活性產(chǎn)生了極大的限制【2】;

為了解決以上數(shù)據(jù)中心的問題,RFC 7348提出了虛擬可擴(kuò)展局域網(wǎng)的概念,即VXLAN(Virtual eXtensible Local Area Network),將原始的二層報文通過VXLAN隧道頭封裝在IP報文中,使原始報文可以跨二層網(wǎng)絡(luò)進(jìn)行傳輸。

圖片

圖1 VXLAN報文結(jié)構(gòu)

上圖為一個標(biāo)準(zhǔn)的VXLAN格式報文,其可以分為三個部分:

1、最外層為VXLAN隧道的底層網(wǎng)絡(luò)封裝,用來在VTEP之間傳輸;

2、中間為VXLAN隧道頭部,基于UDP協(xié)議承載;

3、最內(nèi)層為想要傳輸?shù)脑紙笪膬?nèi)容,包括以太頭、IP頭以及報文數(shù)據(jù),即虛擬機網(wǎng)卡發(fā)送出來的報文;

其中VXLAN頭部長8個字節(jié),包括以下內(nèi)容:

VXLAN Flag(8位):固定取值為00001000;

VNI(24位):網(wǎng)絡(luò)標(biāo)識符,用來定義不同的租戶;

保留字段:有兩處,分別為24位和8位;


圖片

圖2 VXLAN抓包

上圖為VXLAN的抓包,其VNI值為100,基于UDP協(xié)議傳輸,源端口隨機生成,目的端口為4789。

從以上的VXLAN報文格式中可以看出VXLAN隧道是如何解決數(shù)據(jù)中心面臨的3個主要問題的:

1、VXLAN使用UDP進(jìn)行封裝,UDP外層的MAC為VTEP物理出口的MAC地址,通常一個物理機會對應(yīng)一個VTEP被該臺機器上所有的虛擬機使用, 這樣對于ToR交換機來說,一臺服務(wù)器只需要記錄一條MAC表即可,避免了MAC表暴漲的問題[1];

2、VNI24位的長度可支持超過1600萬數(shù)量的租戶,網(wǎng)絡(luò)中租戶隔離的數(shù)量不會再受到限制,后續(xù)網(wǎng)絡(luò)的拓展也變得極其靈活;

3、VXLAN采用MAC in UDP的方式來進(jìn)行封裝傳輸,對二層網(wǎng)絡(luò)進(jìn)行了延伸,不同地域間的數(shù)據(jù)中心也可通過UNDERLAY三層網(wǎng)絡(luò)實現(xiàn)大二層的連接,實現(xiàn)了物理網(wǎng)絡(luò)和虛擬網(wǎng)絡(luò)的解耦。網(wǎng)絡(luò)規(guī)劃不再受物理網(wǎng)絡(luò)的限制,可實現(xiàn)虛擬機無損遷移,即IP和MAC地址保持不變[2]

Part 02

 VXLAN隧道在云網(wǎng)關(guān)中的應(yīng)用 

圖片

圖3 云網(wǎng)關(guān)方案架構(gòu)圖

目前中國移動正在大力推進(jìn)云網(wǎng)關(guān)的研發(fā)和落地,其中一種方案為將云網(wǎng)關(guān)作為BRAS后一個網(wǎng)元部署在省側(cè)或者地市機房。如圖三所示,該網(wǎng)絡(luò)架構(gòu)使用VXLAN隧道對用戶報文進(jìn)行接入和終結(jié),即每個白盒網(wǎng)關(guān)(ONU)會和云網(wǎng)關(guān)之間創(chuàng)建一條VXLAN隧道,分配到唯一的VNI標(biāo)識,終端的報文在ONU被封裝上VXLAN隧道并轉(zhuǎn)發(fā)到云網(wǎng)關(guān),云網(wǎng)關(guān)對報文解封裝獲取到內(nèi)層原始報文,根據(jù)報文的類型進(jìn)行不同的處理,該云網(wǎng)關(guān)架構(gòu)把傳統(tǒng)家庭網(wǎng)關(guān)大部分控制面的功能以及增值業(yè)務(wù)都上移到了BRAS之后的云網(wǎng)關(guān)系統(tǒng)進(jìn)行統(tǒng)一處理。

簡單來說,在云網(wǎng)關(guān)場景下用戶上網(wǎng)過程為:1、白盒網(wǎng)關(guān)發(fā)起PPPOE撥號,從BRAS獲取到可上網(wǎng)的IP;

2、以PPPOE撥號獲取的IP作為local IP,以及預(yù)先分配好的VNI值,和云網(wǎng)關(guān)之間創(chuàng)建VXLAN隧道;

3、用戶終端(如手機、PC等)發(fā)起DHCP請求,在白盒網(wǎng)關(guān)封裝上VXLAN隧道轉(zhuǎn)發(fā)到云網(wǎng)關(guān),VXLAN報文在云網(wǎng)關(guān)被解封裝并將原始報文透傳到云網(wǎng)關(guān)控制面,DHCP服務(wù)器分配一個內(nèi)網(wǎng)地址給終端,同時將網(wǎng)關(guān)、DNS信息等一并發(fā)送回終端;

4、用戶發(fā)起對網(wǎng)關(guān)的ARP請求,報文同步驟三一樣被透傳到控制面,網(wǎng)關(guān)回應(yīng)ARP REPLY;

5、終端用戶正常上網(wǎng)(包括DNS),報文到達(dá)云網(wǎng)關(guān),通過策略判斷是否訂購了增值業(yè)務(wù):

(5.1)非增值業(yè)務(wù)用戶,使用公網(wǎng)IP做NAT,進(jìn)行公網(wǎng)卸載轉(zhuǎn)發(fā);

(5.2)增值業(yè)務(wù)用戶,發(fā)送到業(yè)務(wù)服務(wù)器,根據(jù)具體訂購的業(yè)務(wù)進(jìn)行后續(xù)處理,對報文進(jìn)行丟棄、加速或者回注等操作;

該方案使用VXLAN隧道進(jìn)行用戶接入,白盒網(wǎng)關(guān)作為VTEP,對上行的原始報文進(jìn)行VXLAN隧道的封裝,使其可以順利穿越三層網(wǎng)絡(luò)到達(dá)云網(wǎng)關(guān)并解掉封裝進(jìn)行后續(xù)處理。有如下優(yōu)點:

1、VXLAN隧道天然支持租戶隔離,不同寬帶用戶可以使用VNI進(jìn)行區(qū)分,而且24位的VNI足夠使用;

2、VXLAN作為二層隧道,相比于如GRE、IPIP等三層隧道,可以將原始的用戶信息完整地上送到云網(wǎng)關(guān),設(shè)備的源MAC信息可以用來做增值業(yè)務(wù),如對具體的設(shè)備做管控、限速等操作。

Part 03

VXLAN隧道穿越NAT 

VXLAN隧道不是傳統(tǒng)C/S模型,VTEP兩端都是監(jiān)聽UDP4789目的端口,而源端口為隨機生成。圖四簡單說明了從用戶白盒網(wǎng)關(guān)發(fā)出的VXLAN報文經(jīng)過BRAS設(shè)備的NAT處理后的五元組變化情況,如圖所示,假設(shè)家庭網(wǎng)關(guān)上行報文封裝的VXLAN源端口為隨機的1234,經(jīng)過BRAS做SNAT之后變成5678,因為目的端口仍然為4789,云網(wǎng)關(guān)可以正常收到并處理;當(dāng)報文下行時會被封裝上目的4789端口,相應(yīng)地BRAS需要對其做DNAT,但是BRAS上只存在1234->5678的NAT會話映射,而此時報文的目的端口為4789無法找到正確的NAT會話,因此報文會在BRAS被丟棄,無法支持穿越NAT。

圖片

圖4 VXLAN報文經(jīng)過NAT設(shè)備流程

云網(wǎng)關(guān)系統(tǒng)的VXLAN隧道進(jìn)行了如下改造:

1)白盒網(wǎng)關(guān)封裝VXLAN報文時源端口和目的端口均固定為4789;

2)云網(wǎng)關(guān)記錄上行報文的VNI和源端口的映射關(guān)系,在下行報文封裝VXLAN時將記錄的源端口作為目的端口進(jìn)行封裝。 

經(jīng)過上述改造后,家庭網(wǎng)關(guān)封裝VXLAN時將外層UDP的源和目的端口都填充為4789,上行經(jīng)過BRAS時源端口被SNAT成Y,目的端口保持4789,報文被云網(wǎng)關(guān)正常接收和解封裝,此時記錄VNI和源端口信息;報文下行時根據(jù)VNI查詢到源端口信息Y,將其封裝到VXLAN隧道的外層UDP目的端口,經(jīng)過BRAS時可以找到對應(yīng)的4789->Y的NAT會話,目的端口被還原成4789,家庭網(wǎng)關(guān)可以順利收到并解封裝VXLAN報文。

Part 04

總結(jié) 

VXLAN隧道作為一個廣泛使用的大二層隧道技術(shù),將物理網(wǎng)絡(luò)和虛擬網(wǎng)絡(luò)解耦,具有傳統(tǒng)局域網(wǎng)絡(luò)不可比的擴(kuò)展性和靈活性,24位長度的VNI也能完全滿足大量租戶隔離的需求。目前,中國移動智慧家庭運營中心已經(jīng)完成基于VXLAN隧道架構(gòu)的云網(wǎng)關(guān)自研,并在多省完成試點部署,形成了完整的端到端解決方案。

責(zé)任編輯:龐桂玉 來源: 移動Labs
相關(guān)推薦

2023-08-23 07:21:44

JsonSchema測試

2023-07-23 18:47:59

Docker開源

2021-06-04 15:55:57

GPU云桌面5G+AI

2023-09-03 19:21:07

大數(shù)據(jù)架構(gòu)

2023-07-16 18:49:42

HTTP網(wǎng)絡(luò)

2023-04-15 20:25:23

微前端

2021-07-07 13:47:38

OCR游戲運行圖像

2023-06-03 21:06:05

2023-09-03 19:06:42

2023-08-06 07:05:25

Android優(yōu)化

2023-07-02 16:09:57

人工智能人臉識別

2023-07-02 16:34:06

GPU虛擬化深度學(xué)習(xí)

2021-05-17 15:17:42

Thread物聯(lián)網(wǎng)IOT路由器

2023-07-12 15:50:29

機器學(xué)習(xí)人工智能

2023-08-29 06:50:01

Javamaven

2023-09-12 07:10:13

Nacos架構(gòu)

2023-08-15 14:46:03

2023-07-31 08:55:15

AI技術(shù)網(wǎng)絡(luò)暴力

2024-12-18 14:10:33

2023-08-06 07:00:59

Openstack網(wǎng)絡(luò)
點贊
收藏

51CTO技術(shù)棧公眾號