FlexMesh: Flexibly Chaining Network Functions on Programmable Data Planes at Runtime

Yu Zhou,Jun Bi,Cheng Zhang,Mingwei Xu,Jinaping Wu
2020-01-01
Abstract:Programmable data planes (PDP) enable operators to implement various functions (e.g. routing and access control) on high-performance switches and define the chains of these functions with a switch profile. However, with the number of deployed functions increasing, the switch profile faces growing complexity during development and inflexibility to chain functions at runtime. This paper presents FlexMesh, an integrated platform which aims to introduce flexibility and simplicity to PDP while being compatible with existing programmable devices. FlexMesh designs (1) a set of chaining primitives, so operators can easily describe the function chain for each flow without facing the complexity of customizing the switch profile during development; and (2) a data plane model that can be reconfigured at runtime and can flexibly construct user-desired function chains. We implement FlexMesh based on P4 and evaluate it on various targets. Results indicate that with minor performance overheads, FlexMesh can be an efficient development-assistance tool for operators, as well as an automated platform to chain NFs flexibly while keeping conformance to complex policies.
What problem does this paper attempt to address?