Flexible Offloading of Service Function Chains to Programmable Switches.

Junte Ma,Sihao Xie,Jin Zhao
DOI: https://doi.org/10.1109/tsc.2022.3162701
IF: 11.019
2023-01-01
IEEE Transactions on Services Computing
Abstract:A Service Function Chain (SFC) is an ordered sequence of network functions (NFs). Though cost-effective, software-based NFs could introduce a significant performance penalty. In this paper, we present P4SFC, a high-performance and flexible SFC system that leverages the capability of emerging programmable switches. We seek to accelerate packet processing in SFC by offloading proper NFs to P4-capable switches. First, considering the current limitations of P4, we analyze the offloadability of NFs at different granularities in detail, and enable P4SFC to generate offloading strategies for both partially and fully offloadable SFCs. Second, to deploy new SFCs at runtime, we design a dynamic P4 data plane, of which the execution logic can be reconfigured at runtime without interrupting the existed execution logic. Third, to efficiently utilize the limited memory in programmable switches, we propose a state allocator to dynamically offload those NF states that bring the highest performance profits according to the recent flow distribution. We demonstrate the feasibility and practicality of P4SFC with our implementation on a commodity Tofino-based programmable switch. Experimental results show that P4SFC achieves significant performance improvement for real SFC implementations.
What problem does this paper attempt to address?