On Mon, Jul 03 2023, "Michael S. Tsirkin" <m...@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 <hen...@linux.alibaba.com>
>> Reviewed-by: Xuan Zhuo <xuanz...@linux.alibaba.com>
>> Reviewed-by: Parav Pandit <pa...@nvidia.com>
>
> Cornelia last minute comments before I start a vote?

Please just go ahead.


---------------------------------------------------------------------
To unsubscribe, e-mail: virtio-dev-unsubscr...@lists.oasis-open.org
For additional commands, e-mail: virtio-dev-h...@lists.oasis-open.org

Reply via email to