Accelerating network applications by distributed interfaces on heterogeneous multiprocessor architectures
Hosts with several, possibly heterogeneous and/or multicore, processors provide new challenges and opportunities to accelerate applications with high communications bandwidth requirements. Many opportunities to scale these network applications with the increase in the link bandwidths are related to the exploitation of the available parallelism provided by the presence of several processing cores in the servers, not only for computing the workload of the user application but also for decreasing the overhead associated to the network interface and the system software. This paper analyses some alternatives to distribute the network interface among the different cores available in the host. These alternatives include the use of heterogeneous multicore processors, such as network processors, and the exploitation of the affinity between the network interface and the location (proximity to the memories where the different data structures are stored) and characteristics of the processing architecture. The proposed distributed network interfaces provide improvements in throughput and latency that have been experimentally evaluated by using an intrusion prevention system, which constitutes a useful network function.
network interface network processor intrusion prevention systems interrupt affinity processor affinity simics