In some cases (for example, a plain non-VPN MPLS network), the PHP action on the final P router can expose a plain IP packet when a packet with only one label is received. When this IP packet is received by the egress LSR (PE), it is not possible to classify the packet based on the MPLS EXP bits because there is no label now. In these situations, you must configure the egress PE router to advertise an explicit-null label. When the PHP action is performed on the P router, a label with a value of zero is sent, and with this special label you can mark the EXP bits as normally labeled packets, allowing the correct classification on the egress PE router.
Default Behavior: Penultimate Hop Pop (PHP)
R8#show mpls for 5.5.5.5 32
Local Outgoing Prefix Bytes tag Outgoing Next Hop
tag tag or VC or Tunnel Id switched interface
16 Untagged 5.5.5.5/32 0 Se0/0/0.57 point2point
Behavior with Ultimate Hop Popping (UHP)
DiffServ Tunneling Modes for MPLS Networks
RFC3270
R9(config)#mpls ldp explicit-null !this is how you enable UHP R9#show mpls for 5.5.5.5 32 Local Outgoing Prefix Bytes tag Outgoing Next Hop tag tag or VC or Tunnel Id switched interface 16 0 5.5.5.5/32 0 Se0/0/0.57 point2point
UHP: in other words: explicit-null, instead of advertising a pop we send a label (0, for both LDP/TDP)
DiffServ Tunneling Modes for MPLS Networks
RFC3270