test suite reviews and discussions
 help / color / mirror / Atom feed
From: Zhimin Huang <zhiminx.huang@intel.com>
To: dts@dpdk.org
Cc: Zhimin Huang <zhiminx.huang@intel.com>
Subject: [dts][PATCH V2 3/5] test_plans/ice_ip_fragment_rte_flow:extend mismatch pkts
Date: Tue, 24 May 2022 11:00:46 +0800	[thread overview]
Message-ID: <20220524030048.34627-3-zhiminx.huang@intel.com> (raw)
In-Reply-To: <20220524030048.34627-1-zhiminx.huang@intel.com>

1.add more info for ipfragment rule.
2.mismatch pkt should cover mismatch inputset pkts and mismatch pattern pkts.

V2:
fix format issue

Signed-off-by: Zhimin Huang <zhiminx.huang@intel.com>
---
 .../ice_ip_fragment_rte_flow_test_plan.rst    | 72 ++++++++++++-------
 1 file changed, 46 insertions(+), 26 deletions(-)

diff --git a/test_plans/ice_ip_fragment_rte_flow_test_plan.rst b/test_plans/ice_ip_fragment_rte_flow_test_plan.rst
index 18e0ad28..34b8efdc 100644
--- a/test_plans/ice_ip_fragment_rte_flow_test_plan.rst
+++ b/test_plans/ice_ip_fragment_rte_flow_test_plan.rst
@@ -118,6 +118,11 @@ take 'MAC_IPV4_FRAG fdir queue index' for fdir example
       flow create 0 ingress pattern eth / ipv4 fragment_offset spec 0x2000 fragment_offset mask 0x2000 / end actions queue index 1 / mark / end
       Flow rule #0 created
 
+.. note::
+
+   For ipfragment rule, it's a fixed combination for parser to know that a fragment pkt.
+   dpdk care about the bit 12-13 of fragment offset, so the valid range is 0x2000-0x1fff, the spec is 0x2000 and mask is 0x2000.
+
 2. send matched pkts and check two pkts distributed to queue 1, `RSS hash=0x261a7deb - RSS queue=0x1` in output::
 
       scapy:
@@ -136,17 +141,16 @@ take 'MAC_IPV4_FRAG fdir queue index' for fdir example
 3. send mismatched pkts and check fdir id is none::
 
       scapy:
-      p = Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666)
-      pkts=fragment6(p, 500)
-      sendp(pkts, iface="enp1s0")
+      Ether()/IP()/Raw('X'*666)
+      Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666)
+      sendp(p, iface="enp1s0")
 
-      Sent 2 packets.
-            dut.10.240.183.133: port 0/queue 3: received 1 packets
-      src=00:00:00:00:00:00 - dst=FF:FF:FF:FF:FF:FF - type=0x86dd - length=494 - nb_segs=1 - RSS hash=0xe5ae2d03 - RSS queue=0x3 - hw ptype: L2_ETHER L3_IPV6_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV6_EXT L4_FRAG  - l2_len=14 - l3_len=48 - l4_len=0 - Receive queue=0x3
-      ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_GOOD
-      port 0/queue 3: received 1 packets
-      src=00:00:00:00:00:00 - dst=FF:FF:FF:FF:FF:FF - type=0x86dd - length=296 - nb_segs=1 - RSS hash=0xe5ae2d03 - RSS queue=0x3 - hw ptype: L2_ETHER L3_IPV6_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV6_EXT L4_FRAG  - l2_len=14 - l3_len=48 - l4_len=0 - Receive queue=0x3
-      ol_flags: PKT_RX_RSS_HASH PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_GOOD
+      port 0/queue 11: received 1 packets
+        src=00:00:00:00:00:00 - dst=FF:FF:FF:FF:FF:FF - type=0x0800 - length=700 - nb_segs=1 - RSS hash=0x7bd13a5b - RSS queue=0xb - hw ptype: L2_ETHER L3_IPV4_EXT_UNKNOWN L4_NONFRAG  - sw ptype: L2_ETHER L3_IPV4  - l2_len=14 - l3_len=20 - Receive queue=0xb
+        ol_flags: RTE_MBUF_F_RX_RSS_HASH RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_GOOD
+      port 0/queue 0: received 1 packets
+        src=00:00:00:00:00:00 - dst=FF:FF:FF:FF:FF:FF - type=0x86dd - length=728 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV6_EXT_UNKNOWN L4_FRAG  - sw ptype: L2_ETHER L3_IPV6_EXT L4_FRAG  - l2_len=14 - l3_len=48 - l4_len=0 - Receive queue=0x0
+        ol_flags: RTE_MBUF_F_RX_L4_CKSUM_GOOD RTE_MBUF_F_RX_IP_CKSUM_GOOD RTE_MBUF_F_RX_OUTER_L4_CKSUM_GOOD
 
 4. destroy rule re-send step 2 pkts and check fdir id is none::
 
@@ -255,7 +259,8 @@ Subcase 1: MAC_IPV4_FRAG fdir queue index
 
 3. unmatched packets::
 
-     p=Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666); pkt=fragment6(p, 500)
+     Ether()/IP()/Raw('X'*666)
+     Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666)
 
 Subcase 2: MAC_IPV4_FRAG fdir rss queues
 -----------------------------------------
@@ -270,7 +275,8 @@ Subcase 2: MAC_IPV4_FRAG fdir rss queues
 
 3. unmatched packets::
 
-     p=Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666); pkt=fragment6(p, 500)
+     Ether()/IP()/Raw('X'*666)
+     Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666)
 
 Subcase 3: MAC_IPV4_FRAG fdir passthru
 --------------------------------------
@@ -285,7 +291,8 @@ Subcase 3: MAC_IPV4_FRAG fdir passthru
 
 3. unmatched packets::
 
-     p=Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666); pkt=fragment6(p, 500)
+     Ether()/IP()/Raw('X'*666)
+     Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666)
 
 Subcase 4: MAC_IPV4_FRAG fdir drop
 ----------------------------------
@@ -300,7 +307,8 @@ Subcase 4: MAC_IPV4_FRAG fdir drop
 
 3. unmatched packets::
 
-     p=Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666); pkt=fragment6(p, 500)
+     Ether()/IP()/Raw('X'*666)
+     Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666)
 
 Subcase 5: MAC_IPV4_FRAG fdir mark+rss
 --------------------------------------
@@ -315,7 +323,8 @@ Subcase 5: MAC_IPV4_FRAG fdir mark+rss
 
 3. unmatched packets::
 
-     p=Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666); pkt=fragment6(p, 500)
+     Ether()/IP()/Raw('X'*666)
+     Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666)
 
 Subcase 6: MAC_IPV4_FRAG fdir mark
 ----------------------------------
@@ -330,7 +339,8 @@ Subcase 6: MAC_IPV4_FRAG fdir mark
 
 3. unmatched packets::
 
-     p=Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666); pkt=fragment6(p, 500)
+     Ether()/IP()/Raw('X'*666)
+     Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666)
 
 Test case: MAC_IPV6_FRAG pattern fdir fragment
 ==============================================
@@ -348,7 +358,8 @@ Subcase 1: MAC_IPV6_FRAG fdir queue index
 
 3. unmatched packets::
 
-     p=Ether()/IP(id=47750)/Raw('X'*666); pkts=fragment(p, 500)
+     Ether()/IPv6()/Raw('X'*666)
+     Ether()/IP(id=47750)/Raw('X'*666)
 
 Subcase 2: MAC_IPV6_FRAG fdir rss queues
 ----------------------------------------
@@ -363,7 +374,8 @@ Subcase 2: MAC_IPV6_FRAG fdir rss queues
 
 3. unmatched packets::
 
-     p=Ether()/IP(id=47750)/Raw('X'*666); pkts=fragment(p, 500)
+     Ether()/IPv6()/Raw('X'*666)
+     Ether()/IP(id=47750)/Raw('X'*666)
 
 Subcase 3: MAC_IPV6_FRAG fdir passthru
 --------------------------------------
@@ -378,7 +390,8 @@ Subcase 3: MAC_IPV6_FRAG fdir passthru
 
 3. unmatched packets::
 
-     p=Ether()/IP(id=47750)/Raw('X'*666); pkts=fragment(p, 500)
+     Ether()/IPv6()/Raw('X'*666)
+     Ether()/IP(id=47750)/Raw('X'*666)
 
 Subcase 4: MAC_IPV6_FRAG fdir drop
 ----------------------------------
@@ -393,7 +406,8 @@ Subcase 4: MAC_IPV6_FRAG fdir drop
 
 3. unmatched packets::
 
-     p=Ether()/IP(id=47750)/Raw('X'*666); pkts=fragment(p, 500)
+     Ether()/IPv6()/Raw('X'*666)
+     Ether()/IP(id=47750)/Raw('X'*666)
 
 Subcase 5: MAC_IPV6_FRAG fdir mark+rss
 --------------------------------------
@@ -408,7 +422,8 @@ Subcase 5: MAC_IPV6_FRAG fdir mark+rss
 
 3. unmatched packets::
 
-     p=Ether()/IP(id=47750)/Raw('X'*666); pkts=fragment(p, 500)
+     Ether()/IPv6()/Raw('X'*666)
+     Ether()/IP(id=47750)/Raw('X'*666)
 
 Subcase 6: MAC_IPV6_FRAG fdir mark
 ----------------------------------
@@ -423,7 +438,8 @@ Subcase 6: MAC_IPV6_FRAG fdir mark
 
 3. unmatched packets::
 
-     p=Ether()/IP(id=47750)/Raw('X'*666); pkts=fragment(p, 500)
+     Ether()/IPv6()/Raw('X'*666)
+     Ether()/IP(id=47750)/Raw('X'*666)
 
 Test case: MAC_IPV4_FRAG_fdir_with_l2
 =====================================
@@ -444,7 +460,8 @@ take 'mac_ipv4_frag_l2dst_fdir_queue_index' example::
 
    3.unmatched packets:
 
-      p=Ether(dst='00:00:00:00:00:01')/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666); pkts=fragment6(p, 500)
+      Ether(dst='00:00:00:00:00:01')/IP()/Raw('X'*666)
+      Ether(dst='00:00:00:00:00:01')/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666)
 
 .. note::
 
@@ -469,7 +486,8 @@ take 'mac_ipv6_frag_l2dst_fdir_queue_index' example::
 
    3.unmatched packets:
 
-      p=Ether(dst='00:00:00:00:00:01')/IP(id=47750)/Raw('X'*666); pkts=fragment(p, fragsize=500)
+      Ether(dst='00:00:00:00:00:01')/IPv6()/Raw('X'*666)
+      Ether(dst='00:00:00:00:00:01')/IP(id=47750)/Raw('X'*666)
 
 .. note::
 
@@ -495,7 +513,8 @@ take 'mac_ipv4_frag_l3src_fdir_queue_index' example::
 
    3.unmatched packets:
 
-      p=Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666); pkts=fragment6(p, 500)
+      Ether()/IP(src='192.168.1.1')/Raw('X'*666)
+      Ether()/IPv6()/IPv6ExtHdrFragment(id=47750)/Raw('X'*666)
 
 subcase 1: MAC_IPV4_FRAG_fdir_with_l3dst
 ----------------------------------------
@@ -522,7 +541,8 @@ take 'mac_ipv6_frag_l3src_fdir_queue_index' example::
 
    3.unmatched packets:
 
-      p=Ether()/IP(id=47750, src='192.168.1.1')/Raw('X'*666); pkts=fragment(p, fragsize=500)
+      Ether()/IPv6(src='2001::1')/Raw('X'*666)
+      Ether()/IP(id=47750)/Raw('X'*666)
 
 subcase 1: MAC_IPV6_FRAG_fdir_with_l3dst
 ----------------------------------------
-- 
2.17.1


  parent reply	other threads:[~2022-05-24  3:01 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-24  3:00 [dts][PATCH V2 1/5] tests/rte_flow_common:modify check mismatch pkts test Zhimin Huang
2022-05-24  3:00 ` [dts][PATCH V2 2/5] tests/ice_ip_fragment_rte_flow:extend mismatch pkts Zhimin Huang
2022-05-24  3:00 ` Zhimin Huang [this message]
2022-05-24  3:00 ` [dts][PATCH V2 4/5] tests/ice_iavf_ip_fragment_rte_flow:extend " Zhimin Huang
2022-05-24  3:00 ` [dts][PATCH V2 5/5] test_plans/ice_iavf_ip_fragment_rte_flow:extend " Zhimin Huang

Reply instructions:

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

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

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

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

  git send-email \
    --in-reply-to=20220524030048.34627-3-zhiminx.huang@intel.com \
    --to=zhiminx.huang@intel.com \
    --cc=dts@dpdk.org \
    /path/to/YOUR_REPLY

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

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