Understanding MPLS TTL Processing

This chapter contains configurations for MPLS-TTL-Processing. It also provides an overview of MPLS-TTL-Processing concepts.

Overview

This feature performs ‘Time To Live’ (TTL) processing for Multi-Protocol Label Switching (MPLS) packets. The TTL processing is decided by the model chosen by you. This feature provides TTL processing of MPLS packets on ingress, egress, and intermediate routers. TTL processing is compliant with RFC 3443.

The details of TTL processing vary with the tunnel model that is configured for TTL processing. The incoming and outgoing TTL of the packet is determined by the configured tunnel model. Two Models are supported, pipe model and uniform model. Pipe model is default, where MPLS header TTL Value wont get propagated to IP header.

While pipe mode is the default, you can choose the uniform model with the mpls lsp-model uniform command.

For more about the uniform model and pipe models, see .

Topology

Figure 16. TTL Processing Topology

Configuration

PE1

PE1#configure terminal

Enter configure mode

PE1(config)#interface lo

Enter interface mode.

PE1(config-if)#ip address 1.1.1.1/32 secondary

Configure IP address for the loopback address

PE1(config-if)#exit

Exit interface mode

PE1(config)#interface xe6

Specify the interface (xe6)to be configured

PE1(config-if)#ip address 10.10.10.1/24

Configure IP address for the interface

PE1(config-if)#no shutdown

Administratively bringing up the interface

PE1(config-if)#exit

Exit interface mode

PE1(config)#router ospf 100

Configure the routing process and specify the Process ID (100)

PE1(config-router)#ospf router-id 1.1.1.1

Configure ospf router id same as loopback ip address.

PE1(config-router)#network 10.10.10.0/24 area 0

PE1(config-router)#network 1.1.1.1/32 area 0

Define the interface on which OSPF runs and associate the area ID(0)with the interface

PE1(config-router)#exit

Exit configure mode

PE1(config)#router ldp

Enter router mode for LDP

PE1(config-router)#router-id 1.1.1.1

Set the router ID to IP address 1.1.1.1

PE1(config-router)#transport-address ipv4 1.1.1.1 0

 

Configure the transport address for IPV4 (for IPV6 use ipv6) to be used for a TCP session over which LDP will run.

Note: It is preferable to use the loopback address as the transport address.

PE1(config-router)#targeted-peer ipv4 3.3.3.3

Configure targeted peer.

PE1(config-router)#exit

Exit router mode for LDP

PE1(config)#interface xe6

Specify the interface (xe6)to be configured

PE1(config-if)#label-switching

Enabling label switching capability on router

PE1(config-if)#enable-ldp ipv4

Enabling ldp on interface

PE1(config-if)#commit

Commit the transaction

P

P#configure terminal

Enter configure mode.

P(config)#interface lo

Enter interface mode.

P(config-if)#ip address 2.2.2.2/32 secondary

Configure IP address for the loopback address

P(config-if)#exit

Exit interface mode

P(config)#interface xe6

Specify the interface (xe6)to be configured

P(config-if)#ip address 10.10.10.2/24

Configure IP address for the interface

P(config-if)#no shutdown

Administratively bringing up the interface

P(config)#interface xe1

Specify the interface (xe1)to be configured

P(config-if)#ip address 20.20.20.1/24

Configure IP address for the interface

P(config)#router ospf 100

Configure the routing process and specify the Process ID (100)

P(config-router)#ospf router-id 2.2.2.2

Configure OSPF router id same as loopback IP address.

P(config-router)#network 10.10.10.0/24 area 0

P(config-router)#network 20.20.20.0/24 area 0

P(config-router)#network 2.2.2.2/32 area 0

Define the interface on which OSPF runs and associate the area ID (0)with the interface

P(config-router)#exit

Exit router mode

P(config)#router ldp

Enter router mode for LDP

P(config-router)#router-id 2.2.2.2

Set the router ID to IP address 2.2.2.2

P(config-router)#transport-address ipv4

2.2.2.2 0

 

Configure the transport address for IPV4 (for IPV6 use ipv6) to be used for a TCP session over which LDP will run.

Note: It is preferable to use the loopback address as the transport address.

P(config-router)#exit

Exit router mode for LDP

P(config)#interface xe6

Specify the interface (xe6)to be configured

P(config-if)#label-switching

Enabling label switching capability on router

P(config-if)#enable-ldp ipv4

Enabling ldp on interface

P(config)#interface xe1

Specify the interface (xe1)to be configured

P(config-if)#label-switching

Enabling label switching capability on router

P(config-if)#enable-ldp ipv4

Enabling ldp on interface

P(config-if)#commit

Commit the transaction

PE2

PE2#configure terminal

Enter configure mode.

PE2(config)#interface lo

Enter interface mode.

PE2(config-if)#ip address 3.3.3.3/32 secondary

Configure IP address for the loopback address

PE2(config-if)#exit

Exit interface mode

PE2(config)#interface xe1

Specify the interface (xe1)to be configured

PE2(config-if)#ip address 20.20.20.2/24

Configure IP address for the interface

PE2(config-if)#no shutdown

Administratively bringing up the interface

PE2(config-if)#exit

Exit interface mode

PE2(config)#router ospf 100

Configure the routing process and specify the Process ID (100)

PE2(config-router)#ospf router-id 3.3.3.3

Configure OSPF router ID same as loopback IP address.

PE2(config-router)#network 20.20.20.0/24 area 0

PE2(config-router)#network 3.3.3.3/32 area

0

Define the interface on which OSPF runs and associate the area ID (0)with the interface

PE2(config)#router ldp

Enter router mode for LDP

PE2(config-router)#router-id 3.3.3.3

Set the router ID to IP address 3.3.3.3

PE2(config-router)#transport-address ipv4 3.3.3.3 0

Configure the transport address for IPV4 (for IPV6 use ipv6) to be used for a TCP session over which LDP will run.

Note: It is preferable to use the loopback address as the transport address.

PE2(config-router)#targeted-peer ipv4 1.1.1.1

Configure targeted peer.

PE2 (config-router-targeted-peer)#exit

Exit-targeted-peer-mode

PE2(config-router)#exit

Exit router mode for LDP

PE2(config)#interface xe1

Specify the interface (xe1)to be configured

PE2(config-if)#label-switching

Enabling label switching capability on router

PE2(config-if)#enable-ldp ipv4

Enabling ldp on interface

PE2(config-if)#commit

Commit the transaction

Validation

Copy
PE1#show ip ospf neighbor
Total number of full neighbors: 1
OSPF process 100 VRF(default):
Neighbor ID     Pri   State            Dead Time   Address         Interface           Instance ID
2.2.2.2      1   Full/DR          00:00:31    10.10.10.2      xe6                   0
 
PE1#show ldp session
Peer IP Address           IF Name    My Role    State      KeepAlive  UpTime
3.3.3.3                   xe6       Passive   OPERATIONAL   30    00:03:03
2.2.2.2                   xe6       Passive   OPERATIONAL   30    00:03:46
 
 
P#show ip ospf neighbor
 
Total number of full neighbors: 2
OSPF process 100 VRF(default):
Neighbor ID     Pri   State            Dead Time   Address         Interface           Instance ID
1.1.1.1              1   Full/Backup      00:00:37    10.10.10.1      xe6                   0
3.3.3.3      1   Full/DR          00:00:34    20.20.20.2      xe1                   0
 
P#show ldp session
Peer IP Address           IF Name    My Role    State      KeepAlive  UpTime
3.3.3.3                   xe1       Passive   OPERATIONAL   30    00:06:21
1.1.1.1                   xe6       Active    OPERATIONAL   30    00:06:39
 
 
PE2#show ip ospf neighbor
 
Total number of full neighbors: 1
OSPF process 100 VRF(default):
Neighbor ID     Pri   State            Dead Time   Address         Interface           Instance ID
2.2.2.2      1   Full/Backup      00:00:37    20.20.20.1      xe1                    0
 
PE2#show ldp session
Peer IP Address           IF Name    My Role    State      KeepAlive  UpTime
1.1.1.1                   xe1       Active    OPERATIONAL   30    00:06:07
2.2.2.2                   xe1       Active    OPERATIONAL   30    00:06:33
 
 
 
PE1#ping 3.3.3.3
Press CTRL+C to exit
PING 3.3.3.3 (3.3.3.3) 56(84) bytes of data.
64 bytes from 3.3.3.3: icmp_seq=1 ttl=63 time=2.17 ms
64 bytes from 3.3.3.3: icmp_seq=2 ttl=63 time=2.26 ms
64 bytes from 3.3.3.3: icmp_seq=3 ttl=63 time=2.11 ms
64 bytes from 3.3.3.3: icmp_seq=4 ttl=63 time=1.91 ms
 
--- 3.3.3.3 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 8ms
rtt min/avg/max/mdev = 1.912/2.112/2.261/0.127 ms
 
 
PE1#traceroute 2.2.2.2
traceroute to 2.2.2.2 (2.2.2.2), 30 hops max, 60 byte packets
 1  2.2.2.2 (2.2.2.2)  1.172 ms  0.918 ms  0.983 ms
 
PE1#traceroute 3.3.3.3
traceroute to 3.3.3.3 (3.3.3.3), 30 hops max, 60 byte packets
 1  * * *
 2  3.3.3.3 (3.3.3.3)  5.440 ms  5.215 ms  5.305 ms