本產品的文件集力求使用無偏見用語。針對本文件集的目的,無偏見係定義為未根據年齡、身心障礙、性別、種族身分、民族身分、性別傾向、社會經濟地位及交織性表示歧視的用語。由於本產品軟體使用者介面中硬式編碼的語言、根據 RFP 文件使用的語言,或引用第三方產品的語言,因此本文件中可能會出現例外狀況。深入瞭解思科如何使用包容性用語。
思科已使用電腦和人工技術翻譯本文件,讓全世界的使用者能夠以自己的語言理解支援內容。請注意,即使是最佳機器翻譯,也不如專業譯者翻譯的內容準確。Cisco Systems, Inc. 對這些翻譯的準確度概不負責,並建議一律查看原始英文文件(提供連結)。
本檔案將說明遠端無回圈替代(LFA)機制如何在啟用多重協定標籤交換(MPLS)的網路中提供流量的快速重新路由。
遠端LFA提供了一種機制,在該機制中,如果直接LFA路徑不可用,則可將流量通過隧道傳輸到遠端節點,該節點仍可在50毫秒的週轉時間內將流量傳送到終端目標。
思科建議您瞭解:
本文件所述內容不限於特定軟體和硬體版本。
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路正在作用,請確保您已瞭解任何指令可能造成的影響。
在當今快節奏網路中,對網路的任何中斷(哪怕只有幾秒鐘)都可能會妨礙敏感應用。如果沿主路徑的網路中存在節點或鏈路故障,則資料包可能會被丟棄,直到點路由協定(如OSPF、中間系統到中間系統(ISIS)和增強型內部網關路由協定(EIGRP)收斂為止。鏈路狀態協定(如OSPF和ISIS)沒有類似EIGRP的機制,以便預先計算備份路由,以便在主路由出現故障時使用。
直連的LFA和遠端LFA是兩個與OSPF和ISIS結合使用的機制,以便具有備份路由/路徑。在主路由發生故障時,使用此備份路徑,並且僅在點OSPF或ISIS重新收斂之前使用。這有助於在OSPF或ISIS收斂時將資料包傳送到目的地,如圖所示。
鏈路標有各自的OSPF開銷。從R1到10.6.6.6的開銷是21,它的主要路徑是R1 > R5 > R6。
R1 > R5 > R6 > Loopback0 // OSPF開銷21
當R2檢查直接LFA不等式時,它不會傳遞它們,因此不能為10.6.6.6提供直接LFA路徑:
D(N,D) < D(N,S) + D(S,D) // Link Protection 41 < 10 + 21 // Equality fails
由於R2未通過提供直接LFA路徑所需的基本條件,因此,如果R1-R5鏈路發生故障,R2將無法作為備用路徑。
有關直接LFA的詳細資訊,請參閱。
但是,如果在R1-R5發生故障期間,來自R1的流量可以通過隧道傳輸到R3,則可以實現備用備份路徑。這種將資料包通道到可提供LFA路徑的遠端節點的機制稱為遠端LFA。通過隧道發往R3的資料包被轉發到R6時不會受到任何阻礙,因為鏈路出現故障,R1-R5沒有進入其主路徑到達10.6.6.6,如圖所示。
所構建的隧道是MPLS LDP隧道。因此,它要求在環境中啟用LDP。但是,運行遠端LFA的前提是直接LFA,否則LDP隧道無法啟動。
對於遠端LFA很少使用術語,此處對這些術語進行解釋。
首先根據直接LFA路徑可用性檢查所有字首以便保護。沒有直接LFA保護的字首將考慮用於遠端LFA保護。
用於啟用直連LFA的命令:
fast-reroute per-prefix enable area 0 prefix-priority high fast-reroute keep-all-paths
用於啟用遠端LFA的命令:
fast-reroute per-prefix remote-lfa area 0 tunnel mpls-ldp
interface Loopback0
ip address 10.1.1.1 255.255.255.255
!
interface Ethernet0/0
ip address 10.0.12.1 255.255.255.0
mpls ip
!
interface Ethernet0/1
no ip address
!
interface Ethernet0/2
ip address 10.0.15.1 255.255.255.0
mpls ip
router ospf 100
fast-reroute per-prefix enable area 0 prefix-priority high
fast-reroute per-prefix remote-lfa area 0 tunnel mpls-ldp
fast-reroute keep-all-paths
network 10.0.0.0 0.255.255.255 area 0
interface Loopback0
ip address 10.2.2.2 255.255.255.255
!
interface Ethernet0/0
ip address 10.0.12.2 255.255.255.0
mpls ip
!
interface Ethernet0/1
ip address 10.0.23.2 255.255.255.0
mpls ip
router ospf 100
fast-reroute per-prefix enable area 0 prefix-priority high
fast-reroute per-prefix remote-lfa area 0 tunnel mpls-ldp
fast-reroute keep-all-paths
network 10.0.0.0 0.255.255.255 area 0
interface Loopback0
ip address 10.3.3.3 255.255.255.255
!
interface Ethernet0/0
ip address 10.0.34.3 255.255.255.0
mpls ip
!
interface Ethernet0/1
ip address 10.0.23.3 255.255.255.0
mpls ip
router ospf 100
fast-reroute per-prefix enable area 0 prefix-priority high
fast-reroute per-prefix remote-lfa area 0 tunnel mpls-ldp
fast-reroute keep-all-paths
network 10.0.0.0 0.255.255.255 area 0
interface Loopback0
ip address 10.4.4.4 255.255.255.255
!
interface Ethernet0/0
ip address 10.0.34.4 255.255.255.0
mpls ip
!
interface Ethernet0/1
ip address 10.0.45.4 255.255.255.0
mpls ip
router ospf 100
fast-reroute per-prefix enable area 0 prefix-priority high
fast-reroute per-prefix remote-lfa area 0 tunnel mpls-ldp
fast-reroute keep-all-paths
network 10.0.0.0 0.255.255.255 area 0
interface Loopback0
ip address 10.5.5.5 255.255.255.255
!
interface Ethernet0/0
ip address 10.0.56.5 255.255.255.0
!
interface Ethernet0/1
ip address 10.0.45.5 255.255.255.0
mpls ip
!
interface Ethernet0/2
ip address 10.0.15.5 255.255.255.0
mpls ip
router ospf 100
fast-reroute per-prefix enable area 0 prefix-priority high
fast-reroute per-prefix remote-lfa area 0 tunnel mpls-ldp
fast-reroute keep-all-paths
network 10.0.0.0 0.255.255.255 area 0
interface Loopback0
ip address 10.6.6.6 255.255.255.0
!
interface Ethernet0/0
ip address 10.0.56.6 255.255.255.0
mpls ip
router ospf 100
fast-reroute per-prefix enable area 0 prefix-priority high
fast-reroute keep-all-paths
network 10.0.0.0 0.255.255.255 area 0
遠端LFA計算基於每個主節點下一跳進行。如果有兩個字首共用同一個主下一跳,則所有字首都將共用同一個LFA隧道和PQ節點或釋放節點。遠端LFA計算導致選擇R3作為PQ或釋放節點,如下圖所示。
對於R6的環回10.6.6.6,流量的主要路徑是通過R1 > R5 > R6,如這裡所示。
R1#show ip route 10.6.6.6
Routing entry for 10.6.6.6/32
Known via "ospf 100", distance 110, metric 21, type intra area
Last update from 10.0.15.5 on Ethernet0/2, 00:08:56 ago
Routing Descriptor Blocks:
* 10.0.15.5, from 10.6.6.6, 00:08:56 ago, via Ethernet0/2 // Primary path
Route metric is 21, traffic share count is 1
Repair Path: 10.3.3.3, via MPLS-Remote-Lfa3 // Also a backup MPLS remote tunnel has been established
此備份隧道在R1和PQ/釋放節點R3之間自動設定,此節點已由演算法計算。這會導致R1和R3之間建立目標LDP會話以交換標籤。
R1#show mpls ldp neighbor 10.3.3.3
Peer LDP Ident: 10.3.3.3:0; Local LDP Ident 10.1.1.1:0
TCP connection: 10.3.3.3.22164 - 10.1.1.1.646
State: Oper; Msgs sent/rcvd: 28/29; Downstream
Up time: 00:12:08
LDP discovery sources:
Targeted Hello 10.1.1.1 -> 10.3.3.3, active, passive
Addresses bound to peer LDP Ident:
10.0.34.3 10.3.3.3 10.0.23.3
PQ/release(R3)節點使用在R1和R3之間構建的目標LDP會話,以便與R1共用受保護字首(本例中為10.6.6.6)的MPLS標籤。此處可以看到R3的MPLS標籤18用於向R6的環回執行流量的標籤交換。此標籤18由R3通過LDP與R1共用,並作為備份標籤儲存在R1上。
R1#show ip cef 10.6.6.6
10.6.6.6/32 // 23 is primary label
nexthop 10.0.15.5 Ethernet0/2 label [23|18] // 18 is backup label shared by R3
repair: attached-nexthop 10.3.3.3 MPLS-Remote-Lfa3
R1#show mpls forwarding-table 10.3.3.3
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
21 21 10.3.3.3/32 0 Et0/0 10.0.12.2
R3#show mpls forwarding-table 10.6.6.6
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or Tunnel Id Switched interface
18 18 10.6.6.6/32 0 Et0/0 10.0.34.4
只要R1-R5鏈路處於活動狀態(主路徑),流量就會通過帶有標籤23的MPLS LSP轉發(通過主路徑轉發到10.6.6.6的標籤)。 但是,當R1-R5鏈路斷開時,流量會通過MPLS-Remote-Lfa3的修復路徑進行交換。此故障期間R1的IP資料包會加上一個額外的標籤。內部標籤是通過目標LDP會話獲知的,而外部標籤是為了到達PQ節點(本例中為R3),如圖所示。
外部標籤內部標籤內部IP資料包
因此,流量被標示為使用外部標籤21進行交換以到達PQ節點R3。一旦流量到達R3,外部標籤即被移除(或者由於倒數第二跳跳彈出而R2可能移除)。R3發現內部標籤值18,並檢查其MPLS轉發表並將其相應地轉發,如圖所示。
使用本節內容,確認您的組態是否正常運作。
驗證功能
如前所述,受保護的示例字首是10.6.6.6/32(即R6的loopback0)。R1到達R6環回的主要路徑是通過R1 > R5 > R6,如輸出所示。在這些輸出中,除了主轉發路徑之外,還列出了R1和R5之間的主鏈路斷開時使用的另一個修復路徑:
R1#show ip int brief | in up
Ethernet0/0 10.0.12.1 YES NVRAM up up
Ethernet0/2 10.0.15.1 YES NVRAM up up
Loopback0 10.1.1.1 YES NVRAM up up
MPLS-Remote-Lfa3 10.0.12.1 YES unset up up
MPLS-Remote-Lfa4 10.0.15.1 YES unset up up
R1#show ip route 10.6.6.6
Routing entry for 10.6.6.6/32
Known via "ospf 100", distance 110, metric 21, type intra area
Last update from 10.0.15.5 on Ethernet0/2, 01:45:54 ago
Routing Descriptor Blocks:
* 10.0.15.5, from 10.6.6.6, 01:45:54 ago, via Ethernet0/2
Route metric is 21, traffic share count is 1
Repair Path: 10.3.3.3, via MPLS-Remote-Lfa3
R1#show ip ospf rib 10.6.6.6
OSPF Router with ID (10.1.1.1) (Process ID 100)
Base Topology (MTID 0)
OSPF local RIB
Codes: * - Best, > - Installed in global RIB
LSA: type/LSID/originator
*> 10.6.6.6/32, Intra, cost 21, area 0
SPF Instance 10, age 01:48:22
Flags: RIB, HiPrio
via 10.0.15.5, Ethernet0/2
Flags: RIB
LSA: 1/10.6.6.6/10.6.6.6
repair path via 10.3.3.3, MPLS-Remote-Lfa3, cost 40 // MPLS LFA tunnel chosen as
Flags: RIB, Repair, IntfDj, BcastDj, CostWon backup
LSA: 1/10.6.6.6/10.6.6.6
因此,在主鏈路故障(R1-R5)後,在OSPF收斂期間,使用MPLS修復隧道交換流量。此隧道源自R1,終止於R3(PQ節點)10.3.3.3。它還提到為從R1到10.6.6.6的流量提供針對鏈路10.0.15.5(Ethernet 0/2)的保護。
R1#show ip ospf fast-reroute remote-lfa tunnels
OSPF Router with ID (10.1.1.1) (Process ID 100)
Area with ID (0)
Base Topology (MTID 0)
Interface MPLS-Remote-Lfa3 // Remote lfa tunnel
Tunnel type: MPLS-LDP
Tailend router ID: 10.3.3.3
Termination IP address: 10.3.3.3
Outgoing interface: Ethernet0/0
First hop gateway: 10.0.12.2
Tunnel metric: 20
Protects:
10.0.15.5 Ethernet0/2, total metric 40
目前尚無適用於此組態的具體疑難排解資訊。