Basics: How to configure MPLS and MPLS Traffic Engineering

Today we are going to discuss about the basics where we will discuss how to configure the MPLS in your network.

What is MPLS ?
MPLS described as Multi Protocol Label Switching and uses Labels to transport traffic in the core and routing at the edges of the MPLS network.

Fig 1.1- MPLS basics

MPLS packets can run on layer 2 protocols like ATM, Frame Relay, PPP, POS and Ethernet. MPLS provides a highly scalable mechanism based on topology driven

MPLS packet is of 32 bit which includes
Label : 20 bits
COS/EXP ( Class of Service) : 3 bits
Bottom of Stack : 1 bit
TTL: 8 bits

Fig 1.2- MPLS Packet format

Configuration of the MPLS :
Let's see how to enable MPLS step by step. We will first talk about the basic configuration of MPLS and then will see the show commands 

1. Enables Configuration mode
R1# Config t

2. Enable Cisco Express Forwarding
R1# ip cef

3. Specify the interface to configure
R1(config)# interface fa0/0

4. Configure MPLS hop by hop forwarding for the interface fa0/0
R1(config-if)# mpls ip

5. Configures the use of LDP on the interface fa0/0
R1(config-if)# mpls label protocol ldp

6. Configure the use of LDP on all the interfaces
R1# Config t
R1(config)# mpls label protocol ldp

Show commands in MPLS networks
Let's see now some of the show commands in the MPLS environment.

R1# show mpls interfaces
Interface IP Tunnel Operational
FastEthernet0/0 Yes (tdp) No No
FastEthernet1/1 Yes (tdp) Yes No
FastEthernet1/2 Yes (tdp) Yes Yes
POS2/0/0 Yes (tdp) No No
ATMO/0.1 Yes (tdp) No No (ATM labels)

Router# show mpls Idp discovery
Local LDP Identifier:
Discovery Sources: Interfaces 
POS2/0 (Idp): xmit/recv
Tunnel (Idp): Targeted ->
Targeted Hellos: -> (Idp): active, xmit/recv
LDP Id: > (tdp): passive, xmit/recv

MPLS Traffic Engineering basic configuration setup:
So now let's see the basic configuration commands for the MPLS traffic engineering with OSPF protocol. It may help you to understand how to configure

Step 1: Enables MPLS traffic engineering tunnels on an interface
R1(config-if)# mpls traffic-eng tunnels

Step 2: Enables RSVP for IP on an interface and specifies the amount of bandwidth that will be reserved
R1(config-if)# ip rsvp bandwidth 1024 

Step 3: Configures an OSPF routing process for IP; You are placed in router configuration mode. The process-id is an internally used identification parameter for an OSPF routing process. It is locally assigned and can be any positive integer. Assign a unique value for each OSPF routing process
R1(config) # router ospf 10

Step 4: Turns on MPLS traffic engineering for OSPF area 0 
R1(config-router) # mpls traffic-eng area 0

Step 5: Specifies that the traffic engineering router identifier for the node is the IP address associated with interface loopback0
R1 (config-router) # mpls traffic-eng router-id loopback 0