Basic TE Tunnel w/ ISIS
Load mpls.te.init.with.isis.cfg or mpls.te.init.with.isis.and.rsvp.cfg (to skip enabling RSVP-TE)
#IOS-XE
config replace flash:mpls.te.init.with.isis.cfg
! or
config replace flash:mpls.te.init.with.isis.and.rsvp.cfg
#IOS-XR
configure
load bootflash:mpls.te.init.with.isis.cfg
! or
load bootflash:mpls.te.init.with.isis.and.rsvp.cfg
commit replace
yThe basic IP addresses, L3VPN between XRv14 and XRv13, and ISIS has been pre-configured.
Currently traffic between XRv14 and XRv13 is not working because LDP is not running in the core. Configure an RSVP tunnel on the PEs, CSR8 and XRv11, that takes the following path (both forward and reverse):
CSR8
CSR9
CSR2
CSR10
XRv11
Answer
This lab is the same as the previous lab, except ISIS is used instead of OSPF. First we must enable MPLS-TE globally and per-link, and RSVP per-link. This step is skipped if you loaded mpls.te.init.with.isis.and.rsvp.cfg
Now we enable MPLS-TE on the IGP (ISIS)
We can use show mpls traffic-eng topology br on any router to verify that all routers have advertised their TE attributes and populated the TED.
Now we configure the TE tunnels as before.
Tracing between XRv13 and XRv14 verifies the path is correct:


Theory
ISIS was easily extended to support MPLS-TE thanks to its implementation of TLVs. MPLS-TE uses sub-TLVs within the extended IS reachability TLV (22). This requires support for wide-metrics to be enabled.
We can see this in the ISIS LSPDB using the verbose keyword:

You can also see this same information with show isis mpls traffic-eng advertisements.
A pcap of the TLVs that enable MPLS-TE is shown below. The Extended IS Reachability TLV has serveral sub TLVs that advertise the TE metric, affinity, and bandwidth of each link.

Last updated