MPLS/VPN基本原理及在ZXR10中的配置
MPLS簡述
本文引用地址:http://2s4d.com/article/86062.htmMPLS(multi-protocollabelswitch)是Internet核心多層交換計算的最新發(fā)展。MPLS將轉發(fā)部分的標記交換和控制部分的IP路由組合在一起,加快了轉發(fā)速度。而且,MPLS可以運行在任何鏈接層技術之上,從而簡化了向基于SONET/WDM和IP/WDM結構的下一代光Internet的轉化。在這里,主要描述一下標簽轉發(fā)表的產(chǎn)生過程及IP包如何通過MPLS轉發(fā)。
MPLS標簽棧頭
圖1 MPLS標簽棧頭
32位的MPLS棧頭包括以下區(qū)域(如圖1所示):
承載MPLS標記實際值的標記區(qū)域(20位);
CoS區(qū)域(3位),用于在分組通過網(wǎng)絡時施加在分組上的排隊和丟棄算法;
堆棧區(qū)域(S區(qū)域,1位),用于支持標記堆棧序列;
TTL區(qū)域(8位),提供傳統(tǒng)的IPTTL功能。
標簽轉發(fā)表產(chǎn)生過程
1.路由器之間通過路由協(xié)議或靜態(tài)路由產(chǎn)生路由表。
圖2 路由器之間通過路由協(xié)議或靜態(tài)路由產(chǎn)生路由表
如圖2所示,假設途中A、B、C、D四臺路由器之間運行了OSPF協(xié)議,A路由器學習到D路由器網(wǎng)段211.91.168.0/24的路由。
2.運行MPLS的路由器為路由表中的路由分配標簽。
圖3 運行MPLS的路由器為路由表中的路由分配標簽
圖3A、B、C、D四臺路由器的路由表中都有211.91.168.0/24網(wǎng)段的路由,假設各路由器都已運行MPLS協(xié)議,則每臺路由器都會為該路由分配一個標簽。
3.通過LDP/RSVP協(xié)議發(fā)現(xiàn)其MPLS鄰居。
假設在各路由器接口啟動LDP協(xié)議。通過LDP發(fā)現(xiàn)協(xié)議,A路由器知道B路由器為其MPLS鄰居,B路由器知道A、C為其MPLS鄰居,C路由器知道B、D為其MPLS鄰居,D的MPLS鄰居為C。
4.將打標簽的路由通告給其MPLS鄰居。
各路由器將其打了標簽的路由通告給其MPLS鄰居,而不管是否已從其鄰居學習到該路由的標簽。這樣對于路由211.91.168.0/24在各路由器中的標簽情況如圖4所示。
圖4 各路由器中的標簽情況
5.路由器將其下一跳路由器通告的標簽加到其轉發(fā)表中。通常在實際應用中路由器將目的地不是本地的IP包轉發(fā)給其下一跳。因此在MPLS中,路由器只將其下一跳路由器通告的標簽加到其轉發(fā)表中。對于211.91.168.0/24網(wǎng)段對應的轉發(fā)如圖5所示。
圖5 路由器將其下一跳路由器通告的標簽加到其轉發(fā)表中
IP包在MPLS網(wǎng)絡中轉發(fā)過程
1.MPLS入口路由器根據(jù)目的地址查找路由表。
如圖5例,假設一目的地址為211.91.168.0/24的IP包到達路由器A。此時路由器A將查找其路由表,發(fā)現(xiàn)該路由下一跳為路由器B。
2.將該IP包打上標簽,轉發(fā)給下一跳路由器。
上例中,路由器A將目的地址為211.91.168.0/24的IP包打上標簽20,轉發(fā)給其下一跳路由器B。
3.下一跳路由器查找其轉發(fā)表,替換標簽,繼續(xù)轉發(fā)。
上例中,當打有標簽的IP包到達B路由器時,路由器不再根據(jù)目的地址查找路由表了,而是根據(jù)標簽查找標簽轉發(fā)表。從A來的出站標簽對應于B的入站標簽,也就是B通告給A的標簽。B路由器通過標簽替換,將其入站標簽替換成出站標簽,即用標簽30替換掉標簽20,然后轉發(fā)給其下一跳路由器C。C路由器同樣進行標簽交換,將帶有標簽40的IP包送給D路由器。
4.出口路由器查找其轉發(fā)表,發(fā)現(xiàn)其就是目的地網(wǎng)絡,彈出標簽,送給相應端口處理。
上例中D路由器將查找標簽轉發(fā)表,發(fā)現(xiàn)該IP包目的地為自己,則彈出標簽。標簽交換過程結束。
VPN在MPLS中的實現(xiàn)
RFC2547bis定義了允許服務提供商使用其IP骨干網(wǎng)為用戶提供VPN服務的一種機制。RFC2547bis也被稱為BGP/MPLSVPN,因為BGP被用來在提供商骨干網(wǎng)中發(fā)布VPN路由信息,而MPLS 被用來將VPN業(yè)務從一個VPN站點轉發(fā)至另一個站點。首先對MPLS VPN中用到的常用術語作一說明,然后介紹一下MPLS VPN實現(xiàn)的基本原理及常見組網(wǎng)。
MPLS/VPN中常用術語
PE路由器:又稱作提供商邊緣路由器。該路由器負責用戶端網(wǎng)絡到提供商網(wǎng)絡的接入。
P路由器:又稱提供商路由器。P路由器是提供商網(wǎng)絡中不連接任何CE設備的路由器。
CE路由器:又稱用戶邊緣設備。CE路由器通過連接至一個或多個提供商邊緣(PE)路由器的數(shù)據(jù)鏈路為用戶提供對服務提供商的接入。
VPN-IPV4地址:VPN用戶通常使用私有地址來規(guī)劃自己的網(wǎng)絡。當不同的VPN用戶使 用相同的私有地址規(guī)劃時就會出現(xiàn)路由查找問題。
路由區(qū)分符RD:路由區(qū)分符RD即VPN-Ipv4地址的前8字節(jié),用來區(qū)分不同VPN中的相同私網(wǎng)地址。
路由目標RT:RT為MP-BGP中的擴展共同體屬性之一。路由目標屬性定義了PE路由器發(fā)布路由的一組站點(VRF)的集合。PE路由器使用這一屬性來對輸入遠端路由到其VRF進行約束。
VPN路由轉發(fā)表(VRF):每個PE路由器為其直連的站點維持一個VRF。每個用戶鏈接被映射至一個特定的VRF。每個VRF與PE路由器的一個端口相關聯(lián)。
VPN在MPLS網(wǎng)絡中的實現(xiàn)
網(wǎng)絡拓撲描述
假設一個服務提供商具有一個IP骨干網(wǎng),為不同的企業(yè)提供BGP/MPLSVPN服務。網(wǎng)絡中有3個PE路由器,連接到4個不同的用戶站點。
圖6 網(wǎng)絡拓撲
圖6中,CE1與CE3屬同一VPN1,CE2與CE4同屬另一VPN2。站點1(CE1)中的任何主機可以與站點3(CE3)中的任何主機進行通信。站點2(CE2)中的任何主機可以與站點4(CE4)中的任何主機進行通信。
評論