• 產品與解決方案
  • 行業解決方案
  • 服務
  • 支持
  • 合作夥伴
  • 關於我們

08-MPLS配置指導

目錄

01-MPLS基礎配置

本章節下載 01-MPLS基礎配置  (464.07 KB)

01-MPLS基礎配置


1 MPLS基礎

1.1  MPLS簡介

MPLS(Multiprotocol Label Switching,多協議標簽交換)是目前應用比較廣泛的一種骨幹網技術。MPLS在無連接的IP網絡上引入麵向連接的標簽交換概念,將第三層路由技術和第二層交換技術相結合,充分發揮了IP路由的靈活性和二層交換的簡潔性。

1.1.1  MPLS技術特點

MPLS廣泛應用於大規模網絡中,它具有以下優點:

·     在MPLS網絡中,設備根據短而定長的標簽轉發報文,省去了查找IP路由表的繁瑣過程,為數據在骨幹網絡中的傳送提供了一種高速高效的方式。

·     MPLS位於鏈路層和網絡層之間,它可以建立在各種鏈路層協議(如以太網等)之上,為各種網絡層(IPv4、IPv6、IPX等)提供麵向連接的服務。

·     支持多層標簽和麵向連接的特點,使得MPLS具有良好的擴展性,在MPLS網絡基礎上可以為客戶提供各種服務。目前,MPLS在VPN、流量工程、QoS等方麵得到廣泛應用。

1.1.2  MPLS基本概念

1. 轉發等價類

FEC(Forwarding Equivalence Class,轉發等價類)是MPLS中的一個重要概念。MPLS將具有相同特征(目的地相同或具有相同服務等級等)的報文歸為一類,稱為FEC。屬於相同FEC的報文在MPLS網絡中將獲得完全相同的處理。

2. 標簽

標簽是一個長度固定、隻具有本地意義的標識符,用於唯一標識一個報文所屬的FEC。一個標簽隻能代表一個FEC。

圖1-1 標簽的封裝結構

 

圖1-1所示,標簽封裝在鏈路層幀頭和網絡層報文頭之間,長度為4個字節,由以下四個字段組成:

·     Label:標簽值,長度為20bits,用來標識一個FEC。

·     TC(Traffic Class,流量等級):3bits,用於QoS。該字段又稱為Exp字段。

·     S:標簽棧底標識位,長度為1bit。MPLS支持多重標簽,即在鏈路層幀頭和網絡層報文頭之間可以封裝多個標簽,形成標簽棧。靠近鏈路層幀頭的最外層標簽為棧頂標簽;靠近網絡層報文頭的最內層標簽為棧底標簽。S位為1時表示為棧底標簽;S位為0時表示為非棧底標簽。

·     TTL:8bits,和IP報文中的TTL意義相同,可以用來防止環路。

3. 標簽交換路由器

LSR(Label Switching Router,標簽交換路由器)是具有標簽分發能力和標簽交換能力的設備,是MPLS網絡中的基本元素。

4. 標簽交換路徑

屬於同一個FEC的報文在MPLS網絡中經過的路徑稱為LSP(Label Switched Path,標簽交換路徑)。

LSP是一條單向報文轉發路徑。在一條LSP上,沿數據傳送的方向,相鄰的LSR分別稱為上遊LSR和下遊LSR。如圖1-2所示,LSR B為LSR A的下遊LSR,相應的,LSR A為LSR B的上遊LSR。

圖1-2 標簽交換路徑

 

5. 標簽轉發表

與IP網絡中的FIB(Forwarding Information Base,轉發信息庫)類似,在MPLS網絡中,LSR接收到帶標簽的報文後,通過查找LFIB(Label Forwarding Information Base,標簽轉發信息庫)獲取對應的標簽操作類型、出標簽值、下一跳等,以確定如何轉發該報文。

6. 控製平麵和轉發平麵

MPLS節點由兩部分組成:

·     控製平麵(Control Plane):負責標簽的分配、FEC—標簽映射的交換、標簽轉發表的建立、標簽交換路徑的建立、拆除等工作;

·     轉發平麵(Forwarding Plane):依據標簽轉發表對收到的報文進行轉發。

1.1.3  MPLS網絡結構

圖1-3 MPLS網絡結構

 

圖1-3所示,MPLS網絡的基本構成單元是LSR。MPLS網絡包括以下幾個組成部分:

·     入節點Ingress:報文的入口LSR,負責為進入MPLS網絡的報文添加標簽。

·     中間節點Transit:MPLS網絡內部的LSR,根據標簽沿著由一係列LSR構成的LSP將報文傳送給出口LSR。

·     出節點Egress:報文的出口LSR,負責剝離報文中的標簽,並轉發給目的網絡。

1.1.4  LSP建立

LSP的建立過程實際就是將FEC和標簽進行綁定,在LSR上建立標簽轉發表的過程。LSP既可以通過手工配置的方式靜態建立,也可以利用標簽分發協議動態建立。

1. 手工配置的方式建立靜態LSP

建立靜態LSP需要用戶在報文轉發路徑中的各個LSR上手工配置為FEC分配的標簽。建立靜態LSP消耗的資源比較少,但靜態建立的LSP不能根據網絡拓撲變化動態調整。因此,靜態LSP適用於拓撲結構簡單並且穩定的小型網絡。

2. 利用標簽分發協議動態建立LSP

標簽分發協議是MPLS的信令協議,負責劃分FEC、通告FEC—標簽綁定、建立維護LSP等。標簽分發協議的種類較多,有專為標簽分發而製定的協議,如LDP(Label Distribution Protocol,標簽分發協議),也有擴展後支持標簽分發的協議,如MP-BGP。

說明

為了區分,本文中“標簽分發協議”表示廣義上所有用於標簽分發的協議的總稱;“LDP”表示RFC 5036規定的標簽分發協議。

 

利用標簽分發協議動態建立LSP的過程如圖1-4所示。下遊LSR根據目的地址劃分FEC,為特定FEC分配標簽,並將FEC—標簽綁定關係通告給上遊LSR;上遊LSR根據該綁定關係建立標簽轉發表項。報文轉發路徑上的所有LSR都為該FEC建立對應的標簽轉發表項後,就成功地建立了用於轉發屬於該FEC報文的LSP。

圖1-4 動態LSP建立過程

 

1.1.5  MPLS轉發過程

圖1-5 MPLS轉發過程示意圖

 

圖1-5所示,MPLS網絡中報文的基本轉發過程為:

(1)     Ingress(Device B)接收到不帶標簽的報文,根據報文的目的IP地址查找FIB表獲取報文的出標簽(40)、下一跳LSR(Device C)和出接口(Interface B1),為報文添加標簽,並從相應的出接口將帶有標簽的報文轉發給下一跳LSR。

(2)     Device C根據報文上的標簽(40)查找LFIB表獲取報文的標簽操作(交換標簽)、出標簽(50)、下一跳LSR(Device D)和出接口(Interface C1),用新的標簽(50)替換原有標簽後,從相應的出接口將帶有標簽的報文轉發給下一跳LSR。

(3)     Egress(Device D)接收到標簽報文,根據報文上的標簽(50)查找LFIB表獲取報文的標簽操作(刪除標簽)、下一跳LSR(Device E)和出接口(Interface D1),刪除報文中的標簽,從相應的出接口將不帶標簽的報文轉發給下一跳LSR。如果LFIB表項中沒有記錄下一跳和出接口,則根據IP報文頭查FIB表轉發該報文。

1.1.6  倒數第二跳彈出

MPLS網絡中,Egress節點接收到帶有標簽的報文後,查找標簽轉發表,彈出報文中的標簽後,再進行下一層的標簽轉發或IP轉發。Egress節點轉發報文之前要查找兩次轉發表:兩次標簽轉發表,或一次標簽轉發表一次路由轉發表。

為了減輕Egress節點的負擔,提高MPLS網絡對報文的處理能力,可以利用PHP(Penultimate Hop Popping,倒數第二跳彈出)功能,在倒數第二跳節點處將標簽彈出,Egress節點隻需查找一次轉發表。

MPLS通過分配空標簽實現倒數第二跳彈出。空標簽分為:

·     隱式空標簽:取值為3。當一個LSR發現下遊LSR通告的標簽為隱式空標簽時,它並不用這個值替代棧頂原來的標簽,而是直接彈出標簽,並將報文轉發給下遊LSR(即Egress)。Egress接收到報文後,直接進行下一層的轉發處理。

·     顯式空標簽:取值為0或2。0用於IPv4網絡;2用於IPv6網絡。在某些情況下,Egress需要根據標簽棧中的TC等信息決定QoS策略,此時利用顯式空標簽就可以在保留標簽棧信息的同時,簡化Egress節點的轉發處理。Egress為FEC分配顯式空標簽並通告給上遊LSR後,上遊LSR用這個值替代棧頂原來的標簽,並將報文轉發給下遊LSR(即Egress)。Egress收到標簽值為0或2的報文時,不會查找標簽轉發表,從標簽中獲取TC等信息後,直接彈出標簽棧,進行下一層的轉發處理。

1.1.7  協議規範

與MPLS相關的協議規範有:

·     RFC 3031:Multiprotocol Label Switching Architecture

·     RFC 3032:MPLS Label Stack Encoding

·     RFC 5462:Multiprotocol Label Switching (MPLS) Label Stack Entry: "EXP" Field Renamed to "Traffic Class" Field

1.2  MPLS基礎配置限製和指導

僅高級模式和專家模式支持MPLS基礎功能。有關設備的工作模式的詳細介紹,請參見“基礎配置指導”中的“設備管理”。

隧道報文不支持MPLS轉發。

1.3  MPLS配置任務簡介

MPLS配置任務如下:

(1)     使能MPLS功能

(2)     (可選)配置MPLS MTU

(3)     (可選)配置設備作為Egress節點時為倒數第二跳分配的標簽類型

(4)     (可選)配置TTL複製

開啟本功能後,Ingress節點會將原IP報文中的TTL值複製到MPLS標簽的TTL域,借助IP tracert等工具,可以了解報文在MPLS網絡中的轉發路徑。

(5)     (可選)使能MPLS的TTL超時消息發送功能

(6)     (可選)開啟MPLS模塊的告警功能

(7)     (可選)開啟MPLS模塊的私有告警功能

1.4  使能MPLS功能

1. 配置準備

在使能MPLS功能之前,需要配置單播靜態路由或IGP協議,保證各LSR在網絡層互通。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置本節點的LSR ID。

mpls lsr-id lsr-id

缺省情況下,未配置LSR ID。

LSR ID采用點分十進製格式,與IP地址格式相同。

LSR ID在MPLS網絡內必須唯一,推薦使用Loopback接口的IP地址作為LSR ID。

(3)     進入需要轉發MPLS報文的接口視圖。

interface interface-type interface-number

(4)     使能接口的MPLS能力。

mpls enable

缺省情況下,接口的MPLS能力處於關閉狀態。

1.5  配置MPLS MTU

1. 功能簡介

MPLS標簽棧位於鏈路層幀頭和網絡層報文頭之間。在MPLS轉發過程中,雖然網絡層報文長度小於接口的MTU,但是增加MPLS標簽後,報文長度可能超過鏈路層允許發送的範圍,從而導致報文無法正常轉發。

為此,設備上定義了MPLS MTU,MPLS轉發時將增加標簽後的報文長度與MPLS MTU比較。報文長度大於MPLS MTU時:

·     如果允許分片,則LSR移除報文的標簽棧,對IP報文進行分片(分片大小為MPLS MTU值減去標簽棧的長度),分片後將被移除的標簽棧添加到每個分片上,再進行轉發;

·     如果不允許分片,則直接轉發。

2. 配置限製和指導

MPLS MTU會影響IP入MPLS時的流量轉發。

不建議將接口MPLS MTU值設置過小,否則容易導致因IP分片影響性能,嚴重時甚至出現丟包現象。

配置的MPLS MTU值不能大於接口MTU,否則有可能導致數據轉發失敗。

如果MPLS報文內封裝的是IPv6報文,則即使報文長度大於MPLS MTU,也會發送該報文,報文能否發送成功由接口的實際情況決定。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     進入接口視圖。

interface interface-type interface-number

(3)     配置接口的MPLS MTU。

mpls mtu size

缺省情況下,未配置接口的MPLS MTU值。此時如果配置了IP MTU,則根據IP MTU進行分片;如果未配置IP MTU,則根據接口的MTU值進行分片。分片的長度不包含MPLS標簽棧的長度,為分片添加MPLS標簽棧後MPLS報文的長度可能會大於接口MTU的值。

1.6  配置設備作為Egress節點時為倒數第二跳分配的標簽類型

1. 功能簡介

請根據實際情況選擇Egress節點為倒數第二跳分配的標簽類型:

·     如果倒數第二跳節點支持PHP(Penultimate Hop Popping,倒數第二跳彈出)功能,則建議采用隱式空標簽;

·     如果在簡化Egress節點轉發處理的同時,希望Egress節點能夠根據標簽中的TC等信息決定QoS策略,則建議采用顯式空標簽;

·     非空標簽隻使用在一些比較特殊的場景,比如Egress節點上部署了OAM,隻有根據標簽才能對應到OAM功能實體的情況,通常情況下不建議使用非空標簽。

2. 配置限製和指導

對於LDP LSP,執行mpls label advertise命令修改Egress分配的標簽類型後,已經建立的LDP LSP會被拆除,並根據新的標簽類型重新建立。

對於BGP LSP,mpls label advertise命令隻對新建立的BGP LSP生效,執行本命令前已經建立的BGP LSP不受影響。若要使本命令對已經建立的BGP LSP生效,則需要從BGP路由表中刪除BGP LSP對應的路由,並重新引入該路由。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     配置設備作為Egress節點時為倒數第二跳分配的標簽類型。

mpls label advertise { explicit-null | implicit-null | non-null }

缺省情況下,Egress節點為倒數第二跳分配隱式空標簽(implicit-null)。

1.7  配置TTL複製

1. 功能簡介

IP報文進入MPLS網絡和IP報文離開MPLS網絡時,TTL的處理方式分為以下幾種:

·     使能TTL複製功能:Ingress節點為IP報文壓入標簽時,將原IP報文中的TTL值複製到新增加的標簽的TTL域。LSR轉發標簽報文時,對標簽的TTL值做減一操作。LSR彈出報文的標簽時,將標簽的TTL值複製回IP報文。使用這種方式時,MPLS骨幹網中的節點對用戶網絡的報文可見。報文沿著LSP傳輸的過程中,TTL逐跳遞減,Tracert的結果將反映報文實際經過的路徑。

圖1-6 使能TTL複製功能時的處理過程

 

·     未使能TTL複製功能:Ingress節點為IP報文壓入標簽時,不會將原IP報文中的TTL值複製到新增加的標簽的TTL域,標簽的TTL取值為255。LSR轉發標簽報文時,對標簽的TTL值做減一操作。LSR彈出標簽時,不修改IP TTL的值。使用這種方式時,MPLS骨幹網中的節點對用戶網絡的報文不可見。Tracert的結果不包括MPLS骨幹網絡中的每一跳,從而隱藏MPLS骨幹網絡的結構。

圖1-7 未使能TTL複製功能時的處理過程

 

2. 配置限製和指導

TTL複製功能對已存在的LSP不生效。對於已存在的LSP,執行mpls ttl propagate命令後,需要執行以下操作才能生效:

·     對於靜態LSP,需要重新配置靜態LSP;

·     對於動態建立的LSP,需要執行reset mpls ldp命令重啟LDP會話。

在MPLS網絡內部,MPLS報文多層標簽之間的TTL值總是互相複製。本功能隻決定是否將IP TTL複製到標簽的TTL域、是否將標簽的TTL複製到IP的TTL域。

建議在LSP經過的LSR上配置相同的TTL域處理方式。

如果配置mpls ttl propagate vpn命令使能對VPN報文的TTL複製功能,則建議在同一個VPN的所有PE上都使能此功能,以保證不同的PE上執行Tracert得到的結果一致。

3. 配置步驟

(1)     進入係統視圖。

system-view

(2)     使能TTL複製功能。

mpls ttl propagate { public | vpn }

缺省情況下,對於通過公網進行轉發的報文,TTL複製功能處於開啟狀態;對於通過VPN進行轉發的報文,TTL複製功能處於關閉狀態。

1.8  使能MPLS的TTL超時消息發送功能

1. 功能簡介

使能MPLS的TTL超時消息發送功能後,當LSR收到TTL為1的MPLS報文時,LSR會生成ICMP的TTL超時消息。對於一層標簽的MPLS報文,LSR沿著本地IP路由返回ICMP TTL超時消息;對於多層標簽的MPLS報文,LSR沿著發送MPLS報文的LSP轉發ICMP TTL超時消息,由Egress節點將該消息返回給發送者。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     使能MPLS的TTL超時消息發送功能。

mpls ttl expiration enable

缺省情況下,MPLS的TTL超時消息發送功能處於開啟狀態。

1.9  開啟MPLS模塊的告警功能

1. 功能簡介

開啟MPLS模塊的告警功能後,該模塊會生成告警信息,用於報告該模塊的重要事件。生成的告警信息將發送到設備的SNMP模塊,通過設置SNMP中告警信息的發送參數,來決定告警信息輸出的相關屬性。

有關告警信息的詳細介紹,請參見“網絡管理和監控配置指導”中的“SNMP”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟MPLS模塊的告警功能。

snmp-agent trap enable mpls

缺省情況下,MPLS模塊的告警功能處於關閉狀態。

1.10  開啟MPLS模塊的私有告警功能

1. 功能簡介

開啟MPLS模塊的私有告警功能後,當MPLS資源耗盡、MPLS標簽使用率超過上限閾值或者低於下限閾值、靜態LSP狀態發生變化等事件發生時,會產生告警信息。這些告警信息未在RFC中規定,是Comware私有的告警信息。生成的告警信息將發送到設備的SNMP模塊,通過設置SNMP中告警信息的發送參數,來決定告警信息輸出的相關屬性。

有關告警信息的詳細介紹,請參見“網絡管理和監控配置指導”中的“SNMP”。

2. 配置步驟

(1)     進入係統視圖。

system-view

(2)     開啟MPLS模塊的私有告警功能。

snmp-agent trap enable mpls-private [ entryres–exhausted | hard-resource | label-threshold | label-total | resources-exceeded | slsp-label-dup | slsp-up-down | sr-label-conflict | tunnel-to-vpn ] *

缺省情況下,MPLS模塊的私有告警功能處於關閉狀態。

(3)     (可選)配置MPLS標簽使用率的告警閾值。

mpls label-usage threshold-alarm percent { dynamic | egress | egress6 | l3vpn | srgb | srlb | static | vpls | vpws } upper-limit upper-percent lower-limit lower-percent

缺省情況下,所有類型MPLS標簽的使用率告警上限閾值均為80%、下限閾值均為70%。

1.11  MPLS顯示和維護

在完成上述配置後,在任意視圖下執行display命令可以顯示配置後MPLS的運行情況,用戶可以通過查看顯示信息驗證配置的效果。

在用戶視圖下執行reset命令可以清除MPLS統計信息。

表1-1 MPLS顯示和維護

操作

命令

顯示ILM表項信息

(獨立運行模式)

display mpls forwarding ilm [ label ] [ slot slot-number ]

(IRF模式)

display mpls forwarding ilm [ label ] [ chassis chassis-number slot slot-number ]

顯示NHLFE表項信息

(獨立運行模式)

display mpls forwarding nhlfe [ nid ] [ slot slot-number ]

(IRF模式)

display mpls forwarding nhlfe [ nid ] [ chassis chassis-number slot slot-number ]

顯示使能了MPLS能力接口的MPLS相關信息

display mpls interface [ interface-type interface-number ]

顯示MPLS標簽的使用狀態

display mpls label { label-value1 [ to label-value2 ] | all }

顯示LSP信息

display mpls lsp [ egress | in-label label-value | ingress | outgoing-interface interface-type interface-number | protocol { bgp | ldp | local | static } | transit ] [ vpn-instance vpn-instance-name ] [ ipv4-address mask-length | ipv6 [ ipv6-address prefix-length ] ] [ verbose ]

顯示MPLS的NIB(Nexthop Information Base,下一跳信息庫)信息

display mpls nib [ nib-id ]

顯示MPLS NHLFE表項索引的使用狀態

display mpls nid [ nid-value1 [ to nid-value2 ] ]

顯示MPLS彙總信息

display mpls summary

 

 

不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!

BOB登陆
官網
聯係我們