[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [PATCH v21] virtio-net: support inner header hash
On Mon, Jul 03 2023, "Michael S. Tsirkin" <mst@redhat.com> wrote: > On Mon, Jul 03, 2023 at 11:27:11PM +0800, Heng Qi wrote: >> 1. Currently, a received encapsulated packet has an outer and an inner header, but >> the virtio device is unable to calculate the hash for the inner header. The same >> flow can traverse through different tunnels, resulting in the encapsulated >> packets being spread across multiple receive queues (refer to the figure below). >> However, in certain scenarios, we may need to direct these encapsulated packets of >> the same flow to a single receive queue. This facilitates the processing >> of the flow by the same CPU to improve performance (warm caches, less locking, etc.). >> >> client1 client2 >> | +-------+ | >> +------->|tunnels|<--------+ >> +-------+ >> | | >> v v >> +-----------------+ >> | monitoring host | >> +-----------------+ >> >> To achieve this, the device can calculate a symmetric hash based on the inner headers >> of the same flow. >> >> 2. For legacy systems, they may lack entropy fields which modern protocols have in >> the outer header, resulting in multiple flows with the same outer header but >> different inner headers being directed to the same receive queue. This results in >> poor receive performance. >> >> To address this limitation, inner header hash can be used to enable the device to advertise >> the capability to calculate the hash for the inner packet, regaining better receive performance. >> >> Fixes: https://github.com/oasis-tcs/virtio-spec/issues/173 >> Signed-off-by: Heng Qi <hengqi@linux.alibaba.com> >> Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com> >> Reviewed-by: Parav Pandit <parav@nvidia.com> > > Cornelia last minute comments before I start a vote? Please just go ahead.
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]