MPLS

MPLS

提供高性價比和多業務能力的交換技術
多協議标簽交換(Multi-Protocol Label Switching,MPLS)是新一代的IP高速骨幹網絡交換标準,由因特網工程任務組(Internet Engineering Task Force,IETF)提出。[1]采用MPLS技術可以提供靈活的流量工程、虛拟專網等業務,同時,MPLS也是能夠完成涉及多層網絡集成控制與管理的技術。
    中文名:多協議标簽交換 外文名: 适用領域: 所屬學科: 其他外文名:Multi-Protocol Label Switching 本 質:用于快速數據包交換和路由的體系 作 用:為數據流量提供了目标、路由等 用 途:用于不同的包轉發和包交換技術

概述

MPLS是利用标記(label)進行數據轉發的。當分組進入網絡時,要為其分配固定長度的短的标記,并将标記與分組封裝在一起,在整個轉發過程中,交換節點僅根據标記進行轉發。

MPLS 獨立于第二和第三層協議,諸如ATM 和IP。它提供了一種方式,将IP地址映射為簡單的具有固定長度的标簽,用于不同的包轉發和包交換技術。它是現有路由和交換協議的接口,如IP、ATM、幀中繼、資源預留協議(RSVP)、開放最短路徑優先(OSPF)等等。

在MPLS 中,數據傳輸發生在标簽交換路徑(LSP)上。LSP是每一個沿着從源端到終端的路徑上的結點的标簽序列。

MPLS 主要設計來解決網路問題,如網路速度、可擴展性、服務質量(QoS)管理以及流量工程,同時也為下一代IP 中樞網絡解決寬帶管理及服務請求等問題。

在這部分,我們主要關注通用MPLS 框架。有關LDP、CR-LDP 和RSVP-TE 的具體内容可以參考個别文件。

多協議标簽交換MPLS最初是為了提高轉發速度而提出的。與傳統IP路由方式相比,它在數據轉發時,隻在網絡邊緣分析IP報文頭,而不用在每一跳都分析IP報文頭,從而節約了處理時間。

MPLS起源于IPv4(Internet Protocol version 4),其核心技術可擴展到多種網絡協議,包括IPX(Internet Packet Exchange)、Appletalk、DECnet、CLNP(Connectionless Network Protocol)等。“MPLS”中的“Multiprotocol”指的就是支持多種網絡協議。

協議結構

标簽結構

Label―Label 值傳送标簽實際值。當接收到一個标簽數據包時,可以查出棧頂部的标簽值,并且系統知道:A、數據包将被轉發的下一跳;B、在轉發之前标簽棧上可能執行的操作,如返回到标簽進棧頂入口同時将一個标簽壓出棧;或返回到标簽進棧頂入口然後将一個或多個标簽推進棧。

Exp―試用。預留以備試用。

S―棧底。标簽棧中最後進入的标簽位置,該值為0,提供所有其它标簽入棧。

TTL―生存期字段(Time to Live),用來對生存期值進行編碼。

協議組

MPLS:相關信令協議,如 OSPF、BGP、ATM PNNI等。

LDP:标簽分發協議(Label Distribution Protocol)。

CR-LDP:基于路由受限标簽分發協議(Constraint-Based LDP)。

RSVP-TE:基于流量工程擴展的資源預留協議(resource Reservation Protocol – Traffic Engineering)。

分類

VPN

傳統的VPN一般是通過GRE(Generic Routing Encapsulation)、L2TP(Layer 2 Tunneling Protocol)、PPTP(Point to Point Tunneling Protocol)、IPSec協議等隧道協議來實現私有網絡間數據流在公網上的傳送。而LSP本身就是公網上的隧道,所以用MPLS來實現VPN有天然的優勢。

基于MPLS的VPN就是通過LSP将私有網絡的不同分支聯結起來,形成一個統一的網絡,如圖1-6所示。基于MPLS的VPN還支持對不同VPN間的互通控制。

CE(Customer Edge)是用戶邊緣設備,可以是路由器,也可以是交換機或主機;

PE(Provider Edge)是服務商邊緣路由器,位于骨幹網絡。

在骨幹網絡中,還存在P(Provider),是服務提供商網絡中的骨幹路由器,不與CE直接相連。P設備隻需要具備基本MPLS轉發能力,可以将其配置為M-BGP的路由反射器,不維護VPN信息。

VPN特點

PE負責對VPN用戶進行管理、建立各PE間LSP連接、同一VPN用戶各分支間路由分派。

PE間的路由分派通常是用LDP或擴展的BGP協議實現。

支持不同分支間IP地址複用和不同VPN間互通。

QoS

NE80E支持基于MPLS的流量工程和差分服務Diff-Serv特性,在保證網絡高利用率的同時,可以根據不同數據流的優先級實現差别服務,從而為語音,視頻數據流提供有帶寬保證的低延時、低丢包率的服務。

由于全網實施流量工程的難度比較大,因此,在實際的組網方案中往往通過差分服務模型來實施QoS。

Diff-Serv的基本機制是在網絡邊緣,根據業務的服務質量要求将該業務映射到一定的業務類别中,利用IP分組中的DS(Differentiated Service)字段(由ToS域而來)唯一的标記該類業務;然後,骨幹網絡中的各節點根據該字段對各種業務采取預先設定的服務策略,保證相應的服務質量。

Diff-Serv對服務質量的分類和标簽機制與MPLS的标簽分配十分相似,事實上,基于MPLS的Diff-Serv就是通過将DS的分配與MPLS的标簽分配過程結合來實現的。

工作過程

1.  LDP和傳統路由協議(如OSPF、ISIS等)一起,在各個LSR中為有業務需求的FEC建立路由表和标簽映射表;

2. 入節點Ingress接收分組,完成第三層功能,判定分組所屬的FEC,并給分組加上标簽,形成MPLS标簽分組,轉發到中間節點Transit;

3. Transit根據分組上的标簽以及标簽轉發表進行轉發,不對标簽分組進行任何第三層處理;

4. 在出節點Egress去掉分組中的标簽,繼續進行後面的轉發。

由此可以看出,MPLS并不是一種業務或者應用,它實際上是一種隧道技術,也是一種将标簽交換轉發和網絡層路由技術集于一身的路由與交換技術平台。這個平台不僅支持多種高層協議與業務,而且,在一定程度上可以保證信息傳輸的安全性。

體系結構

MPLS網絡是指由運行MPLS協議的交換節點構成的區域。這些交換節點就是MPLS标記交換路由器,按照它們在MPLS網絡中所處位置的不同,可劃分為MPLS标記邊緣路由器(LER: label edge router)和MPLS标記核心路由器(LSR:label switching router)。顧名思義,LER位于MPLS網絡邊緣與其他網絡或者用戶相連;LSR位于MPLS網絡内部。兩類路由器的功能因其在網絡中位置的不同而略有差異。

在MPLS的體系結構中:

控制平面(Control Plane)之間基于無連接服務,利用現有IP網絡實現;

轉發平面(Forwarding Plane)也稱為數據平面(Data Plane),是面向連接的,可以使用ATM、幀中繼等二層網絡。

MPLS使用短而定長的标簽(label)封裝分組,在數據平面實現快速轉發。

在控制平面,MPLS擁有IP網絡強大靈活的路由功能,可以滿足各種新應用對網絡的要求。

對于核心LSR,在轉發平面隻需要進行标簽分組的轉發。

對于LER,在轉發平面不僅需要進行标簽分組的轉發,也需要進行IP分組的轉發,前者使用标簽轉發表LFIB,後者使用傳統轉發表FIB(Forwarding Information Base)。

路由協議

LDP利用路由轉發表建立LSP。

LDP通過逐跳方式建立LSP時,利用沿途各LSR路由轉發表中的信息來确定下一跳,而路由轉發表中的信息一般是通過IGP、BGP等路由協議收集的。LDP并不直接和各種路由協議關聯,隻是間接使用路由信息。

通過已有協議的擴展支持MPLS标簽分發。

雖然LDP是專門用來實現标簽分發的協議,但LDP并不是唯一的标簽分發協議。通過對BGP、RSVP(Resource Reservation Protocol)等已有協議進行擴展,也可以支持MPLS标簽的分發。

通過某些路由協議的擴展支持MPLS應用。

在MPLS的應用中,也可能需要對某些路由協議進行擴展。例如,基于MPLS的VPN應用需要對BGP進行擴展,使BGP能夠傳播VPN的路由信息;基于MPLS的流量工程TE(Traffic Engineering)需要對OSPF或IS-IS協議進行擴展,以攜帶鍊路狀态信息。

轉發技術

MPLS作為一種分類轉發技術,将具有相同轉發處理方式的分組歸為一類,稱為轉發等價類FEC(Forwarding Equivalence Class)。相同轉發等價類的分組在MPLS網絡中将獲得完全相同的處理。

轉發等價類的劃分方式非常靈活,可以是源地址、目的地址、源端口、目的端口、協議類型、VPN等的任意組合。例如,在傳統的采用最長匹配算法的IP轉發中,到同一個目的地址的所有報文就是一個轉發等價類。

标簽

标簽是一個長度固定、隻具有本地意義的短标識符,用于唯一标識一個分組所屬的轉發等價類FEC。在某些情況下,例如要進行負載分擔,對應一個FEC可能會有多個标簽,但是一個标簽隻能代表一個FEC。

标簽由報文的頭部所攜帶,不包含拓撲信息,隻具有局部意義。

标簽共有4個域:

1.Label:20比特,标簽值字段,用于轉發的指針。

2.Exp:3比特,保留,用于試驗,現在通常用做CoS(Class of Service)。

3.S:1比特,棧底标識。MPLS支持标簽的分層結構,即多重标簽,S值為1時表明為最底層标簽。

4.TTL:8比特,和IP分組中的TTL(Time To Live)意義相同。

标簽與ATM的VPI/VCI以及Frame Relay的DLCI類似,是一種連接标識符。

如果鍊路層協議具有标簽域,如ATM的VPI/VCI或Frame Relay的DLCI,則标簽封裝在這些域中。

如果鍊路層協議沒有标簽域,則标簽封裝在鍊路層和IP層之間的一個墊層中。

Frame mode:幀模式。

Cell mode:信元模式。

标簽交換路由器

标簽交換路由器LSR(Label Switching Router)是MPLS網絡中的基本元素,所有LSR都支持MPLS協議。

LSR由兩部分組成:控制單元和轉發單元。

控制單元負責标簽的分配、路由的選擇、标簽轉發表的建立、标簽交換路徑的建立、拆除等工作

轉發單元則依據标簽轉發表對收到的分組進行轉發。

标簽發布

标簽發布協議是MPLS的控制協議,它相當于傳統網絡中的信令協議,負責FEC的分類、标簽的分配以及LSP的建立和維護等一系列操作。

MPLS可以使用多種标簽發布協議。

包括專為标簽發布而制定的協議,例如:LDP(Label Distribution Protocol)、CR-LDP(Constraint-Routing Label Distribution Protocol)。

也包括現有協議擴展後支持标簽發布的,例如:BGP(Border Gateway Protocol)、RSVP(Resource Reservation Protocol)。

标簽交換路徑

一個轉發等價類在MPLS網絡中經過的路徑稱為标簽交換路徑LSP(Label Switched Path)。

LSP在功能上與ATM和Frame Relay的虛電路相同,是從入口到出口的一個單向路徑。LSP中的每個節點由LSR組成,根據數據傳送的方向,相鄰的LSR分别稱為上遊LSR和下遊LSR。

标簽交換路徑LSP分為靜态LSP和動态LSP兩種。靜态LSP由管理員手工配置,動态LSP則利用路由協議和标簽發布協議動态産生。

位于MPLS域邊緣、連接其它用戶網絡的LSR稱為邊緣LSR,即LER(Label Edge Router),區域内部的LSR稱為核心LSR。核心LSR可以是支持MPLS的路由器,也可以是由ATM交換機等升級而成的ATM-LSR。域内部的LSR之間使用MPLS通信,MPLS域的邊緣由LER與傳統IP技術進行适配。

分組被打上标簽後,沿着由一系列LSR構成的标簽交換路徑LSP傳送,其中,入節點LER被稱為Ingress,出節點LER被稱為Egress,中間的節點則稱為Transit。

技術特點

1.充分采用原來的IP路由,在此基礎上加以改進;保證了MPLS網絡路由具有靈活性的特點。

2.采用ATM的高效傳輸交換方式,抛棄了複雜的ATM信令,無縫地将IP技術的優點融合到ATM的高效硬件轉發中。

3.MPLS網絡的數據傳輸和路由計算分開,是一種面向連接的傳輸技術,能夠提供有效的QOS保證。

4.MPLS不但支持多種網絡層技術,而且是一種與鍊路層無關的技術,它同時支持X.25 幀中繼 ATM PPP SDH DWDM 等,保證了多種網絡的互連互通,使得各種不同的網絡傳輸技術統一在同一各MPLS平台上。

5.MPLS支持大規模層次化的網絡拓撲結構,具有良好的網絡擴展性。

6.MPLS的标簽合并機制支持不同數據流的合并傳輸。

7.MPLS支持流量工程 COS QOS 和大規模的虛拟專用網。

工作原理

MPLS是基于标記的IP路由選擇方法。這些标記可以被用來代表逐跳式或者顯式路由,并指明服務質量(QoS)、虛拟專網以及影響一種特定類型的流量(或一個特殊用戶的流量)在網絡上的傳輸方式等各類信息。MPLS采用簡化了的技術,來完成第三層和第二層的轉換。它可以提供每個IP數據包一個标記,将之與IP數據包封裝于新的MPLS數據包,由此決定IP數據包的傳輸路徑以及優先順序,而與MPLS兼容的路由器會在将IP數據包按相應路徑轉發之前僅讀取該MPLS數據包的包頭标記,無須再去讀取每個IP數據包中的IP地址位等信息,因此數據包的交換轉發速度大大加快。

目前的路由協議都是在一個指定源和目的地之間選擇最短路徑,而不論該路徑的帶寬、載荷等鍊路狀态,對于缺乏安全保障的鍊路也沒有一種顯式方法來繞過它。利用顯式路由選擇,就可以靈活選擇一條低延遲、安全的路徑來傳輸數據。

MPLS協議實現了第三層的路由到第二層的交換的轉換。MPLS可以使用各種第二層協議。MPLS工作組到目前為止已經把在幀中繼、ATM和PPP鍊路以及IEEE802.3局域網上使用的标記實現了标準化。MPLS在幀中繼和ATM上運行的一個好處是它為這些面向連接的技術。

帶來了IP的任意連通性。目前MPLS的主要發展方向是在ATM方面。這主要是因為ATM具有很強的流量管理功能,能提供QoS方面的服務,ATM和MPLS技術的結合能充分發揮在流量管理和QoS方面的作用。标記是用于轉發數據包的報頭,報頭的格式則取決于網絡特性。在路由器網絡中,标記是單獨的32位報頭;在ATM中,标記置于虛電路标識符/虛通道标識符(VCI/VPI)信元報頭中。對于MPLS可擴展性非常關鍵的一點是标記隻在通信的兩個設備之間有意義。在網絡核心,路由器/交換機隻解讀标記并不去解析IP數據包。

IP包進入網絡核心時,邊界路由器給它分配一個标記。自此,MPLS設備就會自始至終查看這些标記信息,将這些有标記的包交換至其目的地。由于路由處理減少,網絡的等待時間也就随之縮短,而可伸縮性卻有所增加。MPLS數據包的服務質量類型可以由MPLS邊界路由器根據IP包的各種參數來确定,如IP的源地址、目的地址、端口号、TOS值等參數。

對于到達同一目的地的IP包,可根據其TOS值的要求來建立不同的轉發路徑,以達到其對傳輸質量的要求。同時,通過對特殊路由的管理,還能有效地解決網絡中的負載均衡和擁塞問題。當網絡中出現擁塞時,MPLS可實時建立新的轉發路由來分散流量以緩解網絡擁塞。

MPLS交換采用面向連接的工作方式,面向連接的工作方式就是信息傳送要經過以下三個階段:建立連接、數據傳輸和拆除連接。對于MPLS來說,建立連接就是形成标記交換路徑LSP的過程;數據傳輸就是數據分組沿LSP進行轉發的過程;而拆除連接則是通信結束或發生故障異常時釋放LSP的過程。

建立連接

(1)驅動連接建立的方式

MPLS技術支持三種驅動虛連接建立的方式:拓撲驅動、請求驅動和數據驅動。

(2)标記分配。

(3)連接建立過程。

(4)MPLS路由方式。

數據傳輸

MPLS網絡的數據傳輸采用基于标記的轉發機制。

(1)入口LER的處理過程

當數據流到達入口LER時,入口LER需完成三項工作:将數據分組映射到LSP上;将數據分組封裝成标記分組;将标記分組從相應端口轉發出去。

(2)LSR的處理過程

LSR從“SHIM”中獲得标記值,用此标記值索引LIB表,找到對應表項的輸出端口和輸出标記,用輸出标記替換輸入标記,從輸出端口轉發出去。

(3)出口LER的處理過程

出口路由器為數據分組在MPLS網絡中經曆的最後一個節點,所以出口路由器要進行相應的彈出标記等操作。

拆除連接

因為MPLS網絡中的虛連接,也就是LSP路徑是由标記所标識的裸機信道串聯而成的,所以連接的拆除也就是标記的取消。标記的取消方式主要有兩種,一種是采用計時器的方式;一種是不設置定時器。

應用

随着ASIC技術的發展,路由查找速度已經不是阻礙網絡發展的瓶頸。這使得MPLS在提高轉發速度方面不再具備明顯的優勢。

但由于MPLS結合了IP網絡強大的三層路由功能和傳統二層網絡高效的轉發機制,在轉發平面采用面向連接方式,與現有二層網絡轉發方式非常相似,這些特點使得MPLS能夠很容易地實現IP與ATM、幀中繼等二層網絡的無縫融合,并為流量工程TE(Traffic Engineering)、虛拟專用網VPN(Virtual Private Network)、服務質量QoS(Quality of Service)等應用提供更好的解決方案。

雲應用

雲架構

IaaS層的安全機制通過接口技術描述了對雲端與客戶端的連接進行控制的必要性,但卻沒有定義一個子層對雲中的兩個雙向通信的實體間的連接進行控制,這便導緻實體間的通信并不可靠。所以本文通過在IaaS層中增加一個子層CaaS(Communication as a Service,通信服務)層來确保兩個實體間通信的安全性,這個子層模型是建立在MPLS技術基礎上的。通過将MPLS技術運用到CaaS層中則可以提高“雲”中數據傳輸的安全性及可靠性,并且能夠有效預防DDoS等攻擊。CaaS層嵌入到IaaS層中的結構如圖1所示。

CaaS子層功能

初始化:初始化包含兩個過程。首先會将虛拟邏輯分區内的CPU初始化得到一個32bit的随機數字,這個之後會通過AES(Advanced Encryption Standard,高級加密标準J形成一個l28bit的會話密鑰。一個密鑰将隻對應一個邏輯分區。然後,再對網絡進行初始化後開始CE(Customer Edge,用戶邊緣設備)之間的通信。

協議認證:在MPLS網絡中的路由對相互之間傳送的數據包進行校驗。MPLS網絡中的攻擊一般發生在對數據包進行标簽标記時,所以隻有當數據包經過認證後才能進行标記。路由器通過認證協議來識别路由和路徑。這為未知網絡之間建立了可靠的識别機制,從未知網絡傳輸過來的數據包一旦未通過驗證就會被丢棄,這就大大減少了發生攻擊的危險。

密鑰交換:IKE(Internet Key,密鑰交換)為兩個需要進行通信的雲用戶間或雲用戶與雲供應商間建立一種關聯SA(SecurityAssociation,安全關聯),同時負責密鑰的生成與管理。SA可對兩個通信主體間的協議進行編碼,以确認它們使用何種算法、密鑰及密鑰的長度。IKE建立SA分兩階段來完成:第一階段先在兩個通信主體之間建立一個通信信道并對該信道進行認證,第二階段則通過已建立的通信信道建立SA。SA存在一個生命周期,當會話密鑰超時,就會向對方主機發送一個第一階段SA删除命令,然後雙方重新進行SA協商。密鑰的周期性決定了超過一定時間限制,一定會生成新的密鑰,這便大大增強了密鑰的健壯性與可靠性。這也是在雲計算中使用密鑰交換的一個重要原因。

建立通信:CE之間的連接通過标簽邊緣路由進行建立。在MPLS網絡中,LSP(Labelb Switch Path,标簽交換路徑)是由兩個端點間的标記所決定的,分為動态LSP和靜态LSP兩類。動态LSP是由路由信息生成的,而靜态LSP是指定的。邏輯分區使用AES算法對數據進行加密這種加密是基于ECB(Electronic Code Book,電子源碼書)模式的,通過這種模式,數據流會快速傳送給雲用戶。加密使用的是一次性密鑰,即使數據包被探測到也很難對其解密,使得數據的安全性得到充分保證。

會話終止:當雲用戶結束通信時,會話會自動終止,雲供應商将根據雲用戶在會話期間使用的服務進行收費。同時,MPLS網絡中的通信資源及虛拟處理器中的緩存數據将會釋放。

環路處理

MPLS使用基于分布式計算的傳統IP路由協議,在網絡拓撲結構變化的瞬間,由這些協議計算得到的路由可能會瞬時産生環路。分組進入有環路的LSP傳送時可能會導緻兩個基本問題(1)分組無法遞交到正确的目的地址(2)擁塞。發生環路後。即使采用TTL減和環路分組丢棄的方式分組仍可能在環路中存活很長時間,并占用大量的網絡資源。這對其他沒有産生環路的數據分組的正确傳輸有很大影響。産生環路數據包造成的擁塞可能導緻非環路數據包延遲加長或丢棄,嚴重時導緻網絡癱瘓。

在MPLS網絡中有很多機制防止環路形成,在環路處理的方法上,一般要考慮使用該方法後環路可能發生的數量以及使用該方法對路由計算收斂性的影響。減少環路的發生意味着路由收斂時間更長。

MPLS網絡的第二層環路處置有很多種方法,主要可以劃分為三類:

1.環路幸存這種方法通過諸如限制環路所能使用的網絡資源的大小來最小化環路對網絡服務性能的影響。

2.環路檢測允許環路的發生,但在随後的檢測中發現環路時就删除它們。

3.環路防止避免在第二層轉發路徑時發生環路。

其他定義

明尼阿波利斯

即洛杉矶湖人隊前身明尼阿波利斯(Minneapolis)湖人隊所在地的縮寫MPLS。

相關詞條

相關搜索

其它詞條