1萬(wàn)字 20張圖帶你詳解EVPN_第1頁(yè)
1萬(wàn)字 20張圖帶你詳解EVPN_第2頁(yè)
1萬(wàn)字 20張圖帶你詳解EVPN_第3頁(yè)
1萬(wàn)字 20張圖帶你詳解EVPN_第4頁(yè)
1萬(wàn)字 20張圖帶你詳解EVPN_第5頁(yè)
已閱讀5頁(yè),還剩34頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1萬(wàn)字20張圖帶你詳解EVPN前言本文介紹了EVPN(EthernetVPN)的基本概念,EVPN基于MP-BGP,定義了一系列新的BGPEVPN路由類型,EVPN可以作為VXLAN的控制面。閱讀本文,您還可以了解BGPEVPN幾種新路由的格式和工作場(chǎng)景,了解EVPN在作為VXLAN控制面時(shí)是如何傳遞路由、幫助設(shè)備建立VXLAN隧道的。正文EVPN簡(jiǎn)介EVPN基本概念為什么會(huì)有EVPN(EthernetVPN)呢?最初的VXLAN方案(RFC7348)中沒(méi)有定義控制平面,是手工配置VXLAN隧道,然后通過(guò)流量泛洪的方式進(jìn)行主機(jī)地址的學(xué)習(xí)。這種方式實(shí)現(xiàn)上較為簡(jiǎn)單,但是會(huì)導(dǎo)致網(wǎng)絡(luò)中存在很多泛洪流量、網(wǎng)絡(luò)擴(kuò)展起來(lái)困難。為了解決上述問(wèn)題,人們?cè)赩XLAN中引入了EVPN(EthernetVPN)作為VXLAN的控制平面,如圖1-1所示(VXLAN是一種NVO協(xié)議)。EVPN還能作為一些其他協(xié)議的控制面,本文僅描述EVPN作為VXLAN的控制面的相關(guān)信息。圖1-1將EVPN作為VXLAN的控制平面EVPN參考了BGP/MPLSIPVPN的機(jī)制,通過(guò)擴(kuò)展BGP協(xié)議新定義了幾種BGPEVPN路由,通過(guò)在網(wǎng)絡(luò)中發(fā)布EVPN路由來(lái)實(shí)現(xiàn)VTEP的自動(dòng)發(fā)現(xiàn)、主機(jī)地址學(xué)習(xí)等行為。采用EVPN作為VXLAN的控制平面具有以下優(yōu)勢(shì):可實(shí)現(xiàn)VTEP自動(dòng)發(fā)現(xiàn)、VXLAN隧道自動(dòng)建立,從而降低網(wǎng)絡(luò)部署、擴(kuò)展的難度。EVPN可以同時(shí)發(fā)布二層MAC和三層路由信息??梢詼p少網(wǎng)絡(luò)中泛洪流量。MP-BGP基本概念在深入理解EVPN的工作原理前,我們先對(duì)MP-BGP(MultiProtocolBGP)做下簡(jiǎn)單回顧:傳統(tǒng)的BGP-4使用Update報(bào)文在對(duì)等體之間交換路由信息。一條Update報(bào)文可以通告一類具有相同路徑屬性的可達(dá)路由,這些路由放在NLRI(NetworkLayerReachableInformation,網(wǎng)絡(luò)層可達(dá)信息)字段中。因?yàn)锽GP-4只能管理IPv4單播路由信息,為了提供對(duì)多種網(wǎng)絡(luò)層協(xié)議的支持(例如IPv6、組播),發(fā)展出了MP-BGP。MP-BGP在BGP-4基礎(chǔ)上對(duì)NLRI作了新擴(kuò)展。玄機(jī)就在于新擴(kuò)展的NLRI上,擴(kuò)展之后的NLRI增加了地址族的描述,可以用來(lái)區(qū)分不同的網(wǎng)絡(luò)層協(xié)議,例如IPv6單播地址族、VPN實(shí)例地址族等。類似的,EVPN也是借用了MP-BGP的機(jī)制,在L2VPN地址族下定義了新的子地址族——EVPN地址族,在這個(gè)地址族下又新增了一種NLRI,即EVPNNLRI。EVPNNLRI定義了幾種BGPEVPN路由類型,這些路由可以攜帶主機(jī)IP、MAC、VNI、VRF等信息。這樣,當(dāng)一個(gè)VTEP學(xué)習(xí)到下掛的主機(jī)的IP、MAC地址信息后,就可以通過(guò)MP-BGP路由將這些信息發(fā)送給其他的VTEP,從而在控制平面實(shí)現(xiàn)主機(jī)IP、MAC地址的學(xué)習(xí),抑制了數(shù)據(jù)平面的泛洪。了解EVPN中的幾種路由類型本節(jié)介紹EVPNNLRI中定義的幾種BGPEVPN路由類型的報(bào)文格式及其作用。EVPN中定義的五種路由類型概覽EVPNNLRI定義了如表1-1所示的五種EVPN路由類型。其中Type1~Type4是在RFC7432中定義的,Type5是在后來(lái)的草案中定義的。表1-1EVPN路由類型其中Type1和Type4是用于EVPNESI場(chǎng)景,本文主要對(duì)常見(jiàn)的Type2、Type3、Type5類型的路由進(jìn)行重點(diǎn)介紹。EVPNType2路由格式說(shuō)明EVPNType2路由,也就是MAC/IP路由,主要用于VTEP之間相互通告主機(jī)IP、MAC信息。Type2路由的NLRI部分格式如圖1-2所示。圖1-2Type2路由的報(bào)文格式各字段的解釋如下表所示:應(yīng)用說(shuō)明Type2路由在VXLAN網(wǎng)絡(luò)中的使用場(chǎng)景和作用參見(jiàn)下表。表1-2Type2路由使用場(chǎng)景說(shuō)明EVPNType3路由格式說(shuō)明EVPNType3路由主要用于在VTEP之間相互通告二層VNI、VTEPIP信息,以建立頭端復(fù)制列表,即用于VTEP的自動(dòng)發(fā)現(xiàn)和VXLAN隧道的動(dòng)態(tài)建立:如果對(duì)端VTEPIP地址是三層路由可達(dá)的,則建立一條到對(duì)端的VXLAN隧道。同時(shí),如果對(duì)端VNI與本端相同,則創(chuàng)建一個(gè)頭端復(fù)制表,用于后續(xù)BUM報(bào)文轉(zhuǎn)發(fā)。Type3路由的NLRI是由“前綴”和“PMSI”屬性組成,報(bào)文格式如圖1-3所示。其中VTEPIP信息體現(xiàn)在NLRI的OriginatingRouter'sIPAddress字段中,二層VNI信息則體現(xiàn)在PMSI屬性的MPLSLabel中。圖1-3Type3路由的報(bào)文格式各字段的解釋如下表所示:應(yīng)用說(shuō)明Type3路由動(dòng)態(tài)建立頭端復(fù)制列表的過(guò)程簡(jiǎn)介請(qǐng)參見(jiàn)本文的EVPN頭端復(fù)制列表的建立。EVPNType5路由格式說(shuō)明EVPNType5路由又稱IP前綴路由,主要用于傳遞網(wǎng)段路由。不同于Type2路由只傳遞32(IPv4)/128(IPv6)位的主機(jī)路由,Type5路由可傳遞0~32/0~128掩碼長(zhǎng)度的網(wǎng)段路由。Type5路由的報(bào)文格式如圖1-3所示。圖1-4Type5路由的報(bào)文格式各字段的解釋如下表所示:應(yīng)用說(shuō)明該類型路由的IPPrefixLength和IPPrefix字段既可以攜帶主機(jī)IP地址,也可以攜帶網(wǎng)段地址:當(dāng)攜帶主機(jī)IP地址時(shí),主要用于分布式網(wǎng)關(guān)場(chǎng)景中的主機(jī)/網(wǎng)段路由通告,請(qǐng)參見(jiàn)本文的網(wǎng)段路由發(fā)布。當(dāng)攜帶網(wǎng)段地址時(shí),通過(guò)傳遞該類型路由,可以實(shí)現(xiàn)VXLAN網(wǎng)絡(luò)中的主機(jī)訪問(wèn)外部網(wǎng)絡(luò)。理解EVPN作為VXLAN控制面的工作過(guò)程BGPEVPN在VXLAN網(wǎng)絡(luò)中是如何工作的呢?本節(jié)將為您介紹BGPEVPN作為VXLAN控制面的工作過(guò)程。在用BGPEVPN方式部署分布式VXLAN網(wǎng)絡(luò)的場(chǎng)景中,控制平面的流程包括VXLAN隧道建立、MAC地址動(dòng)態(tài)學(xué)習(xí);轉(zhuǎn)發(fā)平面的流程包括同子網(wǎng)已知單播報(bào)文轉(zhuǎn)發(fā)、同子網(wǎng)BUM報(bào)文轉(zhuǎn)發(fā)、跨子網(wǎng)報(bào)文轉(zhuǎn)發(fā)。BGPEVPN方式實(shí)現(xiàn)的功能全面,支持主機(jī)IP路由通告、主機(jī)MAC地址通告、主機(jī)ARP通告等,還可以使能ARP廣播抑制功能。如果在VXLAN網(wǎng)絡(luò)中采用分布式網(wǎng)關(guān),推薦使用BGPEVPN方式。本文下面的內(nèi)容以Underlay網(wǎng)絡(luò)和Overlay網(wǎng)絡(luò)均為IPv4為例,介紹EVPN作為VXLAN控制面的工作過(guò)程。使用EVPN學(xué)習(xí)MAC地址使用EVPN作為VXLAN的控制平面,可以用EVPN來(lái)進(jìn)行MAC學(xué)習(xí),以替代數(shù)據(jù)平面泛洪方式的MAC學(xué)習(xí),減少泛洪流量。使用EVPN來(lái)進(jìn)行MAC學(xué)習(xí)的過(guò)程,是通過(guò)在VTEP之間傳遞Type2路由完成的。下面以圖1-5為例,介紹VTEP之間是如何通過(guò)EVPN來(lái)實(shí)現(xiàn)遠(yuǎn)程主機(jī)的MAC學(xué)習(xí)的。圖1-5使用EVPN來(lái)學(xué)習(xí)遠(yuǎn)程主機(jī)MAC地址的過(guò)程示意圖圖中Leaf1和Leaf2作為VTEP,分別連接同網(wǎng)段的主機(jī)Host1和Host2,以Leaf1向Leaf2發(fā)送Type2路由為例。1、Host1在連接至Leaf1時(shí),通常會(huì)觸發(fā)ARP、DHCP等行為。通過(guò)這些流量,Leaf1上就會(huì)學(xué)習(xí)到Host1的MAC信息,記錄在本地MAC表中。Leaf1學(xué)習(xí)到本地主機(jī)的MAC表項(xiàng)后,會(huì)向其對(duì)等體Leaf2發(fā)送EVPNType2路由。該路由會(huì)攜帶本端EVPN實(shí)例的ERT、VTEPIP地址、二層VNI、Host1的MAC地址等信息。其中本端的EVPN實(shí)例的ERT、VTEPIP地址、二層VNI這些信息來(lái)源于本端VTEP上的配置,樣例如下:[Leaf1]bridge-domain10vxlanvni10//二層VNIevpnroute-distinguisher10:1vpn-target0:10export-extcommunity//EVPN實(shí)例的ERTvpn-target100:5000export-extcommunityvpn-target0:10import-extcommunity#interfaceNve1source//Leaf1的VTEPIP地址vni10head-endpeer-listprotocolbgp#2、Leaf2收到Leaf1發(fā)來(lái)的Type2路由后,能夠?qū)W習(xí)到Host1的MAC地址信息,并將其保存在MAC表中,其下一跳為L(zhǎng)eaf1的VTEPIP地址。需要說(shuō)明的是,Leaf2收到Leaf1發(fā)送的EVPN路由時(shí),能否接納該路由信息,是需要通過(guò)EVPN實(shí)例的RT(RouteTarget)值是否匹配來(lái)判斷的。RT是一種BGP擴(kuò)展團(tuán)體屬性,用于控制EVPN路由的發(fā)布與接收。也就是說(shuō),RT決定了本端的EVPN路由可以被哪些對(duì)端所接收,以及本端是否接收對(duì)端發(fā)來(lái)的EVPN路由。RT屬性分為兩類:ERT(ExportRT):本端發(fā)送EVPN路由時(shí),攜帶的RT屬性設(shè)置為ERT。IRT(ImportRT):本端在收到對(duì)端的EVPN路由時(shí),將路由中攜帶的ERT與本端的IRT進(jìn)行比較,只有兩者相等時(shí)才接收該路由,否則丟棄該路由。在本例中,Leaf2上接收Leaf1發(fā)過(guò)來(lái)的EVPN路由,則需保證Leaf2上配置的IRT(ImportRT)與Leaf1配置的ERT(ExportRT)一致,例如Leaf2上EVPN中的IRT配置為0:10,與上文中Leaf1上的ERT一致:[Leaf2]bridge-domain10vxlanvni10//二層VNIevpnroute-distinguisher10:2vpn-target0:10export-extcommunityvpn-target100:5000export-extcommunityvpn-target0:10import-extcommunity//EVPN實(shí)例的IRT#經(jīng)過(guò)以上的流程,在未發(fā)送廣播請(qǐng)求的情況下,Leaf2就可以學(xué)習(xí)到Host1的MAC地址。類似的,Leaf1也可以學(xué)習(xí)到Host2的MAC地址。另外需要強(qiáng)調(diào)的是,EVPN只是減少了網(wǎng)絡(luò)中的流量泛洪,并不會(huì)完全避免,例如在以下一些場(chǎng)景:網(wǎng)絡(luò)中存在“靜默”主機(jī)的情況,這種情況下主機(jī)不會(huì)觸發(fā)ARP、DHCP等行為,導(dǎo)致VTEP學(xué)習(xí)不到本地主機(jī)MAC地址,從而也就無(wú)法發(fā)送MAC地址信息讓其他VTEP學(xué)習(xí)到。主機(jī)首次通信的過(guò)程中,主機(jī)會(huì)發(fā)送ARP廣播請(qǐng)求報(bào)文,這種也會(huì)產(chǎn)生泛洪。這種情況還可以通過(guò)ARP廣播抑制功能來(lái)避免泛洪,此部分在后續(xù)章節(jié)會(huì)詳細(xì)描述,此處不再贅述。EVPN頭端復(fù)制列表的建立EVPN只能相對(duì)減少網(wǎng)絡(luò)中的流量泛洪,并不能完全避免。那么這些不能避免的BUM流量,還是需要建立頭端復(fù)制列表來(lái)進(jìn)行轉(zhuǎn)發(fā)。頭端復(fù)制列表的建立可以通過(guò)手工方式或者EVPN來(lái)建立,本文僅描述EVPN方式:手工方式就是為逐個(gè)為每個(gè)VTEP指定其鄰居VTEP,每條列表都需要人工配置。EVPN則是通過(guò)在VTEP之間發(fā)布Type3路由,可以為VTEP設(shè)備之間自動(dòng)創(chuàng)建頭端復(fù)制列表。下面以圖1-6為列,介紹VTEP之間是如何通過(guò)Type3路由建立頭端復(fù)制列表的。圖1-6使用EVPN建立頭端復(fù)制列表示意圖圖中Leaf1、Leaf2、Leaf3作為VTEP,以Leaf1向Leaf2、Leaf3發(fā)送路由為例。1、在Leaf1上完成VTEPIP、二層VNI、EVPN實(shí)例等相關(guān)配置后(這些配置的樣例如下所示),Leaf1會(huì)向?qū)Φ润wLeaf2、Leaf3分別發(fā)送EVPNType3路由。路由中會(huì)攜帶二層VNI、本端VTEPIP、EVPN實(shí)例的RD、出方向VPN-Target(ERT)等信息。[Leaf1]bridge-domain10vxlanvni10//二層VNIevpnroute-distinguisher1:10//EVPN實(shí)例的RDvpn-target0:10export-extcommunity//EVPN實(shí)例的ERTvpn-target100:5000export-extcommunityvpn-target0:10import-extcommunity#interfaceNve1source//Leaf1的VTEPIP地址vni10head-endpeer-listprotocolbgp#2、Leaf2、Leaf3收到Leaf1發(fā)來(lái)的Type3路由后,如果Leaf1的VTEPIP三層路由可達(dá),則建立一條到Leaf1的二層VXLAN隧道;同時(shí),如果本地有相同的VNI,則建立一條頭端復(fù)制列表,用于后續(xù)廣播、組播、未知單播報(bào)文的轉(zhuǎn)發(fā)。在Leaf2、Leaf3收到Leaf1發(fā)送的EVPN路由時(shí),會(huì)基于路由攜帶的RT值(EVPN實(shí)例的ERT值)是否與本地EVPN實(shí)例的IRT值匹配,來(lái)判斷是否接納該路由。經(jīng)過(guò)以上的流程,Leaf2、Leaf3上就能建立到Leaf1的頭端復(fù)制列表,指導(dǎo)后續(xù)BUM報(bào)文的轉(zhuǎn)發(fā)。類似的,Leaf1上也會(huì)建立到Leaf2、Leaf3的頭端復(fù)制列表。使用EVPN發(fā)布主機(jī)路由和網(wǎng)段路由主機(jī)路由發(fā)布EVPNType2路由不僅可以發(fā)布主機(jī)MAC地址,還可以發(fā)布主機(jī)路由信息,這是因?yàn)門ype2路由還可以攜帶32位掩碼的主機(jī)IP地址信息。主機(jī)路由的發(fā)布可以實(shí)現(xiàn)分布式網(wǎng)關(guān)場(chǎng)景下跨網(wǎng)段主機(jī)之間的互通。VTEP之間需要發(fā)布下屬主機(jī)的IP路由,否則對(duì)端VTEP就無(wú)法學(xué)習(xí)到該主機(jī)的路由信息,從而沒(méi)法進(jìn)行三層轉(zhuǎn)發(fā)。簡(jiǎn)單來(lái)說(shuō)就是“你得告訴我你下面都接了什么網(wǎng)段的路由,否則我怎么知道要發(fā)給你呢”。下面以圖1-7為列,介紹VTEP之間是如何使用EVPN來(lái)發(fā)布主機(jī)路由的。圖1-7使用EVPN發(fā)布主機(jī)路由的示意圖圖中Leaf1和Leaf2作為VTEP,同時(shí)作為三層網(wǎng)關(guān),分別連接不同網(wǎng)段的主機(jī)Host1和Host2,以Leaf1向Leaf2發(fā)送路由為例。1、Host1在連接至Leaf1時(shí),通常會(huì)觸發(fā)ARP、DHCP等行為。通過(guò)這些流量,Leaf1上就會(huì)學(xué)習(xí)到Host1的ARP信息。同時(shí),還可以根據(jù)Host1所屬的BD域,獲取相應(yīng)的二層VNI、L3VPN實(shí)例及L3VPN實(shí)例關(guān)聯(lián)的三層VNI信息。為什么會(huì)有L3VPN和三層VNI呢?因?yàn)橥粋€(gè)Leaf下可能接入多個(gè)租戶的服務(wù)器,而為了實(shí)現(xiàn)不同租戶之間的隔離,所以就在Leaf上通過(guò)創(chuàng)建不同的L3VPN來(lái)隔離不同租戶的路由表,從而將不同租戶的路由存放在不同的私網(wǎng)路由表中。而三層VNI就是用來(lái)標(biāo)識(shí)這些L3VPN的,當(dāng)Leaf節(jié)點(diǎn)收到對(duì)端發(fā)送來(lái)的數(shù)據(jù)報(bào)文時(shí)(報(bào)文會(huì)攜帶三層VNI),就根據(jù)其三層VNI找到相應(yīng)的L3VPN,通過(guò)查找該L3VPN實(shí)例下的路由表來(lái)進(jìn)行轉(zhuǎn)發(fā)。Leaf1獲取的二層VNI、L3VPN實(shí)例及L3VPN實(shí)例關(guān)聯(lián)的三層VNI信息依賴的關(guān)鍵配置示例如下:[Leaf1]ipvpn-instancevpn1//L3VPN實(shí)例ipv4-familyroute-distinguisher20:4vpn-target100:5000export-extcommunityevpnvpn-target100:5000import-extcommunityevpnvxlanvni5000//L3VPN實(shí)例關(guān)聯(lián)的三層VNI#bridge-domain10vxlanvni10//二層VNIevpnroute-distinguisher10:4vpn-target0:10export-extcommunityvpn-target100:5000export-extcommunityvpn-target0:10import-extcommunity#interfaceVbdif10//根據(jù)BD信息獲取三層Vbdif接口和此接口綁定的L3VPN實(shí)例ipbindingvpn-instancevpn1ipaddressmac-address0000-5e00-0102vxlananycast-gatewayenablearpcollecthostenable#以上這些總結(jié)起來(lái)就是Leaf1會(huì)獲取Host1的:IP+MAC+Host1所屬的二層VNI+VBDIF綁定的L3VPN實(shí)例的三層VNI,然后:Leaf1上的EVPN實(shí)例就可以根據(jù)這些信息生成EVPNType2類型的路由(參見(jiàn)上圖中的表格),除了獲取的Host1的相關(guān)信息外,還攜帶本端EVPN實(shí)例的ERT、路由下一跳(本端VTEPIP)、VTEP的MAC等信息,將其發(fā)送給對(duì)等體Leaf2。Leaf1上的EVPN實(shí)例將Host1的IP+MAC+三層VNI發(fā)給本端的L3VPN實(shí)例,從而在本端的L3VPN實(shí)例中生成本地Host1的路由。2、Leaf2收到Leaf1發(fā)來(lái)的Type2路由后,能夠?qū)W習(xí)到Host1的IP地址信息,并將其保存在相應(yīng)的路由表中,其下一跳為L(zhǎng)eaf1的VTEPIP地址,同時(shí)記錄對(duì)應(yīng)的三層VNI信息,處理過(guò)程如下:檢查該路由的ERT與接收端EVPN實(shí)例的IRT是否相同。如果相同,則接收該路由,同時(shí)EVPN實(shí)例提取其中包含的主機(jī)IP+MAC信息,用于主機(jī)ARP通告。檢查該路由的ERT與接收端L3VPN實(shí)例的IRT是否相同(如下表中的舉例所示)。如果相同,則接收該路由,同時(shí)L3VPN實(shí)例提取其中的主機(jī)IP地址+三層VNI信息,在其路由表中生成Host1的路由。該路由的下一跳會(huì)被設(shè)置為L(zhǎng)eaf1的VXLAN隧道接口。Leaf1(發(fā)送端)ipvpn-instancevpn1ipv4-familyroute-distinguisher20:2vpn-target100:5000export-extcommunityevpnvpn-target100:5000import-extcommunityevpnvxlanvni5000#bridge-domain10vxlanvni10evpnroute-distinguisher10:2vpn-target100:10export-extcommunityvpn-target100:5000export-extcommunity//發(fā)送端EVPN中的ERTvpn-target100:10import-extcommunity#

Leaf2(接收端)ipvpn-instancevpn1ipv4-familyroute-distinguisher20:3vpn-target100:5000export-extcommunityevpnvpn-target100:5000import-extcommunityevpn//接收端L3VPN中的IRT(eIRT)vxlanvni5000#bridge-domain20vxlanvni20evpnroute-distinguisher10:3vpn-target100:20export-extcommunityvpn-target100:5000export-extcommunityvpn-target100:20import-extcommunity#接收端EVPN實(shí)例或L3VPN實(shí)例接收該路由后會(huì)通過(guò)下一跳獲取Leaf1的VTEPIP地址,如果該地址三層路由可達(dá),則建立一條到Leaf1的VXLAN隧道。經(jīng)過(guò)以上的流程,Leaf2就可以學(xué)習(xí)到Host1的IP路由信息,后續(xù)轉(zhuǎn)發(fā)至Host1的報(bào)文時(shí),可以根據(jù)查找路由表進(jìn)行轉(zhuǎn)發(fā)。類似的,Leaf1也可以學(xué)習(xí)到Host2的IP路由信息。網(wǎng)段路由發(fā)布網(wǎng)段路由的發(fā)布流程與主機(jī)路由類似,區(qū)別在于網(wǎng)段路由是通過(guò)Type5路由發(fā)布的,Type2路由只能發(fā)布32/128位的主機(jī)路由。Type5路由也可以發(fā)布32/128位的主機(jī)路由,在發(fā)布32/128位的主機(jī)路由時(shí),功能與Type2路由類似。如果網(wǎng)關(guān)設(shè)備下連接的網(wǎng)段在整個(gè)網(wǎng)絡(luò)中唯一,則可以配置發(fā)布網(wǎng)段路由,否則不能配置發(fā)布網(wǎng)段路由。圖1-8EVPN網(wǎng)段路由發(fā)布示意圖下面以圖1-8為列,介紹VTEP之間是如何發(fā)布網(wǎng)段路由的。圖中Leaf1和Leaf2作為VTEP,同時(shí)作為三層網(wǎng)關(guān),其中Leaf1連接一個(gè)/24的網(wǎng)段。Leaf1收集到本地IP網(wǎng)段路由,把該IP網(wǎng)段路由通過(guò)EVPNType5路由發(fā)送給Leaf2。路由中攜帶有IP前綴、掩碼長(zhǎng)度、對(duì)應(yīng)VRF的三層VNI等信息(如上圖表格所示)。Leaf2收到Leaf1發(fā)來(lái)的Type5路由后,能夠?qū)W習(xí)到IP網(wǎng)段路由信息,并將其保存在相應(yīng)的路由表中,其下一跳為L(zhǎng)eaf1的VTEPIP地址,同時(shí)記錄對(duì)應(yīng)的三層VNI信息。Leaf2收到Leaf1發(fā)送的EVPN路由時(shí),根據(jù)EVPN路由攜帶的RT值(Type5路由使用L3VPN實(shí)例的ERT值填充)是否與本地L3VPN實(shí)例的IRT值匹配,來(lái)將網(wǎng)段路由添加到對(duì)應(yīng)VRF的路由表中。如果某VRF的IRT值與EVPN路由攜帶的RT值相同,則接收該路由,同時(shí)提取其中的網(wǎng)段路由+三層VNI信息,在其路由表中生成網(wǎng)段路由。該路由的下一跳會(huì)被設(shè)置為L(zhǎng)eaf1的VTEPIP地址。同時(shí),如果Leaf1的VTEPIP地址三層路由可達(dá),則建立一條到Leaf1的VXLAN隧道。Leaf1(發(fā)送端)ipvpn-instancevpn1ipv4-familyroute-distinguisher20:2vpn-target100:5000export-extcommunityevpn//Type5路由中發(fā)送端的ERT使用L3VPN實(shí)例中的ERT(eERT)vpn-target100:5000import-extcommunityevpnvxlanvni5000#bridge-domain10vxlanvni10evpnroute-distinguisher10:2vpn-target100:10export-extcommunityvpn-target100:5000export-extcommunityvpn-target100:10import-extcommunity#Leaf2(接收端)ipvpn-instancevpn1ipv4-familyroute-distinguisher20:3vpn-target100:5000export-extcommunityevpnvpn-target100:5000import-extcommunityevpn//接收端L3VPN實(shí)例中的IRT(eIRT)vxlanvni5000#bridge-domain20vxlanvni20evpnroute-distinguisher10:3vpn-target100:20export-extcommunityvpn-target100:5000export-extcommunityvpn-target100:20import-extcommunity#經(jīng)過(guò)以上的流程,Leaf2就可以學(xué)習(xí)到Leaf1的網(wǎng)段路由信息,后續(xù)轉(zhuǎn)發(fā)至該網(wǎng)段的報(bào)文時(shí),可以根據(jù)查找路由表進(jìn)行轉(zhuǎn)發(fā)。VXLAN流量的轉(zhuǎn)發(fā)過(guò)程本文下面的內(nèi)容以Underlay網(wǎng)絡(luò)和Overlay網(wǎng)絡(luò)均為IPv4為例,介紹用BGPEVPN部署的分布式VXLAN網(wǎng)絡(luò)中,報(bào)文的轉(zhuǎn)發(fā)過(guò)程。同子網(wǎng)報(bào)文轉(zhuǎn)發(fā)同子網(wǎng)報(bào)文轉(zhuǎn)發(fā)為二層轉(zhuǎn)發(fā),只在VXLAN二層網(wǎng)關(guān)之間進(jìn)行,三層網(wǎng)關(guān)無(wú)需感知。同子網(wǎng)已知單播報(bào)文轉(zhuǎn)發(fā)如圖1-9所示,Host1和Host2同屬于一個(gè)子網(wǎng),下面以Host1向Host2發(fā)送已知單播報(bào)文為例介紹報(bào)文在VXLAN網(wǎng)絡(luò)中的轉(zhuǎn)發(fā)流程。圖1-9同子網(wǎng)已知單播報(bào)文轉(zhuǎn)發(fā)示意圖Host1發(fā)送目的地址為Host2的報(bào)文。如果Host1沒(méi)有Host2的MAC地址,會(huì)先發(fā)送廣播ARP請(qǐng)求來(lái)獲取Host2的MAC地址,此處該過(guò)程不再詳述,認(rèn)為Host1已經(jīng)獲取了Host2的MAC地址。Leaf1收到Host1的報(bào)文后,根據(jù)報(bào)文入端口或VLAN信息判斷其所屬的BD,并在該BD內(nèi)查找出接口(通過(guò)上一節(jié)使用EVPN學(xué)習(xí)MAC地址可以知道,Leaf1上會(huì)學(xué)習(xí)到Host2的MAC地址,出接口為VTEP)。然后Leaf1會(huì)對(duì)報(bào)文進(jìn)行VXLAN封裝后轉(zhuǎn)發(fā)。Leaf2接收到VXLAN報(bào)文后,根據(jù)報(bào)文中VNI獲取二層廣播域,進(jìn)行VXLAN解封裝,獲取內(nèi)層的二層報(bào)文。Leaf2根據(jù)內(nèi)層報(bào)文的目的MAC地址,從本地MAC表中找到對(duì)應(yīng)的出接口,然后轉(zhuǎn)發(fā)給對(duì)應(yīng)的主機(jī)Host2。Host2向Host1發(fā)送報(bào)文的過(guò)程與上述過(guò)程相同。同子網(wǎng)BUM報(bào)文轉(zhuǎn)發(fā)如果是同子網(wǎng)的BUM報(bào)文(廣播、組播、未知單播),則會(huì)向同子網(wǎng)的所有VTEP發(fā)送一份廣播報(bào)文。例如圖1-9所示,Host1向外發(fā)送廣播報(bào)文。Leaf1收到Host1的廣播報(bào)文后,根據(jù)報(bào)文入端口或VLAN信息判斷其所屬的BD,并在該BD內(nèi)查找所有的隧道列表,依據(jù)獲取的隧道列表進(jìn)行報(bào)文封裝后,向所有隧道發(fā)送報(bào)文,從而將報(bào)文轉(zhuǎn)發(fā)至同子網(wǎng)的Host2和Host3。跨子網(wǎng)報(bào)文轉(zhuǎn)發(fā)如圖1-10所示,在分布式網(wǎng)關(guān)場(chǎng)景下,Leaf1、Leaf2作為VXLAN的三層網(wǎng)關(guān),進(jìn)行VXLAN封裝及三層轉(zhuǎn)發(fā),Spine僅作為VXLAN報(bào)文轉(zhuǎn)發(fā)節(jié)點(diǎn),不進(jìn)行VXLAN報(bào)文的處理。圖1-10分布式網(wǎng)關(guān)場(chǎng)景下跨子網(wǎng)報(bào)文轉(zhuǎn)發(fā)示意圖以Host1向Host2發(fā)送報(bào)文為例介紹報(bào)文在VXLAN網(wǎng)絡(luò)中的轉(zhuǎn)發(fā)流程:因?yàn)镠ost1與Host2屬于不同網(wǎng)段,所以Host1會(huì)先將報(bào)文發(fā)送給網(wǎng)關(guān)(Leaf1),交由網(wǎng)關(guān)進(jìn)行轉(zhuǎn)發(fā)。Leaf1接收到來(lái)自Host1的報(bào)文,根據(jù)報(bào)文的目的地址判斷需要進(jìn)行三層轉(zhuǎn)發(fā)。Leaf1根據(jù)報(bào)文入端口或VLAN信息判斷其所屬的BD,找到綁定該BD的L3VPN實(shí)例,然后在該L3VPN實(shí)例下查找路由表。在前面使用EVPN發(fā)布主機(jī)路由和網(wǎng)段路由章節(jié)已經(jīng)介紹過(guò),在分布式網(wǎng)關(guān)場(chǎng)景下,網(wǎng)關(guān)Leaf1會(huì)學(xué)習(xí)到Host2的主機(jī)路由。Leaf1根據(jù)路由獲取三層VNI、下一跳等信息,然后進(jìn)行VXLAN封裝,將報(bào)文轉(zhuǎn)發(fā)至Leaf2。Leaf2收到VXLAN報(bào)文后進(jìn)行解封裝,根據(jù)報(bào)文攜帶的三層VNI找到對(duì)應(yīng)的L3VPN實(shí)例,通過(guò)查找該L3VPN實(shí)例下的路由表,獲取報(bào)文的下一跳是網(wǎng)關(guān)接口地址,然后將目的MAC地址替換為Host2的MAC地址,源MAC地址替換為L(zhǎng)eaf2網(wǎng)關(guān)的MAC地址,轉(zhuǎn)發(fā)給Host2。Host2向Host1發(fā)送報(bào)文的過(guò)程與上述過(guò)程相同。VXLAN網(wǎng)絡(luò)中的ARP廣播抑制地址解析協(xié)議ARP(AddressResolutionProtocol)用來(lái)將IP地址解析為MAC地址。網(wǎng)絡(luò)中同網(wǎng)段主機(jī)首次通信時(shí),由于沒(méi)有目標(biāo)主機(jī)的MAC地址信息,因此會(huì)發(fā)送ARP廣播請(qǐng)求來(lái)獲取目的MAC地址信息。ARP廣播請(qǐng)求報(bào)文在VXLAN網(wǎng)絡(luò)中會(huì)泛洪轉(zhuǎn)發(fā),大量的ARP報(bào)文存在會(huì)占用過(guò)多的網(wǎng)絡(luò)資源,導(dǎo)致網(wǎng)絡(luò)性能下降。為了抑制ARP廣播請(qǐng)求給網(wǎng)絡(luò)帶來(lái)的負(fù)面影響,可以通過(guò)ARP廣播抑制功能來(lái)盡可能的減少ARP報(bào)文在VXLAN網(wǎng)絡(luò)中的泛洪。ARP廣播抑制有兩種方式,一種是ARP廣播變

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論