天天看點

HuaWei ❀ MPLS标簽

MPLS标簽

1、轉發等價類

MPLS将具有相同特征的封包歸為一類,稱為轉發等價類FEC(Forwarding Equivalence Class)屬于相同FEC的封包在轉發過程中被LSR以相同的方式處理;

FEC可以根據位址、掩碼等要素進行劃分,例如,在傳統的采用最長比對算法的IP轉發中,到同一條路由的所有封包就是一個轉發等價類;

2、标簽

标簽(Label)是一個短而定長的、隻具有本地意義的辨別符,用于唯一辨別一個分組所屬的FEC,在某些情況下,例如要進行負載分擔,對應一個FEC可能會有多個入标簽,但是一台裝置上,一個标簽隻能代表一個FEC;

标簽的長度為4位元組,封裝如下圖所示:

HuaWei ❀ MPLS标簽

(1)Label:20bit,标簽值域;

(2)Expt:3bit,用于擴充,現在通常用做CoS(Class of Service),其作用與Ethernet 802.1p的作用類似;

(3)S:1bit,棧底辨別,MPLS支援多層标簽,即标簽嵌套,S為1表明為最底層标簽;

(4)TTL:8bit,和IP封包中的生存時間意義相同;

标簽封裝在鍊路層和網絡層直接,這樣标簽能夠被任意的鍊路層所支援,标簽在分組中的封裝位置如下圖所示:

HuaWei ❀ MPLS标簽

3、标簽空間

标簽空間就是名額簽的取值範圍;

  • 0~15:特殊标簽

0 IPv4 Explicit NULL Label:表示該标簽必須被彈出,且封包的轉發必須基于IPv4,如果出節點配置設定給倒數第二跳節點的标簽值為0,則倒數第二跳LSR需要将值為0的标簽正常壓入封包标簽值頂部,轉發給最後一跳,最後一跳發現封包攜帶的标簽值為0,則将标簽彈出,0标簽隻有出現在棧底時才有效;

1 Router Alert Label:隻有出現在非棧底時才有效,類似于IP封包中的Router Alert Option字段,節點收到Router Alert Label時,需要将其送往本地軟體子產品進一步處理,實際封包轉發由下一層标簽來決定,如果封包需要繼續轉發,則節點需要将Route1r Alert Label壓回标簽棧頂;

2 IPv6 Explicit NULL Label:表示該标簽必須被彈出,且封包的轉發必須基于IPv6,同标簽0類似;

3 Implicit NULL Label:倒數第二跳LSR進行标簽交換時,如果發現交換後的标簽值為3,則标簽彈出,并将封包發給最後一跳,最後一跳收到該封包直接進行IP轉發或者下一層标簽轉發;

4~13 保留

14 OAM Router Alert Label:MPLS OAM(Operation Administraaion & Maintenance)通過發送OAM封包檢測和通告LSP故障,OAM封包使用MPLS承載,OAM封包對于Transit LSR和倒數第二跳LSR是透明的;

15 保留

  • 16~1023:靜态LSP和靜态CR-LSP共享的标簽空間;
  • 1024以上:LDP、RSVP-TE、MP-BGP等動态信令協定的标簽空間;

4、标簽棧

标簽棧(Label Stack)是名額簽的排序集合,MPLS封包支援同時攜帶多個标簽,靠近二層首部的标簽稱為棧頂标簽或者外層标簽,靠近IP首部的标簽稱為棧底标簽或者内層标簽,理論上MPLS标簽可以無限嵌套;

HuaWei ❀ MPLS标簽

标簽棧按照後進先出方式組織标簽,從棧頂開始處理标簽;

  • Push:指當IP封包進入MPLS域時,MPLS邊界裝置在封包二層首部和IP首部之間插入一個新标簽,或者MPLS中間裝置根據需要,在标簽棧頂增加一個新的标簽,即标簽嵌套封裝;
  • Swap:當封包在MPLS域内轉發時,根據标簽轉發表,用下一跳配置設定的标簽,替換MPLS封包的棧頂标簽;
  • Pop:當封包離開MPLS域時,将MPLS封包中的标簽去掉;

繼續閱讀