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.

[1]  Patrick Crowley,et al.  Network I/O Acceleration in Heterogeneous Multicore Processors , 2006, 14th IEEE Symposium on High-Performance Interconnects (HOTI'06).

[2]  Wu-chun Feng,et al.  An Analysis of 10-Gigabit Ethernet Protocol Stacks in Multicore Environments , 2007, 15th Annual IEEE Symposium on High-Performance Interconnects (HOTI 2007).

[3]  Ali G. Saidi,et al.  Integrated network interfaces for high-bandwidth TCP/IP , 2006, ASPLOS XII.

[4]  Jeffrey S. Chase,et al.  On the elusive benefits of protocol offload , 2003, NICELI '03.

[5]  Mark D. Hill,et al.  Amdahl's Law in the Multicore Era , 2008 .

[6]  D. Abts,et al.  Design of Interconnection Networks , 2007 .

[7]  Christian Benvenuti Understanding Linux Network Internals , 2005 .

[8]  Harrick M. Vin,et al.  Overcoming the memory wall in packet processing , 2005 .

[9]  Julio Ortega Lopera,et al.  A New Offloaded/Onloaded Network Interface for High Performance Communication , 2009, 2009 17th Euromicro International Conference on Parallel, Distributed and Network-based Processing.

[10]  Greg J. Regnier,et al.  TCP onloading for data center servers , 2004, Computer.

[11]  Dhabaleswar K. Panda,et al.  Can user-level protocols take advantage of multi-CPU NICs? , 2002, Proceedings 16th International Parallel and Distributed Processing Symposium.

[12]  Robert Love,et al.  Linux Kernel Development , 2003 .

[13]  Erich M. Nahum,et al.  Performance issues in parallelized network protocols , 1994, OSDI '94.

[14]  Donald F. Towsley,et al.  The effectiveness of affinity-based scheduling in multiprocessor network protocol processing (extended version) , 1996, TNET.

[15]  Dhabaleswar K. Panda,et al.  Bridging the Ethernet-Ethernot Performance Gap , 2006, IEEE Micro.

[16]  W. de Bruijn,et al.  Model-T: Rethinking the OS for terabit speeds , 2008, IEEE INFOCOM Workshops 2008.

[17]  Norman P. Jouppi,et al.  Heterogeneous chip multiprocessors , 2005, Computer.

[18]  Scott Rixner,et al.  Exploiting task-level concurrency in a programmable network interface , 2003, PPoPP '03.

[19]  Kunle Olukotun,et al.  Ubiquitous Parallel Computing from Berkeley, Illinois, and Stanford , 2010, IEEE Micro.

[20]  Hyun-Wook Jin,et al.  MiAMI: Multi-core Aware Processor Affinity for TCP/IP over Multiple Network Interfaces , 2009, 2009 17th IEEE Symposium on High Performance Interconnects.

[21]  Alan L. Cox,et al.  Concurrent Direct Network Access for Virtual Machine Monitors , 2007, 2007 IEEE 13th International Symposium on High Performance Computer Architecture.

[22]  Erik J. Johnson,et al.  IXP2400/2800 Programming: The Complete Microengine Coding Guide , 2003 .

[23]  Olaf Maennel,et al.  Workshop on network-I/O convergence: experience, lessons, implications (NICELI) , 2003, CCRV.

[24]  Muli Ben-Yehuda,et al.  Loosely Coupled TCP Acceleration Architecture , 2006, 14th IEEE Symposium on High-Performance Interconnects (HOTI'06).

[25]  Donald Newell,et al.  An in-depth analysis of the impact of processor affinity on network performance , 2004, Proceedings. 2004 12th IEEE International Conference on Networks (ICON 2004) (IEEE Cat. No.04EX955).

[26]  Robert Love,et al.  Linux Kernel Development (2nd Edition) (Novell Press) , 2005 .

[27]  Scott Rixner,et al.  Network Virtualization: Breaking the Performance Barrier , 2008, ACM Queue.