test suite reviews and discussions
 help / color / mirror / Atom feed
From: "Tu, Lijuan" <lijuan.tu@intel.com>
To: "dts@dpdk.org" <dts@dpdk.org>
Subject: Re: [dts] [PATCH] test_plans: fix format to beauty html pages
Date: Mon, 13 Jan 2020 03:14:05 +0000	[thread overview]
Message-ID: <8CE3E05A3F976642AAB0F4675D0AD20E0BBA8574@SHSMSX101.ccr.corp.intel.com> (raw)
In-Reply-To: <1578913616-71228-1-git-send-email-lijuan.tu@intel.com>

applied

> -----Original Message-----
> From: Tu, Lijuan
> Sent: Monday, January 13, 2020 7:07 PM
> To: dts@dpdk.org
> Cc: Tu, Lijuan <lijuan.tu@intel.com>
> Subject: [PATCH] test_plans: fix format to beauty html pages
> 
> Signed-off-by: Lijuan Tu <lijuan.tu@intel.com>
> ---
>  test_plans/cvl_advanced_rss_test_plan.rst  | 799 ++++++++++++++++----------
>  test_plans/cvl_fdir_test_plan.rst          |  37 +-
>  test_plans/cvl_switch_filter_test_plan.rst | 873 ++++++++++++++++++---------
> --
>  3 files changed, 1080 insertions(+), 629 deletions(-)
> 
> diff --git a/test_plans/cvl_advanced_rss_test_plan.rst
> b/test_plans/cvl_advanced_rss_test_plan.rst
> index 8a9af1b..000ac38 100644
> --- a/test_plans/cvl_advanced_rss_test_plan.rst
> +++ b/test_plans/cvl_advanced_rss_test_plan.rst
> @@ -46,154 +46,155 @@ to hash IP and ports domain, diversion the packets
> to the difference queues.
> 
>  Pattern and input set
>  ---------------------
> -Table 1:
> -
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    | Default hash function: Non Symmetric_toeplitz
> |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |    Packet Type                |        Pattern                     |            Input Set
> |
> -
> +===============================+===============================
> =====+==========================================================
> =======================+
> -    | IPv4/IPv6 + TCP/UDP/SCTP/ICMP |    MAC_IPV4_SRC_ONLY
> |[Dest MAC],[Source IP]                                                          |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_DST_ONLY_FRAG          |[Dest MAC],
> [Dest IP]                                                            |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_PAY                    |[Dest MAC],[Source IP],
> [Dest IP]                                               |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_SRC_ICMP               |[Dest MAC],[Source
> IP]                                                          |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_DST_ICMP               |[Dest MAC],[Source
> IP]                                                          |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_UDP_L3SRC_L4DST        |[Dest MAC],
> [Source IP],[Dest Port]                                              |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_UDP                    |[Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]    |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_TCP_L3SRC_L4DST        |[Dest MAC],
> [Source IP],[Dest Port]                                              |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_TCP_L3DST_L4SRC        |[Dest MAC],
> [Dest IP],[Source Port]                                              |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_TCP                    |[Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]    |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_SCTP_L3SRC_L4DST       |[Dest MAC],
> [Source IP],[Dest Port]                                              |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_SCTP                   |[Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]    |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_NVGRE_ICMP             |[Inner Source IP],
> [Inner Dest IP]                                               |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_NVGRE_L3SRC_ICMP       |[Inner
> MAC][Inner Source IP]                                                     |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_NVGRE_L3DST_ICMP       |[Inner
> MAC][Inner Dest IP]                                                       |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_NVGRE_TCP              |[Inner Source IP],
> [Inner Dest IP],[Inner Source Port], [Inner Dest Port]        |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_NVGRE_SCTP             |[Inner Source IP],
> [Inner Dest IP],[Inner Source Port], [Inner Dest Port]        |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_VXLAN_ICMP             |[Inner Source IP],
> [Inner Dest IP]                                               |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_VXLAN_L3SRC_ICMP       |[Inner
> MAC][Inner Source IP]                                                     |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_VXLAN_L3DST_ICMP       |[Inner
> MAC][Inner Dest IP]                                                       |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_VXLAN_TCP              |[Inner Source IP],
> [Inner Dest IP],[Inner Source Port], [Inner Dest Port]        |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_VXLAN_SCTP             |[Inner Source IP],
> [Inner Dest IP],[Inner Source Port], [Inner Dest Port]        |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_VXLAN_UDP              |[Inner Source IP],
> [Inner Dest IP],[Inner Source Port], [Inner Dest Port]        |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV6_SRC_ONLY               |[Dest MAC],[Source
> IP]                                                          |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV6_DST_ONLY_FRAG          |[Dest MAC],
> [Dest IP]                                                            |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV6_PAY                    |[Dest MAC],[Source IP],
> [Dest IP],                                              |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV6_UDP                    |[Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]    |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV6_TCP                    |[Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]    |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV6_SCTP                   |[Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]    |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_PPPOE_PPPOD            |[Dest MAC],
> [Session ID],[Proto] ,[Source IP] ,[Dest IP]                         |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_PPPOE_TCP              |[Dest MAC],
> [Session ID],[Proto],[Source IP],[Dest IP],[Source Port],[Dest Port] |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_PPPOE_UDP              |[Dest MAC],
> [Session ID],[Proto],[Source IP],[Dest IP],[Source Port],[Dest Port] |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_PPPOE_TCP              |[Dest MAC],
> [Session ID],[Proto],[Source IP],[Dest IP],[Source Port],[Dest Port] |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_PPPOE_ICMP             |[Dest MAC],
> [Session ID],[Proto],[Source IP],[Dest IP]                           |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_GTP                    | [TEID]
> |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -    |                               |    MAC_IPV4_GTPU_IPV4_TCP          | [TEID]
> |
> -    +-------------------------------+------------------------------------+-------------------------
> --------------------------------------------------------+
> -
> -Table 2:
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    | Hash function: Symmetric_toeplitz
> |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |    Packet Type                |        Pattern                     |            Input Set
> |
> -
> +===============================+===============================
> =====+==========================================================
> =====================+
> -    |  IPV4/IPV6                    |    MAC_IPV4_SRC_ONLY               |[Dest MAC],
> [Source IP]                                                        |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_DST_ONLY_FRAG          |[Dest MAC],
> [Dest IP]                                                          |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_PAY                    |[Dest MAC],[Source IP],
> [Dest IP]                                             |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_SRC_ICMP               |[Dest MAC],[Source
> IP]                                                        |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_DST_ICMP               |[Dest MAC],[Source
> IP]                                                        |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_UDP_L3SRC_L4DST        |[Dest MAC],
> [Source IP],[Dest Port]                                            |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_UDP                    |[Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]  |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_TCP_L3SRC_L4DST        |[Dest MAC],
> [Source IP],[Dest Port]                                            |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_TCP_L3DST_L4SRC        |[Dest MAC],
> [Dest IP],[Source Port]                                            |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_TCP                    |[Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]  |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_SCTP_L3SRC_L4DST       |[Dest MAC],
> [Source IP],[Dest Port]                                            |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_SCTP                   |[Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]  |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_NVGRE_ICMP             |[Inner Source IP],
> [Inner Dest IP]                                             |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_NVGRE_L3SRC_ICMP       |[Inner
> MAC][Inner Source IP]                                                   |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_NVGRE_L3DST_ICMP       |[Inner
> MAC][Inner Dest IP]                                                     |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_NVGRE_TCP              |[Inner Source IP],
> [Inner Dest IP],[Inner Source Port], [Inner Dest Port]      |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_NVGRE_SCTP             |[Inner Source IP],
> [Inner Dest IP],[Inner Source Port], [Inner Dest Port]      |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_VXLAN_ICMP             |[Inner Source IP],
> [Inner Dest IP]                                             |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_VXLAN_L3SRC_ICMP       |[Inner
> MAC][Inner Source IP]                                                   |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_VXLAN_L3DST_ICMP       |[Inner
> MAC][Inner Dest IP]                                                     |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_VXLAN_TCP              |[Inner Source IP],
> [Inner Dest IP],[Inner Source Port], [Inner Dest Port]      |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_VXLAN_SCTP             |[Inner Source IP],
> [Inner Dest IP],[Inner Source Port], [Inner Dest Port]      |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_VXLAN_UDP              |[Inner Source IP],
> [Inner Dest IP],[Inner Source Port], [Inner Dest Port]      |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV6_SRC_ONLY               |[Dest MAC],[Source
> IP]                                                        |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV6_DST_ONLY_FRAG          |[Dest MAC],
> [Dest IP]                                                          |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV6_PAY                    |[Dest MAC],[Source IP],
> [Dest IP],                                            |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV6_UDP                    |[Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]  |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV6_TCP                    |[Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]  |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV6_SCTP                   |[Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]  |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV4_SIMPLE_XOR             |[Dest MAC],
> [Source IP], [Dest IP]                                             |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> -    |                               |    MAC_IPV6_SIMPLE_XOR             |[Dest MAC],
> [Source IP], [Dest IP]                                             |
> -    +-------------------------------+------------------------------------+-------------------------
> ------------------------------------------------------+
> +.. table::
> +
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    | Default hash function: Non Symmetric_toeplitz
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    | Packet Type                   | Pattern                   | Input Set
> |
> +
> +===============================+===========================+===
> ================================================================
> ===============+
> +    | IPv4/IPv6 + TCP/UDP/SCTP/ICMP | MAC_IPV4_SRC_ONLY         | [Dest
> MAC],[Source IP]                                                          |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_DST_ONLY_FRAG    | [Dest MAC],[Dest IP]
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_PAY              | [Dest MAC],[Source IP],
> [Dest IP]                                               |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_SRC_ICMP         | [Dest MAC],[Source IP]
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_DST_ICMP         | [Dest MAC],[Source IP]
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_UDP_L3SRC_L4DST  | [Dest MAC],
> [Source IP],[Dest Port]                                              |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_UDP              | [Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]    |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_TCP_L3SRC_L4DST  | [Dest MAC],[Source
> IP],[Dest Port]                                              |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_TCP_L3DST_L4SRC  | [Dest MAC],[Dest
> IP],[Source Port]                                              |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_TCP              | [Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]    |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_SCTP_L3SRC_L4DST | [Dest MAC],
> [Source IP],[Dest Port]                                              |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_SCTP             | [Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]    |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_NVGRE_ICMP       | [Inner Source IP],
> [Inner Dest IP]                                               |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_NVGRE_L3SRC_ICMP | [Inner MAC][Inner
> Source IP]                                                     |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_NVGRE_L3DST_ICMP | [Inner MAC][Inner
> Dest IP]                                                       |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_NVGRE_TCP        | [Inner Source IP], [Inner
> Dest IP],[Inner Source Port], [Inner Dest Port]        |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_NVGRE_SCTP       | [Inner Source IP],
> [Inner Dest IP],[Inner Source Port], [Inner Dest Port]        |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_VXLAN_ICMP       | [Inner Source IP],
> [Inner Dest IP]                                               |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_VXLAN_L3SRC_ICMP | [Inner MAC][Inner
> Source IP]                                                     |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_VXLAN_L3DST_ICMP | [Inner MAC][Inner
> Dest IP]                                                       |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_VXLAN_TCP        | [Inner Source IP], [Inner
> Dest IP],[Inner Source Port], [Inner Dest Port]        |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_VXLAN_SCTP       | [Inner Source IP], [Inner
> Dest IP],[Inner Source Port], [Inner Dest Port]        |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_VXLAN_UDP        | [Inner Source IP], [Inner
> Dest IP],[Inner Source Port], [Inner Dest Port]        |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV6_SRC_ONLY         | [Dest MAC],[Source IP]
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV6_DST_ONLY_FRAG    | [Dest MAC],[Dest IP]
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV6_PAY              | [Dest MAC],[Source IP],
> [Dest IP],                                              |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV6_UDP              | [Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]    |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV6_TCP              | [Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]    |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV6_SCTP             | [Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]    |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_PPPOE_PPPOD      | [Dest MAC],[Session
> ID],[Proto] ,[Source IP] ,[Dest IP]                         |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_PPPOE_TCP        | [Dest MAC],[Session
> ID],[Proto],[Source IP],[Dest IP],[Source Port],[Dest Port] |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_PPPOE_UDP        | [Dest MAC],[Session
> ID],[Proto],[Source IP],[Dest IP],[Source Port],[Dest Port] |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_PPPOE_TCP        | [Dest MAC],[Session
> ID],[Proto],[Source IP],[Dest IP],[Source Port],[Dest Port] |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_PPPOE_ICMP       | [Dest MAC],[Session
> ID],[Proto],[Source IP],[Dest IP]                           |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_GTP              |  [TEID]
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +    |                               | MAC_IPV4_GTPU_IPV4_TCP    |  [TEID]
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -------------------------------------------------+
> +
> +.. table::
> +
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    | Hash function: Symmetric_toeplitz
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    | Packet Type                   | Pattern                   | Input Set
> |
> +
> +===============================+===========================+===
> ================================================================
> =============+
> +    |  IPV4/IPV6                    | MAC_IPV4_SRC_ONLY         | [Dest MAC],
> [Source IP]                                                        |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_DST_ONLY_FRAG    | [Dest MAC],[Dest IP]
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_PAY              | [Dest MAC],[Source IP],
> [Dest IP]                                             |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_SRC_ICMP         | [Dest MAC],[Source IP]
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_DST_ICMP         | [Dest MAC],[Source IP]
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_UDP_L3SRC_L4DST  | [Dest MAC],
> [Source IP],[Dest Port]                                            |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_UDP              | [Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]  |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_TCP_L3SRC_L4DST  | [Dest MAC],[Source
> IP],[Dest Port]                                            |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_TCP_L3DST_L4SRC  | [Dest MAC],[Dest
> IP],[Source Port]                                            |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_TCP              | [Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]  |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_SCTP_L3SRC_L4DST | [Dest MAC],
> [Source IP],[Dest Port]                                            |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_SCTP             | [Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]  |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_NVGRE_ICMP       | [Inner Source IP],
> [Inner Dest IP]                                             |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_NVGRE_L3SRC_ICMP | [Inner MAC][Inner
> Source IP]                                                   |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_NVGRE_L3DST_ICMP | [Inner MAC][Inner
> Dest IP]                                                     |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_NVGRE_TCP        | [Inner Source IP], [Inner
> Dest IP],[Inner Source Port], [Inner Dest Port]      |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_NVGRE_SCTP       | [Inner Source IP],
> [Inner Dest IP],[Inner Source Port], [Inner Dest Port]      |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_VXLAN_ICMP       | [Inner Source IP],
> [Inner Dest IP]                                             |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_VXLAN_L3SRC_ICMP | [Inner MAC][Inner
> Source IP]                                                   |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_VXLAN_L3DST_ICMP | [Inner MAC][Inner
> Dest IP]                                                     |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_VXLAN_TCP        | [Inner Source IP], [Inner
> Dest IP],[Inner Source Port], [Inner Dest Port]      |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_VXLAN_SCTP       | [Inner Source IP], [Inner
> Dest IP],[Inner Source Port], [Inner Dest Port]      |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_VXLAN_UDP        | [Inner Source IP], [Inner
> Dest IP],[Inner Source Port], [Inner Dest Port]      |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV6_SRC_ONLY         | [Dest MAC],[Source IP]
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV6_DST_ONLY_FRAG    | [Dest MAC],[Dest IP]
> |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV6_PAY              | [Dest MAC],[Source IP],
> [Dest IP],                                            |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV6_UDP              | [Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]  |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV6_TCP              | [Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]  |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV6_SCTP             | [Dest MAC],[Source IP],
> [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port]  |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV4_SIMPLE_XOR       | [Dest MAC],[Source
> IP], [Dest IP]                                             |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> +    |                               | MAC_IPV6_SIMPLE_XOR       | [Dest MAC],[Source
> IP], [Dest IP]                                             |
> +    +-------------------------------+---------------------------+---------------------------------
> -----------------------------------------------+
> 
>  Default parameters
>  ------------------
> @@ -219,6 +220,7 @@ Default parameters
>      [TC]: 1
> 
>     UDP/TCP/SCTP::
> +
>      [Source IP]: RandIP
>      [Dest IP]: RandIP
>      [Source Port]: Randport
> @@ -240,19 +242,26 @@ Prerequisites
>  =============
> 
>  1. Hardware:
> -   Intel E810 series ethernet cards: columbiaville_25g/columbiaville_100g/
> +
> +   - Intel E810 series ethernet cards: columbiaville_25g/columbiaville_100g/
> 
>  2. Software:
> -   dpdk: http://dpdk.org/git/dpdk
> -   scapy: http://www.secdev.org/projects/scapy/
> +
> +   - dpdk: http://dpdk.org/git/dpdk
> +   - scapy: http://www.secdev.org/projects/scapy/
> 
> -Note: This rss feature designed for CVL NIC 25G and 100g, so below the case
> only support CVL nic.
> +.. note::
> +
> +   This rss feature designed for CVL NIC 25G and 100g, so below the case
> only support CVL nic.
> 
>  3. bind the CVL port to dpdk driver in DUT::
> -   modprobe vfio-pci
> -   usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:18:00.0
> 
> -Note: The kernel must be >= 3.6+ and VT-d must be enabled in bios.
> +    modprobe vfio-pci
> +    usertools/dpdk-devbind.py --force --bind=vfio-pci 0000:18:00.0
> +
> +.. note::
> +
> +   The kernel must be >= 3.6+ and VT-d must be enabled in bios.
> 
>  4. Launch the testpmd to configuration queue of rx and tx number 64 in
> DUT::
> 
> @@ -261,8 +270,9 @@ Note: The kernel must be >= 3.6+ and VT-d must be
> enabled in bios.
>      testpmd>set verbose 1
>      testpmd>rx_vxlan_port add 4789 0
> 
> -3. start scapy and configuration NVGRE and GTP profile in tester
> +5. start scapy and configuration NVGRE and GTP profile in tester
>     scapy::
> +
>     >>> import sys
>     >>> sys.path.append('~/dts/dep')
>     >>> from nvgre import NVGRE
> @@ -270,6 +280,7 @@ Note: The kernel must be >= 3.6+ and VT-d must be
> enabled in bios.
> 
>  Test case: MAC_IPV4_L3SRC
>  =========================
> +
>  #. create rule for the rss type for l3 src only::
> 
>      testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-src-only end key_len 0 queues end / end
> @@ -287,9 +298,10 @@ Test case: MAC_IPV4_L3SRC
>     Once rule has created and receive related packets,
>     Check the rss hash value and rss queue, make sure the different hash
> value and cause to related packets enter difference queue::
> 
> -    src=00:00:00:00:00:00 - dst=68:05:CA:A3:28:94 - type=0x0800 - length=514
> - nb_segs=1 - RSS hash=0x60994f6e - RSS queue=0x2e - hw ptype: L2_ETHER
> L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV   4  -
> l2_len=14 - l3_len=20 - Receive queue=0x2e ol_flags: PKT_RX_RSS_HASH
> PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> +    src=00:00:00:00:00:00 - dst=68:05:CA:A3:28:94 - type=0x0800 - length=514
> - nb_segs=1 - RSS hash=0x60994f6e - RSS queue=0x2e - hw ptype: L2_ETHER
> L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  -
> l2_len=14 - l3_len=20 - Receive queue=0x2e ol_flags: PKT_RX_RSS_HASH
> PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> 
> -   statistics log:
> +statistics log::
> +
>     ------- Forward Stats for RX Port= 0/Queue= 0 -> TX Port= 0/Queue= 0 -------
>     RX-packets: 1              TX-packets: 0              TX-dropped: 0
> 
> @@ -297,8 +309,8 @@ Test case: MAC_IPV4_L3SRC
>     RX-packets: 2              TX-packets: 0              TX-dropped: 0
>     ......
> 
> -  ------- Forward Stats for RX Port= 0/Queue=63 -> TX Port= 0/Queue=63 ------
> -
> -  RX-packets: 4              TX-packets: 0              TX-dropped: 0
> +   ------- Forward Stats for RX Port= 0/Queue=63 -> TX Port= 0/Queue=63 -----
> --
> +   RX-packets: 4              TX-packets: 0              TX-dropped: 0
> 
>     ---------------------- Forward statistics for port 0  ----------------------
>     RX-packets: 100            RX-dropped: 0             RX-total: 100
> @@ -312,6 +324,7 @@ Test case: MAC_IPV4_L3SRC
> 
>  Test case: MAC_IPV4_L3SRC_FRAG
>  ==============================
> +
>  #. create rule for the rss type for l3 src only::
> 
>      testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-dst-only end key_len 0 queues end / end
> @@ -327,41 +340,47 @@ Test case: MAC_IPV4_L3SRC_FRAG
> 
>  Test case: MAC_IPV4_L3DST:
>  ==========================
> +
>  #. create rule for the rss type for l3 dst only::
> -       testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-dst-only end key_len 0 queues end / end
> -       testpmd> start
> +
> +    testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-dst-only end key_len 0 queues end / end
> +    testpmd> start
> +
>  #. send the 100 IP +frag type pkts::
> 
> -       sendp([Ether(dst="68:05:ca:a3:28:94")/IP(dst=RandIP())/("X"*480)],
> iface="enp175s0f0", count=100)
> -       testpmd> stop
> +    sendp([Ether(dst="68:05:ca:a3:28:94")/IP(dst=RandIP())/("X"*480)],
> iface="enp175s0f0", count=100)
> +    testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value,and check the pkts typ is L2_ETHER L3_IPV4
> "FRAG"
> 
> -
>  Test case: MAC_IPV4_L3DST_FRAG:
>  ===============================
>  #. create rule for the rss type for l3 dst only::
> -       testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-dst-only end key_len 0 queues end / end
> -       testpmd> start
> +
> +    testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-dst-only end key_len 0 queues end / end
> +    testpmd> start
> 
>  #. send the 100 IP frag pkts::
> -       sendp([Ether(dst="68:05:ca:a3:28:94")/IP(dst=RandIP(),
> frag=5)/SCTP(sport=RandShort())/("X" * 80)], iface="enp175s0f0", count=100)
> -
> -       testpmd> stop
> +
> +    sendp([Ether(dst="68:05:ca:a3:28:94")/IP(dst=RandIP(),
> frag=5)/SCTP(sport=RandShort())/("X" * 80)], iface="enp175s0f0", count=100)
> +    testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value,and check the pkts typ is L2_ETHER L3_IPV4
> "FRAG"
> 
> -
> -
>  Test case: MAC_IPV4_L3SRC_FRAG_ICMP:
>  ====================================
>  #. create rule for the rss type for l3 dst only::
> -       testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-src-only end key_len 0 queues end / end
> -       testpmd> start
> +
> +    testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-src-only end key_len 0 queues end / end
> +    testpmd> start
> +
>  #. send the 100 IP pkts::
> -       sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),
> frag=5)/ICMP()/("X" * 80)], iface="enp175s0f0", count=100)
> -
> -       testpmd> stop
> +
> +    sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),
> frag=5)/ICMP()/("X" * 80)], iface="enp175s0f0", count=100)
> +    testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> @@ -369,12 +388,15 @@ Test case: MAC_IPV4_L3SRC_FRAG_ICMP:
>  Test case: MAC_IPV4_L3DST_FRAG_ICMP:
>  ====================================
>  #. create rule for the rss type for l3 dst only::
> -       testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-dst-only end key_len 0 queues end / end
> -       testpmd> start
> +
> +    testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-dst-only end key_len 0 queues end / end
> +    testpmd> start
> +
>  #. send the 100 IP pkts::
> -       sendp([Ether(dst="68:05:ca:a3:28:94")/IP(dst=RandIP(),
> frag=5)/ICMP()/("X" * 80)], iface="enp175s0f0", count=100)
> -
> -       testpmd> stop
> +
> +    sendp([Ether(dst="68:05:ca:a3:28:94")/IP(dst=RandIP(),
> frag=5)/ICMP()/("X" * 80)], iface="enp175s0f0", count=100)
> +    testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> @@ -382,25 +404,27 @@ Test case: MAC_IPV4_PAY:
>  ========================
>  #. create rule for the rss type for l3 all keywords::
> 
> -       testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 end key_len 0 queues end / end
> -       testpmd> start
> +    testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 end key_len 0 queues end / end
> +    testpmd> start
> +
>  #. send the 100 IP pkts::
> 
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),dst=RandIP())/("X"*4
> 80)], iface="enp175s0f0", count=100)
> -       testpmd>stop
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),dst=RandIP())/("X"*4
> 80)], iface="enp175s0f0", count=100)
> +    testpmd>stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> -
> 
>  Test case: MAC_IPV4_PAY_FRAG_ICMP:
>  ==================================
>  #. create rule for the rss type for IPV4 l3 all (src and dst) +frag+ICMP::
> -       flow create 0 ingress pattern eth / ipv4 / end actions rss types ipv4 end
> key_len 0 queues end / end
> +
> +    flow create 0 ingress pattern eth / ipv4 / end actions rss types ipv4 end
> key_len 0 queues end / end
> 
>  #. send the 100 IP pkts::
> 
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),dst=RandIP())/ICMP()
> /("X"*480)], iface="enp175s0f0", count=100)
> -       testpmd>stop
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),dst=RandIP())/ICMP()
> /("X"*480)], iface="enp175s0f0", count=100)
> +    testpmd>stop
> 
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> @@ -408,37 +432,45 @@ Test case: MAC_IPV4_PAY_FRAG_ICMP:
>  Test case: MAC_IPV4_NVGRE_L3SRC:
>  ================================
>  #. create rule for the rss type is IPV4 l3 src +NVGRE inner IPV4 +frag + ICMP::
> -       testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-src-only end key_len 0 queues end / end
> -       testpmd> start
> +
> +    testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-src-only end key_len 0 queues end / end
> +    testpmd> start
> +
>  #. send the 100 IP nvgre pkts::
> 
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IP(src=RandIP())
> /ICMP()/("X"*480)],iface="enp175s0f0",count=100)
> -       testpmd> stop
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IP(src=RandIP())
> /ICMP()/("X"*480)],iface="enp175s0f0",count=100)
> +    testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
>  Test case: MAC_IPV4_NVGRE_L3DST:
>  ================================
>  #. create rule for the rss type is IPV4 l3 dst +NVGRE inner IPV4 +frag + ICMP::
> -       testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-dst-only end key_len 0 queues end / end
> -       testpmd> start
> +
> +    testpmd> flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-dst-only end key_len 0 queues end / end
> +    testpmd> start
> +
>  #. send the 100 IP nvgre pkts::
> 
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IP(dst=RandIP()
> )/ICMP()/("X"*480)],iface="enp175s0f0",count=100)
> -       testpmd> stop
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IP(dst=RandIP()
> )/ICMP()/("X"*480)],iface="enp175s0f0",count=100)
> +    testpmd> stop
> 
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> -
> 
>  Test case: MAC_IPV4_VXLAN_L3SRC:
>  ================================
>  #. create rule for the rss type is IPV4 src VXLAN +frag +ICMP::
> -       testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-src-only end key_len 0 queues end / end
> -       testpmd>start
> +
> +    testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-src-only end key_len 0 queues end / end
> +    testpmd>start
> +
>  #. send the 100 VXLAN pkts::
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP()/VXLAN()/Ether()/IP(src=Ra
> ndIP(), frag=5)/ICMP()/("X" * 80)], iface="enp175s0f0", count=100)
> -       testpmd> stop
> +
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP()/VXLAN()/Ether()/IP(src=Ra
> ndIP(), frag=5)/ICMP()/("X" * 80)], iface="enp175s0f0", count=100)
> +    testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> @@ -446,12 +478,14 @@ Test case: MAC_IPV4_NVGRE_L3DST:
>  ================================
>  #. create rule for the rss type is IPV4 dst VXLAN +frag+ICMP::
> 
> -       testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-dst-only end key_len 0 queues end / end
> -       testpmd>start
> +    testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 l3-dst-only end key_len 0 queues end / end
> +    testpmd>start
> +
>  #. send the 100 vxlan pkts::
> 
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP()/VXLAN()/Ether()/IP(dst=Ra
> ndIP(), frag=5)/ICMP()/("X" * 80)], iface="enp175s0f0", count=100)
> -       testpmd> stop
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP()/VXLAN()/Ether()/IP(dst=Ra
> ndIP(), frag=5)/ICMP()/("X" * 80)], iface="enp175s0f0", count=100)
> +    testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> @@ -460,58 +494,69 @@ Test case: MAC_IPV4_NVGRE:
>  ==========================
>  #. create rule for the rss type is IPV4 all VXLAN +frag +ICMP::
> 
> -       testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 end key_len 0 queues end / end
> -       testpmd>start
> +    testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss types
> ipv4 end key_len 0 queues end / end
> +    testpmd>start
> 
>  #. send the 100 vxlan pkts::
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP()/VXLAN()/Ether()/IP(src=Ra
> ndIP(),dst=RandIP(),frag=5)/ICMP()/("X" * 80)], iface="enp175s0f0",
> count=100)
> -
> -       testpmd> stop
> +
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP()/VXLAN()/Ether()/IP(src=Ra
> ndIP(),dst=RandIP(),frag=5)/ICMP()/("X" * 80)], iface="enp175s0f0",
> count=100)
> +    testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> -
> 
>  Test case: MAC_IPV6_L3SRC
>  ==========================
>  #. create rule for the rss type is IPV6 L3 src::
> 
> -       testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss types
> ipv6 l3-src-only end key_len 0 queues end / end
> -       testpmd>start
> +    testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss types
> ipv6 l3-src-only end key_len 0 queues end / end
> +    testpmd>start
> +
>  #. send the 100 IPV6 pkts::
> -       sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src=RandIP6())/("X" * 80)],
> iface="enp175s0f0", count=100)
> +
> +    sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src=RandIP6())/("X" * 80)],
> iface="enp175s0f0", count=100)
> 
>  Test case: MAC_IPV6_L3SRC_FRAG
>  ===============================
>  #. create rule for the rss type is IPV6 L3 src +ExtHdrFragment::
> -       testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss types
> ipv6 l3-src-only end key_len 0 queues end / end
> -       testpmd>start
> +
> +    testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss types
> ipv6 l3-src-only end key_len 0 queues end / end
> +    testpmd>start
> 
>  #. send the 100 IPV6 pkts::
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src=RandIP6())/IPv6ExtHdrFragm
> ent()/("X" * 80)], iface="enp175s0f0", count=100)
> -
> -       testpmd> stop
> +
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src=RandIP6())/IPv6ExtHdrFragm
> ent()/("X" * 80)], iface="enp175s0f0", count=100)
> +    testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
>  Test case: MAC_IPV6_L3DST
>  =========================
>  #. create rule for the rss type is IPV6 L3 dst +ExtHdrFragment::
> -       testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss types
> ipv6 l3-dst-only end key_len 0 queues end / end
> -       testpmd>start
> +
> +    testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss types
> ipv6 l3-dst-only end key_len 0 queues end / end
> +    testpmd>start
> +
>  #. send the 100 IPV6 pkts::
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(dst=RandIP6())/IPv6ExtHdrFragm
> ent()/("X" * 80)], iface="enp175s0f0", count=100)
> -       testpmd> stop
> +
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(dst=RandIP6())/IPv6ExtHdrFragm
> ent()/("X" * 80)], iface="enp175s0f0", count=100)
> +    testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
>  Test case: MAC_IPV6_PAY
>  =======================
>  #. create rule for the rss type is IPV6 L3 all +ExtHdrFragment+ICMP::
> -      testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss types
> ipv6 end key_len 0 queues end / end
> -      testpmd>start
> +
> +    testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss types
> ipv6 end key_len 0 queues end / end
> +    testpmd>start
> +
>  #. send the 100 IPV6 pkts::
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src=RandIP6(),dst=RandIP6())/IP
> v6ExtHdrFragment()/ICMP()/("X" * 80)], iface="enp175s0f0", count=100)
> -      testpmd> stop
> +
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src=RandIP6(),dst=RandIP6())/IP
> v6ExtHdrFragment()/ICMP()/("X" * 80)], iface="enp175s0f0", count=100)
> +    testpmd> stop
> 
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> @@ -519,12 +564,15 @@ Test case: MAC_IPV6_PAY
>  Test case: MAC_IPV4_UDP:
>  ========================
>  #. create rule for the rss type is ipv4 UDP +l3 src and dst::
> +
>        testpmd>flow create 0 ingress pattern eth / ipv4 / udp / end actions rss
> types ipv4-udp l3-src-only l4-dst-only end key_len 0 queues end / end
>        testpmd>start
> +
>  #. send the 100 IP+UDP pkts::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP())/UDP(dport=RandSho
> rt())/("X"*480)], iface="enp175s0f0", count=100)
>        testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> @@ -532,8 +580,10 @@ Test case: MAC_IPV4_UDP:
>  Test case: MAC_IPV4_UDP_FRAG:
>  =============================
>  #. create rule for the rss type is ipv4 +UDP +frag::
> +
>        testpmd> flow create 0 ingress pattern eth / ipv4 / udp / end actions rss
> types ipv4-udp end key_len 0 queues end / end
>        testpmd> start
> +
>  #. send the 100 IP src IP +UDP port pkts::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),dst=RandIP())/UDP(sp
> ort=RandShort(),dport=RandShort())/("X"*480)], iface="enp175s0f0",
> count=100)
> @@ -541,6 +591,7 @@ Test case: MAC_IPV4_UDP_FRAG:
>  #. send the 100 IP +UDP port pkts::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP(sport=RandShort(),dport=Ra
> ndShort())/("X"*480)], iface="enp175s0f0", count=100)
> +
>  #. send the 100 IP src and dst IP  +UDP port pkts::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),dst=RandIP())/UDP()/
> ("X"*480)], iface="enp175s0f0", count=100)
> @@ -552,6 +603,7 @@ Test case: MAC_IPV4_UDP_FRAG:
>  Test case: MAC_NVGRE_IPV4_UDP_FRAG:
>  ===================================
>  #. create rule for the rss type is ipv4 + inner IP and UDP::
> +
>       testpmd>flow create 0 ingress pattern eth / ipv4 / udp / end actions rss
> types ipv4-udp end key_len 0 queues end / end
>       testpmd>start
> 
> @@ -559,119 +611,150 @@ Test case: MAC_NVGRE_IPV4_UDP_FRAG:
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IP(src=RandIP(),
> dst=RandIP())/UDP(sport=RandShort(),dport=RandShort())/("X"*480)],
> iface="enp175s0f0", count=100)
>       testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
>  Test case: MAC_VXLAN_IPV4_UDP_FRAG:
>  ===================================
>  #. create rule for the rss type is ipv4 + vxlan UDP::
> +
>       testpmd> flow create 0 ingress pattern eth / ipv4 / udp / end actions rss
> types ipv4-udp end key_len 0 queues end / end
>       testpmd> start
> +
>  #. To send VXLAN pkts with IP src and dst,UDP port::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP()/VXLAN()/Ether()/IP(src=Ra
> ndIP(),dst=RandIP())/UDP(sport=RandShort(),dport=RandShort())/("X"*480)],
> iface="enp175s0f0", count=100)
>       testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
>  Test case: MAC_IPV6_UDP:
>  ========================
>  #. create rule for the rss type is IPV6 + UDP src and dst type hash::
> +
>       testpmd> flow create 0 ingress pattern eth / ipv6 / udp / end actions rss
> types ipv6-udp end key_len 0 queues end / end
>       testpmd> start
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src=RandIP6())/UDP(sport=Rand
> Short(),dport=RandShort())/("X" * 80)], iface="enp175s0f0", count=100)
>       testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
>  Test case: MAC_IPV6_UDP_FRAG:
>  =============================
>  #. To send IPV6 pkts with IPV6 src +frag +UDP port::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src=RandIP6())/IPv6ExtHdrFragm
> ent()/UDP(sport=RandShort(),dport=RandShort())/("X" * 80)],
> iface="enp175s0f0", count=100)
>       testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
>  Test case: MAC_IPV4_TCP_FRAG:
>  =============================
>  #. create rule for the rss type is IPV4 + TCP L3 src and  L4 dst type hash::
> +
>       testpmd>flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss
> types ipv4-tcp l3-src-only l4-dst-only end key_len 0 queues end / end
> +
>  #. To send IPV4 pkts with scr IP and TCP dst port::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP())/TCP(dport=RandSho
> rt())/("X"*480)], iface="enp175s0f0", count=100)
>       testpmd>flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss
> types ipv4-tcp l3-src-only l4-src-only end key_len 0 queues end / end
> +
>  #. To send IPV4 pkts with scr IP and TCP src port::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(dst=RandIP())/TCP(sport=RandShor
> t())/("X"*480)], iface="enp175s0f0", count=100)
>       testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
>  Test case: MAC_IPV4_TCP_PAY
>  ===========================
>  #. Create rule for the rss type is IPV4 +tcp and hash tcp src and dst ports::
> +
>       testpmd>flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss
> types ipv4-tcp end key_len 0 queues end / end
>       testpmd>start
> +
>  #. To send IPV4 pkts with IP src and dst ip and TCP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),dst=RandIP())/TCP(sp
> ort=RandShort(),dport=RandShort())/("X"*480)], iface="enp175s0f0",
> count=100)
> +
>  #. To send IPV4 pkts without IP src and dst ip and includ TCP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/TCP(sport=RandShort(),dport=Ra
> ndShort())/("X"*480)], iface="enp175s0f0", count=100)
> +
>  #. To send IPV4 pkts with IP src and dst ip and without TCP port::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),dst=RandIP())/TCP()/(
> "X"*480)], iface="enp175s0f0", count=100)
> +
>  #. To send IPV4 pkts with IP src and dst +frag and without TCP port::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),dst=RandIP(),frag=4)/
> TCP(sport=RandShort(),dport=RandShort())/("X"*480)], iface="enp175s0f0",
> count=100)
>       testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> -
> 
>  Test case: MAC_IPV6_UDP_FRAG:
>  =============================
>  #. Create rule for the RSS type nvgre IP src dst ip and TCP::
> +
>       testpmd>flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss
> types ipv4-tcp end key_len 0 queues end / end
>       testpmd>start
> +
>  #. To send NVGRE ip pkts::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IP(src=RandIP(),
> dst=RandIP())/TCP(sport=RandShort(),dport=RandShort())/("X"*480)],
> iface="enp175s0f0", count=100)
>       testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
>  Test case: MAC_VXLAN_IPV4_TCP
>  =============================
>  #. Create rule for the rss type is IPV4 +tcp and hash tcp src and dst ports::
> +
>        testpmd>flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss
> types ipv4-tcp end key_len 0 queues end / end
>        testpmd>start
> +
>  #. To send VXLAN pkts includ src and dst ip and TCP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/TCP()/VXLAN()/Ether()/IP(src=Ra
> ndIP(),dst=RandIP())/TCP(sport=RandShort(),dport=RandShort())/("X"*480)],
> iface="enp175s0f0", count=100)
>        testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
>  Test case: MAC_IPV6_TCP
>  =======================
>  #. Create rule for the rss IPV6 tcp::
> +
>         testpmd>flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss
> types ipv6-tcp end key_len 0 queues end / end
>         testpmd>start
> +
>  #. To send IPV6 pkts include TCP ports::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src=RandIP6())/TCP(sport=RandS
> hort(),dport=RandShort())/("X" * 80)], iface="enp175s0f0", count=100)
>         testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
>  Test case: MAC_IPV6_TCP_FRAG:
>  =============================
>  #. Create rule for the rss IPV6 tcp::
> +
>         testpmd>flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss
> types ipv6-tcp end key_len 0 queues end / end
>         testpmd>start
> +
>  #. To send ipv6 pkts and IPV6 frag::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src=RandIP6())/IPv6ExtHdrFragm
> ent()/TCP(sport=RandShort(),dport=RandShort())/("X" * 80)],
> iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> @@ -679,24 +762,29 @@ Test case: MAC_IPV6_TCP_FRAG:
>  Test case: MAC_IPV4_SCTP:
>  =========================
>  #. Create rule for the rss type IPV4 and SCTP, hash keywords with ipv4 sctp
> and l3 src port l4 dst port::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss
> types ipv4-sctp l3-src-only l4-dst-only end key_len 0 queues end / end
>          testpmd>start
> +
>  #. To send IP pkts includ SCTP dport::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP())/SCTP(dport=RandSh
> ort())/("X"*480)], iface="enp175s0f0", count=100)
> +
>  #. To send IP pkts includ SCTP sport::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(dst=RandIP())/SCTP(sport=RandSh
> ort())/("X"*480)], iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> -
>  Test case: MAC_IPV4_SCTP_FRAG:
>  ==============================
>  #. Create rule for the rss type IPV4 and SCTP, hash keywords with ipv4 sctp::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss
> types ipv4-sctp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. To send IPV4 pkt include SCTP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),dst=RandIP())/SCTP(s
> port=RandShort(),dport=RandShort())/("X"*480)], iface="enp175s0f0",
> count=100)
> @@ -704,99 +792,117 @@ Test case: MAC_IPV4_SCTP_FRAG:
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),dst=RandIP())/SCTP()/
> ("X"*480)], iface="enp175s0f0", count=100)
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src=RandIP(),dst=RandIP(),frag=4)/
> SCTP(sport=RandShort(),dport=RandShort())/("X"*480)], iface="enp175s0f0",
> count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> -
> 
>  Test case: MAC_NVGRE_IPV4_SCTP:
>  ===============================
>  #. Create rule for the rss type IPV4 and hash keywords ipv4 sctp src and dst
> type::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss
> types ipv4-sctp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. To send NVGRE ip pkts and sctp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IP(src=RandIP(),
> dst=RandIP())/SCTP(sport=RandShort(),dport=RandShort())/("X"*480)],
> iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> -
>  Test case: MAC_VXLAN_IPV4_SCTP:
>  ===============================
>  #. create rule for the rss type IPV4 and hash keywords ipv4 sctp src and dst
> type::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss
> types ipv4-sctp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. To send VXLAN ip pkts and sctp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/SCTP()/VXLAN()/Ether()/IP(src=Ra
> ndIP(),dst=RandIP())/SCTP(sport=RandShort(),dport=RandShort())/("X"*480)],
> iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
>  Test case: MAC_IPV6_SCTP_PAY:
>  =============================
>  #. Create rule for the rss type IPV6 and hash keywords ipv4 sctp src and dst
> type::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss
> types ipv6-sctp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. To send IPV6 pkts and sctp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src=RandIP6())/SCTP(sport=Rand
> Short(),dport=RandShort())/("X" * 80)], iface="enp175s0f0", count=100)
>          MAC IPV6 SCTP all+frag:
> +
>  #. to send IPV6 pkts includ frag::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src=RandIP6())/IPv6ExtHdrFragm
> ent()/SCTP(sport=RandShort(),dport=RandShort())/("X" * 80)],
> iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> -
>  Test case: MAC_IPV4_PPPOD_PPPOE:
>  ================================
>  #. Create rule for the rss type pppoes type::
> +
>          testpmd>flow create 0 ingress pattern eth / pppoes / ipv4 / end actions
> rss types ipv4 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. To send pppoe 100pkts::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/PPPoE(sessionid=RandShort())/PPP(pr
> oto=0x21)/IP(src=RandIP())/UDP(sport=RandShort())/("X"*480)],
> iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> -
>  Test case: MAC_IPV4_PPPOD_PPPOE:
>  ================================
>  #. Create rule for the rss type pppoes::
> +
>          testpmd>flow create 0 ingress pattern eth / pppoes / ipv4 / end actions
> rss types ipv4 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. To send pppoe pkts::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/PPPoE(sessionid=RandShort())/PPP(pr
> oto=0x21)/IP(src=RandIP())/("X"*480)], iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. Verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> -
> 
>  Test case: MAC_IPV4_PPPOD_PPPOE_UDP:
>  ====================================
>  #. Create rule for the rss type pppoes and hash l3 src , l4 dst port::
> +
>          testpmd>flow create 0 ingress pattern eth / pppoes / ipv4 / udp / end
> actions rss types ipv4-udp l3-src-only l4-dst-only end key_len 0 queues end /
> end
>          testpmd>start
> +
>  #. To send pppoe pkt and include the UPD ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/PPPoE(sessionid=RandShort())/PPP(pr
> oto=0x21)/IP(src=RandIP())/UDP(dport=RandShort())/("X"*480)],
> iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. Verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> -
> 
>  Test case: MAC_IPV4_PPPOD_PPPOE_SCTP:
>  =====================================
>  #. Create rule for the rss type pppoe and hash sctp keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / pppoes / ipv4 / sctp / end
> actions rss types ipv4-sctp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. To send pppoe pkt and include the SCTP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/PPPoE(sessionid=RandShort())/PPP(pr
> oto=0x21)/IP(src=RandIP())/SCTP(dport=RandShort())/("X"*480)],
> iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. Verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> @@ -804,12 +910,15 @@ Test case: MAC_IPV4_PPPOD_PPPOE_SCTP:
>  Test case: MAC_IPV4_PPPOD_PPPOE_ICMP:
>  =====================================
>  #. Create rule for the rss type pppoe and hash icmp keywords::
> +
>          testpmd> flow create 0 ingress pattern eth / pppoes / ipv4 / end actions
> rss types ipv4 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. To send pppoe pkt and include the ICMP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/PPPoE(sessionid=RandShort())/PPP(pr
> oto=0x21)/IP(src=RandIP())/ICMP()/("X"*480)], iface="enp175s0f0",
> count=100)
>          testpmd> stop
> +
>  #. Verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> @@ -817,15 +926,19 @@ Test case: MAC_IPV4_PPPOD_PPPOE_ICMP:
>  Test case: MAC_IPV4_GTPU_FRAG:
>  ==============================
>  #. Create rule for the rss type GTPU and hash l3 src keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc /
> ipv4 / end actions rss types ipv4 l3-src-only end key_len 0 queues end / end
>          testpmd>start
> +
>  #. To send GTPU pkts::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP(dport=2152)/GTP_U_Heade
> r(teid=0x123456)/IP(src=RandIP())/ICMP()/("X"*480)],iface="enp175s0f0",co
> unt=100)
> +
>  #. To send GTPU PKTS and IPV4 frag::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP(dport=2152)/GTP_U_Heade
> r(teid=0x123456)/IP(src=RandIP(),frag=6)/("X"*480)],iface="enp175s0f0",cou
> nt=100)
>          testpmd> stop
> +
>  #. Verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> @@ -833,12 +946,15 @@ Test case: MAC_IPV4_GTPU_FRAG:
>  Test case: MAC_IPV4_GTPU_FRAG_UDP:
>  ==================================
>  #. create rule for the rss type GTPU and hash l3 src and dst keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc /
> ipv4 / udp / end actions rss types ipv4 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send GTP pkts and include IP pkts and UDP::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP(dport=2152)/GTP_U_Heade
> r(teid=0x123456)/IP(src=RandIP(),frag=6)/UDP(dport=RandShort())/("X"*480)
> ],iface="enp175s0f0",count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> @@ -846,12 +962,15 @@ Test case: MAC_IPV4_GTPU_FRAG_UDP:
>  Test case: MAC_IPV4_GTPU_FRAG_TCP:
>  ==================================
>  #. create rule for the rss type GTPU and hash l3 src and dst keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc /
> ipv4 / tcp / end actions rss types ipv4 l3-src-only end key_len 0 queues end /
> end
>          testpmd>start
> +
>  #. to send GTP pkts and include IP pkts and tcp::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP(dport=2152)/GTP_U_Heade
> r(teid=0x123456)/IP(src=RandIP(),frag=6)/TCP(dport=RandShort())/("X"*480)
> ],iface="enp175s0f0",count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and to check the 100 pkts has send to differently
> totaly 64 queues evenly with
>     differently RSS random value
> 
> @@ -862,6 +981,7 @@ Test case: MAC_IPV4_GTPU_FRAG_ICMP:
> 
>          testpmd>flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc /
> ipv4 / end actions rss types ipv4 l3-src-only end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send GTP pkts and include IP pkts and ICMP::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP(dport=2152)/GTP_U_Heade
> r(teid=0x123456)/IP(src=RandIP(),frag=6)/ICMP()/("X"*480)],iface="enp175s0
> f0",count=100)
> @@ -872,46 +992,51 @@ Test case: MAC_IPV4_GTPU_FRAG_ICMP:
>  Test case: SYMMETRIC_TOEPLITZ_IPV4_PAY:
>  =======================================
>  #. create rule for the rss type symmetric_toeplitz and hash ipv4 src and dst
> keywords::
> -        testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss func
> symmetric_toeplitz types ipv4 end key_len 0 queues end / end
> -        testpmd>start
> +
> +    testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss func
> symmetric_toeplitz types ipv4 end key_len 0 queues end / end
> +    testpmd>start
> +
>  #. to send ip pkts with fix IP::
> 
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.1",dst="192.168.0.2
> ")/("X"*480)], iface="enp175s0f0", count=100)
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.1",dst="192.168.0.2
> ")/("X"*480)], iface="enp175s0f0", count=100)
> +
>  #. to send ip pkts with fix IP and switch src and dst ip address::
> 
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.2",dst="192.168.0.1
> ")/("X"*480)], iface="enp175s0f0", count=100)
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.2",dst="192.168.0.1
> ")/("X"*480)], iface="enp175s0f0", count=100)
> +
> +Verbos log::
> 
> -   Verbos log:
> -   src=A4:BF:01:68:D2:03 - dst=68:05:CA:A3:28:94 - type=0x0800 - length=514
> - nb_segs=1 - RSS hash=0xf84ccd9b - RSS queue=0x1b - hw ptype: L2_ETHER
> L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  -
> l2_len=14 - l3_len=20 - Receive queue=0x1b ol_flags: PKT_RX_RSS_HASH
> PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> +    src=A4:BF:01:68:D2:03 - dst=68:05:CA:A3:28:94 - type=0x0800 -
> length=514 - nb_segs=1 - RSS hash=0xf84ccd9b - RSS queue=0x1b - hw ptype:
> L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER
> L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x1b ol_flags:
> PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> 
> -   src=A4:BF:01:68:D2:03 - dst=68:05:CA:A3:28:94 - type=0x0800 - length=514
> - nb_segs=1 - RSS hash=0xf84ccd9b - RSS queue=0x1b - hw ptype: L2_ETHER
> L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  -
> l2_len=14 - l3_len=20 - Receive queue=0x1b ol_flags: PKT_RX_RSS_HASH
> PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> +    src=A4:BF:01:68:D2:03 - dst=68:05:CA:A3:28:94 - type=0x0800 -
> length=514 - nb_segs=1 - RSS hash=0xf84ccd9b - RSS queue=0x1b - hw ptype:
> L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER
> L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x1b ol_flags:
> PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> 
> -#. To verify the hash value keep with a same value when the IP has
> exchanged.
> +#. To verify the hash value keep with a same value when the IP has
> exchanged::
> 
> -   hash=0xf84ccd9b - RSS queue=0
> -   hash=0xf84ccd9b - RSS queue=0
> +    hash=0xf84ccd9b - RSS queue=0
> +    hash=0xf84ccd9b - RSS queue=0
> 
>  #. to send ip pkts with fix IP::
> 
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="8.8.8.2",dst="5.6.7.8")/("X"*4
> 80)], iface="enp175s0f0", count=100)
> -#. to send ip pkts with fix IP and switch src and dst ip address::
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="8.8.8.2",dst="5.6.7.8")/("X"*4
> 80)], iface="enp175s0f0", count=100)
> 
> -
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="5.6.7.8",dst="8.8.8.2")/("X"*4
> 80)], iface="enp175s0f0", count=100)
> +#. to send ip pkts with fix IP and switch src and dst ip address::
> 
> -   testpmd> stop
> -   verify 100 pkts has sent, and check the has value has fixed, verify the has
> value keep with a same value, when the IP has exchanged
> +
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="5.6.7.8",dst="8.8.8.2")/("X"*4
> 80)], iface="enp175s0f0", count=100)
> +    testpmd> stop
> 
> -
> -   Verbose log:
> -   src=A4:BF:01:68:D2:03 - dst=68:05:CA:A3:28:94 - type=0x0800 - length=514
> - nb_segs=1 - RSS hash=0x772baed3 - RSS queue=0x13 - hw ptype: L2_ETHER
> L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  -
> l2_len=14 - l3_len=20 - Receive queue=0x13 ol_flags: PKT_RX_RSS_HASH
> PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> -   src=A4:BF:01:68:D2:03 - dst=68:05:CA:A3:28:94 - type=0x0800 - length=514
> - nb_segs=1 - RSS hash=0x772baed3 - RSS queue=0x13 - hw ptype: L2_ETHER
> L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  -
> l2_len=14 - l3_len=20 - Receive queue=0x13 ol_flags: PKT_RX_RSS_HASH
> PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> +verify 100 pkts has sent, and check the has value has fixed, verify the has
> value keep with a same value, when the IP has exchanged
> +Verbose log::
> +
> +    src=A4:BF:01:68:D2:03 - dst=68:05:CA:A3:28:94 - type=0x0800 -
> length=514 - nb_segs=1 - RSS hash=0x772baed3 - RSS queue=0x13 - hw ptype:
> L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER
> L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x13 ol_flags:
> PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> +    src=A4:BF:01:68:D2:03 - dst=68:05:CA:A3:28:94 - type=0x0800 -
> length=514 - nb_segs=1 - RSS hash=0x772baed3 - RSS queue=0x13 - hw ptype:
> L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER
> L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0x13 ol_flags:
> PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> 
> -#. To verify the hash value keep with a same value when the IP has
> exchanged.
> +#. To verify the hash value keep with a same value when the IP has
> exchanged::
> 
> -   0x772baed3 - RSS queue=0x19
> -   0x772baed3 - RSS queue=0x19
> +    0x772baed3 - RSS queue=0x19
> +    0x772baed3 - RSS queue=0x19
> 
> -    statistics log:
> +statistics log::
> +
>      ------- Forward Stats for RX Port= 0/Queue=19 -> TX Port= 0/Queue=19 -----
> --
>      RX-packets: 200            TX-packets: 0              TX-dropped: 0
> 
> @@ -931,13 +1056,16 @@ Test case:
> SYMMETRIC_TOEPLITZ_IPV4_PAY_FRAG:
> 
>          testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss func
> symmetric_toeplitz types ipv4 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix IP includ frag::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.1",dst="192.168.0.2
> ",frag=6)/("X"*480)], iface="enp175s0f0", count=100)
> +
>  #. to send ip pkts with fix IP includ frag and switch src and dst ip address::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.2",dst="192.168.0.1
> ",frag=6)/("X"*480)], iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss has has fixed with a same value.
> 
> 
> @@ -947,13 +1075,16 @@ Test case: SYMMETRIC_TOEPLITZ_IPV4_UDP:
> 
>          testpmd>flow create 0 ingress pattern eth / ipv4 / udp / end actions rss
> func symmetric_toeplitz types ipv4-udp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix IP includ frag and UDP::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.1",dst="192.168.0.2
> ",frag=6)/UDP(sport=20,dport=22)/("X"*480)], iface="enp175s0f0",
> count=100)
> +
>  #. to send ip pkts with fix IP includ frag and switch src and dst ip address and
> UDP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.2",dst="192.168.0.1
> ",frag=6)/UDP(sport=22,dport=20)/("X"*480)], iface="enp175s0f0",
> count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
>  Test case: SYMMETRIC_TOEPLITZ_IPV4_UDP_L3SRC_L3DST_L4SRC_L4DST:
> @@ -962,13 +1093,16 @@ Test case:
> SYMMETRIC_TOEPLITZ_IPV4_UDP_L3SRC_L3DST_L4SRC_L4DST:
> 
>          testpmd>flow create 0 ingress pattern eth / ipv4 / udp / end actions rss
> func symmetric_toeplitz types ipv4-udp l3-src-only l3-dst-only l4-src-only l4-
> dst-only end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix IP includ frag and UDP::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="1.1.4.1",dst="2.2.2.3")/UDP(s
> port=20,dport=22)/("X"*480)], iface="enp175s0f0", count=100)
> +
>  #. to send ip pkts with fix IP includ frag and switch src and dst ip address and
> UDP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="2.2.2.3",dst="1.1.4.1")/UDP(s
> port=22,dport=20)/("X"*480)], iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
>  Test case: SYMMETRIC_TOEPLITZ_IPV4_TCP:
> @@ -977,13 +1111,16 @@ Test case: SYMMETRIC_TOEPLITZ_IPV4_TCP:
> 
>          testpmd>flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss
> func symmetric_toeplitz types ipv4-tcp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix IP includ frag and TCP::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.1",dst="192.168.0.2
> ",frag=6)/TCP(sport=20,dport=22)/("X"*480)], iface="enp175s0f0",
> count=100)
> +
>  #. to send ip pkts with fix IP includ frag and switch src and dst ip address and
> tcp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.2",dst="192.168.0.1
> ",frag=6)/TCP(sport=22,dport=20)/("X"*480)], iface="enp175s0f0",
> count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
> 
> @@ -993,9 +1130,11 @@ Test case: SYMMETRIC_TOEPLITZ_IPV4_SCTP:
> 
>          testpmd>flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss
> func symmetric_toeplitz types ipv4-sctp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix IP includ frag and SCTP::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.1",dst="192.168.0.2
> ",frag=6)/SCTP(sport=20,dport=22)/("X"*480)], iface="enp175s0f0",
> count=100)
> +
>  #. to send ip pkts with fix IP includ frag and switch src and dst ip address and
> sctp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.2",dst="192.168.0.1
> ",frag=6)/SCTP(sport=22,dport=20)/("X"*480)], iface="enp175s0f0",
> count=100)
> @@ -1009,203 +1148,264 @@ Test case: SYMMETRIC_TOEPLITZ_IPV4_ICMP:
> 
>          testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss func
> symmetric_toeplitz types ipv4 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix IP includ frag and ICMP::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.1",dst="192.168.0.2
> ",frag=6)/ICMP()/("X"*480)], iface="enp175s0f0", count=100)
> +
>  #. to send ip pkts with fix IP includ frag and switch src and dst ip address and
> ICMP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="192.168.0.2",dst="192.168.0.1
> ",frag=6)/ICMP()/("X"*480)], iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash value with a fixed value .
> 
> 
>  Test case: SYMMETRIC_TOEPLITZ_IPV6:
>  ===================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss func
> symmetric_toeplitz types ipv6 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix IPV6  pkts with fixed address::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="ABAB:910B:6666:3457:8295
> :3333:1800:2929",dst="CDCD:910A:2222:5498:8475:1111:3900:2020")/("X" *
> 80)], iface="enp175s0f0", count=100)
> +
>  #. to send ip pkts with fix IPv6 includ frag and switch src and dst ip address::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="CDCD:910A:2222:5498:8475
> :1111:3900:2020",dst="ABAB:910B:6666:3457:8295:3333:1800:2929")/("X" *
> 80)], iface="enp175s0f0", count=100)
> 
>  #. to send ip pkts with fix IPV6  pkts with fixed address without MAC
> address::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="CDCD:910A:2222:5498:8475
> :1111:3900:2020",dst="ABAB:910B:6666:3457:8295:3333:1800:2929")/("X" *
> 80)], iface="enp175s0f0", count=100)
> +
>  #. to send ip pkts with fix IPv6 includ frag and switch src and dst ip address
> without mac address::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="ABAB:910B:6666:3457:8295
> :3333:1800:2929",dst="CDCD:910A:2222:5498:8475:1111:3900:2020")/("X" *
> 80)], iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rssh hash with a fixed value .
> 
>  Test case: SYMMETRIC_TOEPLITZ_IPV6_PAY:
>  ==========================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss func
> symmetric_toeplitz types ipv6 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix IPV6  pkts with fixed address and includ IPV6 frag::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="CDCD:910A:2222:5498:8475
> :1111:3900:2020",dst="ABAB:910B:6666:3457:8295:3333:1800:2929")/IPv6Ext
> HdrFragment()/("X" * 80)], iface="enp175s0f0", count=100)
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="ABAB:910B:6666:3457:8295
> :3333:1800:2929",dst="CDCD:910A:2222:5498:8475:1111:3900:2020")/IPv6Ex
> tHdrFragment()/("X" * 80)], iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
> 
>  Test case: SYMMETRIC_TOEPLITZ_IPV6_UDP:
>  =======================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / udp / end actions rss
> func symmetric_toeplitz types ipv6-udp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix IPV6  pkts with fixed address and includ IPV6 frag
> and UDP port::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="CDCD:910A:2222:5498:8475
> :1111:3900:2020",dst="ABAB:910B:6666:3457:8295:3333:1800:2929")/UDP(s
> port=30,dport=32)/("X" * 80)], iface="enp175s0f0", count=100)
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="ABAB:910B:6666:3457:8295
> :3333:1800:2929",dst="CDCD:910A:2222:5498:8475:1111:3900:2020")/UDP(s
> port=32,dport=30)/("X" * 80)], iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
> 
>  Test case: SYMMETRIC_TOEPLITZ_IPV6_TCP:
>  =======================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss
> func symmetric_toeplitz types ipv6-tcp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix IPV6  pkts with fixed address and includ IPV6 frag
> and tcp port::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="CDCD:910A:2222:5498:8475
> :1111:3900:2020",dst="ABAB:910B:6666:3457:8295:3333:1800:2929")/TCP(sp
> ort=30,dport=32)/("X" * 80)], iface="enp175s0f0", count=100)
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="ABAB:910B:6666:3457:8295
> :3333:1800:2929",dst="CDCD:910A:2222:5498:8475:1111:3900:2020")/TCP(sp
> ort=32,dport=30)/("X" * 80)], iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
> 
>  Test case: SYMMETRIC_TOEPLITZ_IPV6_SCTP:
>  ========================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss
> func symmetric_toeplitz types ipv6-sctp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix IPV6  pkts with fixed address and includ IPV6 frag
> and sctp port::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="CDCD:910A:2222:5498:8475
> :1111:3900:2020",dst="ABAB:910B:6666:3457:8295:3333:1800:2929")/SCTP(s
> port=30,dport=32)/("X" * 80)], iface="enp175s0f0", count=100)
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="ABAB:910B:6666:3457:8295
> :3333:1800:2929",dst="CDCD:910A:2222:5498:8475:1111:3900:2020")/SCTP(s
> port=32,dport=30)/("X" * 80)], iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
> 
>  Test case: SYMMETRIC_TOEPLITZ_IPV6_ICMP:
>  ========================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss func
> symmetric_toeplitz types ipv6 end key_len 0 queues end key_len 0 queues
> end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix IPV6  pkts with fixed address and includ IPV6 frag
> and ICMP port::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="CDCD:910A:2222:5498:8475
> :1111:3900:2020",dst="ABAB:910B:6666:3457:8295:3333:1800:2929")/ICMP()
> /("X" * 80)], iface="enp175s0f0", count=100)
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="ABAB:910B:6666:3457:8295
> :3333:1800:2929",dst="CDCD:910A:2222:5498:8475:1111:3900:2020")/ICMP()
> /("X" * 80)], iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
> 
>  Test case: SYMMETRIC_TOEPLITZ_NVGRE_IPV4:
>  =========================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV4 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss func
> symmetric_toeplitz types ipv4 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix nvgre pkts with fixed address and includ frag::
> 
> 
> sendp([Ether()/IP()/NVGRE()/Ether()/IP(src="192.168.0.8",dst="192.168.0.69
> ",frag=6)/("X"*480)], iface="enp175s0f0", count=100)
> 
> sendp([Ether()/IP()/NVGRE()/Ether()/IP(src="192.168.0.69",dst="192.168.0.8
> ",frag=6)/("X"*480)], iface="enp175s0f0", count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
>  Test case: SYMMETRIC_TOEPLITZ_VXLAN_IPV4:
>  =========================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV4 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss func
> symmetric_toeplitz types ipv4 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix vxlan pkts with fixed address and includ frag::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP()/VXLAN()/Ether()/IP(src="1
> 92.168.0.1",dst="192.168.0.2",frag=6)/("X"*480)], iface="enp175s0f0",
> count=100)
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP()/VXLAN()/Ether()/IP(src="1
> 92.168.0.2",dst="192.168.0.1",frag=6)/("X"*480)], iface="enp175s0f0",
> count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
> 
>  Test case: SYMMETRIC_TOEPLITZ_NVGRE_IPV4_UDP:
>  =============================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV4 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv4 / udp / end actions rss
> func symmetric_toeplitz types ipv4-udp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix nvgre pkts with fixed address and includ frag and
> udp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether(dst="68:05:ca:a3:
> 28:94")/IP(src="8.8.8.1",dst="5.6.8.2")/UDP(sport=20,dport=22)/("X"*480)],if
> ace="enp175s0f0",count=100)
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether(dst="68:05:ca:a3:
> 28:94")/IP(src="5.6.8.2",dst="8.8.8.1")/UDP(sport=22,dport=20)/("X"*480)],if
> ace="enp175s0f0",count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
>  Test case: SYMMETRIC_TOEPLITZ_NVGRE_SCTP:
>  =========================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV4 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv4 / sctp / end actions rss
> func symmetric_toeplitz types ipv4-sctp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix nvgre pkts with fixed address and includ frag and
> sctp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether(dst="68:05:ca:a3:
> 28:94")/IP(src="8.8.8.1",dst="5.6.8.2")/SCTP(sport=20,dport=22)/("X"*480)],i
> face="enp175s0f0",count=100)
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether(dst="68:05:ca:a3:
> 28:94")/IP(src="5.6.8.2",dst="8.8.8.1")/SCTP(sport=22,dport=20)/("X"*480)],i
> face="enp175s0f0",count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
>  Test case: SYMMETRIC_TOEPLITZ_NVGRE_IPV4_TCP:
>  =============================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV4 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv4 / tcp / end actions rss
> func symmetric_toeplitz types ipv4-tcp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix nvgre pkts with fixed address and includ frag and
> tcp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether(dst="68:05:ca:a3:
> 28:94")/IP(src="8.8.8.1",dst="5.6.8.2")/TCP(sport=20,dport=22)/("X"*480)],if
> ace="enp175s0f0",count=100)
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether(dst="68:05:ca:a3:
> 28:94")/IP(src="5.6.8.2",dst="8.8.8.1")/TCP(sport=22,dport=20)/("X"*480)],if
> ace="enp175s0f0",count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
>  Test case: SYMMETRIC_TOEPLITZ_NVGRE_IPV4_ICMP:
>  ==============================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV4 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv4 / end actions rss func
> symmetric_toeplitz types ipv4 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ip pkts with fix nvgre pkts with fixed address and includ frag and
> icmp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IP(src="8.8.8.1",
> dst="5.6.8.2")/ICMP()/("X"*480)],iface="enp175s0f0",count=100)
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IP(src="5.6.8.2",
> dst="8.8.8.1")/ICMP()/("X"*480)],iface="enp175s0f0",count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
>  Test case: SYMMETRIC_TOEPLITZ_NVGRE_IPV6:
>  =========================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss func
> symmetric_toeplitz types ipv6 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ipv6 pkts with fix nvgre pkts with fixed address::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IPv6(src="CDCD
> :910A:2222:5498:8475:1111:3900:2020",dst="ABAB:910B:6666:3457:8295:333
> 3:1800:2929")/("X"*480)],iface="enp175s0f0",count=100)
> +
>  #. to send ip pkts with fix IPv6 includ frag and switch src and dst ip address::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IPv6(src="ABAB:
> 910B:6666:3457:8295:3333:1800:2929",dst="CDCD:910A:2222:5498:8475:111
> 1:3900:2020")/("X"*480)],iface="enp175s0f0",count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
>  Test case: SYMMETRIC_TOEPLITZ_NVGRE_IPV6_UDP:
>  ================================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / udp / end actions rss
> func symmetric_toeplitz types ipv6-udp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ipv6 pkts with fix nvgre pkts with fixed address and includ ipv6
> frag and UDP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IPv6(src="CDCD
> :910A:2222:5498:8475:1111:3900:2020",dst="ABAB:910B:6666:3457:8295:333
> 3:1800:2929")/UDP(sport=30,dport=32)/("X"*480)],iface="enp175s0f0",count
> =100)
> +
>  #. to send ip pkts with fix IPv6 includ frag and switch src and dst ip address
> and udp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IPv6(src="ABAB:
> 910B:6666:3457:8295:3333:1800:2929",dst="CDCD:910A:2222:5498:8475:111
> 1:3900:2020")/UDP(sport=32,dport=33)/("X"*480)],iface="enp175s0f0",count
> =100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
> 
>  Test case: SYMMETRIC_TOEPLITZ_NVGRE_IPV6_TCP:
>  =============================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss
> func symmetric_toeplitz types ipv6-tcp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ipv6 pkts with fix nvgre pkts with fixed address and includ ipv6
> frag and tcp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IPv6(src="CDCD
> :910A:2222:5498:8475:1111:3900:2020",dst="ABAB:910B:6666:3457:8295:333
> 3:1800:2929")/TCP(sport=30,dport=32)/("X"*480)],iface="enp175s0f0",count
> =100)
> +
>  #. to send ip pkts with fix IPv6 includ frag and switch src and dst ip address
> and tcp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IPv6(src="ABAB:
> 910B:6666:3457:8295:3333:1800:2929",dst="CDCD:910A:2222:5498:8475:111
> 1:3900:2020")/TCP(sport=32,dport=33)/("X"*480)],iface="enp175s0f0",count
> =100)
> @@ -1215,106 +1415,134 @@ Test case:
> SYMMETRIC_TOEPLITZ_NVGRE_IPV6_TCP:
>  Test case: SYMMETRIC_TOEPLITZ_NVGRE_IPV6_SCTP
>  ==============================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss
> func symmetric_toeplitz types ipv6-sctp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ipv6 pkts with fix nvgre pkts with fixed address and includ ipv6
> frag and SCTP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IPv6(src="CDCD
> :910A:2222:5498:8475:1111:3900:2020",dst="ABAB:910B:6666:3457:8295:333
> 3:1800:2929")/SCTP(sport=30,dport=32)/("X"*480)],iface="enp175s0f0",coun
> t=100)
> +
>  #. to send ip pkts with fix IPv6 includ frag and switch src and dst ip address
> and SCTP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IPv6(src="ABAB:
> 910B:6666:3457:8295:3333:1800:2929",dst="CDCD:910A:2222:5498:8475:111
> 1:3900:2020")/SCTP(sport=32,dport=33)/("X"*480)],iface="enp175s0f0",coun
> t=100)
> -    testpmd> stop
> +        testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
> 
>  Test case: SYMMETRIC_TOEPLITZ_NVGRE_IPV6_ICMP:
>  ==============================================
>  #.  create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss func
> symmetric_toeplitz types ipv6 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ipv6 pkts with fix nvgre pkts with fixed address and includ ipv6
> frag and ICMP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IPv6(src="CDCD
> :910A:2222:5498:8475:1111:3900:2020",dst="ABAB:910B:6666:3457:8295:333
> 3:1800:2929")/ICMP()/("X"*480)],iface="enp175s0f0",count=100)
> +
>  #. to send ip pkts with fix IPv6 includ frag and switch src and dst ip address
> and ICMP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/NVGRE()/Ether()/IPv6(src="ABAB:
> 910B:6666:3457:8295:3333:1800:2929",dst="CDCD:910A:2222:5498:8475:111
> 1:3900:2020")/ICMP()/("X"*480)],iface="enp175s0f0",count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
>  Test case: SYMMETRIC_TOEPLITZ_VXLAN_IPV6_UDP:
>  =============================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / udp / end actions rss
> func symmetric_toeplitz types ipv6-udp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ipv6 pkts with fix vxlan pkts with fixed address and includ ipv6 frag
> and UDP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6()/UDP()/VXLAN()/Ether()/IPv6(sr
> c="CDCD:910A:2222:5498:8475:1111:3900:2020",dst="ABAB:910B:6666:3457:
> 8295:3333:1800:2929")/UDP(sport=30,dport=32)/("X"*480)],iface="enp175s0
> f0",count=100)
> +
>  #. to send VXLAN pkts with fix IPv6 includ frag and switch src and dst ip
> address and UDP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6()/UDP()/VXLAN()/Ether()/IPv6(sr
> c="ABAB:910B:6666:3457:8295:3333:1800:2929",dst="CDCD:910A:2222:5498:
> 8475:1111:3900:2020")/UDP(sport=32,dport=33)/("X"*480)],iface="enp175s0
> f0",count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
>  Test case: SYMMETRIC_TOEPLITZ_VXLAN_IPV6:
>  =========================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss func
> symmetric_toeplitz types ipv6 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ipv6 pkts with fix vxlan pkts with fixed address and includ ipv6
> frag::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP()/VXLAN()/Ether()/IPv6(src=
> "CDCD:910A:2222:5498:8475:1111:3900:2020",dst="ABAB:910B:6666:3457:82
> 95:3333:1800:2929")/("X"*480)],iface="enp175s0f0",count=100)
> +
>  #. to send VXLAN pkts with fix IPv6 includ frag and switch src and dst ip
> address::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP()/UDP()/VXLAN()/Ether()/IPv6(src=
> "ABAB:910B:6666:3457:8295:3333:1800:2929",dst="CDCD:910A:2222:5498:84
> 75:1111:3900:2020")/("X"*480)],iface="enp175s0f0",count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
>  Test case: SYMMETRIC_TOEPLITZ_VXLAN_IPV6_TCP:
>  =============================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / tcp / end actions rss
> func symmetric_toeplitz types ipv6-tcp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ipv6 pkts with fix vxlan pkts with fixed address and includ ipv6 frag
> and tcp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6()/UDP()/VXLAN()/Ether()/IPv6(sr
> c="CDCD:910A:2222:5498:8475:1111:3900:2020",dst="ABAB:910B:6666:3457:
> 8295:3333:1800:2929")/TCP(sport=30,dport=32)/("X"*480)],iface="enp175s0f
> 0",count=100)
> +
>  #. to send VXLAN pkts with fix IPv6 includ frag and switch src and dst ip
> address and tcp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6()/UDP()/VXLAN()/Ether()/IPv6(sr
> c="ABAB:910B:6666:3457:8295:3333:1800:2929",dst="CDCD:910A:2222:5498:
> 8475:1111:3900:2020")/TCP(sport=32,dport=33)/("X"*480)],iface="enp175s0f
> 0",count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
>  Test case: SYMMETRIC_TOEPLITZ_VXLAN_IPV6_SCTP:
>  ==============================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / sctp / end actions rss
> func symmetric_toeplitz types ipv6-sctp end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ipv6 pkts with fix vxlan pkts with fixed address and includ ipv6 frag
> and sctp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6()/UDP()/VXLAN()/Ether()/IPv6(sr
> c="CDCD:910A:2222:5498:8475:1111:3900:2020",dst="ABAB:910B:6666:3457:
> 8295:3333:1800:2929")/SCTP(sport=30,dport=32)/("X"*480)],iface="enp175s
> 0f0",count=100)
> +
>  #. to send VXLAN pkts with fix IPv6 includ frag and switch src and dst ip
> address and sctp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6()/UDP()/VXLAN()/Ether()/IPv6(sr
> c="ABAB:910B:6666:3457:8295:3333:1800:2929",dst="CDCD:910A:2222:5498:
> 8475:1111:3900:2020")/SCTP(sport=32,dport=30)/("X"*480)],iface="enp175s
> 0f0",count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
>  Test case: SYMMETRIC_TOEPLITZ_VXLAN_IPV6_ICMP:
>  ==============================================
>  #. create rule for the rss type symmetric_toeplitz and hash IPV6 keywords::
> +
>          testpmd>flow create 0 ingress pattern eth / ipv6 / end actions rss func
> symmetric_toeplitz types ipv6 end key_len 0 queues end / end
>          testpmd>start
> +
>  #. to send ipv6 pkts with fix vxlan pkts with fixed address and includ ipv6 frag
> and ICMP ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6()/UDP()/VXLAN()/Ether()/IPv6(sr
> c="CDCD:910A:2222:5498:8475:1111:3900:2020",dst="ABAB:910B:6666:3457:
> 8295:3333:1800:2929")/ICMP()/("X"*480)],iface="enp175s0f0",count=100)
> +
>  #. to send VXLAN pkts with fix IPv6 includ frag and switch src and dst ip
> address and icmp ports::
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6()/UDP()/VXLAN()/Ether()/IPv6(sr
> c="ABAB:910B:6666:3457:8295:3333:1800:2929",dst="CDCD:910A:2222:5498:
> 8475:1111:3900:2020")/ICMP()/("X"*480)],iface="enp175s0f0",count=100)
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value
> 
> -
>  Test case: SIMPLE_XOR:
>  ======================
>  #. create rule for the rss type simple_xor::
> +
>          testpmd>flow create 0 ingress pattern end actions rss func simple_xor
> key_len 0 queues end / end
>          testpmd>start
> 
> @@ -1324,18 +1552,20 @@ Test case: SIMPLE_XOR_IPV4:
> 
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="1.1.4.1",dst="2.2.2.3")/("X"*4
> 80)], iface="enp175s0f0", count=100)
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IP(src="2.2.2.3",dst="1.1.4.1")/("X"*4
> 80)], iface="enp175s0f0", count=100)
> -
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
> -   Verbose log:
> +Verbose log::
> +
>     src=A4:BF:01:68:D2:03 - dst=68:05:CA:A3:28:94 - type=0x0800 - length=514
> - nb_segs=1 - RSS hash=0x3030602 - RSS queue=0x2 - hw ptype: L2_ETHER
> L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  -
> l2_len=14 - l3_len=20 - Receive queue=0x2 ol_flags: PKT_RX_RSS_HASH
> PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> -
> +
>     src=A4:BF:01:68:D2:03 - dst=68:05:CA:A3:28:94 - type=0x0800 - length=514
> - nb_segs=1 - RSS hash=0x3030602 - RSS queue=0x2 - hw ptype: L2_ETHER
> L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  -
> l2_len=14 - l3_len=20 - Receive queue=0x2 ol_flags: PKT_RX_RSS_HASH
> PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> 
> -   Chheck the RSS value wiht a same value and the packets enter to a queue
> +Check the RSS value wiht a same value and the packets enter to a queue
> 
> -   statistics log:
> +statistics log::
> +
>     ------- Forward Stats for RX Port= 0/Queue= 2 -> TX Port= 0/Queue= 2 -------
>     RX-packets: 200            TX-packets: 0              TX-dropped: 0
> 
> @@ -1353,27 +1583,30 @@ Test case: SIMPLE_XOR_IPV4:
>  SIMPLE_XOR_IPV6:
>  ================
>  #. to send IPV6 pkt with fixed IP and switch IP src and dst address and switch
> the upd, tcp, sctp, icpm ports::
> +
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="CDCD:910A:2222:5498:8475
> :1111:3900:2020",dst="ABAB:910B:6666:3457:8295:3333:1800:2929")/("X" *
> 80)], iface="enp175s0f0", count=100)
> 
> sendp([Ether(dst="68:05:ca:a3:28:94")/IPv6(src="ABAB:910B:6666:3457:8295
> :3333:1800:2929",dst="CDCD:910A:2222:5498:8475:1111:3900:2020")/("X" *
> 80)], iface="enp175s0f0", count=100)
> -
>          testpmd> stop
> +
>  #. verify 100 pkts has sent, and check the rss hash with a fixed value.
> 
> -   Verbose log:
> +Verbose log::
> +
>     src=00:00:00:00:00:00 - dst=68:05:CA:A3:28:94 - type=0x86dd - length=134
> - nb_segs=1 - RSS hash=0x5c24be5 - RSS queue=0x25 - hw ptype: L2_ETHER
> L3_IPV6_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV6  -
> l2_len=14 - l3_len=40 - Receive queue=0x25 ol_flags: PKT_RX_RSS_HASH
> PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> -
> +
>     src=00:00:00:00:00:00 - dst=68:05:CA:A3:28:94 - type=0x86dd - length=134
> - nb_segs=1 - RSS hash=0x5c24be5 - RSS queue=0x25 - hw ptype: L2_ETHER
> L3_IPV6_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV6  -
> l2_len=14 - l3_len=40 - Receive queue=0x25 ol_flags: PKT_RX_RSS_HASH
> PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD
> PKT_RX_OUTER_L4_CKSUM_UNKNOWN
> 
> -    statistics log:
> -    ------- Forward Stats for RX Port= 0/Queue=37 -> TX Port= 0/Queue=37 -----
> --
> -    RX-packets: 200            TX-packets: 0              TX-dropped: 0
> -
> -    ---------------------- Forward statistics for port 0  ----------------------
> -    RX-packets: 200            RX-dropped: 0             RX-total: 200
> -    TX-packets: 0              TX-dropped: 0             TX-total: 0
> -    ----------------------------------------------------------------------------
> -
> -    +++++++++++++++ Accumulated forward statistics for all
> ports+++++++++++++++
> -    RX-packets: 200            RX-dropped: 0             RX-total: 200
> -    TX-packets: 0              TX-dropped: 0             TX-total: 0
> -
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> ++++++++++++
> +statistics log::
> +
> +   ------- Forward Stats for RX Port= 0/Queue=37 -> TX Port= 0/Queue=37 -----
> --
> +   RX-packets: 200            TX-packets: 0              TX-dropped: 0
> +
> +   ---------------------- Forward statistics for port 0  ----------------------
> +   RX-packets: 200            RX-dropped: 0             RX-total: 200
> +   TX-packets: 0              TX-dropped: 0             TX-total: 0
> +   ----------------------------------------------------------------------------
> +
> +   +++++++++++++++ Accumulated forward statistics for all
> ports+++++++++++++++
> +   RX-packets: 200            RX-dropped: 0             RX-total: 200
> +   TX-packets: 0              TX-dropped: 0             TX-total: 0
> +
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> ++++++++++++
> diff --git a/test_plans/cvl_fdir_test_plan.rst
> b/test_plans/cvl_fdir_test_plan.rst
> index 0d93735..2f65313 100644
> --- a/test_plans/cvl_fdir_test_plan.rst
> +++ b/test_plans/cvl_fdir_test_plan.rst
> @@ -34,9 +34,9 @@
>  CVL:Classification:Flow Director
>  ================================
> 
> -Enable fdir filter for IPv4/IPv6 + TCP/UDP/SCTP  (OS default package)
> -Enable fdir filter for UDP tunnel: Vxlan / NVGRE (OS default package)
> -Enable fdir filter for GTP (comm #1 package)
> +* Enable fdir filter for IPv4/IPv6 + TCP/UDP/SCTP  (OS default package)
> +* Enable fdir filter for UDP tunnel: Vxlan / NVGRE (OS default package)
> +* Enable fdir filter for GTP (comm #1 package)
> 
>  Pattern and input set
>  ---------------------
> @@ -86,31 +86,34 @@ Pattern and input set
>      |                              | MAC_IPV4_GTPU_IPV4_SCTP    | [TEID], [QFI]
> |
>      +------------------------------+----------------------------+----------------------------------
> ---------------------------------------------+
> 
> -Notes: 1. Enable fdir filter for UDP tunnel: Vxlan / NVGRE (OS default
> package) , share code not
> -          support outer header as inputset, so Out Dest IP and VNI/GRE_KEY
> may not able to be implemented.
> +.. notes::
> 
> -       2. For VXLAN case MAC_IPV4_TUN_*** means
> MAC_IPV4_UDP_VXLAN_***
> -       3. For Dest MAC, there is package /sharecode limitation on multicast dst
> mac support for FDIR
> +    1. Enable fdir filter for UDP tunnel: Vxlan / NVGRE (OS default package) ,
> share code not
> +       support outer header as inputset, so Out Dest IP and VNI/GRE_KEY may
> not able to be implemented.
> +    2. For VXLAN case MAC_IPV4_TUN_*** means
> MAC_IPV4_UDP_VXLAN_***
> +    3. For Dest MAC, there is package /sharecode limitation on multicast dst
> mac support for FDIR
> 
>  Action type
>  -----------
> 
> -    queue index
> -    drop
> -    rss queues
> -    count identifier 0x1234 shared on|off
> -    mark id
> +    * queue index
> +    * drop
> +    * rss queues
> +    * count identifier 0x1234 shared on|off
> +    * mark id
> 
> 
>  Prerequisites
>  =============
> 
>  1. Hardware:
> -   columbiaville_25g/columbiaville_100g
> +
> +   - columbiaville_25g/columbiaville_100g
> 
>  2. Software:
> -   DPDK: http://dpdk.org/git/dpdk
> -   scapy: http://www.secdev.org/projects/scapy/
> +
> +   - DPDK: http://dpdk.org/git/dpdk
> +   - scapy: http://www.secdev.org/projects/scapy/
> 
>  3. Copy specific ice package to /lib/firmware/intel/ice/ddp/ice.pkg
>     Then reboot server, and compile DPDK
> @@ -130,7 +133,9 @@ Prerequisites
>      testpmd> port config 0 udp_tunnel_port add vxlan 4789
>      testpmd> start
> 
> -   Notes: if need two ports environment, launch ``testpmd`` with the
> following arguments::
> +.. notes::
> +
> +   if need two ports environment, launch ``testpmd`` with the following
> arguments::
> 
>      ./testpmd -c 0xff -n 6 -w 86:00.0 -w 86:00.1 -- -i --portmask=0xff --rxq=64 -
> -txq=64 --port-topology=loop
> 
> diff --git a/test_plans/cvl_switch_filter_test_plan.rst
> b/test_plans/cvl_switch_filter_test_plan.rst
> index 630fcc3..833125a 100644
> --- a/test_plans/cvl_switch_filter_test_plan.rst
> +++ b/test_plans/cvl_switch_filter_test_plan.rst
> @@ -141,11 +141,13 @@ Prerequisites
>  =============
> 
>  1. Hardware:
> -   columbiaville_25g/columbiaville_100g
> +
> +   - columbiaville_25g/columbiaville_100g
> 
>  2. software:
> -   dpdk: http://dpdk.org/git/dpdk
> -   scapy: http://www.secdev.org/projects/scapy/
> +
> +   - dpdk: http://dpdk.org/git/dpdk
> +   - scapy: http://www.secdev.org/projects/scapy/
> 
>  3. Copy comm #1 package to /lib/firmware/intel/ice/ddp/ice.pkg,
>     then reboot server, and compile DPDK.
> @@ -181,9 +183,11 @@ Test case: VXLAN non-pipeline mode
> 
>  2. create switch filter rules and verify
> 
> -* MAC_IPV4_VXLAN_IPV4_FRAG
> +MAC_IPV4_VXLAN_IPV4_FRAG
> +------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -205,7 +209,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -227,7 +232,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -249,9 +255,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_IPV4_PAY
> +MAC_IPV4_VXLAN_IPV4_PAY
> +-----------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -273,7 +281,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -295,7 +304,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -317,9 +327,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_IPV4_UDP_PAY
> +MAC_IPV4_VXLAN_IPV4_UDP_PAY
> +---------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -338,7 +350,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -357,7 +370,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -376,9 +390,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_IPV4_TCP
> +MAC_IPV4_VXLAN_IPV4_TCP
> +-----------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -397,7 +413,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 5
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -416,7 +433,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -435,9 +453,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_IPV4_SCTP (not support in 19.11)
> +MAC_IPV4_VXLAN_IPV4_SCTP (not support in 19.11)
> +----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +---------------
> 
>  create a rule::
> 
> @@ -456,7 +476,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -475,7 +496,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -494,9 +516,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_IPV4_ICMP (not support in 19.11)
> +MAC_IPV4_VXLAN_IPV4_ICMP (not support in 19.11)
> +----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -514,7 +538,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -532,7 +557,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -550,9 +576,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_MAC_IPV4_FRAG
> +MAC_IPV4_VXLAN_MAC_IPV4_FRAG
> +----------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -575,7 +603,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -598,7 +627,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -621,9 +651,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_MAC_IPV4_PAY
> +MAC_IPV4_VXLAN_MAC_IPV4_PAY
> +---------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -646,7 +678,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -669,7 +702,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -692,9 +726,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_MAC_IPV4_UDP_PAY
> +MAC_IPV4_VXLAN_MAC_IPV4_UDP_PAY
> +--------------------------------
> 
> -1) to queue action
> +to queue action
> +---------------
> 
>  create a rule::
> 
> @@ -713,7 +749,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 1
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -732,7 +769,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -751,9 +789,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_MAC_IPV4_TCP
> +MAC_IPV4_VXLAN_MAC_IPV4_TCP
> +---------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -772,7 +812,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 1
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -791,7 +832,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 1 and 2
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -810,9 +852,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_MAC_IPV4_SCTP (not support in 19.11)
> +MAC_IPV4_VXLAN_MAC_IPV4_SCTP (not support in 19.11)
> +---------------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -831,7 +875,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -850,7 +895,9 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -869,9 +916,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_MAC_IPV4_ICMP (not support in 19.11)
> +MAC_IPV4_VXLAN_MAC_IPV4_ICMP (not support in 19.11)
> +---------------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -889,7 +938,8 @@ send a mismatched packet::
> 
>  verify this packet not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -907,7 +957,9 @@ send a mismatched packet::
> 
>  verify this packet not to queue 4 and 5
> 
> -3) drop action
> +
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -943,9 +995,11 @@ Test case: VXLAN pipeline mode
> 
>  1. create switch filter rules and verify
> 
> -* MAC_IPV4_VXLAN_IPV4_FRAG
> +MAC_IPV4_VXLAN_IPV4_FRAG
> +------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -966,7 +1020,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -987,7 +1042,9 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1008,9 +1065,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_IPV4_PAY (not support in 19.11)
> +MAC_IPV4_VXLAN_IPV4_PAY (not support in 19.11)
> +----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -1044,7 +1103,8 @@ send a mismatched packet::
> 
>  verify this packet not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -1078,7 +1138,8 @@ send a mismatched packet::
> 
>  verify this packet not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -1112,9 +1173,11 @@ send a mismatched packet::
> 
>  verify this packet not dropped
> 
> -* MAC_IPV4_VXLAN_IPV4_UDP_PAY
> +MAC_IPV4_VXLAN_IPV4_UDP_PAY
> +---------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1133,7 +1196,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1152,7 +1216,9 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1171,9 +1237,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_IPV4_TCP
> +MAC_IPV4_VXLAN_IPV4_TCP
> +-----------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1192,7 +1260,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1211,7 +1280,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1230,9 +1300,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_IPV4_SCTP (not support in 19.11)
> +MAC_IPV4_VXLAN_IPV4_SCTP (not support in 19.11)
> +----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1251,7 +1323,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1270,7 +1343,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1289,9 +1363,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_IPV4_ICMP (not support in 19.11)
> +MAC_IPV4_VXLAN_IPV4_ICMP (not support in 19.11)
> +----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1309,7 +1385,8 @@ send a mismatched packet::
> 
>  verify this packet not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1327,7 +1404,8 @@ send a mismatched packet::
> 
>  verify this packet not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1345,9 +1423,11 @@ send a mismatched packet::
> 
>  verify this packet not dropped
> 
> -* MAC_IPV4_VXLAN_IPV6_FRAG (not support in 19.11)
> +MAC_IPV4_VXLAN_IPV6_FRAG (not support in 19.11)
> +-----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1366,7 +1446,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1385,7 +1466,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1404,9 +1486,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_IPV6_PAY (not support in 19.11)
> +MAC_IPV4_VXLAN_IPV6_PAY (not support in 19.11)
> +----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -1440,7 +1524,8 @@ send a mismatched packet::
> 
>  verify this packet not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -1474,7 +1559,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -1508,9 +1594,11 @@ send mismatched packets::
> 
>  verify this packet not dropped
> 
> -* MAC_IPV4_VXLAN_IPV6_UDP_PAY (not support in 19.11)
> +MAC_IPV4_VXLAN_IPV6_UDP_PAY (not support in 19.11)
> +--------------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1529,7 +1617,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1548,7 +1637,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 1 and 2
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1567,9 +1657,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_IPV6_TCP (not support in 19.11)
> +MAC_IPV4_VXLAN_IPV6_TCP (not support in 19.11)
> +----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1588,7 +1680,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1607,7 +1700,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1626,9 +1720,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_IPV6_SCTP (not support in 19.11)
> +MAC_IPV4_VXLAN_IPV6_SCTP (not support in 19.11)
> +-----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1647,7 +1743,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1666,7 +1763,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1685,9 +1783,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_VXLAN_IPV6_ICMPV6 (not support in 19.11)
> +MAC_IPV4_VXLAN_IPV6_ICMPV6 (not support in 19.11)
> +-------------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1705,7 +1805,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1723,7 +1824,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1764,9 +1866,10 @@ Test case: NVGRE non-pipeline mode
> 
>  2. create switch filter rules and verify
> 
> -* MAC_IPV4_NVGRE_IPV4_FRAG
> +MAC_IPV4_NVGRE_IPV4_FRAG
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1788,7 +1891,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1810,7 +1914,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1832,9 +1937,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_IPV4_PAY
> +MAC_IPV4_NVGRE_IPV4_PAY
> +-----------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1856,7 +1963,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1878,7 +1986,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1900,9 +2009,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_IPV4_UDP_PAY
> +MAC_IPV4_NVGRE_IPV4_UDP_PAY
> +---------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1921,7 +2032,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1940,7 +2052,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1959,9 +2072,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_IPV4_TCP
> +MAC_IPV4_NVGRE_IPV4_TCP
> +-----------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1980,7 +2095,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 1
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -1999,7 +2115,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 1 and 2
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2018,9 +2135,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_IPV4_SCTP (not support in 19.11)
> +MAC_IPV4_NVGRE_IPV4_SCTP (not support in 19.11)
> +-----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2039,7 +2158,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2058,7 +2178,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2077,9 +2198,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_IPV4_ICMP (not support in 19.11)
> +MAC_IPV4_NVGRE_IPV4_ICMP (not support in 19.11)
> +-----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2097,7 +2220,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2115,7 +2239,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2133,9 +2258,11 @@ send mismatched packets::
> 
>  verify this packet not dropped
> 
> -* MAC_IPV4_NVGRE_MAC_IPV4_FRAG
> +MAC_IPV4_NVGRE_MAC_IPV4_FRAG
> +----------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2158,7 +2285,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2181,7 +2309,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2204,9 +2333,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_MAC_IPV4_PAY
> +MAC_IPV4_NVGRE_MAC_IPV4_PAY
> +---------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2229,7 +2360,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2252,7 +2384,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2275,9 +2408,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_MAC_IPV4_UDP_PAY
> +MAC_IPV4_NVGRE_MAC_IPV4_UDP_PAY
> +-------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2296,7 +2431,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2315,7 +2451,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2334,9 +2471,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_MAC_IPV4_TCP
> +MAC_IPV4_NVGRE_MAC_IPV4_TCP
> +---------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2355,7 +2494,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2374,7 +2514,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2393,9 +2534,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_MAC_IPV4_SCTP (not support in 19.11)
> +MAC_IPV4_NVGRE_MAC_IPV4_SCTP (not support in 19.11)
> +---------------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2414,7 +2557,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2433,7 +2577,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2452,9 +2597,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_MAC_IPV4_ICMP (not support in 19.11)
> +MAC_IPV4_NVGRE_MAC_IPV4_ICMP (not support in 19.11)
> +---------------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2472,7 +2619,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2490,7 +2638,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2526,9 +2675,11 @@ Test case: NVGRE pipeline mode
> 
>  1. create switch filter rules and verify
> 
> -* MAC_IPV4_NVGRE_IPV4_FRAG
> +MAC_IPV4_NVGRE_IPV4_FRAG
> +------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2549,7 +2700,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2570,7 +2722,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2591,9 +2744,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_IPV4_PAY (not support in 19.11)
> +MAC_IPV4_NVGRE_IPV4_PAY (not support in 19.11)
> +----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -2627,7 +2782,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -2661,7 +2817,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -2695,9 +2852,11 @@ send mismatched packets::
> 
>  verify this packet not dropped
> 
> -* MAC_IPV4_NVGRE_IPV4_UDP_PAY
> +MAC_IPV4_NVGRE_IPV4_UDP_PAY
> +---------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2716,7 +2875,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2735,7 +2895,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2754,9 +2915,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_IPV4_TCP
> +MAC_IPV4_NVGRE_IPV4_TCP
> +-----------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2775,7 +2938,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2794,7 +2958,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2813,9 +2978,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_IPV4_SCTP (not support in 19.11)
> +MAC_IPV4_NVGRE_IPV4_SCTP (not support in 19.11)
> +-----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2834,7 +3001,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2853,7 +3021,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2872,9 +3041,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_IPV4_ICMP (not support in 19.11)
> +MAC_IPV4_NVGRE_IPV4_ICMP (not support in 19.11)
> +-----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2892,7 +3063,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2910,7 +3082,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2928,9 +3101,11 @@ send mismatched packets::
> 
>  verify this packet not dropped
> 
> -* MAC_IPV4_NVGRE_IPV6_FRAG (not support in 19.11)
> +MAC_IPV4_NVGRE_IPV6_FRAG (not support in 19.11)
> +-----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2949,7 +3124,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2968,7 +3144,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -2987,9 +3164,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_IPV6_PAY (not support in 19.11)
> +MAC_IPV4_NVGRE_IPV6_PAY (not support in 19.11)
> +----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -3023,7 +3202,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -3057,7 +3237,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -3091,9 +3272,11 @@ send mismatched packets::
> 
>  verify this packet not dropped
> 
> -* MAC_IPV4_NVGRE_IPV6_UDP_PAY (not support in 19.11)
> +MAC_IPV4_NVGRE_IPV6_UDP_PAY (not support in 19.11)
> +--------------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3112,7 +3295,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3131,7 +3315,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3150,9 +3335,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_IPV6_TCP (not support in 19.11)
> +MAC_IPV4_NVGRE_IPV6_TCP (not support in 19.11)
> +----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3171,7 +3358,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 1
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3190,7 +3378,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3209,9 +3398,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_IPV6_SCTP (not support in 19.11)
> +MAC_IPV4_NVGRE_IPV6_SCTP (not support in 19.11)
> +-----------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3230,7 +3421,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 5
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3249,7 +3441,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3268,9 +3461,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_NVGRE_IPV6_ICMPV6 (not support in 19.11)
> +MAC_IPV4_NVGRE_IPV6_ICMPV6 (not support in 19.11)
> +-------------------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3288,7 +3483,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3306,7 +3502,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3347,9 +3544,11 @@ Test case: PPPOD non-pipeline mode
> 
>  2. create switch filter rules and verify
> 
> -* MAC_PPPOD_PAY
> +MAC_PPPOD_PAY
> +-------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create rules::
> 
> @@ -3367,7 +3566,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3385,7 +3585,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3426,9 +3627,11 @@ Test case: PPPOE non-pipeline mode
> 
>  2. create switch filter rules and verify
> 
> -* MAC_PPPOE_PAY
> +MAC_PPPOE_PAY
> +-------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create rules::
> 
> @@ -3446,7 +3649,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3464,7 +3668,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3482,9 +3687,11 @@ send mismatched packets::
> 
>  verify this packet not dropped
> 
> -* MAC_PPPOE_IPV4_PAY
> +MAC_PPPOE_IPV4_PAY
> +------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3503,7 +3710,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 1
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3522,7 +3730,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3559,9 +3768,11 @@ Test case: IPv4/IPv6 + TCP/UDP pipeline mode
> 
>  1. create switch filter rules and verify
> 
> -* MAC_IPV4_FRAG
> +MAC_IPV4_FRAG
> +-------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3600,7 +3811,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3639,7 +3851,8 @@ send mismatched packets::
> 
>    verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3678,9 +3891,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_PAY
> +MAC_IPV4_PAY
> +------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -3714,7 +3929,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -3748,7 +3964,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -3782,9 +3999,11 @@ send mismatched packets::
> 
>  verify this packet not dropped
> 
> -* MAC_IPV4_UDP_PAY
> +MAC_IPV4_UDP_PAY
> +----------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3803,7 +4022,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3822,7 +4042,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3841,9 +4062,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_TCP
> +MAC_IPV4_TCP
> +------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3862,7 +4085,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3881,7 +4105,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3900,9 +4125,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_SCTP (not support in 19.11)
> +MAC_IPV4_SCTP (not support in 19.11)
> +------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3921,7 +4148,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3940,7 +4168,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3959,9 +4188,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV4_ICMP (not support in 19.11)
> +MAC_IPV4_ICMP (not support in 19.11)
> +------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3979,7 +4210,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 2
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -3997,7 +4229,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4015,9 +4248,10 @@ send mismatched packets::
> 
>  verify this packet not dropped
> 
> -* MAC_IPV6_FRAG
> +MAC_IPV6_FRAG
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule with src ipv6 + dst ipv6::
> 
> @@ -4053,7 +4287,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule with src ipv6 + dst ipv6::
> 
> @@ -4089,7 +4324,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule with src ipv6 + dst ipv6::
> 
> @@ -4125,9 +4361,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV6_PAY (not support in 19.11)
> +MAC_IPV6_PAY (not support in 19.11)
> +-----------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -4161,7 +4399,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 3
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -4195,7 +4434,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule for tcp::
> 
> @@ -4229,9 +4469,11 @@ send mismatched packets::
> 
>  verify this packet not dropped
> 
> -* MAC_IPV6_UDP_PAY
> +MAC_IPV6_UDP_PAY
> +----------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4250,7 +4492,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 5
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4269,7 +4512,8 @@ send mismatched packets::
> 
>  verify these packets not to queue 2 and 3
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4288,9 +4532,11 @@ send mismatched packets::
> 
>  verify these packets not dropped
> 
> -* MAC_IPV6_TCP
> +MAC_IPV6_TCP
> +------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4309,7 +4555,8 @@ send mismatched packets::
> 
>  verify these two packets not to queue 4
> 
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4328,7 +4575,8 @@ send mismatched packets::
> 
>  verify these two packets not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4347,9 +4595,11 @@ send mismatched packets::
> 
>  verify these two packets not dropped
> 
> -* MAC_IPV6_SCTP (not support in 19.11)
> +MAC_IPV6_SCTP (not support in 19.11)
> +------------------------------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4368,65 +4618,8 @@ send mismatched packets::
> 
>  verify these two packets not to queue 4
> 
> -2) to queue group action
> -
> -create a rule::
> -
> -  testpmd> flow create 0 priority 0 ingress pattern eth / ipv6 dst is
> CDCD:910A:2222:5498:8475:1111:3900:2020 tc is 3 / sctp src is 25 dst is 23 /
> end actions rss queues 2 3 end / end
> -
> -send matched packets::
> -
> -
> sendp([Ether()/IPv6(src="CDCD:910A:2222:5498:8475:1111:3900:1515",dst="
> CDCD:910A:2222:5498:8475:1111:3900:2020",tc=3)/SCTP(sport=25,dport=23)
> /Raw('x'*80)],iface="enp27s0f2",count=1)
> -
> -verify this packet to queue 2 or 3
> -
> -send mismatched packets::
> -
> -
> sendp([Ether()/IPv6(src="CDCD:910A:2222:5498:8475:1111:3900:1515",dst="
> CDCD:910A:2222:5498:8475:1111:3900:2020",tc=3)/SCTP(sport=1,dport=23)/
> Raw('x'*80)],iface="enp27s0f2",count=1)
> -
> sendp([Ether()/IPv6(src="CDCD:910A:2222:5498:8475:1111:3900:1515",dst="
> CDCD:910A:2222:5498:8475:1111:3900:2020",tc=3)/SCTP(sport=25,dport=9)/
> Raw('x'*80)],iface="enp27s0f2",count=1)
> -
> -verify these two packets not to queue 2 and 3
> -
> -3) drop action
> -
> -create a rule::
> -
> -  testpmd> flow create 0 priority 0 ingress pattern eth / ipv6 dst is
> CDCD:910A:2222:5498:8475:1111:3900:2020 tc is 3 / sctp src is 25 dst is 23 /
> end actions drop / end
> -
> -send matched packets::
> -
> -
> sendp([Ether()/IPv6(src="CDCD:910A:2222:5498:8475:1111:3900:1515",dst="
> CDCD:910A:2222:5498:8475:1111:3900:2020",tc=3)/SCTP(sport=25,dport=23)
> /Raw('x'*80)],iface="enp27s0f2",count=1)
> -
> -verify this packet dropped
> -
> -send mismatched packets::
> -
> -
> sendp([Ether()/IPv6(src="CDCD:910A:2222:5498:8475:1111:3900:1515",dst="
> CDCD:910A:2222:5498:8475:1111:3900:2020",tc=3)/SCTP(sport=1,dport=23)/
> Raw('x'*80)],iface="enp27s0f2",count=1)
> -
> sendp([Ether()/IPv6(src="CDCD:910A:2222:5498:8475:1111:3900:1515",dst="
> CDCD:910A:2222:5498:8475:1111:3900:2020",tc=3)/SCTP(sport=25,dport=9)/
> Raw('x'*80)],iface="enp27s0f2",count=1)
> -
> -verify these two packets not dropped
> -
> -* MAC_IPV6_ICMPV6 (not support in 19.11)
> -
> -1) to queue action
> -
> -create a rule::
> -
> -  testpmd> flow create 0 priority 0 ingress pattern eth / ipv6 dst is
> CDCD:910A:2222:5498:8475:1111:3900:2020 tc is 3 / icmp type is 0x01 / end
> actions queue index 2 / end
> -
> -send matched packets::
> -
> -
> sendp([Ether()/IPv6(src="CDCD:910A:2222:5498:8475:1111:3900:1515",dst="
> CDCD:910A:2222:5498:8475:1111:3900:2020",tc=3)/ICMP(type=0x01)/Raw('x'
> *80)],iface="enp27s0f2",count=1)
> -
> -verify this packet to queue 2
> -
> -send mismatched packets::
> -
> -
> sendp([Ether()/IPv6(src="CDCD:910A:2222:5498:8475:1111:3900:1515",dst="
> CDCD:910A:2222:5498:8475:1111:3900:2020",tc=3)/ICMP(type=0x03)/Raw('x'
> *80)],iface="enp27s0f2",count=1)
> -
> -verify this packet not to queue 2
> -
> -2) to queue group action
> +to queue group action
> +^^^^^^^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4444,7 +4637,8 @@ send mismatched packets::
> 
>  verify this packet not to queue 4 and 5
> 
> -3) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4484,9 +4678,11 @@ Test case: IPv4/IPv6 + TCP/UDP non-pipeline
> mode
> 
>  2. create switch filter rules and verify
> 
> -* MAC_IPV4_PAY
> +MAC_IPV4_PAY
> +------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4498,7 +4694,8 @@ send matched packets::
> 
>  verify these 100 packets to queue 4
> 
> -2) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4510,9 +4707,11 @@ send matched packets::
> 
>  verify theses 100 packets dropped
> 
> -* MAC_IPV4_UDP_PAY
> +MAC_IPV4_UDP_PAY
> +----------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4524,7 +4723,8 @@ send matched packets::
> 
>  verify these 100 packets to queue 2
> 
> -2) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4536,9 +4736,11 @@ send matched packets::
> 
>  verify theses 100 packets dropped
> 
> -* MAC_IPV4_TCP_PAY
> +MAC_IPV4_TCP_PAY
> +----------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4550,7 +4752,8 @@ send matched packets::
> 
>  verify these 100 packets to queue 3
> 
> -2) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4563,9 +4766,11 @@ send matched packets::
>  verify theses 100 packets dropped
> 
> 
> -* MAC_IPV6_PAY
> +MAC_IPV6_PAY
> +------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4577,7 +4782,8 @@ send matched packets::
> 
>  verify these 100 packets to queue 8
> 
> -2) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4589,9 +4795,11 @@ send matched packets::
> 
>  verify theses 100 packets dropped
> 
> -* MAC_IPV6_FRAG
> +MAC_IPV6_FRAG
> +-------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4603,7 +4811,8 @@ send matched packets::
> 
>  verify these 100 packets to queue 10
> 
> -2) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4615,9 +4824,11 @@ send matched packets::
> 
>  verify theses 100 packets dropped
> 
> -* MAC_IPV6_UDP
> +MAC_IPV6_UDP
> +------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4629,7 +4840,8 @@ send matched packets::
> 
>  verify these 100 packets to queue 6
> 
> -2) drop action
> +drop action
> +^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4641,9 +4853,11 @@ send matched packets::
> 
>  verify theses 100 packets dropped
> 
> -* MAC_IPV6_TCP
> +MAC_IPV6_TCP
> +------------
> 
> -1) to queue action
> +to queue action
> +^^^^^^^^^^^^^^^
> 
>  create a rule::
> 
> @@ -4655,7 +4869,6 @@ send matched packets::
> 
>  verify these 100 packets to queue 12
> 
> -2) drop action
> 
>  create a rule::
> 
> --
> 1.8.3.1


      reply	other threads:[~2020-01-13  3:14 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-13 11:06 Lijuan Tu
2020-01-13  3:14 ` Tu, Lijuan [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=8CE3E05A3F976642AAB0F4675D0AD20E0BBA8574@SHSMSX101.ccr.corp.intel.com \
    --to=lijuan.tu@intel.com \
    --cc=dts@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).