[OVS] multicast between VM instances on different compute nodes is broken with IGMP snooping enabled
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Fix Committed
|
Medium
|
Slawek Kaplonski | ||
neutron (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
It was originally reported by Matt Flusche in Red Hat's bugzilla. Below is description of the issue:
I was verifying these OVS configuration options and the impact on tenant networking. My thought going into testing was vxlan would not be impacted but vlan tenant would break; however, for vxlan tenant networks it looks like these options will break multicast also.
In a lab test (osp13), multicast is broken between VM instances on different compute nodes after applying:
> # ovs-vsctl set Bridge br-int mcast_snooping_
> # ovs-vsctl set Bridge br-int other_config:
The following can be used to temporarily allow multicast over vxlan:
ovs-vsctl set Port patch-tun other_config:
This will flood reports to br-tun and the other vxlan endpoints will learn the remote port. This allows multicast snooping to work for a period of time; however, since there is no IGMP querier to continue to solicit IGMP reports once the Age timer expires (300 secs) the traffic will be blocked.
It seems that this solution as suggested will work if only provider networking is used. Is that correct?
An options that might work would be:
ovs-vsctl set Bridge br-int mcast_snooping_
ovs-vsctl set Bridge br-int other_config:
Then, for each patch on br-int:
ovs-vsctl set Port <patch> other_config:
ovs-vsctl set Port <patch> other_config:
This might provide best effort snooping. multicast isolation where IGMP queriers are available and flood everywhere else?
Changed in neutron: | |
assignee: | nobody → Slawek Kaplonski (slaweq) |
Changed in neutron: | |
status: | In Progress → Fix Committed |
Patch proposed https:/ /review. opendev. org/c/openstack /neutron/ +/766360