MPLS VPN跨域?qū)崿F(xiàn)方法及特點(diǎn)
隨著ALLIP趨勢(shì)的明朗,運(yùn)營(yíng)商建設(shè)統(tǒng)一的IP承載網(wǎng)已經(jīng)勢(shì)在必行,各種業(yè)務(wù)承載在一張IP網(wǎng)絡(luò)上,為了保證不同業(yè)務(wù)的QOS水平,業(yè)務(wù)之間的有效隔離成為大家關(guān)注的一個(gè)焦點(diǎn)。MPLSVPN技術(shù)是當(dāng)前發(fā)展最快、成熟度最高的技術(shù)之一,通過近幾年在一定領(lǐng)域的部署實(shí)施,證明了該技術(shù)在運(yùn)營(yíng)商網(wǎng)絡(luò)是切實(shí)可行的,是業(yè)務(wù)隔離的有效工具。目前在運(yùn)營(yíng)商網(wǎng)絡(luò)部署實(shí)施的MPLSVPN大部分在在一個(gè)AS內(nèi),然而,實(shí)際部署的業(yè)務(wù),如運(yùn)營(yíng)商內(nèi)部的語(yǔ)音業(yè)務(wù),企業(yè)客戶的VPN專線業(yè)務(wù),往往都是跨越多個(gè)AS,VPN如何有效跨越多個(gè)AS,是目前需要關(guān)注和解決的問題。
2.MPLSVPN跨域方法概述
同在單個(gè)AS內(nèi)建立VPN的過程一樣,跨域VPN的建立過程也同樣關(guān)注兩個(gè)方面,一是VPN信息的傳遞方法,一是VPN隧道的建立方法,經(jīng)過近幾年的實(shí)踐和快速發(fā)展,業(yè)界提出了幾種VPN跨域方法,即OPTIONA/B/C三種,不同方法采用不同的VPN信息傳遞模式和VPN隧道構(gòu)建方法,具有鮮明的特點(diǎn)和適合不同的應(yīng)用場(chǎng)景。
另外,MPLSVPN可以分為MPLS/BGP三層VPN和MPLSL2VPN,兩種VPN都支持上述的三種跨域方法,采用相同的跨域理念,只不過MPLS/BGPVPN由于使用較早和部署較廣,其對(duì)應(yīng)的跨域方法已經(jīng)標(biāo)準(zhǔn)化,MPLSL2VPN目前在標(biāo)準(zhǔn)化進(jìn)程上稍微落后,其對(duì)應(yīng)的跨域標(biāo)準(zhǔn)還沒有正式發(fā)布,但一些主流廠家對(duì)此已有部分或全部支持。
3.MPLS/BGP跨域
3.1OPTIONA跨域?qū)崿F(xiàn)方法
OPTIONA跨域也叫做背靠背跨域,即兩個(gè)AS的邊界路由器ASBR互相作為PE和CE,如上圖所示,ASBR1作為AS1的PE設(shè)備,ASBR2在此看作ASBR1連接的CE設(shè)備,反之亦然。
VPN信息傳遞
同一AS的PE和ASBR之間通過正常的MBGP協(xié)議傳遞VPN路由信息,ASBR之間通過正常的PE和CE之間的路由傳遞方法傳送VPN路由信息,如上圖,VPNA2通過IGP協(xié)議把路由信息傳遞給PE2,PE2通過MBGP協(xié)議把VPNA2的信息傳遞給ASBR2,ASBR2作為ASBR1的CE設(shè)備,通過IGP協(xié)議把VPNA2的信息傳遞給ASBR1,ASBR1再通過MBGP協(xié)議把VPNA2的信息傳遞給PE1,PE1再通過IGP協(xié)議把VPNA2的信息傳遞到VPNA1,至此,VPN信息傳遞完畢。
VPN隧道構(gòu)建
在OPTIONA跨域方法中,VPN隧道構(gòu)建比較簡(jiǎn)單,各個(gè)AS單獨(dú)構(gòu)建PE到ASBR的LSP雙層隧道,內(nèi)層標(biāo)簽代表VPN信息,外層標(biāo)簽代表到達(dá)VPN路由下一跳PE的公網(wǎng)標(biāo)簽,和在單個(gè)AS內(nèi)LSP隧道的建立過程和方式一樣,ASBR和ASBR之間通過裸IP轉(zhuǎn)發(fā),沒有LSP隧道。
特點(diǎn)
ASBR需要處理VPN路由信息,并且需要配置VRF實(shí)例
ASBR需要為每個(gè)VPN分配一個(gè)物理或邏輯鏈路
每個(gè)AS內(nèi)單獨(dú)建立雙層LSP隧道,ASBR之間依靠IP連接
適用于VPN業(yè)務(wù)開展初期,VPN數(shù)量較少的情況下
3.2OPTIONB跨域?qū)崿F(xiàn)方法
OPTIONB跨域也叫單跳MP-EBGP跨域,AS內(nèi)通過正常的MPLS/BGP傳遞VPN信息和構(gòu)建LSP隧道,AS之間通過單跳的MP-EBGP協(xié)議傳遞VPN信息并構(gòu)建LSP隧道。
VPN信息傳遞
如上圖所示,CE2通過IGP傳遞私網(wǎng)信息給PE2,PE2通過MP-IBGP傳遞VPN信息到ASBR2,ASBR2通過單跳的MP-EBGP傳遞VPN路由信息給ASBR1,然后,ASBR1再通過MP-IBGP傳遞VPN信息給PE1,PE1再通過IGP協(xié)議把私網(wǎng)信息傳遞給CE1,至此,CE1擁有到達(dá)CE2的路由信息。如果中間跨域多個(gè)AS,AS內(nèi)部全部按照MP-IBGP協(xié)議傳遞,ASBR之間全部按照單跳的MP-EBGP傳遞。
LSP隧道構(gòu)建
當(dāng)使用BGP傳遞路由時(shí),如果是EBGP傳遞,下一跳必定改變?yōu)樽约海绻ㄟ^IBGP傳遞,下一跳可以改變?yōu)樽约阂部梢圆桓淖儯硗?,?dāng)采用MP-BGP傳遞VPN路由信息,下一跳更改時(shí),那么就需要為VPN重新分配標(biāo)簽。
如上圖所示,在OPTIONB跨域中,ASBR2向ASBR1傳遞VPN路由時(shí),下一跳必定改變?yōu)樽约?,同時(shí)ASBR2重新為VPN分配標(biāo)簽,ASBR1向PE1傳遞VPN路由信息時(shí),分兩種情況考慮,一是ASBR1向PE1傳遞VPN路由信息時(shí),下一跳改變?yōu)樽约?,一是ASBR1向PE1傳遞私網(wǎng)路由信息時(shí),下一跳不改變,也就是下一跳仍然為ASBR2。
在改變路由下一跳為ASBR1的情況下,ASBR1重新為VPN分配標(biāo)簽,VPN從PE1到達(dá)PE2的路徑為PE1→ASBR1→ASBR2→PE2,在AS1內(nèi),構(gòu)建PE1到ASBR1的雙層LSP隧道,內(nèi)層為VPN標(biāo)簽(ASBR1分配的),外層為PE1到ASBR1的公網(wǎng)隧道,在ASBR之間構(gòu)建單層LSP隧道,只攜帶VPN標(biāo)簽(ASBR2分配的),在AS2內(nèi)構(gòu)建雙層LSP隧道,內(nèi)層為VPN標(biāo)簽,PE2分配的,外層為ASBR2到PE2的公網(wǎng)隧道。在兩個(gè)ASBR處由于VPN標(biāo)簽都重新分配,所以最底層的標(biāo)簽在兩個(gè)ASBR處都會(huì)有SWAP操作,也正是通過VPN標(biāo)簽的SWAP,把兩個(gè)AS的VPN隧道連接起來(lái)。
如果不改變VPN路由的下一跳,那么PE1接收的VPN路由的下一跳就是AS2域內(nèi)的ASBR2,則VPN從PE1到PE2的路徑為PE1→ASBR2→PE2,那么就需要構(gòu)建一條從PE1一直到ASBR2的雙層LSP隧道,內(nèi)層為VPN標(biāo)簽(ASBR2分配的),外層為PE1到ASBR2的公網(wǎng)隧道,ASBR2到PE2也構(gòu)建雙層LSP隧道,內(nèi)層為VPN標(biāo)簽(PE2分配的),外層為ASBR2到PE2的公網(wǎng)隧道。在這種情況下,ASBR2和ASBR1之間需要運(yùn)行某種標(biāo)簽分發(fā)協(xié)議,目的是分發(fā)ASBR2的公網(wǎng)標(biāo)簽,另外,在ASBR2處LSP的內(nèi)外層標(biāo)簽都會(huì)進(jìn)行SWAP操作,從而把兩條LSP粘結(jié)成一個(gè)端到端的LSP隧道。
特點(diǎn)
ASBR需要處理VPN信息,但不需要配置VRF實(shí)例
ASBR之間一條鏈路傳遞所有VPN信息
根據(jù)不同的情況,ASBR之間構(gòu)建單層或雙層LSP隧道
當(dāng)VPN業(yè)務(wù)發(fā)展到一定階段,ASBR之間的鏈路受限時(shí),可以考慮OPTIONB跨域方法
3.3OPTIONC跨域?qū)崿F(xiàn)方法
OPTIONC跨域也叫多跳MP-EBGP跨域,由于BGP只要能建立TCP連接,就能成為BGP鄰居并傳遞路由信息,因此,OPTIONC通過多跳的MP-EBGP直接在源、宿端PE之間傳遞VPN路由信息,然后在源、宿端PE之間構(gòu)建LSP公網(wǎng)隧道。
VPN信息傳遞
OPTIONC跨域時(shí)VPN信息傳遞比較簡(jiǎn)單,即直接在源和宿端PE間通過多跳MP-EBGP傳遞,如上圖,PE2和PE1之間建立多跳的MP-EBGP連接,VPN信息直接從PE2傳遞到PE1。
LSP隧道構(gòu)建
從VPN信息傳遞的方式可以看出,VPN從PE1到PE2之間只有一跳,VPN的下一跳為PE2,PE2為VPN分配標(biāo)簽,并且一直不會(huì)改變。
現(xiàn)在重要的是確定PE1到PE2的外層LSP怎樣建立,首先,PE2和ASBR2在一個(gè)AS,通過IGP協(xié)議,ASBR2會(huì)有PE2的路由信息,通過正常的LDP協(xié)議,ASBR2和PE2會(huì)構(gòu)建一個(gè)LSP隧道,ASBR1和PE2不在一個(gè)AS,ASBR1沒有PE2的路由信息,此時(shí)可以通過EBGP協(xié)議把PE2的路由信息傳遞給ASBR1,另外,對(duì)BGP協(xié)議進(jìn)行擴(kuò)展(RFC3107),讓BGP在傳遞路由時(shí)同時(shí)分配標(biāo)簽,這樣,ASBR1和ASBR2之間的LSP形成,并在ASBR2處形成標(biāo)簽SWAP,同樣,ASBR1和PE1之間也通過擴(kuò)展的IBGP傳送PE2的路由信息,同時(shí)分配標(biāo)簽,并在ASBR1處形成標(biāo)簽SWAP,但這一段LSP的建立和ASBR之間LSP的建立不一樣,ASBR之間是直連的,下一跳直接可達(dá),PE1和ASBR1之間不是直連的,但PE1和ASBR1位于同一個(gè)AS,通過LDP可以構(gòu)建一個(gè)LSP隧道,這樣,在PE1到ASBR1之間的LSP隧道最終包括三層標(biāo)簽,最底層VPN標(biāo)簽(PE2分配),中間一層為到PE2的標(biāo)簽(ASBR1通過擴(kuò)展BGP分配),最外層為到ASBR1的標(biāo)簽(LDP分配),ASBR之間構(gòu)建一個(gè)雙層LSP隧道,底層為VPN標(biāo)簽(PE2分配),外層為到PE2的標(biāo)簽(ASBR2通過擴(kuò)展BGP分配),ASBR2到PE2之間為雙層LSP隧道,內(nèi)層為VPN標(biāo)簽(PE2分配),外層為到PE2的標(biāo)簽(LDP分配)這三段隧道通過在ASBR處的標(biāo)簽SWAP粘結(jié)起來(lái),最終形成端到端的LSP隧道。
特點(diǎn)
ASBR不需要處理VPN信息,最符合VPN的要求,即中間設(shè)備不感知VPN信息
使用BGP擴(kuò)展來(lái)傳遞公網(wǎng)標(biāo)簽
在宿端AS之外的AS出現(xiàn)三層標(biāo)簽的LSP隧道。
當(dāng)VPN業(yè)務(wù)大規(guī)模發(fā)展時(shí),可以使用OPTIONC跨域方法
3.4OPTIONA/B/C跨域方法對(duì)比
項(xiàng)目
方法
OPTIONA
OPTIONB
OPTIONC
備注
ASBRVPN感知
需要處理VPN信息,并配置VRF
需要處理VPN信息,不配置VRF
不感知VPN信息
ASBR負(fù)載
處理所有VPN信息,負(fù)載重
處理所有VPN信息,負(fù)載重
不處理VPN信息,負(fù)載輕
鏈路
每個(gè)VPN在ASBR之間占用一個(gè)鏈路
一個(gè)鏈路
一個(gè)鏈路
跨域VPN傳遞
ASBR通過IGP傳遞VPN
ASBR之間通過MP-EBGP傳遞VPN信息
源、宿端PE直接通過MP-EBGP傳遞
對(duì)接
對(duì)接簡(jiǎn)單,ASBR互為PE、CE設(shè)備,IP對(duì)接
當(dāng)MP-IBGP不改變下一跳為自己時(shí),ASBR之間需要運(yùn)行LDP
ASBR之間需要運(yùn)行BGP擴(kuò)展來(lái)傳遞公網(wǎng)標(biāo)簽
除宿端AS外的其他AS內(nèi)也要運(yùn)行BGP擴(kuò)展來(lái)傳送公網(wǎng)標(biāo)簽
隧道
AS內(nèi)部建立雙層LSP,ASBR之間IP轉(zhuǎn)發(fā)
ASBR之間單層或ASBR到上游PE之間建立雙層LSP
宿端AS、ASBR之間建立雙層LSP,其他AS建立三層LSP隧道
1、維護(hù)
2、簡(jiǎn)單
3、復(fù)雜
4、場(chǎng)景
VPN數(shù)量少,業(yè)務(wù)開展早期
VPN數(shù)量始終,ASBR之間鏈路受限,業(yè)務(wù)開展中期
VPN數(shù)量大,業(yè)務(wù)大量開展時(shí)期
4.L2VPN跨域
L2VPN跨域理念和MPLS/BGP跨域理念類似,但L2VPN有一些自己不同的實(shí)現(xiàn)方法,下面主要就L2VPN跨域和MPLS/BGP跨域的不同點(diǎn)進(jìn)行說明。
4.1傳遞VPN信息的協(xié)議不同
我們知道,目前L2VPN的實(shí)現(xiàn)主要包括兩種方式,即MARTINI和KOMPELLA,MARTINI通過擴(kuò)展的遠(yuǎn)程LDP會(huì)話傳送L2VPN信息,KOMPELLA通過擴(kuò)展的MP-BGP來(lái)傳遞VPN信息。
4.2傳遞VPN信息的內(nèi)容不同
L3VPN傳遞IP路由和VPN對(duì)應(yīng)的標(biāo)簽,L2VPN不包括IP路由信息,它傳遞的主要是二層相關(guān)的信息,如MARTINIL2VPN傳遞VCID、二層接口信息以及對(duì)應(yīng)的標(biāo)簽,KOMPELLAL2VPN傳遞CEID及標(biāo)簽塊信息。
注:KOMPELLAL2VPN通過分配標(biāo)簽塊,可以自動(dòng)和新的CE站點(diǎn)建立連接,方便日后擴(kuò)容,而且,通過BGP特有的RR,可以有效減少連接數(shù)目,適合較為復(fù)雜的拓?fù)?,MARTINIL2VPN所有的連接需要手工配置,不支持自動(dòng)發(fā)現(xiàn)站點(diǎn)功能,有FULLMESH的限制,適合于較為簡(jiǎn)單的網(wǎng)絡(luò)拓?fù)洹?/p>
4.3支持VPN跨域的方法
兩種L2VPN跨域都可以支持OPTIONA/C,但鑒于OPTIONB跨域逐段傳遞VPN信息的特點(diǎn),KOMPELLAL2VPN天然可以支持,但MARTINIL2VPN不適合采用OPTIONB跨域。
4.4L2VPN采用OPTIONB跨域的特點(diǎn)
KOMPELLAL2VPN采用分配標(biāo)簽塊的方法,和L3VPN在ASBR形成單個(gè)的標(biāo)簽SWAP表項(xiàng)有所不同,參考上面OPTIONB跨域說明,PE2為CE2分配一個(gè)標(biāo)簽塊,假設(shè)包括10個(gè)標(biāo)簽,用于和10個(gè)其他CE建立連接,標(biāo)簽塊到達(dá)ASBR2時(shí),ASBR2會(huì)重新分配一個(gè)范圍為10的標(biāo)簽塊給ASBR1,這樣,在ASBR2處就會(huì)形成一個(gè)標(biāo)簽SWAP表,假設(shè)形成10個(gè)連接,就會(huì)包括10個(gè)SWAP表項(xiàng),CE2和CE1的連接會(huì)對(duì)應(yīng)SWAP的第一個(gè)表項(xiàng),依次類推,按照CEID的不同,最終通過ASBR2的所有連接都會(huì)對(duì)應(yīng)一個(gè)SWAP表項(xiàng)。
4.5VPLS跨域
VPLS可以看作L2VPN的特例,實(shí)現(xiàn)方法也主要包括MARTINI和KOMPELLA兩種,也有OPTIONA/B/C三種跨域方法(注意MARTINI和KOMPELLA支持跨域方法的不同),研究VPLS跨域時(shí),不需要考慮VSI實(shí)例的學(xué)習(xí)轉(zhuǎn)發(fā)功能,只需要考慮PE和PE之間PW的建立,此時(shí)就和L2VPN的跨域理念和實(shí)現(xiàn)方法一模一樣。
4.6L2VPN跨域和MPLS/BGP跨域的比較
【編輯推薦】