[ovs-discuss] OVS 2.4 with DPDK 2.0

Zoltan Kiss zoltan.kiss at linaro.org
Wed Nov 18 11:26:52 UTC 2015



On 18/11/15 05:02, A, Sarada (HP Networking) wrote:
> Hi All,
>
> I am running the OpenvSwitch 2.4 version with DPDK 2.0 on Ubuntu 14.04
> Virtual machine.  I could successfully build both Open vswitch 2.4 &
> DPDK 2.0, I am unable to figure out how to add the dpdk interface to the
> bridge.
>
> Here are the steps I have followed.
>
> 1.wget http://openvswitch.org/releases/openvswitch-2.4.0.tar.gz
>
> 2.tar -zxvf openvswitch-2.4.0.tar.gz
>
> 3.wget http://dpdk.org/browse/dpdk/snapshot/dpdk-2.0.0.tar.gz
>
> 4.tar -zxvf dpdk-2.0.0.tar.gz
>
> 5.export DPDK_DIR=/root/dpdk-2.0.0/
>
> 6.cd $DPDK_DIR
>
> 7.Update  config/common_linuxapp with ‘CONFIG_RTE_LIBRTE_VHOST=y’
>
> 8.make install T=x86_64-native-linuxapp-gcc
>
> 9.export DPDK_BUILD=$DPDK_DIR/x86_64-native-linuxapp-gcc/
>
> 10.cd  ~/openvswitch-2.4.0/
>
> 11../boot.sh
>
> 12.make CFLAGS='-O3 -march=native' install
>
> 13.modprobe uio
>
> 14.insmod $DPDK_BUILD/kmod/igb_uio.ko
>
> 15.$DPDK_DIR/tools/dpdk_nic_bind.py  --force --bind=igb_uio eth1
>
> 16.Mount huge pages : `mount -t hugetlbfs -o pagesize=1G none
> /dev/hugepages`
>
> 17.mkdir -p /usr/local/etc/openvswitch
>
> 18.mkdir -p /usr/local/var/run/openvswitch
>
> 19.ovsdb-tool create /usr/local/etc/openvswitch/conf.db
> /usr/local/share/openvswitch/vswitch.ovsschema
>
> 20.ovsdb-server --remote=punix:/usr/local/var/run/openvswitch/db.sock
> --remote=db:Open_vSwitch,Open_vSwitch,manager_options --pidfile –detach
>
> 21.ovs-vsctl --no-wait init
>
> 22.ovs-vswitchd --dpdk -c 0x1 -n 4 -- unix:$DB_SOCK --pidfile –detach
>
> 23.ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev
>
> 24.I am not sure on how to add the eth1 interface/dpdk port to the
> beidge br0 now. After configuring the igb_uio module, I will not see the
> eth1 interface in the ‘ifconfig -a’.

That's expected, the kernel no longer sees that device
>
> 25.But I can see the eth1 is configured as dpdk port from the below command

As the howto suggests, you should do something like:

ovs-vsctl add-port br0 dpdk0 -- set Interface dpdk0 type=dpdk

So the portnames are "dpdkX", but I'm not sure about the association 
between X and the below list. I've always assumed they are numbered in 
the order you bound the device to the uio driver.

>
> root at ubuntu1404:~# $DPDK_DIR/tools/dpdk_nic_bind.py --status
>
> *Network devices using DPDK-compatible driver*
>
> *============================================*
>
> *0000:0b:00.0 'VMXNET3 Ethernet Controller' drv=igb_uio unused=*
>
> Network devices using kernel driver
>
> ===================================
>
> 0000:02:00.0 '82545EM Gigabit Ethernet Controller (Copper)' if=eth2
> drv=e1000 unused=igb_uio *Active*
>
> 0000:03:00.0 'VMXNET3 Ethernet Controller' if=eth0 drv=vmxnet3
> unused=igb_uio
>
> Other network devices
>
> =====================
>
> <none>
>
> 26.After adding the bridge, I see the below error in the log file.
>
> 2015-11-16T08:07:23.640Z|00002|vlog|INFO|opened log file
> /usr/local/var/log/openvswitch/ovs-vswitchd.log
>
> 2015-11-16T08:07:23.641Z|00003|ovs_numa|INFO|Discovered 4 CPU cores on
> NUMA node 0
>
> 2015-11-16T08:07:23.641Z|00004|ovs_numa|INFO|Discovered 1 NUMA nodes and
> 4 CPU cores
>
> 2015-11-16T08:07:23.641Z|00005|reconnect|INFO|unix:/usr/local/var/run/openvswitch/db.sock:
> connecting...
>
> 2015-11-16T08:07:23.641Z|00006|reconnect|INFO|unix:/usr/local/var/run/openvswitch/db.sock:
> connected
>
> 2015-11-16T08:07:23.643Z|00007|bridge|INFO|ovs-vswitchd (Open vSwitch) 2.4.0
>
> 2015-11-17T07:08:20.420Z|00008|memory|INFO|2132 kB peak resident set
> size after 82857.7 seconds
>
> 2015-11-17T07:08:20.422Z|00009|ofproto_dpif|INFO|netdev at ovs-netdev:
> Datapath supports recirculation
>
> 2015-11-17T07:08:20.422Z|00010|ofproto_dpif|INFO|netdev at ovs-netdev: MPLS
> label stack length probed as 3
>
> 2015-11-17T07:08:20.422Z|00011|ofproto_dpif|INFO|netdev at ovs-netdev:
> Datapath supports unique flow ids
>
> 2015-11-17T07:08:20.422Z|00012|bridge|INFO|bridge br0: added interface
> br0 on port 65534
>
> *2015-11-17T07:08:20.427Z|00013|dpif_netlink|ERR|Generic Netlink family
> 'ovs_datapath' does not exist. The Open vSwitch kernel module is
> probably not loaded.*

There is nothing wrong with that, you don't need the OVS kernel module 
here anyway.

>
> 2015-11-17T07:08:20.428Z|00014|bridge|INFO|bridge br0: using datapath ID
> 0000caceadde9d49
>
> 2015-11-17T07:08:20.428Z|00015|connmgr|INFO|br0: added service
> controller "punix:/usr/local/var/run/openvswitch/br0.mgmt"
>
> 27.I am running the following kernel version on my Ubuntu virtual machine
>
> root at ubuntu1404:~# uname -r
>
> *3.13.0-66-generic*
>
> root at ubuntu1404:~#
>
> Kindly help me to identify the dpdk port & add the eth interface/dpdk
> port to the Bridge?
>
> Thanks,
>
> Sarada
>
>
>
> _______________________________________________
> discuss mailing list
> discuss at openvswitch.org
> http://openvswitch.org/mailman/listinfo/discuss
>



More information about the discuss mailing list