简介
本文档介绍如何使用部分SR部署为基于LDP的流量提供SR优势,包括域间MPLS使用案例中可能应用SR。
前提条件
要求
Cisco 建议您了解以下主题:
使用的组件
本文档中的信息基于以下软件和硬件版本:
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
本文档概述了当支持SR的路由器和不支持SR的路由器混用在同一网络内,并且更准确地说是在同一路由域中时,SR与LDP交互的机制。
在节点上运行的组播控制平面客户端(MCC)必须确保它安装在节点的MPLS数据平面中的传入标签被唯一分配,并且分段路由使用分段路由全局块(SRGB)进行标签分配。使用SRGB可以使SR与任何其他MCC共存。
提示:此信息有助于您使用Inter-AS选项C为MPLS SR和MPLS LDP提供Inter-AS解决方案。
问题
使用RFC 4364中定义的Inter-AS选项C,在具有SR MPLS控制平面的异类环境中的SR部署与MPLS LDP控制平面进行互操作。
本文档介绍服务提供商网络使用MPLS LDP和SR MPLS提供使用AS间选项C的虚拟专用网络的方法。
解决方案
AS间选项C的简要概述:
AS间选项C是RFC 4364中介绍的用于互连多AS主干的第三个选项。这是迄今为止三种设计中最具可扩展性的选项,而且它有其自身的适用场景,要正确应用此设计,我们必须了解这些场景。
选项C是可伸缩的,因此是一个很好的候选选项。ASBR不传输任何VPN路由,它们只负责在自己的AS内分配PE的标记IPv4路由。
为了提高可扩展性,一个MP-EBGP VPNv4会话在PE或RR之间传输所有VPN路由(外部路由)。如果使用RR交换外部路由,则必须保留VPNv4路由的下一跳。
ASBR使用EBGP在AS(内部路由)之间交换内部PE路由信息。这些内部路由对应通过PE或RR之间的多跳MP-EBGP会话通告的外部路由的BGP下一跳。ASBR通告的内部路由可用于在PE之间建立MP-EBGP会话,并允许从入口到出口PE建立LSP。
从可扩展性角度来看,选项C是一个非常好的解决方案,是采用同一SP多AS网络的途径。
分段路由的简要概述:
分段路由(SR)利用源路由和隧道模式。节点通过一组受控的指令(称为数据段)引导数据包,方法是使用SR报头对数据包进行预置。网段可以表示任何指令、拓扑或基于服务。SR允许通过任何拓扑路径和服务链实施流量,同时仅在SR域的入口节点保持每个流量的状态。分段路由架构可以直接应用于MPLS数据平面,转发平面上变化很小。它需要对现有链路状态路由协议进行次要扩展。分段路由还可以使用新型路由扩展报头应用于IPv6。
将网段编码为MPLS标签。有序的数据段列表被编码为标签堆栈。要处理的数据段位于堆栈的顶部。完成数据段后,相关标签会从堆栈中弹出。 根据传统MPLS转发,分段路由MPLS数据平面操作是推送、交换和pop。在“段布线”中定义了以下段类型:
SR全局块
分段路由全局块(SRGB)是为LSD中的分段路由保留的标签值范围。SRGB标签值被指定为支持SR的节点的前缀段标识符(SID),并在整个域中具有全局意义。
- SR标签范围不能从16,000以下开始。默认SR全局块为:16,000 - 24,000。
- SRGB配置不是特定于地址系列的,因为中定义的路由器功能TLV的“SR功能子TLV”不是特定于地址系列的。
- 如果CLI导致扩展或移动默认SRGB,则要求重新加载即可,但前提是客户端的标签在新范围中。
- 在配置SRGB之前,管理员需要确保为分段路由配置的标签库的一部分是空闲的,并且未被任何其他MPLS LSD客户端使用。
SR映射服务器
映射服务器为部分或全部已知的前缀集中分配前缀SID。路由器必须能够充当映射服务器、映射客户端,或者同时充当这两者。
- 映射服务器是一种控制平面机制,其位置与BGP路由反射器类似
- 允许用户配置非重叠SID映射条目,以指定某些或所有前缀的前缀SID。
- ISIS在“SID/标签绑定TLV”中通告本地SID映射策略
- 映射服务器必须具备恢复能力,应提供冗余
映射服务器的主要功能包括:
- 代表其他不支持SR的节点在IGP中通告前缀到SID的映射在映射服务器上配置前缀到SID的映射
- 使支持SR的节点能够与(不支持SR的)LDP节点互通,SR/LDP互通需要映射服务器
映射客户端
- 接收并解析远程接收的SID/标签绑定TLV,以创建远程SID映射条目。使用远程获取和本地配置的映射条目,构建不重叠的一致活动映射策略。
- IGP实例使用活动映射策略来(重新)计算某些或所有前缀的前缀SID。
本部分帮助您了解并配置提供商网络之间的第3层虚拟专用网络(VPN)服务,该提供商网络具有支持SR的网络对等/连接到不支持SR的网络。在本节中,您将学习如何配置RFC“4364”和使用案例中定义的选项C。
拓扑 — AS间选项C(带路由反射器)

拓扑图概述
在拓扑图的顶部,我们有一个由路由反射器、提供商边缘路由器和客户边缘路由器组成的支持SR的网络。
客户边缘路由器CE1和CE2分别具有VRF A和VRF B。这属于AS 65002。
在拓扑图底部,我们有一个支持LDP的网络,其中包含路由反射器、提供商边缘路由器和客户边缘路由器。
客户边缘路由器CE3和CE4分别具有VRF A和VRF B。这属于AS65001。
启用SR和LDP的网络两端的VRF A和VRF B需要相互通信。
IP编址方案
主机名 |
IP Address |
RR-01 |
10.0.0.1 |
RR-02 |
10.0.0.2 |
PE1 |
10.0.0.3 |
PE2 |
10.0.0.4 |
CE1 |
10.0.0.5 |
CE2 |
10.0.0.6 |
RR-03 |
10.0.1.1 |
RR-04 |
10.0.1.2 |
PE5 |
10.0.1.3 |
PE6 |
10.0.1.4 |
CE3 |
10.0.1.5 |
CE4 |
10.0.1.6 |
配置
描述了设备的配置。
RR-1
segment-routing mpls
!
mapping-server
!
prefix-sid-map
address-family ipv4
10.0.0.1/32 index 200 range 10
exit-address-family
!
!
interface Loopback0
description Loopback0
ip address 10.0.0.1 255.255.255.255
ip router isis 65002
!
!
router isis 65002
net xx.xxxx.xxxx.xxxx.xx
metric-style wide
segment-routing mpls
segment-routing prefix-sid-map advertise-local
!
router bgp 65002
bgp router-id 10.0.0.1
neighbor 10.0.0.3 remote-as 65002
neighbor 10.0.0.3 description rr client
neighbor 10.0.0.3 update-source Loopback0
neighbor 10.0.0.4 remote-as 65002
neighbor 10.0.0.4 description rr client
neighbor 10.0.0.4 update-source Loopback0
neighbor 10.0.0.2 remote-as 65002
neighbor 10.0.0.2 description iBGP peer
neighbor 10.0.0.2 update-source Loopback0
neighbor 10.0.1.1 remote-as 65001
neighbor 10.0.1.1 ebgp-multihop 255
neighbor 10.0.1.1 update-source Loopback0
neighbor 10.0.1.2 remote-as 65001
neighbor 10.0.1.2 ebgp-multihop 255
neighbor 10.0.1.2 update-source Loopback0
!
address-family ipv4
neighbor 10.0.0.3 activate
neighbor 10.0.0.3 route-reflector-client
neighbor 10.0.0.4 activate
neighbor 10.0.0.4 route-reflector-client
neighbor 10.0.0.2 activate
neighbor 10.0.1.1 activate
neighbor 10.0.1.2 activate
exit-address-family
!
address-family vpnv4
neighbor 10.0.0.3 activate
neighbor 10.0.0.3 send-community extended
neighbor 10.0.0.3 route-reflector-client
neighbor 10.0.0.4 activate
neighbor 10.0.0.4 send-community extended
neighbor 10.0.0.4 route-reflector-client
neighbor 10.0.0.2 activate
neighbor 10.0.0.2 send-community extended
neighbor 10.0.1.1 activate
neighbor 10.0.1.1 send-community both
neighbor 10.0.1.1 next-hop-unchanged
neighbor 10.0.1.2 activate
neighbor 10.0.1.2 send-community both
neighbor 10.0.1.2 next-hop-unchanged
exit-address-family
!
RR-2
segment-routing mpls
!
mapping-server
!
prefix-sid-map
address-family ipv4
10.0.0.2/32 index 200 range 10
exit-address-family
!
!
interface Loopback0
description Loopback0
ip address 10.0.0.2 255.255.255.255
ip router isis 65002
!
!
router isis 65002
net xx.xxxx.xxxx.xxxx.xx
metric-style wide
segment-routing mpls
segment-routing prefix-sid-map advertise-local
!
router bgp 65002
bgp router-id 10.0.0.2
neighbor 10.0.0.3 remote-as 65002
neighbor 10.0.0.3 description rr client
neighbor 10.0.0.3 update-source Loopback0
neighbor 10.0.0.4 remote-as 65002
neighbor 10.0.0.4 description rr client
neighbor 10.0.0.4 update-source Loopback0
neighbor 10.0.0.1 remote-as 65002
neighbor 10.0.0.1 description iBGP peer
neighbor 10.0.0.1 update-source Loopback0
neighbor 10.0.1.1 remote-as 65001
neighbor 10.0.1.1 ebgp-multihop 255
neighbor 10.0.1.1 update-source Loopback0
neighbor 10.0.1.2 remote-as 65001
neighbor 10.0.1.2 ebgp-multihop 255
neighbor 10.0.1.2 update-source Loopback0
!
address-family ipv4
neighbor 10.0.0.3 activate
neighbor 10.0.0.3 route-reflector-client
neighbor 10.0.0.4 activate
neighbor 10.0.0.4 route-reflector-client
neighbor 10.0.0.1 activate
neighbor 10.0.1.1 activate
neighbor 10.0.1.2 activate
exit-address-family
!
address-family vpnv4
neighbor 10.0.0.3 activate
neighbor 10.0.0.3 send-community extended
neighbor 10.0.0.3 route-reflector-client
neighbor 10.0.0.4 activate
neighbor 10.0.0.4 send-community extended
neighbor 10.0.0.4 route-reflector-client
neighbor 10.0.0.1 activate
neighbor 10.0.0.1 send-community extended
neighbor 10.0.1.1 activate
neighbor 10.0.1.1 send-community both
neighbor 10.0.1.1 next-hop-unchanged
neighbor 10.0.1.2 activate
neighbor 10.0.1.2 send-community both
neighbor 10.0.1.2 next-hop-unchanged
exit-address-family
!
PE-1
interface Loopback0
description Loopback0
ip address 10.0.0.3 255.255.255.255
ip router isis 65002
!
vrf A # Define VRF A
address-family ipv4 unicast
import route-target
65000:1
!
export route-target
65000:1
!
!
vrf B # Define VRF B
address-family ipv4 unicast
import route-target
65000:2
!
export route-target
65000:2
!
!
router isis 65002 # ISIS Level 2
is-type level-2-only
net xx.xxxx.xxxx.xxxx.xx
address-family ipv4 unicast
metric-style wide
advertise link attributes
mpls traffic-eng level-2-only
mpls traffic-eng router-id Loopback0
router-id Loopback0
segment-routing mpls sr-prefer
!
router bgp 65002 # BGP
bgp router-id 10.0.0.3
neighbor-group RR
remote-as 65002
update-source Loopback0
address-family vpnv4 unicast
!
!
neighbor 10.0.0.1
use neighbor-group RR
!
neighbor 10.0.0.2
use neighbor-group RR
vrf A
rd 65000:1
address-family ipv4 unicast
redistribute connected
allocate-label all
!
neighbor 10.0.0.5 # IP address of CE1
remote-as 61001
ebgp-multihop 255
update-source Loopback100
address-family ipv4 unicast
!
vrf B
rd 65000:2
address-family ipv4 unicast
redistribute connected
allocate-label all
!
neighbor 10.0.0.6 # IP address of CE2
remote-as 61001
ebgp-multihop 255
update-source Loopback101
address-family ipv4 unicast
!
interface GigabitEthernet1 # Link to CE-01
vrf A
ipv4 address x.x.x.x 255.255.255.0
!
interface GigabitEthernet2 # Link to CE-02
vrf B
ipv4 address x.x.x.x 255.255.255.0
!
segment-routing
global-block 16000 23999
!
RR-3
interface Loopback0
description Loopback0
ip address 10.0.1.1 255.255.255.255
ip router isis 65001
!
!
router isis 65001
net xx.xxxx.xxxx.xxxx.xx
metric-style wide
segment-routing mpls
segment-routing prefix-sid-map advertise-local
!
router bgp 65001
bgp router-id 10.0.1.1
neighbor 10.0.1.3 remote-as 65001
neighbor 10.0.1.3 description rr client
neighbor 10.0.1.3 update-source Loopback0
neighbor 10.0.1.4 remote-as 65001
neighbor 10.0.1.4 description rr client
neighbor 10.0.1.4 update-source Loopback0
neighbor 10.0.1.2 remote-as 65001
neighbor 10.0.1.2 description iBGP peer
neighbor 10.0.1.2 update-source Loopback0
neighbor 10.0.0.1 remote-as 65002
neighbor 10.0.0.1 ebgp-multihop 255
neighbor 10.0.0.1 update-source Loopback0
neighbor 10.0.0.2 remote-as 65002
neighbor 10.0.0.2 ebgp-multihop 255
neighbor 10.0.0.2 update-source Loopback0
!
address-family ipv4
neighbor 10.0.1.3 activate
neighbor 10.0.1.3 route-reflector-client
neighbor 10.0.1.4 activate
neighbor 10.0.1.4 route-reflector-client
neighbor 10.0.1.2 activate
neighbor 10.0.0.1 activate
neighbor 10.0.0.2 activate
exit-address-family
!
address-family vpnv4
neighbor 10.0.1.3 activate
neighbor 10.0.1.3 send-community extended
neighbor 10.0.1.3 route-reflector-client
neighbor 10.0.1.4 activate
neighbor 10.0.1.4 send-community extended
neighbor 10.0.1.4 route-reflector-client
neighbor 10.0.1.2 activate
neighbor 10.0.1.2 send-community extended
neighbor 10.0.0.1 activate
neighbor 10.0.0.1 send-community both
neighbor 10.0.0.1 next-hop-unchanged
neighbor 10.0.0.2 activate
neighbor 10.0.0.2 send-community both
neighbor 10.0.0.2 next-hop-unchanged
exit-address-family
!
RR-4
interface Loopback0
description Loopback0
ip address 10.0.1.2 255.255.255.255
ip router isis 65001
!
!
router isis 65001
net xx.xxxx.xxxx.xxxx.xx
metric-style wide
segment-routing mpls
segment-routing prefix-sid-map advertise-local
!
router bgp 65001
bgp router-id 10.0.1.2
neighbor 10.0.1.3 remote-as 65001
neighbor 10.0.1.3 description rr client
neighbor 10.0.1.3 update-source Loopback0
neighbor 10.0.1.4 remote-as 65001
neighbor 10.0.1.4 description rr client
neighbor 10.0.1.4 update-source Loopback0
neighbor 10.0.1.1 remote-as 65001
neighbor 10.0.1.1 description iBGP peer
neighbor 10.0.1.1 update-source Loopback0
neighbor 10.0.0.1 remote-as 65002
neighbor 10.0.0.1 ebgp-multihop 255
neighbor 10.0.0.1 update-source Loopback0
neighbor 10.0.0.2 remote-as 65002
neighbor 10.0.0.2 ebgp-multihop 255
neighbor 10.0.0.2 update-source Loopback0
!
address-family ipv4
neighbor 10.0.1.3 activate
neighbor 10.0.1.3 route-reflector-client
neighbor 10.0.1.4 activate
neighbor 10.0.1.4 route-reflector-client
neighbor 10.0.1.1 activate
neighbor 10.0.0.1 activate
neighbor 10.0.0.2 activate
exit-address-family
!
address-family vpnv4
neighbor 10.0.1.3 activate
neighbor 10.0.1.3 send-community extended
neighbor 10.0.1.3 route-reflector-client
neighbor 10.0.1.4 activate
neighbor 10.0.1.4 send-community extended
neighbor 10.0.1.4 route-reflector-client
neighbor 10.0.1.1 activate
neighbor 10.0.1.1 send-community extended
neighbor 10.0.0.1 activate
neighbor 10.0.0.1 send-community both
neighbor 10.0.0.1 next-hop-unchanged
neighbor 10.0.0.2 activate
neighbor 10.0.0.2 send-community both
neighbor 10.0.0.2 next-hop-unchanged
exit-address-family
!
PE-6
interface Loopback0
description Loopback0
ip address 10.0.1.3 255.255.255.255
ip router isis 65001
!
vrf A # Define VRF A
address-family ipv4 unicast
import route-target
65000:1
!
export route-target
65000:1
!
vrf B # Define VRF B
address-family ipv4 unicast
import route-target
65000:2
!
export route-target
65000:2
!
router isis 65001
is-type level-2-only
net xx.xxxx.xxxx.xxxx.xx
address-family ipv4 unicast
metric-style wide
advertise link attributes
mpls traffic-eng level-2-only
mpls traffic-eng router-id Loopback0
router-id Loopback0
segment-routing mpls sr-prefer
!
router bgp 65001
bgp router-id 10.0.1.3
neighbor-group RR
remote-as 65002
update-source Loopback0
address-family vpnv4 unicast
!
!
neighbor 10.0.1.1
use neighbor-group RR
!
neighbor 10.0.1.2
use neighbor-group RR
vrf A
rd 65000:1
address-family ipv4 unicast
redistribute connected
allocate-label all
!
neighbor 10.0.1.5 # IP address of CE3
remote-as 61001
ebgp-multihop 255
update-source Loopback100
address-family ipv4 unicast
!
vrf B
rd 65000:2
address-family ipv4 unicast
redistribute connected
allocate-label all
!
neighbor 10.0.1.6 # IP address of CE4
remote-as 61001
ebgp-multihop 255
update-source Loopback101
address-family ipv4 unicast
!
interface GigabitEthernet1 # Link to CE3
vrf A
ipv4 address x.x.x.x 255.255.255.0
!
interface GigabitEthernet2 # Link to CE4
vrf B
ipv4 address x.x.x.x 255.255.255.0
!
相关信息