1.MPLS入口路由器根據目的地址查找路由表。
如圖5例,假設一目的地址為211.91.168.0/24的IP包到達路由器A。此時路由器A將查找其路由表,發現該路由下一跳為路由器B。
2.將該IP包打上標簽,轉發給下一跳路由器。
上例中,路由器A將目的地址為211.91.168.0/24的IP包打上標簽20,轉發給其下一跳路由器B。
3.下一跳路由器查找其轉發表,替換標簽,繼續轉發。
上例中,當打有標簽的IP包到達B路由器時,路由器不再根據目的地址查找路由表了,而是根據標簽查找標簽轉發表。從A來的出站標簽對應于B的入站標簽,也就是B通告給A的標簽。B路由器通過標簽替換,將其入站標簽替換成出站標簽,即用標簽30替換掉標簽20,然后轉發給其下一跳路由器C。C路由器同樣進行標簽交換,將帶有標簽40的IP包送給D路由器。
4.出口路由器查找其轉發表,發現其就是目的地網絡,彈出標簽,送給相應端口處理。
上例中D路由器將查找標簽轉發表,發現該IP包目的地為自己,則彈出標簽。標簽交換過程結束。
VPN在MPLS中的實現
RFC2547bis定義了允許服務提供商使用其IP骨干網為用戶提供VPN服務的一種機制。RFC2547bis也被稱為BGP/MPLSVPN,因為BGP被用來在提供商骨干網中發布VPN路由信息,而MPLS 被用來將VPN業務從一個VPN站點轉發至另一個站點。首先對MPLS VPN中用到的常用術語作一說明,然后介紹一下MPLS VPN實現的基本原理及常見組網。
MPLS/VPN中常用術語
PE路由器:又稱作提供商邊緣路由器。該路由器負責用戶端網絡到提供商網絡的接入。
P路由器:又稱提供商路由器。P路由器是提供商網絡中不連接任何CE設備的路由器。
CE路由器:又稱用戶邊緣設備。CE路由器通過連接至一個或多個提供商邊緣(PE)路由器的數據鏈路為用戶提供對服務提供商的接入。
VPN-IPV4地址:VPN用戶通常使用私有地址來規劃自己的網絡。當不同的VPN用戶使 用相同的私有地址規劃時就會出現路由查找問題。
路由區分符RD:路由區分符RD即VPN-Ipv4地址的前8字節,用來區分不同VPN中的相同私網地址。
路由目標RT:RT為MP-BGP中的擴展共同體屬性之一。路由目標屬性定義了PE路由器發布路由的一組站點(VRF)的集合。PE路由器使用這一屬性來對輸入遠端路由到其VRF進行約束。
VPN路由轉發表(VRF):每個PE路由器為其直連的站點維持一個VRF。每個用戶鏈接被映射至一個特定的VRF。每個VRF與PE路由器的一個端口相關聯。
VPN在MPLS網絡中的實現
網絡拓撲描述
假設一個服務提供商具有一個IP骨干網,為不同的企業提供BGP/MPLSVPN服務。網絡中有3個PE路由器,連接到4個不同的用戶站點。

?
圖6 網絡拓撲
圖6中,CE1與CE3屬同一VPN1,CE2與CE4同屬另一VPN2。站點1(CE1)中的任何主機可以與站點3(CE3)中的任何主機進行通信。站點2(CE2)中的任何主機可以與站點4(CE4)中的任何主機進行通信。
路由學習過程
在一個用戶站點能夠將VPN業務轉發到遠端站點之前,必須將VPN路由信息從每個用戶站點通過骨干網轉發至其他用戶站點。PE路由器從其直連的CE路由器學習路由,入口PE通過骨干網向出口PE發布路由,出口PE路由器將路由發布至CE。
標簽轉發過程
在網絡中,只有PE及P路由器運行標簽轉發協議,
圖6中CE1與CE3客戶屬于同一VPN。當CE1的客戶需要向CE3客戶發送信息時:
CE1路由器查找路由表,將數據包發給PE1路由器;
PE1路由器發現CE1屬于VRF1,查找VRF1表,找到目的地址下一跳為MP-BGP對等體路由器PE2;
PE1路由器查找路由表知到達對等體PE2的直連下一跳為P1路由器;
給該數據包分配標簽,將該數據包轉發給P1路由器;
該數據包通過中間P路由器標簽轉發,到達PE2;
PE2彈出標簽。查找VRF1路由,將該數據包轉發給CE3;
到達CE3客戶。
MPLS/VPN的幾種典型組網
MESH方式

?
圖7 典型的組網圖
MESH方式為普通VPN業務,是客戶對VPN的最基本的需求。
基本的VPN服務要求相同的VPN客戶之間能相互通信,而不同的VPN客戶間不能通信。典型的組網圖如圖7所示,VPN1間互相通信,VPN2間互相通信,而VPN1與VPN2間不能通信。
評論