get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/94794/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 94794,
    "url": "https://patches.dpdk.org/api/patches/94794/?format=api",
    "web_url": "https://patches.dpdk.org/project/dts/patch/20210624193658.9109-1-zhiminx.huang@intel.com/",
    "project": {
        "id": 3,
        "url": "https://patches.dpdk.org/api/projects/3/?format=api",
        "name": "DTS",
        "link_name": "dts",
        "list_id": "dts.dpdk.org",
        "list_email": "dts@dpdk.org",
        "web_url": "",
        "scm_url": "git://dpdk.org/tools/dts",
        "webscm_url": "http://git.dpdk.org/tools/dts/",
        "list_archive_url": "https://inbox.dpdk.org/dts",
        "list_archive_url_format": "https://inbox.dpdk.org/dts/{}",
        "commit_url_format": ""
    },
    "msgid": "<20210624193658.9109-1-zhiminx.huang@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dts/20210624193658.9109-1-zhiminx.huang@intel.com",
    "date": "2021-06-24T19:36:58",
    "name": "[V3] test_plans/iavf_fdir: add new test plans",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "716ddf4d87a038871485254d515b6740343cf393",
    "submitter": {
        "id": 1685,
        "url": "https://patches.dpdk.org/api/people/1685/?format=api",
        "name": "Huang, ZhiminX",
        "email": "zhiminx.huang@intel.com"
    },
    "delegate": null,
    "mbox": "https://patches.dpdk.org/project/dts/patch/20210624193658.9109-1-zhiminx.huang@intel.com/mbox/",
    "series": [
        {
            "id": 17472,
            "url": "https://patches.dpdk.org/api/series/17472/?format=api",
            "web_url": "https://patches.dpdk.org/project/dts/list/?series=17472",
            "date": "2021-06-24T19:36:58",
            "name": "[V3] test_plans/iavf_fdir: add new test plans",
            "version": 3,
            "mbox": "https://patches.dpdk.org/series/17472/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/94794/comments/",
    "check": "pending",
    "checks": "https://patches.dpdk.org/api/patches/94794/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dts-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id D189FA0547;\n\tThu, 24 Jun 2021 13:08:41 +0200 (CEST)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id B00A140140;\n\tThu, 24 Jun 2021 13:08:41 +0200 (CEST)",
            "from mga11.intel.com (mga11.intel.com [192.55.52.93])\n by mails.dpdk.org (Postfix) with ESMTP id 0A95940040\n for <dts@dpdk.org>; Thu, 24 Jun 2021 13:08:38 +0200 (CEST)",
            "from fmsmga005.fm.intel.com ([10.253.24.32])\n by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 24 Jun 2021 04:08:37 -0700",
            "from unknown (HELO localhost.localdomain) ([10.240.183.103])\n by fmsmga005-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 24 Jun 2021 04:08:32 -0700"
        ],
        "IronPort-SDR": [
            "\n hKTJiJp3sxtKoBYONTw1bUmRUdt41c1/WfJbyHGs1o5PRPVbnLkRzM/JUlbAGy11R5giKBaPJJ\n jE20bDKnE9eA==",
            "\n Qsb4VQpGYQlehzptcinPZQMkzVMcawn+nFxm2LLDZM5RLC1Lrsfh3++mumL3CMZ1SclTaFvEy9\n SBsfQBEJsxhA=="
        ],
        "X-IronPort-AV": [
            "E=McAfee;i=\"6200,9189,10024\"; a=\"204441159\"",
            "E=Sophos;i=\"5.83,296,1616482800\"; d=\"scan'208\";a=\"204441159\"",
            "E=Sophos;i=\"5.83,296,1616482800\"; d=\"scan'208\";a=\"642279390\""
        ],
        "From": "Zhimin Huang <zhiminx.huang@intel.com>",
        "To": "dts@dpdk.org",
        "Cc": "Zhimin Huang <zhiminx.huang@intel.com>",
        "Date": "Fri, 25 Jun 2021 03:36:58 +0800",
        "Message-Id": "<20210624193658.9109-1-zhiminx.huang@intel.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "Subject": "[dts] [PATCH V3] test_plans/iavf_fdir: add new test plans",
        "X-BeenThere": "dts@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "test suite reviews and discussions <dts.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dts>,\n <mailto:dts-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dts/>",
        "List-Post": "<mailto:dts@dpdk.org>",
        "List-Help": "<mailto:dts-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dts>,\n <mailto:dts-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dts-bounces@dpdk.org",
        "Sender": "\"dts\" <dts-bounces@dpdk.org>"
    },
    "content": "Add fdir with gtpu inner l3/l4 test palns.\n\nv3:\n- fix testplan wrong format\n\nSigned-off-by: Zhimin Huang <zhiminx.huang@intel.com>\n---\n test_plans/iavf_fdir_test_plan.rst | 1725 +++++++++++++++++++++++++++-\n 1 file changed, 1669 insertions(+), 56 deletions(-)",
    "diff": "diff --git a/test_plans/iavf_fdir_test_plan.rst b/test_plans/iavf_fdir_test_plan.rst\nindex 1fd7b61b..ac423903 100644\n--- a/test_plans/iavf_fdir_test_plan.rst\n+++ b/test_plans/iavf_fdir_test_plan.rst\n@@ -46,59 +46,107 @@ Description\n Pattern and input set\n ---------------------\n \n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |    Packet Type               |        Pattern             |            Input Set                                              |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    | IPv4/IPv6 + TCP/UDP/SCTP     |      MAC_IPV4_PAY          | [Source IP], [Dest IP], [IP protocol], [TTL], [DSCP]              |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |      MAC_IPV4_UDP          | [Source IP], [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port] |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |      MAC_IPV4_TCP          | [Source IP], [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port] |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |      MAC_IPV4_SCTP         | [Source IP], [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port] |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |      MAC_IPV6_PAY          | [Source IP], [Dest IP], [IP protocol], [TTL], [TC]                |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |      MAC_IPV6_UDP          | [Source IP], [Dest IP], [TTL], [TC], [Source Port], [Dest Port]   |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |      MAC_IPV6_TCP          | [Source IP], [Dest IP], [TTL], [TC], [Source Port], [Dest Port]   |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |      MAC_IPV6_SCTP         | [Source IP], [Dest IP], [TTL], [TC], [Source Port], [Dest Port]   |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    | L2 Ethertype                 |      L2 Ethertype          | [Ethertype]                                                       |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    | PFCP                         |   MAC_IPV4_PFCP_NODE       | [Dest Port], [S-field]                                            |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |   MAC_IPV4_PFCP_SESSION    | [Dest Port], [S-field]                                            |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |   MAC_IPV6_PFCP_NODE       | [Dest Port], [S-field]                                            |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |   MAC_IPV6_PFCP_SESSION    | [Dest Port], [S-field]                                            |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    | IPv4/IPv6 + GTP-U            |   MAC_IPV4_GTPU            | [Source IP], [Dest IP], [TEID]                                    |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |   MAC_IPV4_GTPU_EH         | [Source IP], [Dest IP], [TEID], [QFI]                             |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |   MAC_IPV6_GTPU            | [Source IPV6], [Dest IPV6], [TEID]                                |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |   MAC_IPV6_GTPU_EH         | [Source IPV6], [Dest IPV6], [TEID], [QFI]                         |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    | L2TPv3                       |      MAC_IPV4_L2TPv3       | [Session ID]                                                      |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |      MAC_IPV6_L2TPv3       | [Session ID]                                                      |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    | ESP                          |      MAC_IPV4_ESP          | [SPI]                                                             |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |      MAC_IPV6_ESP          | [SPI]                                                             |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |      MAC_IPV4_AH           | [SPI]                                                             |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |      MAC_IPV6_AH           | [SPI]                                                             |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |     MAC_IPV4_NAT-T-ESP     | [Source IP], [Dest IP], [SPI]                                     |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n-    |                              |     MAC_IPV6_NAT-T-ESP     | [Source IP], [Dest IP], [SPI]                                     |\n-    +------------------------------+----------------------------+-------------------------------------------------------------------+\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |    Packet Type               |        Pattern               |            Input Set                                              |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    | IPv4/IPv6 + TCP/UDP/SCTP     |MAC_IPV4_PAY                  | [Source IP], [Dest IP], [IP protocol], [TTL], [DSCP]              |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_UDP                  | [Source IP], [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port] |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_TCP                  | [Source IP], [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port] |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_SCTP                 | [Source IP], [Dest IP], [TTL], [DSCP], [Source Port], [Dest Port] |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV6_PAY                  | [Source IP], [Dest IP], [IP protocol], [TTL], [TC]                |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV6_UDP                  | [Source IP], [Dest IP], [TTL], [TC], [Source Port], [Dest Port]   |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV6_TCP                  | [Source IP], [Dest IP], [TTL], [TC], [Source Port], [Dest Port]   |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV6_SCTP                 | [Source IP], [Dest IP], [TTL], [TC], [Source Port], [Dest Port]   |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    | L2 Ethertype                 |L2 Ethertype                  | [Ethertype]                                                       |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    | PFCP                         |MAC_IPV4_PFCP_NODE            | [Dest Port], [S-field]                                            |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_PFCP_SESSION         | [Dest Port], [S-field]                                            |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV6_PFCP_NODE            | [Dest Port], [S-field]                                            |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV6_PFCP_SESSION         | [Dest Port], [S-field]                                            |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    | L2TPv3                       |MAC_IPV4_L2TPv3               | [Session ID]                                                      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV6_L2TPv3               | [Session ID]                                                      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    | ESP                          |MAC_IPV4_ESP                  | [SPI]                                                             |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV6_ESP                  | [SPI]                                                             |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_AH                   | [SPI]                                                             |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV6_AH                   | [SPI]                                                             |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_NAT-T-ESP            | [Source IP], [Dest IP], [SPI]                                     |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV6_NAT-T-ESP            | [Source IP], [Dest IP], [SPI]                                     |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    | IPv4 + GTP-U  outer          |MAC_IPV4_GTPU                 | outer:[Source IP], [Dest IP], [TEID]                              |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH              | outer:[Source IP], [Dest IP], [TEID], [QFI]                       |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    | IPv6 + GTP-U  outer          |MAC_IPV6_GTPU                 | outer:[Source IPV6], [Dest IPV6], [TEID]                          |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV6_GTPU_EH              | outer:[Source IPV6], [Dest IPV6], [TEID], [QFI]                   |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    | IPv4 + GTP-U + inner IPv4    |MAC_IPV4_GTPU_IPV4            | inner:[Source IP], [Dest IP]                                      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_IPV4_UDP        | inner:[Source IP], [Dest IP], [Source Port], [Dest Port]          |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_IPV4_TCP        | inner:[Source IP], [Dest IP], [Source Port], [Dest Port]          |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_IPV4         | inner:[Source IP], [Dest IP]                                      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_IPV4_UDP     | inner:[Source IP], [Dest IP], [Source Port], [Dest Port]          |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_IPV4_TCP     | inner:[Source IP], [Dest IP], [Source Port], [Dest Port]          |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_DL_IPV4      | inner:[Source IP], [Dest IP]                                      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_DL_IPV4_UDP  | inner:[Source IP], [Dest IP], [Source Port], [Dest Port]          |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_DL_IPV4_TCP  | inner:[Source IP], [Dest IP], [Source Port], [Dest Port]          |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_UL_IPV4      | inner:[Source IP], [Dest IP]                                      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_UL_IPV4_UDP  | inner:[Source IP], [Dest IP], [Source Port], [Dest Port]          |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_UL_IPV4_TCP  | inner:[Source IP], [Dest IP], [Source Port], [Dest Port]          |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    | IPv4 + GTP-U + inner IPv6    |MAC_IPV4_GTPU_IPV6            | inner:[Source IPv6], [Dest IPv6]                                  |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_IPV6_UDP        | inner:[Source IPv6], [Dest IPv6], [Source Port], [Dest Port]      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_IPV6_TCP        | inner:[Source IPv6], [Dest IPv6], [Source Port], [Dest Port]      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_IPV6         | inner:[Source IPv6], [Dest IPv6]                                  |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_IPV6_UDP     | inner:[Source IPv6], [Dest IPv6], [Source Port], [Dest Port]      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_IPV6_TCP     | inner:[Source IPv6], [Dest IPv6], [Source Port], [Dest Port]      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_UL_IPV6      | inner:[Source IPv6], [Dest IPv6]                                  |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_UL_IPV6_UDP  | inner:[Source IPv6], [Dest IPv6], [Source Port], [Dest Port]      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_UL_IPV6_TCP  | inner:[Source IPv6], [Dest IPv6], [Source Port], [Dest Port]      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_UL_IPV6      | inner:[Source IPv6], [Dest IPv6]                                  |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_UL_IPV6_UDP  | inner:[Source IPv6], [Dest IPv6], [Source Port], [Dest Port]      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n+    |                              |MAC_IPV4_GTPU_EH_UL_IPV6_TCP  | inner:[Source IPv6], [Dest IPv6], [Source Port], [Dest Port]      |\n+    +------------------------------+------------------------------+-------------------------------------------------------------------+\n \n \n Supported function type\n@@ -191,7 +239,7 @@ Default parameters\n \n     [Dest MAC]: 00:11:22:33:44:88\n \n-   IPv4::\n+   outer/inner IPv4::\n \n     [Source IP]: 192.168.0.20\n     [Dest IP]: 192.168.0.21\n@@ -199,7 +247,7 @@ Default parameters\n     [TTL]: 2\n     [DSCP]: 4\n \n-   IPv6::\n+   outer/inner IPv6::\n \n     [Source IPv6]: 2001::2\n     [Dest IPv6]: CDCD:910A:2222:5498:8475:1111:3900:2020\n@@ -582,6 +630,382 @@ Send packets\n     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(dst=\"1111:2222:3333:4444:5555:6666:7777:9999\")/UDP(dport=4500)/ESP(spi=2)/Raw('x'*480),iface=\"enp134s0f1\")\n     sendp(Ether(dst='00:11:22:33:44:55')/IPv6(src=\"1111:2222:3333:4444:5555:6666:7777:8888\")/UDP(dport=4500)/ESP(spi=2)/Raw('x'*480),iface=\"enp134s0f1\")\n \n+* MAC_IPV4_GTPU_IPV4\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\", frag=1)/Raw('x'*20)\n+    pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP()/Raw('x'*20)\n+    pkt4 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt5 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/ICMP()/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.22\", dst=\"192.168.0.23\")/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/SCTP()/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_IPV4_TCP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.22\", dst=\"192.168.0.23\")/TCP(sport=24, dport=25)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6()/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_IPV4_UDP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.22\", dst=\"192.168.0.23\")/UDP(sport=24, dport=25)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6()/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_IPV4\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\", frag=1)/Raw('x'*20)\n+    pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP()/Raw('x'*20)\n+    pkt4 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt5 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/ICMP()/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.22\", dst=\"192.168.0.23\")/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_IPV4_TCP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.22\", dst=\"192.168.0.23\")/TCP(sport=25, dport=24)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6()/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_IPV4_UDP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.22\", dst=\"192.168.0.23\")/UDP(sport=25, dport=24)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6()/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_DL_IPV4\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+    pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\", frag=1)/Raw('x'*20)\n+    pkt4 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP()/Raw('x'*20)\n+    pkt5 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt6 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/ICMP()/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.22\", dst=\"192.168.0.23\")/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_DL_IPV4_TCP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.22\", dst=\"192.168.0.23\")/TCP(sport=25, dport=24)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6()/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_DL_IPV4_UDP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.22\", dst=\"192.168.0.23\")/UDP(sport=25, dport=24)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6()/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_UL_IPV4\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\", frag=1)/Raw('x'*20)\n+    pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP()/Raw('x'*20)\n+    pkt4 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt5 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/ICMP()/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.22\", dst=\"192.168.0.23\")/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/SCTP()/Raw('x'*20)\n+    pkt16 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/Raw('x'*20)\n+    pkt17 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_UL_IPV4_TCP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.22\", dst=\"192.168.0.23\")/TCP(sport=25, dport=24)/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/Raw('x'*20)\n+    pkt16 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6()/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt17 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_UL_IPV4_UDP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.22\", dst=\"192.168.0.23\")/UDP(sport=25, dport=24)/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/Raw('x'*20)\n+    pkt16 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+    pkt17 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6()/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+\n+* MAC_IPV4_GTPU_IPV6\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP()/Raw('x'*20)\n+    pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt4 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/ICMP()/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::4\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2024\")/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/SCTP()/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_IPV6_TCP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::4\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2024\")/TCP(sport=24, dport=25)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP()/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_IPV6_UDP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::4\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2024\")/UDP(sport=24, dport=25)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP()/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_IPV6\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP()/Raw('x'*20)\n+    pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt4 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/ICMP()/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::4\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2024\")/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/SCTP()/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_IPV6_TCP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::4\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2024\")/TCP(sport=24, dport=25)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP()/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_IPV6_UDP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::4\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2024\")/UDP(sport=24, dport=25)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP()/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_DL_IPV6\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP()/Raw('x'*20)\n+    pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt4 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/ICMP()/Raw('x'*20)\n+    pkt5 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::4\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2024\")/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_DL_IPV6_TCP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::4\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2024\")/TCP(sport=24, dport=25)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP()/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_DL_IPV6_UDP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::4\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2024\")/UDP(sport=24, dport=25)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+    pkt15 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP()/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_UL_IPV6\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+    pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP()/Raw('x'*20)\n+    pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt4 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/ICMP()/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::4\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2024\")/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/SCTP()/Raw('x'*20)\n+    pkt16 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_UL_IPV6_TCP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::4\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2024\")/TCP(sport=24, dport=25)/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt16 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP()/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt17 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP()/Raw('x'*20)\n+\n+* MAC_IPV4_GTPU_EH_UL_IPV6_UDP\n+\n+   matched packets::\n+\n+    pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+   mismatched packets::\n+\n+    pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+    pkt13 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::4\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2024\")/UDP(sport=24, dport=25)/Raw('x'*20)\n+    pkt14 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+    pkt16 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+    pkt17 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP()/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n \n Test case: flow validation\n ==========================\n@@ -4816,4 +5240,1193 @@ Test Case: MAC_IPV6_UDP_WITHOUT_INPUT_SET\n \n 1. replace \"tcp\" with \"udp\" in all the subcases of MAC_IPV6_TCP_WITHOUT_INPUT_SET pattern.\n 2. Then repeat all the steps in all the subcases of MAC_IPV6_TCP_WITHOUT_INPUT_SET pattern.\n-3. get the same result.\n\\ No newline at end of file\n+3. get the same result.\n+\n+Test case: MAC_IPV4_GTPU_IPV4 pattern\n+=====================================\n+\n+Subcase 1: MAC_IPV4_GTPU_IPV4 inner src ip queue index\n+------------------------------------------------------\n+all index cases steps and expected result are the same\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 / end actions queue index 1 / mark id 1 / end\n+\n+2. send matched packets, check the packets are distributed to queue 1 with FDIR matched ID=0x1.\n+   send mismatched packets, check the packets are not distributed to queue 1 without FDIR matched ID.\n+\n+3. verify rules can be listed and destroyed::\n+\n+    testpmd> flow list 0\n+\n+   check the rule listed.\n+   destroy the rule::\n+\n+    testpmd> flow destroy 0 rule 0\n+\n+4. verify matched packets are received without FDIR matched ID.\n+   Then check there is no rule listed.\n+\n+Subcase 2: MAC_IPV4_GTPU_IPV4 inner src ip rss queues\n+-----------------------------------------------------\n+all rss queues cases steps and expected result are the same\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 / end actions rss queues 2 3 end / mark id 1 / end\n+\n+2. send matched packets, check the packets are distributed to queue 2 or queue 3 with FDIR matched ID=0x1.\n+   send mismatched packets, check the packets are received without FDIR matched ID.\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are received without FDIR matched ID.\n+   Then check there is no rule listed.\n+\n+Subcase 3: MAC_IPV4_GTPU_IPV4 inner src ip passthru\n+---------------------------------------------------\n+all passthru cases steps and expected result are the same\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 / end actions passthru / mark id 1 / end\n+\n+2. send matched packets, check the packets are distributed by RSS with FDIR matched ID=0x1.\n+   send mismatched packets, check the packets are received without FDIR matched ID.\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are received without FDIR matched ID.\n+   Then check there is no rule listed.\n+\n+Subcase 4: MAC_IPV4_GTPU_IPV4 inner src ip drop\n+-----------------------------------------------\n+all drop cases steps and expected result are the same\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 / end actions drop / end\n+\n+2. send matched packets, check the packets are dropped.\n+   send mismatched packets, check the packets are not dropped.\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are not dropped.\n+   Then check there is no rule listed.\n+\n+Subcase 5: MAC_IPV4_GTPU_IPV4 inner src ip mark+rss\n+---------------------------------------------------\n+all mark+rss cases steps and expected result are the same\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 / end actions rss / mark / end\n+\n+2. send matched packets, check the packets are distributed by RSS with FDIR matched ID=0x0.\n+   send mismatched packets, check the packets are received without FDIR matched ID.\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are received without FDIR matched ID.\n+   Then check there is no rule listed.\n+\n+Subcase 6: MAC_IPV4_GTPU_IPV4 inner dst ip queue index\n+------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 dst is 192.168.0.21 / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of subcase 1.\n+\n+Subcase 7: MAC_IPV4_GTPU_IPV4 inner dst ip rss queues\n+-----------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 dst is 192.168.0.21 / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of subcase 2.\n+\n+Subcase 8: MAC_IPV4_GTPU_IPV4 inner dst ip passthru\n+---------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 dst is 192.168.0.21 / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of subcase 3.\n+\n+Subcase 9: MAC_IPV4_GTPU_IPV4 inner dst ip drop\n+------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 dst is 192.168.0.21 / end actions drop / end\n+\n+replace rule and repeat step of subcase 4.\n+\n+Subcase 10: MAC_IPV4_GTPU_IPV4 inner dst ip mark+rss\n+----------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 dst is 192.168.0.21 / end actions rss / mark / end\n+\n+replace rule and repeat step of subcase 5.\n+\n+Subcase 11: MAC_IPV4_GTPU_IPV4 2 tuple queue index\n+--------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 12: MAC_IPV4_GTPU_IPV4 2 tuple queue group\n+--------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 2.\n+\n+Subcase 13: MAC_IPV4_GTPU_IPV4 2 tuple passthru\n+-----------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of subcase 3.\n+\n+Subcase 14: MAC_IPV4_GTPU_IPV4 2 tuple drop\n+-------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions drop / end\n+\n+replace rule and repeat step of subcase 4.\n+\n+Subcase 15: MAC_IPV4_GTPU_IPV4 2 tuple mark/rss\n+-----------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions rss / mark / end\n+\n+replace rule and repeat step of subcase 5.\n+\n+Test case: MAC_IPV4_GTPU_IPV4_TCP pattern\n+=========================================\n+\n+Subcase 1: MAC_IPV4_GTPU_IPV4_TCP inner src ip queue index\n+----------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 / tcp / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 2: MAC_IPV4_GTPU_IPV4_TCP inner src ip rss queues\n+---------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 / tcp / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 2.\n+\n+Subcase 3: MAC_IPV4_GTPU_IPV4_TCP inner src ip passthru\n+-------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 / tcp / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 3.\n+\n+Subcase 4: MAC_IPV4_GTPU_IPV4_TCP inner src ip drop\n+---------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 / tcp / end actions drop / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 4.\n+\n+Subcase 5: MAC_IPV4_GTPU_IPV4_TCP inner src ip mark+rss\n+-------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 / tcp / end actions rss / mark / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 5.\n+\n+Subcase 6: MAC_IPV4_GTPU_IPV4_TCP inner dst ip queue index\n+----------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 dst is 192.168.0.21 / tcp / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 7: MAC_IPV4_GTPU_IPV4_TCP inner dst ip rss queues\n+---------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 dst is 192.168.0.21 / tcp / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 2.\n+\n+Subcase 8: MAC_IPV4_GTPU_IPV4_TCP inner dst ip passthru\n+-------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 dst is 192.168.0.21 / tcp / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 3.\n+\n+Subcase 9: MAC_IPV4_GTPU_IPV4_TCP inner dst ip drop\n+----------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 dst is 192.168.0.21 / tcp / end actions drop / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 4.\n+\n+Subcase 10: MAC_IPV4_GTPU_IPV4_TCP inner dst ip mark+rss\n+--------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 dst is 192.168.0.21 / tcp / end actions rss / mark / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 5.\n+\n+Subcase 11: MAC_IPV4_GTPU_IPV4_TCP 4 tuple queue index\n+------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 12: MAC_IPV4_GTPU_IPV4_TCP 4 tuple queue group\n+------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 13: MAC_IPV4_GTPU_IPV4_TCP 4 tuple passthru\n+---------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 3.\n+\n+Subcase 14: MAC_IPV4_GTPU_IPV4_TCP 4 tuple drop\n+-----------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions drop / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 4.\n+\n+Subcase 15: MAC_IPV4_GTPU_IPV4_TCP 4 tuple mark/rss\n+---------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions rss/ mark / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 5.\n+\n+Subcase 16: MAC_IPV4_GTPU_IPV4_TCP inner src port queue index\n+-------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp src is 22 / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 17: MAC_IPV4_GTPU_IPV4_TCP inner src port queue group\n+-------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp src is 22 / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 2.\n+\n+Subcase 18: MAC_IPV4_GTPU_IPV4_TCP inner src port passthru\n+----------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp src is 22 / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 3.\n+\n+Subcase 19: MAC_IPV4_GTPU_IPV4_TCP inner src port drop\n+------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp src is 22 / end actions drop / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 4.\n+\n+Subcase 20: MAC_IPV4_GTPU_IPV4_TCP inner src port mark/rss\n+----------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp src is 22 / end actions rss / mark / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 5.\n+\n+Subcase 21: MAC_IPV4_GTPU_IPV4_TCP inner dst port queue index\n+-------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp dst is 23 / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 22: MAC_IPV4_GTPU_IPV4_TCP inner dst port queue group\n+-------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp dst is 23 / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 2.\n+\n+Subcase 23: MAC_IPV4_GTPU_IPV4_TCP inner dst port passthru\n+----------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp dst is 23 / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 3.\n+\n+Subcase 24: MAC_IPV4_GTPU_IPV4_TCP inner dst port drop\n+------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp dst is 23 / end actions drop / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 4.\n+\n+Subcase 25: MAC_IPV4_GTPU_IPV4_TCP inner dst port mark/rss\n+----------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp dst is 23 / end actions rss / mark / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 5.\n+\n+Subcase 26: MAC_IPV4_GTPU_IPV4_TCP without inputset queue index\n+---------------------------------------------------------------\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp / end actions mark id 1 / rss / end\n+\n+2. send matched packets, check the packets are redirected by RSS with FDIR matched ID=0x1::\n+\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/IP()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+\n+   send mismatched packets, check the packets are redirected by RSS without FDIR matched ID::\n+\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/IP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/IP()/UDP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/IP()/SCTP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/IP()/ICMP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/IPv6()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are distributed by RSS without FDIR matched ID.\n+   check there is no rule listed.\n+\n+Subcase 27: MAC_IPV4_GTPU_IPV4_TCP without inputset queue group\n+---------------------------------------------------------------\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 src / udp / gtpu / ipv4 / tcp / end actions rss queues 0 1 2 3 end / mark id 1 / end\n+\n+2. send matched packets of subcase 26, check the packets are distributed to queue group with FDIR matched ID=0x1.\n+   send mismatched packets of subcase 26, check the packets are distributed by RSS without FDIR matched ID.\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are distributed by RSS without FDIR matched ID.\n+   Then check there is no rule listed.\n+\n+Subcase 28: MAC_IPV4_GTPU_IPV4_TCP without inputset passthru\n+------------------------------------------------------------\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp / end actions passthru / mark id 1 / end\n+\n+2. send matched packets of subcase 26, check the packets are redirected by RSS with FDIR matched ID=0x1.\n+   send mismatched packets of subcase 26, check the packets are redirected by RSS without FDIR matched ID.\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are distributed by RSS without FDIR ID.\n+   check there is no rule listed.\n+\n+Subcase 29: MAC_IPV4_GTPU_IPV4_TCP without inputset drop\n+--------------------------------------------------------\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp / end actions drop / end\n+\n+2. send matched packets of subcase 26, check the packets are dropped.\n+   send mismatched packets of subcase 26, check the packets are not dropped without FDIR matched ID.\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are not dropped without FDIR matched ID.\n+   Then check there is no rule listed.\n+\n+Subcase 30: MAC_IPV4_GTPU_IPV4_TCP without inputset mark/rss\n+------------------------------------------------------------\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 / tcp / end actions rss / mark / end\n+\n+2. send matched packets of subcase 26, check the packets are redirected by RSS with FDIR matched ID=0x0.\n+   send mismatched packets of subcase 26, check the packets are redirected by RSS without FDIR matched ID.\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are distributed by RSS without FDIR matched ID.\n+   check there is no rule listed.\n+\n+Test case: MAC_IPV4_GTPU_IPV4_UDP pattern\n+=========================================\n+\n+1. replace \"tcp\" with \"udp\" in all the subcases of MAC_IPV4_GTPU_IPV4_TCP pattern.\n+2. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_IPV4_TCP pattern.\n+3. get the same result.\n+\n+Test case: MAC_IPV4_GTPU_EH_IPV4 pattern\n+========================================\n+\n+Subcase 1: MAC_IPV4_GTPU_EH_IPV4 inner src ip queue index\n+---------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 2: MAC_IPV4_GTPU_EH_IPV4 inner src ip rss queues\n+--------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 2.\n+\n+Subcase 3: MAC_IPV4_GTPU_EH_IPV4 inner src ip passthru\n+------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 3.\n+\n+Subcase 4: MAC_IPV4_GTPU_EH_IPV4 inner src ip drop\n+--------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 / end actions drop / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 4.\n+\n+Subcase 5: MAC_IPV4_GTPU_EH_IPV4 inner src ip mark+rss\n+------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 / end actions rss / mark / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 5.\n+\n+Subcase 6: MAC_IPV4_GTPU_EH_IPV4 inner dst ip queue index\n+---------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 dst is 192.168.0.21 / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 7: MAC_IPV4_GTPU_EH_IPV4 inner dst ip rss queues\n+--------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 dst is 192.168.0.21 / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 2.\n+\n+Subcase 8: MAC_IPV4_GTPU_EH_IPV4 inner dst ip passthru\n+------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 dst is 192.168.0.21 / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 3.\n+\n+Subcase 9: MAC_IPV4_GTPU_EH_IPV4 inner dst ip drop\n+--------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 dst is 192.168.0.21 / end actions drop / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 4.\n+\n+Subcase 10: MAC_IPV4_GTPU_EH_IPV4 inner dst ip mark+rss\n+-------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 dst is 192.168.0.21 / end actions rss / mark / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 5.\n+\n+Subcase 11: MAC_IPV4_GTPU_EH_IPV4 2 tuple queue index\n+-----------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 12: MAC_IPV4_GTPU_EH_IPV4 2 tuple queue group\n+-----------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 2.\n+\n+Subcase 13: MAC_IPV4_GTPU_EH_IPV4 2 tuple passthru\n+--------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 3.\n+\n+Subcase 14: MAC_IPV4_GTPU_EH_IPV4 2 tuple drop\n+----------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions drop / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 4.\n+\n+Subcase 15: MAC_IPV4_GTPU_EH_IPV4 2 tuple mark/rss\n+--------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions mark id 1 / rss / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 5.\n+\n+\n+Test case: MAC_IPV4_GTPU_EH_IPV4_TCP pattern\n+============================================\n+\n+Subcase 1: MAC_IPV4_GTPU_EH_IPV4_TCP inner src ip queue index\n+-------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 / tcp / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 2: MAC_IPV4_GTPU_EH_IPV4_TCP inner src ip rss queues\n+------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 / tcp / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 2.\n+\n+Subcase 3: MAC_IPV4_GTPU_EH_IPV4_TCP inner src ip passthru\n+----------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 / tcp / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 3.\n+\n+Subcase 4: MAC_IPV4_GTPU_EH_IPV4_TCP inner src ip drop\n+------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 / tcp / end actions drop / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 4.\n+\n+Subcase 5: MAC_IPV4_GTPU_EH_IPV4_TCP inner src ip mark+rss\n+----------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 / tcp / end actions rss / mark / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 5.\n+\n+Subcase 6: MAC_IPV4_GTPU_EH_IPV4_TCP inner dst ip queue index\n+-------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 dst is 192.168.0.21 / tcp / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 7: MAC_IPV4_GTPU_EH_IPV4_TCP inner dst ip rss queues\n+------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 dst is 192.168.0.21 / tcp / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 2.\n+\n+Subcase 8: MAC_IPV4_GTPU_EH_IPV4_TCP inner dst ip passthru\n+----------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 dst is 192.168.0.21 / tcp / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 3.\n+\n+Subcase 9: MAC_IPV4_GTPU_EH_IPV4_TCP inner dst ip drop\n+------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 dst is 192.168.0.21 / tcp / end actions drop / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 4.\n+\n+Subcase 10: MAC_IPV4_GTPU_EH_IPV4_TCP inner dst ip mark+rss\n+-----------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 dst is 192.168.0.21 / tcp / end actions rss / mark / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 5.\n+\n+Subcase 11: MAC_IPV4_GTPU_EH_IPV4_TCP 4 tuple queue index\n+---------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 12: MAC_IPV4_GTPU_EH_IPV4_TCP 4 tuple queue group\n+---------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 2.\n+\n+Subcase 13: MAC_IPV4_GTPU_EH_IPV4_TCP 4 tuple passthru\n+------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 3.\n+\n+Subcase 14: MAC_IPV4_GTPU_EH_IPV4_TCP 4 tuple drop\n+--------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions drop / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 4.\n+\n+Subcase 15: MAC_IPV4_GTPU_EH_IPV4_TCP 4 tuple mark/rss\n+------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions rss / mark / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 5.\n+\n+Subcase 16: MAC_IPV4_GTPU_EH_IPV4_TCP inner src port queue index\n+----------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp src is 22 / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 17: MAC_IPV4_GTPU_EH_IPV4_TCP inner src port queue group\n+----------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp src is 22 / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 2.\n+\n+Subcase 18: MAC_IPV4_GTPU_EH_IPV4_TCP inner src port passthru\n+-------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp src is 22 / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 3.\n+\n+Subcase 19: MAC_IPV4_GTPU_EH_IPV4_TCP inner src port drop\n+---------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp src is 22 / end actions drop / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 4.\n+\n+Subcase 20: MAC_IPV4_GTPU_EH_IPV4_TCP inner src port mark/rss\n+-------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp src is 22 / end actions rss / mark / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 5.\n+\n+Subcase 21: MAC_IPV4_GTPU_EH_IPV4_TCP inner dst port queue index\n+----------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp dst is 23 / end actions queue index 1 / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 1.\n+\n+Subcase 22: MAC_IPV4_GTPU_EH_IPV4_TCP inner dst port queue group\n+----------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp dst is 23 / end actions rss queues 2 3 end / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 2.\n+\n+Subcase 23: MAC_IPV4_GTPU_EH_IPV4_TCP inner dst port passthru\n+-------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp dst is 23 / end actions passthru / mark id 1 / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 3.\n+\n+Subcase 24: MAC_IPV4_GTPU_EH_IPV4_TCP inner dst port drop\n+---------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp dst is 23 / end actions drop / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 4.\n+\n+Subcase 25: MAC_IPV4_GTPU_EH_IPV4_TCP inner dst port mark/rss\n+-------------------------------------------------------------\n+\n+rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp dst is 23 / end actions rss / mark / end\n+\n+replace rule and repeat step of MAC_IPV4_GTPU_IPV4 pattern subcase 5.\n+\n+Subcase 26: MAC_IPV4_GTPU_EH_IPV4_TCP without inputset queue index\n+------------------------------------------------------------------\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp / end actions mark id 1 / rss / end\n+\n+2. send matched packets, check the packets are redirected by RSS with FDIR matched ID=0x1::\n+\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer()/IP()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+\n+   send mismatched packets, check the packets are redirected by RSS without FDIR matched ID::\n+\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer()/IP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer()/IP()/UDP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer()/IP()/SCTP()(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer()/IP()/ICMP()(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer()/IPv6()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are distributed by RSS without FDIR matched ID.\n+   check there is no rule listed.\n+\n+Subcase 27: MAC_IPV4_GTPU_EH_IPV4_TCP without inputset queue group\n+------------------------------------------------------------------\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 src / udp / gtpu / gtp_psc / ipv4 / tcp / end actions rss queues 0 1 2 3 end / mark id 1 / end\n+\n+2. send matched packets of subcase 26, check the packets are distributed to queue group with FDIR matched ID=0x1.\n+   send mismatched packets of subcase 26, check the packets are distributed by RSS without FDIR matched ID.\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are distributed by RSS without FDIR matched ID.\n+   Then check there is no rule listed.\n+\n+Subcase 28: MAC_IPV4_GTPU_EH_IPV4_TCP without inputset passthru\n+---------------------------------------------------------------\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp / end actions passthru / mark id 1 / end\n+\n+2. send matched packets of subcase 26, check the packets are redirected by RSS with FDIR matched ID=0x1.\n+   send mismatched packets of subcase 26, check the packets are redirected by RSS without FDIR matched ID.\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are distributed by RSS without FDIR ID.\n+   check there is no rule listed.\n+\n+Subcase 29: MAC_IPV4_GTPU_EH_IPV4_TCP without inputset drop\n+-----------------------------------------------------------\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp / end actions drop / end\n+\n+2. send matched packets of subcase 26, check the packets are dropped.\n+   send mismatched packets of subcase 26, check the packets are not dropped without FDIR matched ID.\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are not dropped without FDIR matched ID.\n+   Then check there is no rule listed.\n+\n+Subcase 30: MAC_IPV4_GTPU_EH_IPV4_TCP without inputset mark/rss\n+---------------------------------------------------------------\n+\n+1. create filter rules::\n+\n+    flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 / tcp / end actions rss / mark / end\n+\n+2. send matched packets of subcase 26, check the packets are redirected by RSS with FDIR matched ID=0x0.\n+   send mismatched packets of subcase 26, check the packets are redirected by RSS without FDIR matched ID.\n+\n+3. repeat step 3 of subcase 1.\n+\n+4. verify matched packets are distributed by RSS without FDIR matched ID.\n+   check there is no rule listed.\n+\n+Test case: MAC_IPV4_GTPU_EH_IPV4_UDP pattern\n+============================================\n+\n+1. replace \"tcp\" with \"udp\" in all the subcases of MAC_IPV4_GTPU_EH_IPV4_TCP pattern.\n+2. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_EH_IPV4_TCP pattern.\n+3. get the same result.\n+\n+Test case: MAC_IPV4_GTPU_EH_DL_IPV4_TCP pattern\n+===============================================\n+\n+without inputset match packets::\n+\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer()/IP()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+\n+without inputset mismatch packets::\n+\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP()/UDP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP()/ICMP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+\n+1. replace \"gtp_psc\" with \"gtp_psc pdu_t is 0\" in all the subcases of MAC_IPV4_GTPU_EH_IPV4_TCP pattern.\n+2. replace without inputset packets in the subcases of MAC_IPV4_GTPU_EH_IPV4_TCP pattern.\n+3. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_EH_IPV4_TCP pattern.\n+4. get the same result.\n+\n+Test case: MAC_IPV4_GTPU_EH_DL_IPV4_UDP pattern\n+===============================================\n+\n+1. replace \"tcp\" with \"udp\" in all the subcases of MAC_IPV4_GTPU_EH_DL_IPV4_TCP pattern.\n+2. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_EH_DL_IPV4_TCP pattern.\n+3. get the same result.\n+\n+Test case: MAC_IPV4_GTPU_EH_UL_IPV4 pattern\n+===========================================\n+\n+1. replace \"gtp_psc\" with \"gtp_psc pdu_t is 1\" in all the subcases of MAC_IPV4_GTPU_EH_IPV4 pattern.\n+2. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_EH_IPV4 pattern.\n+3. get the same result.\n+\n+Test case: MAC_IPV4_GTPU_EH_UL_IPV4_TCP pattern\n+===============================================\n+\n+without inputset match packets::\n+\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+\n+without inputset mismatch packets::\n+\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer()/IP()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP()/UDP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP()/SCTP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP()/ICMP()/(\"X\"*480)], iface=\"ens192f0\")\n+    sendp([Ether(dst=\"00:11:22:33:44:55\")/IP()/UDP()/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6()/TCP()/(\"X\"*480)], iface=\"ens192f0\")\n+\n+1. replace \"gtp_psc\" with \"gtp_psc pdu_t is 1\" in all the subcases of MAC_IPV4_GTPU_EH_IPV4_TCP pattern.\n+2. replace without inputset packets in the subcases of MAC_IPV4_GTPU_EH_IPV4_TCP pattern.\n+3. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_EH_IPV4_TCP pattern.\n+4. get the same result.\n+\n+Test case: MAC_IPV4_GTPU_EH_UL_IPV4_UDP pattern\n+===============================================\n+1. replace \"tcp\" with \"udp\" in all the subcases of MAC_IPV4_GTPU_EH_UL_IPV4_TCP pattern.\n+2. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_EH_UL_IPV4_TCP pattern.\n+3. get the same result.\n+\n+Test case: MAC_IPV4_GTPU_IPV6 pattern\n+=====================================\n+1. replace inner \"ipv4\" with \"ipv6\" in all the subcases of MAC_IPV4_GTPU_IPV4 pattern.\n+2. replace inner ipv4 src/dst ip with ipv6 src/dst value in all the subcases of MAC_IPV4_GTPU_IPV4 pattern.\n+3. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_IPV4 pattern.\n+4. get the same result\n+\n+Test case: MAC_IPV4_GTPU_IPV6_TCP pattern\n+=========================================\n+1. replace inner \"ipv4\" with \"ipv6\" in all the subcases of MAC_IPV4_GTPU_IPV4_TCP pattern.\n+2. replace inner ipv4 src/dst ip with ipv6 src/dst value in all the subcases of MAC_IPV4_GTPU_IPV4_TCP pattern.\n+3. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_IPV4_TCP pattern.\n+4. get the same result\n+\n+Test case: MAC_IPV4_GTPU_IPV6_UDP pattern\n+=========================================\n+1. replace inner \"ipv4\" with \"ipv6\" in all the subcases of MAC_IPV4_GTPU_IPV4_UDP pattern.\n+2. replace inner ipv4 src/dst ip with ipv6 src/dst value in all the subcases of MAC_IPV4_GTPU_IPV4_UDP pattern.\n+3. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_IPV4_UDP pattern.\n+4. get the same result\n+\n+Test case: MAC_IPV4_GTPU_EH_IPV6_TCP pattern\n+============================================\n+1. replace inner \"ipv4\" with \"ipv6\" in all the subcases of MAC_IPV4_GTPU_EH_IPV4_TCP pattern.\n+2. replace inner ipv4 src/dst ip with ipv6 src/dst value in all the subcases of MAC_IPV4_GTPU_EH_IPV4_TCP pattern.\n+3. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_EH_IPV4_TCP pattern.\n+4. get the same result\n+\n+Test case: MAC_IPV4_GTPU_EH_IPV6_UDP pattern\n+============================================\n+1. replace inner \"ipv4\" with \"ipv6\" in all the subcases of MAC_IPV4_GTPU_EH_IPV6_UDP pattern.\n+2. replace inner ipv4 src/dst ip with ipv6 src/dst value in all the subcases of MAC_IPV4_GTPU_EH_IPV6_UDP pattern.\n+3. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_EH_IPV6_UDP pattern.\n+4. get the same result.\n+\n+Test case: MAC_IPV4_GTPU_EH_DL_IPV6_TCP pattern\n+===============================================\n+1. replace inner \"ipv4\" with \"ipv6\" in all the subcases of MAC_IPV4_GTPU_EH_DL_IPV4_TCP pattern.\n+2. replace inner ipv4 src/dst ip with ipv6 src/dst value in all the subcases of MAC_IPV4_GTPU_EH_DL_IPV4_TCP pattern.\n+3. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_EH_DL_IPV4_TCP pattern.\n+4. get the same result\n+\n+Test case: MAC_IPV4_GTPU_EH_DL_IPV6_UDP pattern\n+===============================================\n+1. replace inner \"ipv4\" with \"ipv6\" in all the subcases of MAC_IPV4_GTPU_EH_DL_IPV6_UDP pattern.\n+2. replace inner ipv4 src/dst ip with ipv6 src/dst value in all the subcases of MAC_IPV4_GTPU_EH_DL_IPV6_UDP pattern.\n+3. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_EH_DL_IPV6_UDP pattern.\n+4. get the same result.\n+\n+Test case: MAC_IPV4_GTPU_EH_UL_IPV6_TCP pattern\n+===============================================\n+1. replace inner \"ipv4\" with \"ipv6\" in all the subcases of MAC_IPV4_GTPU_EH_UL_IPV4_TCP pattern.\n+2. replace inner ipv4 src/dst ip with ipv6 src/dst value in all the subcases of MAC_IPV4_GTPU_EH_UL_IPV4_TCP pattern.\n+3. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_EH_UL_IPV4_TCP pattern.\n+4. get the same result.\n+\n+Test case: MAC_IPV4_GTPU_EH_UL_IPV6_UDP pattern\n+===============================================\n+1. replace inner \"ipv4\" with \"ipv6\" in all the subcases of MAC_IPV4_GTPU_EH_UL_IPV6_UDP pattern.\n+2. replace inner ipv4 src/dst ip with ipv6 src/dst value in all the subcases of MAC_IPV4_GTPU_EH_UL_IPV6_UDP pattern.\n+3. Then repeat all the steps in all the subcases of MAC_IPV4_GTPU_EH_UL_IPV6_UDP pattern.\n+4. get the same result.\n+\n+Test case: GTPU inner co-exist test\n+===================================\n+\n+Subcase 1: inner IPv4 gtpu conflict rule\n+-----------------------------------------\n+\n+Rules::\n+\n+   #1 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions queue index 10 / mark id 1 / end\n+   #2 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #3 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / udp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #4 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions queue index 10 / mark id 1 / end\n+   #5 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #6 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / udp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #7 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions queue index 10 / mark id 1 / end\n+   #8 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #9 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / udp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #10 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 1 / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / end actions queue index 10 / mark id 1 / end\n+   #11 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 1 / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / tcp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #12 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 1 / ipv4 src is 192.168.0.20 dst is 192.168.0.21 / udp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+\n+packets::\n+\n+   pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+   pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+   pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+   pkt4 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+   pkt5 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+   pkt6 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+   pkt7 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+   pkt8 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+   pkt9 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+   pkt10 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/Raw('x'*20)\n+   pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+   pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IP(src=\"192.168.0.20\", dst=\"192.168.0.21\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+1. First create #1 rule, verify #2/3 rule create failed and #4 create successfully.\n+   send match packets(pkt1/4), check the packets are distributed to queue 10 with FDIR matched ID=0x1.\n+\n+2. destroy #1 rule, verify #5-12 any rule create failed and #2 create successfully.\n+   send match packets(pkt2/4), check the packets are distributed to queue 10 with FDIR matched ID=0x1.\n+\n+3. destroy #4 rule, verify #1 rule create failed and #5 create successfully.\n+   send match packets(pkt2/5), check the packets are distributed to queue 10 with FDIR matched ID=0x1.\n+\n+4. destroy #2 rule, verify #4/7/8/10/11 rule create failed and #6 create successfully.\n+   send match packets(pkt5/6), check the packets are distributed to queue 10 with FDIR matched ID=0x1.\n+\n+5. destroy #5 rule, verify #4/7/9/10/12 rule create failed and #8 create successfully.\n+   send match packets(pkt6/8), check the packets are distributed to queue 10 with FDIR matched ID=0x1.\n+\n+6. destroy #6 rule, verify #4/5/7 rule create failed and #9 create successfully.\n+   send match packets(pkt8/9), check the packets are distributed to queue 10 with FDIR matched ID=0x1.\n+\n+7. destroy #8 rule, verify #4/6/7 rule create failed and #10 create successfully.\n+   send match packets(pkt9/10), check the packets are distributed to queue 10 with FDIR matched ID=0x1.\n+\n+8. destroy #9 rule, verify #4/5/6/11/12 rule create failed and #7 create successfully.\n+   send match packets(pkt7/10), check the packets are distributed to queue 10 with FDIR matched ID=0x1.\n+\n+9. destroy #10 rule, verify #4/5/6/8/9 rule create failed and #11 create successfully.\n+   send match packets(pkt7/11), check the packets are distributed to queue 10 with FDIR matched ID=0x1.\n+\n+10. verify #4/5/6/8/9/10 rule create failed and #12 create successfully.\n+    send match packets(pkt7/11/12), check the packets are distributed to queue 10 with FDIR matched ID=0x1.\n+\n+11. verify #4/5/6/8/9/10 rule create failed and #3 create successfully.\n+    send match packets(pkt3/7/11/12), check the packets are distributed to queue 10 with FDIR matched ID=0x1.\n+\n+Subcase 2: inner IPv6 gtpu conflict rule\n+----------------------------------------\n+\n+Rules::\n+\n+   #1 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv6 src is 2001::2 dst is CDCD:910A:2222:5498:8475:1111:3900:2020 / end actions queue index 10 / mark id 1 / end\n+   #2 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv6 src is 2001::2 dst is CDCD:910A:2222:5498:8475:1111:3900:2020 / tcp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #3 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / ipv6 src is 2001::2 dst is CDCD:910A:2222:5498:8475:1111:3900:2020 / udp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #4 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv6 src is 2001::2 dst is CDCD:910A:2222:5498:8475:1111:3900:2020 / end actions queue index 10 / mark id 1 / end\n+   #5 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv6 src is 2001::2 dst is CDCD:910A:2222:5498:8475:1111:3900:2020 / tcp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #6 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc / ipv6 src is 2001::2 dst is CDCD:910A:2222:5498:8475:1111:3900:2020 / udp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #7 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv6 src is 2001::2 dst is CDCD:910A:2222:5498:8475:1111:3900:2020 / end actions queue index 10 / mark id 1 / end\n+   #8 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv6 src is 2001::2 dst is CDCD:910A:2222:5498:8475:1111:3900:2020 / tcp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #9 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 0 / ipv6 src is 2001::2 dst is CDCD:910A:2222:5498:8475:1111:3900:2020 / udp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #10 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 1 / ipv6 src is 2001::2 dst is CDCD:910A:2222:5498:8475:1111:3900:2020 / end actions queue index 10 / mark id 1 / end\n+   #11 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 1 / ipv6 src is 2001::2 dst is CDCD:910A:2222:5498:8475:1111:3900:2020 / tcp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+   #12 flow create 0 ingress pattern eth / ipv4 / udp / gtpu / gtp_psc pdu_t is 1 / ipv6 src is 2001::2 dst is CDCD:910A:2222:5498:8475:1111:3900:2020 / udp src is 22 dst is 23 / end actions queue index 10 / mark id 1 / end\n+\n+packets::\n+\n+   pkt1 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+   pkt2 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+   pkt3 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+   pkt4 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+   pkt5 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+   pkt6 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer()/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+   pkt7 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+   pkt8 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+   pkt9 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=0)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+   pkt10 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/Raw('x'*20)\n+   pkt11 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/TCP(sport=22, dport=23)/Raw('x'*20)\n+   pkt12 = Ether(src=\"a4:bf:01:51:27:ca\", dst=\"00:11:22:33:44:55\")/IP()/UDP(dport=2152)/GTP_U_Header()/GTPPDUSessionContainer(type=1)/IPv6(src=\"2001::2\", dst=\"CDCD:910A:2222:5498:8475:1111:3900:2020\")/UDP(sport=22, dport=23)/Raw('x'*20)\n+\n+repeat step 1-12 of subcase 1.\n\\ No newline at end of file\n",
    "prefixes": [
        "V3"
    ]
}