diff options
author | Sriram Vatala <svatala@marvell.com> | 2024-03-12 04:22:00 +0000 |
---|---|---|
committer | Monendra Singh Kushwaha <kmonendra@marvell.com> | 2024-06-10 18:51:40 +0000 |
commit | 6e0f70a035e2d2d0db75e4bfa4ceb748a3c2259e (patch) | |
tree | 65d657d760672ff19074ed41a012293ed4ad5dd9 /src/plugins/dev_octeon/octeon.h | |
parent | d8d3ad99af90fccac88a83a77f8676097568fb71 (diff) |
octeon: add support for vnet generic flow type
This patch adds vnet generic flow type support in OCTEON plugin, which
extends the existing vnet flow types supported. It allows users to
configure additional match patterns like 802.1q tag fields, 802.1ad tag
fields, MPLS fields, IP DSCP etc., if supported by the underlying hardware.
On OCTEON various match patterns including user defined custom protocol
types can be supported depending on the programmable classification profile.
Generic flows operate based on hexadecimal strings representing packet
data bytes and corresponding mask data bytes. The mask data bytes, with
bits set to '1', selectively identify the data bytes used for hardware
flow matching.
To configure generic flow rules, packetforge tool is recommended which
accepts inputs in a user readable and friendly format. This tool is
available in VPP tree under `extras/packetforge`. Detailed instructions
can be found in the documentation under `extras/packetforge`. Additionally
user can use existing vnet flow CLI and binary API interfaces to
configure rules manually.
Type: feature
Change-Id: I8198536cf1fe0a4719542a8b54c599230c7852e9
Signed-off-by: Sriram Vatala <svatala@marvell.com>
(cherry picked from commit 282f2ecd8e7d68b9930d6f1e2c62205c9dfe8285)
Diffstat (limited to 'src/plugins/dev_octeon/octeon.h')
-rw-r--r-- | src/plugins/dev_octeon/octeon.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/plugins/dev_octeon/octeon.h b/src/plugins/dev_octeon/octeon.h index c02b66e7cdb..4926f1afe79 100644 --- a/src/plugins/dev_octeon/octeon.h +++ b/src/plugins/dev_octeon/octeon.h @@ -12,6 +12,12 @@ #include <vnet/flow/flow.h> #include <vnet/udp/udp.h> #include <vnet/ipsec/esp.h> +#include <vnet/ethernet/packet.h> +#include <vnet/ip/ip_packet.h> +#include <vnet/ip/icmp46_packet.h> +#include <vnet/ip/igmp_packet.h> +#include <vnet/gre/packet.h> +#include <vxlan/vxlan.h> #include <base/roc_api.h> #include <dev_octeon/hw_defs.h> |