Hi,

I'm testing an Intel 700-Series (XL710) NIC using testpmd, given the
instructions from here
https://software.intel.com/content/www/us/en/develop/articles/intel-ethernet-controller-700-series-hash-and-flow-director-filters.html
I wanted to modify the inset such that an UDP header checksum would be
taken into account while receiving packets.

To test if it works, I've prepare a bunch of UDP packets all identical
but the checksum - for those packets normal RSS rules fail to split the
traffic across the queues, unless the checksum is taken into account.

I've configured testpmd like this:

./dpdk-testpmd -w 0000:b3:00.0 -- -i --rxq=4 --txq=4 --forward=rxonly

Then:

.
testpmd> port config 0 pctype mapping update 31 31
testpmd> port config 0 pctype 31 hash_inset clear all
testpmd> port config 0 pctype 31 hash_inset set field 32
testpmd> port config all rss 31
.

Where pctype 31 would be "Non-Fragmented IPv4, UDP" and field 32 of the
"field Vector" would be the udp checksum (According to
https://www.intel.com/content/dam/www/public/us/en/documents/datasheets/xl710-10-40-controller-datasheet.pdf
Table 7-12. Default field vector table)

And then started capturing, having set the hash_inset field 32 to
enabled I should be using that particular UDP field (checksum) for hashing.

But, those testpmd commands are not doing much, all the packets end up
all in the same queue even if the checksums are different for all the
packets.

Can anyone help to setup properly testpmd?

Thanks

-- 
BR, Filip
+48 666 369 823

Reply via email to