通過建設(shè)虛擬專用網(wǎng)(VPN),企業(yè)可以把公用Internet看成自己的專用WAN,用于連接遠(yuǎn)程辦公室、開展電子商務(wù)、為客戶提供支持并與供應(yīng)商和其他商業(yè)伙伴溝通。
早期建設(shè)的VPN使用永久虛電路(PVC)和隧道技術(shù),并且獲得了很大的成功。但是,隨著連接范圍的擴(kuò)大,可擴(kuò)展性和管理的問題越來越突出。可喜的是,多協(xié)議標(biāo)記交換(MPLS)技術(shù)的出現(xiàn)讓我們可以建設(shè)能夠支持多種業(yè)務(wù)級別并且能夠無限擴(kuò)展的全互連IP VPN。
傳統(tǒng)VPN面臨的困難
今天部署的大部分VPN屬于兩種基本模式,其中比較貴的一種模式,使用電信運(yùn)營商網(wǎng)絡(luò)中的第二層,例如幀中繼或ATM PVC,建設(shè)點(diǎn)對點(diǎn)的網(wǎng)絡(luò)。這種方法要求對閉合用戶群的每一個地點(diǎn)分配一個唯一的標(biāo)識,并且對哪些地點(diǎn)之間可以交換信息進(jìn)行管理。由于每個地點(diǎn)必須與新增加的地點(diǎn)連接,就很難快速地添加大量新的地點(diǎn),因?yàn)檫@需要利用服務(wù)供應(yīng)商WAN建立全互連的虛擬電路連接并進(jìn)行管理。
另外一種VPN模式是在服務(wù)供應(yīng)商網(wǎng)絡(luò)邊緣的路由器之間,建立點(diǎn)對點(diǎn)隧道的網(wǎng)絡(luò)。用戶和服務(wù)供應(yīng)商的網(wǎng)絡(luò)使用同一種IP協(xié)議,而且每個服務(wù)供應(yīng)商的路由器必須對所有用戶網(wǎng)絡(luò)全部的路由信息進(jìn)行維護(hù)。每個邊緣路由器必須與所有其它路由器交換地址和鏈路以及設(shè)備狀態(tài)的信息。每個路由器必須維護(hù)大量的路由信息,而且加入的新地點(diǎn)越多,路由信息的量越大,這樣一來要做到高的可擴(kuò)展性就很難。
服務(wù)供應(yīng)商使用PVC或隧道時必須對每個新用戶定義一個新的網(wǎng)絡(luò)拓?fù)洌@樣做代價很高,也正因如此,很多服務(wù)供應(yīng)商并不認(rèn)為目前應(yīng)向小型和中型商業(yè)用戶提供VPN業(yè)務(wù)。
服務(wù)質(zhì)量(QoS)是VPN的另一個難題。幀中繼和ATM PVC可以通過對每個PVC進(jìn)行緩沖的機(jī)制提供多種業(yè)務(wù)級別。但是,網(wǎng)絡(luò)越大,對每個VPN中多個PVC的多種業(yè)務(wù)級別進(jìn)行管理就越困難。如果使用隧道技術(shù),就需要使用IP安全(IPSec)和通用路由封裝(GRE)技術(shù)對VPN進(jìn)行配置,而IPSec和GRE本身不足以支持QoS。
建設(shè)大規(guī)模網(wǎng)絡(luò)
MPLS VPN技術(shù)在提供現(xiàn)有VPN網(wǎng)絡(luò)所有能力的同時提供強(qiáng)有力的QoS能力。MPLS VPN在第三層實(shí)現(xiàn),但并不使用隧道,因此可以無限擴(kuò)展。另外,用戶享受到的保密性與幀中繼或ATM PVC所提供的相同,這是因?yàn)镸PLS把路由信息的傳播限于歸屬某個特定VPN的路由器的范圍內(nèi)。
服務(wù)供應(yīng)商采用Cisco的MPLS方案可以提供多種級別的業(yè)務(wù),原因就在于Cisco MPLS標(biāo)記包括流量優(yōu)先級信息。IETF目前正在對優(yōu)先級標(biāo)記功能進(jìn)行標(biāo)準(zhǔn)化。
由于對路由方面知識的要求幾乎為零,所以對最終用戶而言,MPLS VPN的支持費(fèi)用也要低一些。另外,相對于傳統(tǒng)管理路由的方案,路由配置的工作量大大降低,所以服務(wù)供應(yīng)商的運(yùn)營費(fèi)用也大大降低。
“用戶花在一個可管理的IP網(wǎng)絡(luò)上的錢比他們花在幀中繼上的要少。”Cisco多業(yè)務(wù)交換商業(yè)部總監(jiān)Robert Redford說,“一個25節(jié)點(diǎn)可管理的IP VPN比幀中繼網(wǎng)絡(luò)的PVC部分費(fèi)用節(jié)省83%。”這是因?yàn)椋环矫娌恍枰诿恳粚ハ嗤ㄐ诺腣PN之間提供PVC并支付PVC的月租費(fèi),另一方面由于減輕了路由配置的工作量,運(yùn)營費(fèi)用也有所降低。
Cisco MPLS VPN的第一個版本包括在Cisco IOS軟件版本12.0中。服務(wù)供應(yīng)商可在一個骨干網(wǎng)上支持一百萬個地點(diǎn),舉例來說,網(wǎng)絡(luò)覆蓋1000個地點(diǎn),每個地點(diǎn)1000個VPN;或者網(wǎng)絡(luò)覆蓋100個地點(diǎn),每個地點(diǎn)10,000個VPN。新的版本將能夠支持一千萬個以上的地點(diǎn)。
由于整個網(wǎng)絡(luò)中沒有哪一個設(shè)備必須知道所有的VPN路由,所以可擴(kuò)展性部分得到了保證。“這意味著不存在一個瓶頸點(diǎn)。”Cisco企業(yè)商業(yè)產(chǎn)品線MPLS資深產(chǎn)品經(jīng)理Ranjeet Sudan解釋說,“用戶端路由器只與本地POP的一個邊緣路由器直接相連;邊緣路由器只承載VPN路由,而核心設(shè)備無需知道VPN路由。”
路由器和交換機(jī)的作用
在MPLS VPN里,服務(wù)供應(yīng)商的骨干網(wǎng)是由邊緣和核心標(biāo)記交換路由器(LSR)組成的。邊緣路由器與用戶端路由器相連。用戶端路由器運(yùn)行標(biāo)準(zhǔn)的路由軟件。兩種設(shè)備之間使用IP互相通信。路由器之間使用外部邊界網(wǎng)關(guān)協(xié)議(EBGP)、路由信息協(xié)議版本2(RIPv2)和靜態(tài)路由來交換路由信息。另外,Cisco支持MPLS的設(shè)備很快也能夠支持開放最短路徑優(yōu)先(OSPF)協(xié)議。
在服務(wù)供應(yīng)商的網(wǎng)絡(luò)里,邊緣路由器使用MPLS和多協(xié)議內(nèi)部網(wǎng)關(guān)協(xié)議(MP-IBGP)相互通信并傳播VPN信息。服務(wù)供應(yīng)商的MPLS網(wǎng)絡(luò)中的核心路由器與邊緣路由器都使用普通的內(nèi)部網(wǎng)關(guān)協(xié)議(IGP),但核心路由器上不運(yùn)行BGP,也不區(qū)分不同的VPN。由于核心路由器不必進(jìn)行VPN尋址,服務(wù)供應(yīng)商的網(wǎng)絡(luò)可以不斷擴(kuò)展來支持更多、更大的VPN。
服務(wù)供應(yīng)商的邊緣路由器分別針對全局和VPN路由維護(hù)相應(yīng)的路由表。全局路由表包括所有邊緣和核心的路由,這些路由由在骨干網(wǎng)上運(yùn)行的IGP提供。每個VPN 有一個VPN路由和轉(zhuǎn)發(fā)(VRF)表,其中包括一個或多個直接相連的用戶地點(diǎn)的信息。IP VPN編址方案保證即使IP地址重疊,全局的IP地址仍是唯一的。邊緣路由器可以隔離不同的VPN的路由信息,從而支持多個用戶VPN。
MPLS VPN的組成
MPLS VPN模式支持網(wǎng)內(nèi)所有地點(diǎn)之間的全互連通信。多個用戶共享同一個IP骨干網(wǎng)時,可以用BGP的歸屬社區(qū)(community-of-interest)屬性指定屬于同一個VPN的路由器。服務(wù)供應(yīng)商可以設(shè)置策略來規(guī)定VPN網(wǎng)內(nèi)的路由信息的傳播只限于網(wǎng)內(nèi)的路由器。
用戶端路由器只與服務(wù)供應(yīng)商本地POP的路由器相連,而不是與VPN每一個其它的地點(diǎn),相連POP的路由器只接收并保持與其直接相連的VPN的路由信息。所以用戶在管理自己的VPN時會發(fā)現(xiàn)使用MPLS模式時路由配置非常簡單。他們可以把服務(wù)供應(yīng)商的骨干網(wǎng)當(dāng)作到他們所有地點(diǎn)的缺省路由來使用,而不需要與非常復(fù)雜的、包括了大量第二層PVC或第三層路由表的網(wǎng)絡(luò)打交道。
編址方面的考慮
很多用戶都愿意使用專用的IP編址方案,而不使用全局IP編址方案,所以服務(wù)供應(yīng)商需要有效地處理地址不唯一彼此重疊的問題。Cisco的解決方案是在每個用戶的IP地址上加一個路由區(qū)分碼(RD)。
服務(wù)供應(yīng)商可以獨(dú)立地分配RD,但是他們需要把他們專用的自治系統(tǒng)(AS)號作為RD的一部分來保證每個RD的全局唯一性。用戶采用這種方法就不必重新對他們的節(jié)點(diǎn)進(jìn)行編號,服務(wù)供應(yīng)商也不必使用地址翻譯。
分組的生命期
在MPLS VPN里,當(dāng)用戶地點(diǎn)的路由器收到一個分組時,會在本地進(jìn)行查表,如果找不到一個匹配,它就會把分組轉(zhuǎn)交給它所能看到的唯一的一個路由器:服務(wù)供應(yīng)商本地POP的路由器。用戶不必運(yùn)行MPLS軟件。
這個分組通過本地連接傳送到服務(wù)供應(yīng)商的網(wǎng)絡(luò),終接在接入路由器接口上。這個接口配置的RD用來標(biāo)識用戶特定的VPN以及與之相關(guān)的VRF表。
與VPN IP地址相關(guān)的標(biāo)記有兩個:內(nèi)部標(biāo)記用于標(biāo)識VPN而外部標(biāo)記指示下一跳應(yīng)該沿著服務(wù)供應(yīng)商核心網(wǎng)絡(luò)中哪一個合適的IGP路由前進(jìn)。在核心網(wǎng)中,分組的轉(zhuǎn)發(fā)全部使用逐跳(hop-to-hop)MPLS,這種方式與普通的逐跳(hop-to-hop)IP轉(zhuǎn)發(fā)相似,但查表基于標(biāo)記而不是基于IP地址。因此可以使用支持標(biāo)記分配協(xié)議(LDP)的任何類型的路由器或ATM交換機(jī)。
當(dāng)接入路由器收到一個分組時,利用外部標(biāo)記把它轉(zhuǎn)發(fā)給另一個接入路由器。而當(dāng)分組到達(dá)出口路由器時,路由器將外部標(biāo)記移去,利用內(nèi)部標(biāo)記決定應(yīng)當(dāng)把分組發(fā)送到哪一個輸出接口(即哪一個VPN)。
使用兩級標(biāo)記提高了MPLS VPN的可擴(kuò)展性。內(nèi)部標(biāo)記只攜帶IGP路由,而不攜帶VPN路由。只有邊緣路由器攜帶VPN路由,而且他們只攜帶他們歸屬的VPN的路由。
連接到Internet
用戶也許會希望把他們的VPN連到公眾Internet。在MPLS VPN里,Internet路由表是單獨(dú)處理的。Internet路由在服務(wù)供應(yīng)商的邊緣路由器的全局路由表里維護(hù),外部路由不分配標(biāo)記。
指向某個Internet網(wǎng)關(guān)的缺省路由裝在某個地點(diǎn)的VRF表里。這個缺省路由不是任何VPN的一部分。根據(jù)這個缺省路由轉(zhuǎn)發(fā)的分組使用一個單獨(dú)的標(biāo)記,即使用IGP找到的對應(yīng)Internet網(wǎng)關(guān)IP地址的路由。
全局路由表并不了解用戶路由,也不了解邊緣路由器或用戶路由器,但全局表里裝有指向該接口的靜態(tài)路由。這個路由重新傳播到BGP4全局表里并把這個路由通知Internet網(wǎng)關(guān)。缺省路由指定的Internet網(wǎng)關(guān)并不需要與路由器直接相連,不同的VRF表可以對應(yīng)不同的Internet網(wǎng)關(guān)。
用戶地點(diǎn)可以在另一個接口上使用專用EBGP會話從Internet接收或向Internet通報路由。服務(wù)供應(yīng)商的邊緣路由器把用戶地點(diǎn)的路由導(dǎo)入全局路由表并通報給Internet。它同時把缺省路由或Internet路由告訴用戶端路由器。
面向未來的可靠的網(wǎng)絡(luò)
隨著企業(yè)對VPN連接需求的增長,無論企業(yè)網(wǎng)絡(luò)管理者還是服務(wù)供應(yīng)商都將尋求更簡單也更經(jīng)濟(jì)的方式來應(yīng)付網(wǎng)絡(luò)的增長。Cisco的MPLS VPN解決方案是由已經(jīng)或即將成為標(biāo)準(zhǔn)的軟件構(gòu)件所組成。
這些解決方案的獨(dú)到之處在于這些構(gòu)件如何協(xié)同工作,從而造就了大規(guī)模的提供QoS的VPN。
提供保密性:MPLS把路由信息的傳播限于屬于同一VPN的路由器之間,從而把第二層虛擬電路的保密性和第三層網(wǎng)絡(luò)的全互連連接結(jié)合起來。