I have seen quite a few discussions regarding MPLS stating things like: MPLS combines the performance and capabilities of Layer 2 (data link layer) switching with the proven scalability of Layer 3 (network layer) routing. Additionally, i have also heard technical discussions around switching vs routing. They say switching is faster than routing.I have the below questions:

Q1: Is switching actually faster than routing? If so, how?

Q2:Hardware is faster than software.Is that true ?

Q3:I know that derivations of CEF,Fast switching are made using above concepts. How does this actually fit in ? I read the differences b/w CEF,Fast Switching and Process Switching, but i could not get a clear cut picture.

Q4: How is MPLS taking advantage of the switching vs routing speeds?

2 Answers 2


Don't equate marketing literature with technical discussions :-)

Let me answer your second question first:

Hardware is faster than software, in practically all cases. When we say "hardware," we mean devices that are purposely designed to forward packets as fast as possible. The usual limitation is the physical properties of the integrated circuit technology. Software, on the other hand, uses a general purpose processor that has to perform several operations in order to forward a packet (read data, move it to another part of memory, perform some calculations, move it again, etc). This is generally significantly slower that hardware-based systems.

The switching vs. routing debate is largely moot in modern networks. Once upon a time, routers did their forwarding in software, but modern enterprise routers use hardware and software in combination to forward packets at line rate - that is, as fast as they are received. So essentially, there is no difference between routing and switching. That is one reason you will see the term "layer 3 switches" used. It's partly a marketing effort to make them "sound" faster.

Questions about CEF, fast, and process switching have been asked and answered here already, so I won't repeat them.

So your last question assumes there is a major difference between routing and switching -- but as you can see, there isn't any longer.


Since you have so many questions, I will explain the first one in details.

Basically, you should understand that routers have two main functions: Forwarding pkt to destination (IP address) Running routing protocol

A router refers to a device that generally performs its operations by software. While the main role of a switch is to transfer packet as fast as possible based on IP address, especially for the layer 3 switch.

A Layer 3 switch, does it per hardware. It's usually and depending on the environment that you are. There are carrier grade routers that route packets using hardware.

But, routers provides features that are considered 'premium' in switches such as NAT, Firewall, BGP, VPN, MPLS, VPLS,... These things are really difficult to implement in hardware and that's why the carrier grade routers that implement these protocols are so expensive.

To sum up, the case of use of a Switch and a router are different, although they are the same at a theoretical point of view.

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.