IGP Shortcuts
This chapter provides information about IGP shortcuts.
Topics in this chapter include:
Applicability
This chapter is applicable to SR OS when the feature is not related to BGP. There are no other prerequisites for this configuration. This chapter was initially written for SR OS Release 12.0.R3, but the CLI in the current edition corresponds to SR OS Release 21.2.R1.
Overview
Interior Gateway Protocols (IGPs) are routing protocols that operate inside an Autonomous System (AS). An AS is a network domain that is managed under a single administration. Because the scope of operation of an IGP is usually within an AS, IGPs are also called intra-AS protocols. The purpose of an IGP is to provide reachability information to destination nodes that are inside the domain. IGPs can be one or more of a variety of protocols, including routing protocols such as Routing Information Protocol (RIP) version 1 or 2, Open Shortest Path First (OSPF), and Intermediate System to Intermediate System (IS-IS).
IGPs such as OSPF and IS-IS are link-state protocols that use a Shortest Path First (SPF) algorithm to compute the shortest path tree to all nodes in a network. The results of such computations indicate the destination node, next hop address, and output interface, where the output interface is a physical interface. Optionally, Multi-Protocol Label Switching (MPLS) Label Switched Paths (LSPs) can be included in the SPF algorithm on the node performing the calculations, as LSPs behave as logical interfaces directly connected to remote nodes in the network. Because the SPF algorithm treats the LSPs in the same way as a physical interface (being a potential output interface), the computation results could be to select a destination node together with an output LSP, using the LSP as a shortcut through the network to the destination node.
Normal SPF Tree Sourced by PE-1 shows a normal SPF tree sourced by PE-1 (Provider Edge-1).
If there is an LSP that connects PE-1 to PE-5, and IGP shortcuts are configured on PE-1, the SPF tree will be as shown in SPF Tree Sourced by PE-1 Using LSP Shortcuts.
IGP shortcuts are enabled on a per router basis; SPF computations are independent and irrelevant to other routers, so there is no need to enable shortcuts on every single router.
The example topology used in this example is shown in Example Topology. The setup consists of six 7750 service routers. There is a single AS and a single IGP area. The following configuration tasks should be completed first:
IS-IS or OSPF on all interfaces within the AS (configuration has been done using IS-IS but using OSPF shows exactly the same behavior).
Label Distribution Protocol (LDP) and Resource Reservation Protocol (RSVP) on all interfaces within the AS.
In all figures, Lb stands for Loopback and Sys stands for the system IP addresses.
Configuration
The first step is to configure the IGP (IS-IS) on all nodes, where IS-IS redistributes route reachability to all routers. To facilitate IS-IS configuration, all routers are L2-L1 capable within the same IS-IS area-id so there is only a single topology area in the network (all routers share the same topology). Traffic engineering (TE) is enabled on the IGP as it is a requirement for RSVP. The metric is using the default values: because no reference bandwidth command is used, the default metric of 10 is applicable on all interfaces. The configuration for PE-2 is as follows.
*A:PE-2# configure
router
interface "int-PE-2-PE-1"
address 192.168.12.2/30
port 1/1/2
exit
interface "int-PE-2-PE-3"
address 192.168.23.1/30
port 1/1/3
exit
interface "int-PE-2-PE-4"
address 192.168.24.1/30
port 1/1/1
exit
interface "system"
address 192.0.2.2/32
exit
isis
area-id 49.0001
traffic-engineering
interface "system"
passive
exit
interface "int-PE-2-PE-1"
interface-type point-to-point
exit
interface "int-PE-2-PE-3"
interface-type point-to-point
exit
interface "int-PE-2-PE-4"
interface-type point-to-point
exit
no shutdown
exit
The configuration for the other nodes is similar. The IP addresses can be derived from Example Topology.
The global route table (GRT) for PE-2 is as follows:
A:PE-2# show router route-table
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Remote ISIS 00h04m15s 15
192.168.12.1 10
192.0.2.2/32 Local Local 00h04m30s 0
system 0
192.0.2.3/32 Remote ISIS 00h04m07s 15
192.168.23.2 10
192.0.2.4/32 Remote ISIS 00h04m07s 15
192.168.24.2 10
192.0.2.5/32 Remote ISIS 00h04m04s 15
192.168.23.2 20
192.0.2.6/32 Remote ISIS 00h03m59s 15
192.168.24.2 20
192.168.12.0/30 Local Local 00h04m16s 0
int-PE-2-PE-1 0
192.168.13.0/30 Remote ISIS 00h04m15s 15
192.168.12.1 20
192.168.23.0/30 Local Local 00h04m16s 0
int-PE-2-PE-3 0
192.168.24.0/30 Local Local 00h04m16s 0
int-PE-2-PE-4 0
192.168.35.0/30 Remote ISIS 00h04m07s 15
192.168.23.2 20
192.168.45.0/30 Remote ISIS 00h04m07s 15
192.168.24.2 20
192.168.46.0/30 Remote ISIS 00h04m07s 15
192.168.24.2 20
192.168.56.0/30 Remote ISIS 00h04m04s 15
192.168.23.2 30
-------------------------------------------------------------------------------
No. of Routes: 14
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
LDP and RSVP Shortcuts
Interface Label Distribution Protocol (iLDP) is enabled on all interfaces (except system interfaces, which is not allowed) in all routers. The configuration on all nodes is similar and the IP addresses are derived from Example Topology. The configuration of PE-4 is as follows:
*A:PE-4# configure
router
ldp
interface-parameters
interface "int-PE-4-PE-2" dual-stack
ipv4
no shutdown
exit
no shutdown
exit
interface "int-PE-4-PE-5" dual-stack
ipv4
no shutdown
exit
no shutdown
exit
interface "int-PE-4-PE-6" dual-stack
ipv4
no shutdown
exit
no shutdown
exit
exit
no shutdown
exit
With iLDP enabled, PE-4 establishes iLDP sessions with its directly connected neighbors, as follows:
A:PE-4# show router ldp session ipv4
==============================================================================
LDP IPv4 Sessions
==============================================================================
Peer LDP Id Adj Type State Msg Sent Msg Recv Up Time
------------------------------------------------------------------------------
192.0.2.2:0 Link Established 105 106 0d 00:04:12
192.0.2.5:0 Link Established 105 107 0d 00:04:12
192.0.2.6:0 Link Established 104 106 0d 00:04:09
------------------------------------------------------------------------------
No. of IPv4 Sessions: 3
==============================================================================
The following tunnel table shows that there is a Label Switched Path (LSP) to every other router. The reason is that the LDP label distribution mode is downstream unsolicited (DU) by default, originating label bindings for system addresses only (which are used by iLDP as transport address by default). The command also shows the preference of the LSPs (where the preference is 9 for LDP) and the metric of the LSPs (the metric is inherited from the IGP, each hop counts as a metric of 10), as follows. The metric to destinations PE-1 and PE-3 is 20 because there are two hops in between (PE-4 is two hops away from PE-1 and PE-3).
A:PE-4# show router tunnel-table
===============================================================================
IPv4 Tunnel Table (Router: Base)
===============================================================================
Destination Owner Encap TunnelId Pref Nexthop Metric
Color
-------------------------------------------------------------------------------
192.0.2.1/32 ldp MPLS 65538 9 192.168.24.1 20
192.0.2.2/32 ldp MPLS 65537 9 192.168.24.1 10
192.0.2.3/32 ldp MPLS 65539 9 192.168.24.1 20
192.0.2.5/32 ldp MPLS 65540 9 192.168.45.2 10
192.0.2.6/32 ldp MPLS 65541 9 192.168.46.2 10
-------------------------------------------------------------------------------
Flags: B = BGP or MPLS backup hop available
L = Loop-Free Alternate (LFA) hop available
E = Inactive best-external BGP route
k = RIB-API or Forwarding Policy backup hop
===============================================================================
In order to configure RSVP shortcuts, RSVP must be enabled on all interfaces where traffic engineering is required, but in this example, MPLS and RSVP are enabled on all interfaces of the network. By default, MPLS is enabled on the system interface, therefore, it need not be configured explicitly. When RSVP is in no shutdown, it is automatically configured on the interfaces where MPLS is configured. The configuration for PE-6 is as follows.
*A:PE-6# configure router mpls no shutdown
*A:PE-6# configure router rsvp no shutdown
*A:PE-6# configure
router
mpls
interface "int-PE-6-PE-4"
exit
interface "int-PE-6-PE-5"
exit
no shutdown
exit
rsvp
no shutdown
exit
The configuration of the other nodes is similar. The IP addresses can be derived from Example Topology. Because there are no RSVP LSPs configured yet, the tunnel table has no RSVP LSPs and only contains LDP LSPs.
LDP Static Route (IP Tunneled in LDP Tunnel)
Using LDP LSP shortcuts for static route resolution enables forwarding of IPv4 packets over LDP LSPs instead of using a regular IP next hop. In other words, the traffic to the resolved static routes is forwarded using MPLS LDP LSP rather than plain IP.
The configuration defines a static route pointing to the destination PE (remote loopback, which is an indirect next hop in the example), and explicitly indicates that it should use LDP rather than IGP. Taking PE-1 and PE-6 as an example, two loopback interfaces are configured (172.16.X.1/32), where X = PE number, and a static route is defined according to the preceding explanation. The following shows the configuration on PE-1.
*A:PE-1# configure
router
interface "loopback"
address 172.16.1.1/32
loopback
exit
static-route-entry 172.16.6.1/32
indirect 192.0.2.6
tunnel-next-hop
resolution-filter
ldp
exit
disallow-igp
resolution filter
exit
no shutdown
exit
exit
Looking at the GRT or forwarding information base (FIB), there are two new entries corresponding to the two configured loopback interfaces. One entry has the protocol set to LOCAL (the local loopback on the PE), and the other entry has the protocol set to STATIC, where the next hop is reached using an LDP LSP.
*A:PE-1# show router fib 1
===============================================================================
FIB Display
===============================================================================
Prefix [Flags] Protocol
NextHop
-------------------------------------------------------------------------------
172.16.1.1/32 LOCAL
172.16.1.1 (loopback)
172.16.6.1/32 STATIC
192.0.2.6 (Transport:LDP)
192.0.2.1/32 LOCAL
192.0.2.1 (system)
192.0.2.2/32 ISIS
192.168.12.2 (int-PE-1-PE-2)
192.0.2.3/32 ISIS
192.168.13.2 (int-PE-1-PE-3)
192.0.2.4/32 ISIS
192.168.12.2 (int-PE-1-PE-2)
192.0.2.5/32 ISIS
192.168.13.2 (int-PE-1-PE-3)
192.0.2.6/32 ISIS
192.168.12.2 (int-PE-1-PE-2)
192.168.12.0/30 LOCAL
192.168.12.0 (int-PE-1-PE-2)
192.168.13.0/30 LOCAL
192.168.13.0 (int-PE-1-PE-3)
192.168.23.0/30 ISIS
192.168.12.2 (int-PE-1-PE-2)
192.168.24.0/30 ISIS
192.168.12.2 (int-PE-1-PE-2)
192.168.35.0/30 ISIS
192.168.13.2 (int-PE-1-PE-3)
192.168.45.0/30 ISIS
192.168.12.2 (int-PE-1-PE-2)
192.168.46.0/30 ISIS
192.168.12.2 (int-PE-1-PE-2)
192.168.56.0/30 ISIS
192.168.13.2 (int-PE-1-PE-3)
-------------------------------------------------------------------------------
Total Entries : 16
-------------------------------------------------------------------------------
===============================================================================
The following output shows that a ping sourced by the loopback interface on PE-1 is able to reach the loopback interface on PE-6, and traceroute demonstrates that the traffic is following the LDP LSP. The ping and traceroute traffic cannot follow the IGP path because the static route command states that the IGP is disallowed when no LDP LSP toward PE-6 is available (also, the loopback interfaces are not enabled on IS-IS).
*A:PE-1# ping 172.16.6.1 source 172.16.1.1
PING 172.16.6.1 56 data bytes
64 bytes from 172.16.6.1: icmp_seq=1 ttl=64 time=3.16ms.
64 bytes from 172.16.6.1: icmp_seq=2 ttl=64 time=3.32ms.
64 bytes from 172.16.6.1: icmp_seq=3 ttl=64 time=3.20ms.
64 bytes from 172.16.6.1: icmp_seq=4 ttl=64 time=3.22ms.
64 bytes from 172.16.6.1: icmp_seq=5 ttl=64 time=2.90ms.
---- 172.16.6.1 PING Statistics ----
5 packets transmitted, 5 packets received, 0.00% packet loss
round-trip min = 2.90ms, avg = 3.16ms, max = 3.32ms, stddev = 0.140ms
traceroute to 172.16.6.1 from 172.16.1.1, 30 hops max, 40 byte packets
1 0.0.0.0 * * *
2 0.0.0.0 * * *
3 172.16.6.1 (172.16.6.1) 3.51 ms 3.26 ms 3.39 ms
With the traceroute command, there are three hops from PE-1 to PE-6. There is no information regarding IP for the first two hops because the traffic is encapsulated in an MPLS LSP. The reason why the hops are displayed even when there is an MPLS LSP tunnel is because by default, the SR router propagates (copies) the Time To Live (TTL) from the IP header in the MPLS header. This is known as uniform mode.
However, a service provider might not want to show how many MPLS hops (nodes) there are in their network if a traceroute command is executed from outside their network. To prevent internal hops being shown, no propagate commands are needed in the LDP configuration, as follows. This is known as pipe mode.
*A:PE-1# configure
router
ldp
no shortcut-local-ttl-propagate
no shortcut-transit-ttl-propagate
exit
When TTL propagation is disabled, the hops are not displayed any longer when running the traceroute command.
*A:PE-1# traceroute 172.16.6.1 source 172.16.1.1
traceroute to 172.16.6.1 from 172.16.1.1, 30 hops max, 40 byte packets
1 172.16.6.1 (172.16.6.1) 3.51 ms 3.23 ms 3.54 ms
For more information about uniform mode and pipe mode, see the Tunneling of ICMP Reply Packets over MPLS LSPs chapter.
RSVP Static Route (IP Tunneled in RSVP Tunnel)
Using RSVP LSP shortcuts for static route resolution enables forwarding of IPv4 packets over RSVP LSPs instead of using a regular IP next hop. In other words, the traffic to the resolved static routes is forwarded using an MPLS RSVP LSP rather than plain IP.
The configuration defines a static route pointing to a destination PE (remote loopback, which is an indirect next hop in the example), and explicitly indicates that it should use RSVP rather than IGP. Taking PE-6 and PE-1 as an example, two loopback interfaces are configured (172.16.X.1/32), where X = PE number, and a static route is defined according to the preceding explanation. The following shows the configuration on PE-6.
*A:PE-6# configure
router
interface "loopback"
address 172.16.6.1/32
loopback
no shutdown
exit
static-route-entry 172.16.1.1/32
indirect 192.0.2.1
tunnel-next-hop
resolution-filter
rsvp-te
exit
exit
disallow-igp
resolution filter
exit
no shutdown
exit
exit
Also, an RSVP LSP needs to be configured with the system interface of PE-1 as the destination:
*A:PE-6# configure
router
mpls
path "loose_path"
no shutdown
exit
lsp "LSP-PE-6-PE-1"
to 192.0.2.1
primary "loose_path"
exit
no shutdown
exit
In the LSP tunnel table, an RSVP LSP is created:
*A:PE-6# show router tunnel-table
===============================================================================
IPv4 Tunnel Table (Router: Base)
===============================================================================
Destination Owner Encap TunnelId Pref Nexthop Metric
Color
-------------------------------------------------------------------------------
192.0.2.1/32 rsvp MPLS 1 7 192.168.46.1 30
192.0.2.1/32 ldp MPLS 65541 9 192.168.46.1 30
192.0.2.2/32 ldp MPLS 65540 9 192.168.46.1 20
192.0.2.3/32 ldp MPLS 65538 9 192.168.56.1 20
192.0.2.4/32 ldp MPLS 65539 9 192.168.46.1 10
192.0.2.5/32 ldp MPLS 65537 9 192.168.56.1 10
-------------------------------------------------------------------------------
Flags: B = BGP or MPLS backup hop available
L = Loop-Free Alternate (LFA) hop available
E = Inactive best-external BGP route
k = RIB-API or Forwarding Policy backup hop
===============================================================================
The default RSVP preference is 7 (preferred over that of LDP, which is 9) and the metric reflects that this LSP spans 3 hops (for a dynamic LSP not using constrained shortest path first (CSPF), the metric is inherited from IGP). See the RSVP Shortcut for IGP Route Resolution section for more details about the metric applied in LSPs.
The RSVP LSP is used to resolve the indirect next hop (PE-1 system address) in the static route (the LSP used is identified with the tunnel ID, in this case 1), therefore, the route for prefix 172.16.1.1 in the GRT looks as follows:
*A:PE-6# show router route-table 172.16.1.1
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
172.16.1.1/32 Remote Static 00h01m42s 5
192.0.2.1 (tunneled:RSVP:1) 1
-------------------------------------------------------------------------------
No. of Routes: 1
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
As in the LDP shortcut with static route example, between PE-6 and PE-1, TTL propagation is disabled, as follows.
*A:PE-6# configure
router
mpls
no shortcut-local-ttl-propagate
no shortcut-transit-ttl-propagate
exit
The output is the following when running a traceroute:
*A:PE-6# traceroute 172.16.1.1 source 172.16.6.1
traceroute to 172.16.1.1 from 172.16.6.1, 30 hops max, 40 byte packets
1 172.16.1.1 (172.16.1.1) 3.45 ms 3.44 ms 3.66 ms
The two static routes that have been defined to use the LDP and RSVP shortcuts follow the static routes default values and have a preference of 5 and a metric of 1.
LDP Shortcut for IGP Route Resolution
Using LDP shortcuts for IGP route resolution enables forwarding of packets to IGP learned routes over an LDP LSP. The default is to disable the LDP shortcut across all interfaces in the node.
When LDP shortcuts are enabled, LDP populates the Route Table Manager (RTM) with next hop entries corresponding to all prefixes for which it activated an LDP Forwarding Equivalence Class (FEC). For a prefix, two route entries are populated in the RTM. One corresponds to the LDP shortcut next hop and has an owner of LDP. The other one is the regular IP next hop. The LDP shortcut next hop always takes preference over the regular IP next hop for forwarding user packets and specific control packets over an outgoing interface to the route next hop.
When LDP has activated a FEC for a prefix and programmed the RTM, it also programs the ingress tunnel table in the line card with the LDP tunnel information.
When an IPv4 packet is received on an ingress network interface and the preferred RTM entry corresponds to an LDP shortcut, a subscriber Internet Enhanced Service (IES) interface, or a regular IES interface, the lookup of the packet by the ingress line card results in the packet being sent labeled with the label stack corresponding to the Next Hop Label Forwarding Entry (NHLFE) of the LDP LSP. If the preferred RTM entry corresponds to an IP next hop, the IPv4 packet is forwarded unlabeled. The activation of the FEC by LDP is done by performing an exact match with an IGP route prefix in the RTM, but it can also be done by performing a longest prefix match with an IGP route in the RTM if the aggregate-prefix-match option is enabled globally in LDP.
Handling of Control Packets
All control plane packets will not see the LDP shortcut route entry in the RTM with the exception of the following control packets which will be forwarded over an LDP shortcut when enabled:
A locally generated or in transit ICMP ping and UDP traceroute of an IGP route. The transit message appears as a user packet to the ingress LER node.
A locally generated response to a received ICMP ping or UDP traceroute message.
All other control plane packets that require an RTM lookup and have knowledge of which destination is reachable over the LDP shortcut will continue to be forwarded over the IP next hop route in the RTM.
Handling of Multicast Packets
LDP shortcuts apply to unicast FEC types and are used for forwarding IP unicast packets in the data path. IP multicast packets forwarded over an multicast Label Distribution Protocol (mLDP) Point-to-Multi-Point (P2MP) LSP make use of a multicast FEC and thus cannot make use of the LDP unicast shortcut.
ECMP Considerations
When Equal Cost Multi-Path (ECMP) is enabled and multiple equal cost next hops exist for the IGP route, the ingress line card will spray the packets for this route based on the hashing routine supported for IPv4 packets. When the preferred RTM entry corresponds to an LDP shortcut route, spraying is performed across the multiple next hops for the LDP FEC. The FEC next hops can either be direct link LDP neighbors, or T-LDP (targeted LDP) neighbors reachable over RSVP LSPs in the case of LDP-over-RSVP, but not both. This is as per ECMP for LDP in the existing implementation. When the preferred RTM entry corresponds to a regular IP route, spraying will be performed across regular IP next hops for the prefix. Spraying across regular IP next hops and LDP shortcut next hops concurrently is not supported.
Configuring IGP LDP shortcuts is straightforward, and only applies to the node where there is interest to provision the LDP shortcut. In this example, only PE-1 is provisioned with LDP shortcuts, as follows:
*A:PE-1# configure router ldp-shortcut
Now, all tunnel LSPs that resolve an IGP next hop will replace the IP next hops, as shown in the following output:
*A:PE-1# show router route-table
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Local Local 00h27m34s 0
system 0
192.0.2.2/32 Remote LDP 00h00m34s 9
192.168.12.2 (tunneled) 10
192.0.2.3/32 Remote LDP 00h00m34s 9
192.168.13.2 (tunneled) 10
192.0.2.4/32 Remote LDP 00h00m34s 9
192.168.12.2 (tunneled) 20
192.0.2.5/32 Remote LDP 00h00m34s 9
192.168.13.2 (tunneled) 20
192.0.2.6/32 Remote LDP 00h00m34s 9
192.168.12.2 (tunneled) 30
192.168.12.0/30 Local Local 00h27m20s 0
int-PE-1-PE-2 0
192.168.13.0/30 Local Local 00h27m20s 0
int-PE-1-PE-3 0
192.168.23.0/30 Remote ISIS 00h27m05s 15
192.168.12.2 20
192.168.24.0/30 Remote ISIS 00h27m05s 15
192.168.12.2 20
192.168.35.0/30 Remote ISIS 00h27m01s 15
192.168.13.2 20
192.168.45.0/30 Remote ISIS 00h27m01s 15
192.168.12.2 30
192.168.46.0/30 Remote ISIS 00h27m01s 15
192.168.12.2 30
192.168.56.0/30 Remote ISIS 00h26m58s 15
192.168.13.2 30
-------------------------------------------------------------------------------
No. of Routes: 14
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
*A:PE-1# show router fib 1
===============================================================================
FIB Display
===============================================================================
Prefix [Flags] Protocol
NextHop
-------------------------------------------------------------------------------
192.0.2.1/32 LOCAL
192.0.2.1 (system)
192.0.2.2/32 LDP
192.0.2.2 (Transport:LDP)
192.0.2.3/32 LDP
192.0.2.3 (Transport:LDP)
192.0.2.4/32 LDP
192.0.2.4 (Transport:LDP)
192.0.2.5/32 LDP
192.0.2.5 (Transport:LDP)
192.0.2.6/32 LDP
192.0.2.6 (Transport:LDP)
192.168.12.0/30 LOCAL
192.168.12.0 (int-PE-1-PE-2)
192.168.13.0/30 LOCAL
192.168.13.0 (int-PE-1-PE-3)
192.168.23.0/30 ISIS
192.168.12.2 (int-PE-1-PE-2)
192.168.24.0/30 ISIS
192.168.12.2 (int-PE-1-PE-2)
192.168.35.0/30 ISIS
192.168.13.2 (int-PE-1-PE-3)
192.168.45.0/30 ISIS
192.168.12.2 (int-PE-1-PE-2)
192.168.46.0/30 ISIS
192.168.12.2 (int-PE-1-PE-2)
192.168.56.0/30 ISIS
192.168.13.2 (int-PE-1-PE-3)
-------------------------------------------------------------------------------
Total Entries : 14
-------------------------------------------------------------------------------
===============================================================================
Applying LDP IGP shortcuts only on PE-1 implies that IP traffic from PE-1 to any of the system addresses of the rest of the nodes will use the LDP shortcut, however, the traffic replied from any PE back to PE-1 will be native IP because IGP shortcuts have not been provisioned in the other nodes.
RSVP Shortcut for IGP Route Resolution
Using RSVP LSP shortcuts when resolving IGP routes enables forwarding of packets to IGP learned routes over an RSVP LSP. The use of RSVP shortcuts for resolving IGP routes is enabled at the IS-IS (or OSPF) routing protocol level or at the LSP level, and instructs IS-IS and OSPF to include RSVP LSPs originating on this node and terminating on the system address (router ID) of a remote node and considers them as direct links. RSVP LSPs with a destination address corresponding to an interface address or any other loopback interface address of a remote node are automatically not considered by IS-IS or OSPF.
By default, rsvp-shortcut is disabled in all IGP instances.
RSVP LSPs are included in the IGP SPF computation with the following characteristics:
RSVP LSP is modeled as a point-to-point link IP interface and its metric is used in the computation of the shortest path of IGP routes
Next hop and interface include the NHLFE of the shortcut LSP when the IGP path cost using the RSVP LSP is the best.
Shortcuts are not used when the destination RSVP LSP is in a different IGP area. In addition, IGP adjacencies across an RSVP LSP are not supported.
RSVP shortcut is enabled at IGP instance level as follows:
*A:<all PEs># configure
router
isis
igp-shortcut
tunnel-next-hop
family ipv4
resolution filter
resolution-filter
rsvp
exit
exit
exit
no shutdown
exit
The configuration can be done at the IGP level or per LSP level. When rsvp-shortcut is enabled at the IGP instance level, all RSVP LSPs originating on this node are eligible by default. The user can, however, exclude a specific RSVP LSP from being used as a shortcut for resolving IGP routes by entering the command (e.g. on PE-6):
*A:PE-6# configure router mpls lsp "LSP-PE-6-PE-1" no igp-shortcut
As RSVP shortcuts can coexist with LDP shortcuts or IP next hops, SPF computation and path selection follows the procedures in RFC 3906:
SPF picks the RSVP shortcut next hop if there is an RSVP LSP directly to that address regardless of the path cost compared to the IGP next hop.
SPF picks the RSVP shortcut next hop or the IGP next hop based on path lowest cost if there is an IGP path to the prefix that does not go via the tail-end of the LSP.
If the IGP next hop is picked, then it can be an LDP shortcut next hop or a regular IP next hop. The LDP shortcut next hop always has preference over the regular IP next hop.
Handling of Control Packets
All control plane packets requiring an RTM lookup and whose destination is reachable over the RSVP shortcut are forwarded over the shortcut. This is because the RTM keeps a single route entry for each prefix, except if there is ECMP over different outgoing interfaces. Interface bound control packets are not impacted by the RSVP shortcut because RSVP LSPs with a destination address different than the router ID are not included by IGP in its SPF calculation.
RSVP shortcuts for IGP shortcut resolution should only be used with CSPF LSPs or with fully explicit path non-CSPF LSPs. RSVP hop-by-hop Path messages will try to use the shortcut and consequently LSPs without CSPF enabled, or that use a loose/empty hop path, will not come up. However, LSPs with CSPF enabled or using a strict hop path will come up. This is because in the former case, the RTM lookup to get the next hop results in using the shortcut and so the path messages are sent directly to the destination of the LSP, where they are dropped. With CSPF enabled, the next hop (and the entire path) is provided by CSPF and the path messages are sent unlabeled to the directly connected neighbor which corresponds to the next hop of the destination of the LSP. Similar processing occurs if a strict hop path is used, as is the case in the following example.
Handling of Multicast Packets
IP multicast packets cannot be forwarded over an RSVP shortcut, they can only be forwarded over an RSVP P2MP LSP. However, RSVP shortcut routes appear in the RTM and are seen by all applications when they are the best route. When the Reverse Path Forwarding (RPF) check for the source of the multicast packet matches an RSVP shortcut route, the check will pass if both the RSVP shortcut and the multicast-import options are enabled in the IGP, as follows, because the RTM is populated with next hops only and not with tunnels (RPFs will fail for source prefixes resolved to a tunnel NH).
*A:PE-6# configure router isis multicast-import ?
- multicast-import [both]
- multicast-import [ipv4]
- multicast-import [ipv6]
- no multicast-import [both]
- no multicast-import [ipv4]
- no multicast-import [ipv6]
<ipv4> : keyword
<ipv6> : keyword
<both> : keyword
The unicast RTM can still use the tunnel next hop for the same prefix. SPF keeps track of both the direct first hop and the tunneled first hop of a node which is added to the Dijkstra tree.
ECMP Considerations
When ECMP is enabled and multiple equal cost paths exist for the route over a set of tunnel next hops based on the hashing routine supported for IPv4 packets, there are two possibilities:
Destination is tunnel endpoint: the system selects the tunnel with lowest tunnel ID (IP next hop is never used).
Destination is different from the tunnel endpoint: it selects tunnel endpoints when the LSP metric is not greater than the IGP cost and it prefers tunnel endpoint over IP next hop.
ECMP is not performed across the IP and tunnel next hops simultaneously.
RSVP Shortcuts Configuration
Configuring RSVP LSP shortcuts is straightforward, and only applies to the node where there is interest to provision the RSVP shortcut. Two LSPs, from PE-6 to PE-1 and from PE-1 to PE-6, with strict hops, are provisioned according to LSPs Between PE-1 and PE-6.
The configuration on PE-1 and PE-6 is similar (replacing the IP addresses), so only the configuration for PE-6 is shown:
*A:PE-6# configure
router
isis
igp-shortcut
tunnel-next-hop
family ipv4
resolution filter
resolution-filter
rsvp
exit
exit
exit
no shutdown
exit
*A:PE-6# configure
router
mpls
path "path-to-PE-1"
hop 10 192.0.2.5 strict
hop 20 192.0.2.3 strict
hop 30 192.0.2.2 strict
hop 40 192.0.2.1 strict
no shutdown
exit
lsp "LSP-PE-6-PE-1-strict"
to 192.0.2.1
primary "path-to-PE-1"
exit
no shutdown
exit
The GRT output shows the change in the next hop, using an RSVP shortcut:
*A:PE-6# show router route-table
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Remote ISIS 00h02m10s 15
192.0.2.1 (tunneled:RSVP:2) 16777215
192.0.2.2/32 Remote ISIS 00h38m56s 15
192.168.46.1 20
192.0.2.3/32 Remote ISIS 00h38m56s 15
192.168.56.1 20
192.0.2.4/32 Remote ISIS 00h38m56s 15
192.168.46.1 10
192.0.2.5/32 Remote ISIS 00h38m56s 15
192.168.56.1 10
192.0.2.6/32 Local Local 00h39m11s 0
system 0
192.168.12.0/30 Remote ISIS 00h38m56s 15
192.168.46.1 30
192.168.13.0/30 Remote ISIS 00h38m56s 15
192.168.56.1 30
192.168.23.0/30 Remote ISIS 00h38m56s 15
192.168.46.1 30
192.168.24.0/30 Remote ISIS 00h38m56s 15
192.168.46.1 20
192.168.35.0/30 Remote ISIS 00h38m56s 15
192.168.56.1 20
192.168.45.0/30 Remote ISIS 00h38m56s 15
192.168.46.1 20
192.168.46.0/30 Local Local 00h38m57s 0
int-PE-6-PE-4 0
192.168.56.0/30 Local Local 00h38m57s 0
int-PE-6-PE-5 0
-------------------------------------------------------------------------------
No. of Routes: 14
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
The RSVP LSP in the output has a metric of 16777215, the LSP administrative metric matches the maximum value allowed for an IS-IS link using the wide-metric (24-bit value with a range of [0 — 16777215]). The following metric rules apply:
A dynamic strict path non-CSPF LSP has the maximum metric (16777215).
A dynamic CSPF LSP has a metric equal to the cumulative IGP cost.
If the user enabled the use of the TE metric on this LSP (configure router mpls lsp <LSP Name> path-computation-method local-cspf metric-type te), then the metric for the LSP is the maximum (16777215).
If the user enabled the use of the TE metric on this LSP and provisioned a specific metric on the lsp (configure router mpls lsp <LSP Name> path-computation-method local-cspf metric-type te metric <value>), (configure router mpls lsp metric <metric>:<0..16777215>), then the metric for the LSP is the one provisioned. When configuring the metric of an LSP, the parameter ‟metric-type” is not required.
A static LSP has a maximum metric (16777215).
Manual and dynamic bypass LSPs have the maximum metric (16777215).
The RSVP shortcuts section detailed the importance of the LSP metric when using CSPF LSPs or when importing RSVP tunnel links into the IGP. The LSP metric can be inherited from the IGP, or can be manually modified by configuring a specific LSP metric or relative metric offset. Because IP and LDP FECs resolve to RSVP LSPs when the metric is equal or lower compared to the regular routing metric, configuring a specific static LSP metric (lower than the IGP metric) or relative metric offset is strongly recommended when using RSVP shortcuts, so that the GRT and LDP FEC resolution will always prefer the RSVP LSP shortcuts when the CSPF path computation is not using the shortest path.
For the preceding example, the first rule applies.
Advertising RSVP LSP Tunnel Links in the IGP: Forwarding Adjacency Feature
If configured, an RSVP LSP can also be advertised into the IGP similar to regular links so that other routers in the network can include that RSVP LSP into their SPF computations. The forwarding adjacency feature can be enabled independently from the RSVP shortcut feature in CLI. If both are configured for an IGP instance, the forwarding adjacency takes precedence. An RSVP LSP must exist in the reverse direction in order for the advertised link to pass the bi-directional link check and be usable by other routers in the network. However, this is not required for the node which originates the LSP. The LSP is advertised as an unnumbered point-to-point link and the Link State Protocol data unit (LSP) and Link State Advertisement (LSA) have no traffic engineering opaque sub-TLVs as per RFC 3906.
Reusing the RSVP IGP shortcuts set up previously (PE-1 and PE-6 RSVP IGP shortcut example according to LSPs Between PE-1 and PE-6), the outcome is a route linked with an RSVP LSP as next hop, as follows:
*A:PE-6# show router route-table 192.0.2.1/32
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Remote ISIS 00h08m12s 15
192.0.2.1 (tunneled:RSVP:2) 16777215
-------------------------------------------------------------------------------
No. of Routes: 1
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
The route tunneled through RSVP has a metric of 16777215, so it is not used by PE-6 GRT to reach any other routes because the metric is very high. After enabling the forwarding adjacency feature (tunnel links) to use shortcuts in the configuration, PE-1 and PE-6 have a direct connection through the RSVP LSP (as a virtual link). This configuration command must be executed in both routers.
*A:PE-1(&6)# configure router isis advertise-tunnel-link
When the shortcut is advertised by IS-IS, the route will disappear from the RTM because the metric of the shortcut is greater than the IGP cost.
*A:PE-6# show router route-table 192.0.2.1/32
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Remote ISIS 00h00m51s 15
192.168.46.130
-------------------------------------------------------------------------------
No. of Routes: 1
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
If the LSP is reconfigured to use a metric equal to or smaller than the IGP cost, the router PE-6 will use the RSVP shortcut again. In the example, the LSP is reconfigured with a metric of 30 (e.g. on PE-6):
*A:PE-6# configure router mpls lsp "LSP-PE-6-PE-1-strict" metric 30
Now the shortcut shows up as the preferred next hop to reach PE-1 from PE-6.
*A:PE-6# show router route-table 192.0.2.1/32
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Remote ISIS 00h01m56s 15
192.0.2.1 (tunneled:RSVP:2) 30
-------------------------------------------------------------------------------
No. of Routes: 1
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
As explained earlier, this could be combined with ECMP, so if ECMP is configured to 2, the system shows the two equal cost paths.
*A:PE-6# configure router ecmp 2
*A:PE-6# show router route-table 192.0.2.1/32
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Remote ISIS 00h00m18s 15
192.0.2.1 (tunneled:RSVP:2) 30
192.0.2.1/32 Remote ISIS 00h00m18s 15
192.168.46.1 30
-------------------------------------------------------------------------------
No. of Routes: 2
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
The GRT on PE-4 displays the route to reach PE-1 (192.0.2.1/32) with a metric of 20 via PE-2 as next hop. Although PE-6 is announcing the RSVP LSP-PE-6-PE-1 to the other routers, the LSP shortcut is not used by PE-4, because the metric to reach PE-6 (10) plus the metric of the LSP shortcut from PE-6 to PE-1 (metric 30) is greater than 20.
A:PE-4# show router route-table
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Remote ISIS 00h59m21s 15
192.168.24.1 20
192.0.2.2/32 Remote ISIS 00h59m21s 15
192.168.24.1 10
192.0.2.3/32 Remote ISIS 00h59m19s 15
192.168.24.1 20
192.0.2.4/32 Local Local 00h59m37s 0
system 0
192.0.2.5/32 Remote ISIS 00h59m16s 15
192.168.45.2 10
192.0.2.6/32 Remote ISIS 00h59m11s 15
192.168.46.2 10
192.168.12.0/30 Remote ISIS 00h59m21s 15
192.168.24.1 20
192.168.13.0/30 Remote ISIS 00h59m19s 15
192.168.24.1 30
192.168.23.0/30 Remote ISIS 00h59m21s 15
192.168.24.1 20
192.168.24.0/30 Local Local 00h59m22s 0
int-PE-4-PE-2 0
192.168.35.0/30 Remote ISIS 00h59m16s 15
192.168.45.2 20
192.168.45.0/30 Local Local 00h59m22s 0
int-PE-4-PE-5 0
192.168.46.0/30 Local Local 00h59m22s 0
int-PE-4-PE-6 0
192.168.56.0/30 Remote ISIS 00h59m16s 15
192.168.45.2 20
-------------------------------------------------------------------------------
No. of Routes: 14
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
If the metric of the LSP LSP-PE-6-PE-1 is modified to a value between 1 and 9, there is a better metric (less than 20) so that PE-4 will change the next hop via PE-6. First the metric of the LSP is modified to 9:
*A:PE-6# configure router mpls lsp "LSP-PE-6-PE-1-strict" metric 9
The GRT on PE-4 shows that the next hop to reach PE-1 has changed, from next hop PE-2 to next hop PE-6 (therefore, using the LSP shortcut), and the metric is 19 (10 to reach PE-6 plus metric 9 of the LSP PE-6-PE-1 shortcut):
A:PE-4# show router route-table 192.0.2.1/32
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Remote ISIS 00h00m39s 15
192.168.46.2 19
-------------------------------------------------------------------------------
No. of Routes: 1
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
Because the metric of the LSP shortcut was modified to a value of 9, the GRT of PE-6 shows that the next hops of several routes have changed and are also using the shortcut LSP PE-6-PE-1 because the metric is better than the regular IS-IS metric. IGP shortcuts will not be used to resolve prefixes downstream of the LSP endpoint when the LSP metric is higher than the underlying IGP cumulative metric.
*A:PE-6# show router route-table
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Remote ISIS 00h01m40s 15
192.0.2.1 (tunneled:RSVP:2) 9
192.0.2.2/32 Remote ISIS 00h01m40s 15
192.0.2.1 (tunneled:RSVP:2) 19
192.0.2.3/32 Remote ISIS 00h01m40s 15
192.0.2.1 (tunneled:RSVP:2) 19
192.0.2.4/32 Remote ISIS 00h02m52s 15
192.168.46.1 10
192.0.2.5/32 Remote ISIS 00h02m52s 15
192.168.56.1 10
192.0.2.6/32 Local Local 01h02m47s 0
system 0
192.168.12.0/30 Remote ISIS 00h01m40s 15
192.0.2.1 (tunneled:RSVP:2) 19
192.168.13.0/30 Remote ISIS 00h01m40s 15
192.0.2.1 (tunneled:RSVP:2) 19
192.168.23.0/30 Remote ISIS 00h01m40s 15
192.0.2.1 (tunneled:RSVP:2) 29
192.168.24.0/30 Remote ISIS 00h02m52s 15
192.168.46.1 20
192.168.35.0/30 Remote ISIS 00h02m52s 15
192.168.56.1 20
192.168.45.0/30 Remote ISIS 00h02m52s 15
192.168.46.1 20
192.168.46.0/30 Local Local 01h02m33s 0
int-PE-6-PE-4 0
192.168.56.0/30 Local Local 01h02m33s 0
int-PE-6-PE-5 0
-------------------------------------------------------------------------------
No. of Routes: 14
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
There are also cases where an LDP FEC can resolve to an RSVP LSP, if the user enables the LDP-over-RSVP feature or IGP shortcut feature when prefer-tunnel-in-tunnel is enabled in LDP and the endpoint of the RSVP LSP matches the FEC prefix. For those cases, the metric to the prefix is the sum of the RSVP LSP metric and the remaining IGP path cost.
RSVP LSP Role As Outcome of LSP Level and IGP Level Configuration Options provides a summary of the outcome when configuring the forwarding adjacency, LDPoRSVP and RSVP shortcut options at both the IGP instance level and at the LSP level.
IGP Instance Level Configurations |
||||||
---|---|---|---|---|---|---|
LSP Level Configuration |
advertise-tunnel-link enabled/rsvp-shortcut enabled/ldp-over-rsvp enabled |
advertise-tunnel-link enabled/rsvp-shortcut enabled/ldp-over-rsvp disabled |
advertise-tunnel-link enabled/rsvp-shortcut disabled/ldp-over-rsvp disabled |
advertise-tunnel-link disabled/rsvp-shortcut disabled/ldp-over-rsvp disabled |
advertise-tunnel-link disabled/rsvp-shortcut enabled/ldp-over-rsvp enabled |
advertise-tunnel-link disabled/rsvp-shortcut disabled/ldp-over-rsvp enabled |
igp-shortcut enabled/ldp-over-rsvp enabled |
Forwarding Adjacency |
Forwarding Adjacency |
Forwarding Adjacency |
None |
IGP Shortcut |
LDP-over-RSVP |
igp-shortcut enabled/ldp-over-rsvp disabled |
Forwarding Adjacency |
Forwarding Adjacency |
Forwarding Adjacency |
None |
IGP Shortcut |
None |
igp-shortcut disabled/ldp-over-rsvp enabled |
None |
None |
None |
None |
None |
LDP-over-RSVP |
igp-shortcut disabled/ldp-over-rsvp disabled |
None |
None |
None |
None |
None |
None |
LSP Relative Metric
It is possible to use relative metrics for IGP shortcuts as per RFC 3906, Calculating Interior Gateway Protocol (IGP) Routes Over Traffic Engineering Tunnels, with the following command (e.g. on PE-6):
*A:PE-6# configure router mpls lsp "LSP-PE-6-PE-1-strict" igp-shortcut relative-metric ?
- igp-shortcut [lfa-protect | lfa-only]
- igp-shortcut relative-metric [offset]
- no igp-shortcut
<lfa-protect> : keyword
<lfa-only> : keyword
<relative-metric> : keyword
<offset> : [-10..10]
When this feature is enabled, IGP applies the shortest IGP cost between the endpoints of the LSP, plus the value of a configured offset when computing the cost of the prefix that is resolved to the LSP.
The offset value is optional and can have a value between -10 and 10, and defaults to zero (0). An offset value of zero (0) is used when the relative metric option is enabled without specifying the offset parameter value. The minimum net cost for the prefix is capped to the value of one (1) after applying the offset:
Prefix cost = max (1, IGP Cost + relative metric offset)
The relative-metric option is ignored when advertise-tunnel-link is enabled in IS-IS or OSPF. In that case, the IGP advertises the LSP as a P2P unnumbered link using the LSP operational metric.
The relative-metric option is mutually exclusive with the lfa-protect (Loop-Free Alternate (LFA)) or the lfa-only options. An LSP with relative-metric option enabled cannot be included in the LFA SPF and vice versa when the rsvp-shortcut option is enabled in the IGP (see chapter LDP/IP FRR LFA for IGP Shortcut Using IS-IS/OSPF for more information).
The offset can be used to enforce the preference of the shortcut path over the other paths for the prefix. Using an example, a new CSPF LSP with empty path and relative metric of -10 is created between PE-6 and PE-1. Whereas the operational or absolute metric is 30 (IGP cost and populated in the Tunnel Table Manager, TTM), the metric that the RTM shows is 20 after applying the offset:
*A:PE-6# configure
router
mpls
lsp "LSP-PE-6-PE-1-loose"
to 192.0.2.1
path-computation-method local-cspf
igp-shortcut relative-metric -10
primary "loose_path"
exit
no shutdown
exit
*A:PE-6# show router tunnel-table 192.0.2.1
===============================================================================
IPv4 Tunnel Table (Router: Base)
===============================================================================
Destination Owner Encap TunnelId Pref Nexthop Metric
Color
-------------------------------------------------------------------------------
192.0.2.1/32 rsvp MPLS 4 7 192.168.46.1 30
192.0.2.1/32 rsvp MPLS 2 7 192.168.56.1 16777215
-------------------------------------------------------------------------------
Flags: B = BGP or MPLS backup hop available
L = Loop-Free Alternate (LFA) hop available
E = Inactive best-external BGP route
k = RIB-API or Forwarding Policy backup hop
===============================================================================
*A:PE-6# show router route-table 192.0.2.1
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Remote ISIS 00h00m28s 15
192.0.2.1 (tunneled:RSVP:4) 20
-------------------------------------------------------------------------------
No. of Routes: 1
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
LDP/IP FRR LFA for IGP Shortcut Using IS-IS/OSPF
MPLS LDP/IP FRR LFA for IGP shortcuts allows for the use of RSVP LSP-based IGP shortcuts as Loop-Free Alternate (LFA) backups, this way expanding the coverage of the IP Fast-Reroute (FRR) and the LDP FRR capabilities for IS-IS and OSPF prefixes. For a detailed description about IP and LDP FRR, see chapter MPLS LDP FRR using ISIS as IGP.
When an RSVP LSP is used as a shortcut by IS-IS or OSPF, it is included by the SPF as a P2P link and it can also be optionally advertised into the rest of the network by the IGP.
Two LSP-level configuration options are provided:
The lfa-protect option includes the RSVP LSP in both the main SPF and the LFA SPFs. If the prefix primary next hop (NH) is tunneled, no LFA NH is computed. The protection in this case is provided by RSVP FRR. If the prefix primary NH is direct, then an LFA NH is computed. A direct LFA NH is preferred over a tunneled LFA NH. Within each LFA NH type, node protection is preferred over link protection. The configuration command is:
configure router mpls lsp <lsp-name> igp-shortcut lfa-protect
The lfa-only option includes the LSP in the LFA SPFs only so that the introduction of IGP shortcuts does not impact the main SPF decision. The prefix primary NH is always direct and the prefix LFA NH is computed. A direct LFA NH is preferred over a tunneled LFA NH. Within each LFA NH type, node protection is preferred over link protection. The configuration command is:
configure router mpls lsp <lsp-name> igp-shortcut lfa-only
LDP/IP FRR is a local decision, so it can be enabled per node and there are no interoperability issues with other nodes. In the topology, PE-2 is provisioned with IS-IS LFA (OSPF configuration for the rest of this section is similar):
A:PE-2# configure router isis loopfree-alternates
The second item to configure is whether LDP or IP FRR is provisioned. To configure IP FRR, the command is:
A:PE-2# configure router ip-fast-reroute
To configure LDP FRR, the following command is used:
A:PE-2# configure router ldp fast-reroute
Although not shown, it is recommended to enable IGP-LDP synchronization per interface to avoid possible traffic black-holes.
LFA is enabled in all routers of the topology. The following command shows the LFA coverage on PE-2 where four nodes out of five are protected (80%) and seven of the ten prefixes are protected (70%). IPv4 prefixes are protected (IPv6 is not configured). The following output shows L1 and L2 because this node is provisioned as an L1-L2 IS-IS router.
*A:PE-2# show router isis lfa-coverage
===============================================================================
Rtr Base ISIS Instance 0 LFA Coverage
===============================================================================
Topology Level Node IPv4 IPv6
-------------------------------------------------------------------------------
IPV4 Unicast L1 4/5(80%) 7/10(70%) 0/0(0%)
IPV6 Unicast L1 0/0(0%) 0/0(0%) 0/0(0%)
IPV4 Multicast L1 0/0(0%) 0/0(0%) 0/0(0%)
IPV6 Multicast L1 0/0(0%) 0/0(0%) 0/0(0%)
IPV4 Unicast L2 4/5(80%) 7/10(70%) 0/0(0%)
IPV6 Unicast L2 0/0(0%) 0/0(0%) 0/0(0%)
IPV4 Multicast L2 0/0(0%) 0/0(0%) 0/0(0%)
IPV6 Multicast L2 0/0(0%) 0/0(0%) 0/0(0%)
===============================================================================
PE-2, PE-3, PE-4, and PE-5 share the same results, whereas only PE-1 and PE-6 have a coverage of 100% as shown in the following output.
*A:PE-1# show router isis lfa-coverage
===============================================================================
Rtr Base ISIS Instance 0 LFA Coverage
===============================================================================
Topology Level Node IPv4 IPv6
-------------------------------------------------------------------------------
IPV4 Unicast L1 5/5(100%) 11/11(100%) 0/0(0%)
IPV6 Unicast L1 0/0(0%) 0/0(0%) 0/0(0%)
IPV4 Multicast L1 0/0(0%) 0/0(0%) 0/0(0%)
IPV6 Multicast L1 0/0(0%) 0/0(0%) 0/0(0%)
IPV4 Unicast L2 5/5(100%) 11/11(100%) 0/0(0%)
IPV6 Unicast L2 0/0(0%) 0/0(0%) 0/0(0%)
IPV4 Multicast L2 0/0(0%) 0/0(0%) 0/0(0%)
IPV6 Multicast L2 0/0(0%) 0/0(0%) 0/0(0%)
===============================================================================
Taking a deeper look into the IS-IS LFA on PE-2, it can be seen that the node which is not protected is PE-4 (system address 192.0.2.4, because it is the one missing):
*A:PE-2# show router route-table alternative | match LFA pre-lines 2
192.0.2.1/32 Remote ISIS 01h16m32s 15
192.168.12.1 10
192.168.23.2 (LFA) 20
192.0.2.3/32 Remote ISIS 01h16m24s 15
192.168.23.2 10
192.168.12.1 (LFA) 20
192.0.2.5/32 Remote ISIS 01h16m21s 15
192.168.23.2 20
192.168.24.2 (LFA) 20
192.0.2.6/32 Remote ISIS 01h16m16s 15
192.168.24.2 20
192.168.23.2 (LFA) 30
192.168.13.0/30 Remote ISIS 01h16m32s 15
192.168.12.1 20
192.168.23.2 (LFA) 30
192.168.35.0/30 Remote ISIS 01h16m24s 15
192.168.23.2 20
192.168.12.1 (LFA) 30
192.168.56.0/30 Remote ISIS 01h16m21s 15
192.168.23.2 30
192.168.24.2 (LFA) 30
Flags: n = Number of times nexthop is repeated
Backup = BGP backup route
LFA = Loop-Free Alternate nexthop
LFA is improved by taking advantage of RSVP shortcuts when it is properly provisioned. The reason why PE-4 cannot be protected with an LFA path is because the direct NH is using the direct link between PE-2 and PE-4 (the shortest IGP) and the intended LFA path through PE-3 is not valid (when LFA tries to find an alternate path via PE-3, the IGP cost from PE-3 to PE-4 is the same going via PE-5 as the path back via PE-2, invalidating that LFA calculation because there is a loop). This is normal because PE-2, PE-3, PE-4 and PE-5 are forming a ring. LFA coverage is increased by adding a link between PE-2 and PE-5, which can be done using a physical link or a virtual link with an RSVP shortcut. From the two possible options (lfa-only and lfa-protect), a new LSP ‟LSP-PE-2-PE-5” is configured with igp-shortcut lfa-only.
*A:PE-2# configure
router
mpls
path "path-to-PE-5"
hop 10 192.0.2.3 strict
hop 20 192.0.2.5 strict
no shutdown
exit
lsp "LSP-PE-2-PE-5"
to 192.0.2.5
igp-shortcut lfa-only
primary "path-to-PE-5"
exit
no shutdown
exit
Now the LFA coverage is 100% on PE-2 as shown by the following output:
*A:PE-2# show router isis lfa-coverage
===============================================================================
Rtr Base ISIS Instance 0 LFA Coverage
===============================================================================
Topology Level Node IPv4 IPv6
-------------------------------------------------------------------------------
IPV4 Unicast L1 5/5(100%) 10/10(100%) 0/0(0%)
IPV6 Unicast L1 0/0(0%) 0/0(0%) 0/0(0%)
IPV4 Multicast L1 0/0(0%) 0/0(0%) 0/0(0%)
IPV6 Multicast L1 0/0(0%) 0/0(0%) 0/0(0%)
IPV4 Unicast L2 5/5(100%) 10/10(100%) 0/0(0%)
IPV6 Unicast L2 0/0(0%) 0/0(0%) 0/0(0%)
IPV4 Multicast L2 0/0(0%) 0/0(0%) 0/0(0%)
IPV6 Multicast L2 0/0(0%) 0/0(0%) 0/0(0%)
===============================================================================
The GRT details the prefix information after the new LFA calculation using the lfa-only option (the shortcut is used by LFA SPF). The metric from PE-2 to PE-4 is the maximum plus the IGP cost (16777215 + 10) and the shortcut is also used to protect the rest of the previously unprotected prefixes:
*A:PE-2# show router route-table alternative | match LFA pre-lines 2
192.0.2.1/32 Remote ISIS 01h17m45s 15
192.168.12.1 10
192.168.23.2 (LFA) 20
192.0.2.3/32 Remote ISIS 01h17m38s 15
192.168.23.2 10
192.168.12.1 (LFA) 20
192.0.2.4/32 Remote ISIS 01h17m38s 15
192.168.24.2 10
192.0.2.5 (LFA) (tunneled:RSVP:1) 16777225
192.0.2.5/32 Remote ISIS 01h17m34s 15
192.168.23.2 20
192.168.24.2 (LFA) 20
192.0.2.6/32 Remote ISIS 01h17m30s 15
192.168.24.2 20
192.168.23.2 (LFA) 30
192.168.13.0/30 Remote ISIS 01h17m45s 15
192.168.12.1 20
192.168.23.2 (LFA) 30
192.168.35.0/30 Remote ISIS 01h17m38s 15
192.168.23.2 20
192.168.12.1 (LFA) 30
192.168.45.0/30 Remote ISIS 01h17m38s 15
192.168.24.2 20
192.0.2.5 (LFA) (tunneled:RSVP:1) 16777235
192.168.46.0/30 Remote ISIS 01h17m38s 15
192.168.24.2 20
192.0.2.5 (LFA) (tunneled:RSVP:1) 16777235
192.168.56.0/30 Remote ISIS 01h17m34s 15
192.168.23.2 30
192.168.24.2 (LFA) 30
Flags: n = Number of times nexthop is repeated
Backup = BGP backup route
LFA = Loop-Free Alternate nexthop
The tunnel table shows the RSVP LSP used as a shortcut and its operational metric.
*A:PE-2# show router tunnel-table 192.0.2.5
===============================================================================
IPv4 Tunnel Table (Router: Base)
===============================================================================
Destination Owner Encap TunnelId Pref Nexthop Metric
Color
-------------------------------------------------------------------------------
192.0.2.5/32 rsvp MPLS 1 7 192.168.23.2 16777215
192.0.2.5/32 [L] ldp MPLS 65540 9 192.168.23.2 20
-------------------------------------------------------------------------------
Flags: B = BGP or MPLS backup hop available
L = Loop-Free Alternate (LFA) hop available
E = Inactive best-external BGP route
k = RIB-API or Forwarding Policy backup hop
===============================================================================
If the LSP ‟LSP-PE-2-PE-5” is provisioned with lfa-protect instead of lfa-only, the result is that the LSP "LSP-PE-2-PE-5‟ is used by normal SPF to define the primary NH and it is not used by LFA SPF anymore.
*A:PE-2# configure router mpls lsp "LSP-PE-2-PE-5" igp-shortcut lfa-protect
The coverage when lfa-protect is used also shows a 100% for nodes and 100% for prefixes, as follows.
*A:PE-2# show router isis lfa-coverage
===============================================================================
Rtr Base ISIS Instance 0 LFA Coverage
===============================================================================
Topology Level Node IPv4 IPv6
-------------------------------------------------------------------------------
IPV4 Unicast L1 5/5(100%) 9/9(100%) 0/0(0%)
IPV6 Unicast L1 0/0(0%) 0/0(0%) 0/0(0%)
IPV4 Multicast L1 0/0(0%) 0/0(0%) 0/0(0%)
IPV6 Multicast L1 0/0(0%) 0/0(0%) 0/0(0%)
IPV4 Unicast L2 5/5(100%) 9/9(100%) 0/0(0%)
IPV6 Unicast L2 0/0(0%) 0/0(0%) 0/0(0%)
IPV4 Multicast L2 0/0(0%) 0/0(0%) 0/0(0%)
IPV6 Multicast L2 0/0(0%) 0/0(0%) 0/0(0%)
===============================================================================
In this case, the GRT looks as follows, the main difference being that now PE-5 (192.0.2.5) has a direct shortcut from PE-2:
*A:PE-2# show router route-table alternative
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
Alt-NextHop Alt-
Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Remote ISIS 01h18m31s 15
192.168.12.1 10
192.168.23.2 (LFA) 20
192.0.2.2/32 Local Local 01h18m46s 0
system 0
192.0.2.3/32 Remote ISIS 01h18m23s 15
192.168.23.2 10
192.168.12.1 (LFA) 20
192.0.2.4/32 Remote ISIS 01h18m23s 15
192.168.24.2 10
192.0.2.5 (LFA) (tunneled:RSVP:1) 16777225
192.0.2.5/32 Remote ISIS 00h00m43s 15
192.0.2.5 (tunneled:RSVP:1) 16777215
192.0.2.6/32 Remote ISIS 01h18m15s 15
192.168.24.2 20
192.168.23.2 (LFA) 30
192.168.12.0/30 Local Local 01h18m32s 0
int-PE-2-PE-1 0
192.168.13.0/30 Remote ISIS 01h18m31s 15
192.168.12.1 20
192.168.23.2 (LFA) 30
192.168.23.0/30 Local Local 01h18m32s 0
int-PE-2-PE-3 0
192.168.24.0/30 Local Local 01h18m32s 0
int-PE-2-PE-4 0
192.168.35.0/30 Remote ISIS 01h18m23s 15
192.168.23.2 20
192.168.12.1 (LFA) 30
192.168.45.0/30 Remote ISIS 01h18m23s 15
192.168.24.2 20
192.0.2.5 (LFA) (tunneled:RSVP:1) 16777235
192.168.46.0/30 Remote ISIS 01h18m23s 15
192.168.24.2 20
192.0.2.5 (LFA) (tunneled:RSVP:1) 16777235
192.168.56.0/30 Remote ISIS 00h00m43s 15
192.168.24.2 30
192.168.23.2 (LFA) 40
-------------------------------------------------------------------------------
No. of Routes: 14
Flags: n = Number of times nexthop is repeated
Backup = BGP backup route
LFA = Loop-Free Alternate nexthop
S = Sticky ECMP requested
===============================================================================
Rules Determining the Installation of Shortcuts into the RTM
Although it was already mentioned in the RSVP-TE LSP shortcut for IGP route resolution section, the rules determining how shortcuts are installed into the RTM are (sorted by higher priority):
RSVP shortcut.
LDP shortcut.
IGP route with regular IP next hop.
The implementation is compliant with RFC 3906.
To check the rules, the network configuration is iLDP in all interfaces with LDP shortcuts enabled, there is also an RSVP LSP from PE-6 to PE-3 available but RSVP shortcuts are disabled. The topology is shown in Network Topology to Verify Installation of Shortcuts into the RTM.
The following RSVP LSP is needed between PE-6 and PE-3.
*A:PE-6# configure router ldp-shortcut
*A:PE-6# configure
router
isis
igp-shortcut
shutdown
tunnel-next-hop
family ipv4
resolution disabled
resolution-filter
no rsvp
exit
exit
exit
exit
*A:PE-6# configure
router
mpls
path "loose_path"
no shutdown
exit
lsp "LSP-PE-6-PE-3"
to 192.0.2.3
path-computation-method local-cspf
primary "loose_path"
exit
no shutdown
exit
The routes in the routing table on PE-6 are the following:
*A:PE-6# show router route-table
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Remote LDP 00h00m53s 9
192.168.56.1 (tunneled) 30
192.0.2.2/32 Remote LDP 00h00m53s 9
192.168.56.1 (tunneled) 30
192.0.2.3/32 Remote LDP 00h00m53s 9
192.168.56.1 (tunneled) 20
192.0.2.5/32 Remote LDP 00h00m53s 9
192.168.56.1 (tunneled) 10
192.0.2.6/32 Local Local 01h23m09s 0
system 0
192.168.12.0/30 Remote ISIS 00h01m30s 15
192.168.56.1 40
192.168.13.0/30 Remote ISIS 00h19m13s 15
192.168.56.1 30
192.168.23.0/30 Remote ISIS 00h01m30s 15
192.168.56.1 30
192.168.35.0/30 Remote ISIS 00h23m14s 15
192.168.56.1 20
192.168.56.0/30 Local Local 01h22m55s 0
int-PE-6-PE-5 0
-------------------------------------------------------------------------------
No. of Routes: 10
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
The tunnel table shows the LSPs available for the shortcuts, and therefore, these are used in the GRT for LDP (but not for RSVP):
*A:PE-6# show router tunnel-table
===============================================================================
IPv4 Tunnel Table (Router: Base)
===============================================================================
Destination Owner Encap TunnelId Pref Nexthop Metric
Color
-------------------------------------------------------------------------------
192.0.2.1/32 ldp MPLS 65547 9 192.168.56.1 30
192.0.2.2/32 ldp MPLS 65544 9 192.168.56.1 30
192.0.2.3/32 rsvp MPLS 5 7 192.168.56.1 20
192.0.2.3/32 ldp MPLS 65545 9 192.168.56.1 20
192.0.2.5/32 ldp MPLS 65537 9 192.168.56.1 10
-------------------------------------------------------------------------------
Flags: B = BGP or MPLS backup hop available
L = Loop-Free Alternate (LFA) hop available
E = Inactive best-external BGP route
k = RIB-API or Forwarding Policy backup hop
===============================================================================
So far, LDP shortcuts are preferred over the IGP next hops for the system addresses (router ID). After enabling RSVP shortcuts in the isis context, the changes in the GRT are:
*A:PE-6# configure
router
isis
igp-shortcut
tunnel-next-hop
family ipv4
resolution filter
resolution-filter
rsvp
exit
exit
exit
no shutdown
exit
*A:PE-6# show router route-table next-hop-type tunneled
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
192.0.2.1/32 Remote ISIS 00h01m34s 15
192.0.2.3 (tunneled:RSVP:5) 30
192.0.2.2/32 Remote ISIS 00h01m34s 15
192.0.2.3 (tunneled:RSVP:5) 30
192.0.2.3/32 Remote ISIS 00h01m34s 15
192.0.2.3 (tunneled:RSVP:5) 20
192.0.2.5/32 Remote LDP 00h02m30s 9
192.168.56.1 (tunneled) 10
192.168.12.0/30 Remote ISIS 00h01m34s 15
192.0.2.3 (tunneled:RSVP:5) 40
192.168.13.0/30 Remote ISIS 00h01m34s 15
192.0.2.3 (tunneled:RSVP:5) 30
192.168.23.0/30 Remote ISIS 00h01m34s 15
192.0.2.3 (tunneled:RSVP:5) 30
-------------------------------------------------------------------------------
No. of Routes: 7
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
The GRT shows that PE-6 is using an LDP shortcut to reach PE-5, but PE-6 is using the RSVP shortcut to reach not only PE-3’s system address, but also PE-1 and PE-2 routes (including all interfaces) which were behind the RSVP LSP shortcut.
In summary, the behavior is:
When resolving a prefix, SPF picks the RSVP shortcut next hop if there is an RSVP LSP directly to that address regardless of the IGP path cost compared to the IGP next hop. When multiple RSVP LSPs to that address exist and all have the same lowest metric, if ECMP is enabled on the system, the LSP with the lowest tunnel ID is chosen. In this example, if LSP ‟LSP-PE-6-PE-3” is provisioned with a metric of 100 (IGP metric is 20), the GRT shows that the PE-3 system address is reachable via the LSP.
*A:PE-6# show router route-table 192.0.2.3 =============================================================================== Route Table (Router: Base) =============================================================================== Dest Prefix[Flags] Type Proto Age Pref Next Hop[Interface Name] Metric ------------------------------------------------------------------------------- 192.0.2.3/32 Remote ISIS 00h00m22s 15 192.0.2.3 (tunneled:RSVP:5) 100 ------------------------------------------------------------------------------- No. of Routes: 1 Flags: n = Number of times nexthop is repeated B = BGP backup route available L = LFA nexthop available S = Sticky ECMP requested ===============================================================================
SPF also picks the RSVP LSP shortcut if both the LSP path and the IGP path to the prefix are via the tail-end of the LSP. This is regardless of the path cost compared to the IGP next hop. When paths over multiple RSVP shortcuts have the same lowest cost, if ECMP is enabled on the system, the LSP with the lowest tunnel ID is chosen. In this example, 192.168.13.0 and 192.168.23.0 are using the shortcut but 192.168.12.0 is not.
*A:PE-6# show router route-table =============================================================================== Route Table (Router: Base) =============================================================================== Dest Prefix[Flags] Type Proto Age Pref Next Hop[Interface Name] Metric ------------------------------------------------------------------------------- 192.0.2.1/32 Remote LDP 00h00m22s 9 192.168.56.1 (tunneled) 30 192.0.2.2/32 Remote LDP 00h00m22s 9 192.168.56.1 (tunneled) 30 192.0.2.3/32 Remote ISIS 00h00m22s 15 192.0.2.3 (tunneled:RSVP:5) 100 192.0.2.5/32 Remote LDP 00h03m56s 9 192.168.56.1 (tunneled) 10 192.0.2.6/32 Local Local 01h26m12s 0 system 0 192.168.12.0/30 Remote ISIS 00h00m22s 15 192.168.56.1 40 192.168.13.0/30 Remote ISIS 00h00m22s 15 192.0.2.3 (tunneled:RSVP:5) 110 192.168.23.0/30 Remote ISIS 00h00m22s 15 192.0.2.3 (tunneled:RSVP:5) 110 192.168.35.0/30 Remote ISIS 00h26m16s 15 192.168.56.1 20 192.168.56.0/30 Local Local 01h25m57s 0 int-PE-6-PE-5 0 ------------------------------------------------------------------------------- No. of Routes: 10 Flags: n = Number of times nexthop is repeated B = BGP backup route available L = LFA nexthop available S = Sticky ECMP requested ===============================================================================
LDP/RSVP LSP Shortcut for BGP NH Resolution
Using LDP/RSVP LSP shortcuts for resolving BGP next hops allows IPv4 packet forwarding to routes resolved via a BGP next hop using an LDP/RSVP LSP instead of using a regular IP next hop. In the network topology of Example Topology, both PE-3 and PE-6 have a single peer configured, initially without any shortcuts enabled under the bgp context. Also, one static route is configured in PE-3 and PE-6 and that is redistributed into BGP. The relevant configuration on PE-3 is the following:
*A:PE-3# configure
router
interface "static-route"
address 172.16.33.1/30
port 1/1/4:33
exit
autonomous-system 65536
static-route-entry 10.10.10.0/24
next-hop 172.16.33.2
no shutdown
exit
exit
policy-options
begin
policy-statement "static-routes"
description "export static-routes for I-BGP"
entry 10
from
protocol static
exit
to
protocol bgp
exit
action accept
next-hop-self
exit
exit
exit
commit
exit
bgp
export "static-routes"
group "ibgp"
peer-as 65536
neighbor 192.0.2.6
exit
exit
exit
Checking the static route received on PE-6 via BGP, the next hop is the PE-3 system address:
*A:PE-6# show router bgp routes 10.10.10.0/24 detail
===============================================================================
BGP Router ID:192.0.2.6 AS:65536 Local AS:65536
===============================================================================
Legend -
Status codes : u - used, s - suppressed, h - history, d - decayed, * - valid
l - leaked, x - stale, > - best, b - backup, p - purge
Origin codes : i - IGP, e - EGP, ? - incomplete
===============================================================================
BGP IPv4 Routes
===============================================================================
Original Attributes
Network : 10.10.10.0/24
Nexthop : 192.0.2.3
Path Id : None
From : 192.0.2.3
Res. Protocol : ISIS Res. Metric : 20
Res. Nexthop : 192.168.56.1
Local Pref. : 100 Interface Name : int-PE-6-PE-5
Aggregator AS : None Aggregator : None
Atomic Aggr. : Not Atomic MED : None
AIGP Metric : None IGP Cost : 20
Connector : None
Community : No Community Members
Cluster : No Cluster Members
Originator Id : None Peer Router Id : 192.0.2.3
Fwd Class : None Priority : None
Flags : Used Valid Best Incomplete In-RTM
Route Source : Internal
AS-Path : No As-Path
Route Tag : 0
Neighbor-AS : n/a
Orig Validation: NotFound
Source Class : 0 Dest Class : 0
Add Paths Send : Default
RIB Priority : Normal
Last Modified : 00h01m34s
Modified Attributes
---snip---
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Routes : 1
===============================================================================
Three of the BGP peering configuration possibilities are LDP, RSVP, or BGP. The other resolution filter options are related to segment routing and are beyond the scope of this chapter. In case both LDP and RSVP are included in the filter, RSVP is preferred. Disabling the IGP is also allowed (meaning that unless there is a shortcut, the BGP peering will not fall back to IGP):
*A:PE-6# configure router bgp next-hop-resolution shortcut-tunnel family ipv4 resolution ?
- resolution {any|filter|disabled}
*A:PE-6# configure router bgp next-hop-resolution shortcut-tunnel family ipv4 resolution-filter ?
- resolution-filter
[no] bgp - Use BGP tunnelling for next hop resolution
[no] ldp - Use LDP tunnelling for next hop resolution
[no] mpls-fwd-policy - Use MPLS Forwarding Policy for next hop resolution
[no] rib-api - Use RIB-API for next-hop resolution
[no] rsvp - Use RSVP tunnelling for next hop resolution
[no] sr-isis - Use sr-isis for next hop resolution
[no] sr-ospf - Use sr-ospf for next hop resolution
[no] sr-ospf3 - Use sr-ospf3 for next hop resolution
[no] sr-policy - Use sr-policy for next hop resolution
[no] sr-te - Use sr-te for next hop resolution
When enabling LDP shortcuts on PE-6, the output changes showing the detail of the received BGP route indicating that the next hop is resolved using LDP:
*A:PE-6# configure
router
bgp
next-hop-resolution
shortcut-tunnel
family ipv4
resolution-filter
ldp
exit
resolution filter
exit
exit
exit
*A:PE-6# show router bgp routes 10.10.10.0/24 detail
===============================================================================
BGP Router ID:192.0.2.6 AS:65536 Local AS:65536
===============================================================================
Legend -
Status codes : u - used, s - suppressed, h - history, d - decayed, * - valid
l - leaked, x - stale, > - best, b - backup, p - purge
Origin codes : i - IGP, e - EGP, ? - incomplete
===============================================================================
BGP IPv4 Routes
===============================================================================
Original Attributes
Network : 10.10.10.0/24
Nexthop : 192.0.2.3
Path Id : None
From : 192.0.2.3
Res. Protocol : LDP Res. Metric : 20
Res. Nexthop : 192.0.2.3 (LDP)
Local Pref. : 100 Interface Name : NotAvailable
Aggregator AS : None Aggregator : None
Atomic Aggr. : Not Atomic MED : None
AIGP Metric : None IGP Cost : 20
Connector : None
Community : No Community Members
Cluster : No Cluster Members
Originator Id : None Peer Router Id : 192.0.2.3
Fwd Class : None Priority : None
Flags : Used Valid Best Incomplete In-RTM
Route Source : Internal
AS-Path : No As-Path
Route Tag : 0
Neighbor-AS : n/a
Orig Validation: NotFound
Source Class : 0 Dest Class : 0
Add Paths Send : Default
RIB Priority : Normal
Last Modified : 00h03m16s
Modified Attributes
---snip---
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Routes : 1
===============================================================================
The GRT output command also shows that the route is reachable using LDP (indicated as tunneled):
*A:PE-6# show router route-table next-hop-type tunneled
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
10.10.10.0/24 Remote BGP 00h00m21s 170
192.0.2.3 (tunneled) 20
-------------------------------------------------------------------------------
No. of Routes: 1
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
The previously created LSP LSP-PE-6-PE-3 is up and running:
*A:PE-6# show router mpls lsp "LSP-PE-6-PE-3" path detail
===============================================================================
MPLS LSP LSP-PE-6-PE-3 Path (Detail)
===============================================================================
Legend :
@ - Detour Available # - Detour In Use
b - Bandwidth Protected n - Node Protected
s - Soft Preemption
S - Strict L - Loose
A - ABR + - Inherited
===============================================================================
-------------------------------------------------------------------------------
LSP LSP-PE-6-PE-3
Path loose_path
-------------------------------------------------------------------------------
LSP Name : LSP-PE-6-PE-3
From : 192.0.2.6
To : 192.0.2.3
Admin State : Up Oper State : Up
Path Name : loose_path
Path LSP ID : 30720 Path Type : Primary
Path Admin : Up Path Oper : Up
Out Interface : 1/1/1 Out Label : 524286
Path Up Time : 0d 00:15:05 Path Down Time : 0d 00:00:00
Retry Limit : 0 Retry Timer : 30 sec
Retry Attempt : 0 Next Retry In : 0 sec
---snip---
Adspec : Disabled Oper Adspec : Disabled
PathCompMethod : local-cspf OperPathCompMethod: local-cspf
MetricType : igp Oper MetricType : igp
Least Fill : Disabled Oper LeastFill : Disabled
FRR : Disabled Oper FRR : Disabled
Propagate Adm Grp: Disabled Oper Prop Adm Grp : Disabled
Inter-area : False
---snip---
Adaptive : Enabled Oper Metric : 100
Preference : n/a
Path Trans : 1 CSPF Queries : 1
Failure Code : noError
Failure Node : n/a
Explicit Hops :
No Hops Specified
Actual Hops :
192.168.56.2(192.0.2.6) Record Label : N/A
-> 192.168.56.1(192.0.2.5) Record Label : 524286
-> 192.168.35.1(192.0.2.3) Record Label : 524284
Computed Hops :
192.168.56.2(S)
-> 192.168.56.1(S)
-> 192.168.35.1(S)
Resignal Eligible: False
Last Resignal : n/a CSPF Metric : 20
===============================================================================
After adding resolution-filter rsvp to the shortcut-tunnel configuration in the bgp context, the output shows that the BGP peer is reachable using an RSVP LSP (switched from LDP to RSVP because RSVP is preferred):
*A:PE-6# configure
router
bgp
next-hop-resolution
shortcut-tunnel
family ipv4
resolution-filter
ldp
rsvp
exit
resolution filter
exit
exit
exit
*A:PE-6# show router bgp routes 10.10.10.0/24 detail
===============================================================================
BGP Router ID:192.0.2.6 AS:65536 Local AS:65536
===============================================================================
Legend -
Status codes : u - used, s - suppressed, h - history, d - decayed, * - valid
l - leaked, x - stale, > - best, b - backup, p - purge
Origin codes : i - IGP, e - EGP, ? - incomplete
===============================================================================
BGP IPv4 Routes
===============================================================================
Original Attributes
Network : 10.10.10.0/24
Nexthop : 192.0.2.3
Path Id : None
From : 192.0.2.3
Res. Protocol : RSVP Res. Metric : 100
Res. Nexthop : 192.0.2.3 (RSVP LSP: 5)
Local Pref. : 100 Interface Name : NotAvailable
Aggregator AS : None Aggregator : None
Atomic Aggr. : Not Atomic MED : None
AIGP Metric : None IGP Cost : 100
Connector : None
Community : No Community Members
Cluster : No Cluster Members
Originator Id : None Peer Router Id : 192.0.2.3
Fwd Class : None Priority : None
Flags : Used Valid Best Incomplete In-RTM
Route Source : Internal
AS-Path : No As-Path
Route Tag : 0
Neighbor-AS : n/a
Orig Validation: NotFound
Source Class : 0 Dest Class : 0
Add Paths Send : Default
RIB Priority : Normal
Last Modified : 00h07m05s
Modified Attributes
---snip---
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Routes : 1
===============================================================================
The GRT output command also shows that the route is reachable using RSVP (indicated as tunneled:RSVP:5):
*A:PE-6# show router route-table next-hop-type tunneled
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
10.10.10.0/24 Remote BGP 00h01m00s 170
192.0.2.3 (tunneled:RSVP:5) 100
-------------------------------------------------------------------------------
No. of Routes: 1
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
If the RSVP LSP is shutdown, the system reverts back to the LDP LSP:
*A:PE-6# configure router mpls lsp "LSP-PE-6-PE-3" shutdown
*A:PE-6# show router bgp routes 10.10.10.0/24 detail
===============================================================================
BGP Router ID:192.0.2.6 AS:65536 Local AS:65536
===============================================================================
Legend -
Status codes : u - used, s - suppressed, h - history, d - decayed, * - valid
l - leaked, x - stale, > - best, b - backup, p - purge
Origin codes : i - IGP, e - EGP, ? - incomplete
===============================================================================
BGP IPv4 Routes
===============================================================================
Original Attributes
Network : 10.10.10.0/24
Nexthop : 192.0.2.3
Path Id : None
From : 192.0.2.3
Res. Protocol : LDP Res. Metric : 20
Res. Nexthop : 192.0.2.3 (LDP)
Local Pref. : 100 Interface Name : NotAvailable
Aggregator AS : None Aggregator : None
Atomic Aggr. : Not Atomic MED : None
AIGP Metric : None IGP Cost : 20
Connector : None
Community : No Community Members
Cluster : No Cluster Members
Originator Id : None Peer Router Id : 192.0.2.3
Fwd Class : None Priority : None
Flags : Used Valid Best Incomplete In-RTM
Route Source : Internal
AS-Path : No As-Path
Route Tag : 0
Neighbor-AS : n/a
Orig Validation: NotFound
Source Class : 0 Dest Class : 0
Add Paths Send : Default
RIB Priority : Normal
Last Modified : 00h07m29s
Modified Attributes
---snip---
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Routes : 1
===============================================================================
When the shortcut tunnel with resolution-filter rsvp is enabled at the BGP level, all RSVP LSPs originating on this node are eligible to be used by default as long as the destination address of the LSP corresponds to that of the BGP next hop for that prefix. It is also possible to exclude a specific RSVP LSP from BGP next hop resolution, similar to the exclusion of a specific RSVP LSP being used as a shortcut for resolving IGP routes. In this example, if the RSVP LSP LSP-PE-6-PE-3 is excluded to be eligible for BGP next hop resolution, it reverts back to LDP.
*A:PE-6# configure
router
mpls
lsp "LSP-PE-6-PE-3"
no bgp-shortcut
no shutdown
exit
*A:PE-6# show router route-table 10.10.10.0
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
10.10.10.0/24 Remote BGP 00h03m03s 170
192.0.2.3 (tunneled) 20
-------------------------------------------------------------------------------
No. of Routes: 1
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
If the configuration is using disallow-igp, and neither LDP nor RSVP LSPs are available, the remote route received via BGP is removed from the GRT although the BGP peer session remains up. A field in the detailed show BGP route output indicates that the next hop is ‟Unresolved”:
*A:PE-6# configure router bgp next-hop-resolution shortcut-tunnel family ipv4 disallow-igp
*A:PE-6# configure router ldp shutdown
*A:PE-6# show router bgp routes 10.10.10.0/24 detail
===============================================================================
BGP Router ID:192.0.2.6 AS:65536 Local AS:65536
===============================================================================
Legend -
Status codes : u - used, s - suppressed, h - history, d - decayed, * - valid
l - leaked, x - stale, > - best, b - backup, p - purge
Origin codes : i - IGP, e - EGP, ? - incomplete
===============================================================================
BGP IPv4 Routes
===============================================================================
Original Attributes
Network : 10.10.10.0/24
Nexthop : 192.0.2.3
Path Id : None
From : 192.0.2.3
Res. Protocol : INVALID Res. Metric : 0
Res. Nexthop : Unresolved
Local Pref. : 100 Interface Name : NotAvailable
Aggregator AS : None Aggregator : None
Atomic Aggr. : Not Atomic MED : None
AIGP Metric : None IGP Cost : 0
Connector : None
Community : No Community Members
Cluster : No Cluster Members
Originator Id : None Peer Router Id : 192.0.2.3
Fwd Class : None Priority : None
Flags : Invalid Incomplete Nexthop-Unresolved
Route Source : Internal
AS-Path : No As-Path
Route Tag : 0
Neighbor-AS : n/a
Orig Validation: NotFound
Source Class : 0 Dest Class : 0
Add Paths Send : Default
RIB Priority : Normal
Last Modified : 00h10m33s
Modified Attributes
---snip---
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Routes : 1
===============================================================================
Because the route is unresolved, it does not appear in the GRT:
*A:PE-6# show router route-table 10.10.10.0
===============================================================================
Route Table (Router: Base)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
No. of Routes: 0
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
MPLS/GRE Shortcut for BGP NH Resolution within a VRF
Using RSVP/LDP or GRE shortcuts for resolving BGP next hops within a Virtual Private Routed Network (VPRN), also known as auto-bind-tunnel, allows a VPRN service to automatically resolve the BGP next hop for VPRN routes to an MPLS LSP or a GRE tunnel. Three possible mechanisms exist to provide transport tunnels for forwarding traffic between PE routers within an RFC 4364, BGP/MPLS IP Virtual Private Networks (VPNs), network:
RSVP-TE protocol to create tunnel LSPs between PE routers.
LDP protocol to create tunnel LSPs between PE routers.
GRE tunnels between PE routers.
These transport tunneling mechanisms provide the flexibility to use dynamically created LSPs where the service tunnels are automatically bound (the auto-bind-tunnel feature), and the ability to provide certain VPN services with their own transport tunnels by explicitly binding SDPs if desired. All services using the auto-bind-tunnel feature use the same set of LSPs, which does not allow for alternate tunneling mechanisms (like GRE) or the ability to craft sets of LSPs with bandwidth reservations for specific customers, as is available with explicit SDPs for the service.
The auto-bind-tunnel configuration is as follows:
*A:PE-2# configure service vprn 1 auto-bind-tunnel resolution ?
- resolution {disabled|any|filter}
<disabled|any|filt*> : disabled|any|filter
*A:PE-2# configure service vprn 1 auto-bind-tunnel resolution-filter ?
- resolution-filter
[no] bgp - Enable/disable setting BGP type for auto-bind-tunnel
[no] gre - Enable/disable setting GRE type for auto-bind-tunnel
[no] ldp - Enable/disable setting LDP type for auto-bind-tunnel
[no] mpls-fwd-policy - Enable/disable MPLS Forwarding Policy for auto-bind-tunnel
[no] rib-api - Enable/disable setting RIB-API type for auto-bind-tunnel
[no] rsvp - Enable/disable setting RSVP-TE type for auto-bind-tunnel
[no] sr-isis - Enable/disable setting SR-ISIS type for auto-bind-tunnel
[no] sr-ospf - Enable/disable setting SR-OSPF type for auto-bind-tunnel
[no] sr-ospf3 - Enable/disable setting SR-OSPF3 type for auto-bind-tunnel
[no] sr-policy - Enable/disable SR-Policy type for auto-bind-tunnel
[no] sr-te - Enable/disable setting SR-TE type for auto-bind-tunnel
[no] udp - Enable/disable setting UDP type for auto-bind-tunnel
Parameter descriptions:
ldp — Specifies LDP-based LSPs should be used to resolve the BGP next hop for VPRN routes in an associated VPRN instance.
gre — Specifies GRE-based tunnels to be used to resolve the BGP next hop for VPRN routes in an associated VPRN instance. GRE is out of the scope regarding shortcuts, refer to SR OS documentation for further details.
rsvp — Specifies RSVP-TE LSPs should be used to resolve the BGP next hop for VPRN routes in an associated VPRN instance.
the remaining parameters are beyond the scope of this chapter.
In all cases, if an explicit spoke-SDP is specified in the VPRN, it is always preferred over automatically selected tunnels (even if the SDP is down, the route becomes inactive; there is no fallback to the automatic selection).
The network is configured according to the topology shown in Shortcuts Within a VRF Topology Network. Four PEs (PE-1, PE-2, PE-4, and PE-5) are connected forming a meshed IP-VPN (named VPRN_1), using a route reflector on PE-3 for MP-BGP peering. All PEs have LDP tunnels enabled so at a minimum all can establish LDP shortcut tunnels to the others. In order to have not only LDP but also RSVP-TE LSPs and static SDPs (using an RSVP LSP) in the network, a mix of tunneling methods is configured. For brevity, the configuration of PE-2 only is given, providing the details about the shortcuts created by auto-bind-tunnel. PE-2 has a static SDP (RSVP-based) with PE-1, an RSVP LSP with PE-4, and an LDP LSP with PE-5. Every PE has a CE connected, so each PE has an interface connected to the CE as well as a static route to a CE LAN (although redistribution routing policies are needed, they are not shown for brevity).
On PE-2, VPRN1 is configured as follows:
*A:PE-2# configure
service
sdp 1 mpls create
far-end 192.0.2.1
lsp "LSP-PE-2-PE-1"
no shutdown
exit
vprn 1 name "VPRN_1" customer 1 create
vrf-import "VPN1-import"
vrf-export "VPN1-export"
route-distinguisher 65536:1
auto-bind-tunnel
resolution-filter
gre
ldp
rsvp
exit
resolution filter
exit
interface "to-CE-2" create
address 172.16.2.1/24
sap 1/1/4:1 create
exit
exit
static-route-entry 172.16.22.0/24
next-hop 172.16.2.2
no shutdown
exit
exit
spoke-sdp 1 create
exit
no shutdown
exit
As previously mentioned, regarding IP-VPN meshed connectivity, the configuration shows that there is a static SDP 1 (pointing to PE-1), and the rest of the configuration is just auto-bind-tunnel. On PE-2, the connectivity toward the other PEs in the network can be verified by checking VPRN_1:
*A:PE-2# show router 1 route-table
===============================================================================
Route Table (Service: 1)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
172.16.1.0/24 Remote BGP VPN 00h04m45s 170
192.0.2.1 (tunneled) 0
172.16.2.0/24 Local Local 00h09m03s 0
to-CE-2 0
172.16.4.0/24 Remote BGP VPN 00h04m45s 170
192.0.2.4 (tunneled:RSVP:3) 10
172.16.5.0/24 Remote BGP VPN 00h04m45s 170
192.0.2.5 (tunneled) 20
172.16.11.0/24 Remote BGP VPN 00h04m45s 170
192.0.2.1 (tunneled) 0
172.16.22.0/24 Remote Static 00h09m03s 5
172.16.2.2 1
172.16.44.0/24 Remote BGP VPN 00h04m45s 170
192.0.2.4 (tunneled:RSVP:3) 10
172.16.55.0/24 Remote BGP VPN 00h04m45s 170
192.0.2.5 (tunneled) 20
-------------------------------------------------------------------------------
No. of Routes: 8
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
As can be seen, there are eight routes because every PE has two routes (one direct PE-CE interface and one static route), so six routes are received from other PEs via MP-BGP. The VPRN_1 routing table can be understood by looking at the tunnel table (active LSPs for remote system IDs):
*A:PE-2# show router tunnel-table
===============================================================================
IPv4 Tunnel Table (Router: Base)
===============================================================================
Destination Owner Encap TunnelId Pref Nexthop Metric
Color
-------------------------------------------------------------------------------
192.0.2.1/32 sdp MPLS 1 5 192.0.2.1 0
192.0.2.1/32 rsvp MPLS 2 7 192.168.12.1 10
192.0.2.1/32 ldp MPLS 65537 9 192.168.12.1 10
192.0.2.3/32 ldp MPLS 65538 9 192.168.23.2 10
192.0.2.4/32 rsvp MPLS 3 7 192.168.24.2 10
192.0.2.4/32 rsvp MPLS 4 7 192.168.24.2 16777215
192.0.2.4/32 ldp MPLS 65545 9 192.168.24.2 10
192.0.2.5/32 ldp MPLS 65542 9 192.168.23.2 20
192.0.2.6/32 ldp MPLS 65546 9 192.168.24.2 20
-------------------------------------------------------------------------------
Flags: B = BGP or MPLS backup hop available
L = Loop-Free Alternate (LFA) hop available
E = Inactive best-external BGP route
k = RIB-API or Forwarding Policy backup hop
===============================================================================
The tunnel table shows one entry per LSP per remote PE. The following tunnel selection rules apply:
SDP has the lowest (best) preference, followed by RSVP and then by LDP.
If the preference is the same, the lowest metric is selected (ECMP is possible with LDP).
PE-2 has three possibilities to reach PE-1 (192.0.2.1): an SDP tunnel ID 1 with preference 5, an RSVP tunnel ID 2 with preference 7, and an LDP LSP with preference 9. Because SDP tunnel ID 1 has the lowest preference, it is the chosen option. PE-2 has three possibilities to reach PE-4 (192.0.2.4): an RSVP tunnel ID 3 with preference 7 and metric 10, an RSVP tunnel ID 4 with preference 7 and metric 16777215, and an LDP LSP with preference 9; so RSVP tunnel ID 3 is selected. PE-2 only has one option to reach PE-5 and PE-6 (192.0.2.5 and 192.0.2.6) using an LDP LSP.
The following FIB for router VPRN_1 on PE-2 provides more detailed information on the tunneling:
*A:PE-2# show router 1 fib 1
===============================================================================
FIB Display
===============================================================================
Prefix [Flags] Protocol
NextHop
-------------------------------------------------------------------------------
172.16.1.0/24 BGP_VPN
192.0.2.1 (VPRN Label:524281 Transport:SDP:1)
172.16.2.0/24 LOCAL
172.16.2.0 (to-CE-2)
172.16.4.0/24 BGP_VPN
192.0.2.4 (VPRN Label:524280 Transport:RSVP LSP:3)
172.16.5.0/24 BGP_VPN
192.0.2.5 (VPRN Label:524286 Transport:LDP)
172.16.11.0/24 BGP_VPN
192.0.2.1 (VPRN Label:524281 Transport:SDP:1)
172.16.22.0/24 STATIC
172.16.2.2 (to-CE-2)
172.16.44.0/24 BGP_VPN
192.0.2.4 (VPRN Label:524280 Transport:RSVP LSP:3)
172.16.55.0/24 BGP_VPN
192.0.2.5 (VPRN Label:524286 Transport:LDP)
-------------------------------------------------------------------------------
Total Entries : 8
-------------------------------------------------------------------------------
===============================================================================
The FIB shows the chosen transport tunnel, specifying SDP ID, RSVP Tunnel ID, and LDP, as well as service label information linked to the routes.
Static SDP tunnels are preferred over dynamic tunnels (RSVP or LDP auto-bind-tunnel). When the static SDP 1 is shut down or the LSP goes down (there is no fallback to dynamic tunneling), the associated routes are removed:
*A:PE-2# configure service sdp 1 shutdown
*A:PE-2# show router 1 fib 1
===============================================================================
FIB Display
===============================================================================
Prefix [Flags] Protocol
NextHop
-------------------------------------------------------------------------------
172.16.2.0/24 LOCAL
172.16.2.0 (to-CE-2)
172.16.4.0/24 BGP_VPN
192.0.2.4 (VPRN Label:524280 Transport:RSVP LSP:3)
172.16.5.0/24 BGP_VPN
192.0.2.5 (VPRN Label:524286 Transport:LDP)
172.16.22.0/24 STATIC
172.16.2.2 (to-CE-2)
172.16.44.0/24 BGP_VPN
192.0.2.4 (VPRN Label:524280 Transport:RSVP LSP:3)
172.16.55.0/24 BGP_VPN
192.0.2.5 (VPRN Label:524286 Transport:LDP)
-------------------------------------------------------------------------------
Total Entries : 6
-------------------------------------------------------------------------------
===============================================================================
To avoid this fallback issue, the configuration is modified and the manual spoke-SDPs are removed from the configuration of PE-1 and PE-2; the rest of the configuration remains the same. Now the connectivity between PE-1 and PE-2 is using an RSVP LSP, as shown in the PE-1 following output (RSVP LSP which was used by SDP 1 has disappeared):
*A:PE-1# configure service vprn 1 no spoke-sdp 1
*A:PE-2# configure service vprn 1 no spoke-sdp 1
*A:PE-1# show router 1 route-table
===============================================================================
Route Table (Service: 1)
===============================================================================
Dest Prefix[Flags] Type Proto Age Pref
Next Hop[Interface Name] Metric
-------------------------------------------------------------------------------
172.16.1.0/24 Local Local 00h14m16s 0
to-CE-1 0
172.16.2.0/24 Remote BGP VPN 00h00m23s 170
192.0.2.2 (tunneled:RSVP:2) 10
172.16.4.0/24 Remote BGP VPN 00h00m23s 170
192.0.2.4 (tunneled) 20
172.16.5.0/24 Remote BGP VPN 00h00m23s 170
192.0.2.5 (tunneled) 20
172.16.11.0/24 Remote Static 00h14m16s 5
172.16.1.2 1
172.16.22.0/24 Remote BGP VPN 00h00m23s 170
192.0.2.2 (tunneled:RSVP:2) 10
172.16.44.0/24 Remote BGP VPN 00h00m23s 170
192.0.2.4 (tunneled) 20
172.16.55.0/24 Remote BGP VPN 00h00m23s 170
192.0.2.5 (tunneled) 20
-------------------------------------------------------------------------------
No. of Routes: 8
Flags: n = Number of times nexthop is repeated
B = BGP backup route available
L = LFA nexthop available
S = Sticky ECMP requested
===============================================================================
If RSVP is disabled, the connectivity falls back to LDP as the output shows:
*A:PE-1# configure router mpls shutdown
*A:PE-1# show router 1 fib 1
===============================================================================
FIB Display
===============================================================================
Prefix [Flags] Protocol
NextHop
-------------------------------------------------------------------------------
172.16.1.0/24 LOCAL
172.16.1.0 (to-CE-1)
172.16.2.0/24 BGP_VPN
192.0.2.2 (VPRN Label:524280 Transport:LDP)
172.16.4.0/24 BGP_VPN
192.0.2.4 (VPRN Label:524280 Transport:LDP)
172.16.5.0/24 BGP_VPN
192.0.2.5 (VPRN Label:524286 Transport:LDP)
172.16.11.0/24 STATIC
172.16.1.2 (to-CE-1)
172.16.22.0/24 BGP_VPN
192.0.2.2 (VPRN Label:524280 Transport:LDP)
172.16.44.0/24 BGP_VPN
192.0.2.4 (VPRN Label:524280 Transport:LDP)
172.16.55.0/24 BGP_VPN
192.0.2.5 (VPRN Label:524286 Transport:LDP)
-------------------------------------------------------------------------------
Total Entries : 8
-------------------------------------------------------------------------------
===============================================================================
If LDP is disabled, the connectivity falls back to GRE as the output shows:
*A:PE-1# configure router ldp shutdown
*A:PE-1# show router 1 fib 1
===============================================================================
FIB Display
===============================================================================
Prefix [Flags] Protocol
NextHop
-------------------------------------------------------------------------------
172.16.1.0/24 LOCAL
172.16.1.0 (to-CE-1)
172.16.2.0/24 BGP_VPN
192.0.2.2 (VPRN Label:524280 Transport:GRE)
172.16.4.0/24 BGP_VPN
192.0.2.4 (VPRN Label:524280 Transport:GRE)
172.16.5.0/24 BGP_VPN
192.0.2.5 (VPRN Label:524286 Transport:GRE)
172.16.11.0/24 STATIC
172.16.1.2 (to-CE-1)
172.16.22.0/24 BGP_VPN
192.0.2.2 (VPRN Label:524280 Transport:GRE)
172.16.44.0/24 BGP_VPN
192.0.2.4 (VPRN Label:524280 Transport:GRE)
172.16.55.0/24 BGP_VPN
192.0.2.5 (VPRN Label:524286 Transport:GRE)
-------------------------------------------------------------------------------
Total Entries : 8
-------------------------------------------------------------------------------
===============================================================================
Conclusion
IGP shortcuts provide a variety of shortcuts in IP, MPLS, and IP-VPN scenarios to customers who want to use new options for building routing topologies. Because IGP shortcuts are enabled on a per router basis, SPF computations are independent and irrelevant to other routers, so there is no need to enable shortcuts globally. This network example shows the configuration of IGP shortcuts together with the associated show outputs which can be used for verification and troubleshooting.