I learned that Label Switching (LS) technique, such as MPLS, is really faster than the classical routing method where each router takes a bit time to look up its IP table for routing to the next hop. If this is the claim, I want to understand why label switching is faster? To me both techniques are still similar, in terms of time, because routers still need to check the label on each packet before switching!! Right? I don't see any less computation or speeding up here. If I am wrong, I'd like to know the correct reasoning of that.

Thank you

  • 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
    Aug 15, 2017 at 19:11

2 Answers 2


You're mixing number of scenarios. To simplify, you have three scenarios:

  1. IP routing interface to IP routing interface (no MPLS, no labels of any kind); router will do lookup in the FIB to find best path and forward IP packet to the next-hop; with current generation FPGAs/ASICs it's done in a very efficient manner, with FIB being structure that's usually hierarchical and very fast to look up.

  2. IP routing interface to MPLS enabled interface or vice versa; here You'll do additional lookup to check if label imposition or deposition is needed;

  3. Pure MPLS to MPLS switching - you're looking at incoming label and based on it, You're swapping the label to different label.

Router will decide on input what kind of packet it receives based on Ethertype - with IPv4, IPv6 and MPLS all having distinct values. As for destination - the destination IP in FIB will contain instruction which label to push to the packet before forwarding.

On surface, (3) is fastest, because you can search single label space quite efficiently in one lookup. For RIB/FIB you're usually dealing with hierarchy/tree, so it usually requires multiple lookups (with a lot of work during last 10-20 years on the construction and optimization of such search trees).

Only in theory however - current generation FPGAs/ASICs are capable of doing multiple lookups at the same time, and what's even more important - are doing it anyway. Why? They need to check for various services assigned to the packet/FEC - like QoS, filtering and so on.


I agree - I don't think the claim that label switching is faster than IP routing is true (regardless of what the current "label switching" article on wikipedia says).

Maybe back in the day on platforms that did forwarding in software, IP routing look-ups might have been expensive and time-consuming when the routing table got bigger, but I don't see how there would be any difference today in a label lookup vs. a route lookup in a FIB implemented in ASIC.

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.