Using DPDK as an Offload Engine for P4 SmartNIC Applications - Sean Cummings & Chris Cummings, ESnet

Поделиться
HTML-код
  • Опубликовано: 25 сен 2023
  • Using DPDK as an Offload Engine for P4 SmartNIC Applications - Sean Cummings & Chris Cummings, ESnet
    P4 has taken off as a powerful language for high-performance network applications, however, it is a limited language by design. Due to these limits, many P4 applications require a “slow” path for more complex packet manipulation. In this presentation we explore the use of DPDK as a component of P4 applications in conjunction with the ESnet SmartNIC platform. Drawing from our experience building a P4-based SIIT-DC NAT64 translator on FPGAs, this presentation explores how DPDK can be leveraged to offload complex and variable-length packet manipulation functions from the P4 datapath to a general-purpose CPU. While P4 offers the tools to quickly develop Legacy IP to IPv6 translations that perform at 100Gbps line rates, we encountered challenges when dealing with complex packet translations like ICMP responses. Accordingly, we punt those more intricate, but less frequently used, translations to a DPDK side-car application. Join us as we delve into the architecture of our NAT64 translation application and demonstrate the development flow used for integrating these tools together.
    Accelerating Network Performance - The most popular kit to accelerate packet processing on a wide variety of CPU architectures Designed to run on x86, POWER and ARM processors, DPDK is a set of libraries running mostly in Linux userland, with a FreeBSD port available for a subset of features. www.dpdk.org/
  • НаукаНаука

Комментарии •