Restrictions for SR-TE
-
SR-TE statistics counters not supported.
-
The Cisco ASR 920 routers support five label stacks of which four are transport labels.
Note |
All five labels cannot be part of the SR-TE Tunnel label stack. One label must be a service label. |
-
The routers do not support unequal load balancing when using the load-share option.
-
ECMP at single SR-TE tunnel level is not supported.
-
SR-TE FRR with PoCH as the primary path is not supported. However, you can provision SR-TE tunnel without FRR over PoCH and backup tunnel over PoCH.
-
The SR-TE dynamic tunnels do not support node protection. Therefore, node protection cannot achieve less than 50ms convergence with dynamic SR-TE tunnels.
Configuring a Path Option for a TE Tunnel
The segment-routing keyword indicates that the specified path is programmed as an SR path.
Router(config)# interface tunnel 100
Router(config-if)# tunnel mpls traffic-eng path-option 1 explicit name foo segment-routing
Router(config-if)# tunnel mpls traffic-eng path-option 2 dynamic segment-routing
Router(config-if)# tunnel mpls traffic-eng path-option 3 segment-routing
When the path-option type for an operational SR tunnel is changed from SR to non-SR (for example, dynamic ), the existing forwarding entry of the tunnel is deleted.
Segment Routing can be enabled or disabled on an existing secondary or an in-use path-option. If the tunnel uses a signaled RSVP-TE explicit path-option and segment routing is enabled on that tunnel, the RSVP-TE LSP is torn, and the SR-TE LSP is instantiated using the same path-option. Conversely, if segment routing is disabled on a path-option that is in use by the primary LSP, the tunnel goes down intermittently and a new RSVP-TE LSP is signaled using the same explicit path.
If the “segment-routing” path-option is enabled on a secondary path-option (that is, not in use by the tunnel’s primary LSP), the tunnel is checked to evaluate if the newly specified SR-TE LSP path-option is valid and more favorable to use for the tunnel primary LSP.
Configuring SR Explicit Path Hops
For intra-area LSPs, the explicit path can be specified as a list of IP addresses:
Router(config)# ip explicit-path name foo
Router(config-ip-expl-path)# index 10 next-address 1.1.1.1 --> node address
Router(config-ip-expl-path)# index 20 next-address 12.12.12.2 --> link address
The explicit path can also be specified as segment-routing SIDs:
(config)# ip explicit-path name foo
(config-ip-expl-path)# index 10 next-label 20
The following SR-TE explicit path hops are supported:
-
IP addresses
-
MPLS labels
-
Mix of IP addresses and MPLS labels
Note |
IP addresses cannot be used after using the label in MIXED_PATH. |
Use Case: Segment Routing Traffic Engineering Basic Configuration
Consider the following topology:
Configuration at the headend router, R1:
interface GigabitEthernet0/02
ip address 100.101.1.1 255.255.255.0
ip router isis 1
isis network point-to-point
negotiation auto
mpls traffic-eng tunnels
router isis 1
net 49.0001.0010.0100.1001.00
is-type level-1
ispf level-1
metric-style wide
log-adjacency-changes
segment-routing mpls
segment-routing prefix-sid-map advertise-local
mpls traffic-eng router-id Loopback1
mpls traffic-eng level-1
Configuration at the tailend router, R6
interface GigabitEthernet0/02
ip address 100.101.1.1 255.255.255.0
ip router isis 1
isis network point-to-point
negotiation auto
mpls traffic-eng tunnels
router isis 1
net 49.0001.0060.0600.6006.00
ispf level-1
metric-style wide
log-adjacency-changes
segment-routing mpls
segment-routing prefix-sid-map advertise-local
mpls traffic-eng router-id Loopback1
mpls traffic-eng level-1
Explicit Path SR-TE Tunnel 1
Consider tunnel 1 based only on IP addresses:
ip explicit-path name IP_PATH1
next-address 2.2.2.2
next-address 3.3.3.3
next-address 6.6.6.6
!
interface Tunnel1
ip unnumbered Loopback1 poll point-to-point
tunnel mode mpls traffic-eng
tunnel destination 6.6.6.6
tunnel mpls traffic-eng autoroute announce
tunnel mpls traffic-eng priority 6 6
tunnel mpls traffic-eng path-option 10 explicit name IP_PATH1 segment-routing
tunnel mpls traffic-eng path-selection metric igp
tunnel mpls traffic-eng 10
end
Explicit Path SR-TE Tunnel 2
Consider tunnel 2 based on node SIDs
ip explicit-path name IA_PATH
next-label 114
next-label 115
next-label 116
!
interface Tunnel2
ip unnumbered Loopback1 poll point-to-point
tunnel mode mpls traffic-eng
tunnel destination 6.6.6.6
tunnel mpls traffic-eng autoroute announce
tunnel mpls traffic-eng priority 6 6
tunnel mpls traffic-eng bandwidth 10000 class-type 1
tunnel mpls traffic-eng path-option 10 explicit name NODE_PATH segment-routing
tunnel mpls traffic-eng path-selection metric igp
tunnel mpls traffic-eng 10
end
Explicit Path SR-TE Tunnel 3
Consider that tunnel 3 is based on a mix of IP addresses and label
ip explicit-path name MIXED_PATH enable
next-address 2.2.2.2
next-address 3.3.3.3
next-label 115
next-label 116
!
interface Tunnel3
ip unnumbered Loopback1 poll point-to-point
tunnel mode mpls traffic-eng
tunnel destination 6.6.6.6
tunnel mpls traffic-eng autoroute announce
tunnel mpls traffic-eng priority 6 6
tunnel mpls traffic-eng path-option 10 explicit name MIXED_PATH segment-routing
tunnel mpls traffic-eng path-selection metric igp
tunnel mpls traffic-eng 10
Dynamic Path SR-TE Tunnel 4
Consider that tunnel 4is based on adjacency SIDs
interface Tunnel4
ip unnumbered Loopback1 poll point-to-point
tunnel mode mpls traffic-eng
tunnel destination 6.6.6.6
tunnel mpls traffic-eng autoroute announce
tunnel mpls traffic-eng priority 6 6
tunnel mpls traffic-eng bandwidth 10000 class-type 1
tunnel mpls traffic-eng path-option 10 dynamic segment-routing
tunnel mpls traffic-eng path-selection metric igp
tunnel mpls traffic-eng 10
end
Dynamic Path SR-TE Tunnel 5
Consider that tunnel 5 is based on Node SIDs
interface Tunnel5
ip unnumbered Loopback1 poll point-to-point
tunnel mode mpls traffic-eng
tunnel destination 6.6.6.6
tunnel mpls traffic-eng autoroute announce
tunnel mpls traffic-eng priority 6 6
tunnel mpls traffic-eng path-option 10 segment-routing
tunnel mpls traffic-eng path-selection metric igp
tunnel mpls traffic-eng 10
Verifying Configuration of the SR-TE Tunnels
Use the show mpls traffic-eng tunnels tunnel-number command to verify the configuration of the SR-TE tunnels.
Verifying Tunnel 1
Name: R1_t1 (Tunnel1) Destination: 6.6.6.6
Status:
Admin: up Oper: up Path: valid Signalling: connected
path option 10, (SEGMENT-ROUTING) type explicit IP_PATH (Basis for Setup)
Config Parameters:
Bandwidth: 0 kbps (Global) Priority: 6 6 Affinity: 0x0/0xFFFF
Metric Type: IGP (interface)
Path Selection:
Protection: any (default)
Path-invalidation timeout: 45000 msec (default), Action: Tear
AutoRoute: enabled LockDown: disabled Loadshare: 10 [200000000]
auto-bw: disabled
Fault-OAM: disabled, Wrap-Protection: disabled, Wrap-Capable: No
Active Path Option Parameters:
State: explicit path option 10 is active
BandwidthOverride: disabled LockDown: disabled Verbatim: disabled
History:
Tunnel:
Time since created: 6 days, 19 hours
Time since path change: 2 seconds
Number of LSP IDs (Tun_Instances) used: 1814
Current LSP: [ID: 1814]
Uptime: 2 seconds
Selection: reoptimization
Prior LSP: [ID: 1813]
ID: path option unknown
Removal Trigger: configuration changed
Tun_Instance: 1814
Segment-Routing Path Info (isis level-1)
Segment0[Node]: 4.4.4.4, Label: 114
Segment1[Node]: 5.5.5.5, Label: 115
Segment2[Node]: 6.6.6.6, Label: 116
Verifying Tunnel 2
Name: R1_t2 (Tunnel1) Destination: 6.6.6.6
Status:
Admin: up Oper: up Path: valid Signalling: connected
path option 10, (SEGMENT-ROUTING) type explicit IA_PATH (Basis for Setup)
Config Parameters:
Bandwidth: 0 kbps (Global) Priority: 6 6 Affinity: 0x0/0xFFFF
Metric Type: IGP (interface)
Path Selection:
Protection: any (default)
Path-invalidation timeout: 45000 msec (default), Action: Tear
AutoRoute: enabled LockDown: disabled Loadshare: 10 [200000000]
auto-bw: disabled
Fault-OAM: disabled, Wrap-Protection: disabled, Wrap-Capable: No
Active Path Option Parameters:
State: explicit path option 10 is active
BandwidthOverride: disabled LockDown: disabled Verbatim: disabled
History:
Tunnel:
Time since created: 6 days, 19 hours, 1 minutes
Time since path change: 1 seconds
Number of LSP IDs (Tun_Instances) used: 1815
Current LSP: [ID: 1815]
Uptime: 1 seconds
Prior LSP: [ID: 1814]
ID: path option unknown
Removal Trigger: configuration changed
Tun_Instance: 1815
Segment-Routing Path Info (isis level-1)
Segment0[ - ]: Label: 114
Segment1[ - ]: Label: 115
Segment2[ - ]: Label: 116
Verifying Tunnel 3
Name: R1_t3 (Tunnel1) Destination: 6.6.6.6
Status:
Admin: up Oper: up Path: valid Signalling: connected
path option 10, (SEGMENT-ROUTING) type explicit MIXED_PATH (Basis for Setup)
Config Parameters:
Bandwidth: 0 kbps (Global) Priority: 6 6 Affinity: 0x0/0xFFFF
Metric Type: IGP (interface)
Path Selection:
Protection: any (default)
Path-invalidation timeout: 45000 msec (default), Action: Tear
AutoRoute: enabled LockDown: disabled Loadshare: 10 [200000000]
auto-bw: disabled
Fault-OAM: disabled, Wrap-Protection: disabled, Wrap-Capable: No
Active Path Option Parameters:
State: explicit path option 10 is active
BandwidthOverride: disabled LockDown: disabled Verbatim: disabled
History:
Tunnel:
Time since created: 6 days, 19 hours, 2 minutes
Time since path change: 2 seconds
Number of LSP IDs (Tun_Instances) used: 1816
Current LSP: [ID: 1816]
Uptime: 2 seconds
Selection: reoptimization
Prior LSP: [ID: 1815]
ID: path option unknown
Removal Trigger: configuration changed
Tun_Instance: 1816
Segment-Routing Path Info (isis level-1)
Segment0[Node]: 2.2.2.2, Label: 112
Segment1[Node]: 3.3.3.3, Label: 113
Segment2[ - ]: Label: 115
Segment3[ - ]: Label: 116
Verifying Tunnel 4
Name: R1_t4 (Tunnel1) Destination: 6.6.6.6
Status:
Admin: up Oper: up Path: valid Signalling: connected
path option 10, (SEGMENT-ROUTING) type dynamic (Basis for Setup, path weight 30)
Config Parameters:
Bandwidth: 0 kbps (Global) Priority: 6 6 Affinity: 0x0/0xFFFF
Metric Type: IGP (interface)
Path Selection:
Protection: any (default)
Path-invalidation timeout: 45000 msec (default), Action: Tear
AutoRoute: enabled LockDown: disabled Loadshare: 10 [200000000]
auto-bw: disabled
Fault-OAM: disabled, Wrap-Protection: disabled, Wrap-Capable: No
Active Path Option Parameters:
State: dynamic path option 10 is active
BandwidthOverride: disabled LockDown: disabled Verbatim: disabled
History:
Tunnel:
Time since created: 6 days, 19 hours
Time since path change: 2 seconds
Number of LSP IDs (Tun_Instances) used: 1813
Current LSP: [ID: 1813]
Uptime: 2 seconds
Prior LSP: [ID: 1806]
ID: path option unknown
Removal Trigger: configuration changed
Tun_Instance: 1813
Segment-Routing Path Info (isis level-1)
Segment0[Link]: 192.168.2.1 - 192.168.2.2, Label: 17
Segment1[Link]: 192.168.4.2 - 192.168.4.1, Label: 25
Segment2[Link]: 192.168.8.1 - 192.168.8.2, Label: 300
Verifying Tunnel 5
Name: R1_t5 (Tunnel1) Destination: 6.6.6.6
Status:
Admin: up Oper: up Path: valid Signalling: connected
path option 10, type segment-routing (Basis for Setup)
Config Parameters:
Bandwidth: 0 kbps (Global) Priority: 6 6 Affinity: 0x0/0xFFFF
Metric Type: IGP (interface)
Path Selection:
Protection: any (default)
Path-invalidation timeout: 45000 msec (default), Action: Tear
AutoRoute: enabled LockDown: disabled Loadshare: 10 [200000000]
auto-bw: disabled
Fault-OAM: disabled, Wrap-Protection: disabled, Wrap-Capable: No
Active Path Option Parameters:
State: segment-routing path option 10 is active
BandwidthOverride: disabled LockDown: disabled Verbatim: disabled
History:
Tunnel:
Time since created: 6 days, 19 hours, 4 minutes
Time since path change: 14 seconds
Number of LSP IDs (Tun_Instances) used: 1817
Current LSP: [ID: 1817]
Uptime: 14 seconds
Selection: reoptimization
Prior LSP: [ID: 1816]
ID: path option unknown
Removal Trigger: configuration changed
Tun_Instance: 1817
Segment-Routing Path Info (isis level-1)
Segment0[Node]: 6.6.6.6, Label: 116