Lesson Contents
MPLS TE Autoroute allows you to install Traffic Enginering (TE) tunnels as the next hop in the headend router’s routing table. As explained in the MPLS TE metric lesson, TE tunnels use the shortest path IGP metric as the TE tunnel metric.
It is possible, however, to influence the autoroute TE tunnel metric. In this lesson, we’ll look at some examples of how you can do this. There are three commands you can use to change the metric:
tunnel mpls traffic-eng autoroute metric
tunnel mpls traffic-eng autoroute metric absolute
tunnel mpls traffic-eng autoroute metric relative
We’ll look at configuration options for these three commands.
Configuration
This is the topology we’ll use:
PE1 is our headend router and PE2 is the tailend router. We use IS-IS as the IGP. Each interface has a default metric of 10. I use IOSv Software (VIOS-ADVENTERPRISEK9-M), Version 15.9(3)M6 on all routers.
Configurations
Want to take a look for yourself? Here you will find the startup configuration of each device.
CE1
hostname CE1
!
ip cef
!
interface Loopback0
ip address 1.1.1.1 255.255.255.255
ip router isis
isis circuit-type level-2-only
!
interface GigabitEthernet0/0
ip address 192.168.12.1 255.255.255.0
ip router isis
isis circuit-type level-2-only
!
router isis
net 49.0001.0001.0001.0001.0001.00
is-type level-2-only
metric-style wide
!
end
CE2
hostname CE2
!
ip cef
!
interface Loopback0
ip address 7.7.7.7 255.255.255.255
ip router isis
isis circuit-type level-2-only
!
interface GigabitEthernet0/0
ip address 192.168.67.7 255.255.255.0
ip router isis
isis circuit-type level-2-only
!
router isis
mpls traffic-eng level-2
net 49.0001.0007.0007.0007.0007.00
is-type level-2-only
metric-style wide
!
end
P1
hostname P1
!
ip cef
!
mpls traffic-eng tunnels
!
interface Loopback0
ip address 3.3.3.3 255.255.255.255
ip router isis
isis circuit-type level-2-only
!
interface GigabitEthernet0/0
ip address 192.168.23.3 255.255.255.0
ip router isis
mpls traffic-eng tunnels
mpls ip
isis circuit-type level-2-only
ip rsvp bandwidth 1000000
!
interface GigabitEthernet0/1
ip address 192.168.36.3 255.255.255.0
ip router isis
mpls traffic-eng tunnels
mpls ip
isis circuit-type level-2-only
ip rsvp bandwidth 1000000
!
router isis
mpls traffic-eng router-id Loopback0
mpls traffic-eng level-2
net 49.0001.0003.0003.0003.0003.00
is-type level-2-only
metric-style wide
!
mpls ldp router-id Loopback0 force
!
end
P2
hostname P2
!
ip cef
!
mpls traffic-eng tunnels
!
interface Loopback0
ip address 4.4.4.4 255.255.255.255
ip router isis
isis circuit-type level-2-only
!
interface GigabitEthernet0/0
ip address 192.168.24.4 255.255.255.0
ip router isis
mpls traffic-eng tunnels
mpls ip
isis circuit-type level-2-only
ip rsvp bandwidth 1000000
!
interface GigabitEthernet0/1
ip address 192.168.45.4 255.255.255.0
ip router isis
mpls traffic-eng tunnels
mpls ip
isis circuit-type level-2-only
ip rsvp bandwidth 1000000
!
router isis
mpls traffic-eng router-id Loopback0
mpls traffic-eng level-2
net 49.0001.0004.0004.0004.0004.00
is-type level-2-only
metric-style wide
!
mpls ldp router-id Loopback0 force
!
end
P3
hostname P3
!
ip cef
!
mpls traffic-eng tunnels
!
interface Loopback0
ip address 5.5.5.5 255.255.255.255
ip router isis
isis circuit-type level-2-only
!
interface GigabitEthernet0/0
ip address 192.168.56.5 255.255.255.0
ip router isis
mpls traffic-eng tunnels
mpls ip
isis circuit-type level-2-only
ip rsvp bandwidth 1000000
!
interface GigabitEthernet0/1
ip address 192.168.45.5 255.255.255.0
ip router isis
mpls traffic-eng tunnels
mpls ip
isis circuit-type level-2-only
ip rsvp bandwidth 1000000
!
router isis
mpls traffic-eng router-id Loopback0
mpls traffic-eng level-2
net 49.0001.0005.0005.0005.0005.00
is-type level-2-only
metric-style wide
!
mpls ldp router-id Loopback0 force
!
end
PE1
hostname PE1
!
ip cef
!
mpls traffic-eng tunnels
!
interface Loopback0
ip address 2.2.2.2 255.255.255.255
ip router isis
isis circuit-type level-2-only
!
interface Tunnel1
ip unnumbered Loopback0
tunnel mode mpls traffic-eng
tunnel destination 6.6.6.6
tunnel mpls traffic-eng autoroute announce
tunnel mpls traffic-eng priority 7 7
tunnel mpls traffic-eng bandwidth 750
tunnel mpls traffic-eng path-option 1 explicit name EXCLUDE_P2
no routing dynamic
!
interface Tunnel2
ip unnumbered Loopback0
tunnel mode mpls traffic-eng
tunnel destination 6.6.6.6
tunnel mpls traffic-eng autoroute announce
tunnel mpls traffic-eng priority 7 7
tunnel mpls traffic-eng bandwidth 750
tunnel mpls traffic-eng path-option 1 explicit name EXCLUDE_P1
no routing dynamic
!
interface GigabitEthernet0/0
ip address 192.168.12.2 255.255.255.0
ip router isis
isis circuit-type level-2-only
!
interface GigabitEthernet0/1
ip address 192.168.23.2 255.255.255.0
ip router isis
mpls traffic-eng tunnels
mpls ip
isis circuit-type level-2-only
ip rsvp bandwidth 1000000
!
interface GigabitEthernet0/2
ip address 192.168.24.2 255.255.255.0
ip router isis
mpls traffic-eng tunnels
mpls ip
isis circuit-type level-2-only
ip rsvp bandwidth 1000000
!
router isis
mpls traffic-eng router-id Loopback0
mpls traffic-eng level-2
net 49.0001.0002.0002.0002.0002.00
is-type level-2-only
metric-style wide
!
ip explicit-path name EXCLUDE_P1 enable
exclude-address 192.168.23.3
!
ip explicit-path name EXCLUDE_P2 enable
exclude-address 192.168.24.4
!
mpls ldp router-id Loopback0 force
!
end
PE2
hostname PE2
!
ip cef
!
mpls traffic-eng tunnels
!
interface Loopback0
ip address 6.6.6.6 255.255.255.255
ip router isis
isis circuit-type level-2-only
!
interface GigabitEthernet0/0
ip address 192.168.67.6 255.255.255.0
ip router isis
isis circuit-type level-2-only
!
interface GigabitEthernet0/1
ip address 192.168.36.6 255.255.255.0
ip router isis
mpls traffic-eng tunnels
mpls ip
isis circuit-type level-2-only
ip rsvp bandwidth 1000000
!
interface GigabitEthernet0/2
ip address 192.168.56.6 255.255.255.0
ip router isis
mpls traffic-eng tunnels
mpls ip
isis circuit-type level-2-only
ip rsvp bandwidth 1000000
!
router isis
mpls traffic-eng router-id Loopback0
mpls traffic-eng level-2
net 49.0001.0006.0006.0006.0006.00
is-type level-2-only
metric-style wide
!
mpls ldp router-id Loopback0 force
!
end
We have two TE tunnels:
PE1#show running-config interface Tunnel 1
interface Tunnel1
ip unnumbered Loopback0
shutdown
tunnel mode mpls traffic-eng
tunnel destination 6.6.6.6
tunnel mpls traffic-eng autoroute announce
tunnel mpls traffic-eng priority 7 7
tunnel mpls traffic-eng bandwidth 750
tunnel mpls traffic-eng path-option 1 explicit name EXCLUDE_P2
PE1#show running-config interface Tunnel 2
interface Tunnel2
ip unnumbered Loopback0
shutdown
tunnel mode mpls traffic-eng
tunnel destination 6.6.6.6
tunnel mpls traffic-eng autoroute announce
tunnel mpls traffic-eng priority 7 7
tunnel mpls traffic-eng bandwidth 750
tunnel mpls traffic-eng path-option 1 explicit name EXCLUDE_P1
Each tunnel uses an explicit path so that tunnel one goes through P1 and tunnel two goes through P2. The tunnels are currently shut down.
IGP Routing
Let’s look first at our IGP routing. With the tunnels disabled, here is the metric to reach the loopback interface (6.6.6.6) of PE2:
PE1#show ip route 6.6.6.6
Routing entry for 6.6.6.6/32
Known via "isis", distance 115, metric 30, type level-2
Redistributing via isis
Last update from 192.168.23.3 on GigabitEthernet0/1, 00:13:31 ago
Routing Descriptor Blocks:
* 192.168.23.3, from 6.6.6.6, 00:13:31 ago, via GigabitEthernet0/1
Route metric is 30, traffic share count is 1
The metric is 30. By default, IS-IS uses a metric of 10 for each interface. Here is the metric to reach the loopback interface (7.7.7.7) of CE:
PE1#show ip route 7.7.7.7
Routing entry for 7.7.7.7/32
Known via "isis", distance 115, metric 40, type level-2
Redistributing via isis
Last update from 192.168.23.3 on GigabitEthernet0/1, 00:13:35 ago
Routing Descriptor Blocks:
* 192.168.23.3, from 7.7.7.7, 00:13:35 ago, via GigabitEthernet0/1
Route metric is 40, traffic share count is 1
The total metric is 40. What we see above is the IGP shortest path to get to these destinations.
Tunnel Interfaces
Now let’s enable our tunnel interfaces:
PE1(config)#interface Tunnel 1
PE1(config-if)#no shutdown
PE1(config)#interface Tunnel 2
PE1(config-if)#no shutdown
First, we’ll check the routing table to see how we reach the loopback of PE2:
PE1#show ip route 6.6.6.6
Routing entry for 6.6.6.6/32
Known via "isis", distance 115, metric 30, type level-2
Redistributing via isis
Last update from 6.6.6.6 on Tunnel2, 00:00:12 ago
Routing Descriptor Blocks:
6.6.6.6, from 6.6.6.6, 00:00:12 ago, via Tunnel2
Route metric is 30, traffic share count is 1
* 6.6.6.6, from 6.6.6.6, 00:00:12 ago, via Tunnel1
Route metric is 30, traffic share count is 1
TE tunnels use the shortest path IGP metric by default, so we see a metric of 30 here. Our headend router load balances using the two tunnels. Here we see the metric to reach the loopback of CE2:
PE1#show ip route 7.7.7.7
Routing entry for 7.7.7.7/32
Known via "isis", distance 115, metric 40, type level-2
Redistributing via isis
Last update from 6.6.6.6 on Tunnel2, 00:00:48 ago
Routing Descriptor Blocks:
6.6.6.6, from 7.7.7.7, 00:00:48 ago, via Tunnel2
Route metric is 40, traffic share count is 1
* 6.6.6.6, from 7.7.7.7, 00:00:48 ago, via Tunnel1
Route metric is 40, traffic share count is 1
We see a metric of 40.
To emphasize that TE tunnels use the IGP shortest path, try raising the IS-IS metric on PE1’s interfaces that connect to P1 and P2:
PE1(config)#interface GigabitEthernet 0/1
PE1(config-if)#isis metric 100
PE1(config)#interface GigabitEthernet 0/2
PE1(config-if)#isis metric 200
The path through GigabitEthernet0/1 that connects to P1 will remain the shortest path, but we see the TE tunnel metric increases:
PE1#show ip route 6.6.6.6
Routing entry for 6.6.6.6/32
Known via "isis", distance 115, metric 120, type level-2
Redistributing via isis
Last update from 6.6.6.6 on Tunnel1, 00:00:15 ago
Routing Descriptor Blocks:
6.6.6.6, from 6.6.6.6, 00:00:15 ago, via Tunnel1
Route metric is 120, traffic share count is 1
* 6.6.6.6, from 6.6.6.6, 00:00:15 ago, via Tunnel2
Route metric is 120, traffic share count is 1
Let’s get rid of this metric change:
PE1(config)#interface range GigabitEthernet 0/1 - 2
PE1(config-if-range)#no isis metric
Autoroute Announce
You now know about the default TE tunnel metric behavior. Let’s see how we can influence it. Here are our options:
PE1(config)#interface Tunnel 1
PE1(config-if)#tunnel mpls traffic-eng autoroute metric ?
<1-4294967295> Set tunnel metric for autoroutes
absolute Set metric for all autoroutes over tunnel
relative Adjust tunnel metric for autoroutes relative to IGP
We’ll try all options.
Metric
The first option overrides the IGP shortest path metric for the tunnel and uses the specified metric instead. Let’s try this:
PE1(config)#interface Tunnel 1
PE1(config-if)#tunnel mpls traffic-eng autoroute metric 5
Let’s look at the new metric to reach PE1:
PE1#show ip route 6.6.6.6
Routing entry for 6.6.6.6/32
Known via "isis", distance 115, metric 15, type level-2
Redistributing via isis
Last update from 6.6.6.6 on Tunnel1, 00:00:14 ago
Routing Descriptor Blocks:
* 6.6.6.6, from 6.6.6.6, 00:00:14 ago, via Tunnel1
Route metric is 15, traffic share count is 1
The metric is now 15:
- TE tunnel: 5
- Loopback on PE2: 10
Let’s check the new metric to reach CE2:
PE1#show ip route 7.7.7.7
Routing entry for 7.7.7.7/32
Known via "isis", distance 115, metric 25, type level-2
Redistributing via isis
Last update from 6.6.6.6 on Tunnel1, 00:00:32 ago
Routing Descriptor Blocks:
* 6.6.6.6, from 7.7.7.7, 00:00:32 ago, via Tunnel1
Route metric is 25, traffic share count is 1
The metric is now 25: