Bug 2094710
| Summary: | [OVN]when there are too many groups join, snooping works fail. | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux Fast Datapath | Reporter: | ying xu <yinxu> |
| Component: | ovn22.03 | Assignee: | xsimonar |
| Status: | CLOSED ERRATA | QA Contact: | ying xu <yinxu> |
| Severity: | high | Docs Contact: | |
| Priority: | high | ||
| Version: | FDP 22.E | CC: | ctrautma, jiji, xsimonar |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | ovn22.03-22.03.0-104.el8fdp | Doc Type: | If docs needed, set a value |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2022-11-03 00:30:13 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: | |||
upstream patch: http://patchwork.ozlabs.org/project/ovn/patch/20220829113034.2850198-1-xsimonar@redhat.com/ ovn22.03 fast-datapath-rhel-9 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2131895 ovn22.06 fast-datapath-rhel-8 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2131899 ovn22.06 fast-datapath-rhel-9 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2131900 ovn22.09 fast-datapath-rhel-8 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2131903 ovn22.09 fast-datapath-rhel-9 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2131904 verified on ovn22.03-22.03.0-106.el8fdp.x86_64.rpm verified in job: https://beaker.engineering.redhat.com/recipes/12754389/tasks/151363621/logs/taskout.log Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (ovn22.03), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2022:7393 |
Description of problem: when there are too many groups join, snooping works fail. Version-Release number of selected component (if applicable): # rpm -qa|grep ovn ovn22.03-22.03.0-52.el8fdp.x86_64 ovn22.03-central-22.03.0-52.el8fdp.x86_64 ovn22.03-host-22.03.0-52.el8fdp.x86_64 ovn22.03-22.03.0-52.el9fdp.x86_64 ovn22.03-central-22.03.0-52.el9fdp.x86_64 ovn22.03-host-22.03.0-52.el9fdp.x86_64 How reproducible: always Steps to Reproduce: server: ovn-nbctl ls-add ls ovn-nbctl lsp-add ls vm1 ovn-nbctl lsp-set-addresses vm1 00:00:00:00:00:01 ovn-nbctl lsp-add ls vm2 ovn-nbctl lsp-set-addresses vm2 00:00:00:00:00:02 ovn-nbctl lsp-add ls vm3 ovn-nbctl lsp-set-addresses vm3 00:00:00:00:00:03 ovn-nbctl set logical_switch ls other_config:mcast_querier=false other_config:mcast_snoop=true other_config:mcast_query_interval=30 other_config:mcast_eth_src=00:00:00:00:00:05 other_config:mcast_ip4_src=42.42.42.5 other_config:mcast_ip6_src=fe80::1 other_config:mcast_idle_timeout=3000 rlRun "ovn-sbctl list ip_multicast" sleep 5 ip netns add vm1 ovs-vsctl add-port br-int vm1 -- set interface vm1 type=internal ip link set vm1 netns vm1 ip netns exec vm1 ip link set vm1 address 00:00:00:00:00:01 ip netns exec vm1 ip addr add 42.42.42.1/24 dev vm1 ip netns exec vm1 ip -6 addr add 2000::1/24 dev vm1 ip netns exec vm1 ip link set vm1 up ip netns exec vm1 ip route add default via 42.42.42.5 ip netns exec vm1 ip -6 route add default via 2000::5 ovs-vsctl set Interface vm1 external_ids:iface-id=vm1 client: ip netns add vm2 ovs-vsctl add-port br-int vm2 -- set interface vm2 type=internal ip link set vm2 netns vm2 ip netns exec vm2 ip link set vm2 address 00:00:00:00:00:02 ip netns exec vm2 ip addr add 42.42.42.2/24 dev vm2 ip netns exec vm2 ip -6 addr add 2000::2/64 dev vm2 ip netns exec vm2 ip link set vm2 up ip netns exec vm2 ip link set lo up ovs-vsctl set Interface vm2 external_ids:iface-id=vm2 ip netns add vm3 ovs-vsctl add-port br-int vm3 -- set interface vm3 type=internal ip link set vm3 netns vm3 ip netns exec vm3 ip link set vm3 address 00:00:00:00:00:03 ip netns exec vm3 ip addr add 42.42.42.3/24 dev vm3 ip netns exec vm3 ip -6 addr add 2000::3/64 dev vm3 ip netns exec vm3 ip link set vm3 up ip netns exec vm3 ip link set lo up ip netns exec vm2 ip route add default via 42.42.42.5 ip netns exec vm3 ip route add default via 42.42.42.5 ip netns exec vm2 ip -6 route add default via 2000::5 ip netns exec vm3 ip -6 route add default via 2000::5 ovs-vsctl set Interface vm3 external_ids:iface-id=vm3 now from vm3 join group 228.0.0.1 ip netns exec vm3 join_group -f 4 -g 228.0.0.1 -i vm3 then ping from vm1 # ip netns exec vm1 ping 228.0.0.1 PING 228.0.0.1 (228.0.0.1) 56(84) bytes of data. ^C --- 228.0.0.1 ping statistics --- 4 packets transmitted, 0 received, 100% packet loss, time 3092ms check on vm3 interface: # ip netns exec vm3 tcpdump -i any -nnle dropped privs to tcpdump tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on any, link-type LINUX_SLL (Linux cooked v1), capture size 262144 bytes 04:12:43.605756 M 00:00:00:00:00:01 ethertype IPv4 (0x0800), length 100: 42.42.42.1 > 228.0.0.1: ICMP echo request, id 56632, seq 1, length 64 04:12:44.649305 M 00:00:00:00:00:01 ethertype IPv4 (0x0800), length 100: 42.42.42.1 > 228.0.0.1: ICMP echo request, id 56632, seq 2, length 64 04:12:45.673346 M 00:00:00:00:00:01 ethertype IPv4 (0x0800), length 100: 42.42.42.1 > 228.0.0.1: ICMP echo request, id 56632, seq 3, length 64 04:12:46.697284 M 00:00:00:00:00:01 ethertype IPv4 (0x0800), length 100: 42.42.42.1 > 228.0.0.1: ICMP echo request, id 56632, seq 4, length 64 then send too many groups join: for i in `seq 1 40`;do ip netns exec vm2 join_group -f 4 -g 228.1.$i.1 -i vm2 -n 20 & done for i in `seq 1 40`;do ip netns exec vm3 join_group -f 4 -g 229.1.$i.1 -i vm3 -n 20 & done then,ping from vm1 # ovn-sbctl list multicast_group|grep 228.1.1.1 name : "228.1.1.13" name : "228.1.1.10" name : "228.1.1.19" name : "228.1.1.1" # ip netns exec vm1 ping 228.1.1.1 PING 228.1.1.1 (228.1.1.1) 56(84) bytes of data. ^C --- 228.1.1.1 ping statistics --- 6 packets transmitted, 0 received, 100% packet loss, time 5149ms check on vm2: no packets got # ip netns exec vm2 tcpdump -i any -nnle dropped privs to tcpdump tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on any, link-type LINUX_SLL (Linux cooked v1), capture size 262144 bytes 04:18:18.510942 Out 00:00:00:00:00:02 ethertype IPv6 (0x86dd), length 72: fe80::200:ff:fe00:2 > ff02::2: ICMP6, router solicitation, length 16 ^C 1 packet captured 1 packet received by filter 0 packets dropped by kernel Expected results: multicast packets forward correctly Additional info: