From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id C36B2A04EF; Tue, 2 Jun 2020 10:01:44 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 3DA2C1BFCA; Tue, 2 Jun 2020 10:01:44 +0200 (CEST) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id 372931BFB9 for ; Tue, 2 Jun 2020 10:01:41 +0200 (CEST) IronPort-SDR: 7xBZeEL2m0TixUXnNUwLtntGWOhs0FQ56dL7RUpvkH1vRoCcxrb+YPCEYd70H4F2dDhxPWG/rk pMaqgMNFZ7Kw== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Jun 2020 01:01:39 -0700 IronPort-SDR: BRGbwy/r8Ax85Wly0LiAP9ZvBx7MOSihzmc5HaaIPekJg1AHdm+vwpufO+NtXwxBwH526+hz6x 0QF0+VzUM4hw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,463,1583222400"; d="scan'208";a="444602287" Received: from dpdk-qifu-cxl.sh.intel.com ([10.67.119.67]) by orsmga005.jf.intel.com with ESMTP; 02 Jun 2020 01:01:38 -0700 From: Fu Qi To: dts@dpdk.org Cc: Fu Qi Date: Tue, 2 Jun 2020 12:52:56 -0400 Message-Id: <20200602165256.89377-1-qi.fu@intel.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 Content-Type: text/plain; charset=y Content-Transfer-Encoding: 8bit Subject: [dts] [PATCH V1]test_plans/cvl_advanced_iavf_rss_test_plan: add l2tp and esp to advanced iavf rss X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org Sender: "dts" Add l2tpv3 and esp patterns to advanced iavf rss test plan. Signed-off-by: Fu Qi --- .../cvl_advanced_iavf_rss_test_plan.rst | 228 +++++++++++++++++- 1 file changed, 226 insertions(+), 2 deletions(-) diff --git a/test_plans/cvl_advanced_iavf_rss_test_plan.rst b/test_plans/cvl_advanced_iavf_rss_test_plan.rst index ce68ebb..f326725 100644 --- a/test_plans/cvl_advanced_iavf_rss_test_plan.rst +++ b/test_plans/cvl_advanced_iavf_rss_test_plan.rst @@ -198,6 +198,19 @@ Pattern and input set +-------------------------------+---------------------------+--------------------------------------------------------------------------------+ | | MAC_IPV6_SIMPLE_XOR | [Dest MAC],[Source IP], [Dest IP] | +-------------------------------+---------------------------+--------------------------------------------------------------------------------+ + | | MAC_IPV4_L2TPv3 | [Session ID] | + +-------------------------------+---------------------------+--------------------------------------------------------------------------------+ + | | MAC_IPV6_L2TPv3 | [Session ID] | + +-------------------------------+---------------------------+--------------------------------------------------------------------------------+ + | | MAC_IPV4_ESP | [SPI] | + +-------------------------------+---------------------------+--------------------------------------------------------------------------------+ + | | MAC_IPV6_ESP | [SPI] | + +-------------------------------+---------------------------+--------------------------------------------------------------------------------+ + | | MAC_IPV4_AH | [SPI] | + +-------------------------------+---------------------------+--------------------------------------------------------------------------------+ + | | MAC_IPV6_AH | [SPI] | + +-------------------------------+---------------------------+--------------------------------------------------------------------------------+ + Default parameters ------------------ @@ -2121,7 +2134,187 @@ Test case: SYMMETRIC_TOEPLITZ_VXLAN_IPV6_ICMP: #. Destory rule on port 0 testpmd> flow flush 0 - + +Test case: MAC_IPV4_L2TPv3: +=========================== +#. DUT create rule for the RSS type for MAC_IPV4_L2TPv3:: + + testpmd>flow create 0 ingress pattern eth / ipv4 / l2tpv3oip / end actions rss types l2tpv3 end key_len 0 queues end / end + testpmd>start + +#. Tester use scapy to send the 100 MAC_IPV4_L2TPv3 pkts with different session ID:: + + sendp([Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.3", proto=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in differently 16 queues evenly with differently RSS hash value:: + + testpmd> stop + +#. check the flow can be listed and destory rule on port 0:: + + testpmd> flow list 0 + ID Group Prio Attr Rule + 0 0 0 i-- ETH IPV4 L2TPV3OIP => RSS + testpmd> flow flush 0 + +#. Tester use scapy to send the 100 MAC_IPV4_L2TPv3 pkts with different session ID:: + + sendp([Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.3", proto=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in the same queue. + +Test case: MAC_IPV6_L2TPv3: +=========================== +#. DUT create rule for the RSS type for MAC_IPV6_L2TPv3:: + + testpmd>flow create 0 ingress pattern eth / ipv6 / l2tpv3oip / end actions rss types l2tpv3 end key_len 0 queues end / end + testpmd>start + +#. Tester use scapy to send the 100 MAC_IPV6_L2TPv3 pkts with different session ID:: + + sendp([Ether(dst="00:11:22:33:44:55")/IPv6(nh=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in differently 16 queues evenly with differently RSS hash value:: + + testpmd> stop + +#. check the flow can be listed and destory rule on port 0:: + + testpmd> flow list 0 + ID Group Prio Attr Rule + 0 0 0 i-- ETH IPV6 L2TPV3OIP => RSS + testpmd> flow flush 0 + +#. Tester use scapy to send the 100 MAC_IPV6_L2TPv3 pkts with different session ID:: + + sendp([Ether(dst="00:11:22:33:44:55")/IPv6(nh=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in the same queue. + +Test case: MAC_IPV4_ESP: +======================== +#. DUT create rule for the RSS type for MAC_IPV4_ESP:: + + testpmd>flow create 0 ingress pattern eth / ipv4 / esp / end actions rss types esp end key_len 0 queues end / end + testpmd>start + +#. Tester use scapy to send the 100 MAC_IPV4_ESP pkts with different session ID:: + + sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=50)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in differently 16 queues evenly with differently RSS hash value:: + + testpmd> stop + +#. check the flow can be listed and destory rule on port 0:: + + testpmd> flow list 0 + ID Group Prio Attr Rule + 0 0 0 i-- ETH IPV4 ESP => RSS + testpmd> flow flush 0 + +#. Tester use scapy to send the 100 MAC_IPV4_ESP pkts with different session ID:: + + sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=50)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in the same queue. + +Test case: MAC_IPV6_ESP: +======================== +#. DUT create rule for the RSS type for MAC_IPV6_ESP:: + + testpmd>flow create 0 ingress pattern eth / ipv6 / esp / end actions rss types esp end key_len 0 queues end / end + testpmd>start + +#. Tester use scapy to send the 100 MAC_IPV6_ESP pkts with different session ID:: + + sendp([Ether(dst="00:11:22:33:44:55")/IPv6(nh=50)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in differently 16 queues evenly with differently RSS hash value:: + + testpmd> stop + +#. check the flow can be listed and destory rule on port 0:: + + testpmd> flow list 0 + ID Group Prio Attr Rule + 0 0 0 i-- ETH IPV6 ESP => RSS + testpmd> flow flush 0 + +#. Tester use scapy to send the 100 MAC_IPV6_ESP pkts with different session ID:: + + sendp([Ether(dst="00:11:22:33:44:55")/IPv6(nh=50)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in the same queue. + +Test case: MAC_IPV4_AH: +======================= +#. DUT create rule for the RSS type for MAC_IPV4_AH:: + + testpmd>flow create 0 ingress pattern eth / ipv4 / ah / end actions rss types esp end key_len 0 queues end / end + testpmd>start + +#. Tester use scapy to send the 100 MAC_IPV4_AH pkts with different session ID:: + + sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=51)/AH(spi=11)/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in differently 16 queues evenly with differently RSS hash value:: + + testpmd> stop + +#. check the flow can be listed and destory rule on port 0:: + + testpmd> flow list 0 + ID Group Prio Attr Rule + 0 0 0 i-- ETH IPV4 AH => RSS + testpmd> flow flush 0 + +#. Tester use scapy to send the 100 MAC_IPV4_AH pkts with different session ID:: + + sendp([Ether(dst="00:11:22:33:44:55")/IP(proto=51)/AH(spi=11)/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in the same queue. + +Test case: MAC_IPV6_AH: +======================= +#. DUT create rule for the RSS type for MAC_IPV6_AH:: + + testpmd>flow create 0 ingress pattern eth / ipv6 / ah / end actions rss types esp end key_len 0 queues end / end + testpmd>start + +#. Tester use scapy to send the 100 MAC_IPV6_AH pkts with different session ID:: + + sendp([Ether(dst="00:11:22:33:44:55")/IPv6(nh=51)/AH(spi=11)/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in differently 16 queues evenly with differently RSS hash value:: + + testpmd> stop + +#. check the flow can be listed and destory rule on port 0:: + + testpmd> flow list 0 + ID Group Prio Attr Rule + 0 0 0 i-- ETH IPV6 AH => RSS + testpmd> flow flush 0 + +#. Tester use scapy to send the 100 MAC_IPV6_AH pkts with different session ID:: + + sendp([Ether(dst="00:11:22:33:44:55")/IPv6(nh=51)/AH(spi=11)/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in the same queue. + Test case: SIMPLE_XOR: ====================== #. create rule for the rss type simple_xor:: @@ -3651,6 +3844,36 @@ Test case: Use OS default package for the MAC_IPV4_GTPU_FRAG and IPV4 L3 src onl iavf_flow_create(): Failed to create flow port_flow_complain(): Caught PMD error type 2 (flow rule (handle)): Failed to create parser engine.: Invalid argument +Test case: Use OS default package for the MAC_IPV4_L2TPv3: +========================================================== +#. Load OS package + +#. Create rule for the rss type MAC_IPV4_L2TPv3:: + + testpmd>flow create 0 ingress pattern eth / ipv4 / l2tpv3oip / end actions rss types l2tpv3 end key_len 0 queues end / end + +#. Tester use scapy to send the 100 MAC_IPV4_L2TPv3 pkts with different session ID:: + + sendp([Ether(dst="00:11:22:33:44:55")/IP(src="192.168.0.3", proto=115)/L2TP('\x00\x00\x00\x11')/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in the same queue. + +Test case: Use OS default package for the MAC_IPV6_ESP: +========================================================== +#. Load OS package + +#. Create rule for the rss type MAC_IPV6_ESP:: + + testpmd>flow create 0 ingress pattern eth / ipv6 / esp / end actions rss types l2tpv3 end key_len 0 queues end / end + +#. Tester use scapy to send the 100 MAC_IPV6_ESP pkts with different spi:: + + sendp([Ether(dst="00:11:22:33:44:55")/IPv6(nh=50)/ESP(spi=11)/Raw('x'*480)], iface="enp134s0f0") + ... + +#. Verify 100 pkts has been sent, and check the 100 pkts has been recieved by DUT in the same queue. + Test case: Check rssh hash in mutil VFS ======================================= 1. Generate 2 VFs on PF0 and set mac address for each VF:: @@ -3887,5 +4110,6 @@ both of the rules can't be created successfully. + - \ No newline at end of file + -- 2.17.1