陶志勇,王如龍,張 錦,3
(1.長沙民政學(xué)院軟件學(xué)院,長沙410004;2.湖南大學(xué)軟件學(xué)院,長沙410082; 3.湖南師范大學(xué)數(shù)學(xué)與計算機科學(xué)學(xué)院,長沙410012)
基于負載分離的跨域虛擬專用網(wǎng)解決方案
陶志勇1,2,王如龍2,張 錦2,3
(1.長沙民政學(xué)院軟件學(xué)院,長沙410004;2.湖南大學(xué)軟件學(xué)院,長沙410082; 3.湖南師范大學(xué)數(shù)學(xué)與計算機科學(xué)學(xué)院,長沙410012)
利用多協(xié)議標簽交換和邊界網(wǎng)關(guān)協(xié)議構(gòu)建的虛擬專用網(wǎng)(VPN),在跨域平臺中存在無法生成標簽路徑和邊界設(shè)備負載過重的問題。為此,從標簽分配原理和數(shù)據(jù)轉(zhuǎn)發(fā)層面分析產(chǎn)生上述問題的根源,并提出背靠背方案和基于單跳EBGP的方案處理承載標簽轉(zhuǎn)發(fā)問題,但這些方案無法解決邊界設(shè)備負載過重問題。進而基于多跳EBGP提出負載分離的VPN解決方案。通過擴展現(xiàn)有協(xié)議和修改系統(tǒng)架構(gòu),對傳統(tǒng)VPN方案進行改進,并針對不同的網(wǎng)絡(luò)環(huán)境給出具體配置方案。為評估方案性能,通過多項指標對比不同的解決方案。分析結(jié)果表明,基于負載分離的VPN解決方案能夠解決標簽問題和負載問題,是實現(xiàn)跨域VPN的有效方案。
多協(xié)議標簽交換;邊界網(wǎng)關(guān)協(xié)議;標簽;自治系統(tǒng);域;虛擬專用網(wǎng)
因特網(wǎng)工程任務(wù)組(Internet Engineering Task Force,IETF)發(fā)布的RFC-2547描述了一種運營商通過IP骨干網(wǎng)為用戶提供虛擬專用網(wǎng)(Virtual Private Network,VPN)[1]業(yè)務(wù)的方法。該方法通過擴展邊界網(wǎng)關(guān)協(xié)議(Border Gateway Protocol,BGP)[2]為通過骨干網(wǎng)的私網(wǎng)數(shù)據(jù)分發(fā)VPN路由信息,并使用多協(xié)議標簽交換 (Multiprotocol Label Switching, MPLS)[3]在VPN用戶站點之間轉(zhuǎn)發(fā)VPN流量。這種組網(wǎng)方式靈活性好、擴展性強,已越來越受運營商、電力、教育、政府部門的青睞[4-5]。
隨著用戶網(wǎng)絡(luò)規(guī)模范圍成倍增長,需要與另外一個服務(wù)提供商或另外的自治系統(tǒng)(Autonomous System,AS)相連的可能性的需求變得非常普遍[6-7]。MPLS和BGP構(gòu)建的VPN體系結(jié)構(gòu)是在同一個自治系統(tǒng)內(nèi)運行,任何VPN的路由信息限定于在一個自治系統(tǒng)內(nèi)按需擴散,它沒有提供一個自治系統(tǒng)內(nèi)的VPN路由信息向其他自治系統(tǒng)擴散的功能。因此,互聯(lián)網(wǎng)工作組正在著力研究跨自治系統(tǒng)域或跨運營商的VPN的互聯(lián)問題[7-8]。
針對MPLS和BGP構(gòu)建的VPN不支持跨域的缺陷,本文從兩方面著手解決該問題。首先提出2種側(cè)重不同的VPN解決方案:背靠背解決方案和基于EBGP的解決方案,并分析2種方案的優(yōu)缺點[2]。然后基于這2種方案,提出一種綜合的跨域VPN解決方案:基于負載分離的跨域VPN解決方案,通過為BGP路由信息分配公網(wǎng)標簽,實現(xiàn)2條標簽交換路徑的無縫對接,擴展了現(xiàn)有協(xié)議并修改了基于MPLS和BGP構(gòu)建的VPN的體系框架。
2.1 跨域問題
構(gòu)建基于MPLS和BGP的跨域VPN,需要根據(jù)MPLS和BGP的原理進行合理設(shè)計。MPLS和BGP構(gòu)建的VPN能實現(xiàn)私網(wǎng)數(shù)據(jù)穿越公網(wǎng),并把私網(wǎng)數(shù)據(jù)準確地轉(zhuǎn)發(fā)到相對應(yīng)的接口,主要依賴于兩層標簽。一層是把數(shù)據(jù)發(fā)送到相對應(yīng)的 PE(Provider Edge)設(shè)備的公網(wǎng)標簽;另一層是把數(shù)據(jù)發(fā)送到PE設(shè)備對應(yīng)接口的內(nèi)層標簽(如圖1所示)。
圖1 MPLS和BGP的組網(wǎng)
在這種模式中,公網(wǎng)標簽和私網(wǎng)標簽是實現(xiàn)私網(wǎng)數(shù)據(jù)穿越公網(wǎng)的關(guān)鍵。但將基于MPLS-BGP構(gòu)建的VPN拓展到不同自治系統(tǒng)時,存在以下2個關(guān)鍵問題:
問題1 如何解決在自治系統(tǒng)間的設(shè)備上承載標簽的轉(zhuǎn)發(fā),形成與之對應(yīng)的標簽轉(zhuǎn)發(fā)路徑。
MPLS和BGP技術(shù)構(gòu)建的VPN公網(wǎng)標簽轉(zhuǎn)發(fā)路徑的形成,需要在公網(wǎng)的設(shè)備上都要運行MPLS標簽分配協(xié)議(Label Distribution Protocol,LDP)。LDP協(xié)議給Loopback地址分配標簽后,會形成與之對應(yīng)的標簽轉(zhuǎn)發(fā)路徑,且要求Loopback地址的路由信息是IGP(Interior Gateway Protocol)。2個自治系統(tǒng)間設(shè)備上交互路由的協(xié)議都是采用的是 BGP, BGP是一種EGP的路由協(xié)議,通過BGP路由協(xié)議學(xué)習(xí)到的路由,無法通過LDP給它分配標簽,形成標簽轉(zhuǎn)發(fā)表。公網(wǎng)標簽轉(zhuǎn)發(fā)表無法形成,導(dǎo)致在公網(wǎng)上無法建立一條邏輯通道,進而使得私網(wǎng)數(shù)據(jù)無法傳輸。另外,私網(wǎng)數(shù)據(jù)能正確地轉(zhuǎn)發(fā)到PE設(shè)備的接口,還得依賴于BGP給它分配的私網(wǎng)標簽,因此,在兩臺自治系統(tǒng)間的設(shè)備上,需要承載考慮私網(wǎng)標簽的轉(zhuǎn)發(fā),進而解決私網(wǎng)數(shù)據(jù)正確地轉(zhuǎn)發(fā)到與之對應(yīng)的PE設(shè)備接口。
問題2 2個自治系統(tǒng)間設(shè)備負載過重問題。
任何跨自治系統(tǒng)間的私網(wǎng)路由,首先在單域系統(tǒng)內(nèi)通過與自治系統(tǒng)邊界設(shè)備建立連接關(guān)系,并把私網(wǎng)路由信息發(fā)送給自治系統(tǒng)邊界設(shè)備,再由邊界設(shè)備與對端邊界設(shè)備進行數(shù)據(jù)的交互。該數(shù)據(jù)交互過程,使得2個自治系統(tǒng)間的設(shè)備不但成了公網(wǎng)路由數(shù)據(jù)的交互中心,同時,也成為處理私網(wǎng)路由數(shù)據(jù)的交互中心。另外,邊界設(shè)備上對于公網(wǎng)標簽的路由信息和私網(wǎng)路由都不能聚合,公網(wǎng)標簽路由信息的聚合會影響標簽轉(zhuǎn)發(fā)表的形成,無法生成正確的標簽轉(zhuǎn)發(fā)路徑。私網(wǎng)路由一旦聚合就會影響路由信息的特征,使得無法識別私網(wǎng)數(shù)據(jù)來自哪一個VPN網(wǎng)絡(luò)?;谶@些原因,使得自治系統(tǒng)邊界設(shè)備不堪重負。
2.2 研究進展
解決上述問題是跨域VPN技術(shù)實用化的基礎(chǔ)。綜合考慮 MPLS和 BGP自身的特點,需對現(xiàn)有MPLS和BGP構(gòu)建典型VPN的體系結(jié)構(gòu)進行調(diào)整,以滿足跨自治系統(tǒng)的要求。其中最關(guān)鍵的問題在于,基于MPLS和BGP構(gòu)建的VPN在跨自治系統(tǒng)網(wǎng)絡(luò)中無法生成標簽轉(zhuǎn)發(fā)路徑,進而沒法建立邏輯通道,使私網(wǎng)數(shù)據(jù)暴露在公網(wǎng)上,導(dǎo)致私網(wǎng)數(shù)據(jù)無法穿越公網(wǎng)。解決該問題是成功跨域VPN方案的關(guān)鍵所在,針對該問題,本文首先給出了2種側(cè)重不同的解決方案。
2.2.1 背靠背解決方案
為實現(xiàn)私網(wǎng)數(shù)據(jù)能跨自治系統(tǒng)平臺進行傳輸,給出的背靠背解決方案的主要思想包括以下3點: (1)在自治系統(tǒng)邊界設(shè)備上創(chuàng)建多接口或子接口,使每一個VPN有與之對應(yīng)的接口。(2)把不同的接口與各自接口對應(yīng)的VPN綁定,實現(xiàn)域間傳播路由的私有性。(3)自治系統(tǒng)邊界設(shè)備上只運行普通的BGP,不運行LDP協(xié)議,在自治系統(tǒng)設(shè)備之間相對應(yīng)的VPN實例下交互普通的IPV4路由。同時,每個自治系統(tǒng)邊界設(shè)備把對方當(dāng)CE設(shè)備看待。該方案拓撲如圖2所示。
圖2 背靠背方案拓撲
該方案具有如下優(yōu)點:(1)對自治系統(tǒng)邊界設(shè)備要求不高,只要支持原有的MPLS和BGP技術(shù)構(gòu)建的VPN。(2)標簽路徑的建立,在這種方式下PE設(shè)備只要維護到本AS內(nèi)的自治系統(tǒng)邊界設(shè)備的標簽就可以。(3)此方案應(yīng)用起來非常簡單,不要擴展協(xié)議和做任何的特殊設(shè)置,該方案屬于天然支持,在需要跨域的VPN用戶數(shù)量比較少的情況,可以考慮使用該方案,簡單的也是最實用的。同時,基于背靠背方案構(gòu)建的跨域VPN存在一些缺陷,包括:(1)不同VPN用戶需要與之對應(yīng)的接口,隨著VPN用戶數(shù)量的增加,該配置繁瑣,且存在有的自治系統(tǒng)邊界設(shè)備的物理接口不能創(chuàng)建邏輯子接口的情況。(2)由于需要在自治系統(tǒng)邊界設(shè)備上為每個VPN用戶建立獨立的鏈路,如果有200個VPN用戶,那么就需要建立200條鏈路,且需要建立200個BGP的鄰居關(guān)系,所以這種跨域平臺的VPN技術(shù)只適合VPN用戶數(shù)量很少的情況。
2.2.2 基于單跳EGBP的解決方案
考慮到背靠背方案中存在的擴展困難、配置繁雜等問題,可以考慮采用單跳EBGP方案。該方案的基本設(shè)計思路包括如下3點:(1)2臺自治系統(tǒng)邊界設(shè)備除了建立普通BGP連接關(guān)系外,且還讓它們建立 MP-BGP的連接關(guān)系。(2)在 ipv4-family vpnv4模式下交互不同VPN用戶的私網(wǎng)數(shù)據(jù),并采用路由策略的方式取消對VPN用戶數(shù)據(jù)的過濾。同時,啟動自治系統(tǒng)邊界設(shè)備接口的MPLS轉(zhuǎn)發(fā)功能。(3)收到自治系統(tǒng)邊界設(shè)備發(fā)送過來的VPNV4的路由后,在發(fā)送自治系統(tǒng)內(nèi)的PE時采用修改下一跳的方式發(fā)送給PE。
相比于背靠背方案,基于單跳EBGP的方案的不同之處在于自治系統(tǒng)邊界設(shè)備上只需一條鏈路。此外,單跳EBGP方案的路由發(fā)布與背靠背方案也略有不同,包括:(1)自治系統(tǒng)邊界asbrA把VPNA用戶的路由加入到VPNV4的BGP路由表中,而在背靠背方案中把該路由加入到對應(yīng)的VPNA的IP路由表中。(2)自治系統(tǒng)邊界asbrA把VPNV4里的VPNA的BGP路由信息,通過MP-EBGP方式把路由信息重新分配私網(wǎng)標簽后傳遞給asbrB。而在背靠背方式中在2個自治系統(tǒng)邊界設(shè)備上傳遞的是普通的IPV4路由,而在單跳EBGP方案中傳遞的是VPNV4的路由。
基于EBGP方案構(gòu)建的跨域平臺VPN具有如下優(yōu)點:(1)自治系統(tǒng)間配置任務(wù)少,不需要在自治系統(tǒng)邊界設(shè)備上建立本地的VPN用戶,并在VPN用戶視圖下創(chuàng)建眾多的BGP連接,進而使自治系統(tǒng)邊界設(shè)備不要維護VPN的路由表以及鄰居關(guān)系。(2)擴展性好,不管有多少VPN用戶,都只需要在域間的自治系統(tǒng)設(shè)備上建立一個BGP連接,并只需要維護一條鏈路。
考慮到自治系統(tǒng)邊界設(shè)備不但要維護公網(wǎng)路由,還需要接收所有PE設(shè)備發(fā)過來的私網(wǎng)路由,因此,負載問題必須在構(gòu)建VPN方案中給出解決方案。而上述2種方案只是解決了私網(wǎng)數(shù)據(jù)可以跨域的問題,難以處理自治系統(tǒng)邊界設(shè)備上的負載過重問題。
針對該問題,本文提出了一種綜合上述方案優(yōu)點的解決方案。該方案利用多跳EBGP方案,其基本思想(如圖3所示)包括如下3點:(1)自治系統(tǒng)之間PE在ipv4-family vpnv4模式下建立EBGP的鄰居關(guān)系,傳遞VPNV4的私網(wǎng)路由。(2)自治系統(tǒng)邊界設(shè)備上建立普通的EBGP鄰居關(guān)系,交互自治系統(tǒng)邊界設(shè)備的直連路由與PE設(shè)備的回環(huán)地址信息,并啟用向鄰居發(fā)送標簽路由的功能。(3)PE與自治系統(tǒng)邊界之間建立普通的 IBGP的鄰居關(guān)系,向IBGP的鄰居發(fā)送標簽路由。
圖3 多跳EBGP方案拓撲
為了評估其性能,以圖4所示網(wǎng)絡(luò)拓撲為例給出了方案的實施過程,并分析了方案性能。圖4給出了跨域平臺的數(shù)據(jù)交互和標簽交換過程。VPN1路由5.5.5.5在圖中自治系統(tǒng)間控制平面的轉(zhuǎn)發(fā)過程。(1)2臺自治系統(tǒng)間的PE設(shè)備VPNV4路由信息的交互與背靠背方案中域內(nèi)的VPNV4的交互一樣,區(qū)別在于多跳EBGP方案只是跨自治系統(tǒng)交互VPNV4的路由。(2)在整個跨域平臺上都需要維護2臺PE設(shè)備回環(huán)地址的公網(wǎng)標簽。
圖4 多跳EBGP方案的標簽與數(shù)據(jù)交互過程
針對上述拓撲結(jié)果,基于負載分離的VPN構(gòu)建方案可以參考表1所示配置而實現(xiàn)。asbrB的配置與asbrA一樣,另外,多跳EBGP方案的配置需要在自治系統(tǒng)邊界設(shè)備上啟用標簽轉(zhuǎn)發(fā)的功能,以及在peA和peB之間在ipv4-family vpnv4模式下建立EBGP的鄰居關(guān)系,交互私網(wǎng)路由,并在peA、peB之間啟用建立多跳EBGP的功能。
上述配置后,在peA設(shè)備查找公網(wǎng)標簽和私網(wǎng)標簽路徑如圖5所示。圖中公網(wǎng)和私網(wǎng)的標簽轉(zhuǎn)發(fā)表的形成,給私網(wǎng)數(shù)據(jù)穿越公網(wǎng)創(chuàng)建了邏輯通道,并標識了不同VPN用戶的數(shù)據(jù)。
在設(shè)備peA查找VPN實例相對應(yīng)的路由表,如圖6所示。圖中顯示的結(jié)果說明,peA設(shè)備已學(xué)習(xí)到自治系統(tǒng)200內(nèi)peB的私網(wǎng)路由,且私網(wǎng)路由的交互直接在2臺設(shè)備之間交互完成,兩臺自治系統(tǒng)邊界設(shè)備不需要學(xué)習(xí)這些私網(wǎng)路由,進而減輕了邊界設(shè)備的負擔(dān)。
表1 基于負載分離的VPN構(gòu)建方案的參考實現(xiàn)配置(asbrA)
圖5 peA設(shè)備公網(wǎng)和私網(wǎng)標簽表
根據(jù)上述方案的配置與實現(xiàn),并對方案進行仿真實驗與驗證后,對不同的實現(xiàn)方案進行分析,如表2所示??梢园l(fā)現(xiàn),多跳EBGP方式自治系統(tǒng)邊界設(shè)備上只需要維護公網(wǎng)路由,不需要維護私網(wǎng)路由。在標簽方面,也只需要維護公網(wǎng)標簽,不需要維護私網(wǎng)標簽。私網(wǎng)路由和私網(wǎng)標簽的維護都交給自治系統(tǒng)內(nèi)PE設(shè)備去維護。相比前兩種方案,基于負載分離的VPN實現(xiàn)方案可實現(xiàn)公網(wǎng)路由與私網(wǎng)在管理上的分離,并減輕自治系統(tǒng)邊界設(shè)備的負擔(dān),進一步擴展了MPLS和BGP構(gòu)建的VPN在網(wǎng)絡(luò)中的應(yīng)用。
圖6 peA設(shè)備VPN實例路由表
表2 方案特性對比
標簽路徑無法形成與自治系統(tǒng)間設(shè)備承載過重的問題,影響了MPLS和BGP構(gòu)建的VP在跨域平臺中的應(yīng)用。為此,本文提出了 2種解決方案,這2種方案能夠部分解決跨域難題,背靠背方案能夠?qū)崿F(xiàn)跨域平臺私網(wǎng)數(shù)據(jù)的交互,基于單跳EBGP的方案具有更好的擴展性,但是均無法解決負載過重的問題。進而,提出了一種綜合性的跨域VPN實現(xiàn)方案。在理論上,該方案對原協(xié)議進行了擴展。為了評估該方案的可行性,本文從可維護性、擴展性、負載等角度對比了12個方面的指標,結(jié)果表明,提出的方案在跨域VPN實現(xiàn)方面更具有優(yōu)勢,能有效解決MPLS和BGP構(gòu)建的VPN跨域問題[9-10],實現(xiàn)該技術(shù)在跨域平臺中的應(yīng)用。
[1] Rahman M A,KabirA H,LutfullahK A,etal. Performance Analysis and the Study of the Behavior of MPLS Protocols[C]//Proc.of International Conference on Computer and Communication Engineering.[S.l.]: IEEE Press,2008:13-15.
[2] 侯劍鋒,馬 明.MPLS VPN中PE-CE互連仿真研究[J].計算機工程,2010,36(12):123-125.
[3] Rahman M A,Kabir A H,Lutfullah K A M,et al. Performance Analysis and the Study of the Behavior of MPLS Protocols[C]//Proc.of International Conference on Computer and Communication Engineering.Kuala Lumpur,Malaysia:[s.n.],2008:226-229.
[4] Zhang Haiyan,Igor U,Li Han.Linear Protection Switching in MPLS-TP[Z].2011.
[5] Lee Y W,Kim S,Park J,el al.A Light Weight Implementation of RSVP-TE Protocol for MPLS-TE Signaling [J].Computer Communications,2007,30(6):1199-1204.
[6] Chu J,Lea C T.Optimal Link Weights for IP-based Networks Supporting Hose-model VPN[J].IEEE/ACM Transactions on Networking,2009,17(3):778-788.
[7] 任金秋,馬海龍,汪斌強.跨域BGP/MPLS VPN在高性能路由器中的實現(xiàn)[J].計算機工程,2009,35(3): 126-129.
[8] Vitch P J.Enterprise Buyer's Guide to Layer 3 MPLS VPN Service[J].Enterprise Network&Servers,2005, (11):18-20.
[9] Matinez R,Pinart C,Cugini F,et al.Challenges and Require-mentsforIntroducing Impairment-awareness into the Management and Control Planes of ASON/ GMPLS WDM Networks[J].IEEE Communications Magazine,2006,44(12):76-85.
[10] 盧眾寧,蘇厚勤.MPLS-VPN在企業(yè)ERP實施過程中的應(yīng)用研究[J].計算機應(yīng)用與軟件,2012,29(2): 90-93.
編輯 金胡考
Crossing-domain Virtual Private Network Solution Based on Load-separation
TAO Zhi-yong1,2,WANG Ru-long2,ZHANG Jin2,3
(1.Software School,Changsha Social Work College,Changsha 410004,China;
2.Software School,Hunan University,Changsha 410082,China;
3.College of Mathematics and Computer Science,Hunan Normal University,Changsha 410012,China)
When Virtual Private Network(VPN)constructed by Multiprotocol Label Switching(MPLS)and Border Gateway Protocol(BGP)is used in crossing domain platform,the label path can not be found and boundary devices are overloaded.Aiming at these problems,this paper analyses the fundamental reasons on the basis of label distribution and data forwarding plane.It brings forward two schemes,namely back to back project and single hop scheme based on EBGP to solve the problem of label distribution.However,the problem of overloading remains to be unsolved.Then this paper further proposes load-separation VPN solution based on multi-hop EBGP.In detail,the scheme improves the traditional VPN scheme by extending the existing protocols and modifying the systematic framework and brings forward specific configuration according to different network environment.This paper evaluates the performance of the schemes by comparing the different solutions through many indexes and the results indicate that load-separation VPN scheme is effective in realizing crossing-domain VPN and can solve both label distribution and overloading.
Multiprotocol Label Switching(MPLS);Border Gateway Protocol(BGP);lable;Autonomous System (AS);domain;Virtual Private Network(VPN)
1000-3428(2014)09-0106-05
A
TP393
10.3969/j.issn.1000-3428.2014.09.022
國家自然科學(xué)基金資助項目(60901080);國家“863”計劃基金資助項目(2009AA010314);湖南省教育廳基金資助項目“面向集成的VPN構(gòu)建策略研究與實現(xiàn)”(13C1051)。
陶志勇(1980-),男,高級工程師、碩士,主研方向:網(wǎng)絡(luò)結(jié)構(gòu)及優(yōu)化,傳感器網(wǎng)絡(luò);王如龍,教授;張 錦(通訊作者),副教授、博士后。
2013-09-22
2013-12-10E-mail:mail_zhangjin@163.com