Bug 1843270 - [RFE] [vm-fex] TrustGuestRxFilters option for network interfaces
Summary: [RFE] [vm-fex] TrustGuestRxFilters option for network interfaces
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: ovirt-engine
Version: 4.3.9
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
: ---
Assignee: Nobody
QA Contact: Michael Burman
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-06-02 23:11 UTC by Germano Veit Michel
Modified: 2023-10-06 20:22 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-03-11 12:32:13 UTC
oVirt Team: Network
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 1899875 1 high CLOSED drop support for VM-FEX 2021-11-04 19:28:55 UTC

Description Germano Veit Michel 2020-06-02 23:11:50 UTC
Currently some scenarios using Multicast does not work properly.

In a customer ticket, OSPF (the routing protocol) inside a VM is broken because the VM does not receive Multicast frames "224.0.0.5/01:00:5E:00:00:05" as they are dropped by the macvtap device (VM-FEX) on the host.

We found 2 ways to make the macvtap pass the frames to the VM:
* enable allmulticast on the macvtap
* enable TrustGuestRxFilters on the interface XML.

The first option makes all eth mac multicast addresses reach the VM, so it is not ideal. The second option, AFAICS, makes the multicast filters configured by the VM OS on the virtio-net interface propagate to the macvtap interface, so specific addresses/ranges are not dropped by it.

https://libvirt.org/formatdomain.html#elementsNICS
~~~
the interface element property trustGuestRxFilters provides the capability for the host to detect and trust reports from the guest regarding changes to the interface mac address and receive filters by setting the attribute to yes. The default setting for the attribute is no for security reasons and support depends on the guest network device model as well as the type of connection on the host - currently it is only supported for the virtio device model and for macvtap connections on the host.
~~~

I wrote a quick VDSM hook for testing, and the customer confirmed that with trustGuestRxFilters='yes' VM now receives the multicast frames, so OSPF works.
~~~
doc = hooking.read_domxml()
for interface in doc.getElementsByTagName('interface'):
    interface.setAttribute('trustGuestRxFilters', 'yes')
hooking.write_domxml(doc)
~~~

While a supported VDSM hook may be enough, I think this ideally would be set by the engine and configurable on the vNIC profile (perhaps add it when network filters are disabled?)

Comment 2 Michal Skrivanek 2020-06-23 12:33:46 UTC
This request is not currently committed to 4.4.z, moving it to 4.5

Comment 3 Martin Perina 2021-03-11 08:48:37 UTC
VMFEX feature should be replaced by SRIOV in future, so we are not going to invest any additional feature into RHV VMFEX support


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