High-performance Multi-core Networking Software Design Options
Traditional symmetric multiprocessing (SMP) systems scale poorly as the number of cores goes up. Bottlenecks due to shared memory contention and multi-core scheduling become increasingly prominent. The result is a leveling off in packet processing performance, where the addition of new cores leads only to marginal improvements in performance, or in some cases, even performance degradation. This paper looks at a couple of different multi-core networking software design options that scale better than traditional SMP, allowing equipment providers to future-proof their designs by having a single common architecture that can meet today's performance requirements and scale for the future.