]> git.ipfire.org Git - thirdparty/suricata.git/commit
dpdk/rss: add rte_flow rss support for ixgbe
authorAdam Kiripolsky <Adam.Kiripolsky@cesnet.cz>
Tue, 10 Dec 2024 15:26:49 +0000 (16:26 +0100)
committerVictor Julien <victor@inliniac.net>
Mon, 10 Feb 2025 19:01:35 +0000 (20:01 +0100)
commit2296b3ba76327d81da29abf6b33b554215a5b801
tree2621943ecd04e76b1023b9db1f456934d67a7d43
parentffe0cf88e465b05747865a41537c654d161163d2
dpdk/rss: add rte_flow rss support for ixgbe

ixgbe driver requires different configuration of RSS rte_flow
rule than i40e, with just one generic rule matching all traffic.

The generic rule configured by DeviceCreateRSSFlowGeneric() has pattern
equivalent to "pattern eth / end" in dpdk-testpmd syntax. The rule must
have rx queues configured. The rule hashes traffic to different queues
based on ipv4 and ipv6 hash types (ipv4 src dst / ipv6 src dst).
The hash key is 40 bytes long  symmetric hash key. ixgbe does not
support any other hash function than RTE_ETH_HASH_FUNCTION_DEFAULT.

The syntax in dpdk-testpmd for this rule with attributes:
port index == 0
used rx queue indices == 0 1 2 3
<hash_key> == 6d5a symmetric hash key
is as follows:
"flow create 0 ingress pattern eth / end actions rss types ipv4 ipv6
end queues 0 1 2 3 end key <hash_key> key_len 40 func default / end"

Ticket: 7337
src/source-dpdk.c
src/util-dpdk-ixgbe.c
src/util-dpdk-ixgbe.h
src/util-dpdk-rss.c
src/util-dpdk-rss.h