Home > Articles > Cisco Network Technology > General Networking > Configuration of Frame Mode MPLS

Configuration of Frame Mode MPLS

Chapter Description

This chapter covers the background and configuration of frame mode Multiprotocol Label Switching (MPLS), discussing common configurations and features such as Configuring Basic MPLS, MPLS Traffic Engineering, and MPLS Virtual Private Networks.

10-2 MPLS Traffic Engineering

Service providers can use traffic engineering on MPLS-enabled routers to route a customer's network traffic based on throughput and delay. Traffic engineering (TE) tunnels are created for label switch paths (LSP) using the RSVP. A tunnel interface represents the head of the LSP and is configured with a set of resource requirements (for example, bandwidth requirements, media requirements, and priority):

  • Topology and resource information is flooded using either IS-IS or OSPF. Traffic engineering extensions are added to the routing process to enable MPLS traffic engineering.
  • IS-IS routers must be configured to use the new style of IS-IS metric to support new type, length, and value objects (TLV) for traffic engineering. The new TLVs are 22 and 135 and have sub-TLVs that enable you to add properties to a link for purposes of traffic engineering.
  • The Shortest Path First (SPF) algorithm used by IS-IS and OSPF chooses the tunnel interface before choosing an alternative path over main interfaces.
  • Multiple tunnels might be configured to load-share traffic.

Configuration

  1. (Required) Allow CEF and LDP as explained in Section 10-1.
  2. (Required) Allow the MPLS traffic engineering feature:
    (global) mpls traffic-eng tunnels
          
    Before you can allow interfaces for traffic engineering, you must first allow traffic engineering globally.
  3. (Required) Allow traffic engineering on interfaces:
    (interface) mpls traffic-eng tunnels
          
    When you have allowed MPLS traffic engineering globally, you can then allow it on interfaces. Configuring this command causes its resource information to be flooded into the appropriate interior gateway protocol (IGP) link-state database (either IS-IS or OSPF). This command also enables the interface to accept traffic engineering tunnel signaling requests.
  4. (Required when using CAC with RSVP) Allow RSVP on an interface and specify the amount of bandwidth to reserve:
    (interface) ip rsvp bandwidth [bandwidth]
    This command enables the resource reservation protocol (RSVP) on the interface. You must enter this command if you use Call Admission Control (CAC) with RSVP. If you do not specify a bandwidth value, a default bandwidth value of 75 percent will be used.
  5. Configure OSPF for MPLS traffic engineering.
    1. (Required) Allow traffic engineering for each area:
      (router) mpls traffic-eng area area-number
                  
    2. (Required) Set the traffic engineering router identifier:
      (router) mpls traffic-eng router-id interface
                  
      Unlike OSPF and MPLS router IDs, MPLS traffic engineering will not automatically set a router ID. The router ID will be the IP address on the interface you enter in this command. It is recommended that you use a loopback interface and that it match that of the interface used for the OSPF process router ID. The router ID is flooded to other routers and is used as the tunnel destination IP address.
  6. Configure IS-IS for MPLS traffic engineering.
    1. (Required) Allow traffic engineering:
      (router) mpls traffic-eng {level-1 | level-2}
      You can choose to flood traffic engineering into IS-IS level-1 or level-2.
    2. (Required) Set the traffic engineering router identifier:
      (router) mpls traffic-eng router-id interface
                  
    3. (Required) Configure the router to generate and accept new-style TLVs:
      (router)metric-style wide
                  
      The original metric used by IS-IS does not support traffic engineering. You must enter this command to support the new type, length, value objects (TLV), and sub-TLVs used for traffic engineering.
  7. Create a tunnel interface:
    (global) interface tunnel number
          
    This command creates a new tunnel interface.
  8. Assign an IP address to the tunnel interface:
    (interface) ip unnumbered interface
          
    Tunnel interfaces should be unnumbered because the tunnel interface represents a unidirectional link. It is recommended that you use a loopback interface for the interface value.
  9. Set the tunnel destination IP address:
    (interface) tunnel destination ip-address
          
    The tunnel destination IP address should be set to the far-end router's IP address that was configured with the mpls traffic-eng router-id command under the IS-IS or OSPF router process.
  10. Set the tunnel type to MPLS traffic engineering:
    (interface) tunnel mode mpls traffic-eng
          
    There are many types of tunnel interfaces (for example, GRE, 6to4, and so on), so you must manually set the interface type.
  11. Configure the bandwidth for the tunnel:
    (interface) tunnel mpls traffic-eng bandwidth bandwidth
          
    The range of valid bandwidth values is 1–4294967295.
  12. Configure a dynamic or explicit path option:
    (interface) tunnel mpls traffic-eng path-option number { dynamic | explicit
    {name path-name | identifier path-number}}
    You can configure the tunnel to be dynamic, meaning the router will rely on the IS-IS or OSPF routing information to determine the best path for the tunnel. You can also manually define the path using the explicit option. If you choose to explicitly map out the tunnel path, you need to enter either a name or identifier to reference the configured path. The steps for configuring an explicit path follow:
    1. Configure the explicit path (if applicable).
      • Enter IP explicit path configuration mode:

        (global) ip explicit-path {name path-name | identifier path-number}

        The path-name or path-number should match what you configured with the tunnel mpls traffic-eng path-option command earlier.

      • Enter the IP addresses for each hop:
        (explicit-path-configuration) next-address [loose | strict] ip-address
                          
      Enter the next IP addresses one at a time for the path you want the tunneled traffic to take. The loose and strict keywords are optional. The loose option tells the router that the previous address in the explicit path does not need to be directly connected to the next address. The router is therefore free to determine the path from the previous address to the next. The strict option tells the router that the previous address must be directly connected to the next address.
  13. Allow the IGP (that is, IS-IS or OSPF) to use the tunnel when performing its SPF route calculation:
    (interface) tunnel mpls traffic-eng autoroute announce
          
    The only way to forward traffic onto a tunnel is to allow this feature or to configure a static route to the interface.
  14. (Optional) Manually configure the metric used by the SPF calculation:
    (interface) tunnel mpls traffic-eng autoroute metric absolute metric
          
    You can allow the IGP to automatically assign the metric for the tunnel or manually configure the metric value using this command.

Example

Figure 10-2 is used for this example. RouterA is configured for MPLS traffic engineering. An explicit tunnel is configured with a backup dynamic tunnel. The tunnel is configured with a metric of 10 and announced to IS-IS so that IS-IS will consider the tunnel when it performs its SPF calculation.

Figure 10-2

Figure 10-2 MPLS Traffic Engineering Example

hostname RouterA
!
ip cef
mpls ip
mpls ldp router-id 1.1.1.1
mpls traffic-eng tunnels
!
interface fastethernet0/0
 ip address 10.1.1.5 255.255.255.252
 mpls ip
 ip router isis
 mpls traffic-eng tunnels
 ip rsvp bandwidth 512
!
interface loopback 0
 ip address 1.1.1.1 255.255.255.255
 ip router isis
!
router isis
 net 49.0001.0000.0000.0001.00
 is-type level-1
 metric-style wide
 mpls traffic-eng router-id loopback 0
 mpls traffic-eng level-1
!
interface tunnel 0
 ip unnumbered loopback 0
 tunnel destination 4.4.4.4
 tunnel mpls traffic-eng bandwidth 512
 tunnel mode mpls traffic-eng
 tunnel mpls traffic-eng autoroute announce
 tunnel mpls traffic-eng autoroute metric absolute 10
 tunnel mpls traffic-eng path-option 1 explicit name TUNNEL
 tunnel mpls traffic-eng path-option 2 dynamic
!
ip explicit-path name TUNNEL
 next-address 2.2.2.2
 next-address 4.4.4.4
3. 10-3 MPLS Virtual Private Networks (VPN) | Next Section Previous Section