Go to file
Sean Zhang 26b7259a79 app/testpmd: support GRE option flow item
Add gre_option command for matching optional fields
(checksum/key/sequence) in GRE header. The item must follow gre item,
and the item does not change the flags in gre item, the application
should set the flags in gre item correspondingly.
Application can still use gre_key item 'gre_key value is xx' for key
matching, the effect is the same with using 'gre_option key is xx'.

The examples for gre_option are as follows:

To match on checksum field with value 0x11:
testpmd> ... pattern / eth / gre c_bit is 1 / gre_option checksum is
		0x11 / end ..

To match on checksum field with value 0x11 and any value of key:
testpmd> ... pattern / eth / gre c_bit is 1 k_bit is 1 / gre_option
		checksum is 0x11 / end ..

To match on checksum field with value 0x11 and no key field in packet:
testpmd> ... pattern / eth / gre c_bit is 1 k_bit is 0 / gre_option
		checksum is 0x11 / end ..

The invalid patterns for gre_option are as follows:

testpmd> ... pattern / eth / gre / gre_option checksum is 0x11 / end ..
		(c_bit in gre item not present)
testpmd> ... pattern / eth / gre c_bit is 0 / gre_option checksum is 0x11 /
		end .. (c_bit is unset for gre item, but checksum is
		specified by gre_option item)

Signed-off-by: Sean Zhang <xiazhang@nvidia.com>
Acked-by: Ori Kam <orika@nvidia.com>
2022-02-11 16:51:59 +01:00
.ci buildtools/chkincs: test headers for C++ compatibility 2022-02-12 14:26:21 +01:00
.github/workflows buildtools/chkincs: test headers for C++ compatibility 2022-02-12 14:26:21 +01:00
app app/testpmd: support GRE option flow item 2022-02-11 16:51:59 +01:00
buildtools buildtools/chkincs: test headers for C++ compatibility 2022-02-12 14:26:21 +01:00
config config: align mempool elements to 128 bytes on CN10K 2022-02-12 15:13:24 +01:00
devtools security: add IPsec option for IP reassembly 2022-02-10 11:23:17 +01:00
doc app/testpmd: support GRE option flow item 2022-02-11 16:51:59 +01:00
drivers net/af_xdp: re-enable secondary process support 2022-02-11 14:19:13 +01:00
examples vhost: integrate dmadev in asynchronous data-path 2022-02-10 15:59:17 +01:00
kernel kni: fix ioctl signature 2022-02-02 20:55:05 +01:00
lib ethdev: support GRE optional fields 2022-02-11 16:51:59 +01:00
license lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
usertools support systemd service convention for runtime directory 2022-02-09 19:12:40 +01:00
.editorconfig devtools: clarify that lines up to 100 characters are ok 2021-11-25 11:51:24 +01:00
.gitattributes improve git diff 2016-11-13 15:25:12 +01:00
.gitignore doc: add eventdev feature matrices 2021-11-26 16:29:25 +01:00
.travis.yml version: 22.03-rc0 2021-12-02 21:36:19 +01:00
ABI_VERSION version: 22.03-rc0 2021-12-02 21:36:19 +01:00
MAINTAINERS app/test: add allocator performance benchmark 2022-02-08 21:32:53 +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 build: remove deprecated Meson functions 2022-02-02 18:46:53 +01:00
README license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
VERSION version: 22.03-rc0 2021-12-02 21:36:19 +01: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