李皓瑜
(湖北開放職業(yè)學(xué)院光電信息學(xué)院,湖北 武漢430074)
袁 璇
(武漢市郵電科學(xué)研究院,湖北 武漢430074)
虛擬專用網(wǎng)(Virtual Private Net work,VPN)用來連接分布在廣域網(wǎng)中的企業(yè)網(wǎng)站點(diǎn)。VPN通常分為基于IP的VPN和基于多協(xié)議標(biāo)簽交換(Multi-Pr ot ocol Label Switching,MPLS)的 VPN。BGP/MPLS VPN(Border Gateway Protocol,BGP)是一種基于IP的 VPN。基于邊界網(wǎng)關(guān)協(xié)議(Border Gateway Protocol,BGP)/MPLS的L3 VPN因其網(wǎng)絡(luò)配置方便、擴(kuò)展靈活及價(jià)格相對低廉,已經(jīng)成為越來越多的企業(yè)組建其企業(yè)VPN網(wǎng)絡(luò)的首選方案,進(jìn)而對其提出了更高的安全及服務(wù)保障要求[1]。
如圖1所示,BGP/MPLS VPN在運(yùn)營商邊界路由器PE與客戶站點(diǎn)路由器CE之間提供點(diǎn)到點(diǎn)連接,因此擴(kuò)展方便。此外,BGP/MPLS VPN還具有為企業(yè)私網(wǎng)提供流量工程能力的優(yōu)點(diǎn)。下面,筆者提出了一種BGP/MPLS VPN配置管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)方案,尤其強(qiáng)調(diào)了對BGP/MPLS VPN質(zhì)量保證的管理功能的實(shí)現(xiàn),在網(wǎng)絡(luò)管理系統(tǒng)(Network Management System,NMS)中,設(shè)計(jì)并實(shí)現(xiàn)了BGP/MPLS VPN中VPN及VPN站點(diǎn)管理對象模塊。

圖1 BGP/MPLS VPN參考結(jié)構(gòu)圖
IETF和ITU-T在BGP/MPLS VPN方面已經(jīng)提出了一些標(biāo)準(zhǔn),諸如Cisco、Juniper和華為等路由器設(shè)備制造廠家也開發(fā)了各種各樣的商用NMS系統(tǒng)。
IETF已經(jīng)發(fā)布了RFC4364建議,給出了BGP/MPLS VPN的業(yè)務(wù)模式、協(xié)議規(guī)格等方面的建議,但針對業(yè)務(wù)QoS保障的配置與管理方案還在討論中。
針對BGP/MPLS VPN管理器,Cisco開發(fā)了Cisco VPN解決方案中心產(chǎn)品[2]。該產(chǎn)品可以提供針對BGP/MPLS VPN的配置管理,當(dāng)時(shí)只支持L3 VPN的VRF(VPN路由轉(zhuǎn)發(fā))表的配置,不支持具有透明區(qū)分服務(wù)的L2 VPN流量管理能力。針對L2 VPN的管理,Cisco開發(fā)了Cisco IP解決方案中心。但是該產(chǎn)品不支持其他廠家的路由器的管理。Cisco BGP/MPLS VPN配置命令集如表1所示。在實(shí)際商業(yè)網(wǎng)絡(luò)中,需要一個(gè)可以管理多個(gè)廠家路由器的管理系統(tǒng)。
基于MPLS的VPN能夠提供有帶寬保障及可靠的數(shù)據(jù)轉(zhuǎn)發(fā)能力[3]。BGP/MPLS VPN網(wǎng)絡(luò)由VPN站點(diǎn)域和服務(wù)提供商骨干網(wǎng)域2個(gè)區(qū)域組成[4]。
在BGP/MPLS VPN網(wǎng)絡(luò)中,BGP實(shí)現(xiàn)不同自治系統(tǒng)之間MPLS分組轉(zhuǎn)發(fā)的路徑設(shè)置。通過EBGP(外部BGP)在PE與CE之間交換企業(yè)私網(wǎng)路由信息,而通過IBGP(內(nèi)部BGP)在運(yùn)營商骨干網(wǎng)PE之間交換VPN路由信息。PE路由器從CE接收到IP路由前綴之后,附加上8個(gè)字節(jié)的RD(路由區(qū)分器)。

表1 Cisco BGP/MPLS VPN配置CLI命令集
如果在網(wǎng)絡(luò)中有MPLS VPN路由器存在,管理者需要能夠收集和管理那些使用MPLS VPN業(yè)務(wù)的站點(diǎn)信息。即使是中等規(guī)模的VPN,如大約有200個(gè)左右的VPN站點(diǎn)接入,手工收集VPN站點(diǎn)信息是一個(gè)耗時(shí)又容易出錯(cuò)的事情。因此,這些路由器和站點(diǎn)的信息必須自動采集[5]。網(wǎng)絡(luò)管理員經(jīng)常進(jìn)行增加、刪除和修改VPN站點(diǎn)操作。直接連接到路由器進(jìn)行VPN及VPN站點(diǎn)的創(chuàng)建和刪除的效率非常低下。筆者實(shí)現(xiàn)了一個(gè)VPN和VPN站點(diǎn)信息自動采集功能模塊,同時(shí)還實(shí)現(xiàn)了BGP/MPLS VPN管理模塊,以便操作員通過GUI手動微調(diào)VPN配置。
VPN管理模塊提供MPLS VPN配置管理功能。有BGP/MPLS VPN管理器和VPN站點(diǎn)2個(gè)管理對象MO。每個(gè)BGP/MPLS VPN管理器MO有VRF name、RD、RT、VRF接口等相關(guān)屬性。VPN站點(diǎn)MO包含配置VPN站點(diǎn)的必要屬性信息,如站點(diǎn)name、IP地址、BGP自治號等。VPN網(wǎng)絡(luò)模塊使用BPG/MPLS VPN管理器對象配置BGP/MPLS VPN,并管理VPN和VPN站點(diǎn)。VPN網(wǎng)絡(luò)MO與VPNPE模塊交互,實(shí)現(xiàn)對VPN的配置。圖2顯示了BGP/MPLS VPN管理器與其他網(wǎng)絡(luò)管理模塊之間的關(guān)聯(lián)結(jié)構(gòu)。
使用BGP/MPLS VPN用戶操作界面,操作員輸入VPN相關(guān)信息。這些信息提供給VPN網(wǎng)絡(luò)模塊。VPN網(wǎng)絡(luò)模塊使用VPN參數(shù)配置BGP/MPLS VPN管理器MO,并使用VPN站點(diǎn)參數(shù)配置VPN站點(diǎn)MO。最后,BPG/MPLS VPN管理器模塊訪問VPN PE及指定目標(biāo)路由器創(chuàng)建VPN、VPN站點(diǎn)、TE-LSP等。VPN PE模塊通過使用Cisco7204模塊的方法創(chuàng)建VPN、VPN站點(diǎn)及TE-LSP等。Cisco7204模塊使用CLI/Telnet與路由器交互,實(shí)現(xiàn)上述創(chuàng)建過程。
筆者使用CLI作為基本的已配置MPLS VPN的信息采集方法,并使用Cisco路由器作為VPN測試網(wǎng)絡(luò)。Cisco路由器中的VPN相關(guān)信息可以通過CLI命令自動采集。BGP/MPLS VPN拓?fù)渥詣影l(fā)現(xiàn)過程的信息交互過程如圖3所示。其中,VPN-NMS創(chuàng)建一個(gè)中樞路由器(7204_G)。通過CLI命令訪問該物理連接的路由器,確認(rèn)VRF配置信息。如果操作員通過GUI執(zhí)行自動拓?fù)浒l(fā)現(xiàn),自動拓?fù)浒l(fā)現(xiàn)模塊直接使用Cicso7204CLI訪問路由器,采集網(wǎng)絡(luò)配置信息。在網(wǎng)絡(luò)配置信息中,物理配置信息通過PN(Physical Net work)模塊交付,LSP等邏輯配置信息通過MPLS網(wǎng)絡(luò)模塊交付,而VPN信息通過VPN網(wǎng)絡(luò)模塊交付。PN模塊MO信息包含節(jié)點(diǎn)與端口信息。節(jié)點(diǎn)MO的屬性信息有本地路由器名、鄰居節(jié)點(diǎn)路由名及路由功能類型(指基于IP的路由或MPLS路由)等。MPLS網(wǎng)絡(luò)模塊采集的邏輯MO,如LSP MO,包含LSP ID、Ingress節(jié)點(diǎn)名、顯示路徑及目的IP等信息。PN模塊管理物理節(jié)點(diǎn)和鏈路,并通過GUI描繪管理網(wǎng)絡(luò)的物理拓?fù)洹6鳰PLS網(wǎng)絡(luò)模塊則描繪管理網(wǎng)絡(luò)的邏輯拓?fù)洌琕PN網(wǎng)絡(luò)模塊描繪管理網(wǎng)絡(luò)的VPN拓?fù)洹?/p>

圖2 BGP/MPLS VPN配置管理模塊示意圖

圖3 BGP/MPLS VPN拓?fù)渥詣影l(fā)現(xiàn)過程交互消息示意圖
為了配置的方便,筆者實(shí)現(xiàn)一個(gè)BGP/MPLS VPN用戶界面模塊。該GUI模塊采用Java實(shí)現(xiàn),并使用Socket和XML實(shí)現(xiàn)GUI與VPN網(wǎng)絡(luò)模塊之間的交互。其中,VPN視圖GUI模塊激活BGP/MPLS VPN管理器GUI,以進(jìn)行創(chuàng)建和刪除、配置VPN及VPN站點(diǎn)等操作。創(chuàng)建VPN GUI接收VPN的輸入信息,如VPN ID。VPN ID唯一標(biāo)識BGP/MPLS VPN管理GUI的VPN列表。增加VPN站點(diǎn)GUI用來創(chuàng)建管理網(wǎng)絡(luò)中的VPN站點(diǎn)。操作員可以通過該GUI輸入VPN站點(diǎn)的詳細(xì)信息。驗(yàn)證VPN GUI用來確認(rèn)通過增加站點(diǎn)GUI增加的VPN站點(diǎn)信息。
如圖4所示,在BGP/MPLS VPN GUI模塊中,創(chuàng)建一個(gè)VPN并增加VPN站點(diǎn)信息的過程如下:操作員在VPN視圖GUI下,點(diǎn)擊BGP/MPLS VPN管理器,激活 BGP/MPLS VPN管理器GUI;操作員在VPN管理器GUI下,點(diǎn)擊創(chuàng)建VPN按鈕,激活創(chuàng)建VPN GUI;在 VPN GUI下,管理員提交諸如VPN ID等VPN信息后,VPN ID就加入到VPN管理器GUI的VPN表單下;操作員在VPN表單中選擇了指定的VPN ID,點(diǎn)擊增加站點(diǎn)按鈕后,激活增加站點(diǎn)GUI;操作員輸入諸如VPN站點(diǎn)IP地址、AS號等基本信息后,點(diǎn)擊接受按鈕,就可以建立VPN站點(diǎn)。

圖4 配置BGP/MPLS VPN的VPN GUI示意圖
隨著MPLSVPN的快速發(fā)展,NMS的配置管理模塊需要能夠有效采集MPLS VPN信息。本文實(shí)現(xiàn)的自動發(fā)現(xiàn)功能模塊可以有效收集MPLS VPN信息。為了有效管理,操作員確認(rèn)采集到的MO的有效信息。通過與Cisco7204CLI模塊的交互,實(shí)現(xiàn)MPLS VPN的配置和自動發(fā)現(xiàn)。本文還實(shí)現(xiàn)了BGP/MPLS VPN的QoS保障管理功能,簡化了NMS中VPN站點(diǎn)的規(guī)模擴(kuò)展所帶來的配置問題。
[1]JI Chao,XU Shu-wei,An Imple mentation Scheme of VPN Based on MPLS[J] .Jour nal of Henan University(Nat ural Science),2007(1):59-62.
[2]Wang Z J.Quality of Service Routing f or Supporting Multi media Applications[J].IEEE JSAC,1996,14(7):1228-1234.
[3]Hae-Eun Moon.Design and Implementation of Net wor k Management System f or QoS guaranteed BGP/MPLS VPN[M] .University of Texas at Austin,2001:35-36.
[4]van Pepelnjak,Ji m Guichar d.MPLS and VPN Architecture[M].Cisco Press,2001:156-158.
[5]Dong-Jin Shin.Design and Implementation of Configuration Management f or the MPLS Net wor k[J] .KNOM Review,2002(12):87-90.