簡介
本文說明為什麼運營商支援運營商(CSC)方案不支援按虛擬路由和轉發(VRF)或按客戶裝置(CE)標籤模式。此外,當您將CSC客戶從Per-Prefix遷移至任何其他VRF標籤模式時,轉發平面的行為方式。
必要條件
需求
本文件沒有特定需求。
採用元件
本文件所述內容不限於特定軟體和硬體版本。
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路正在作用,請確保您已瞭解任何指令可能造成的影響。
背景資訊
BGP第3層VPN通常在PE上支援以下MPLS標籤分配模式:
Per-Prefix:預設情況下,從CE獲取的所有路由都使用每字首模式。每個VPNv4字首生成VPN標籤。
Per-CE模式為每個BGP下一跳分配一個VPN標籤(即CE路由器每VRF模式為每個VRF分配一個VPN標籤)。預設情況下,PE上所有連線的介面和重新分發的介面將使用每個vrf聚合標籤(包括:連線、重新分佈、靜態到null0和BGP聚合)。
|
每個字首 |
每CE |
每個VRF |
標籤分配 |
每個字首一個標籤(預設) |
每個標籤一個 |
每個VRF一個標籤 |
標籤節省 |
無 |
中等 |
最大值 |
說明 |
為每個字首分配單獨的MPLS服務標籤 |
為從一個CE獲取的所有字首分配一個服務標籤 |
為VRF中學習的所有字首分配一個服務標籤 |
本文檔旨在提供在CSC場景中可以使用哪種標籤分配方法的指導。
運營商支援運營商(CSC)是在一個服務提供商需要使用另一個服務提供商提供的傳輸服務的情況下實現的。提供傳輸的服務提供商稱為骨幹運營商,而使用骨幹運營商提供的服務的服務提供商稱為客戶運營商。客戶運營商可以是ISP提供商或MPLS VPN服務提供商。
在CSC模型中,主幹和客戶運營商之間的鏈路啟用了MPLS,以在客戶運營商網路中的兩個POP站點之間提供端到端LSP路徑。在CSC模型中,向客戶運營商提供MPLS VPN服務的骨幹運營商只知道客戶運營商的內部路由。這些路由用於在兩個POP站點之間構建LSP路徑並在POP站點之間形成iBGP或MP-iBGP會話。然後,將通過此iBGP或MP-iBGP會話傳輸使用者網路。
例如,在給定的圖表中,SP1充當主幹運營商,SP2充當客戶運營商。
CSC架構中的標籤交換方法:在基於CSC的MPLS VPN網路中交換IGP標籤有兩種方式:
- 使用IGP進行標籤交換(TDP/LDP)
- 使用BGP進行標籤交換(eBGP LU)
在本例中,BGP已用於標籤交換。
設定
網路圖表
組態
最初,PE111、PE112、PE121和PE122使用預設VRF標籤模式(每個字首)。
PE111 |
PE112 |
interface GigabitEthernet0/0/0/0 vrf SP2-CSC ipv4 address 10.11.111.111255.255.255.0 ! 路由器靜態 vrf SP2-CSC address-family ipv4 unicast 10.11.111.11/32 GigabitEthernet0/0/0/0 ! ! 路由器isis IGP is-type level-2-only 網路49.0001.0000.0000.0111.00 address-family ipv4 unicast 度量樣式範圍 通告僅被動 mpls traffic-eng level-2-only mpls traffic-eng router-id Loopback0 ! interface Loopback0 被動 address-family ipv4 unicast ! ! interface GigabitEthernet0/0/0/4 點對點 address-family ipv4 unicast fast-reroute per-prefix fast-reroute per-prefix remote-lfa tunnel mpls-ldp ! ! interface GigabitEthernet0/0/0/5 點對點 address-family ipv4 unicast fast-reroute per-prefix fast-reroute per-prefix remote-lfa tunnel mpls-ldp ! ! ! router bgp 65001 vrf SP2-CSC rd自動 address-family ipv4 unicast 重新分配已連線 allocate-label all ! neighbor 10.11.111.11 remote-as 65002 說明SP2 address-family ipv4 labeled-unicast route-policy PASS in route-policy PASS as-override ! ! ! |
interface GigabitEthernet0/0/0/4 vrf SP2-CSC ipv4 address 10.12.112.112 255.255.255.0 ! 路由器靜態 vrf SP2-CSC address-family ipv4 unicast 10.12.112.12/32 GigabitEthernet0/0/0/4 ! ! 路由器isis IGP is-type level-2-only 網路49.0001.0000.0000.0112.00 address-family ipv4 unicast 度量樣式範圍 通告僅被動 mpls traffic-eng level-2-only mpls traffic-eng router-id Loopback0 ! interface Loopback0 被動 address-family ipv4 unicast ! ! interface GigabitEthernet0/0/0/5 點對點 address-family ipv4 unicast fast-reroute per-prefix fast-reroute per-prefix remote-lfa tunnel mpls-ldp ! ! ! ! ! ! ! ! ! ! router bgp 65001 vrf SP2-CSC rd自動 address-family ipv4 unicast 重新分配已連線 allocate-label all ! neighbor 10.12.112.12 remote-as 65002 說明SP2 address-family ipv4 labeled-unicast route-policy PASS in route-policy PASS as-override ! ! ! |
驗證
使用本節內容,確認您的組態是否正常運作。
預設情況下,PE路由器為從eBGP鄰居獲知的每個字首(每個字首標籤模式)分配單獨的本地標籤。如以下輸出擷取所示。
RP/0/0/CPU0:PE111#show bgp vpnv4 unicast vrf SP2-CSC 172.16.1.11/32 | i Local Label
Local Label: 24006
RP/0/0/CPU0:PE111#show bgp vpnv4 unicast vrf SP2-CSC 172.16.1.12/32 | i Local Label
Local Label: 24014
RP/0/0/CPU0:PE111#show bgp vpnv4 unicast vrf SP2-CSC 172.16.1.13/32 | i Local Label
Local Label: 24007
LFIB table operation for respective Local Label is SWAP (with Outgoing Label) and send the packet towards Outgoing interface Gi0/0/0/0 (towards eBGP neighbor).
RP/0/0/CPU0:PE111#show mpls forwarding labels 24006
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
24006 Pop 172.16.1.11/32[V] Gi0/0/0/0 10.11.111.11 0
Similar results can be verified at other PE routers (PE112, PE121, PE122) for the BGP LU routes learned from eBGP neighbor.
Trace results from CE11 to CE12
CE11#traceroute 192.168.112.1 source lo0 numeric
Type escape sequence to abort.
Tracing the route to 192.168.112.1
VRF info: (vrf in name/id, vrf out name/id)
1 192.168.11.13 2 msec 1 msec 2 msec
2 10.12.13.12 [MPLS: Labels 24010/24012 Exp 0] 36 msec 47 msec 36 msec
3 10.12.112.112 [MPLS: Labels 24013/24012 Exp 0] 39 msec 36 msec 39 msec
4 10.1.112.1 [MPLS: Labels 24003/24011/24012 Exp 0] 43 msec 43 msec 38 msec
5 10.1.121.121 [MPLS: Labels 24011/24012 Exp 0] 39 msec 39 msec 37 msec
6 10.21.121.21 [MPLS: Labels 24001/24012 Exp 0] 36 msec 34 msec 36 msec
7 10.21.23.23 [MPLS: Label 24012 Exp 0] 36 msec 37 msec 38 msec
8 192.168.12.12 [AS 65012] 36 msec * 39 msec
資料平面轉送期間的各個標籤堆疊如下圖所示:
每個VRF的標籤模式
在PE111、PE112、PE121和PE122上將標籤模式更改為按vrf模式後。
PE1XX:
RP/0/0/CPU0:PE111(config)#router bgp 65001
RP/0/0/CPU0:PE111(config-bgp)#vrf SP2-CSC
RP/0/0/CPU0:PE111(config-bgp-vrf)#address-family ipv4 unicast
RP/0/0/CPU0:PE111(config-bgp-vrf-af)#label mode per-vrf
RP/0/0/CPU0:PE111(config-bgp-vrf-af)#root
RP/0/0/CPU0:PE111(config)#show
Tue Jan 25 13:45:43.444 UTC
Building configuration...
router bgp 65001
vrf SP2-CSC
address-family ipv4 unicast
label mode per-vrf
!
!
!
end
RP/0/0/CPU0:PE111(config)#commit
現在,每個PE路由器將為所有始發vpnv4字首(每個vrf標籤模式)分配相同的MPLS標籤。 如以下輸出擷取所示。
例如,PE111最初出現。
RP/0/0/CPU0:PE111#sh bgp vpnv4 unicast vrf SP2-CSC 172.16.1.11/32 | i Local Label
Local Label: 24003
RP/0/0/CPU0:PE111#sh bgp vpnv4 unicast vrf SP2-CSC 172.16.1.12/32 | i Local Label
Local Label: 24003
RP/0/0/CPU0:PE111#sh bgp vpnv4 unicast vrf SP2-CSC 172.16.1.13/32 | i Local Label
Local Label: 24003
MPLS轉送平面
各個本地標籤的LFIB表操作是「聚合」(傳出標籤),這意味著取消標籤並為它執行FIB查詢以找出傳出介面。
RP/0/0/CPU0:PE111#sh mpls forwarding labels 24003
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
24003 Aggregate SP2-CSC: Per-VRF Aggr[V] \
SP2-CSC 8798
Let us try to Ping from CE11 to CE21
CE11#ping 192.168.112.1 source lo0
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.112.1, timeout is 2 seconds:
Packet sent with a source address of 192.168.111.1
.....
Success rate is 0 percent (0/5))
PE121(Gi0/0/0/5)的Wireshark捕獲
收到ICMP回應(ping)要求封包,但找不到回應。
Source IP: 192.168.111.1,
Destination IP: 192.168.112.1
Top Label: 24006
Bottom Label: 24012
因為LFIB操作是Aggregate,這意味著將傳入的MPLS資料包轉換為IP資料包,然後對其執行FIB查詢以找出傳出介面。因此,對於前面提到的ICMP請求資料包,PE121將刪除所有標籤,並嘗試在「VRF:SP2-CSC",用於192.168.112.1/32。它將找不到任何CEF條目,因此它只會丟棄資料包。
這就是為什麼CSC方案不支援每vrf標籤模式。
每個CE的標籤模式
在PE111、PE112、PE121和PE122上將標籤模式更改為「每ce」。
PE1XX:
RP/0/0/CPU0:PE111(config)#router bgp 65001
RP/0/0/CPU0:PE111(config-bgp)#vrf SP2-CSC
RP/0/0/CPU0:PE111(config-bgp-vrf)#address-family ipv4 unicast
RP/0/0/CPU0:PE111(config-bgp-vrf-af)#label mode per-ce
RP/0/0/CPU0:PE111(config-bgp-vrf-af)#root
RP/0/0/CPU0:PE111(config)#show
Building configuration...
router bgp 65001
vrf SP2-CSC
address-family ipv4 unicast
label mode per-ce
!
!
!
end
RP/0/0/CPU0:PE111(config)#commit
Rest of the routers will be configured similarly
現在,每個PE路由器將為每個下一跳分配一個MPLS標籤(因此每個連線的CE鄰居關係)。 如以下輸出擷取所示。
e.g. PE111 originates these prefixes and allocated same label - 24006
RP/0/0/CPU0:PE111#sh bgp vpnv4 unicast vrf SP2-CSC 172.16.1.11/32 | i Local Label
Local Label: 24006
RP/0/0/CPU0:PE111#sh bgp vpnv4 unicast vrf SP2-CSC 172.16.1.12/32 | i Local Label
Local Label: 24006
RP/0/0/CPU0:PE111#sh bgp vpnv4 unicast vrf SP2-CSC 172.16.1.13/32 | i Local Label
Local Label: 24006
MPLS轉送平面
本地標籤24006沒有LFIB條目。
RP/0/0/CPU0:PE111#sh mpls forwarding labels 24006
RP/0/0/CPU0:PE111#
Let us try to Ping from CE11 to CE12
CE11#ping 192.168.112.1 source lo0
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.112.1, timeout is 2 seconds:
Packet sent with a source address of 192.168.111.1
.....
Success rate is 0 percent (0/5)
PE121(Gi0/0/0/5)的Wireshark捕獲
收到ICMP回應(ping)要求封包,但找不到回應。
Source IP: 192.168.111.1,
Destination IP: 192.168.112.1
Top Label: 24009
Bottom Label: 24012
在PE121上啟用調試MPLS丟棄,可以看到ICMP資料包在PE121上因沒有可用的LFIB條目而被丟棄。
RP/0/0/CPU0:PE121#debug mpls drop
RP/0/0/CPU0:PE121#show logging | i 24009
RP/0/0/CPU0:Jan 25 16:13:59.016 : netio[314]: ~mpls_netio_switch.c:2795~ Pkt Drop: GigabitEthernet0_0_0_5, No LFIB entry found for in_label 24009
RP/0/0/CPU0:Jan 25 16:14:01.016 : netio[314]: ~mpls_netio_switch.c:2795~ Pkt Drop: GigabitEthernet0_0_0_5, No LFIB entry found for in_label 24009
RP/0/0/CPU0:Jan 25 16:14:03.026 : netio[314]: ~mpls_netio_switch.c:2795~ Pkt Drop: GigabitEthernet0_0_0_5, No LFIB entry found for in_label 24009
RP/0/0/CPU0:Jan 25 16:14:05.016 : netio[314]: ~mpls_netio_switch.c:2795~ Pkt Drop: GigabitEthernet0_0_0_5, No LFIB entry found for in_label 24009
RP/0/0/CPU0:Jan 25 16:14:07.015 : netio[314]: ~mpls_netio_switch.c:2795~ Pkt Drop: GigabitEthernet0_0_0_5, No LFIB entry found for in_label 24009
這就是為什麼CSC方案不支援每單位標籤模式。
疑難排解
目前尚無適用於此組態的具體疑難排解資訊。
結論
因此得出結論,您不能對CSC客戶使用每VRF或每CE VRF標籤模式。每個字首是CSC客戶支援的唯一VRF標籤模式。
相關資訊