[dpdk-users] Round-robin packet distribution
Pawel Wodkowski
pawelwod at gmail.com
Tue Aug 18 15:50:09 CEST 2020
Flexible payload matching (aka RAW in flow API) works up to first 64b of the
packet - at least in e1000, ixgbe and i40e.
It will be easier if you can provide some details about you network
traffic.
Paweł
On 18.08.2020 14:40, Filip Janiszewski wrote:
> Hi,
>
> We had a look at that, and decided that it might be a bit too
> complicated to implement in our SW and will not work in a performant way
> as we might wish, ideally we're looking for a simple approach even if
> not ideal..
>
> So, I was wondering if we can get at least a "fair" distribution (no
> round robin) using rte flow? And BTW, is it even possible to access the
> checksum from this API using for example the pattern matching with an
> offset that points to the proper byte location in the packet? (It seems
> it can't be done without modification to the driver..)
>
> Thanks
>
> Il 7/25/20 10:28 AM, Tom Barbette ha scritto:
>> Hi Filip,
>>
>> This is not possible, but you may use the idea of Sprayer
>> (http://www.gta.ufrj.br/ftp/gta/TechReports/SCC18d.pdf) to dispatch
>> packets randomly (use RSS on the checksum).
>>
>> However, in our paper RSS++
>> (https://www.diva-portal.org/smash/get/diva2:1371780/FULLTEXT01.pdf) we
>> show it's nearly always a bad idea because you'll have to share state,
>> and even for "stateless" function, that leads to a very bad locality in
>> a firewall as the same rules have to be fetched to L1 to all cores at
>> the same time when you receive a burst of similar packets.
>>
>> Tom
>>
>> Le 24/07/2020 à 12:05, Filip Janiszewski a écrit :
>>> Hi,
>>>
>>> Is there a way in DPDK to configure the NIC to distribute the incoming
>>> packets to multiple queues in a round robin fashion? Without taking into
>>> account the payload/headers or type of packet, just plain round robin
>>> distribution to multiple queues.
>>>
>>> I'm struggling to obtain a fair mechanism using RSS, perhaps the
>>> rte_flow API can do the trick? Any other suggestion?
>>>
>>> Thanks
>>>
More information about the users
mailing list