In an OpenStack Ussuri (both Focal and Bionic) cloud we discovered that multicast traffic would fail between VMs on different hypervisors and when using provider networks. The following table reflects what we found works/didn't work:
|--------------------|--------------------|-------------------|---------------------|-------|
| Source Network | Receiver Network | Source Hypervisor | Receiver Hypervisor | Works |
|--------------------|--------------------|-------------------|---------------------|-------|
| External | External | N/A | N/A | Yes |
| OpenStack Tenant | OpenStack Tenant | A | A | Yes |
| OpenStack Tenant | OpenStack Tenant | A | B | Yes |
| External | OpenStack Provider | N/A | A | Yes |
| OpenStack Provider | OpenStack Provider | A | A | Yes |
| OpenStack Provider | OpenStack Provider | A | B | No |
| OpenStack Provider | External | A | N/A | No |
|--------------------|--------------------|-------------------|---------------------|-------|
Based on this, I went looking at relevant changes upstream and found that this appears to have been fixed upstream, but not backported to OVN 20.03:
In an OpenStack Ussuri (both Focal and Bionic) cloud we discovered that multicast traffic would fail between VMs on different hypervisors and when using provider networks. The following table reflects what we found works/didn't work:
|------ ------- ------- |------ ------- ------- |------ ------- ------| ------- ------- ------- |------ -| ------- ------- |------ ------- ------- |------ ------- ------| ------- ------- ------- |------ -| ------- ------- |------ ------- ------- |------ ------- ------| ------- ------- ------- |------ -|
| Source Network | Receiver Network | Source Hypervisor | Receiver Hypervisor | Works |
|------
| External | External | N/A | N/A | Yes |
| OpenStack Tenant | OpenStack Tenant | A | A | Yes |
| OpenStack Tenant | OpenStack Tenant | A | B | Yes |
| External | OpenStack Provider | N/A | A | Yes |
| OpenStack Provider | OpenStack Provider | A | A | Yes |
| OpenStack Provider | OpenStack Provider | A | B | No |
| OpenStack Provider | External | A | N/A | No |
|------
Based on this, I went looking at relevant changes upstream and found that this appears to have been fixed upstream, but not backported to OVN 20.03:
https:/ /github. com/ovn- org/ovn/ commit/ 97778ab3e422ac0 71faa67f9f477fd 54977e9c04
I backported this patch to the version of OVN in Ussuri here:
https:/ /launchpad. net/~elmo/ +archive/ ubuntu/ sf322809
These patched packages have been tested on a customer site and confirmed to fix the problem.
I've attached the patch from the PPA for convenience.