Initialize SoftNIC to work with rte_flow rules

Lukáš Šišmiš sismis at cesnet.cz
Fri Sep 29 13:21:35 CEST 2023


Hi Cristian,


OK, thank you for the reply.

Are you/anyone aware of a virtual driver that implements at least some 
level of rte_flow support?

Thanks in advance.


Lukas


On 29. 09. 23 11:55, Dumitrescu, Cristian wrote:
>
>> -----Original Message-----
>> From: Lukáš Šišmiš <sismis at cesnet.cz>
>> Sent: Friday, September 22, 2023 9:36 AM
>> To: users at dpdk.org
>> Cc: Dumitrescu, Cristian <cristian.dumitrescu at intel.com>
>> Subject: Initialize SoftNIC to work with rte_flow rules
>>
>> Hi all,
>>
>>
>> I am trying to setup completely virtual development environment where it
>> would be possible to develop applications with rte_flow rules.
>>
>> For this, I've found SoftNIC as a viable solution as this is supposed to
>> be a software NIC that also supports rte_flow rules.
>>
>> However, I am having a hard time to set it up, I couldn't find good
>> examples/documentation for this. Examples/docs found in
>> ip_pipeline/pipeline examples are outdated.
>>
>> I was able to make it run through testpmd but without the support for
>> rte_flow.
>>
>> Could you please help me to create spec/cli file that would support this
>> use case?
>>
>>
>> I am currently primarily interested in RX direction although being able
>> to work in the TX direction would be greatly appreciated.
>>
>> The solution I am currently thinking of:
>>
>> net_pcap0 -> net_softnic0 -> DPDK application + TX( -> net_softnic0 ->
>> net_ring/net_null)
>>
>>
>> The RX path can be done - and I was able to run it in testpmd but then
>> testpmd complained when I tried to apply rte_flow rules (not
>> implemented). Makes sense considering that the softnic default pipeline
>> doesn't contain any tables I guess.
>>
>>
>> Thank you all in advance.
>>
>> I'm CC'ing Cristian as he is the SoftNIC maintainer.
>>
>>
>> Cheers,
>>
>> Lukas Sismis
>>
> Hi Lukas,
>
> The Soft NIC driver does not currently have RTE_FLOW support.
>
> For now, you have to use the DPDK pipeline-specific API for populating the
> pipeline tables:
>
> 1. You can put these commands in the firmware.cli file to be run at
> Initialization.
>
> 2. You can use the run-time CLI (the best option) by doing "telnet 0.0.0.0 8086"
> after the device initialization is complete. In case you're using test-pmd, beware
> of the change required, as stated in the default "drivers/net/softnic/firmware.cli"
> file.
>
> 3. You can call the C API directly in your app.
>
> Regards,
> Cristian


More information about the users mailing list