< Day Day Up > |
Configuring MPLS TE
This section introduces you to the steps involved in
the configuration of Cisco routers to implement MPLS TE. The first
subsection identifies the stepwise procedure involved in the
configuration of Cisco routers for TE. It is then followed by a
subsection depicting the actual configuration process on a topology
consisting of six routers in which multiple paths can be used for TE
purposes from a headend to tailend router.
MPLS TE Configuration Flowchart
The configuration of Cisco routers for MPLS TE support can be described in a systematic flowchart as depicted in the top row of Figure 9-11.
It is assumed that the network is already configured with an IGP for
NLRI exchange as well as MPLS forwarding on the appropriate interfaces
prior to performing the following steps:
Configuring Dynamic Paths and Explicit Paths with MPLS TE
Figure 9-18
outlines the layout of the devices in the network that will be used to
configure MPLS TE using dynamic and explicit paths. Prior to the
following configurations, the devices shown in Figure 9-18
are configured with appropriate IP addresses on the interfaces as well
as OSPF as the IGP. In addition, MPLS forwarding has been enabled on all
interfaces in the network, as shown in Figure 9-18.
Figure 9-18. MPLS TE Configuration Topology
The following steps show how to configure dynamic paths and explicit paths with MPLS TE:
Verification of MPLS TE Tunnel Creation
The following steps outline the various commands that
can be entered on PE1-AS1 (after the just mentioned configuration) to
determine if the TE tunnel has been created successfully on the router
(headend):
Final Configurations for Dynamic and Explicit Tunnels with MPLS TE
Example 9-14 and Example 9-15 outline the final configurations for all devices in Figure 9-18 for implementation of dynamic and explicit tunnels from PE1-AS1 to PE2-AS1.
Example 9-14. Final Configurations for PE1-AS1 and PE2-AS1 to Implement Dynamic and Explicit Tunnelshostname PE1-AS1 ! ip cef ! mpls traffic-eng tunnels ! interface Loopback0 ip address 10.10.10.101 255.255.255.255 ! interface Tunnel0 ip unnumbered Loopback0 tunnel destination 10.10.10.103 tunnel mode mpls traffic-eng tunnel mpls traffic-eng autoroute announce tunnel mpls traffic-eng priority 1 1 tunnel mpls traffic-eng path-option 1 dynamic tunnel MPLS traffic-eng bandwidth 100 ! interface Tunnel1 ip unnumbered Loopback0 tunnel destination 10.10.10.103 tunnel mode mpls traffic-eng tunnel mpls traffic-eng autoroute announce tunnel mpls traffic-eng priority 2 2 tunnel mpls traffic-eng path-option 1 explicit name LSP1 tunnel MPLS traffic-end bandwidth 100 ! interface Serial2/0 ip address 10.10.10.9 255.255.255.252 mpls traffic-eng tunnels tag-switching ip fair-queue 64 256 48 ip rsvp bandwidth 1000 ! interface Serial3/0 ip address 10.10.10.1 255.255.255.252 mpls traffic-eng tunnels mpls ip ip rsvp bandwidth 1000 ! interface Serial4/0 ip address 10.10.10.17 255.255.255.252 mpls traffic-eng tunnels MPLS ip ip rsvp bandwidth 1000 ! router ospf 100 mpls traffic-eng router-id Loopback0 mpls traffic-eng area 0 network 10.0.0.0 0.255.255.255 area 0 ! ip explicit-path name LSP1 enable next-address 10.10.10.10 next-address 10.10.10.14 next-address 10.10.10.103 ! end ____________________________________________________________________________ hostname PE2-AS1 ! ip cef ! mpls traffic-eng tunnels ! interface Loopback0 ip address 10.10.10.103 255.255.255.255 ! interface Serial2/0 ip address 10.10.10.14 255.255.255.252 mpls traffic-eng tunnels mpls ip ip rsvp bandwidth 1000 ! interface Serial3/0 ip address 10.10.10.6 255.255.255.252 mpls traffic-eng tunnels mpls ip ip rsvp bandwidth 1000 ! interface Serial4/0 ip address 10.10.10.22 255.255.255.252 mpls traffic-eng tunnels mpls ip ip rsvp bandwidth 1000 ! router ospf 100 mpls traffic-eng router-id Loopback0 mpls traffic-eng area 0 network 10.0.0.0 0.255.255.255 area 0 ! end Example 9-15. Final Configurations for P1-AS1, P2-AS1, and P3-AS1 to Implement Dynamic and Explicit Tunnelshostname P1-AS1 ! ip cef ! mpls traffic-eng tunnels ! interface Loopback0 ip address 10.10.10.102 255.255.255.255 ! interface Serial2/0 ip address 10.10.10.2 255.255.255.252 mpls traffic-eng tunnels mpls ip ip rsvp bandwidth 1000 ! interface Serial3/0 ip address 10.10.10.26 255.255.255.252 mpls traffic-eng tunnels mpls ip ip rsvp bandwidth 1000 ! interface Serial4/0 ip address 10.10.10.5 255.255.255.252 mpls traffic-eng tunnels mpls ip ip rsvp bandwidth 1000 ! router ospf 100 mpls traffic-eng router-id Loopback0 mpls traffic-eng area 0 network 10.0.0.0 0.255.255.255 area 0 ! end __________________________________________________________________________ hostname P2-AS1 ! ip cef ! mpls traffic-eng tunnels ! interface Loopback0 ip address 10.10.10.104 255.255.255.255 ! interface Serial2/0 ip address 10.10.10.10 255.255.255.252 mpls traffic-eng tunnels MPLS ip ip rsvp bandwidth 1000 ! interface Serial3/0 ip address 10.10.10.13 255.255.255.252 mpls traffic-eng tunnels mpls ip ip rsvp bandwidth 1000 ! router ospf 100 mpls traffic-eng router-id Loopback0 mpls traffic-eng area 0 network 10.0.0.0 0.255.255.255 area 0 ! end __________________________________________________________________________ hostname P3-AS1 ! ip cef ! mpls traffic-eng tunnels ! interface Loopback0 ip address 10.10.10.105 255.255.255.255 ! interface Serial2/0 ip address 10.10.10.18 255.255.255.252 mpls traffic-eng tunnels mpls ip ip rsvp bandwidth 1000 ! interface Serial3/0 ip address 10.10.10.25 255.255.255.252 no ip directed-broadcast mpls traffic-eng tunnels mpls ip ip rsvp bandwidth 1000 ! interface Serial4/0 ip address 10.10.10.21 255.255.255.252 mpls traffic-eng tunnels mpls ip ip rsvp bandwidth 1000 ! router ospf 100 mpls traffic-eng router-id Loopback0 mpls traffic-eng area 0 network 10.0.0.0 0.255.255.255 area 0 ! end Unequal Cost Load Balancing Across Multiple TE Tunnels
In
this section, we will configure another tunnel via the path PE1-AS1,
P3-AS1, and PE2-AS1 with bandwidth requirements of 50 kbps versus 100
kbps. In every five packets, load balancing is performed so that two
packets are sent on Tunnel 0, two on Tunnel 1, and one packet on Tunnel
2. In this case, if the source and destination of the tunnel interfaces
are the same, the traffic between the sites performs unequal cost load
balancing among the various tunnels between Routers PE1-AS1 and PE2-AS1.
The configuration on PE1-AS1 (headend router) for another explicit LSP
path setup via the path PE1-AS1, P3-AS1, and PE2-AS1 is shown in Example 9-16.
Example 9-16. Unequal Cost Load Balancing Configuration on PE1-AS1PE1-AS1(config)#interface Tunnel2 PE1-AS1(config-if)# ip unnumbered Loopback0 PE1-AS1(config-if)# tunnel destination 10.10.10.103 PE1-AS1(config-if)# tunnel mode mpls traffic-eng PE1-AS1(config-if)# tunnel mpls traffic-eng autoroute announce PE1-AS1(config-if)# tunnel mpls traffic-eng priority 3 3 PE1-AS1(config-if)# tunnel mpls traffic-eng bandwidth 50 PE1-AS1(config-if)# tunnel mpls traffic-eng path-option 1 explicit name LSP2 PE1-AS1(config)#ip explicit-path name LSP2 enable PE1-AS1(cfg-ip-expl-path)# next-address 10.10.10.18 Explicit Path name LSP2: 1: next-address 10.10.10.18 PE1-AS1(cfg-ip-expl-path)# next-address 10.10.10.22 Explicit Path name LSP2: 1: next-address 10.10.10.18 2: next-address 10.10.10.22 PE1-AS1(cfg-ip-expl-path)# next-address 10.10.10.103 Explicit Path name LSP2: 1: next-address 10.10.10.18 2: next-address 10.10.10.22 3: next-address 10.10.10.103 PE1-AS1(cfg-ip-expl-path)#end
After
the configuration is performed, the output of the routing table entry
for 10.10.10.103/32 shows the unequal cost load balancing in effect (see
Example 9-17).
Example 9-17. Verification of Unequal Cost Load BalancingPE1-AS1#show ip route 10.10.10.103 Routing entry for 10.10.10.103/32 Known via "ospf 100", distance 110, metric 97, type intra area Routing Descriptor Blocks: * directly connected, via Tunnel0 Route metric is 97, traffic share count is 2 directly connected, via Tunnel1 Route metric is 97, traffic share count is 2 directly connected, via Tunnel2 Route metric is 97, traffic share count is 1
Therefore, the final configuration for PE1-AS1 includes, in addition to Example 9-14, the configuration shown in Example 9-18.
Example 9-18. Additional Configuration on PE1-AS1 for Unequal Cost Load Balancinginterface Tunnel2 ip unnumbered Loopback0 no ip directed-broadcast tunnel destination 10.10.10.103 tunnel mode mpls traffic-eng tunnel mpls traffic-eng autoroute announce tunnel mpls traffic-eng priority 3 3 tunnel mpls traffic-eng bandwidth 50 tunnel mpls traffic-eng path-option 1 explicit name LSP2 MPLS TE Fast ReRoute Link Protection
Fast ReRoute (FRR) is a procedure used in conjunction
with MPLS TE to reroute around a link in the case of link failure.
Protection in networks can be provided by SONET, optical protection, or,
more recently, MPLS FRR. With MPLS FRR, we can implement both link and
node protection. In addition, different protection policies can be
applied to different classes of traffic traversing the MPLS backbone. In
FRR operation, a backup tunnel is
configured to be used if the primary tunnel LSP fails. The backup tunnel
must be configured so that the LSP can get to the next-hop LSR
downstream without attempting to use the failed link.
The configuration for implementing FRR for link protection is simple to implement. If you use a subset of the network shown in Figure 9-18 to implement link protection, as illustrated in Figure 9-19,
you can configure a backup tunnel on the LSR P1-AS1. If the primary
tunnel from PE1-AS1 via P1-AS1 to PE2-AS1 fails due to link failure
between P1-AS1 and PE2-AS1, the backup tunnel is used to forward
traffic.
Figure 9-19. MPLS FRR Network Topology, Configuration, and Verification
Configuration of the tunnel (Tunnel0 on PE1-AS1) to be protected from a link failure includes the tunnel mpls traffic-eng fast-reroute
command under the tunnel interface configuration on the headend router
(PE1-AS1) to enable FRR protection on the tunnel. In addition, a backup
tunnel, Tunnel100, is configured on the downstream LSR (in our case,
P1-AS1) to reroute traffic if the link between P1-AS1 and PE2-AS1 fails.
Configuration is performed following the procedure shown in the earlier
sections with an explicit path from P1-AS1 to PE2-AS1 via P3-AS1.
Finally, this tunnel (Tunnel100) on P1-AS1 is associated to the link to
be protected by using the command mpls traffic-eng backup-path tunnel tunnel100 under the interface to be protected (Serial 4/0 on P1-AS1).
Verification of FRR capabilities can be performed by issuing the show mpls traffic-eng fast-reroute database detail command on the downstream LSR configured with a backup tunnel, as shown in Figure 9-19.
Implementing MPLS VPNs over MPLS TE
MPLS
was initially adopted due to its inherent properties to deliver VPNs.
However, in recent years, MPLS TE has gained popularity due to the
robust TE capabilities it provides. In this section, we will discuss the
configurations involved in the implementation of MPLS VPN over TE
tunnels. TE tunnels can be configured between PE to PE routers as well
as from PE to provider core or P routers. The configurations involved in
both of these implementations of MPLS TE in the provider core are
introduced. The network used to implement MPLS VPN over TE tunnels is
shown in Figure 9-20.
Figure 9-20. MPLS VPN Over TE Network Topology/Configuration
For simplicity, the OSPF PE-CE connectivity implementation is used on both PE Routers PE1-AS1 and PE2-AS1 in Figure 9-20.
For this section, the IGP used in the core is OSPF with process-id 100.
The process-id for the PE to CE connections is configured under OSPF 1.
All networks are in area 0.
The configurations on Routers P1-AS1, CE1-A, and CE2-A are illustrated in Figure 9-20. Configurations for PE1-AS1 and PE2-AS1 are illustrated in Example 9-19. A tunnel is already configured with a dynamic path-option between PE1-AS1 and PE2-AS1.
Example 9-19. PE1-AS1 and PE2-AS1 Configuration: MPLS VPN Over TE with PE to PE Tunnelshostname PE1-AS1 ! ip cef ! ip vrf VPNoverTE rd 1:100 route-target export 1:100 route-target import 1:100 ! mpls traffic-eng tunnels ! interface Loopback0 ip address 10.10.10.101 255.255.255.255 ! interface Tunnel0 ip unnumbered Loopback0 tunnel destination 10.10.10.103 tunnel mode mpls traffic-eng tunnel mpls traffic-eng autoroute announce tunnel mpls traffic-eng priority 1 1 tunnel mpls traffic-eng bandwidth 100 tunnel mpls traffic-eng path-option 1 dynamic ! interface Serial2/0 ip vrf forwarding VPNoverTE ip address 172.16.1.1 255.255.255.252 ! interface Serial3/0 ip address 10.10.10.1 255.255.255.252 mpls traffic-eng tunnels mpls ip ip rsvp bandwidth 256 256 ! router ospf 1 vrf VPNoverTE redistribute bgp 100 metric 10 subnets network 172.16.1.0 0.0.0.3 area 0 ! router ospf 100 mpls traffic-eng router-id Loopback0 mpls traffic-eng area 0 network 10.10.10.0 0.0.0.3 area 0 network 10.10.10.101 0.0.0.0 area 0 ! router bgp 100 bgp router-id 10.10.10.101 neighbor 10.10.10.103 remote-as 100 neighbor 10.10.10.103 update-source Loopback0 no auto-summary ! address-family vpnv4 neighbor 10.10.10.103 activate neighbor 10.10.10.103 send-community extended exit-address-family ! address-family ipv4 vrf VPNoverTE redistribute ospf 1 vrf VPNoverTE metric 2 exit-address-family ! end ___________________________________________________________________________________ hostname PE2-AS1 ! ip cef ! ip vrf VPNoverTE rd 1:100 route-target export 1:100 route-target import 1:100 ! mpls traffic-eng tunnels ! interface Loopback0 ip address 10.10.10.103 255.255.255.255 ! interface Serial3/0 ip address 10.10.10.6 255.255.255.252 mpls traffic-eng tunnels mpls ip ip rsvp bandwidth 256 256 ! interface Serial4/0 ip vrf forwarding VPNoverTE ip address 172.16.2.1 255.255.255.252 ! router ospf 1 vrf VPNoverTE redistribute bgp 100 metric 2 subnets network 172.16.2.0 0.0.0.3 area 0 ! router ospf 100 mpls traffic-eng router-id Loopback0 mpls traffic-eng area 0 network 10.10.10.4 0.0.0.3 area 0 network 10.10.10.103 0.0.0.0 area 0 ! router bgp 100 bgp router-id 10.10.10.103 neighbor 10.10.10.101 remote-as 100 neighbor 10.10.10.101 update-source Loopback0 ! address-family vpnv4 neighbor 10.10.10.101 activate neighbor 10.10.10.101 send-community extended exit-address-family ! address-family ipv4 vrf VPNoverTE redistribute ospf 1 vrf VPNoverTE metric 2 exit-address-family ! end Verification of MPLS VPN over TE with PE to PE Tunnels
Figure 9-21 outlines the various verification steps for identifying the operation of MPLS VPNs over TE with PE to PE tunnels.
Figure 9-21. MPLS VPN over TE Verification—PE to PE Tunnels
Figure 9-21
illustrates the routing tables on CE routers in which the CE routers
learn the routes from the remote CEs via the MPLS backbone and place
them in their local routing tables as OSPF IA routes, though all CE
routes are in area 0 because sham-links are not configured.
Figure 9-21
also shows the routing table on the respective PE routers for the VRF
VPNoverTE to check for route propagation in the MPLS VPN domain. As can
be derived from the output, the appropriate VPN routes obtained from the
remote CEs are learned from the next hop that maps to the remote PE
loopback.
A closer look at the prefix 172.16.1.102 (loopback0
on CE2-A), learned across the MPLS domain one PE1-AS1, indicates a
next-hop address of the remote PE loopback 10.10.10.103 (lo0 on
PE2-AS1). In the global routing table, if this VPN forwards traffic over
the MPLS TE tunnel configured on PE1-AS1, the next-hop address of
10.10.10.103 must point to the tunnel interface (Tunnel0) as shown in Figure 9-21 by the output of show ip route 10.10.10.103
on PE1-AS1. In addition, note that in the label-stack imposed on the
packets in the MPLS domain when implementing MPLS VPN over TE (one label
for MPLS VPN and the top label for TE), the top label maps to the label
assigned by RSVP for the traffic engineered LSP path. Therefore, the
out-label value in the output of show MPLS traffic-eng tunnels tunnel0 (16) maps to the top label in the label stack, as highlighted in the output of show ip cef vrf VPNoverTE 172.16.1.102 in Figure 9-21.
For final verification of connectivity, an extended ping is performed between loopback interfaces on CE routers, as shown in Figure 9-21.
Configuration of MPLS VPN over TE with PE to P Tunnels
In the preceding section, MPLS VPN was configured
over TE tunnels in which the TE tunnel was configured between the two PE
routers in the MPLS domain. Another possibility that might arise while
deploying MPLS VPN over a TE enabled domain is a tunnel existing between
a PE router and a provider core router. In our existing setup, the
tunnel interface, Tunnel 0, configured on the PE Router PE1, is changed
so that the destination of the tunnel is the loopback address on P1 or
10.10.10.102/32 (see Example 9-20).
This configuration might be used in conjunction with FRR to enable link
protection in the SP backbone for MPLS forwarded traffic belonging to a
customer.
Example 9-20. Configuration on PE1-AS1: Tunnel Destination Changed to 10.10.10.102/32PE1-AS1(config)#interface tunnel 0 PE1-AS1(config-if)# tunnel destination 10.10.10.102
If no other changes in configuration are made on any
router, the CE routers no longer have connectivity to one another
because the LSP is broken, as shown in Example 9-21.
Example 9-21. CE1-AS1 Cannot Reach CE2 Because LSP Is BrokenCE1-AS1#ping 172.16.1.102 source 172.16.1.101
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.102, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)
To enable a complete LSP, MPLS is enabled on the
tunnel interface on PE1-AS1. Also, P1-AS1 is configured to accept
directed hellos, as shown in Example 9-22.
Example 9-22. Enabling MPLS on the Tunnel Interface and Configuring Directed-Hello Accept on P1-AS1PE1-AS1(config)#interface tunnel 0 PE1-AS1(config-if)#mpls ip __________________________________________________________________________________ P1-AS1(config)#mpls ldp discovery targeted-hello accept
Because the P1-AS1 router can accept directed hellos
from neighbors who are not directly connected, the LSP is now
established using the tunnel. This is shown in Figure 9-22 where the next hop for the remote CE loopback interfaces point to the interface tunnel 0 on PE1-AS1.
Figure 9-22. MPLS VPN Over TE Verification—PE to P Tunnels
Connectivity between CE routers is verified using extended pings between loopback interfaces on CE routers, as shown in Figure 9-22.
|
< Day Day Up > |