MPLS and Segment Routing · Topic 2 of 4
MPLS Traffic Engineering with RSVP and FRR
Describe MPLS traffic engineering with IS-IS and OSPF extensions, RSVP TE signalling, tunnels, and fast reroute with link and node protection.
- 6 min
- Includes a diagram
- MPLS TE needs IGP extensions, CSPF, RSVP TE signalling and a tunnel.
- OSPF carries TE data in opaque LSAs, and IS-IS carries it in extended TLVs with wide metrics.
- The headend runs CSPF on the TE database.
What it is
MPLS traffic engineering (MPLS TE) steers traffic over paths that are chosen on purpose, not only over the IGP shortest path.
The shortest path can overload one link while another stays idle. MPLS TE builds a tunnel along a path that has enough bandwidth, or that follows rules you set. It also protects tunnels with fast reroute, so a failure causes little loss.
How it works
Three parts work together: the IGP floods link information, RSVP signals the path, and FRR protects it.
IGP extensions
Every router needs to know the free bandwidth and the properties of every link. The IGP is extended to flood this extra information.
| IGP | How TE data is carried |
|---|---|
| OSPF | Opaque LSAs with area flooding scope |
| IS-IS | Extended TLVs, and wide metrics |
The data includes the TE router ID, the maximum and reservable bandwidth, the unreserved bandwidth at each priority, and administrative groups (also called link affinity). A TE metric can be set apart from the IGP metric. Routers keep it in a separate TE database.
The headend runs constrained SPF, called CSPF, on that database. It calculates the best path that meets the constraints, such as enough bandwidth, and then signals it.
RSVP TE
RSVP TE is the signalling protocol that sets up the path and reserves the bandwidth. It uses a few message types:
| Message | Direction | Purpose |
|---|---|---|
| Path | Headend towards tail end | Carries the explicit route and the request |
| Resv | Tail end towards headend | Confirms the reservation and returns labels |
| PathTear and ResvTear | Either | Removes the state |
| PathErr and ResvErr | Either | Reports a problem |
The Path message carries an explicit route object, which lists the hops. Labels are assigned on the way back in the Resv message, so each router tells the one upstream which label to use. The state is soft, so it must be refreshed or it times out.
Configuring a tunnel on IOS XR
RP/0/RP0/CPU0:R1(config)# mpls traffic-eng
RP/0/RP0/CPU0:R1(config-mpls-te)# interface GigabitEthernet0/0/0/0
RP/0/RP0/CPU0:R1(config-mpls-te-if)# exit
RP/0/RP0/CPU0:R1(config-mpls-te)# exit
RP/0/RP0/CPU0:R1(config)# rsvp interface GigabitEthernet0/0/0/0
RP/0/RP0/CPU0:R1(config-rsvp-if)# bandwidth 1000000
RP/0/RP0/CPU0:R1(config-rsvp-if)# exit
RP/0/RP0/CPU0:R1(config)# router isis CORE
RP/0/RP0/CPU0:R1(config-isis)# address-family ipv4 unicast
RP/0/RP0/CPU0:R1(config-isis-af)# mpls traffic-eng level-2-only
RP/0/RP0/CPU0:R1(config-isis-af)# mpls traffic-eng router-id Loopback0
RP/0/RP0/CPU0:R1(config-isis-af)# exit
RP/0/RP0/CPU0:R1(config-isis)# exit
RP/0/RP0/CPU0:R1(config)# interface tunnel-te1
RP/0/RP0/CPU0:R1(config-if)# ipv4 unnumbered Loopback0
RP/0/RP0/CPU0:R1(config-if)# destination 3.3.3.3
RP/0/RP0/CPU0:R1(config-if)# signalled-bandwidth 100000
RP/0/RP0/CPU0:R1(config-if)# path-option 1 dynamic
RP/0/RP0/CPU0:R1(config-if)# autoroute announce
RP/0/RP0/CPU0:R1(config-if)# commit
IS-IS also needs wide metrics, as covered earlier.
The path option can be dynamic, which uses CSPF, or explicit, which follows a named list of hops. Several path options can be listed, and the router tries them in order. autoroute announce makes the IGP use the tunnel as the route to the tail end and the prefixes behind it.
RP/0/RP0/CPU0:R1# show mpls traffic-eng tunnels
RP/0/RP0/CPU0:R1# show rsvp session
Fast reroute

Fast reroute (FRR) repairs a tunnel locally when a link or node fails. The router next to the failure is the point of local repair, or PLR. It switches traffic onto a backup tunnel that was set up in advance, so the repair is very fast.
The backup rejoins the main path at the merge point. There are two kinds of protection.
| Protection | Fails | Backup goes to |
|---|---|---|
| Link protection | The link after the PLR | The next hop router |
| Node protection | The next hop router | The router after the next hop |
Facility backup uses one bypass tunnel for many protected tunnels, by stacking a label. One to one backup, with a detour for each tunnel, is the other method, and platform support for it varies.
RP/0/RP0/CPU0:R1(config)# interface tunnel-te1
RP/0/RP0/CPU0:R1(config-if)# fast-reroute
RP/0/RP0/CPU0:R1(config)# mpls traffic-eng
RP/0/RP0/CPU0:R1(config-mpls-te)# interface GigabitEthernet0/0/0/0
RP/0/RP0/CPU0:R1(config-mpls-te-if)# backup-path tunnel-te 100
Tunnel 100 is itself a tunnel-te that you configure towards the next hop or the next next hop, and the protected tunnel then uses it as its backup.
After the repair, the headend finds a new path and moves the traffic. This is called reoptimisation.
What to remember for the exam
Seven facts cover most questions on this topic.
- MPLS TE needs IGP extensions, CSPF, RSVP TE signalling and a tunnel.
- OSPF carries TE data in opaque LSAs, and IS-IS carries it in extended TLVs with wide metrics.
- The headend runs CSPF on the TE database.
- Path messages travel to the tail end, and Resv messages return with the labels.
- RSVP state is soft and needs refreshing.
- Link protection and node protection use a pre signalled backup at the PLR.
- Facility backup uses one bypass tunnel for many tunnels.
A question about a backup that skips the next hop router describes node protection.
Common mistakes
These four mistakes appear often.
Forgetting autoroute announce. The tunnel exists, but the IGP does not send traffic into it.
Using narrow metrics with IS-IS TE. TE needs wide metrics.
Not setting the RSVP bandwidth. CSPF sees no reservable bandwidth, and a tunnel that asks for bandwidth fails to come up.
Confusing the PLR with the headend. The PLR is the router next to the failure, and the headend is the start of the tunnel.
FRR is a temporary repair. The tunnel still needs a new path, which the headend finds by reoptimisation.
Check yourself
Work through these three questions.
Which message carries the labels back to the headend?
The RSVP Resv message carries them from the tail end back towards the headend.
What does node protection cover that link protection does not?
It covers the failure of the next hop router, with a backup to the router beyond it.
Why must IS-IS use wide metrics for TE?
TE data is carried in extended TLVs, which need wide metrics.
Topic 2 of 4 in MPLS and Segment Routing
Test yourself on MPLS and Segment Routing
The full Cisco CCNP 350-501 SPCOR question bank has 738 questions, with timed practice exams and an explanation for every answer.
This study guide is independent and is not affiliated with, endorsed by, or sponsored by Cisco. Vendor names, certification names and exam codes are trademarks of their respective owners and are used for identification only.