IEEE Access (Jan 2019)

P4SC: A High Performance and Flexible Framework for Service Function Chain

  • Dong Zhang,
  • Xiang Chen,
  • Qun Huang,
  • Xiaoyan Hong,
  • Chunming Wu,
  • Haifeng Zhou,
  • Yi Yang,
  • Hongyan Liu,
  • Yuxin Chen

DOI
https://doi.org/10.1109/ACCESS.2019.2950446
Journal volume & issue
Vol. 7
pp. 160982 – 160997

Abstract

Read online

Network function virtualization allows network functions to be implemented and managed flexibly as a service function chain (SFC) in the data plane to process flows. However, software-based SFCs lead to poor performance compared to proprietary middleboxes. Moreover, existing solutions tackling performance issues suffer from the development complexity incurred by hardware details. To address these problems, we leverage both the high performance of P4-capable devices and the high flexibility of P4 language. In this paper, we present a P4 Service Chaining framework (P4SC), which tackles multiple challenges for P4 to support the SFC implementation. P4SC provides a suite of primitives allowing efficient SFC expression, and a converter and a generator converting input SFC requests to the corresponding P4 program. Here, an algorithm based on longest common subsequence (LCS) is used to allow simultaneously implementing multiple SFCs. Moreover, P4SC offers a runtime manager for flexible SFC management at runtime. It also provides an automatic integration mechanism to integrate P4-based NFs into P4SC. We implement a P4SC prototype, which supports three types of P4-capable devices. The experimental results show that P4SC outperforms state of the arts with orders-of-magnitude SFC performance improvement while maintains high flexibility.

Keywords