[Bug 1577256] Re: The OVS+DPDK dpdkvhostuser socket bridge, only works as expected, if the KVM Guest also have DPDK drivers loaded
Launchpad Bug Tracker
1577256 at bugs.launchpad.net
Mon Jul 25 04:17:27 UTC 2016
[Expired for openvswitch (Ubuntu) because there has been no activity for
60 days.]
** Changed in: openvswitch (Ubuntu)
Status: Incomplete => Expired
--
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to openvswitch in Ubuntu.
https://bugs.launchpad.net/bugs/1577256
Title:
The OVS+DPDK dpdkvhostuser socket bridge, only works as expected, if
the KVM Guest also have DPDK drivers loaded
Status in dpdk package in Ubuntu:
Expired
Status in openvswitch package in Ubuntu:
Expired
Bug description:
Hello guys!
I am seeing a problematic situation here, where a KVM Guest have a
huge negative impact on its neighbors and on the host, if using Linux
Kernel drivers and not DPDK drivers, for the VirtIO vNICs wired
against the "dpdkvhostuser" socket port.
Instead of writing down everything that I am doing, which is super
boring, I'll do a screencast! Maybe this is an opportunity for
Canonical to bring "Video Bug Reports" to Launchpad! ^_^
Watch the steps to reproduce this problem in a screencast now!
https://www.youtube.com/v/yHnaSikd9XY?version=3&vq=hd720&autoplay=1
At a glance, I'm booting 3 KVM Guest on top of 6 dpdkvhostuser OVS
Ports.
The host setup is like this:
---
# IXIA simulating LAN side
ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev
ovs-vsctl add-port br0 dpdk0 -- set Interface dpdk0 type=dpdk
# IXIA simulating WAN side
ovs-vsctl add-br br1 -- set bridge br1 datapath_type=netdev
ovs-vsctl add-port br1 dpdk1 -- set Interface dpdk1 type=dpdk
# Bring it up (not sure if needed)
ip link set dev br0 up
ip link set dev br1 up
# Enable multi-queue on host side, 4 queues
ovs-vsctl set Open_vSwitch . other_config:n-dpdk-rxqs=4
# Give mode CPU Cores to ovs-vswitchd PMD threads
ovs-vsctl set Open_vSwitch . other_config:pmd-cpu-mask=FFFF
# Customer A DPDK Ports
ovs-vsctl add-port br0 vhost-user1 -- set Interface vhost-user1 type=dpdkvhostuser
ovs-vsctl add-port br1 vhost-user2 -- set Interface vhost-user2 type=dpdkvhostuser
# Customer A VLAN tags
ovs-vsctl set port vhost-user1 trunks=110,111
ovs-vsctl set port vhost-user2 trunks=110,111
# Customer B DPDK Ports
ovs-vsctl add-port br0 vhost-user3 -- set Interface vhost-user3 type=dpdkvhostuser
ovs-vsctl add-port br1 vhost-user4 -- set Interface vhost-user4 type=dpdkvhostuser
# Customer B VLAN tags
ovs-vsctl set port vhost-user3 trunks=112,113
ovs-vsctl set port vhost-user4 trunks=112,113
# Ubuntu KVM Guest with OVS+DPDK, all vlans, test control:
ovs-vsctl add-port br0 vhost-user5 -- set Interface vhost-user5 type=dpdkvhostuser
ovs-vsctl add-port br1 vhost-user6 -- set Interface vhost-user6 type=dpdkvhostuser
---
You start VM 1, wired against vhost-user 1 and 2, speed drop until
DPDK drivers loads up inside of the guest.
You start VM 2, wired against vhost-user 3 and 4, speed drop until
DPDK drivers loads up inside of the guest.
You start VM 3, wired against vhost-user 5 and 6, speed drop until
DPDK drivers loads up inside of the guest.
This is a bad situation where a VM can badly affects its neighbors
intentionally.
Let me know if you guys needs more information about how to reproduce
this, I can also, give access to my test environment via Teamviewer,
for Canonical employees.
Thanks!
Thiago
ProblemType: Bug
DistroRelease: Ubuntu 16.04
Package: openvswitch-switch-dpdk 2.5.0-0ubuntu1
ProcVersionSignature: Ubuntu 4.4.0-22.38-generic 4.4.8
Uname: Linux 4.4.0-22-generic x86_64
ApportVersion: 2.20.1-0ubuntu2
Architecture: amd64
Date: Sun May 1 19:23:22 2016
SourcePackage: openvswitch
UpgradeStatus: Upgraded to xenial on 2016-04-07 (24 days ago)
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/dpdk/+bug/1577256/+subscriptions
More information about the Ubuntu-openstack-bugs
mailing list