Title :
NetVM: High Performance and Flexible Networking Using Virtualization on Commodity Platforms
Author :
Jinho Hwang ; Ramakrishnan, K.K. ; Wood, Timothy
Author_Institution :
IBM Res., Yorktown Heights, NY, USA
Abstract :
NetVM brings virtualization to the Network by enabling high bandwidth network functions to operate at near line speed, while taking advantage of the flexibility and customization of low cost commodity servers. NetVM allows customizable data plane processing capabilities such as firewalls, proxies, and routers to be embedded within virtual machines, complementing the control plane capabilities of Software Defined Networking. NetVM makes it easy to dynamically scale, deploy, and reprogram network functions. This provides far greater flexibility than existing purpose-built, sometimes proprietary hardware, while still allowing complex policies and full packet inspection to determine subsequent processing. It does so with dramatically higher throughput than existing software router platforms. NetVM is built on top of the KVM platform and Intel DPDK library. We detail many of the challenges we have solved such as adding support for high-speed inter-VM communication through shared huge pages and enhancing the CPU scheduler to prevent overheads caused by inter-core communication and context switching. NetVM allows true zero-copy delivery of data to VMs both for packet processing and messaging among VMs within a trust boundary. Our evaluation shows how NetVM can compose complex network functionality from multiple pipelined VMs and still obtain throughputs up to 10 Gbps, an improvement of more than 250% compared to existing techniques that use SR-IOV for virtualized networking.
Keywords :
cloud computing; complex networks; computer network performance evaluation; file servers; pipeline processing; software defined networking; virtual machines; virtualisation; CPU scheduler; Intel DPDK library; KVM platform; NetVM; SR-IOV; commodity platforms; commodity servers; complex network functionality; context switching; data plane processing capabilities; flexible networking; high bandwidth network functions; high performance networking; high-speed interVM communication; intercore communication; multiple pipelined VMs; network functions; software defined networking; software router platforms; trust boundary; virtual machines; virtualization; virtualized networking; zero-copy delivery; Hardware; Sockets; Software; Switches; Throughput; Virtual machine monitors; Virtualization; Cloud Computing; Network Function Virtualization; Network function virtualization; Software Defined Network; cloud computing; software defined network;
Journal_Title :
Network and Service Management, IEEE Transactions on
DOI :
10.1109/TNSM.2015.2401568