Before diving into the what, when, and how of information distribution, you need to be aware of a few prerequisites. If your network doesn't have these enabled, you won't be able to get started in MPLS Traffic Engineering. You need the following:
A release of the Cisco IOS Software that supports MPLS Traffic Engineering
Cisco Express Forwarding (CEF) enabled in your network
A link-state routing protocol (OSPF or IS-IS) as your Interior Gateway Protocol (IGP)
Traffic engineering enabled globally on the router
A loopback interface to use as your MPLS Traffic Engineering router ID (RID)
Basic TE tunnel configuration
MPLS Traffic Engineering support for IS-IS was first included in Cisco IOS Software Releases 12.0(5)S and 12.0(5)T; OSPF support was added in Cisco IOS Software Releases 12.0(7)S and 12.0(8)T. Most subsequent releases of Cisco IOS Software (including 12.0S, 12.1, 12.2, and later) also support MPLS Traffic Engineering. Not all features are in all code versions; we will point out if a particular code level is needed for a particular feature.
Chapter 2 briefly covered CEF, and information on CEF is available in many other Cisco publications. Refer to Chapter 2 for more information on CEF in the context of MPLS.
You also need a link-state routing protocol. The reason for this is covered in Chapter 4, “Path Calculation and Setup.” For now, just understand that if your network is not running OSPF or IS-IS as its routing protocol, you won't be able to use MPLS Traffic Engineering.
In addition, you need an interface to use as your MPLS Traffic Engineering router ID. It should be a loopback interface. Loopback interfaces are useful because they're always up, no matter what the state of other interfaces in the box. This loopback interface should have a /32 mask on it (a mask of 255.255.255.255 in dotted-quad notation); some things won't work unless your loopback has a /32 mask. Odds are good that you already have a loopback interface because these are useful for lots of other things as well. But just in case you've never seen a loopback interface configuration before, it looks like this:
interface Loopback0 ip address 192.168.1.1 255.255.255.255
That's it. There's not much to it, but as you'll see, loopback addresses are an integral part of MPLS Traffic Engineering. If you already have a loopback interface configured, you do not need to create another one just for use with MPLS Traffic Engineering. In fact, we strongly recommend that you use the same loopback interface for your IGP RID, your BGP RID, and your MPLS TE RID. Although this is not necessary, it makes monitoring and maintaining your network much cleaner. The rest of this book assumes that all routers in your network are configured with a Loopback0 interface that has a /32 mask.
Finally, you need to enable MPLS Traffic Engineering on every router that you want to participate in MPLS TE. This doesn't have to be every router in your network; it is typically some or all routers in your core. In order to start the necessary traffic engineering subsystems on the router, enter the following global configuration command:
gsr1(config)#mpls traffic-eng tunnels
Configuring mpls traffic-eng tunnels globally won't change anything in your network or add any TE tunnels to a router, but if you don't configure it, most of the other commands discussed in this book won't function.
After you configure MPLS TE globally, you also need to enable it on every interface that might touch a TE tunnel. Every interface a TE tunnel goes out or comes in on must have mpls traffic-eng tunnels enabled on it:
gsr1(config-if)#mpls traffic-eng tunnels
Do not enable mpls traffic-eng tunnels on interfaces that face your customers; if you want to run MPLS TE on a box your customers connect to, only enable TE on interfaces that connect to other devices in your network. If you enable mpls traffic-eng tunnels on a customer-facing interface, you are opening yourself up for some potential security problems.
A quick way to check to make sure everything is configured is with the first three lines of the command show mpls traffic-eng tunnels summary, as shown in Example 3-1.
gsr1#show mpls traffic-eng tunnels summary Signalling Summary: LSP Tunnels Process: running RSVP Process: running Forwarding: enabled |
If these lines don't say running, running, and enabled, something is wrong. Double-check your configuration, and then refer to Chapter 11, “Troubleshooting MPLS TE,” if things still don't look right.
Another thing that's useful to check is show mpls interfaces, as demonstrated in Example 3-2.
gsr1#show mpls interfaces
Interface IP Tunnel Operational
POS0/0 Yes (ldp) Yes Yes
POS3/0 Yes (ldp) Yes Yes
POS5/0 Yes (ldp) Yes Yes
|
If the Tunnel column says Yes, then mpls traffic-eng tunnels is configured on that interface.
Finally, you need to create a basic MPLS Traffic Engineering tunnel interface, as shown in Example 3-3.
interface Tunnel0 ip unnumbered Loopback0 tunnel mode mpls traffic-eng tunnel destination destination-ip tunnel mpls traffic-eng path-option 10 dynamic |
Table 3-1 describes the key commands in this configuration.
Command | Description |
---|---|
interface Tunnel0 | MPLS Traffic Engineering tunnels are represented as tunnel interfaces in the Cisco IOS Software. From this perspective, an MPLS Traffic Engineering tunnel is no different from a GRE tunnel or any other kind of tunnel you can configure. |
ip unnumbered Loopback0 | Cisco IOS Software does not forward traffic down an interface without an IP address on it, so you need to assign an IP address to the MPLS Traffic Engineering tunnel you've just created. However, because TE tunnels are unidirectional and don't have the concept of a link neighbor with which to communicate, it's a waste of addresses to put an additional IP address on the interface. |
tunnel mode mpls traffic-eng | Tells the Cisco IOS Software that this tunnel interface is an MPLS Traffic Engineering tunnel. Other possible tunnel modes are GRE, DVMRP, and so on. |
tunnel destination destination-ip | Tells the Cisco IOS Software what the tunnel's endpoint is. The IP address specified here is the MPLS Traffic Engineering RID (more on that later) of the router to which you want to build a tunnel. The destination-ip in this case is the Loopback0 interface on the tunnel's tailend router. |
tunnel mpls traffic-eng path-option 10 dynamic | Tells the Cisco IOS Software how to generate the path from the tunnel headend to the tunnel tail. This command is covered in more detail in Chapter 4. |
As you can see, a basic MPLS Traffic Engineering configuration is simple. You need to configure a few more things on your routers before MPLS Traffic Engineering tunnels will actually be set up and used, but not much more. You can tweak plenty of knobs to change how MPLS Traffic Engineering tunnels behave in your network.
3.145.63.136