[dpdk-users] How allocate IP to NIC binded to DPDK driver (igb)

Stephen Hemminger stephen at networkplumber.org
Thu Jul 4 16:52:07 CEST 2019


On Thu, 04 Jul 2019 14:44:58 +0530
Nilesh Unhale <nileshunhale at cse.iitb.ac.in> wrote:

> Hello,
> 
> We are trying to build an application over DPDK. However, we are facing 
> some issues:
> 
> After binding NIC to DPDK driver (igb_uio), we can not see it in 
> ifconfig -a.
> So, how to bring up that interface and allocate IP to it? We want the 
> interface to be up even after our application is terminated. (Using KNI 
> module which is provided with DPDK, we were able to give ip address 
> which lasts till KNI program is running, but while KNI application is 
> running, we can not run any other application (which uses DPDK)).
> 
> System specification :
> 2 machines with
> Distributor ID:	Ubuntu
> Description:	Ubuntu 16.04.5 LTS
> Release:	16.04
> Codename:	xenial
> 
> Kernel: 4.15.0-29-generic
> DPDK: 19.05.0
> 
> Hardware:
> CPU: Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
> 
> NIC 1: Intel Corporation Ethernet Controller XL710 for 40GbE QSFP+ 
> (i40e)
> NIC 2: Intel Corporation I350 Gigabit Network Connection (igb)

Your question relates to understanding what DPDK is (and is not).

The DPDK is a set of routines for processing packets in user space.
It has no direct connection to the Linux kernel, therefore there is no
visible network device once a network interface is bound to DPDK.

There are many ways (KNI, Virtio, TAP) for a DPDK application to
reinject packets to the kernel. These all create pseudo network
devices.

If the majority of your packets need to go into the Linux kernel,
you probably don't want to use DPDK. Instead use the packet processing
features of kernel (netfilter, XDP, qdisc, etc).


More information about the users mailing list