Configuration of MPLS Switching and Forwarding

Multi-protocol label switching (MPLS) combines the performance and capabilities of Layer 2 (data link layer) switching with the proven scalability of Layer 3 (network layer) routing. MPLS enables you to meet the challenges of explosive growth in network utilisation while providing the opportunity to differentiate services without sacrificing the existing network infrastructure 

Multi-protocol label switching (MPLS) is a high-performance packet forwarding technology that integrates the performance and traffic management capabilities of data link layer (Layer 2) switching with the scalability, flexibility, and performance of network layer (Layer 3) routing. 

Fig 1.1- Basic MPLS Topology
Each label switching router (LSR) in the network makes an independent, local decision as to which label value to use to represent a forwarding equivalence class. This association is known as a label binding. Each LSR informs its neighbors of the label bindings it has made. This awareness of label bindings by neighboring switches is facilitated by the following protocols: 
  • Label Distribution Protocol (LDP)—Enables peer LSRs in an MPLS network to exchange label binding information for supporting hop-by-hop forwarding in an MPLS network. 
  • Border Gateway Protocol (BGP)—Supports MPLS virtual private networks (VPNs). 


Configuring a Switch for MPLS Switching 
Cisco Express Forwarding be enabled on the switch before configuring MPLS switching. Beginning in privileged EXEC mode, perform the following steps: 

Configuration Example for MPLS Switching 
Switch> enable 
Switch# configure terminal 
Switch(config)# ip cef distributed 
Switch(config)# mpls label range 16 4096 
Switch(config)# mpls label protocol ldp 
Switch(config)# end 

Configuring a Switch for MPLS Forwarding 
Forwarding of IPv4 packets must be enabled on the switch before configuring MPLS forwarding. Beginning in privileged EXEC mode, perform the following steps 

Configuration Example for MPLS Forwarding 
Switch> enable 
Switch# configure terminal 
Switch(config)# interface gigabitethernet 1/0/0 
Switch(config-if)# mpls ip 
Switch(config-if)# mpls label protocol ldp 
Switch(config-if)# end

Verifying Configuration of MPLS Forwarding 
To verify that MPLS forwarding has been configured properly, run the following commands, which generates an output similar to that shown below 

Switch# show mpls interfaces detail interface GigabitEthernet 1/0/0 
Type Unknown 
IP labeling enabled 
LSP Tunnel labeling not enabled 
IP FRR labeling not enabled 
BGP labeling not enabled 
MPLS not operational 
MTU = 1500 

For Switch Virtual Interface (SVI): 
Switch# show mpls interfaces detail interface Vlan1000 
Type Unknown 
IP labeling enabled (ldp) : 
Interface config 
LSP Tunnel labeling not enabled 
IP FRR labeling not enabled 
BGP labeling not enabled 
MPLS operational 
MTU = 1500 

Switch# show running-config interface interface GigabitEthernet 1/0/0 
Building configuration... 
Current configuration : 307 bytes 
!
interface TenGigabitEthernet1/0/0 
no switchport 
ip address xx.xx.x.x xxx.xxx.xxx.x 
mpls ip 
mpls label protocol ldp 
end 

For Switch Virtual Interface (SVI): 
Switch# show running-config interface interface Vlan1000 
Building configuration... 
Current configuration : 187 bytes 
!
interface Vlan1000 
ip address xx.xx.x.x xxx.xxx.xxx.x 
mpls ip 
mpls label protocol ldp 
end.