summaryrefslogtreecommitdiff
path: root/test_plans/quota_watermark_test_plan.rst
diff options
context:
space:
mode:
authorJohn McNamara <john.mcnamara@intel.com>2017-05-31 15:34:35 +0100
committerMarvin Liu <yong.liu@intel.com>2017-07-26 21:40:55 +0800
commit1413f9a3ba21ed1ceaa87f208d502530edcd15d4 (patch)
tree9486202a842591b1ac400d9d1bc980bdd3580ea5 /test_plans/quota_watermark_test_plan.rst
parent96d22a04406d187d2880749fb4b51c190ec47764 (diff)
add sphinx docs for the dts test plans
Add sphinx build files to convert the DTS test plans into html documentation. Fix a number of sphinx/rst warnings and errors. Signed-off-by: John McNamara <john.mcnamara@intel.com>
Diffstat (limited to 'test_plans/quota_watermark_test_plan.rst')
-rw-r--r--test_plans/quota_watermark_test_plan.rst110
1 files changed, 56 insertions, 54 deletions
diff --git a/test_plans/quota_watermark_test_plan.rst b/test_plans/quota_watermark_test_plan.rst
index 3d4c2ef..6759fbd 100644
--- a/test_plans/quota_watermark_test_plan.rst
+++ b/test_plans/quota_watermark_test_plan.rst
@@ -1,22 +1,22 @@
-.. Copyright (c) <2013>, Intel Corporation
+.. Copyright (c) <2013-2017>, Intel Corporation
All rights reserved.
-
+
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
-
+
- Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
-
+
- Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
-
+
- Neither the name of Intel Corporation nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
-
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
@@ -32,56 +32,57 @@
-====================
-Quota and Water-mark
-====================
+==============================================
+Sample Application Tests: Quota and Water-mark
+==============================================
-This document provides test plan for benchmarking of the Quota and Water-mark
-sample application. This is a simple example app featuring packet processing
-using Intel® Data Plane Development Kit (Intel® DPDK) that show-cases the use
-of a quota as the maximum number of packets enqueue/dequeue at a time and low
-and high water-marks to signal low and high ring usage respectively.
-Additionally, it shows how ring water-marks can be used to feedback congestion
-notifications to data producers by temporarily stopping processing overloaded
+This document provides test plan for benchmarking of the Quota and Water-mark
+sample application. This is a simple example app featuring packet processing
+using Intel® Data Plane Development Kit (Intel® DPDK) that show-cases the use
+of a quota as the maximum number of packets enqueue/dequeue at a time and low
+and high water-marks to signal low and high ring usage respectively.
+Additionally, it shows how ring water-marks can be used to feedback congestion
+notifications to data producers by temporarily stopping processing overloaded
rings and sending Ethernet flow control frames.
Prerequisites
-------------
-2x Intel® 82599 (Niantic) NICs (2x 10GbE full duplex optical ports per NIC)
-plugged into the available PCIe Gen2 8-lane slots in two different
-configurations:
+2x Intel® 82599 (Niantic) NICs (2x 10GbE full duplex optical ports per NIC)
+plugged into the available PCIe Gen2 8-lane slots in two different
+configurations:
+
1. card0 and card1 attached to socket0.
-2. card0 attached to socket0 and card1 to socket1.
+2. card0 attached to socket0 and card1 to socket1.
Test cases
----------
-The idea behind the testing process is to send a fixed number of frames from
-the traffic generator to the DUT while these are being forwarded back by the
-app and measure some of statistics. Those configurable parameters exposed by
-the control app will be modified to see how these affect into the app's
+The idea behind the testing process is to send a fixed number of frames from
+the traffic generator to the DUT while these are being forwarded back by the
+app and measure some of statistics. Those configurable parameters exposed by
+the control app will be modified to see how these affect into the app's
performance.Functional test is only used for checking packet transfer flow with
low watermark packets.
-The statistics to be measured are explained below.
+The statistics to be measured are explained below.
A table will be presented showing all the different permutations.
- Ring size
- - Size of the rings that interconnect two adjacent cores within the
+ - Size of the rings that interconnect two adjacent cores within the
pipeline.
- Quota
- - Value controls how many packets are being moved through the pipeline per
+ - Value controls how many packets are being moved through the pipeline per
en-queue and de-queue.
- Low water-mark
- - Global threshold that will resume en-queuing on a ring once its usage
+ - Global threshold that will resume en-queuing on a ring once its usage
goes below it.
- High water-mark
@@ -94,17 +95,17 @@ A table will be presented showing all the different permutations.
- Frames received
- - Number of frames received on the traffic generator once they were
+ - Number of frames received on the traffic generator once they were
forwarded back by the app.
- Control flow frames received
-
- - Number of Control flow frames (PAUSE frame defined by the IEEE 802.3x
+
+ - Number of Control flow frames (PAUSE frame defined by the IEEE 802.3x
standard) received on the traffic generator TX port.
- Transmit rate (Mpps)
-
- - Rate of transmission. It is calculated dividing the number of sent
+
+ - Rate of transmission. It is calculated dividing the number of sent
packets over the time it took the traffic generator to send them.
@@ -125,66 +126,67 @@ A table will be presented showing all the different permutations.
+-----------+-------+----------------+-----------------+-------------+-----------------+------------------------------+----------------------+
| 64 | 5 | 50 | 80 | 15000000 | | | |
+-----------+-------+----------------+-----------------+-------------+-----------------+------------------------------+----------------------+
-
-
+
+
Test Case 1: Quota and Water-mark one socket (functional)
-==========================================
+---------------------------------------------------------
+
Using No.1 card configuration.
-This test case calls the application using cores and ports masks similar to
-the ones shown below.
+This test case calls the application using cores and ports masks similar to
+the ones shown below.
- Core mask ``0xFF00``
- Port mask ``0x280``
-This core mask will make use of eight physical cores within the same socket.
+This core mask will make use of eight physical cores within the same socket.
The used ports belong to different NIC’s attached to the same socket.
Sample command::
-
+
./examples/quota_watermark/qw/build/qw -c 0xFF00 -n 4 -- -p 0x280
-
+
After boot up qw and qwctl, send IP packets by scapy with low watermark value.
Command format::
+
sendp([Ether()/IP()/("X"*26)]*<low watermark value>, iface="<port name>")
-
+
Sample command::
- sendp([Ether()/IP()/("X"*26)]*10, iface="p785p1")
+
+ sendp([Ether()/IP()/("X"*26)]*10, iface="p785p1")
Test Case 2: Quota and Water-mark one socket (performance)
-==========================================
+----------------------------------------------------------
-This test case calls the application using cores and ports masks similar to
+This test case calls the application using cores and ports masks similar to
the ones shown below.
- Core mask ``0xFF00``
- Port mask ``0x280``
-This core mask will make use of eight physical cores within the same socket.
+This core mask will make use of eight physical cores within the same socket.
The used ports belong to different NIC’s attached to the same socket.
Sample command::
-
+
./examples/quota_watermark/qw/build/qw -c 0xFF00 -n 4 -- -p 0x280
Test Case 3: Quota and Water-mark two sockets (performance)
-===========================================
+-----------------------------------------------------------
-This test case calls the application using a core and port mask similar to the
+This test case calls the application using a core and port mask similar to the
ones shown below.
- Core mask ``0x0FF0``
- Port mask ``0x202``
-This core mask will make use of eight physical cores; four within the first
-socket and four on the second one. The RX port will be attached to the first
-socket whereas the TX is to the second. This configuration will provoke the
+This core mask will make use of eight physical cores; four within the first
+socket and four on the second one. The RX port will be attached to the first
+socket whereas the TX is to the second. This configuration will provoke the
traffic going through the pipeline pass through the ``QPI`` channel.
Sample command::
./examples/quota_watermark/qw/build/qw -c 0x8180706 -n 4 -- -p 0x202
-
-