簡介
本文回答與初學者級別的多協定標籤交換(MPLS)相關的最常見問題。
什麼是多協定標籤交換(MPLS)?
MPLS是一種資料包轉發技術,它使用標籤來做出資料轉發決策。使用MPLS時,第3層報頭分析僅執行一次(當資料包進入MPLS域時)。標籤檢測驅動後續資料包轉發。MPLS提供以下有益應用:
-
虛擬私人網路(VPN)
-
流量工程(TE)
-
服務品質(QoS)
-
通過MPLS的任何傳輸(AToM)
此外,它還降低了核心路由器上的轉發開銷。MPLS技術適用於任何網路層協定。
什麼是標籤?標籤的結構是什麼?
標籤是一個短的、四位元組的、固定長度的、本地重要的識別符號,用於標識轉發等價類(FEC)。放置在特定資料包上的標籤表示該資料包分配到的FEC。
標籤在資料包中的什麼位置?
標籤被施加到資料鏈路層(第2層)報頭和網路層(第3層)報頭之間。標籤堆疊的頂部顯示在資料包中,底部顯示在最後。網路層資料包會緊跟標籤堆疊中的最後一個標籤。
什麼是轉發等價類(FEC)?
FEC是一組IP資料包,它們以相同方式、通過相同路徑使用相同的轉發處理進行轉發。FEC可能對應到目的地IP子網,但也可能對應到邊緣LSR認為重要的任何流量類。例如,具有某個IP優先順序值的所有流量可能構成FEC。
什麼是上游標籤交換路由器(LSR)?什麼是下游LSR?
上游和下游是MPLS世界中的相對術語。它們總是指字首(更恰當的說FEC)。這些示例進一步說明了這一點。
對於FEC 10.1.1.0/24,R1是R2的下游LSR。
對於FEC 10.1.1.0/24,R2是R1的上游LSR。
對於FEC 10.1.1.0/24,R1是R2的下游LSR,R2是R3的下游LSR。
對於FEC 10.1.1.0/24,R1是R2的下游LSR。對於FEC 10.2.2.0/24,R2是R1的下游LSR。
資料從上游流向下游以到達該網路(字首)。
R4路由表將R1、R2和R3作為到達10.1.1.0/24的下一跳。
對於10.1.1.0/24,R3是否是R4的下游LSR?
否,資料從上游流向下游。
提及標籤時,術語「傳入」、「傳出」、「本地」和「遠端」意味著什麼?
考慮此拓撲中的R2和R3。R2為R3分配一個FEC F標籤L。R3將資料轉發到FEC-F時使用標籤L(因為R2是FEC-F的下游LSR)。在此情況中:
-
L是R2上F的傳入標籤
-
L是R3上FEC-F的傳出標籤
-
L是R2上FEC F的本地繫結
-
L是R3上FEC-F的遠端繫結
LSR是否可在MPLS介面上傳輸/接收本機IP封包(非MPLS)?
是,如果介面上啟用了IP。正常接收/傳輸本機資料包。IP只是另一種通訊協定。MPLS資料包具有不同的第2層編碼。接收LSR基於第2層編碼瞭解MPLS資料包。
LSR是否可以在非MPLS介面上接收/傳輸標籤的資料包?
不能。從未在介面上傳輸資料包,該介面未為該協定啟用。MPLS具有與其關聯的某個EtherType代碼(正如IP、IPX和Appletalk具有唯一的EtherType)。當Cisco路由器收到介面上未啟用Ethertype的封包時,會捨棄該封包。例如,如果路由器在未啟用Appletalk的介面上收到Appletalk資料包,則會丟棄該資料包。同樣,如果在未啟用MPLS的介面上收到MPLS資料包,則丟棄該資料包。
哪些平台和Cisco IOS支援MPLS?
Cisco系列2691、3640、3660、3725、3745、6400-NRP-1、6400-NRP-2SV、6400-NSP、Catalyst 500(含路由交換模組)(RSM)、7200、7301、7400、7500、Catalyst 6500/Cisco採用WS-SUP720-3B和WS-SUP720-3BXL、Gigabit交換器路由器(GSR)、路由處理器模組(RPM)、通用寬頻路由器(UBR)7200、AS5350和IGX8400-URM的600系列均支援MPLS。
這些平台支援作為標籤分發協定的思科標籤分發協定(TDP)。
使用Software Advisor(僅限註冊客戶)工具可以找到標籤分發協定(LDP)、資源保留協定(RSVP)和邊界網關協定(BGP)資訊。Software Advisor提供不同Cisco IOS版本和不同平台上支援的功能集的完整清單。
通用路由封裝(GRE)通道的開銷為24位元組。MPLS LSP隧道有多少開銷?
MPLS LSP隧道有一個標籤(四個位元組)或兩個標籤(例如,在使用鏈路保護快速重路由時)。與GRE隧道不同,MPLS不會更改IP報頭。標籤堆疊會套用到採用通道路徑的封包上。
LSR如何知道標籤堆疊的頂標籤、底標籤和中間標籤?
第2層報頭後面的標籤是頂標籤,S位設定為1的標籤是底標籤。任何應用程式都不需要LSR來讀取/識別中間標籤。但是,如果標籤不在堆疊頂部,並且S位設定為0,則該標籤將是中間標籤。
標籤值的範圍是多少?保留哪些標籤值?保留值表示什麼?
這些值也可在RFC3032 - MPLS標籤堆疊編碼中找到。
理論上,範圍為0到(220-1)。保留標籤值0-15,保留值4-15以供將來使用。值0-3定義為:
-
值為0表示IPv4顯式NULL標籤。此標籤表示必須彈出標籤堆疊,並且資料包轉發必須基於IPv4報頭。這麼做可協助將Exp位元維持於安全狀態,直到輸出路由器為止。它用於基於MPLS的QoS
-
值1表示路由器警報標籤。當收到的資料包在標籤堆疊的頂部包含此標籤值時,會將其傳送到本地軟體模組進行處理。實際封包轉送是由堆疊中該封包下方的標籤決定。但是,如果資料包被進一步轉發,則應在轉發之前將路由器警報標籤推回到標籤堆疊上。此標籤的使用類似於IP資料包中使用路由器警報選項(例如,使用記錄路由選項執行ping)
-
值2表示IPv6顯式NULL標籤。它指示必須彈出標籤堆疊,並且資料包轉發必須基於IPv6報頭
-
值3表示隱含NULL標籤。這是LSR可以分配和分發的標籤。但是,它實際上不會出現在封裝中。這表示LSR會從堆疊中彈出頂部標籤,並透過傳出介面(根據Lfib中的專案)轉送封包的其餘部分(已標籤或未標籤)。雖然該值可能永遠不會出現在封裝中,但需要在標籤分發協定中指定,因此會保留一個值
LDP和TDP使用什麼協定和埠號將標籤分發到LDP/TDP對等裝置?
LDP使用TCP埠646,TDP使用TCP埠711。僅當在路由器介面上配置了mpls ip時,才會在該路由器介面上開啟這些埠。使用TCP作為傳輸協定可以可靠地傳輸LDP/TDP資訊,同時具有強大的流量控制和擁塞處理機制。
Catalyst 6500和7600光纖服務路由器(OSR)上的MPLS支援存在哪些限制?
連線到MPLS域的介面必須使用光纖服務模組(OSM)之一(例如,使用並行快速轉發(PXF)複合體的任何模組)或FlexWAN模組中的介面。MPLS第3層VPN存在相同的限制。也就是說,IP幀必須輸入到OSM或FlexWAN模組介面的WAN介面上。Supervisor 720上不存在這些限制。
在哪裡可以找到MPLS配置示例?
在實施和配置:MPLS中有許多MPLS配置文檔。
哪些選項可用於負載平衡MPLS資料包?
可以使用基本IP報頭的MPLS標籤資訊和/或源地址和目的地址對MPLS資料包進行負載均衡。
我們能否通過MPLS連線在不同站點上的兩台Cisco Catalyst交換機之間配置802.1Q中繼?
當您通過MPLS連線到遠端站點時,它是第3層連線,而802.1Q中繼是第2層協定,因此不能通過MPLS連線使用802.1Q中繼。您需要具有城域乙太網連線或802.1Q隧道來擴展VLAN(由ISP提供)。在MPLS雲中,ISP通過VRF通訊。
如需詳細資訊,請參閱設定IEEE 802.1Q通道。
預設情況下,傳出MPLS EXP值是否繼承傳入IP資料包中的DSCP值,或者傳入DSCP是否受信任,且啟用了MPLS的介面上沒有任何其他配置?
是,不需要其他配置。
DHCP中繼功能是否可在MPLS VPN網路中工作?
是,DHCP請求通過MPLS VPN網路在VRF中轉發,而出口提供商邊緣將它在同一VRF中傳送到DHCP伺服器。
相關資訊