* [dts] [PATCH] test_plan/packet_ordering: enrich discription
@ 2020-06-01 15:31 Lijuan Tu
2020-06-02 5:48 ` Tu, Lijuan
0 siblings, 1 reply; 2+ messages in thread
From: Lijuan Tu @ 2020-06-01 15:31 UTC (permalink / raw)
To: dts; +Cc: Lijuan Tu
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=n, Size: 4682 bytes --]
Signed-off-by: Lijuan Tu <lijuan.tu@intel.com>
---
test_plans/packet_ordering_test_plan.rst | 86 ++++++++++++++++++++++++++++----
1 file changed, 75 insertions(+), 11 deletions(-)
diff --git a/test_plans/packet_ordering_test_plan.rst b/test_plans/packet_ordering_test_plan.rst
index cac5f7c..193aff4 100644
--- a/test_plans/packet_ordering_test_plan.rst
+++ b/test_plans/packet_ordering_test_plan.rst
@@ -32,21 +32,83 @@
-===============
-Packet Ordering
-===============
+=========================================
+Sample Application Tests: Packet Ordering
+=========================================
This document provides test plan for benchmarking of the Packet Ordering
sample application. This is a simple example app featuring packet processing
-using Intel® Data Plane Development Kit (Intel® DPDK) based on a sliding window
-using a sequence number for the packet and a reorder queue.
+using Data Plane Development Kit (DPDK) based on a sliding window using a
+sequence number for the packet and a reorder queue.
+
+This app makes use of the librte_reorder library, it requires at least 3 lcores
+for RX, Workers (1 or more) and TX threads. Communication between RX-Workers and
+Workers-TX is done by using rings. The flow of mbufs is the following:
+
+ * RX thread gets mbufs from driver, set sequence number and enqueue them in ring.
+ * Workers dequeue mbufs from ring, do some 'work' and enqueue mbufs in ring.
+ * TX dequeue mbufs from ring, inserts them in reorder buffer, drains mbufs from
+ reorder and sends them to the driver.
+
+Command Usage::
+
+ ./packet_ordering [EAL options] -- [-p PORTMASK] [--insight-worker]
+
+ -p PORTMASK : hexadecimal bitmask of ports to configure
+ --insight-worker : print per core stats
+
+For example::
+
+ ./packet_ordering -l 30-35 -- -p 0x1 --insight-worker
+
+ RX thread stats:
+ - Pkts rxd: 17026944
+ - Pkts enqd to workers ring: 17026944
+
+ Worker thread stats on core [31]:
+ - Pkts deqd from workers ring: 4486598
+ - Pkts enqd to tx ring: 4486598
+ - Pkts enq to tx failed: 0
+
+ Worker thread stats on core [32]:
+ - Pkts deqd from workers ring: 4014658
+ - Pkts enqd to tx ring: 4014658
+ - Pkts enq to tx failed: 0
+
+ Worker thread stats on core [33]:
+ - Pkts deqd from workers ring: 4694356
+ - Pkts enqd to tx ring: 4694356
+ - Pkts enq to tx failed: 0
+
+ Worker thread stats on core [34]:
+ - Pkts deqd from workers ring: 3831332
+ - Pkts enqd to tx ring: 3831332
+ - Pkts enq to tx failed: 0
+
+ Worker thread stats:
+ - Pkts deqd from workers ring: 17026944
+ - Pkts enqd to tx ring: 17026944
+ - Pkts enq to tx failed: 0
+
+ TX stats:
+ - Pkts deqd from tx ring: 17026944
+ - Ro Pkts transmitted: 17026944
+ - Ro Pkts tx failed: 0
+ - Pkts transmitted w/o reorder: 0
+ - Pkts tx failed w/o reorder: 0
+
+ Port 0 stats:
+ - Pkts in: 17026944
+ - Pkts out: 17026944
+ - In Errs: 0
+ - Out Errs: 0
+ - Mbuf Errs: 0
Prerequisites
--------------------
+=============
-1x Intel® 82599 (Niantic) NICs (1x 10GbE full duplex optical ports per NIC)
-plugged into the available PCIe Gen2 8-lane slot.
+1x Intel® Ethernet Port (710 series, 82599, etc)
Test Case: Packet ordering at different rates
=============================================
@@ -54,7 +116,8 @@ Test Case: Packet ordering at different rates
The test case will send packets from the external traffic generator through
the sample application which will forward them back to the source port.
Each packet will have a sequential number which could be used to judge
-if a packet is in the right order.
+if a packet is in the right order. It's fine to increase packet type, IP dst
+addr, etc to generate sequential numbers.
Different traffic rates will be tested. The rate will go from 10% to 100%
with 10% steps.
@@ -93,8 +156,9 @@ Run the app with below sample command::
Test Case: keep the packet ordering
===================================
-This is a basic functional test.
-The packets order which will pass through a same flow should be guaranteed.
+This is a basic functional test without high speed flows.
+Send a series of packet for scapy, and check the packets forwarded out from the
+app is ordering.
1. Run the sample with below command::
--
1.8.3.1
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [dts] [PATCH] test_plan/packet_ordering: enrich discription
2020-06-01 15:31 [dts] [PATCH] test_plan/packet_ordering: enrich discription Lijuan Tu
@ 2020-06-02 5:48 ` Tu, Lijuan
0 siblings, 0 replies; 2+ messages in thread
From: Tu, Lijuan @ 2020-06-02 5:48 UTC (permalink / raw)
To: dts
Applied, thanks
> -----Original Message-----
> From: Tu, Lijuan
> Sent: Monday, June 1, 2020 11:32 PM
> To: dts@dpdk.org
> Cc: Tu, Lijuan <lijuan.tu@intel.com>
> Subject: [PATCH] test_plan/packet_ordering: enrich discription
>
> Signed-off-by: Lijuan Tu <lijuan.tu@intel.com>
> ---
> test_plans/packet_ordering_test_plan.rst | 86
> ++++++++++++++++++++++++++++----
> 1 file changed, 75 insertions(+), 11 deletions(-)
>
> diff --git a/test_plans/packet_ordering_test_plan.rst
> b/test_plans/packet_ordering_test_plan.rst
> index cac5f7c..193aff4 100644
> --- a/test_plans/packet_ordering_test_plan.rst
> +++ b/test_plans/packet_ordering_test_plan.rst
> @@ -32,21 +32,83 @@
>
>
>
> -===============
> -Packet Ordering
> -===============
> +=========================================
> +Sample Application Tests: Packet Ordering
> +=========================================
>
> This document provides test plan for benchmarking of the Packet Ordering
> sample application. This is a simple example app featuring packet processing
> -using Intel® Data Plane Development Kit (Intel® DPDK) based on a sliding
> window -using a sequence number for the packet and a reorder queue.
> +using Data Plane Development Kit (DPDK) based on a sliding window using
> +a sequence number for the packet and a reorder queue.
> +
> +This app makes use of the librte_reorder library, it requires at least
> +3 lcores for RX, Workers (1 or more) and TX threads. Communication
> +between RX-Workers and Workers-TX is done by using rings. The flow of
> mbufs is the following:
> +
> + * RX thread gets mbufs from driver, set sequence number and enqueue
> them in ring.
> + * Workers dequeue mbufs from ring, do some 'work' and enqueue mbufs
> in ring.
> + * TX dequeue mbufs from ring, inserts them in reorder buffer, drains
> mbufs from
> + reorder and sends them to the driver.
> +
> +Command Usage::
> +
> + ./packet_ordering [EAL options] -- [-p PORTMASK] [--insight-worker]
> +
> + -p PORTMASK : hexadecimal bitmask of ports to configure
> + --insight-worker : print per core stats
> +
> +For example::
> +
> + ./packet_ordering -l 30-35 -- -p 0x1 --insight-worker
> +
> + RX thread stats:
> + - Pkts rxd: 17026944
> + - Pkts enqd to workers ring: 17026944
> +
> + Worker thread stats on core [31]:
> + - Pkts deqd from workers ring: 4486598
> + - Pkts enqd to tx ring: 4486598
> + - Pkts enq to tx failed: 0
> +
> + Worker thread stats on core [32]:
> + - Pkts deqd from workers ring: 4014658
> + - Pkts enqd to tx ring: 4014658
> + - Pkts enq to tx failed: 0
> +
> + Worker thread stats on core [33]:
> + - Pkts deqd from workers ring: 4694356
> + - Pkts enqd to tx ring: 4694356
> + - Pkts enq to tx failed: 0
> +
> + Worker thread stats on core [34]:
> + - Pkts deqd from workers ring: 3831332
> + - Pkts enqd to tx ring: 3831332
> + - Pkts enq to tx failed: 0
> +
> + Worker thread stats:
> + - Pkts deqd from workers ring: 17026944
> + - Pkts enqd to tx ring: 17026944
> + - Pkts enq to tx failed: 0
> +
> + TX stats:
> + - Pkts deqd from tx ring: 17026944
> + - Ro Pkts transmitted: 17026944
> + - Ro Pkts tx failed: 0
> + - Pkts transmitted w/o reorder: 0
> + - Pkts tx failed w/o reorder: 0
> +
> + Port 0 stats:
> + - Pkts in: 17026944
> + - Pkts out: 17026944
> + - In Errs: 0
> + - Out Errs: 0
> + - Mbuf Errs: 0
>
>
> Prerequisites
> --------------------
> +=============
>
> -1x Intel® 82599 (Niantic) NICs (1x 10GbE full duplex optical ports per NIC) -
> plugged into the available PCIe Gen2 8-lane slot.
> +1x Intel® Ethernet Port (710 series, 82599, etc)
>
> Test Case: Packet ordering at different rates
> =============================================
> @@ -54,7 +116,8 @@ Test Case: Packet ordering at different rates The test
> case will send packets from the external traffic generator through the
> sample application which will forward them back to the source port.
> Each packet will have a sequential number which could be used to judge -if a
> packet is in the right order.
> +if a packet is in the right order. It's fine to increase packet type,
> +IP dst addr, etc to generate sequential numbers.
> Different traffic rates will be tested. The rate will go from 10% to 100% with
> 10% steps.
>
> @@ -93,8 +156,9 @@ Run the app with below sample command::
> Test Case: keep the packet ordering
> ===================================
>
> -This is a basic functional test.
> -The packets order which will pass through a same flow should be
> guaranteed.
> +This is a basic functional test without high speed flows.
> +Send a series of packet for scapy, and check the packets forwarded out
> +from the app is ordering.
>
> 1. Run the sample with below command::
>
> --
> 1.8.3.1
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-06-02 5:50 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-01 15:31 [dts] [PATCH] test_plan/packet_ordering: enrich discription Lijuan Tu
2020-06-02 5:48 ` Tu, Lijuan
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).