Things on Unix, bytes, and SF.
One thing I’ve noticed while doing work as a network engineer is that routers (both CPU and hardware-based) seem to have relatively old CPUs compared to the latest hardware on the market.
I suspect that product lines aren’t refreshed with new CPUs very often since swapping out a core component like a CPU can potentially require a lot of hardware rework, new boards, QA and testing, etc. I think this is really unfortunate though that router vendors are using custom motherboards and proprietary interconnections, since it means that making changes becomes difficult.
I feel like this mentality of design-once, overhaul later leaves a real gap in the market for those with modest (20k - 200k PPS, FastE/GigE) routing requirements that want very flexible routing policies.Personally, I often find CPU-based routers much more appropriate for most routing applications compared to more-expensive hardware ASIC devices. The obvious drawback is increased forwarding latency, and a more-easily DOSed platform. This could be mitigated by using ECMP routing across a larger horizontal plane of cheaper routers. Having more makes overwhelming them more difficult, and using smarter routing policies negates the hit of increased latency. By measuring your latency to a variety of endpoints over a multitude of transits and peers, its possible to shave off a few milliseconds by smartly choosing your next-hops. I think that if someone can make some optimized CPU-based routers based on commodity hardware, they’ll find a nice niche for small to medium networks that want to work more smartly rather than just using a bigger hammer.