OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

virtio-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [PATCH v10] virtio-net: support inner header hash




å 2023/3/15 äå11:09, Michael S. Tsirkin åé:
On Wed, Mar 15, 2023 at 09:19:43PM +0800, Heng Qi wrote:
Any encapsulation technology that includes UDP/L4 header likely do not
prefer based on the inner header. This is because the outer header src
port entropy is added based on the inner header.

I was not able to follow the discussion in v9 that you had with Michael.
Did you conclude if this is needed for vxlan too?

If not, for now it may be better to skip vxlan and nvegre as they
inherently have unique outer header UDP src port based on the inner
header.
Symmetric hashing ignores the order of the five-tuples when calculating the
hash, that is, using (a1,a2,p1,p2) and (a2,a1,p2,p1) respectively can
calculate the same hash.
There is a scenario that the two directions client1->client2 and
client2->client1 of the same flow may pass through different tunnels.
In order to allow the data in two directions to be processed by the same
CPU, we need to calculate a symmetric hash based on the inner packet header.
Sorry I didn't mention this earlier just to avoid introducing the concept of
symmetric hashing.
But the hash is already there in the port. Is it then maybe just
the question of ignoring the IP addresses when hashing?

We do not ignore the IP address, because after the tunnel sends the packets to the processing host, the processing host will parse the outer headers, and then use the inner symmetric hash to hand over the packets of the same flow to the same cpu for processing (for the network topology, please check my latest reply thread).

Thanks.




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]