diff options
author | John McNamara <john.mcnamara@intel.com> | 2017-05-31 15:34:35 +0100 |
---|---|---|
committer | Marvin Liu <yong.liu@intel.com> | 2017-07-26 21:40:55 +0800 |
commit | 1413f9a3ba21ed1ceaa87f208d502530edcd15d4 (patch) | |
tree | 9486202a842591b1ac400d9d1bc980bdd3580ea5 /test_plans/quota_watermark_test_plan.rst | |
parent | 96d22a04406d187d2880749fb4b51c190ec47764 (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.rst | 110 |
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 - - |