Bug 2160479
| Summary: | bridge port is added to the flow along with multicast join requested ports | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux Fast Datapath | Reporter: | Haresh Khandelwal <hakhande> |
| Component: | ovn22.03 | Assignee: | OVN Team <ovnteam> |
| Status: | NEW --- | QA Contact: | Jianlin Shi <jishi> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | medium | ||
| Version: | RHEL 8.0 | CC: | bcafarel, ctrautma, dceara, echaudro, jiji, mmichels, qding, ralonsoh |
| 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: | Environment: | ||
| Last Closed: | 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: | 2144562 | ||
Is br-data also added when offload is disabled? AFAICT this is breaking the offload, but the issue itself lies in a layer above in vswitchd. I do not think OVS is the one adding all the ports to the multicast group. I think it's OVN, however, you can check the OpenFlow rules to see what they look like and if they have br-data. If they do, you need to talk to the OVN fooks ;) I'm assuming br-data is the provider bridge (backing the OVN localnet port). If so, it's expected that the localnet port is always included in the list of ports multicast traffic should be flooded to: https://github.com/ovn-org/ovn/commit/97778ab3e422ac071faa67f9f477fd54977e9c04 |
Description of problem: Look at below flow. ufid:9d82fa32-c613-43f6-a2a3-f4ebdb6ccbc7, skb_priority(0/0),skb_mark(0/0),ct_state(0/0),ct_zone(0/0),ct_mark(0/0),ct_label(0/0),recirc_id(0),dp_hash(0/0),in_port(mx-bond),packet_type(ns=0/0,id=0/0),eth(src=e4:43:4b:4a:0c:22,dst=01:00:5e:01:01:01),eth_type(0x8100),vlan(vid=415,pcp=0),encap(eth_type(0x0800),ipv4(src=0.0.0.0/0.0.0.0,dst=0.0.0.0/0.0.0.0,proto=0/0,tos=0/0,ttl=0/0,frag=no)), packets:4, bytes:336, used:0.810s, dp:tc, actions:br-data,pop_vlan,enp4s0f0np0_2,enp4s0f0np0_1 Here enp4s0f0np0_2,enp4s0f0np0_1 have subscribed to multicast group 224.1.1.1 and thus received the traffic. However, br-data port not supposed to be in the flow. This prevents flow to be offloaded as well. Doing same with geneve and i dont see any bridge ports added. ufid:91f521a6-d87c-44df-a64b-99245a4d81c1, skb_priority(0/0),skb_mark(0/0),ct_state(0/0),ct_zone(0/0),ct_mark(0/0),ct_label(0/0),recirc_id(0),dp_hash(0/0),in_port(enp4s0f1np1_1),packet_type(ns=0/0,id=0/0),eth(src=f8:f2:1e:03:bf:f9,dst=01:00:5e:01:01:01),eth_type(0x0800),ipv4(src=0.0.0.0/0.0.0.0,dst=224.1.1.1,proto=1,tos=0/0x3,ttl=0/0,frag=no),icmp(type=0/0,code=0/0), packets:16, bytes:1568, used:0.130s, offloaded:yes, dp:tc, actions:set(tunnel(tun_id=0x2,dst=10.10.51.77,ttl=64,tp_dst=6081,geneve({class=0x102,type=0x80,len=4,0x38007}),flags(csum|key))),genev_sys_6081,enp4s0f1np1_2 1 subscriber is external to the node and another from the same node. Flow is offloaded. Version-Release number of selected component (if applicable): ovs 2.17 ovn22.03-22.03.0 How reproducible: Always Steps to Reproduce: 1. Send igmp join from vm to join a multicast group 2. Check the flow 3. Actual results: Flow is not offloaded. Expected results: br-data doesnt send any join, so shall not be part of this flow. Additional info: