Bug 1803008
| 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: | Lucas Alvares Gomes <lmartins> | |
| Component: | ovn2.12 | Assignee: | Dumitru Ceara <dceara> | |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | ying xu <yinxu> | |
| Severity: | unspecified | Docs Contact: | ||
| Priority: | unspecified | |||
| Version: | RHEL 8.0 | CC: | ctrautma, dceara, jishi, mmichels, ralongi | |
| Target Milestone: | --- | |||
| Target Release: | --- | |||
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| Fixed In Version: | Doc Type: | If docs needed, set a value | ||
| Doc Text: | Story Points: | --- | ||
| Clone Of: | ||||
| : | 1807782 1814127 (view as bug list) | Environment: | ||
| Last Closed: | 2020-11-10 15:14:11 UTC | Type: | Bug | |
| 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: | ||||
| Bug Blocks: | 1807782, 1814127 | |||
Patch posted upstream: https://patchwork.ozlabs.org/patch/1237967/ HI, Dumitru Ceara , I can't reproduce it ,can you tell me what version can I use to reproduce it? (In reply to ying xu from comment #6) > HI, Dumitru Ceara , > I can't reproduce it ,can you tell me what version can I use to reproduce it? Hi Ying Xu, The bug is present in OVN 2.12 FDP 20.B, e.g., ovn2.12-2.12.0-27.el8fdp.x86_64. The most important thing is to make sure that one of the hosts at step #2 in the description sends an IGMP join for group 224.0.0.X. The traffic will then be forwarded only to that host instead of all hosts connected to the logical switch. Regards, Dumitru reproduced on version :
# rpm -qa|grep ovn
ovn2.12-host-2.12.0-19.el8fdp.x86_64
ovn2.12-central-2.12.0-19.el8fdp.x86_64
ovn2.12-2.12.0-19.el8fdp.x86_64
# ovn-nbctl show
switch 3ebcbf79-86ea-4f95-9a0a-a1116c416529 (ls)
port vm2
addresses: ["00:00:00:00:00:02"]
port vm3
addresses: ["00:00:00:00:00:03"]
port vm1
addresses: ["00:00:00:00:00:01"]
server:
ip netns exec vm1 tcpdump -U -i any -nn -v &
client:
ip netns exec vm3 join_group -f 4 -g 224.0.0.5 -i vm3 &
ip netns exec vm2 ping 224.0.0.5 -c 3
and vm1 can't capture the packets.
verified on version:
# rpm -qa|grep ovn
ovn2.12-host-2.12.0-36.el8fdp.x86_64
ovn2.12-central-2.12.0-36.el8fdp.x86_64
ovn2.12-2.12.0-36.el8fdp.x86_64
vm1:
tcpdump -r broadcast.pcap -vv -n|grep "42.42.42.2 > 224.0.0.5: ICMP echo request"'
reading from file broadcast.pcap, link-type LINUX_SLL (Linux cooked)
42.42.42.2 > 224.0.0.5: ICMP echo request, id 32329, seq 1, length 64
42.42.42.2 > 224.0.0.5: ICMP echo request, id 32329, seq 2, length 64
42.42.42.2 > 224.0.0.5: ICMP echo request, id 32329, seq 3, length 64
vm3:
tcpdump -r vm3.pcap -nn -v |grep "ICMP echo request"
reading from file vm3.pcap, link-type EN10MB (Ethernet)
42.42.42.2 > 224.0.0.5: ICMP echo request, id 32329, seq 1, length 64
42.42.42.2 > 224.0.0.5: ICMP echo request, id 32329, seq 2, length 64
42.42.42.2 > 224.0.0.5: ICMP echo request, id 32329, seq 3, length 64
ovn2.12 has been superceded by ovn2.13. |
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: