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 [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
