Fast Reroute (FRR) protects MPLS TE LSPs from link and node failures. We achieve this by locally repairing the LSP of a primary tunnel using backup tunnels. This allows traffic to continue while the headend router attempts to calculate a new best LSP. When the primary tunnel fails, the backup tunnel is used immediately. This takes less than ~50 ms. There are two protection types:

  • Link protection
  • Node protection

In this lesson, we’ll take a look at link protection.

Configuration

This is the topology we’ll use:

Mpls Te Fast Reroute Link Protection Topology

All the PE and P routers are running MPLS TE.  We have a TE tunnel from PE1 to PE2. Check out the MPLS TE configuration lesson if you are unsure how to configure MPLS TE. Our goal is to protect the link between P1 and P2:

Mpls Te Fast Reroute Link Protection Topology Backup

We achieve this by creating a backup tunnel between P1 and P2 that goes through P3. P1 is the router where we configure the backup tunnel. This makes P1 the Point of Local Repair (PLR). P2 is where we terminate the backup tunnel and where our traffic rejoins the LSP of the primary tunnel. This makes P2 the Merge Point (MP). Backup tunnels bypassing a single link are called next-hop (NHOP) backup tunnels. It’s called a NHOP backup tunnel because it terminates at the next hop (P2 is the next hop from P1’s perspective).

  • Configurations
  • CE1
  • CE2
  • P1
  • P2
  • P3
  • P4
  • PE1
  • PE2

Want to take a look for yourself? Here you will find the startup configuration of each device.

I use IOSv Software (VIOS-ADVENTERPRISEK9-M), Version 15.9(3)M4 on all routers.

Before we start with the fast reroute configuration, I want to emphasize that I use an explicit path on PE1 for the primary tunnel:

PE1#show ip explicit-paths 
PATH EXCLUDE_P3 (strict source route, path complete, generation 6)
    1: exclude-address 5.5.5.5

This explicit path forces the traffic through P2. When P2 is unavailable, the tunnel will go down. This is important for this lab because, otherwise, once fast reroute is enabled, you’ll see that PE1 will use the backup tunnel only for a few seconds before switching over to a new path because of recalculation.

Without Fast Reroute

Before we enable fast reroute, there’s something I’d like to show you in Wireshark. I’ll enable a packet capture on the link between PE1 and P1, and we’ll shut/no shut the tunnel interface on PE1:

PE1(config)#interface Tunnel 1
PE1(config-if)#shutdown
PE1(config-if)#no shutdown

In the RSVP PATH message, you’ll see this:

Mpls Te Frr Rsvp No Protection Desired

MPLS TE FRR RSVP no protection desired

Above, you can see that PE1 doesn’t require link protection (local protection) at this moment.

With Fast Reroute

It’s time to configure fast reroute link protection.

PE1

We’ll start with PE1. We need to add one command to the tunnel interface:

PE1(config)#interface Tunnel 1
PE1(config-if)#tunnel mpls traffic-eng fast-reroute

Let’s take another look at the RSVP PATH message:

Mpls Te Frr Rsvp Link Protection Desired

MPLS TE FRR RSVP link protection desired

Above, you now see that PE1 requests link protection for this tunnel. You can also verify this with the following show command:

PE1#show ip rsvp sender detail | include Flags
    Flags: (0x7) Local Prot desired, Label Recording, SE Style

This completes the configuration of PE1.

P1

Let’s configure P1. Our backup tunnel should only bypass the link between P1 and P2. This means the backup tunnel should go from P1 to P3 and terminate at P2. Without an explicit path, P1 would take the direct path to P2. To accomplish this, I’ll configure an explicit path that includes the addresses of P3 and P2:

P1(config)#ip explicit-path name INCLUDE_P3_P2 enable
P1(cfg-ip-expl-path)# next-address 192.168.35.5
P1(cfg-ip-expl-path)# next-address loose 4.4.4.4