Go to file
Junfeng Guo 25be39cc17 net/ice: enable protocol agnostic flow offloading in FDIR
Protocol agnostic flow offloading in Flow Director is enabled by this
patch based on the Parser Library, using existing rte_flow raw API.

Note that the raw flow requires:
1. byte string of raw target packet bits.
2. byte string of mask of target packet.

Here is an example:
FDIR matching ipv4 dst addr with 1.2.3.4 and redirect to queue 3:

flow create 0 ingress pattern raw \
pattern spec \
00000000000000000000000008004500001400004000401000000000000001020304 \
pattern mask \
000000000000000000000000000000000000000000000000000000000000ffffffff \
/ end actions queue index 3 / mark id 3 / end

Note that mask of some key bits (e.g., 0x0800 to indicate ipv4 proto)
is optional in our cases. To avoid redundancy, we just omit the mask
of 0x0800 (with 0xFFFF) in the mask byte string example. The prefix
'0x' for the spec and mask byte (hex) strings are also omitted here.

Also update the ice feature list with rte_flow item raw.

Signed-off-by: Junfeng Guo <junfeng.guo@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
2021-11-03 13:01:31 +01:00
.ci ci: fix aarch64 cross compilation in GHA 2021-11-01 18:15:24 +01:00
.github/workflows ci: fix aarch64 cross compilation in GHA 2021-11-01 18:15:24 +01:00
app app/testpmd: increase max raw pattern size to 512 2021-11-03 13:01:21 +01:00
buildtools buildtools: fix build with Meson 0.60 2021-11-03 14:16:29 +01:00
config sched: add PIE based congestion management 2021-11-04 15:41:49 +01:00
devtools devtools: forbid indent with tabs in Meson 2021-11-02 19:25:30 +01:00
doc net/ice: enable protocol agnostic flow offloading in FDIR 2021-11-03 13:01:31 +01:00
drivers net/ice: enable protocol agnostic flow offloading in FDIR 2021-11-03 13:01:31 +01:00
examples vhost: remove notion of async descriptor 2021-10-29 12:32:30 +02:00
kernel kni: fix build for SLES15-SP3 2021-10-25 15:30:23 +02:00
lib ethdev: add capability to keep shared objects on restart 2021-11-02 18:59:17 +01:00
license lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
usertools usertools/devbind: conform to PEP8 recommended style 2021-10-25 22:31:53 +02:00
.editorconfig doc: add Meson coding style to contributors guide 2021-04-21 14:04:09 +02:00
.gitattributes improve git diff 2016-11-13 15:25:12 +01:00
.gitignore doc: add flow API features tables 2021-05-18 19:06:56 +02:00
.travis.yml version: 21.11-rc0 2021-08-17 08:37:52 +02:00
ABI_VERSION version: 21.11-rc0 2021-08-17 08:37:52 +02:00
MAINTAINERS sched: add PIE based congestion management 2021-11-04 15:41:49 +01:00
Makefile build: create dummy Makefile 2020-09-07 23:51:57 +02:00
meson_options.txt config: add option for atomic mbuf reference counting 2021-10-25 17:53:30 +02:00
meson.build lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
README license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
VERSION version: 21.11-rc1 2021-10-25 22:42:47 +02:00

DPDK is a set of libraries and drivers for fast packet processing.
It supports many processor architectures and both FreeBSD and Linux.

The DPDK uses the Open Source BSD-3-Clause license for the core libraries
and drivers. The kernel components are GPL-2.0 licensed.

Please check the doc directory for release notes,
API documentation, and sample application information.

For questions and usage discussions, subscribe to: users@dpdk.org
Report bugs and issues to the development mailing list: dev@dpdk.org