Litcius/Paper detail

Compiling Service Function Chains via Fine-Grained Composition in the Programmable Data Plane

Xiaoquan Zhang, Lin Cui, Fung Po Tso, Weijia Jia

2023IEEE Transactions on Services Computing12 citationsDOI

Abstract

Service function chains (SFCs) are fundamental services in today's datacenters and ISP networks. Explosive volume of network traffic creates high demands for low latency and high performance. The emergence of programmable data planes has offered a new way to overcome the problem. However, limited by pipeline constraints in hardware architecture, implementing multiple network functions on programmable data planes is challenging. Besides, considering various types of network functions, e.g., stateful network functions, a general model is essential for abstracting distinct network functions. In this article, we propose <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">pSFC</i> which provides a fine-grained SFCs deployment scheme in programmable data planes. Control flow graph (CFG) is proposed to abstract and analyze various network functions. Then we model pipeline constraints in the hardware architecture using an ILP (Integer Linear Programming), and model the SFCs deployment in the substrate network as a one big switch (OBS) problem. To reduce deployment cost, <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">pSFC</i> first composes multiple SFCs to a compound CFG for eliminating redundant logics within SFCs, further decomposes the compound CFG based on the resource limitation per stage, and finally maps the OBS into the substrate network. We have implemented <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">pSFC</i> in both bmv2 software switch and P4 hardware switch (i.e., Intel Tofino ASIC). Evaluation results show that <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">pSFC</i> reduces switch costs by 45.7% and decreases average latency by 22% without compromising throughput.

Topics & Concepts

Computer sciencePipeline (software)Software deploymentNetwork topologySoftwareInteger programmingSoftware-defined networkingDistributed computingProgramming languageComputer networkAlgorithmOperating systemSoftware-Defined Networks and 5GAdvanced Memory and Neural ComputingSoftware System Performance and Reliability
Compiling Service Function Chains via Fine-Grained Composition in the Programmable Data Plane | Litcius