Litcius/Paper detail

A novel programmable software datapath for software-defined networking

Tomasz Osiński, Jan Palimąka, Mateusz Kossakowski, Frédéric Dang Tran, El-Fadel Bonfoh, Halina Tarasiuk

202220 citationsDOI

Abstract

This paper introduces NIKSS (Native In-Kernel SDN Switch), a novel programmable software switch for Software-Defined Networking. NIKSS leverages P4 as a high-level programming abstraction, Portable Switch Architecture (PSA) as a fully-featured P4 forwarding model and eBPF as a packet processing engine. The main component of NIKSS is the PSA-eBPF compiler that translates P4 programs into code that runs inside the eBPF execution environment. However, enabling a high degree of programmability for data planes without sacrificing performance or operability is a challenge. Therefore, NIKSS provides two alternative designs of generated code, with different trade-offs between supported PSA features and achieved performance. We demonstrate that NIKSS can be used successfully as a P4 software switch, with an acceptable performance gap compared to native eBPF programming. We also provide an extensive performance evaluation, proving that NIKSS might be a viable alternative to existing software switches.

Topics & Concepts

Computer scienceDatapathSoftwareEmbedded systemCompilerComputer architectureComponent-based software engineeringOperating systemSoftware developmentSoftware-Defined Networks and 5GNetwork Packet Processing and OptimizationInterconnection Networks and Systems
A novel programmable software datapath for software-defined networking | Litcius