What is DPDK

DPDK(Data Plane Development Kit) Data Plane Development Kit 能大幅提升封包處理效能與傳輸量,讓資料層面應用程式享有更充裕的處理時間。

Data Plane Development Kit 可讓封包處理效能加快達十倍。於單一 Intel® Xeon® 處理器上便可實現超過 80 Mpps 的傳輸量,搭配雙處理器配置則可達雙倍。1 因此電信與網路設備製造商 (TEM 與 NEM) 可有效降低開發成本,動用更少工具與支援團隊,亦享有更快的上市時間。

(refer from Intel Website)

DPDK Support NIC

DPDK Supported NICs

It could support on virtual driver “virtio-net”.

Process:

  • Bind DPDK (dpdk-devbind.py)to mount your network driver to DPDK driver list
    • Use dpdk status (dpdk-devbind.py status) to query it.
  • Use KNI (Kernel Network Interface) to enable that driver to eth0.
    • If you use kni to enable DPDK to eth0, you can use all network function with DPDK benefit.
    • kni will waste one CPU to relay DPDK driver data to eth0.

Suggestion:

  • Write DPDK related code directly.
  • DPDK suitable for small cell but lots of data queue.

Reference


Evan

Attitude is everything