Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
The FDP team is no longer accepting new bugs in Bugzilla. Please report your issues under FDP project in Jira. Thanks.

Bug 1807782

Summary: [OVN] OVN is not flooding multicast IP traffic when sent to a group in the 224.0.0.X range
Product: Red Hat Enterprise Linux Fast Datapath Reporter: Dumitru Ceara <dceara>
Component: ovn2.13Assignee: Dumitru Ceara <dceara>
Status: CLOSED ERRATA QA Contact: ying xu <yinxu>
Severity: medium Docs Contact:
Priority: medium    
Version: RHEL 8.0CC: ctrautma, dceara, jishi, lmartins, ralongi
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ovn2.13-2.13.0-7.el7fdp ovn2.13-2.13.0-7.el8fdp Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1803008 Environment:
Last Closed: 2020-11-10 15:23:34 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1803008, 1814127    
Bug Blocks:    

Description Dumitru Ceara 2020-02-27 09:08:21 UTC
+++ This bug was initially created as a clone of Bug #1803008 +++

Description of problem:

When multicast IP traffic is sent to a multicast group address which is in the 224.0.0.X range, the multicast traffic should be always be flooded, even when IGMP snooping is enabled (mcast_snoop=true in the other_config column from a LS).

See the RFC session 2.1.2:

"
   2) Packets with a destination IP (DIP) address in the 224.0.0.X range
      which are not IGMP must be forwarded on all ports.
"

Currently, OVN is not honoring this and the multicast traffic is only being sent to the clients subscribed to the multicast group.

[0] https://tools.ietf.org/html/rfc4541 (See section 2.1.2)


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

How reproducible:
100%

Steps to Reproduce:
1. Enable igmp snooping in the OVN logical switch (other_config={mcast_snoop=true})
2. Start two VMs, one that is listening to the 224.0.0.X group and the other one that is not.
3. Send multicast IP traffic on that 224.0.0.X group. U will notice that VM not subscribed is not seeing the traffic (sudo tcpdump -i any -s0 -vv host 224.0.0.X -vvneA -s0)

Actual results:
Multicast traffic not flooded when sending traffic to a multicast group in the 224.0.0.X range.

Expected results:
Multicast traffic flooded when sending traffic to a multicast group in the 224.0.0.X range.

Additional info:

--- Additional comment from Dumitru Ceara on 2020-02-14 10:43:45 UTC ---

Patch posted upstream: https://patchwork.ozlabs.org/patch/1237967/

Comment 2 ying xu 2020-04-16 05:53:31 UTC
install the case:
yum install kernel-kernel-networking-openvswitch-ovn-multicast.noarch

reproduced on the version:
# rpm -qa|grep ovn
ovn2.13-central-2.13.0-0.el7fdn.x86_64
ovn2.13-2.13.0-0.el7fdn.x86_64
ovn2.13-host-2.13.0-0.el7fdn.x86_64

:: [ 01:23:49 ] :: [   PASS   ] :: Command 'ovn-nbctl set logical_switch ls other_config:mcast_flood_unregistered=false' (Expected 0, got 0)
:: [ 01:23:49 ] :: [   PASS   ] :: Command 'ovn-sbctl list ip_multicast' (Expected 0, got 0)
:: [ 01:23:49 ] :: [   PASS   ] :: Command 'ip netns exec vm1 tcpdump -U -i any -w broadcast.pcap&' (Expected 0, got 0)
:: [ 01:24:07 ] :: [   PASS   ] :: Command 'ovn-sbctl list multicast_group' (Expected 0, got 0)
:: [ 01:24:07 ] :: [   PASS   ] :: Command 'tcpdump -r broadcast.pcap -vv -n|grep "42.42.42.2 > 224.0.0.5: ICMP echo request"' (Expected 0, got 0)
:: [ 01:24:09 ] :: [   PASS   ] :: Command 'ip netns exec vm1 tcpdump -U -i any -w broadcast.pcap&' (Expected 0, got 0)
:: [ 01:24:32 ] :: [   PASS   ] :: Command 'ovn-sbctl list multicast_group' (Expected 0, got 0)
:: [ 01:24:32 ] :: [   FAIL   ] :: Command 'tcpdump -r broadcast.pcap -vv -n|grep "42.42.42.2 > 224.0.0.5: ICMP echo request"' (Expected 0, got 1)

verified on version:
# rpm -qa|grep ovn
ovn2.13-host-2.13.0-11.el7fdp.x86_64
ovn2.13-central-2.13.0-11.el7fdp.x86_64
ovn2.13-2.13.0-11.el7fdp.x86_64
and 
# rpm -qa|grep ovn
ovn2.13-central-2.13.0-11.el8fdp.x86_64
ovn2.13-host-2.13.0-11.el8fdp.x86_64
ovn2.13-2.13.0-11.el8fdp.x86_64


:: [ 01:41:56 ] :: [   PASS   ] :: Command 'ovn-nbctl set logical_switch ls other_config:mcast_flood_unregistered=false' (Expected 0, got 0)
:: [ 01:41:56 ] :: [   PASS   ] :: Command 'ovn-sbctl list ip_multicast' (Expected 0, got 0)
:: [ 01:41:56 ] :: [   PASS   ] :: Command 'ip netns exec vm1 tcpdump -U -i any -w broadcast.pcap&' (Expected 0, got 0)
:: [ 01:42:14 ] :: [   PASS   ] :: Command 'ovn-sbctl list multicast_group' (Expected 0, got 0)
:: [ 01:42:15 ] :: [   PASS   ] :: Command 'tcpdump -r broadcast.pcap -vv -n|grep "42.42.42.2 > 224.0.0.5: ICMP echo request"' (Expected 0, got 0)
:: [ 01:42:17 ] :: [   PASS   ] :: Command 'ip netns exec vm1 tcpdump -U -i any -w broadcast.pcap&' (Expected 0, got 0)
:: [ 01:42:40 ] :: [   PASS   ] :: Command 'ovn-sbctl list multicast_group' (Expected 0, got 0)
:: [ 01:42:40 ] :: [   PASS   ] :: Command 'tcpdump -r broadcast.pcap -vv -n|grep "42.42.42.2 > 224.0.0.5: ICMP echo request"' (Expected 0, got 0)

Comment 3 Dan Williams 2020-11-10 15:23:34 UTC
All these bugs have been verified and have shipped in FDP 20.G or earlier.