MPLS label confusion !

Unanswered Question
Nov 10th, 2008
User Badges:

Hi all, i have a very basic question regarding mpls labels. i have read in various books and seen it practically that for directly connected links a router will advertise the prefix with imp null label which is shown as POP tag on the neighoring router. My question is why is this so ?? consider the following scenario





I have enabled mpls ip on links between R1, R2 and R3. When R1 advertises the link between R4 and itself (lets say its then on R2 i see it as POP tag ok ?? why is R1 advertising it as a imp null label ? since mpls is not enabled on it why bother assigning it any label at all ?? i am aware of PHP but this what confuses me, since is a pure ip network then why R1 doesnt assign any label at all and on R2 shall i see UNTAGGED !! i mean why this is not the behaviour !!

Can some1 guide me in this pls ??? pls tell me why R1 is using PHP for a pure ip network ?

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 0 (0 ratings)
Mohamed Sobair Mon, 11/10/2008 - 22:55
User Badges:
  • Gold, 750 points or more


PHP is performed by default on Cisco IOS for directly connected or aggregated subnets.

its normal for R1 to advertise imp null label for its directly connected subnet.

you can check that by issuing :

sh mpls ldp binding on R1.



mheusing Tue, 11/11/2008 - 01:07
User Badges:
  • Cisco Employee,


It is inevitable for all MPLS environments that there will be pure IP networks, which get MPLS labels assigned. It can be explained in different ways. Answers to your question:

A1) MPLS is a transport technology transparent to the IP end systems (like PCs). Thus an edge MPLS router will have to assign labels to "pure IP networks". Otherwise no MPLS labels could be assigned to those networks which traffic should be transported.

A2) MPLS label allocation - by default - follows a simple rule: allocate a label to every IP route except if it is learned by BGP. Locally assigned labels are sent to all LDP neighbors. A MPLS router does neither know, if a neighbor will ever use those labels nor, if it is essentials to have a label. Assume as an example you have configured MPLS L3VPN with your R1 routers address as next hop. Then it would be crucial not to use "unlabeled/untagged", as this would break connectivity. LDP cannot "know" BGP next hops used somewhere in your network. Therefore the default label allocation scheme is as described and observed.

Note: LDP can be configured with selective label allocation, as the network administrator knows, what LDP can not. In your example you could restrict LDP to only allocate/announce labels for loopback addresses. Then the behaviour you expected from the beginning could be observed. As depicted in A2) misconfigured selective label allocation can break connectivity in MPLS networks.

Hope this helps! Please use the rating system.




This Discussion