Consider the topology below.

---> traffic flow direction ---> 
---> PE-1-----P1-----P2-----PE-2 --->

Here PE-1 is the ingress LER and PE-2 is the egress LER. P1 and P2 are LSRs. Now say PHP, (Penultimate Hop Popping) is enabled in these routers. P2 is Pen-Ultimate-Hop here; hence P2 pops the last label (assumming Label-Stack depth is only 1) and sends an IP-Packet to PE-2.

Can PE-2 distinguish between traffic arriving via MPLS-LSP and traffic which is not coming via MPLS-LSP?

  • 3
    Saran, this is an interesting question, but one thing I'm trying to understand is why this matters. In other words, if PE-2 could distinguish which LSP the traffic came from, how would that matter to you? How would you use this information? Commented Feb 12, 2014 at 7:45
  • 1
    @MikePennington Whats wrong with just knowing?
    – Baldrick
    Commented Feb 20, 2014 at 15:15
  • Did any answer help you? if so, you should accept the answer so that the question doesn't keep popping up forever, looking for an answer. Alternatively, you could provide and accept your own answer.
    – Ron Maupin
    Commented Aug 8, 2017 at 16:06

2 Answers 2


The LER will be unable to distinguish this packet from any other packet as it will arrive unlabelled (as you said this is only true if the label stack has only a depth of ONE (the transport label)).

You could somehow mark packets (CoS) that are transported trough MPLS. This might differentiate them from packets that are not transported via MPLS but would require additional configuration and highly depends on the used gear.


Yes. First, the packet will arrive in an L2 PDU that does have a label or does not have a label. Second, the egress LSR will also know what labels it has distributed for what LSPs.

Edit: For completeness and to further clarify for this particular example, the egress LSR would assign a null label for that particular LSP signalling to the penultimate node to pop that label and forward it to the egress LSR. If for some reason it received a packet with a label when it had signalled an implicit null (misconfig, forging of the PDU, etc.), like in this PHP example, in most cases it would forward it for an LSP corresponding to that label if it had that label. If it did not assign an LSP corresponding to that label, it would drop it.

  • 4
    implicit null means the traffic is unlabeled going to PE2. Honestly, I am struggling to understand how this answer is correct Commented Feb 11, 2014 at 23:38
  • 1
    Here we are not discussing about a misconfig, forging of the PDU scenario. the example I mentioned above is very common and valid scenario.
    – Hemanth
    Commented Feb 12, 2014 at 6:50
  • I understand what implicit null means, however, the fact that an egress LSR assigns and implicit null does not mean that the PDU for that LSP will arrive with the label popped; It only means it should arrive. The question asked if the LSR could distinguish this fact. Of course, the answer is yes, but in interest of completeness I think it's important to distinguish between what the LSR would essentially assume and what the LSR would know.
    – omnomnom
    Commented Feb 15, 2014 at 13:59
  • No, it means that it will not arrive with a label. the MPLS RFC is pretty specific about it: A value of 3 represents the "Implicit NULL Label". This is a label that an LSR may assign and distribute, but which never actually appears in the encapsulation. When an LSR would otherwise replace the label at the top of the stack with a new label, but the new label is "Implicit NULL", the LSR will pop the stack instead of doing the replacement. Commented Feb 23, 2014 at 22:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.