/smart_offload

基于 DPDK 和智能网卡的流量卸载试验. A flow offloading prototype base on DPDK and Mellanox/Nvidia SmartNIC.

Primary LanguageCMIT LicenseMIT

Smart Offload

Build

1. Main Feature

  • Pass the packet into process thread, and create an offloading rte_flow after n packets.
  • The offloading rte_flow can count the packets, set timeout callback, use hairpin to forward packets.
  • Delete the rte_flow if there is no corresponding packet for 10 seconds.

2. Module Design

module

3. Thread Design

threads

3. Quick Start

Requirements:

  • DPDK 21.11.3
  • x86 server with Mellanox/Nvidia SmartNic.

Run

mkdir build && cd build
cmake ..
make
# -l Specify the core; -a Specify the port
./smart_offload -l 1-9 -a 82:00.0

4. Questions

Unable to set Power Management Environment

Can not set frequency of CPU cores, you can a definition -DVM=true to disable this feature.