Sunday, January 22, 2012

MPLS Traffic Engineering Configuration


MPLS has been aptly defined as a layer "2.5" protocol. True to its roots, MPLS provides traffic engineering (TE) capabilities usually associated with L2 technologies such as ATM and Frame Relay, to L3 networks. Incorporating MPLS TE into an existing SP or large enterprise network can vastly improve the utilization of WAN links while also spreading out risk over them. In fact, this is the basis of how our largest IP backbones operate today.

In order to configure TE, the first step is to define a /32 TE loopback address on each router that is participating in the TE domain. Here, we have selected 10.88.47.x (clever? 0x8847 is the ether-type associated with MPLS unicast).

interface Loopback8847
description MPLS TE
ip address 10.88.47.1 255.255.255.255
ip ospf 1 area 0
end

Note that we have placed the interface in OSPF area 0 which has been prepared to participate the TE domain as the IGP.

router ospf 1
mpls ldp sync
mpls ldp autoconfig
mpls traffic-eng router-id Loopback8847
mpls traffic-eng area 0

router-id 10.88.47.1
log-adjacency-changes
network 10.4.1.2 0.0.0.0 area 0
!

We have to ensure that RSVP is configured on all interfaces that will participate in the TE domain. RSVP signalling with the use of TE extensions enables the head-end router to provision tunnels to the destination.

interface Gi0/0
ip rsvp bandwidth

Next, we configure the TE tunnel itself:

interface Tunnel9001
description MPLS TE tunnel to R6
ip unnumbered Loopback8847
ip ospf interface-retry 0
tunnel destination 10.88.47.6
tunnel mode mpls traffic-eng
tunnel mpls traffic-eng autoroute announce
tunnel mpls traffic-eng priority 3 3
tunnel mpls traffic-eng bandwidth 16
tunnel mpls traffic-eng path-option 1 dynamic
tunnel mpls traffic-eng fast-reroute
no routing dynamic
end

Notice the IGP interaction with MPLS TE when you examine the new type 10 "opaque-area" LSAs under OSPF. These LSAs are flooded throughout the area.

Type-10 Opaque Link Area Link States (Area 0)

Link ID ADV Router Age Seq# Checksum Opaque ID
1.0.0.0 10.88.47.1 824 0x8000001F 0x006688 0
1.0.0.0 10.88.47.5 760 0x80000027 0x0007B9 0
1.0.0.0 10.88.47.6 626 0x80000022 0x008EAC 0
1.0.0.1 10.88.47.1 571 0x80000023 0x00A30E 1
1.0.0.1 10.88.47.5 1016 0x8000001F 0x009239 1

The rich texture of the LSAs is revealed here:

LS age: 781
Options: (No TOS-capability, DC)
LS Type: Opaque Area Link
Link State ID: 1.0.0.0
Opaque Type: 1
Opaque ID: 0
Advertising Router: 10.88.47.5
LS Seq Number: 80000027
Checksum: 0x7B9
Length: 140
Fragment number : 0

MPLS TE router ID : 10.88.47.5

Link connected to Point-to-Point network
Link ID : 10.88.47.6
Interface Address : 10.8.1.5
Neighbor Address : 10.8.1.6
Admin Metric : 1562
Maximum bandwidth : 8000
Maximum reservable bandwidth : 6000
Number of Priority : 8
Priority 0 : 6000 Priority 1 : 6000
Priority 2 : 6000 Priority 3 : 3000
Priority 4 : 2000 Priority 5 : 2000
Priority 6 : 2000 Priority 7 : 2000
Affinity Bit : 0x0
IGP Metric : 1562

Number of Links : 1

You can now verify MPLS - CEF interaction and confirm that the TE tunnels are up:

R1#show ip cef 172.31.254.6 detail
172.31.254.6/32, epoch 0, per-destination sharing
local label info: global/36
nexthop 10.88.47.6 Tunnel9002
nexthop 10.88.47.6 Tunnel9001

Finally, you can view the TE tunnel summary:

R1#show mpls traffic-eng tunnels summ
Signalling Summary:
LSP Tunnels Process: running
Passive LSP Listener: running
RSVP Process: running
Forwarding: enabled
Head: 2 interfaces, 2 active signalling attempts, 2 established
5 activations, 3 deactivations
0 SSO recovery attempts, 0 SSO recovered
Midpoints: 0, Tails: 0
Periodic reoptimization: every 3600 seconds, next in 2972 seconds
Periodic FRR Promotion: Not Running
Periodic auto-bw collection: every 300 seconds, next in 273 seconds

1 comment: