[RFE] Add support for Napatech LinkVirt SmartNICs

Bug #2013540 reported by Danylo Vodopianov
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
In Progress
Wishlist
Danylo Vodopianov

Bug Description

Napatech SmartNICs can offload several computational resource intensive tasks
from the hypervisor, such as packet switching, QoS enforcement, and V(x)LAN
tunnel encapsulation/decapsulation. Upstream and Out of tree OVS
implementations can leverage these offloads when using dpdk via DPDK port
representors (https://docs.openvswitch.org/en/latest/topics/dpdk/phy/#representors).

Nova and Os-vif currently support kernel-based VF representors, but not the
DPDK VF representors which leverage vhost-user socket. This spec seeks to
address this gap.

This is related to: https://review.opendev.org/c/openstack/nova-specs/+/859290

At the PTG meeting on Thursday 30, we've discussed blueprint what was mention above.

This is meeting notes:
(dvo-plv) Blueprint: "Add support for Napatech LinkVirt SmartNICs" review
    https://review.opendev.org/c/openstack/nova-specs/+/859290

1. the base feature is supported in vanilla ovs
2. additional features which require non-vanilla ovs are not targeted here
3. targets ml2/ovs and ml2/ovn
4. why make it different from the already existing hw offloaded ovs?
5. we need to know if a port is a hw offloaded ovs port or a hw offloaded ovs dpdk port
6. would eliminate the need for a special os-vif plugin that's currently used
    n-lib: https://review.opendev.org/c/openstack/neutron-lib/+/483530

7. POC code is for ml2/ovs, for ml2/ovn would be implemented later
    https://review.opendev.org/c/openstack/neutron/+/869510
    https://review.opendev.org/c/openstack/os-vif/+/859574
    https://review.opendev.org/c/openstack/nova/+/859577
    https://review.opendev.org/c/openstack/neutron-lib/+/859573
    https://review.opendev.org/c/openstack/nova-specs/+/859290

8. how can we test this in upstream/community CI?
    (action) a 3rd party CI system is needed and Napatech is open to provide this
    this needs to be maintained too, not just that the code works when merged, but that it keeps
    working in the future
    documentation for 3rd party CI providers:
    https://docs.openstack.org/infra/openstackci/third_party_ci.html
    https://docs.opendev.org/opendev/system-config/latest/third_party.html

9. (action) track this in a neutron RFE bug (likely spec-less) and discuss it in the neutron-drivers meeting
    neutron drivers: please see the POC patches
    Napatech folks: please attend to answer questions (and create a one-two paragraph RFE in
    https://bugs.launchpad.net/neutron/ for tracking purposes)
    https://meetings.opendev.org/#Neutron_drivers_Meeting
    https://bugs.launchpad.net/neutron/

Tags: rfe-approved
Changed in neutron:
assignee: nobody → Danylo Vodopianov (dvoplv)
summary: - Add support for Napatech LinkVirt SmartNICs
+ [RFE] Add support for Napatech LinkVirt SmartNICs
Changed in neutron:
status: New → In Progress
tags: added: rfe
Miguel Lavalle (minsel)
Changed in neutron:
importance: Undecided → Wishlist
Revision history for this message
Rodolfo Alonso (rodolfo-alonso-hernandez) wrote :

This RFE was approved in the Neutron drivers meeting. It was agreed to use the Nova spec as a common reference both for Nova and Neutron. Link: https://review.opendev.org/c/openstack/nova-specs/+/859290

It was also requested (if possible) to implement a 3rd party CI to be able to test this feature with real hardware. The tests to be executed will be discussed in the upper spec.

tags: added: rfe-approved
removed: rfe
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron-lib (master)

Reviewed: https://review.opendev.org/c/openstack/neutron-lib/+/859573
Committed: https://opendev.org/openstack/neutron-lib/commit/ba77e7651ac07f7f447b7c1ea7a6278dde12a2dc
Submitter: "Zuul (22348)"
Branch: master

commit ba77e7651ac07f7f447b7c1ea7a6278dde12a2dc
Author: Oleksii Butenko <email address hidden>
Date: Wed Sep 28 15:01:39 2022 +0300

    DPDK datapath type added

    Nova spec: https://review.opendev.org/c/openstack/nova-specs/+/859290

    Partial-Bug: #2013540
    Change-Id: Id8b96ebdfa55dccb657c4e76b1948e096ce597a8

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.