NFCache: Fine-grained and Flexible Offloading of Network Functions to Programmable Switches.

Ruixin Chen,Xinpeng Shan,Jin Zhao
DOI: https://doi.org/10.1145/3605731.3605747
2023-01-01
Abstract:A Service Function Chain (SFC) consists of a sequence of Network Functions (NFs) in order, and plays an important role in network performance and security. In recent years, due to the low throughput and high latency of network functions in the context of Network Function Virtualization (NFV), some NF implementation solutions consider offloading network functions to programmable switches. However, existing offloading efforts either perform coarse-grained offloading or are not flexible enough to adapt to dynamic and unbalanced traffic. In this paper, we propose NFCache, which offloads network functions at the granularity of NF rules and implements a general network function module, allowing different stateful or stateless network functions to share switch resources. When the traffic changes, the control plane of NFCache can flexibly offload the required network function rules that can bring the most significant offloading gain. We also implement NFCache on a commodity programmable switch to evaluate its performance. Experimental results show that compared with the state-of-the-art solutions, NFCache increases the average throughput by 72% and decreases the packet latency by 52% under dynamic and unbalanced traffic.
What problem does this paper attempt to address?