[ovs-discuss] Megaflow effectiveness problem

Justin Pettit jpettit at ovn.org
Fri Sep 28 23:29:32 UTC 2018


> On Sep 28, 2018, at 9:35 AM, Han Zhou <zhouhan at gmail.com> wrote:
> 
> On Wed, Sep 26, 2018 at 11:07 PM Justin Pettit <jpettit at ovn.org> wrote:
> >
> > Hi, Han.  I'm still trying to come up with a mechanism I like, but in the meantime, can you try applying this patch and re-running your trace?  This should provide a better indication of what's causing that field to be un-wildcarded.
> >
> > Thanks,
> >
> > --Justin
> >
> >
> Thanks Justin for helping. I haven't used the patch yet since it causes ovs-vswitchd crash in test case "ovn -- 3 HVs, 3 LS, 3 lports/LS, 1 LR".

That's embarrassing.  Can you try the attached patch?

> However, I believe I found the cause of the problem - it is enabling BFD (for GW HA) that causes the un-wildcarding of the UDP flows. BFD uses UDP (port 3784).
> 
> E.g. recirc_id(0),tunnel(tun_id=0x0,src=10.169.108.123,dst=10.169.98.204,flags(-df+csum+key)),in_port(1),eth(),eth_type(0x0800),ipv4(proto=17,frag=no),udp(dst=3784), packets:476, bytes:31416, used:0.068s, actions:userspace(pid=3497583927,slow_path(bfd))
> 
> There is no user space flows for udp because BFD is handled implicitly without specific open flow rules, but it impacts the megaflow wildcarding. I verified this in my local test env by enabling BFD and then doing hping3 -2 ... to generate UDP packets destined to same IP but different udp ports, and seeing the un-wildcarded flows in datapath, exactly like the example I provided before. The problem disappears if BFD is not enabled (i.e. when there is only one GW without HA).
> 
> Justin, do you have any thoughts on how to solve this problem? (I am not familiar with this part of OVS, need more study)

Ben and I chatted about it, and we're surprised that the entire port is un-wildcarded, as opposed to a couple bits.  If you can try using the attached patch, it might help us track down the issue.

> For the patch that traces the un-wildcarding, I think it is still going to be very useful for trouble-shooting such problems in the future. Please let me know when you fix it and I can test with current use case.

Thanks!  I'll keep working on a cleaner version.

--Justin


-------------- next part --------------
A non-text attachment was scrubbed...
Name: new_wildcards_v2.diff
Type: application/octet-stream
Size: 4854 bytes
Desc: not available
URL: <http://mail.openvswitch.org/pipermail/ovs-discuss/attachments/20180928/172260d6/attachment.obj>
-------------- next part --------------





More information about the discuss mailing list