科技行者

行者學院 轉型私董會 科技行者專題報道 網紅大戰科技行者

知識庫

知識庫 安全導航

知識庫分類索引
技術分類
廠商分類

MPLS 核心網

MPLS應用在一些大型的行業企業(如政府軍工),這些企業在自建內部網絡時,會使用MPLS技術搭建各個地方的互聯核心網。此時可以將各地的數據中心站點復用MPLS核心網進行跨地域連接,降低企業成本才是關鍵。在自建的MPLS核心網中,需要在各個站點的PE設備間搭建VPLS隧道用于傳輸Ethernet報文。如果是租用運營商的VPLS隧道則不需要考慮這么多,那時PE是由運營商提供的,對用戶來說組網部署和前面的光纖直連沒有區別。

VLL

如果是只有兩個站點互聯的情況,可以使用VLL(Virtual Leased Line)。VLL是一種點到點的虛擬邏輯鏈路技術,數據報文從隧道入口入,只能從定義好的另外一端出口出,不存在多個隧道終點一說。數據平面沒啥可說的,A點收到的二層報文進隧道直接封裝上MPLS報頭發給B點就OK了,整個過程框架可參考前面的MPLS轉發圖。控制平面由于隧道都是點到點連接方式,不需要復雜尋址,只要在數據流量傳輸時,給VPN分配外層封裝的對應Label即可。分配方式有以下四種:

CCC(Circuit Cross Connect):全網靜態為VPN分配一個Label,包括所有路徑的PE和P設備都需要手工配置。此Draft已經處于Dead狀態,目前基本也沒人用了。

SVC(Static Virtual Circuit):只在PE上靜態配置私網VPN的Label,公網標簽不管。有用的但也不多,靜態配置這種方式對故障處理總是心有余而力不足的。

Martini:RFC4762,使用LDP協議在PE間建立連接,為VPN動態分配Label,省事好用。

Kompella:RFC4761,使用BGP協議在PE間建立連接,使用BGP VPNv4擴展字段攜帶VPN對應Label信息進行傳遞,這個實現起來比Martini復雜一點點,用得也就少了一些些。

后面兩種Martini和Kompella方式在MPLS L3 VPN和VPLS里面也都有應用,都是作為控制協議來為VPN分配和傳遞Label用的。

VPLS

當存在多個站點時,A站點收到的二層報文就有個選B還是選C進行轉發的問題。于是有了VPLS(Virtual Private Lan Service)。VPLS是支持點到多點的虛擬鏈路技術,從隧道入口進入后,可以根據VPLS MAC地址表從多個隧道出口中去選擇正確的出口,或者廣播給所有出口。控制平面還是通過Martini和Kompella兩種方式分配與傳遞VPN對應的Label。數據平面則要多維護一張VPN的MAC對應VC(Virtual Circuit)轉發表,既前面提到的VPLS MAC地址表,本地接口收到的報文,MAC地址學習方式還是和傳統Ethernet一樣;只有當報文從遠端PE過來時,記錄的源MAC需對應遠端PE的VC ID。

由于VPLS透傳的是二層Ethernet報文,就涉及到VLAN標識處理的問題。VPLS可以配合QinQ技術,將用戶側發來的帶VLAN標簽報文打上外層VLAN標簽,以擴展VLAN數量規模。當然現在的交換機一般都是最大支持4k的VLAN,大部分場景都是夠用的了,還沒有聽說誰家的數據中心VLAN部署超過4k。但云計算服務器節點數量規模成倍增加以后就不好說了,留出冗余總是好的。

為了防止廣播風暴,VPLS做了水平分割特性,PE設備從遠端PE收到的廣播/未知單播報文只能發給本地的CE,不能轉發給其他PE。還有其他的分層PE和Hub-Spoke等技術在數據中心多站點互聯環境中一時還應用不上。

VPLS技術已經很完善了,喜歡細節的同學可以去查下RFC相關文檔。這里再說下其在數據中心多站點互聯應用中的不足之處。數據中心要求的是全冗余,無單點故障點或單點故障鏈路,而VPLS在雙PE冗余方面沒有專門的定義,因此造成技術上的使用不便,一是會形成如下圖所示的跨站點二層環路,二是本端CE無法感知對端CE-PE間鏈路狀態情況,故障時導致流量黑洞問題。

解決上述問題有以下兩個思路:

和在其他地方使用時一樣,浪費帶寬與收斂速度慢,另外就是要讓STP跨站點組網,會導致一個站點出現問題,其他站點全部受影響。此方案的好處就是公共標準大家都能做,而且不存在互通問題。

其次是使用控制平面多虛一技術,如VSS/IRF和vPC,使多個物理節點變為唯一的邏輯節點將整個拓撲由環狀變為鏈狀,以避免環路。同時通過鏈路檢測監控聯動路徑切換動作以避免流量黑洞問題,如Cisco的EEM。這些小技術組合起來可以解決上述問題,但缺點是都是私有技術,沒有統一標準,無法支持不同廠商產品混合組網。

另外可以一提的是Cisco的私有技術A-VPLS(Advanced VPLS),此技術配合其VSS,可以將多條VPLS的PW(Pseudo Wire,可理解等同于VC)虛擬化為一條邏輯的Fat PW,達到多PW路徑負載分擔的效果,和鏈路聚合很類似。

此技術由于需要往MPLS報頭中添加一個Flow Label的標簽字段,用于處理多PW的流量路徑Hash,因此別的廠家設備肯定無法識別,只能在全Cisco設備環境下部署。其他廠商也有開發出類似的技術,對多PW進行流量負載分擔,但也都是私有的小特性,無法互通組網。

相關新聞
MPLS 核心網相關廠商

分隔

云南时时彩福利