Hardware usually scales at line rate without any issue, something Linux cannot.
From a pure latency point of view, a medium-range router (using the latest Broadcom Tomahawk chipset) takes around 500ns to route a packet (note that such a chipset cannot handle a full view). It doesn't seem unlikely that Linux can do the same job in certain configuration in about 100ns (notably, no netfilter rules). However, this takes a whole core to do that. If you have 24 of them, you get 12Gbps of transfer rate. With an hardware platform, packets are pipelined, so with some relatively small buffers, you can still achieve several hundreds of Gbps of traffic (per chip), something Linux cannot do in software.
I can't say about TCAM performance alone. Are there super fast or are there able to perform parallel lookup?
From a pure latency point of view, a medium-range router (using the latest Broadcom Tomahawk chipset) takes around 500ns to route a packet (note that such a chipset cannot handle a full view). It doesn't seem unlikely that Linux can do the same job in certain configuration in about 100ns (notably, no netfilter rules). However, this takes a whole core to do that. If you have 24 of them, you get 12Gbps of transfer rate. With an hardware platform, packets are pipelined, so with some relatively small buffers, you can still achieve several hundreds of Gbps of traffic (per chip), something Linux cannot do in software.
I can't say about TCAM performance alone. Are there super fast or are there able to perform parallel lookup?