May 20, 2017
The Actual Cost of Software Switching for NFV Chaining
Network Function Virtualization (NFV) is a novel paradigm allowing flexible and scalable implementation of network services on cloud infrastructure. An important enabler for the NFV paradigm is software switching, which needs to satisfy rigid network requirements such as high throughput and low latency. Despite recent research activities in the field of NFV, not much attention was given to understanding the costs of software switching in NFV deployments. Existing approaches for traffic steering and orchestration of virtual network functions either neglect the cost of software switching or assume that it can be provided as an input, and therefore real NFV deployments of network services is often suboptimal. In this work, we conduct an extensive and in-depth evaluation of the impact of service chaining deployments on Open vSwitch -- the de facto standard software switch for cloud environments. We provide insights on network performance metrics such as latency, throughput, CPU utilization and packet processing, when considering different placement strategies of a service chain. We then use these insights to provide an abstract generalized cost function that accurately captures the CPU cost for network switching in deployed service chains, which is an essential building block for any practical optimization placement strategy for NFV service chaining.