Bug 1431506 - Support for OvS 2.6 features for DPDK - Multi-queue and Jumbo Frames
Summary: Support for OvS 2.6 features for DPDK - Multi-queue and Jumbo Frames
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: os-net-config
Version: 12.0 (Pike)
Hardware: Unspecified
OS: Unspecified
Target Milestone: Upstream M2
: 12.0 (Pike)
Assignee: RHOS Maint
QA Contact: Yariv
URL: https://blueprints.launchpad.net/trip...
Whiteboard: upstream_milestone_pike-2 upstream_de...
Depends On:
Blocks: 1431513 1442136 1469684
TreeView+ depends on / blocked
Reported: 2017-03-13 02:40 UTC by atelang
Modified: 2018-02-05 19:04 UTC (History)
13 users (show)

Fixed In Version: os-net-config-7.0.1-0.20170627055309.03d3a5d.el7ost
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2017-12-13 21:13:42 UTC
Target Upstream Version:

Attachments (Terms of Use)

System ID Private Priority Status Summary Last Updated
OpenStack gerrit 460859 0 None MERGED Configure mtu value for DPDK port 2020-03-05 13:29:10 UTC
OpenStack gerrit 466693 0 None MERGED Configure multi-queue value for DPDK Port 2020-03-05 13:29:11 UTC
OpenStack gerrit 469056 0 None MERGED MTU setting for OVSDpdkBond 2020-03-05 13:29:08 UTC
OpenStack gerrit 469164 0 None MERGED Multiqueue support for OvsDpdkBond 2020-03-05 13:29:10 UTC
Red Hat Product Errata RHEA-2017:3462 0 normal SHIPPED_LIVE Red Hat OpenStack Platform 12.0 Enhancement Advisory 2018-02-16 01:43:25 UTC

Description atelang 2017-03-13 02:40:25 UTC
Description of problem: 
TripleO support for Jumbo frames and Multiqueue

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:

Actual results:

Expected results:

Additional info: 
Blueprint: https://blueprints.launchpad.net/tripleo/+spec/ovs-2-6-dpdk

Blueprint Details below. 
Jumbo Frames:
The feature “Jumbo Frames”[2] can be enabled by configuring the MTU value for the OVS-DPDK interface and OVS-DPDK bond. Already os-net-config supports an option for providing MTU values[1], but for DPDK it has to be set to the OvS DB with below command:
 ovs-vsctl -- set Interface <DPDK device> mtu_request=<frame size>

DPDK port types in os-net-config shall append this to ovs_extra and update to the ifcfg files if MTU value is set on the DPDK interface and bond.

[1] http://docs.openstack.org/developer/tripleo-docs/advanced_deployment/network_isolation.html#configuring-jumbo-frames
[2] https://software.intel.com/en-us/articles/jumbo-frames-in-open-vswitch-with-dpdk

Multi-queue support:
OVS2.6 has support to specify the number of multi-queues per physical interface. The command, “ovs-vsctl set Interface <DPDK interface> options:n_rxq=<integer>”, will set the number of multi-queues in OvS DB, that can be used for this interface. The rx queues are assigned to pmd threads on the same NUMA node in a round-robin fashion.

A new parameter “rx_queues” shall be added to all DPDK interface types to configure the number of queues.

- type: ovs_user_bridge
  name: br-link
      type: ovs_dpdk_port
      name: dpdk0
      rx_queues: 4
          type: interface
          name: nic2

Note that this value can be provided via ovs_extra of the interface, but having it as separate value provides better usability.

Comment 6 Ziv Greenberg 2017-10-25 12:33:46 UTC
Has been verified.


Comment 10 errata-xmlrpc 2017-12-13 21:13:42 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


Note You need to log in before you can comment on or make changes to this bug.