-
多協議標籤交換
鎖定
多協議標籤交換(英語:Multi-Protocol Label Switching,縮寫為MPLS)是一種在開放的通信網上利用標籤引導數據高速、高效傳輸的新技術。多協議的含義是指MPLS不但可以支持多種網絡層層面上的協議,還可以兼容第二層的多種數據鏈路層技術。
- 中文名
- 多協議標籤交換
- 外文名
- Multi-Protocol Label Switching
- 本 質
- 用於快速數據包交換和路由的體系
- 作 用
- 為數據流量提供目標、路由等
- 用 途
- 用於不同的包轉發和包交換技術
- 標籤結構
- 20 23 24 32 bit
多協議標籤交換基本介紹
多協議標籤交換(Multi-Protocol Label Switching,MPLS)是新一代的IP高速骨幹網絡交換標準,由因特網工程任務組(Internet Engineering Task Force,IETF)提出。
MPLS是利用標記(label)進行數據轉發的。當分組進入網絡時,要為其分配固定長度的短的標記,並將標記與分組封裝在一起,在整個轉發過程中,交換節點僅根據標記進行轉發。
MPLS 獨立於第二和第三層協議,諸如ATM 和IP。它提供了一種方式,將IP地址映射為簡單的具有固定長度的標籤,用於不同的包轉發和包交換技術。它是現有路由和交換協議的接口,如IP、ATM、幀中繼、資源預留協議(RSVP)、開放最短路徑優先(OSPF)等等。
在MPLS 中,數據傳輸發生在標籤交換路徑(LSP)上。LSP 是每一個沿着從源端到終端的路徑上的結點的標籤序列。
MPLS 主要設計來解決網路問題,如網路速度、可擴展性、服務質量(QoS)管理以及流量工程,同時也為下一代IP 中樞網絡解決寬帶管理及服務請求等問題。
在這部分,我們主要關注通用MPLS 框架。有關LDP、CR-LDP 和RSVP-TE 的具體內容可以參考個別文件。
MPLS起源於IPv4(Internet Protocol version 4),其核心技術可擴展到多種網絡協議,包括IPX(Internet Packet Exchange)、Appletalk、DECnet、CLNP(Connectionless Network Protocol)等。“MPLS”中的“Multiprotocol”指的就是支持多種網絡協議。
多協議標籤交換協議結構
MPLS 標籤結構:
20 23 24 32 bit
Label Exp STTL
Label ―Label 值傳送標籤實際值。當接收到一個標籤數據包時,可以查出棧頂部的標籤值,並且系統知道:A、數據包將被轉發的下一跳;B、在轉發之前標籤棧上可能執行的操作,如返回到標籤進棧頂入口同時將一個標籤壓出棧;或返回到標籤進棧頂入口然後將一個或多個標籤推進棧。
Exp ―優先級。Experimental Bits用以表示從0到7的報文優先級字段。
多協議標籤交換協議組
MPLS:相關信令協議,如OSPF、BGP、ATM PNNI等。
LDP:標籤分發協議(Label Distribution Protocol)
CR-LDP:基於路由受限標籤分發協議(Constraint-Based LDP)
RSVP-TE:基於流量工程擴展的資源預留協議(resource Reservation Protocol –Traffic Engineering)
多協議標籤交換分類
基於MPLS的VPN
傳統的VPN一般是通過GRE(Generic Routing Encapsulation)、L2TP(Layer 2 Tunneling Protocol)、PPTP(Point to Point Tunneling Protocol)、IPSec協議等隧道協議來實現私有網絡間數據流在公網上的傳送。而LSP本身就是公網上的隧道,所以用MPLS來實現VPN有天然的優勢。
基於MPLS的VPN就是通過LSP將私有網絡的不同分支聯結起來,形成一個統一的網絡。基於MPLS的VPN還支持對不同VPN間的互通控制。
CE(Customer Edge)是用户邊緣設備,可以是路由器,也可以是交換機或主機。
基於MPLS的VPN具有以下特點:
PE負責對VPN用户進行管理、建立各PE間LSP連接、同一VPN用户各分支間路由分派。
PE間的路由分派通常是用LDP或擴展的BGP協議實現。
支持不同分支間IP地址複用和不同VPN間互通。
減化了尋路步驟,提高了設備性能,加快了報文轉發。
基於MPLS的QoS
由於全網實施流量工程的難度比較大,因此,在實際的組網方案中往往通過差分服務模型來實施QoS。
Diff-Serv的基本機制是在網絡邊緣,根據業務的服務質量要求將該業務映射到一定的業務類別中,利用IP分組中的DS(Differentiated Service)字段(由ToS域而來)唯一的標記該類業務;然後,骨幹網絡中的各節點根據該字段對各種業務採取預先設定的服務策略,保證相應的服務質量。
Diff-Serv對服務質量的分類和標籤機制與MPLS的標籤分配十分相似,事實上,基於MPLS的Diff-Serv就是通過將DS的分配與MPLS的標籤分配過程結合來實現的。
多協議標籤交換工作過程
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的體系結構中:
轉發平面(Forwarding Plane)也稱為數據平面(Data Plane),是面向連接的,可以使用ATM、幀中繼等二層網絡。
MPLS使用短而定長的標籤(label)封裝分組,在數據平面實現快速轉發。
在控制平面,MPLS擁有IP網絡強大靈活的路由功能,可以滿足各種新應用對網絡的要求。
對於核心LSR,在轉發平面只需要進行標籤分組的轉發。
多協議標籤交換路由協議
LDP利用路由轉發表建立LSP
通過已有協議的擴展支持MPLS標籤分發
雖然LDP是專門用來實現標籤分發的協議,但LDP並不是唯一的標籤分發協議。通過對BGP、RSVP(Resource Reservation Protocol)等已有協議進行擴展,也可以支持MPLS標籤的分發。
通過某些路由協議的擴展支持MPLS應用
在MPLS的應用中,也可能需要對某些路由協議進行擴展。例如,基於MPLS的VPN應用需要對BGP進行擴展,使BGP能夠傳播VPN的路由信息;基於MPLS的流量工程TE(Traffic Engineering)需要對OSPF或IS-IS協議進行擴展,以攜帶鏈路狀態信息。
LSPM: LSP Management
多協議標籤交換轉發技術
MPLS作為一種分類轉發技術,將具有相同轉發處理方式的分組歸為一類,稱為轉發等價類FEC(Forwarding Equivalence Class)。相同轉發等價類的分組在MPLS網絡中將獲得完全相同的處理。
多協議標籤交換標籤
標籤由報文的頭部所攜帶,不包含拓撲信息,只具有局部意義。標籤的長度為4個字節。
標籤共有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,則標籤封裝在這些域中。
Frame mode:幀模式。
Cell mode:信元模式。
標籤交換路由器
標籤交換路由器LSR(Label Switching Router)是MPLS網絡中的基本元素,所有LSR都支持MPLS協議。
LSR由兩部分組成:控制單元和轉發單元。
控制單元負責標籤的分配、路由的選擇、標籤轉發表的建立、標籤交換路徑的建立、拆除等工作
轉發單元則依據標籤轉發表對收到的分組進行轉發。
標籤發佈
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分為靜態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。
多協議標籤交換參考信息
如果要更詳細瞭解MPLS的原理,請參考以下文檔。
RFC3031:Multiprotocol Label Switching Architecture
多協議標籤交換技術特點
1 充分採用原來的IP路由,在此基礎上加以改進;保證了MPLS網絡路由具有靈活性的特點
2 採用 ATM的高效傳輸交換方式,拋棄了複雜的ATM信令,無縫地將IP技術的優點融合到ATM的高效硬件轉發中
3 MPLS網絡的數據傳輸和路由計算分開,是一種面向連接的傳輸技術,能夠提供有效的QOS保證
4 MPLS不但支持多種網絡層技術,而且是一種與鏈路層無關的技術,它同時支持X.25 幀中繼 ATM PPP SDH DWDM 等 ,保證了多種網絡的互連互通,使得各種不同的網絡傳輸技術統一在同一各MPLS平台上
5 MPLS支持大規模層次化的網絡拓撲結構,具有良好的網絡擴展性
6 MPLS的標籤合併機制支持不同數據流的合併傳輸
多協議標籤交換工作原理
MPLS是基於標記的IP路由選擇方法
[2]
。這些標記可以被用來代表逐跳式或者顯式路由,並指明服務質量(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)驅動連接建立的方式
(2)標記分配
(3)連接建立過程
(4)MPLS路由方式
數據傳輸
MPLS網絡的數據傳輸採用基於標記的轉發機制。
(1)入口LER的處理過程
(2)LSR的處理過程
LSR從“SHIM”中獲得標記值,用此標記值索引LIB表,找到對應表項的輸出端口和輸出標記,用輸出標記替換輸入標記,從輸出端口轉發出去。
(3)出口LER的處理過程
出口路由器為數據分組在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形成一個128bit的會話密鑰。一個密鑰將只對應一個邏輯分區。然後,再對網絡進行初始化後開始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使用基於分佈式計算的傳統IP路由協議,在網絡拓撲結構變化的瞬間,由這些協議計算得到的路由可能會瞬時產生環路。分組進入有環路的LSP傳送時可能會導致兩個基本問題(1)分組無法遞交到正確的目的地址(2)擁塞。發生環路後。即使採用TTL減和環路分組丟棄的方式分組仍可能在環路中存活很長時間,並佔用大量的網絡資源。這對其他沒有產生環路的數據分組的正確傳輸有很大影響。產生環路數據包造成的擁塞可能導致非環路數據包延遲加長或丟棄,嚴重時導致網絡癱瘓。
MPLS網絡的第二層環路處置有很多種方法,主要可以劃分為三類:
2.環路檢測允許環路的發生,但在隨後的檢測中發現環路時就刪除它們。
- 參考資料
-
- 1. "Deploying IP and MPLS QoS for Multiservice Networks: Theory and Practice" by John Evans, Clarence Filsfils (Morgan Kaufmann, 2007, ISBN 0-12-370549-5)
- 2. MPLS(多協議標籤交換)技術研究及應用 - 中國知網 .-中國知網.2012-12-01