[ovs-dev] [PATCH] RFC: Pass more packet and flow key info to userspace.

Jarno Rajahalme jarno.rajahalme at nsn.com
Thu Jan 24 15:34:56 UTC 2013


On Jan 23, 2013, at 19:30 , ext Jesse Gross wrote:

> On Tue, Jan 22, 2013 at 9:48 PM, Jarno Rajahalme
> <jarno.rajahalme at nsn.com> wrote:
>> Add OVS_PACKET_ATTR_KEY_INFO to relieve userspace from re-computing
>> data already computed within the kernel datapath.  In the typical
>> case of an upcall with perfect key fitness between kernel and
>> userspace this eliminates flow_extract() and flow_hash() calls in
>> handle_miss_upcalls().
>> 
>> Additional bookkeeping within the kernel datapath is minimal.
>> Kernel flow insertion also saves one flow key hash computation.
>> 
>> Removed setting the packet's l7 pointer for ICMP packets, as this was
>> never used.
>> 
>> Signed-off-by: Jarno Rajahalme <jarno.rajahalme at nsn.com>
>> ---
>> 
>> This likely requires some discussion, but it took a while for me to
>> understand why each packet miss upcall would require flow_extract()
>> right after the flow key has been obtained from odp attributes.
> 
> Do you have any performance numbers to share?  Since this is an
> optimization it's important to understand if the benefit is worth the
> extra complexity.

Not yet, but would be happy to. Any hits towards for the best way of obtaining
meaningful numbers for something like this?





More information about the dev mailing list