On Wed, Jun 05, 2019 at 08:34:50PM +0000, Van Bemmel, Jeroen (Nokia - US) wrote:
> Hi Greg, Ben,
> 
> I doubt we would see a measurable difference in performance, with the
> additional conditional jump based on the packet flags. That does bring
> up an interesting question: Shouldn't fragmented packets all hash to
> the same single flow, and shouldn't the resulting multipath hash value
> get cached ( for at least 5 secs or so )? Based on our observations it
> looks like the hash is calculated for each individual fragment, which
> would be sub-optimal.

Hmm.  That *is* suboptimal.  If you figure out anything about why it is
not doing better, then please do follow up on it.

> We would still need to exclude ports for the first fragment, in case
> some subsequent fragments arrive after the flow entry disappeared -
> but in theory, the hash could be done once, for the first packet in
> each flow ( if there is space in the flow cache entry )

Yes.

> In our case, it's not only that packets could get reordered due to
> taking different paths - the ECMP destinations are end systems ( like
> an anycast IP ) and reassembly fails because the first packet is sent
> to one host, and the rest of the fragments to another host.
> 
> Ben - you are correct that it also applies to TCP and SCTP in theory,
> just that you won't typically see fragments for those protocols. I'll
> prepare a formal patch to fix it for all protocols

Great.  Thank you.
_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to