NUMA-aware design and mapping for pipeline network functions
Yongyu Wang · 2017
Replacing hardware middleboxes with software network funcions running on commodity servers is a critical movement of NFV. In order to achieve the performance demands of NFV, both design and deployment of network processing software should be taken into consideration. DPDK(Data Plance Development Kit) is commonly used to improve data plane performance, which offers a pipeline model of network processing. Modern servers often use NUMA(non-uniform memory access) multiprocessors while NUMA introduces performance penalty because of remote memory accesses. Since a simple function is composed of several pipeline stage deployed on physical cores of different NUMA nodes, the performance may decrease without proper mapping policy. In this paper, we analyze the effect of NUMA on pipeline network function as well as offer a simple algorithm to map threads on physical cores in a NUMA-awared way.