08-04-2010 09:42 PM
Hi experts,
I come across two terms that is implicit-null and explicit-null and i got confused.
can anyone try to explain what exactly means by both of these terms.
implicit-null i understood --it is last hop advertise a label of 3 to indicate it as implicit-null
Please suggest
Regards
Mahesh
Solved! Go to Solution.
08-04-2010 11:40 PM
Hi,
Both implicit and explicit null labels are generated by last hop router to its neighbors.
Implicit null is by default which means penultimate router should only send IP packet thus it pops the label (popping the label known as PHP and this is done to reduce the load on last hop router). The one disadvantage in implicit null approach is if the network is configured for QoS based on MPLS EXP bits, then QoS is lost between penultimate router and last hop router.
In this case, we can make use of Explicit null which means penultimate hop router does not pop the label. It sends with label value of 0 but with other fileds including EXP bits intact. This way QoS treatment is preserved between penultimate router and last hop router. Explicit null should be configured manually in last hop router.
HTH.
Arun
08-12-2010 12:37 AM
Hi,
(edited as i misunderstood the question previously, i try my best to explain)
Consider the following topology where all the routers are running an IGP (eg OSPF)
10.x.x.x/24 --- Router A --- Router B -- Router C -- Router D -- Router E --- 11.x.x.x/24
Consider MPLS is enabled only between Router A and Router D. Link between Router D and E are not MPLS enabled. Router D learns about 11.x.x.x prefix by some protocol from Router E. But there is no way that Router D decides by itself that it is the egress LSR for this prefix as there are some possible reasons because MPLS could be disabled by manual error between Router D and E. Or Router E belongs to a customer. I think this is one of the reason that by default implicit nulls are not generated for prefixes in RIB learned apart from connected and aggregate, because the router knows it for sure that it is the egress point for connected and aggregate.
If someone has better explanation and any other reason, pls post.
HTH
Arun
08-04-2010 11:40 PM
Hi,
Both implicit and explicit null labels are generated by last hop router to its neighbors.
Implicit null is by default which means penultimate router should only send IP packet thus it pops the label (popping the label known as PHP and this is done to reduce the load on last hop router). The one disadvantage in implicit null approach is if the network is configured for QoS based on MPLS EXP bits, then QoS is lost between penultimate router and last hop router.
In this case, we can make use of Explicit null which means penultimate hop router does not pop the label. It sends with label value of 0 but with other fileds including EXP bits intact. This way QoS treatment is preserved between penultimate router and last hop router. Explicit null should be configured manually in last hop router.
HTH.
Arun
08-05-2010 02:52 AM
Hi arun,
Seems to be good explanation. but will be helpful to me if you just tell how to configure explicit-null manually
Thanks
08-05-2010 03:39 AM
Hi
Configure "mpls ldp explicit-null" in the last hop router. Options of specifying to which FEC explicit null are generated and to which LDP neighbors it is advertised can be controlled with keywords "for" and "to".
LAB-NPEG1-R4-TOP-PE1(config)#mpls ldp explicit-null ?
for Access-list specifying controls on destination prefixes
to Access-list specifying controls on LDP peers
Remember the router generates implicit or explicit null only for directly connected interfaces and when the router aggregates the prefix, not for all prefixes in the routing table learned by other protocols.
HTH
Arun
08-10-2010 06:22 PM
Hi Arun,
Why does the last hop LSR assign the implicit NULL label only to its connected and summarized prefixes?
Anyway, the last hop LSR needs to do an IP lookup for forwarding decision, why not assign implicit NULL label to prefixes as long as this LSR is the egress LSR to forward packets to these prefixes?
thx
08-11-2010 01:05 AM
Hi
Because anways last hop LSR has to do a IP lookup to forward the packet out of its interfaces irrespective of whether the incoming packet is labelled or unlabelled. So if the incoming frame is labelled, then last hop LSR first untags the label then do a IP lookup and forwards the packet. To reduce this double work done by last hop LSR, we offload the untagging label process to penultimate hop router through implcit null. Thus last hop router only does IP lookup.
I am not clear about the second part of your question. I am assuming why last hop LSR not assigning implicit null for other prefixes in IP routing table? Is my assumption correct?
HTH
Arun
08-11-2010 11:07 AM
Yes.
08-12-2010 12:37 AM
Hi,
(edited as i misunderstood the question previously, i try my best to explain)
Consider the following topology where all the routers are running an IGP (eg OSPF)
10.x.x.x/24 --- Router A --- Router B -- Router C -- Router D -- Router E --- 11.x.x.x/24
Consider MPLS is enabled only between Router A and Router D. Link between Router D and E are not MPLS enabled. Router D learns about 11.x.x.x prefix by some protocol from Router E. But there is no way that Router D decides by itself that it is the egress LSR for this prefix as there are some possible reasons because MPLS could be disabled by manual error between Router D and E. Or Router E belongs to a customer. I think this is one of the reason that by default implicit nulls are not generated for prefixes in RIB learned apart from connected and aggregate, because the router knows it for sure that it is the egress point for connected and aggregate.
If someone has better explanation and any other reason, pls post.
HTH
Arun
08-12-2010 10:00 AM
Hi Arun,
2 problems here:
1. Routers A, B, C, D, and E should all be MPLS enabled, or LDP does not work here assuming these five routers are in MPLS VPN backbone which utilizes LDP.
2. An LSR knows that it is an Egress LSR by receiving the prefix from a downstream neighbor which is not running LDP.
Jingyi
08-12-2010 03:00 PM
Hi,
The answer is that an Egress LSR would assign implicit-null label to its directly connected or aggrgated routes only, or other wise it wouldnt be an egress LSR for all prefixes.
every LSR assign local labels for every prefix that it wants to reach, these labels are kept in the label binding of any LSR. More over, every LSR would recieve label binding from neigboring routers using downstream on demand or unsolicited downstream method depends whether its frame mode or cell mode MPLS.
If an LSR for example has a directly connected prefix 10.1.1.x, it would assign implicit mull label to this prefix and would keep it in its local binding database (can be viewed by sh mpls ldp binding 10.1.1.x), it would then populate these binding to the PHP router to inform it to pop the label when forwarding the Packet to the egress LSR. This will eleminate the egress LSR to perform additional lookups.
HTH
Mohamed
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide