CSIT-618 CSIT rls1707 Report - Update I 67/7567/6
authorPeter Mikus <pmikus@cisco.com>
Thu, 13 Jul 2017 12:42:38 +0000 (14:42 +0200)
committerPeter Mikus <pmikus@cisco.com>
Fri, 14 Jul 2017 12:21:06 +0000 (12:21 +0000)
Change-Id: I7c3af55db6cc89f03004db6ddf6fcf67965132a7
Signed-off-by: Peter Mikus <pmikus@cisco.com>
41 files changed:
docs/report/dpdk_performance_tests/csit_release_notes.rst
docs/report/dpdk_performance_tests/test_environment.rst
docs/report/honeycomb_functional_tests/csit_release_notes.rst
docs/report/honeycomb_functional_tests/overview.rst
docs/report/index.rst
docs/report/introduction/csit_design.png [new file with mode: 0644]
docs/report/introduction/csit_design.rst [new file with mode: 0644]
docs/report/introduction/csit_test_naming.rst
docs/report/introduction/general_notes.rst
docs/report/introduction/index.rst
docs/report/introduction/overview.rst
docs/report/nsh_sfc_functional_tests/csit_release_notes.rst [new file with mode: 0644]
docs/report/nsh_sfc_functional_tests/documentation.rst [new file with mode: 0644]
docs/report/nsh_sfc_functional_tests/index.rst [new file with mode: 0644]
docs/report/nsh_sfc_functional_tests/overview.rst [new file with mode: 0644]
docs/report/nsh_sfc_functional_tests/test_environment.rst [new file with mode: 0644]
docs/report/vpp_functional_tests/csit_release_notes.rst
docs/report/vpp_functional_tests/overview.rst
docs/report/vpp_functional_tests/test_environment.rst
docs/report/vpp_performance_tests/csit_release_notes.rst
docs/report/vpp_performance_tests/overview.rst
docs/report/vpp_performance_tests/packet_latency_graphs/index.rst
docs/report/vpp_performance_tests/packet_latency_graphs/ip4.rst [moved from docs/report/vpp_performance_tests/packet_latency_graphs/ipv4.rst with 97% similarity]
docs/report/vpp_performance_tests/packet_latency_graphs/ip4_tunnels.rst [moved from docs/report/vpp_performance_tests/packet_latency_graphs/ipv4_tunnels.rst with 96% similarity]
docs/report/vpp_performance_tests/packet_latency_graphs/ip6.rst [new file with mode: 0644]
docs/report/vpp_performance_tests/packet_latency_graphs/ip6_tunnels.rst [moved from docs/report/vpp_performance_tests/packet_latency_graphs/ipv6_tunnels.rst with 100% similarity]
docs/report/vpp_performance_tests/packet_latency_graphs/ipsec.rst
docs/report/vpp_performance_tests/packet_latency_graphs/ipv6.rst [deleted file]
docs/report/vpp_performance_tests/packet_latency_graphs/l2.rst
docs/report/vpp_performance_tests/packet_latency_graphs/vm_vhost.rst
docs/report/vpp_performance_tests/packet_throughput_graphs/index.rst
docs/report/vpp_performance_tests/packet_throughput_graphs/ip4.rst [moved from docs/report/vpp_performance_tests/packet_throughput_graphs/ipv4.rst with 86% similarity]
docs/report/vpp_performance_tests/packet_throughput_graphs/ip4_tunnels.rst [moved from docs/report/vpp_performance_tests/packet_throughput_graphs/ipv4_tunnels.rst with 96% similarity]
docs/report/vpp_performance_tests/packet_throughput_graphs/ip6.rst [moved from docs/report/vpp_performance_tests/packet_throughput_graphs/ipv6.rst with 97% similarity]
docs/report/vpp_performance_tests/packet_throughput_graphs/ip6_tunnels.rst [moved from docs/report/vpp_performance_tests/packet_throughput_graphs/ipv6_tunnels.rst with 95% similarity]
docs/report/vpp_performance_tests/packet_throughput_graphs/ipsec.rst
docs/report/vpp_performance_tests/packet_throughput_graphs/l2.rst
docs/report/vpp_performance_tests/packet_throughput_graphs/vm_vhost.rst
docs/report/vpp_performance_tests/test_environment.rst
resources/tools/report_gen/conf.py
resources/tools/report_gen/run_report.sh

index e8f47d9..9673754 100644 (file)
@@ -4,9 +4,9 @@ CSIT Release Notes
 Changes in CSIT |release|
 -------------------------
 
-#. Improved Testpmd tests
+#. Improved performance of testpmd tests
 
-    - Performance of NICs - 2p40GE Intel xl710, 2p10GE Intel x710
+   - Performance of NICs - 2p40GE Intel xl710, 2p10GE Intel x710
 
 #. Added L3FWD tests on 2p10GE Intel x520-DA2
 
index ed71c7f..e8ed76d 100644 (file)
@@ -4,17 +4,144 @@ Test Environment
 To execute performance tests, there are three identical testbeds, each testbed\r
 consists of two SUTs and one TG.\r
 \r
+Naming Convention\r
+-----------------\r
+\r
+Following naming convention is used within this page to specify physical\r
+connectivity and wiring across defined CSIT testbeds:\r
+\r
+- testbedname: testbedN.\r
+- hostname:\r
+\r
+  - traffic-generator: tN-tgW.\r
+  - system-under-testX: tN-sutX.\r
+\r
+- portnames:\r
+\r
+  - tN-tgW-cY/pZ.\r
+  - tN-sutX-cY/pZ.\r
+\r
+- where:\r
+\r
+  - N - testbed number.\r
+  - tgW - server acts as traffic-generator with W index.\r
+  - sutX - server acts as system-under-test with X index.\r
+  - Y - PCIe slot number denoting a NIC card number within the host.\r
+\r
+    - Y=1,2,3 - slots in Riser 1, Right PCIe Riser Board, NUMA node 0.\r
+    - Y=4,5,6 - slots in Riser 2, Left PCIe Riser Board, NUMA node 1.\r
+    - Y=m - the MLOM slot.\r
+\r
+  - Z - port number on the NIC card.\r
+\r
+Server HW Configuration\r
+-----------------------\r
+\r
+CSIT testbed contains following three HW configuration types of UCS x86 servers,\r
+across total of ten servers provided:\r
+\r
+#. Type-1: Purpose - VPP functional and performance conformance testing.\r
+\r
+   - Quantity: 6 computers as SUT hosts (Systems Under Test).\r
+   - Physical connectivity:\r
+\r
+     - CIMC and host management ports.\r
+     - NIC ports connected in 3-node topologies.\r
+\r
+   - Main HW configuration:\r
+\r
+     - Chassis: UCSC-C240-M4SX with 6 PCIe3.0 slots.\r
+     - Processors: 2* E5-2699 2.3 GHz.\r
+     - RAM Memory: 16* 32GB DDR4-2133MHz.\r
+     - Disks: 2* 2TB 12G SAS 7.2K RPM SFF HDD.\r
+\r
+   - NICs configuration:\r
+\r
+     - Right PCIe Riser Board (Riser 1) (x8, x8, x8 PCIe3.0 lanes)\r
+\r
+       - PCIe Slot1: Cisco VIC 1385 2p40GE.\r
+\r
+         - PCIe Slot2: Intel NIC x520 2p10GE.\r
+         - PCIe Slot3: empty.\r
+\r
+     - Left PCIe Riser Board (Riser 2) (x8, x16, x8 PCIe3.0 lanes)\r
+\r
+       - PCIe Slot4: Intel NIC xl710 2p40GE.\r
+       - PCIe Slot5: Intel NIC x710 2p10GE.\r
+       - PCIe Slot6: Intel QAT 8950 50G (Walnut Hill)\r
+\r
+     - MLOM slot: Cisco VIC 1227 2p10GE (x8 PCIe2.0 lanes).\r
+\r
+#. Type-2: Purpose - VPP functional and performance conformance testing.\r
+\r
+   - Quantity: 3 computers as TG hosts (Traffic Generators).\r
+   - Physical connectivity:\r
+\r
+     - CIMC and host management ports.\r
+     - NIC ports connected in 3-node topologies.\r
+\r
+   - Main HW configuration:\r
+\r
+     - Chassis: UCSC-C240-M4SX with 6 PCIe3.0 slots.\r
+     - Processors: 2* E5-2699 2.3 GHz.\r
+     - RAM Memory: 16* 32GB DDR4-2133MHz.\r
+     - Disks: 2* 2TB 12G SAS 7.2K RPM SFF HDD.\r
+\r
+   - NICs configuration:\r
+\r
+     - Right PCIe Riser Board (Riser 1) (x8, x8, x8 lanes)\r
+\r
+       - PCIe Slot1: Intel NIC xl710 2p40GE.\r
+       - PCIe Slot2: Intel NIC x710 2p10GE.\r
+       - PCIe Slot3: Intel NIC x710 2p10GE.\r
+\r
+     - Left PCIe Riser Board (Riser 2) (x8, x16, x8 lanes)\r
+\r
+       - PCIe Slot4: Intel NIC xl710 2p40GE.\r
+       - PCIe Slot5: Intel NIC x710 2p10GE.\r
+       - PCIe Slot6: Intel NIC x710 2p10GE.\r
+\r
+     - MLOM slot: empty.\r
+\r
+#. Type-3: Purpose - VIRL functional conformance.\r
+\r
+   - Quantity: 3 computers as VIRL hosts.\r
+   - Physical connectivity:\r
+\r
+     - CIMC and host management ports.\r
+     - no NIC ports, standalone setup.\r
+\r
+   - Main HW configuration:\r
+\r
+     - Chassis: UCSC-C240-M4SX with 6 PCIe3.0 slots.\r
+     - Processors: 2* E5-2699 2.3 GHz.\r
+     - RAM Memory: 16* 32GB DDR4-2133MHz.\r
+     - Disks: 2* 480 GB 2.5inch 6G SATA SSD.\r
+\r
+   - NICs configuration:\r
+\r
+     - Right PCIe Riser Board (Riser 1) (x8, x8, x8 lanes)\r
+\r
+       - no cards.\r
+\r
+     - Left PCIe Riser Board (Riser 2) (x8, x16, x8 lanes)\r
+\r
+       - no cards.\r
+\r
+     - MLOM slot: empty.\r
+\r
 SUT Configuration - Host HW\r
 ---------------------------\r
 Host hardware details (CPU, memory, NIC layout) and physical topology are\r
-described in detail in\r
-`LF FDio CSIT testbed wiki page <https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.\r
+described in detail in `LF FDio CSIT testbed wiki page\r
+<https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.\r
 \r
 **Host configuration**\r
 \r
-- All hosts are Cisco UCS C240-M4 (2x Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz,\r
-  18c, 512GB RAM)\r
-  ::\r
+All hosts are Cisco UCS C240-M4 (2x Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz,\r
+18c, 512GB RAM)\r
+\r
+::\r
 \r
     $ lscpu\r
     Architecture:          x86_64\r
@@ -42,8 +169,9 @@ described in detail in
     NUMA node1 CPU(s):     18-35\r
     Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm xsaveopt cqm_llc cqm_occup_llc dtherm arat pln pts\r
 \r
-- BIOS settings\r
-  ::\r
+**BIOS settings**\r
+\r
+::\r
 \r
     C240 /bios # show advanced detail\r
     Set-up parameters:\r
@@ -114,18 +242,19 @@ described in detail in
         CDN Support for VIC: Disabled\r
         Out-of-Band Management: Disabled\r
 \r
-- In addition to CIMC and Management, each TG has 4x Intel X710 10GB NIC\r
-  (=8 ports) and 2x Intel XL710 40GB NIC (=4 ports), whereas each SUT has:\r
+**NIC models and placement**\r
 \r
-  - 1x Intel X520 NIC (10GB, 2 ports),\r
-  - 1x Cisco VIC 1385 (40GB, 2 ports),\r
-  - 1x Intel XL710 NIC (40GB, 2 ports),\r
-  - 1x Intel X710 NIC (10GB, 2 ports),\r
-  - 1x Cisco VIC 1227 (10GB, 2 ports).\r
-  - This allows for a total of five ring topologies, each using ports on\r
-    specific NIC model, enabling per NIC model benchmarking.\r
+In addition to CIMC and Management, each TG has 4x Intel X710 10GB NIC\r
+(=8 ports) and 2x Intel XL710 40GB NIC (=4 ports), whereas each SUT has:\r
 \r
-**NIC models and placement**\r
+- 1x Intel X520 NIC (10GB, 2 ports),\r
+- 1x Cisco VIC 1385 (40GB, 2 ports),\r
+- 1x Intel XL710 NIC (40GB, 2 ports),\r
+- 1x Intel X710 NIC (10GB, 2 ports),\r
+- 1x Cisco VIC 1227 (10GB, 2 ports).\r
+\r
+This allows for a total of five ring topologies, each using ports on specific\r
+NIC model, enabling per NIC model benchmarking.\r
 \r
 - 0a:00.0 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+\r
   Network Connection (rev 01) Subsystem: Intel Corporation Ethernet Server\r
@@ -157,10 +286,13 @@ described in detail in
 SUT Configuration - Host OS Linux\r
 ---------------------------------\r
 \r
-Software details (OS, configuration) are described in\r
-`CSIT/CSIT_LF_testbed <https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.\r
+Software details (OS, configuration) are described in FD.io wiki `LF FDio CSIT\r
+testbed wiki page <https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.\r
 \r
-Below a subset of the configuration:\r
+System provisioning is done by combination of PXE boot unattented install and\r
+`Ansible <https://www.ansible.com>`_ described in `CSIT Testbed Setup`_.\r
+\r
+Below a subset of the running configuration:\r
 \r
 ::\r
 \r
@@ -233,11 +365,39 @@ Below a subset of the configuration:
     Node 1 HugePages_Free:   2048\r
     Node 1 HugePages_Surp:      0\r
 \r
+**Kernel boot parameters used in CSIT performance testbeds**\r
+\r
+- **isolcpus=<cpu number>-<cpu number>** used for all cpu cores apart from\r
+  first core of each socket used for running VPP worker threads and Qemu/LXC\r
+  processes https://www.kernel.org/doc/Documentation/kernel-parameters.txt\r
+- **intel_pstate=disable** - [X86] Do not enable intel_pstate as the default\r
+  scaling driver for the supported processors. Intel P-State driver decide what\r
+  P-state (CPU core power state) to use based on requesting policy from the\r
+  cpufreq core. [X86 - Either 32-bit or 64-bit x86]\r
+  https://www.kernel.org/doc/Documentation/cpu-freq/intel-pstate.txt\r
+- **nohz_full=<cpu number>-<cpu number>** - [KNL,BOOT] In kernels built with\r
+  CONFIG_NO_HZ_FULL=y, set the specified list of CPUs whose tick will be stopped\r
+  whenever possible. The boot CPU will be forced outside the range to maintain\r
+  the timekeeping. The CPUs in this range must also be included in the\r
+  rcu_nocbs= set. Specifies the adaptive-ticks CPU cores, causing kernel to\r
+  avoid sending scheduling-clock interrupts to listed cores as long as they have\r
+  a single runnable task. [KNL - Is a kernel start-up parameter, SMP - The\r
+  kernel is an SMP kernel].\r
+  https://www.kernel.org/doc/Documentation/timers/NO_HZ.txt\r
+- **rcu_nocbs** - [KNL] In kernels built with CONFIG_RCU_NOCB_CPU=y, set the\r
+  specified list of CPUs to be no-callback CPUs, that never queue RCU callbacks\r
+  (read-copy update).\r
+  https://www.kernel.org/doc/Documentation/kernel-parameters.txt\r
+\r
+**Applied command line boot parameters:**\r
+\r
 ::\r
 \r
     $ cat /proc/cmdline\r
     BOOT_IMAGE=/vmlinuz-4.4.0-72-generic root=UUID=35ea11e4-e44f-4f67-8cbe-12f09c49ed90 ro isolcpus=1-17,19-35 nohz_full=1-17,19-35 rcu_nocbs=1-17,19-35 intel_pstate=disable console=tty0 console=ttyS0,115200n8\r
 \r
+**Mount listing**\r
+\r
 ::\r
 \r
     $ cat /proc/mounts\r
@@ -273,6 +433,8 @@ Below a subset of the configuration:
     none /mnt/huge hugetlbfs rw,relatime,pagesize=2048k 0 0\r
     lxcfs /var/lib/lxcfs fuse.lxcfs rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other 0 0\r
 \r
+**Package listing**\r
+\r
 ::\r
 \r
     $ dpkg -l\r
@@ -808,6 +970,8 @@ Below a subset of the configuration:
     ii  zlib1g:amd64                                                      1:1.2.8.dfsg-2ubuntu4                 amd64                                 compression library - runtime\r
     ii  zlib1g-dev:amd64                                                  1:1.2.8.dfsg-2ubuntu4                 amd64                                 compression library - development\r
 \r
+**Kernel module listing**\r
+\r
 ::\r
 \r
     $ lsmod | sort\r
@@ -897,6 +1061,8 @@ Below a subset of the configuration:
     xt_CHECKSUM            16384  1\r
     xt_tcpudp              16384  5\r
 \r
+**Sysctl listing**\r
+\r
 ::\r
 \r
     $ sysctl -a\r
@@ -1841,6 +2007,8 @@ Below a subset of the configuration:
     vm.vfs_cache_pressure = 100\r
     vm.zone_reclaim_mode = 0\r
 \r
+**Services listing**\r
+\r
 ::\r
 \r
     $ service --status-all\r
@@ -1888,6 +2056,71 @@ Below a subset of the configuration:
      [ + ]  uuidd\r
      [ - ]  x11-common\r
 \r
+**Host CFS optimizations (QEMU+VPP)**\r
+\r
+Applying CFS scheduler tuning on all Qemu vcpu worker threads (those are\r
+handling testpmd - pmd threads) and VPP PMD worker threads. List of VPP PMD\r
+threads can be obtained e.g. from:\r
+\r
+::\r
+\r
+    $ for psid in $(pgrep vpp)\r
+    $ do\r
+    $     for tid in $(ps -Lo tid --pid $psid | grep -v TID)\r
+    $     do\r
+    $         echo $tid\r
+    $     done\r
+    $ done\r
+\r
+Or:\r
+\r
+::\r
+\r
+    $ cat /proc/`pidof vpp`/task/*/stat | awk '{print $1" "$2" "$39}'\r
+\r
+Applying Round-robin scheduling with highest priority\r
+\r
+::\r
+\r
+    $ for psid in $(pgrep vpp)\r
+    $ do\r
+    $     for tid in $(ps -Lo tid --pid $psid | grep -v TID)\r
+    $     do\r
+    $         chrt -r -p 1 $tid\r
+    $     done\r
+    $ done\r
+\r
+More information about Linux CFS can be found in: `Sched manual pages\r
+<http://man7.org/linux/man-pages/man7/sched.7.html>`_.\r
+\r
+\r
+**Host IRQ affinity**\r
+\r
+Changing the default pinning of every IRQ to core 0. (Same does apply on both\r
+guest VM and host OS)\r
+\r
+::\r
+\r
+    $ for l in `ls /proc/irq`; do echo 1 | sudo tee /proc/irq/$l/smp_affinity; done\r
+\r
+**Host RCU affinity**\r
+\r
+Changing the default pinning of RCU to core 0. (Same does apply on both guest VM\r
+and host OS)\r
+\r
+::\r
+\r
+    $ for i in `pgrep rcu[^c]` ; do sudo taskset -pc 0 $i ; done\r
+\r
+**Host Writeback affinity**\r
+\r
+Changing the default pinning of writebacks to core 0. (Same does apply on both\r
+guest VM and host OS)\r
+\r
+::\r
+\r
+    $ echo 1 | sudo tee /sys/bus/workqueue/devices/writeback/cpumask\r
+\r
 DUT Configuration - DPDK\r
 ------------------------\r
 \r
@@ -1916,13 +2149,13 @@ Tagged by **2T2C**
 \r
 .. code-block:: bash\r
 \r
-    testpmd -c 0x403 -n 4 -- --numa --nb-ports=2 --portmask=0x3 --nb-cores=2 --max-pkt-len=9000 --txqflags=0 --forward-mode=io --rxq=1 --txq=1 --burst=64  --burst=64 --rxd=1024 --txd=1024 --disable-link-check --auto-start\r
+    testpmd -c 0x403 -n 4 -- --numa --nb-ports=2 --portmask=0x3 --nb-cores=2 --max-pkt-len=9000 --txqflags=0 --forward-mode=io --rxq=1 --txq=1 --burst=64 --rxd=1024 --txd=1024 --disable-link-check --auto-start\r
 \r
 Tagged by **4T4C**\r
 \r
 .. code-block:: bash\r
 \r
-    testpmd -c 0xc07 -n 4 -- --numa --nb-ports=2 --portmask=0x3 --nb-cores=4 --max-pkt-len=9000 --txqflags=0 --forward-mode=io --rxq=2 --txq=2 --burst=64  --burst=64 --rxd=1024 --txd=1024 --disable-link-check --auto-start\r
+    testpmd -c 0xc07 -n 4 -- --numa --nb-ports=2 --portmask=0x3 --nb-cores=4 --max-pkt-len=9000 --txqflags=0 --forward-mode=io --rxq=2 --txq=2 --burst=64 --rxd=1024 --txd=1024 --disable-link-check --auto-start\r
 \r
 **L3FWD Startup Configuration**\r
 \r
@@ -1976,7 +2209,12 @@ DPDK v17.05
         - dest_mac        :   [0x3c,0xfd,0xfe,0x9c,0xee,0xf4]\r
           src_mac         :   [0x3c,0xfd,0xfe,0x9c,0xee,0xf5]\r
 \r
+**TG Startup Command**\r
+\r
+::\r
+\r
+    $ sh -c 'cd <t-rex-install-dir>/scripts/ && sudo nohup ./t-rex-64 -i -c 7 --iom 0 > /dev/null 2>&1 &'> /dev/null\r
+\r
 **TG common API - pointer to driver**\r
 \r
 `TRex driver`_\r
-\r
index f36c7a7..a398fa4 100644 (file)
@@ -6,12 +6,12 @@ Changes in CSIT |release|
 \r
 #. Added Honeycomb functional tests\r
 \r
-    - ACL plugin\r
-    - Routing\r
-    - SLAAC\r
-    - Proxy ARP\r
-    - DHCP Relay\r
-    - Neighbor Discovery Proxy\r
+   - ACL plugin\r
+   - Routing\r
+   - SLAAC\r
+   - Proxy ARP\r
+   - DHCP Relay\r
+   - Neighbor Discovery Proxy\r
 \r
 #. Changed execution environment from Ubuntu14.04 to Ubuntu16.04\r
 \r
index 9cf741e..c73e970 100644 (file)
@@ -185,12 +185,12 @@ suites:
 
 #. **Physical port to physical port - a.k.a. NIC-to-NIC, Phy-to-Phy, P2P**
 
-    - *eth2p-ethip4-ip4base-func.robot* => 2 ports of Ethernet, IPv4 baseline
-      routed forwarding, functional tests.
+   - *eth2p-ethip4-ip4base-func.robot* => 2 ports of Ethernet, IPv4 baseline
+     routed forwarding, functional tests.
 
 #. **Physical port to VM (or VM chain) to physical port - a.k.a. NIC2VM2NIC,
    P2V2P, NIC2VMchain2NIC, P2V2V2P**
 
-    - *eth2p-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot* => 2 ports of
-      Ethernet, IPv4 VXLAN Ethernet, L2 bridge-domain switching to/from two vhost
-      interfaces and one VM, functional tests.
+   - *eth2p-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot* => 2 ports of
+     Ethernet, IPv4 VXLAN Ethernet, L2 bridge-domain switching to/from two vhost
+     interfaces and one VM, functional tests.
index 29f067b..be7129c 100644 (file)
@@ -10,6 +10,7 @@ CSIT 17.07
     vpp_functional_tests/index
     honeycomb_functional_tests/index
     vpp_unit_tests/index
+    nsh_sfc_functional_tests/index
     detailed_test_results/index
     test_configuration/index
     test_operational_data/index
diff --git a/docs/report/introduction/csit_design.png b/docs/report/introduction/csit_design.png
new file mode 100644 (file)
index 0000000..175c2f5
Binary files /dev/null and b/docs/report/introduction/csit_design.png differ
diff --git a/docs/report/introduction/csit_design.rst b/docs/report/introduction/csit_design.rst
new file mode 100644 (file)
index 0000000..8c6c87f
--- /dev/null
@@ -0,0 +1,178 @@
+CSIT Design\r
+===========\r
+\r
+FD.io CSIT system design needs to meet continuously expanding requirements of\r
+FD.io projects including VPP, related sub-systems (e.g. plugin applications,\r
+DPDK drivers) and FD.io applications (e.g. DPDK applications), as well as\r
+growing number of compute platforms running those applications. With CSIT\r
+project scope and charter including both FD.io continuous testing AND\r
+performance trending/comparisons, those evolving requirements further amplify\r
+the need for CSIT framework modularity, flexibility and usability.\r
+\r
+Design Hierarchy\r
+----------------\r
+\r
+CSIT follows a hierarchical system design with SUTs and DUTs at the bottom\r
+level, and presentation level at the top level, with a number of functional\r
+layers in-between. The current CSIT design including CSIT framework is depicted\r
+in the diagram below.\r
+\r
+.. figure:: csit_design.png\r
+   :alt: FD.io CSIT system design\r
+   :align: center\r
+\r
+   *Figure 1. FD.io CSIT system design*\r
+\r
+A brief bottom-up description is provided here:\r
+\r
+#. SUTs, DUTs, TGs:\r
+\r
+   - SUTs - Systems Under Test\r
+   - DUTs - Devices Under Test\r
+   - TGs - Traffic Generators\r
+\r
+#. Level-1 libraries - Robot and Python:\r
+\r
+   - Lowest level CSIT libraries abstracting underlying test environment, SUT,\r
+     DUT and TG specifics\r
+   - Used commonly across multiple L2 KWs\r
+   - Performance and functional tests:\r
+\r
+     - L1 KWs (KeyWords) are implemented as RF libraries and Python\r
+       libraries\r
+\r
+   - Performance TG L1 KWs:\r
+\r
+     - All L1 KWs are implemented as Python libraries\r
+\r
+       - Support for TRex only today\r
+       - Need to add IXIA\r
+\r
+   - Performance data plane traffic profiles:\r
+\r
+     - TG-specific stream profiles provide full control of:\r
+\r
+       - Packet definition â€“ layers, MACs, IPs, ports, combinations thereof\r
+         e.g. IPs and UDP ports\r
+       - Stream definitions - different streams can run together, delayed,\r
+         one after each other\r
+       - Stream profiles are independent of CSIT framework and can be used\r
+         in any T-rex setup, can be sent anywhere to repeat tests with\r
+         exactly the same setup\r
+       - Easily extensible â€“ one can create a new stream profile that meets\r
+         tests requirements\r
+       - Same stream profile can be used for different tests with the same\r
+         traffic needs\r
+\r
+   - Sunctional data plane traffic scripts:\r
+\r
+     - Scapy specific traffic scripts\r
+\r
+#. Level-2 libraries - Robot resource files:\r
+\r
+   - Higher level CSIT libraries abstracting required functions for executing\r
+     tests\r
+   - L2 KWs are classified into the following functional categories:\r
+\r
+     - Configuration, test, verification, state report\r
+     - Suite setup, suite teardown\r
+     - Test setup, test teardown\r
+\r
+#. Tests - Robot:\r
+\r
+   - Test suites with test cases;\r
+   - Functional tests using VIRL environment:\r
+\r
+     - VPP\r
+     - HoneyComb\r
+\r
+   - Performance tests using physical testbed environment:\r
+\r
+     - VPP\r
+     - Testpmd\r
+\r
+   - Tools:\r
+\r
+     - Documentation generator\r
+     - Report generator\r
+     - Testbed environment setup ansible playbooks\r
+     - Operational debugging scripts\r
+\r
+Test Lifecycle Abstraction\r
+--------------------------\r
+\r
+A well coded test must follow a disciplined abstraction of the test lifecycles\r
+that includes setup, configuration, test and verification. In addition to\r
+improve test execution efficiency, the commmon aspects of test setup and\r
+configuration shared across multiple test cases should be done only once.\r
+Translating these high-level guidelines into the Robot Framework one arrives to\r
+definition of a well coded RF tests for FD.io CSIT.\r
+Anatomy of Good Tests for CSIT:\r
+\r
+#. Suite Setup - Suite startup Configuration common to all Test Cases in suite:\r
+   uses Configuration KWs, Verification KWs, StateReport KWs\r
+#. Test Setup - Test startup Configuration common to multiple Test Cases: uses\r
+   Configuration KWs, StateReport KWs\r
+#. Test Case - uses L2 KWs with RF Gherkin style:\r
+\r
+   - prefixed with {Given} - Verification of Test setup, reading state: uses\r
+     Configuration KWs, Verification KWs, StateReport KWs\r
+   - prefixed with {When} - Test execution: Configuration KWs, Test KWs\r
+   - prefixed with {Then} - Verification of Test execution, reading state: uses\r
+     Verification KWs, StateReport KWs\r
+\r
+#. Test Teardown - post Test teardown with Configuration cleanup and\r
+   Verification common to multiple Test Cases - uses: Configuration KWs,\r
+   Verification KWs, StateReport KWs\r
+#. Suite Teardown - Suite post-test Configuration cleanup: uses Configuration\r
+   KWs, Verification KWs, StateReport KWs\r
+\r
+RF Keywords Functional Classification\r
+-------------------------------------\r
+\r
+CSIT RF KWs are classified into the functional categories matching the test\r
+lifecycle events described earlier. All CSIT RF L2 and L1 KWs have been grouped\r
+into the following functional categories:\r
+\r
+#. Configuration\r
+#. Test\r
+#. Verification\r
+#. StateReport\r
+#. SuiteSetup\r
+#. TestSetup\r
+#. SuiteTeardown\r
+#. TestTeardown\r
+\r
+RF Keywords Naming Guidelines\r
+-----------------------------\r
+\r
+Readability counts: "..code is read much more often than it is written." Hence\r
+following a good and consistent grammar practice is important when writing RF\r
+KeyWords and Tests.\r
+All CSIT test cases are coded using Gherkin style and include only L2 KWs\r
+references. L2 KWs are coded using simple style and include L2 KWs, L1 KWs, and\r
+L1 python references. To improve readability, the proposal is to use the same\r
+grammar for both RF KW styles, and to formalize the grammar of English sentences\r
+used for naming the RF KWs.\r
+RF KWs names are short sentences expressing functional description of the\r
+command. They must follow English sentence grammar in one of the following\r
+forms:\r
+\r
+#. **Imperative** - verb-object(s): *"Do something"*, verb in base form.\r
+#. **Declarative** - subject–verb–object(s): *"Subject does something"*, verb in\r
+   a third-person singular present tense form.\r
+#. **Affirmative** - modal_verb-verb-object(s): *"Subject should be something"*,\r
+   *"Object should exist"*, verb in base form.\r
+#. **Negative** - modal_verb-Not-verb-object(s): *"Subject should not be\r
+   something"*, *"Object should not exist"*, verb in base form.\r
+\r
+Passive form MUST NOT be used. However a usage of past participle as an\r
+adjective is okay. See usage examples.\r
+Following sections list applicability of the above grammar forms to different\r
+RF KW categories. Usage examples are provided, both good and bad.\r
+\r
+Coding guidelines\r
+-----------------\r
+\r
+Coding guidelines can be found on `Design optimizations wiki page\r
+<https://wiki.fd.io/view/CSIT/Design_Optimizations>`_.\r
index 682fcd9..13eab06 100644 (file)
@@ -19,26 +19,26 @@ Naming Convention
 The CSIT approach is to use tree naming convention and to encode following\r
 testing information into test suite and test case names:\r
 \r
-1. packet network port configuration\r
+#. packet network port configuration\r
 \r
-  * port type, physical or virtual;\r
-  * number of ports;\r
-  * NIC model, if applicable;\r
-  * port-NIC locality, if applicable;\r
+   * port type, physical or virtual;\r
+   * number of ports;\r
+   * NIC model, if applicable;\r
+   * port-NIC locality, if applicable;\r
 \r
-2. packet encapsulations;\r
+#. packet encapsulations;\r
 \r
-3. VPP packet processing\r
+#. VPP packet processing\r
 \r
-  * packet forwarding mode;\r
-  * packet processing function(s);\r
+   * packet forwarding mode;\r
+   * packet processing function(s);\r
 \r
-4. packet forwarding path\r
+#. packet forwarding path\r
 \r
-  * if present, network functions (processes, containers, VMs) and their\r
-    topology within the computer;\r
+   * if present, network functions (processes, containers, VMs) and their\r
+     topology within the computer;\r
 \r
-5. main measured variable, type of test.\r
+#. main measured variable, type of test.\r
 \r
 Proposed convention is to encode ports and NICs on the left (underlay),\r
 followed by outer-most frame header, then other stacked headers up to the\r
@@ -58,61 +58,61 @@ topologies:
 \r
 1. **Physical port to physical port - a.k.a. NIC-to-NIC, Phy-to-Phy, P2P**\r
 \r
-  * *PortNICConfig-WireEncapsulation-PacketForwardingFunction-\r
-    PacketProcessingFunction1-...-PacketProcessingFunctionN-TestType*\r
-  * *10ge2p1x520-dot1q-l2bdbasemaclrn-ndrdisc.robot* => 2 ports of 10GE on Intel\r
-    x520 NIC, dot1q tagged Ethernet, L2 bridge-domain baseline switching with\r
-    MAC learning, NDR throughput discovery.\r
-  * *10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-ndrchk.robot* => 2 ports of 10GE on\r
-    Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain baseline switching\r
-    with MAC learning, NDR throughput discovery.\r
-  * *10ge2p1x520-ethip4-ip4base-ndrdisc.robot* => 2 ports of 10GE on Intel x520\r
-    NIC, IPv4 baseline routed forwarding, NDR throughput discovery.\r
-  * *10ge2p1x520-ethip6-ip6scale200k-ndrdisc.robot* => 2 ports of 10GE on Intel\r
-    x520 NIC, IPv6 scaled up routed forwarding, NDR throughput discovery.\r
-  * *10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot* => 2 ports of 10GE on\r
-    Intel x520 NIC, IPv4 baseline routed forwarding, ingress Access Control\r
-    Lists baseline matching on destination, NDR throughput discovery.\r
-  * *40ge2p1vic1385-ethip4-ip4base-ndrdisc.robot* => 2 ports of 40GE on Cisco\r
-    vic1385 NIC, IPv4 baseline routed forwarding, NDR throughput discovery.\r
-  * *eth2p-ethip4-ip4base-func.robot* => 2 ports of Ethernet, IPv4 baseline\r
-    routed forwarding, functional tests.\r
+   * *PortNICConfig-WireEncapsulation-PacketForwardingFunction-\r
+     PacketProcessingFunction1-...-PacketProcessingFunctionN-TestType*\r
+   * *10ge2p1x520-dot1q-l2bdbasemaclrn-ndrdisc.robot* => 2 ports of 10GE on Intel\r
+     x520 NIC, dot1q tagged Ethernet, L2 bridge-domain baseline switching with\r
+     MAC learning, NDR throughput discovery.\r
+   * *10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-ndrchk.robot* => 2 ports of 10GE on\r
+     Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain baseline switching\r
+     with MAC learning, NDR throughput discovery.\r
+   * *10ge2p1x520-ethip4-ip4base-ndrdisc.robot* => 2 ports of 10GE on Intel x520\r
+     NIC, IPv4 baseline routed forwarding, NDR throughput discovery.\r
+   * *10ge2p1x520-ethip6-ip6scale200k-ndrdisc.robot* => 2 ports of 10GE on Intel\r
+     x520 NIC, IPv6 scaled up routed forwarding, NDR throughput discovery.\r
+   * *10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot* => 2 ports of 10GE on\r
+     Intel x520 NIC, IPv4 baseline routed forwarding, ingress Access Control\r
+     Lists baseline matching on destination, NDR throughput discovery.\r
+   * *40ge2p1vic1385-ethip4-ip4base-ndrdisc.robot* => 2 ports of 40GE on Cisco\r
+     vic1385 NIC, IPv4 baseline routed forwarding, NDR throughput discovery.\r
+   * *eth2p-ethip4-ip4base-func.robot* => 2 ports of Ethernet, IPv4 baseline\r
+     routed forwarding, functional tests.\r
 \r
 2. **Physical port to VM (or VM chain) to physical port - a.k.a. NIC2VM2NIC,\r
    P2V2P, NIC2VMchain2NIC, P2V2V2P**\r
 \r
-  * *PortNICConfig-WireEncapsulation-PacketForwardingFunction-\r
-    PacketProcessingFunction1-...-PacketProcessingFunctionN-VirtEncapsulation-\r
-    VirtPortConfig-VMconfig-TestType*\r
-  * *10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot* => 2 ports\r
-    of 10GE on Intel x520 NIC, dot1q tagged Ethernet, L2 bridge-domain switching\r
-    to/from two vhost interfaces and one VM, NDR throughput discovery.\r
-  * *10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot* => 2\r
-    ports of 10GE on Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain\r
-    switching to/from two vhost interfaces and one VM, NDR throughput discovery.\r
-  * *10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-4vhost-2vm-ndrdisc.robot* => 2\r
-    ports of 10GE on Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain\r
-    switching to/from four vhost interfaces and two VMs, NDR throughput\r
-    discovery.\r
-  * *eth2p-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot* => 2 ports of\r
-    Ethernet, IPv4 VXLAN Ethernet, L2 bridge-domain switching to/from two vhost\r
-    interfaces and one VM, functional tests.\r
+   * *PortNICConfig-WireEncapsulation-PacketForwardingFunction-\r
+     PacketProcessingFunction1-...-PacketProcessingFunctionN-VirtEncapsulation-\r
+     VirtPortConfig-VMconfig-TestType*\r
+   * *10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot* => 2 ports\r
+     of 10GE on Intel x520 NIC, dot1q tagged Ethernet, L2 bridge-domain switching\r
+     to/from two vhost interfaces and one VM, NDR throughput discovery.\r
+   * *10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot* => 2\r
+     ports of 10GE on Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain\r
+     switching to/from two vhost interfaces and one VM, NDR throughput discovery.\r
+   * *10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-4vhost-2vm-ndrdisc.robot* => 2\r
+     ports of 10GE on Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain\r
+     switching to/from four vhost interfaces and two VMs, NDR throughput\r
+     discovery.\r
+   * *eth2p-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot* => 2 ports of\r
+     Ethernet, IPv4 VXLAN Ethernet, L2 bridge-domain switching to/from two vhost\r
+     interfaces and one VM, functional tests.\r
 \r
 3. **API CRUD tests - Create (Write), Read (Retrieve), Update (Modify), Delete\r
    (Destroy) operations for configuration and operational data**\r
 \r
-  * *ManagementTestKeyword-ManagementOperation-ManagedFunction1-...-\r
-    ManagedFunctionN-ManagementAPI1-ManagementAPIN-TestType*\r
-  * *mgmt-cfg-lisp-apivat-func* => configuration of LISP with VAT API calls,\r
-    functional tests.\r
-  * *mgmt-cfg-l2bd-apihc-apivat-func* => configuration of L2 Bridge-Domain with\r
-    HoneyComb API and VAT API calls, functional tests.\r
-  * *mgmt-oper-int-apihcnc-func* => reading status and operational data of\r
-    interface with HoneyComb NetConf API calls, functional tests.\r
-  * *mgmt-cfg-int-tap-apihcnc-func* => configuration of tap interfaces with\r
-    HoneyComb NetConf API calls, functional tests.\r
-  * *mgmt-notif-int-subint-apihcnc-func* => notifications of interface and\r
-    sub-interface events with HoneyComb NetConf Notifications, functional tests.\r
+   * *ManagementTestKeyword-ManagementOperation-ManagedFunction1-...-\r
+     ManagedFunctionN-ManagementAPI1-ManagementAPIN-TestType*\r
+   * *mgmt-cfg-lisp-apivat-func* => configuration of LISP with VAT API calls,\r
+     functional tests.\r
+   * *mgmt-cfg-l2bd-apihc-apivat-func* => configuration of L2 Bridge-Domain with\r
+     HoneyComb API and VAT API calls, functional tests.\r
+   * *mgmt-oper-int-apihcnc-func* => reading status and operational data of\r
+     interface with HoneyComb NetConf API calls, functional tests.\r
+   * *mgmt-cfg-int-tap-apihcnc-func* => configuration of tap interfaces with\r
+     HoneyComb NetConf API calls, functional tests.\r
+   * *mgmt-notif-int-subint-apihcnc-func* => notifications of interface and\r
+     sub-interface events with HoneyComb NetConf Notifications, functional tests.\r
 \r
 For complete description of CSIT test naming convention please refer to `CSIT\r
 test naming wiki page <https://wiki.fd.io/view/CSIT/csit-test-naming>`_.\r
index d96dc00..f91d961 100644 (file)
@@ -41,9 +41,9 @@ is listed separately, as follows:
    functionality of VPP. Tests cover a range of CRUD operations executed\r
    against VPP.\r
 \r
-#. **TLDK Tests** - TODO\r
-\r
-#. **NSH_SFC Tests** - TODO\r
+#. **NSH_SFC Functional Tests** - NSH_SFC functional tests are executed in\r
+   virtual FD.io testbeds focusing onNSH_SFC of VPP. Tests cover a range of\r
+   CRUD operations executed against VPP.\r
 \r
 In addition to above, CSIT |release| report does also include VPP unit test\r
 results. VPP unit tests are developed within the FD.io VPP project and as they\r
index 7c74f46..eabbf7b 100644 (file)
@@ -5,5 +5,6 @@ Introduction
 
     overview
     general_notes
+    csit_design
     csit_test_naming
     csit_tag_description
index 1356ca6..7954686 100644 (file)
@@ -61,6 +61,13 @@ CSIT |release| report contains following main sections and sub-sections:
    *Overview* - short overview of unit test framework and executed tests;\r
    *Documentation* - source code documentation of VPP unit tests.\r
 \r
+#. **NSH_SFC Functional Tests** - NSH_SFC functional tests executed in\r
+   virtual FD.io testbeds; *Overview* - tested virtual topologies, test\r
+   coverage and naming specifics; *CSIT Release Notes* - changes in CSIT\r
+   |release|, added tests, environment or methodology changes, known CSIT issues;\r
+   *Test Environment* - environment description ;\r
+   *Documentation* - source code documentation for NSH_SFC functional tests.\r
+\r
 #. **Detailed Test Results** - auto-generated results from CSIT jobs\r
    executions using CSIT Robot Framework output files as source data; *VPP\r
    Performance Results*, *DPDK Performance Results*, *VPP Functional\r
diff --git a/docs/report/nsh_sfc_functional_tests/csit_release_notes.rst b/docs/report/nsh_sfc_functional_tests/csit_release_notes.rst
new file mode 100644 (file)
index 0000000..6655a45
--- /dev/null
@@ -0,0 +1,18 @@
+CSIT Release Notes
+==================
+
+Changes in CSIT |release|
+-------------------------
+
+#. TODO
+
+Known Issues
+------------
+
+Here is the list of known issues in CSIT |release| for NSH_SFC functional tests in VIRL:
+
++---+-------------------------------------------------+----------+------------------------------------------------------+
+| # | Issue                                           | Jira ID  | Description                                          |
++---+-------------------------------------------------+----------+------------------------------------------------------+
+| 1 | TODO                                            | CSIT-??? | TODO                                                 |
++---+-------------------------------------------------+----------+------------------------------------------------------+
diff --git a/docs/report/nsh_sfc_functional_tests/documentation.rst b/docs/report/nsh_sfc_functional_tests/documentation.rst
new file mode 100644 (file)
index 0000000..709f2a8
--- /dev/null
@@ -0,0 +1,6 @@
+Documentation\r
+=============\r
+\r
+`CSIT NSH_SFC Functional Tests Documentation`_ contains detailed\r
+functional description and input parameters for each test case.\r
+\r
diff --git a/docs/report/nsh_sfc_functional_tests/index.rst b/docs/report/nsh_sfc_functional_tests/index.rst
new file mode 100644 (file)
index 0000000..c7678d2
--- /dev/null
@@ -0,0 +1,10 @@
+NSH_SFC Functional Tests
+========================
+
+.. toctree::
+
+    overview
+    csit_release_notes
+    test_environment
+    documentation
+
diff --git a/docs/report/nsh_sfc_functional_tests/overview.rst b/docs/report/nsh_sfc_functional_tests/overview.rst
new file mode 100644 (file)
index 0000000..343e11d
--- /dev/null
@@ -0,0 +1,105 @@
+Overview\r
+========\r
+\r
+Tested Virtual Topologies\r
+-------------------------\r
+\r
+CSIT NSH_SFC functional tests are executed on virtualized topologies created\r
+using Virtual Internet Routing Lab (VIRL) simulation platform contributed by\r
+Cisco. VIRL runs on physical baremetal servers hosted by LF FD.io project.\r
+Majority,of the tests are executed in the three node logical test topology -\r
+Traffic Generator (TG) node and two Systems Under Test (SUT) nodes connected in\r
+a loop. Some tests use two node logical test topology - TG node and SUT1 node.\r
+Both logical test topologies are shown in the figures below.\r
+\r
+::\r
+\r
+    +------------------------+           +------------------------+\r
+    |                        |           |                        |\r
+    |  +------------------+  |           |  +------------------+  |\r
+    |  |                  <----------------->                  |  |\r
+    |  |                  |  |           |  |                  |  |\r
+    |  |       DUT1       <----------------->       DUT2       |  |\r
+    |  +--^--^------------+  |           |  +------------^--^--+  |\r
+    |     |  |               |           |               |  |     |\r
+    |     |  |         SUT1  |           |  SUT2         |  |     |\r
+    +------------------------+           +------------------------+\r
+          |  |                                           |  |\r
+          |  |                                           |  |\r
+          |  |               +-----------+               |  |\r
+          |  +--------------->           <---------------+  |\r
+          |                  |    TG     |                  |\r
+          +------------------>           <------------------+\r
+                             +-----------+\r
+\r
+                       +------------------------+\r
+                       |                        |\r
+                       |  +------------------+  |\r
+          +--------------->                  <--------------+\r
+          |            |  |                  |  |           |\r
+          |  |------------>       DUT1       <-----------+  |\r
+          |  |         |  +------------------+  |        |  |\r
+          |  |         |                        |        |  |\r
+          |  |         |                  SUT1  |        |  |\r
+          |  |         +------------------------+        |  |\r
+          |  |                                           |  |\r
+          |  |                                           |  |\r
+          |  |               +-----------+               |  |\r
+          |  +--------------->           <---------------+  |\r
+          |                  |    TG     |                  |\r
+          +------------------>           <------------------+\r
+                             +-----------+\r
+\r
+SUT1 and SUT2 are two VMs (Ubuntu or Centos, depending on the test suite), TG\r
+is a Traffic Generator (TG, another Ubuntu VM). SUTs run VPP SW application in\r
+Linux user-mode as a Device Under Test (DUT) within the VM. TG runs Scapy SW\r
+application as a packet Traffic Generator. Logical connectivity between SUTs\r
+and to TG is provided using virtual NICs using VMs' virtio driver.\r
+\r
+Virtual testbeds are created on-demand whenever a verification job is started\r
+(e.g. triggered by the gerrit patch submission) and destroyed upon completion\r
+of all functional tests. Each node is a Virtual Machine and each connection\r
+that is drawn on the diagram is available for use in any test case. During the\r
+test execution, all nodes are reachable thru the Management network connected\r
+to every node via dedicated virtual NICs and virtual links (not shown above\r
+for clarity).\r
+\r
+For the test cases that require DUT (VPP) to communicate with VM over the\r
+vhost-user interfaces, a nested VM is created on SUT1 and/or SUT2 for the\r
+duration of these particular test cases only. DUT (VPP) test topology with VM\r
+is shown in the figure below including the applicable packet flow thru the VM\r
+(marked in the figure with ``***``).\r
+\r
+::\r
+\r
+    +------------------------+           +------------------------+\r
+    |      +----------+      |           |      +----------+      |\r
+    |      |    VM    |      |           |      |    VM    |      |\r
+    |      |  ******  |      |           |      |  ******  |      |\r
+    |      +--^----^--+      |           |      +--^----^--+      |\r
+    |        *|    |*        |           |        *|    |*        |\r
+    |  +------v----v------+  |           |  +------v----v------+  |\r
+    |  |      *    *      |**|***********|**|      *    *      |  |\r
+    |  |  *****    *******<----------------->*******    *****  |  |\r
+    |  |  *    DUT1       |  |           |  |       DUT2    *  |  |\r
+    |  +--^---------------+  |           |  +---------------^--+  |\r
+    |    *|                  |           |                  |*    |\r
+    |    *|            SUT1  |           |  SUT2            |*    |\r
+    +------------------------+           +------------------^-----+\r
+         *|                                                 |*\r
+         *|                                                 |*\r
+         *|                  +-----------+                  |*\r
+         *|                  |           |                  |*\r
+         *+------------------>    TG     <------------------+*\r
+         ******************* |           |********************\r
+                             +-----------+\r
+\r
+NSH_SFC Functional Tests Coverage\r
+---------------------------------\r
+\r
+Following NSH_SFC functional test areas are covered in the CSIT |release| with\r
+results listed in this report:\r
+\r
+- TODO\r
+\r
+\r
diff --git a/docs/report/nsh_sfc_functional_tests/test_environment.rst b/docs/report/nsh_sfc_functional_tests/test_environment.rst
new file mode 100644 (file)
index 0000000..79ca0e9
--- /dev/null
@@ -0,0 +1,440 @@
+Test Environment\r
+================\r
+\r
+CSIT NSH_SFC functional tests are currently executed in FD.IO VIRL testbed. The\r
+physical VIRL testbed infrastructure consists of three identical VIRL hosts:\r
+\r
+- All hosts are Cisco UCS C240-M4 (2x Intel(R) Xeon(R) CPU E5-2699 v3 @2.30GHz,\r
+  18c, 512GB RAM)\r
+- Hosts run Ubuntu 14.04.3\r
+- VIRL software versions:\r
+\r
+  - STD server version 0.10.24.7\r
+  - UWM server version 0.10.24.7\r
+\r
+The VIRL host to run VIRL simulation is selected based on least load algorithm\r
+per VIRL simulation.\r
+\r
+Every VIRL simulation uses the same three-node - Traffic Generator (TG node) and\r
+two Systems Under Test (SUT1 and SUT2) - "double-ring" topology. The appropriate\r
+pre-built VPP packages built by Jenkins for the patch under review are then\r
+installed on the two SUTs, along with their /etc/vpp/startup.conf file, in all\r
+VIRL simulations.\r
+\r
+SUT Configuration - VIRL Guest VM\r
+---------------------------------\r
+\r
+Configuration of the SUT VMs is defined in file\r
+\r
+   /csit/resources/tools/virl/topologies/double-ring-nested.xenial.virl\r
+\r
+- List of SUT VM interfaces:::\r
+\r
+    <interface id="0" name="GigabitEthernet0/4/0"/>\r
+    <interface id="1" name="GigabitEthernet0/5/0"/>\r
+    <interface id="2" name="GigabitEthernet0/6/0"/>\r
+    <interface id="3" name="GigabitEthernet0/7/0"/>\r
+\r
+- Number of 2MB hugepages: 1024\r
+\r
+- Maximum number of memory map areas: 20000\r
+\r
+- Kernel Shared Memory Max: 2147483648 (vm.nr_hugepages * 2 * 1024 * 1024)\r
+\r
+SUT Configuration - VIRL Guest OS Linux\r
+---------------------------------------\r
+\r
+In CSIT terminology, the VM operating system for both SUTs that |vpp-release| has\r
+been tested with, is the following:\r
+\r
+**#. Ubuntu VIRL image**\r
+\r
+This image implies Ubuntu 16.04.1 LTS, current as of yyyy-mm-dd (that is,\r
+package versions are those that would have been installed by a "apt-get update",\r
+"apt-get upgrade" on that day), produced by CSIT disk image build scripts.\r
+\r
+The exact list of installed packages and their versions (including the Linux\r
+kernel package version) are included in CSIT source repository:\r
+\r
+  resources/tools/disk-image-builder/ubuntu/lists/|virl-image-ubuntu|\r
+\r
+A replica of this VM image can be built by running the "build.sh" script in CSIT\r
+repository resources/tools/disk-image-builder/ubuntu.\r
+\r
+**#. CentOS VIRL image**\r
+\r
+The Centos7.3 image is ready to be used but no tests running on it now.\r
+Corresponding Jenkins jobs are under preparation.\r
+\r
+The exact list of installed packages and their versions (including the Linux\r
+kernel package version) are included in CSIT source repository:\r
+\r
+  resources/tools/disk-image-builder/ubuntu/lists/|virl-image-centos|\r
+\r
+A replica of this VM image can be built by running the "build.sh" script in CSIT\r
+repository resources/tools/disk-image-builder/centos.\r
+\r
+**#. Nested VM image**\r
+\r
+In addition to the "main" VM image, tests which require VPP to communicate to a\r
+VM over a vhost-user interface, utilize a "nested" VM image.\r
+\r
+This "nested" VM is dynamically created and destroyed as part of a test case,\r
+and therefore the "nested" VM image is optimized to be small, lightweight and\r
+have a short boot time. The "nested" VM image is not built around any\r
+established Linux distribution, but is based on `BuildRoot\r
+<https://buildroot.org/>`_, a tool for building embedded Linux systems. Just as\r
+for the "main" image, scripts to produce an identical replica of the "nested"\r
+image are included in CSIT GIT repository, and the image can be rebuilt using\r
+the "build.sh" script at:\r
+\r
+   resources/tools/disk-image-builder/ubuntu/lists/nested\r
+\r
+DUT Configuration - VPP\r
+-----------------------\r
+\r
+Every System Under Test runs VPP SW application in Linux user-mode as a Device\r
+Under Test (DUT) node.\r
+\r
+**DUT port configuration**\r
+\r
+Port configuration of DUTs is defined in topology file that is generated per\r
+VIRL simulation based on the definition stored in file\r
+\r
+   /csit/resources/tools/virl/topologies/double-ring-nested.xenial.yaml\r
+\r
+Example of DUT nodes configuration:::\r
+\r
+    DUT1:\r
+        type: DUT\r
+        host: "10.30.51.157"\r
+        port: 22\r
+        username: cisco\r
+        honeycomb:\r
+          user: admin\r
+          passwd: admin\r
+          port: 8183\r
+          netconf_port: 2831\r
+        priv_key: |\r
+          -----BEGIN RSA PRIVATE KEY-----\r
+          MIIEpgIBAAKCAQEAwUDlTpzSHpwLQotZOFS4AgcPNEWCnP1AB2hWFmvI+8Kah/gb\r
+          v8ruZU9RqhPs56tyKzxbhvNkY4VbH5F1GilHZu3mLqzM4KfghMmaeMEjO1T7BYYd\r
+          vuBfTvIluljfQ2vAlnYrDwn+ClxJk81m0pDgvrLEX4qVVh2sGh7UEkYy5r82DNa2\r
+          4VjzPB1J/c8a9zP8FoZUhYIzF4FLvRMjUADpbMXgJMsGpaZLmz95ap0Eot7vb1Cc\r
+          1LvF97iyBCrtIOSKRKA50ZhLGjMKmOwnYU+cP5718tbproDVi6VJOo7zeuXyetMs\r
+          8YBl9kWblWG9BqP9jctFvsmi5G7hXgq1Y8u+DwIDAQABAoIBAQC/W4E0DHjLMny7\r
+          0bvw2YKzD0Zw3fttdB94tkm4PdZv5MybooPnsAvLaXVV0hEdfVi5kzSWNl/LY/tN\r
+          EP1BgGphc2QgB59/PPxGwFIjDCvUzlsZpynBHe+B/qh5ExNQcVvsIOqWI7DXlXaN\r
+          0i/khOzmJ6HncRRah1spKimYRsaUUDskyg7q3QqMWVaqBbbMvLs/w7ZWd/zoDqCU\r
+          MY/pCI6hkB3QbRo0OdiZLohphBl2ShABTwjvVyyKL5UA4jAEneJrhH5gWVLXnfgD\r
+          p62W5CollKEYblC8mUkPxpP7Qo277zw3xaq+oktIZhc5SUEUd7nJZtNqVAHqkItW\r
+          79VmpKyxAoGBAPfU+kqNPaTSvp+x1n5sn2SgipzDtgi9QqNmC4cjtrQQaaqI57SG\r
+          OHw1jX8i7L2G1WvVtkHg060nlEVo5n65ffFOqeVBezLVJ7ghWI8U+oBiJJyQ4boD\r
+          GJVNsoOSUQ0rtuGd9eVwfDk3ol9aCN0KK53oPfIYli29pyu4l095kg11AoGBAMef\r
+          bPEMBI/2XmCPshLSwhGFl+dW8d+Klluj3CUQ/0vUlvma3dfBOYNsIwAgTP0iIUTg\r
+          8DYE6KBCdPtxAUEI0YAEAKB9ry1tKR2NQEIPfslYytKErtwjAiqSi0heM6+zwEzu\r
+          f54Z4oBhsMSL0jXoOMnu+NZzEc6EUdQeY4O+jhjzAoGBAIogC3dtjMPGKTP7+93u\r
+          UE/XIioI8fWg9fj3sMka4IMu+pVvRCRbAjRH7JrFLkjbUyuMqs3Arnk9K+gbdQt/\r
+          +m95Njtt6WoFXuPCwgbM3GidSmZwYT4454SfDzVBYScEDCNm1FuR+8ov9bFLDtGT\r
+          D4gsngnGJj1MDFXTxZEn4nzZAoGBAKCg4WmpUPaCuXibyB+rZavxwsTNSn2lJ83/\r
+          sYJGBhf/raiV/FLDUcM1vYg5dZnu37RsB/5/vqxOLZGyYd7x+Jo5HkQGPnKgNwhn\r
+          g8BkdZIRF8uEJqxOo0ycdOU7n/2O93swIpKWo5LIiRPuqqzj+uZKnAL7vuVdxfaY\r
+          qVz2daMPAoGBALgaaKa3voU/HO1PYLWIhFrBThyJ+BQSQ8OqrEzC8AnegWFxRAM8\r
+          EqrzZXl7ACUuo1dH0Eipm41j2+BZWlQjiUgq5uj8+yzy+EU1ZRRyJcOKzbDACeuD\r
+          BpWWSXGBI5G4CppeYLjMUHZpJYeX1USULJQd2c4crLJKb76E8gz3Z9kN\r
+          -----END RSA PRIVATE KEY-----\r
+\r
+        interfaces:\r
+          port1:\r
+            mac_address: "fa:16:3e:9b:89:52"\r
+            pci_address: "0000:00:04.0"\r
+            link: link1\r
+          port2:\r
+            mac_address: "fa:16:3e:7a:33:60"\r
+            pci_address: "0000:00:05.0"\r
+            link: link4\r
+          port3:\r
+            mac_address: "fa:16:3e:29:b7:ae"\r
+            pci_address: "0000:00:06.0"\r
+            link: link3\r
+          port4:\r
+            mac_address: "fa:16:3e:76:8d:ff"\r
+            pci_address: "0000:00:07.0"\r
+            link: link6\r
+      DUT2:\r
+        type: DUT\r
+        host: "10.30.51.156"\r
+        port: 22\r
+        username: cisco\r
+        honeycomb:\r
+          user: admin\r
+          passwd: admin\r
+          port: 8183\r
+          netconf_port: 2831\r
+        priv_key: |\r
+          -----BEGIN RSA PRIVATE KEY-----\r
+          MIIEpgIBAAKCAQEAwUDlTpzSHpwLQotZOFS4AgcPNEWCnP1AB2hWFmvI+8Kah/gb\r
+          v8ruZU9RqhPs56tyKzxbhvNkY4VbH5F1GilHZu3mLqzM4KfghMmaeMEjO1T7BYYd\r
+          vuBfTvIluljfQ2vAlnYrDwn+ClxJk81m0pDgvrLEX4qVVh2sGh7UEkYy5r82DNa2\r
+          4VjzPB1J/c8a9zP8FoZUhYIzF4FLvRMjUADpbMXgJMsGpaZLmz95ap0Eot7vb1Cc\r
+          1LvF97iyBCrtIOSKRKA50ZhLGjMKmOwnYU+cP5718tbproDVi6VJOo7zeuXyetMs\r
+          8YBl9kWblWG9BqP9jctFvsmi5G7hXgq1Y8u+DwIDAQABAoIBAQC/W4E0DHjLMny7\r
+          0bvw2YKzD0Zw3fttdB94tkm4PdZv5MybooPnsAvLaXVV0hEdfVi5kzSWNl/LY/tN\r
+          EP1BgGphc2QgB59/PPxGwFIjDCvUzlsZpynBHe+B/qh5ExNQcVvsIOqWI7DXlXaN\r
+          0i/khOzmJ6HncRRah1spKimYRsaUUDskyg7q3QqMWVaqBbbMvLs/w7ZWd/zoDqCU\r
+          MY/pCI6hkB3QbRo0OdiZLohphBl2ShABTwjvVyyKL5UA4jAEneJrhH5gWVLXnfgD\r
+          p62W5CollKEYblC8mUkPxpP7Qo277zw3xaq+oktIZhc5SUEUd7nJZtNqVAHqkItW\r
+          79VmpKyxAoGBAPfU+kqNPaTSvp+x1n5sn2SgipzDtgi9QqNmC4cjtrQQaaqI57SG\r
+          OHw1jX8i7L2G1WvVtkHg060nlEVo5n65ffFOqeVBezLVJ7ghWI8U+oBiJJyQ4boD\r
+          GJVNsoOSUQ0rtuGd9eVwfDk3ol9aCN0KK53oPfIYli29pyu4l095kg11AoGBAMef\r
+          bPEMBI/2XmCPshLSwhGFl+dW8d+Klluj3CUQ/0vUlvma3dfBOYNsIwAgTP0iIUTg\r
+          8DYE6KBCdPtxAUEI0YAEAKB9ry1tKR2NQEIPfslYytKErtwjAiqSi0heM6+zwEzu\r
+          f54Z4oBhsMSL0jXoOMnu+NZzEc6EUdQeY4O+jhjzAoGBAIogC3dtjMPGKTP7+93u\r
+          UE/XIioI8fWg9fj3sMka4IMu+pVvRCRbAjRH7JrFLkjbUyuMqs3Arnk9K+gbdQt/\r
+          +m95Njtt6WoFXuPCwgbM3GidSmZwYT4454SfDzVBYScEDCNm1FuR+8ov9bFLDtGT\r
+          D4gsngnGJj1MDFXTxZEn4nzZAoGBAKCg4WmpUPaCuXibyB+rZavxwsTNSn2lJ83/\r
+          sYJGBhf/raiV/FLDUcM1vYg5dZnu37RsB/5/vqxOLZGyYd7x+Jo5HkQGPnKgNwhn\r
+          g8BkdZIRF8uEJqxOo0ycdOU7n/2O93swIpKWo5LIiRPuqqzj+uZKnAL7vuVdxfaY\r
+          qVz2daMPAoGBALgaaKa3voU/HO1PYLWIhFrBThyJ+BQSQ8OqrEzC8AnegWFxRAM8\r
+          EqrzZXl7ACUuo1dH0Eipm41j2+BZWlQjiUgq5uj8+yzy+EU1ZRRyJcOKzbDACeuD\r
+          BpWWSXGBI5G4CppeYLjMUHZpJYeX1USULJQd2c4crLJKb76E8gz3Z9kN\r
+          -----END RSA PRIVATE KEY-----\r
+\r
+        interfaces:\r
+          port1:\r
+            mac_address: "fa:16:3e:ad:6c:7d"\r
+            pci_address: "0000:00:04.0"\r
+            link: link2\r
+          port2:\r
+            mac_address: "fa:16:3e:94:a4:99"\r
+            pci_address: "0000:00:05.0"\r
+            link: link5\r
+          port3:\r
+            mac_address: "fa:16:3e:75:92:da"\r
+            pci_address: "0000:00:06.0"\r
+            link: link3\r
+          port4:\r
+            mac_address: "fa:16:3e:2c:b1:2a"\r
+            pci_address: "0000:00:07.0"\r
+            link: link6\r
+\r
+**VPP Version**\r
+\r
+|vpp-release|\r
+\r
+**VPP Installed Packages**\r
+::\r
+\r
+    $ dpkg -l vpp\*\r
+    Desired=Unknown/Install/Remove/Purge/Hold\r
+    | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend\r
+    |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)\r
+    ||/ Name           Version       Architecture Description\r
+    +++-==============-=============-============-=============================================\r
+    ii  vpp            17.07-release amd64        Vector Packet Processing--executables\r
+    ii  vpp-dbg        17.07-release amd64        Vector Packet Processing--debug symbols\r
+    ii  vpp-dev        17.07-release amd64        Vector Packet Processing--development support\r
+    ii  vpp-dpdk-dev   17.07-release amd64        Vector Packet Processing--development support\r
+    ii  vpp-dpdk-dkms  17.07-release amd64        DPDK 2.1 igb_uio_driver\r
+    ii  vpp-lib        17.07-release amd64        Vector Packet Processing--runtime libraries\r
+    ii  vpp-plugins    17.07-release amd64        Vector Packet Processing--runtime plugins\r
+\r
+**VPP Startup Configuration**\r
+\r
+VPP startup configuration is common for all test cases.\r
+\r
+::\r
+\r
+    $ cat /etc/vpp/startup.conf\r
+    unix {\r
+      nodaemon\r
+      log /tmp/vpp.log\r
+      full-coredump\r
+    }\r
+\r
+    api-trace {\r
+      on\r
+    }\r
+\r
+    api-segment {\r
+      gid vpp\r
+    }\r
+\r
+    cpu {\r
+        ## In the VPP there is one main thread and optionally the user can create worker(s)\r
+        ## The main thread and worker thread(s) can be pinned to CPU core(s) manually or automatically\r
+\r
+        ## Manual pinning of thread(s) to CPU core(s)\r
+\r
+        ## Set logical CPU core where main thread runs\r
+        # main-core 1\r
+\r
+        ## Set logical CPU core(s) where worker threads are running\r
+        # corelist-workers 2-3,18-19\r
+\r
+        ## Automatic pinning of thread(s) to CPU core(s)\r
+\r
+        ## Sets number of CPU core(s) to be skipped (1 ... N-1)\r
+        ## Skipped CPU core(s) are not used for pinning main thread and working thread(s).\r
+        ## The main thread is automatically pinned to the first available CPU core and worker(s)\r
+        ## are pinned to next free CPU core(s) after core assigned to main thread\r
+        # skip-cores 4\r
+\r
+        ## Specify a number of workers to be created\r
+        ## Workers are pinned to N consecutive CPU cores while skipping "skip-cores" CPU core(s)\r
+        ## and main thread's CPU core\r
+        # workers 2\r
+\r
+        ## Set scheduling policy and priority of main and worker threads\r
+\r
+        ## Scheduling policy options are: other (SCHED_OTHER), batch (SCHED_BATCH)\r
+        ## idle (SCHED_IDLE), fifo (SCHED_FIFO), rr (SCHED_RR)\r
+        # scheduler-policy fifo\r
+\r
+        ## Scheduling priority is used only for "real-time policies (fifo and rr),\r
+        ## and has to be in the range of priorities supported for a particular policy\r
+        # scheduler-priority 50\r
+    }\r
+\r
+    dpdk {\r
+        ## Change default settings for all intefaces\r
+        # dev default {\r
+            ## Number of receive queues, enables RSS\r
+            ## Default is 1\r
+            # num-rx-queues 3\r
+\r
+            ## Number of transmit queues, Default is equal\r
+            ## to number of worker threads or 1 if no workers treads\r
+            # num-tx-queues 3\r
+\r
+            ## Number of descriptors in transmit and receive rings\r
+            ## increasing or reducing number can impact performance\r
+            ## Default is 1024 for both rx and tx\r
+            # num-rx-desc 512\r
+            # num-tx-desc 512\r
+\r
+            ## VLAN strip offload mode for interface\r
+            ## Default is off\r
+            # vlan-strip-offload on\r
+        # }\r
+\r
+        ## Whitelist specific interface by specifying PCI address\r
+        # dev 0000:02:00.0\r
+\r
+        ## Whitelist specific interface by specifying PCI address and in\r
+        ## addition specify custom parameters for this interface\r
+        # dev 0000:02:00.1 {\r
+        #      num-rx-queues 2\r
+        # }\r
+\r
+        ## Change UIO driver used by VPP, Options are: uio_pci_generic, vfio-pci\r
+        ## and igb_uio (default)\r
+        # uio-driver uio_pci_generic\r
+\r
+        ## Disable mutli-segment buffers, improves performance but\r
+        ## disables Jumbo MTU support\r
+        # no-multi-seg\r
+\r
+        ## Increase number of buffers allocated, needed only in scenarios with\r
+        ## large number of interfaces and worker threads. Value is per CPU socket.\r
+        ## Default is 32768\r
+        # num-mbufs 128000\r
+\r
+        ## Change hugepages allocation per-socket, needed only if there is need for\r
+        ## larger number of mbufs. Default is 256M on each detected CPU socket\r
+        # socket-mem 2048,2048\r
+    }\r
+\r
+TG Configuration\r
+----------------\r
+\r
+Traffic Generator node is VM running the same OS Linux as SUTs. Ports of this\r
+VM are used as source (Tx) and destination (Rx) ports for the traffic.\r
+\r
+Traffic scripts of test cases are executed on this VM.\r
+\r
+**TG VM configuration**\r
+\r
+Configuration of the TG VMs is defined in file\r
+\r
+   /csit/resources/tools/virl/topologies/double-ring-nested.xenial.virl\r
+\r
+- List of TG VM interfaces:::\r
+\r
+    <interface id="0" name="eth1"/>\r
+    <interface id="1" name="eth2"/>\r
+    <interface id="2" name="eth3"/>\r
+    <interface id="3" name="eth4"/>\r
+    <interface id="4" name="eth5"/>\r
+    <interface id="5" name="eth6"/>\r
+\r
+**TG node port configuration**\r
+\r
+Port configuration of TG is defined in topology file that is generated per VIRL\r
+simulation based on the definition stored in file\r
+\r
+   /csit/resources/tools/virl/topologies/double-ring-nested.xenial.yaml\r
+\r
+Example of TG node configuration:::\r
+\r
+    TG:\r
+        type: TG\r
+        host: "10.30.51.155"\r
+        port: 22\r
+        username: cisco\r
+        priv_key: |\r
+          -----BEGIN RSA PRIVATE KEY-----\r
+          MIIEpgIBAAKCAQEAwUDlTpzSHpwLQotZOFS4AgcPNEWCnP1AB2hWFmvI+8Kah/gb\r
+          v8ruZU9RqhPs56tyKzxbhvNkY4VbH5F1GilHZu3mLqzM4KfghMmaeMEjO1T7BYYd\r
+          vuBfTvIluljfQ2vAlnYrDwn+ClxJk81m0pDgvrLEX4qVVh2sGh7UEkYy5r82DNa2\r
+          4VjzPB1J/c8a9zP8FoZUhYIzF4FLvRMjUADpbMXgJMsGpaZLmz95ap0Eot7vb1Cc\r
+          1LvF97iyBCrtIOSKRKA50ZhLGjMKmOwnYU+cP5718tbproDVi6VJOo7zeuXyetMs\r
+          8YBl9kWblWG9BqP9jctFvsmi5G7hXgq1Y8u+DwIDAQABAoIBAQC/W4E0DHjLMny7\r
+          0bvw2YKzD0Zw3fttdB94tkm4PdZv5MybooPnsAvLaXVV0hEdfVi5kzSWNl/LY/tN\r
+          EP1BgGphc2QgB59/PPxGwFIjDCvUzlsZpynBHe+B/qh5ExNQcVvsIOqWI7DXlXaN\r
+          0i/khOzmJ6HncRRah1spKimYRsaUUDskyg7q3QqMWVaqBbbMvLs/w7ZWd/zoDqCU\r
+          MY/pCI6hkB3QbRo0OdiZLohphBl2ShABTwjvVyyKL5UA4jAEneJrhH5gWVLXnfgD\r
+          p62W5CollKEYblC8mUkPxpP7Qo277zw3xaq+oktIZhc5SUEUd7nJZtNqVAHqkItW\r
+          79VmpKyxAoGBAPfU+kqNPaTSvp+x1n5sn2SgipzDtgi9QqNmC4cjtrQQaaqI57SG\r
+          OHw1jX8i7L2G1WvVtkHg060nlEVo5n65ffFOqeVBezLVJ7ghWI8U+oBiJJyQ4boD\r
+          GJVNsoOSUQ0rtuGd9eVwfDk3ol9aCN0KK53oPfIYli29pyu4l095kg11AoGBAMef\r
+          bPEMBI/2XmCPshLSwhGFl+dW8d+Klluj3CUQ/0vUlvma3dfBOYNsIwAgTP0iIUTg\r
+          8DYE6KBCdPtxAUEI0YAEAKB9ry1tKR2NQEIPfslYytKErtwjAiqSi0heM6+zwEzu\r
+          f54Z4oBhsMSL0jXoOMnu+NZzEc6EUdQeY4O+jhjzAoGBAIogC3dtjMPGKTP7+93u\r
+          UE/XIioI8fWg9fj3sMka4IMu+pVvRCRbAjRH7JrFLkjbUyuMqs3Arnk9K+gbdQt/\r
+          +m95Njtt6WoFXuPCwgbM3GidSmZwYT4454SfDzVBYScEDCNm1FuR+8ov9bFLDtGT\r
+          D4gsngnGJj1MDFXTxZEn4nzZAoGBAKCg4WmpUPaCuXibyB+rZavxwsTNSn2lJ83/\r
+          sYJGBhf/raiV/FLDUcM1vYg5dZnu37RsB/5/vqxOLZGyYd7x+Jo5HkQGPnKgNwhn\r
+          g8BkdZIRF8uEJqxOo0ycdOU7n/2O93swIpKWo5LIiRPuqqzj+uZKnAL7vuVdxfaY\r
+          qVz2daMPAoGBALgaaKa3voU/HO1PYLWIhFrBThyJ+BQSQ8OqrEzC8AnegWFxRAM8\r
+          EqrzZXl7ACUuo1dH0Eipm41j2+BZWlQjiUgq5uj8+yzy+EU1ZRRyJcOKzbDACeuD\r
+          BpWWSXGBI5G4CppeYLjMUHZpJYeX1USULJQd2c4crLJKb76E8gz3Z9kN\r
+          -----END RSA PRIVATE KEY-----\r
+\r
+        interfaces:\r
+          port3:\r
+            mac_address: "fa:16:3e:b9:e1:27"\r
+            pci_address: "0000:00:06.0"\r
+            link: link1\r
+            driver: virtio-pci\r
+          port4:\r
+            mac_address: "fa:16:3e:e9:c8:68"\r
+            pci_address: "0000:00:07.0"\r
+            link: link4\r
+            driver: virtio-pci\r
+          port5:\r
+            mac_address: "fa:16:3e:e8:d3:47"\r
+            pci_address: "0000:00:08.0"\r
+            link: link2\r
+            driver: virtio-pci\r
+          port6:\r
+            mac_address: "fa:16:3e:cf:ca:58"\r
+            pci_address: "0000:00:09.0"\r
+            link: link5\r
+            driver: virtio-pci\r
+\r
+**Traffic generator**\r
+\r
+Functional tests utilize Scapy as a traffic generator. There was used Scapy\r
+v2.3.1 for |vpp-release| tests.\r
+\r
index 4b68220..afd2a68 100644 (file)
@@ -6,19 +6,19 @@ Changes in CSIT |release|
 
 #. VPP functional test environment changes
 
-    - Implemented VAT command history collection for every test case as part of teardown.
-    - Introduction of Centos7 tests in VIRL environment.
+   - Implemented VAT command history collection for every test case as part of teardown.
+   - Introduction of Centos7 tests in VIRL environment.
 
 #. VPP functional test framework changes
 
-    - Added VAT command history collection for every test case as part of teardown.
+   - Added VAT command history collection for every test case as part of teardown.
 
 #. Added VPP functional tests
 
-    - IPv4 routed-forwarding with dot1q VLAN sub-interfaces.
-    - L2BD switched-forwarding with dot1q VLAN sub-interfaces and vhost-user to VM.
-    - IPv4 routed-forwarding with vhost-user interfaces to VM.
-    - Vhost-user interface re-connect tests.
+   - IPv4 routed-forwarding with dot1q VLAN sub-interfaces.
+   - L2BD switched-forwarding with dot1q VLAN sub-interfaces and vhost-user to VM.
+   - IPv4 routed-forwarding with vhost-user interfaces to VM.
+   - Vhost-user interface re-connect tests.
 
 Known Issues
 ------------
index a6de3f3..e8f8460 100644 (file)
@@ -135,20 +135,20 @@ CSIT |release| follows a common structured naming convention for all
 performance and system functional tests, introduced in CSIT |release-1|.\r
 \r
 The naming should be intuitive for majority of the tests. Complete\r
-description of CSIT test naming convention is provided on `CSIT test naming\r
-page <https://wiki.fd.io/view/CSIT/csit-test-naming>`_.\r
+description of CSIT test naming convention is provided on \r
+`CSIT test naming wiki page <https://wiki.fd.io/view/CSIT/csit-test-naming>`_.\r
 \r
 Here few illustrative examples of the new naming usage for functional test\r
 suites:\r
 \r
 #. **Physical port to physical port - a.k.a. NIC-to-NIC, Phy-to-Phy, P2P**\r
 \r
-    - *eth2p-ethip4-ip4base-func.robot* => 2 ports of Ethernet, IPv4 baseline\r
-      routed forwarding, functional tests.\r
+   - *eth2p-ethip4-ip4base-func.robot* => 2 ports of Ethernet, IPv4 baseline\r
+     routed forwarding, functional tests.\r
 \r
 #. **Physical port to VM (or VM chain) to physical port - a.k.a. NIC2VM2NIC,\r
    P2V2P, NIC2VMchain2NIC, P2V2V2P**\r
 \r
-    - *eth2p-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot* => 2 ports of\r
-      Ethernet, IPv4 VXLAN Ethernet, L2 bridge-domain switching to/from two vhost\r
-      interfaces and one VM, functional tests.\r
+   - *eth2p-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot* => 2 ports of\r
+     Ethernet, IPv4 VXLAN Ethernet, L2 bridge-domain switching to/from two vhost\r
+     interfaces and one VM, functional tests.\r
index 8add531..bd57558 100644 (file)
@@ -16,7 +16,7 @@ Whenever a patch is submitted to gerrit for review, parallel VIRL simulations
 are started to reduce the time of execution of all functional tests. The number\r
 of parallel VIRL simulations is equal to number of test groups defined by\r
 TEST_GROUPS variable in csit/bootstrap.sh file. The VIRL host to run VIRL\r
-simulation is selected randomly per VIRL simulation.\r
+simulation is selected based on least load algorithm per VIRL simulation.\r
 \r
 Every VIRL simulation uses the same three-node - Traffic Generator (TG node) and\r
 two Systems Under Test (SUT1 and SUT2) - "double-ring" topology. The appropriate\r
@@ -50,7 +50,7 @@ SUT Configuration - VIRL Guest OS Linux
 In CSIT terminology, the VM operating system for both SUTs that |vpp-release| has\r
 been tested with, is the following:\r
 \r
-**#. |virl-image-ubuntu|**\r
+**#. Ubuntu VIRL image**\r
 \r
 This image implies Ubuntu 16.04.1 LTS, current as of yyyy-mm-dd (that is,\r
 package versions are those that would have been installed by a "apt-get update",\r
@@ -64,7 +64,7 @@ kernel package version) are included in CSIT source repository:
 A replica of this VM image can be built by running the "build.sh" script in CSIT\r
 repository resources/tools/disk-image-builder/ubuntu.\r
 \r
-**#. |virl-image-centos|**\r
+**#. CentOS VIRL image**\r
 \r
 The Centos7.3 image is ready to be used but no tests running on it now.\r
 Corresponding Jenkins jobs are under preparation.\r
@@ -85,8 +85,8 @@ VM over a vhost-user interface, utilize a "nested" VM image.
 This "nested" VM is dynamically created and destroyed as part of a test case,\r
 and therefore the "nested" VM image is optimized to be small, lightweight and\r
 have a short boot time. The "nested" VM image is not built around any\r
-established Linux distribution, but is based on BuildRoot\r
-(https://buildroot.org/), a tool for building embedded Linux systems. Just as\r
+established Linux distribution, but is based on `BuildRoot\r
+<https://buildroot.org/>`_, a tool for building embedded Linux systems. Just as\r
 for the "main" image, scripts to produce an identical replica of the "nested"\r
 image are included in CSIT GIT repository, and the image can be rebuilt using\r
 the "build.sh" script at:\r
@@ -146,7 +146,7 @@ Example of DUT nodes configuration:::
           EqrzZXl7ACUuo1dH0Eipm41j2+BZWlQjiUgq5uj8+yzy+EU1ZRRyJcOKzbDACeuD\r
           BpWWSXGBI5G4CppeYLjMUHZpJYeX1USULJQd2c4crLJKb76E8gz3Z9kN\r
           -----END RSA PRIVATE KEY-----\r
-          \r
+\r
         interfaces:\r
           port1:\r
             mac_address: "fa:16:3e:9b:89:52"\r
@@ -202,7 +202,7 @@ Example of DUT nodes configuration:::
           EqrzZXl7ACUuo1dH0Eipm41j2+BZWlQjiUgq5uj8+yzy+EU1ZRRyJcOKzbDACeuD\r
           BpWWSXGBI5G4CppeYLjMUHZpJYeX1USULJQd2c4crLJKb76E8gz3Z9kN\r
           -----END RSA PRIVATE KEY-----\r
-          \r
+\r
         interfaces:\r
           port1:\r
             mac_address: "fa:16:3e:ad:6c:7d"\r
@@ -245,6 +245,7 @@ Example of DUT nodes configuration:::
 **VPP Startup Configuration**\r
 \r
 VPP startup configuration is common for all test cases.\r
+\r
 ::\r
 \r
     $ cat /etc/vpp/startup.conf\r
@@ -253,95 +254,95 @@ VPP startup configuration is common for all test cases.
       log /tmp/vpp.log\r
       full-coredump\r
     }\r
-    \r
+\r
     api-trace {\r
       on\r
     }\r
-    \r
+\r
     api-segment {\r
       gid vpp\r
     }\r
-    \r
+\r
     cpu {\r
         ## In the VPP there is one main thread and optionally the user can create worker(s)\r
         ## The main thread and worker thread(s) can be pinned to CPU core(s) manually or automatically\r
-    \r
+\r
         ## Manual pinning of thread(s) to CPU core(s)\r
-    \r
+\r
         ## Set logical CPU core where main thread runs\r
         # main-core 1\r
-    \r
+\r
         ## Set logical CPU core(s) where worker threads are running\r
         # corelist-workers 2-3,18-19\r
-    \r
+\r
         ## Automatic pinning of thread(s) to CPU core(s)\r
-    \r
+\r
         ## Sets number of CPU core(s) to be skipped (1 ... N-1)\r
         ## Skipped CPU core(s) are not used for pinning main thread and working thread(s).\r
         ## The main thread is automatically pinned to the first available CPU core and worker(s)\r
         ## are pinned to next free CPU core(s) after core assigned to main thread\r
         # skip-cores 4\r
-    \r
+\r
         ## Specify a number of workers to be created\r
         ## Workers are pinned to N consecutive CPU cores while skipping "skip-cores" CPU core(s)\r
         ## and main thread's CPU core\r
         # workers 2\r
-    \r
+\r
         ## Set scheduling policy and priority of main and worker threads\r
-    \r
+\r
         ## Scheduling policy options are: other (SCHED_OTHER), batch (SCHED_BATCH)\r
         ## idle (SCHED_IDLE), fifo (SCHED_FIFO), rr (SCHED_RR)\r
         # scheduler-policy fifo\r
-    \r
+\r
         ## Scheduling priority is used only for "real-time policies (fifo and rr),\r
         ## and has to be in the range of priorities supported for a particular policy\r
         # scheduler-priority 50\r
     }\r
-    \r
+\r
     dpdk {\r
         ## Change default settings for all intefaces\r
         # dev default {\r
             ## Number of receive queues, enables RSS\r
             ## Default is 1\r
             # num-rx-queues 3\r
-    \r
+\r
             ## Number of transmit queues, Default is equal\r
             ## to number of worker threads or 1 if no workers treads\r
             # num-tx-queues 3\r
-    \r
+\r
             ## Number of descriptors in transmit and receive rings\r
             ## increasing or reducing number can impact performance\r
             ## Default is 1024 for both rx and tx\r
             # num-rx-desc 512\r
             # num-tx-desc 512\r
-    \r
+\r
             ## VLAN strip offload mode for interface\r
             ## Default is off\r
             # vlan-strip-offload on\r
         # }\r
-    \r
+\r
         ## Whitelist specific interface by specifying PCI address\r
         # dev 0000:02:00.0\r
-    \r
+\r
         ## Whitelist specific interface by specifying PCI address and in\r
         ## addition specify custom parameters for this interface\r
         # dev 0000:02:00.1 {\r
         #      num-rx-queues 2\r
         # }\r
-    \r
+\r
         ## Change UIO driver used by VPP, Options are: uio_pci_generic, vfio-pci\r
         ## and igb_uio (default)\r
         # uio-driver uio_pci_generic\r
-    \r
+\r
         ## Disable mutli-segment buffers, improves performance but\r
         ## disables Jumbo MTU support\r
         # no-multi-seg\r
-    \r
+\r
         ## Increase number of buffers allocated, needed only in scenarios with\r
         ## large number of interfaces and worker threads. Value is per CPU socket.\r
         ## Default is 32768\r
         # num-mbufs 128000\r
-    \r
+\r
         ## Change hugepages allocation per-socket, needed only if there is need for\r
         ## larger number of mbufs. Default is 256M on each detected CPU socket\r
         # socket-mem 2048,2048\r
@@ -360,7 +361,7 @@ Traffic scripts of test cases are executed on this VM.
 Configuration of the TG VMs is defined in file\r
 \r
    /csit/resources/tools/virl/topologies/double-ring-nested.xenial.virl\r
-   \r
+\r
 - List of TG VM interfaces:::\r
 \r
     <interface id="0" name="eth1"/>\r
@@ -412,7 +413,7 @@ Example of TG node configuration:::
           EqrzZXl7ACUuo1dH0Eipm41j2+BZWlQjiUgq5uj8+yzy+EU1ZRRyJcOKzbDACeuD\r
           BpWWSXGBI5G4CppeYLjMUHZpJYeX1USULJQd2c4crLJKb76E8gz3Z9kN\r
           -----END RSA PRIVATE KEY-----\r
-          \r
+\r
         interfaces:\r
           port3:\r
             mac_address: "fa:16:3e:b9:e1:27"\r
index 725b40b..ff992df 100644 (file)
@@ -6,44 +6,34 @@ Changes in CSIT |release|
 \r
 #. VPP performance test environment changes\r
 \r
-    - Further optimizations of VM and vhost-user test environment - Qemu virtio\r
-      queue size increased from default value of 256 to 1024.\r
-    - Addition of HW cryptodev devices - Intel QAT 8950 50G - in all three\r
-      LF FD.io physical testbeds.\r
+   - Further optimizations of VM and vhost-user test environment - various\r
+     Qemu virtio queue size testing with value of 256 and 1024. Applied\r
+     Linux CFS optimization to run VPP worker threads and Qemu worker threads\r
+     with highest priority.\r
 \r
 #. VPP performance test framework changes\r
 \r
-    - Added VAT command history collection for every test case as part of\r
-      teardown.\r
+   - Full code review, optimization and refactor.\r
 \r
-#. Added VPP performance tests\r
-\r
-    - **CGNAT**\r
-\r
-      - Carrier Grade Network Address Translation tests with varying number\r
-        of users and ports per user: 1u-15p, 10u-15p, 100u-15p, 1000u-15p,\r
-        2000u-15p, 4000u-15p - with Intel x520 NIC.\r
+#. T-rex changes\r
 \r
-    - **vhost-user tests with one VM**\r
+   - Full refactor of T-rex driver and introduce of traffic profiles that\r
+     improves readability, manageability of traffic profiles for various\r
+     test scenarios.\r
 \r
-      - L2 Bridge Domain switched-forwarding with Intel x710 NIC, Intel x520\r
-        NIC, Intel xl710 NIC.\r
-      - VXLAN and L2 Bridge Domain switched-forwarding with Intel x520 NIC.\r
+#. Added VPP performance tests\r
 \r
-    - **vhost-user tests with two VMs service chain**\r
+   - **LXC memif**\r
 \r
-      - L2 cross-connect switched-forwarding with Intel x520 NIC, Intel xl710\r
-        NIC.\r
-      - L2 Bridge Domain switched-forwarding with Intel x520 NIC, Intel xl710\r
-        NIC.\r
-      - IPv4 routed-forwarding with Intel x520 NIC, Intel xl710 NIC.\r
+     - Memif interface tests interconnecting two VPP instances on single SUT.\r
+       Master VPP instance running on native OS with Intel x520 NIC and guest\r
+       VPP instance running in Linux Container (LXC) doing the L2 cross\r
+       connect loop. LXC running in privileged mode is pinned to dedicated\r
+       cores. All VPP instances are same version.\r
 \r
-    - **IPSec encryption with**\r
+   - **Stateful Security Groups**\r
 \r
-      - AES-GCM, CBC-SHA1 ciphers, in combination with IPv4 routed-forwarding\r
-        with Intel xl710 NIC.\r
-      - CBC-SHA1 ciphers, in combination with LISP-GPE overlay tunneling for\r
-        IPv4-over-IPv4 with Intel xl710 NIC.\r
+   - **VM vhost use cases**\r
 \r
 Performance Improvements\r
 ------------------------\r
@@ -59,62 +49,56 @@ NDR Throughput
 \r
 Non-Drop Rate Throughput discovery tests:\r
 \r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| VPP Functionality | Test Name                                                       | VPP-16.09  | VPP-17.01 | VPP-17.04 | 17.01 to 17.04  |\r
-|                   |                                                                 | [Mpps]     | [Mpps]    | [Mpps]    | Relative Change |\r
-+===================+=================================================================+============+===========+===========+=================+\r
-| L2XC-vhost-VM     | 10ge2p1x520: 64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc       | 0.5        | 2.8       | 3.4       | 21%             |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| L2BD-vhost-VM     | 10ge2p1x520: 64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc | 0.4        | 2.7       | 3.1       | 15%             |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv4 vhost        | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-eth-2vhost-1vm-ndrdisc     | 0.3        | 2.6       | 3.0       | 15%             |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv4 LISP         | 10ge2p1x520: 64B-1t1c-ethip4lispip4-ip4base-ndrdisc             | 4.4        | 4.8       | 5.5       | 15%             |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv6              | 10ge2p1x520: 78B-1t1c-ethip6-ip6base-ndrdisc                    | 3.0        | 7.3       | 8.1       | 11%             |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv6 COP          | 10ge2p1x520: 78B-1t1c-ethip6-ip6base-copwhtlistbase-ndrdisc     | 6.1        | 6.1       | 6.9       | 13%             |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv6 iAcl         | 10ge2p1x520: 78B-1t1c-ethip6-ip6base-iacldstbase-ndrdisc        | 6.5        | 6.1       | 6.9       | 13%             |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv6 FIB 2M       | 10ge2p1x520: 78B-1t1c-ethip6-ip6scale2m-ndrdisc                 | 5.3        | 4.2       | 4.6       | 10%             |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| VPP Functionality | Test Name                                                       | VPP-16.09 | VPP-17.01 | VPP-17.04 | VPP-17.07 | 17.04 to 17.07  |\r
+|                   |                                                                 | [Mpps]    | [Mpps]    | [Mpps]    | [Mpps]    | Relative Change |\r
++===================+=================================================================+===========+===========+===========+===========+=================+\r
+| L2XC-vhost-VM     | 10ge2p1x520: 64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc       | 0.5       | 2.8       | 3.4       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| L2BD-vhost-VM     | 10ge2p1x520: 64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc | 0.4       | 2.7       | 3.1       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 vhost        | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-eth-2vhost-1vm-ndrdisc     | 0.3       | 2.6       | 3.0       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 LISP         | 10ge2p1x520: 64B-1t1c-ethip4lispip4-ip4base-ndrdisc             | 4.4       | 4.8       | 5.5       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv6              | 10ge2p1x520: 78B-1t1c-ethip6-ip6base-ndrdisc                    | 3.0       | 7.3       | 8.1       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv6 COP          | 10ge2p1x520: 78B-1t1c-ethip6-ip6base-copwhtlistbase-ndrdisc     | 6.1       | 6.1       | 6.9       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv6 iAcl         | 10ge2p1x520: 78B-1t1c-ethip6-ip6base-iacldstbase-ndrdisc        | 6.5       | 6.1       | 6.9       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv6 FIB 2M       | 10ge2p1x520: 78B-1t1c-ethip6-ip6scale2m-ndrdisc                 | 5.3       | 4.2       | 4.6       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
 \r
 PDR Throughput\r
 ~~~~~~~~~~~~~~\r
 \r
 Partial Drop Rate thoughput discovery tests with packet Loss Tolerance of 0.5%:\r
 \r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| VPP Functionality | Test Name                                                       | VPP-16.09 | VPP-17.01 | VPP-17.04 | 17.01 to 17.04  |\r
-|                   |                                                                 | [Mpps]    | [Mpps]    | [Mpps]    | Relative Change |\r
-+===================+=================================================================+===========+===========+===========+=================+\r
-| L2XC-vhost-VM     | 10ge2p1x520: 64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-pdrdisc       | 2.6       | 3.2       | 3.7       | 15%             |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| L2BD-vhost-VM     | 10ge2p1x520: 64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc | 2.1       | 2.9       | 3.3       | 14%             |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv4 vhost        | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-eth-2vhost-1vm-pdrdisc     | 2.0       | 2.7       | 3.0       | 11%             |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv4 LISP         | 10ge2p1x520: 64B-1t1c-ethip4lispip4-ip4base-pdrdisc             | 4.6       | 4.8       | 5.5       | 15%             |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv6              | 10ge2p1x520: 78B-1t1c-ethip6-ip6base-pdrdisc                    | 7.7       | 7.3       | 8.1       | 11%             |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv6 COP          | 10ge2p1x520: 78B-1t1c-ethip6-ip6base-copwhtlistbase-pdrdisc     | 6.1       | 6.1       | 6.9       | 13%             |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv6 iAcl         | 10ge2p1x520: 78B-1t1c-ethip6-ip6base-iacldstbase-pdrdisc        | 6.5       | 6.1       | 6.9       | 13%             |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv6 FIB 2M       | 10ge2p1x520: 78B-1t1c-ethip6-ip6scale2m-pdrdisc                 | 5.3       | 4.2       | 4.6       | 10%             |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| VPP Functionality | Test Name                                                       | VPP-16.09 | VPP-17.01 | VPP-17.04 | VPP-17.07 | 17.04 to 17.07  |\r
+|                   |                                                                 | [Mpps]    | [Mpps]    | [Mpps]    | [Mpps]    | Relative Change |\r
++===================+=================================================================+===========+===========+===========+===========+=================+\r
+| L2XC-vhost-VM     | 10ge2p1x520: 64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-pdrdisc       | 2.6       | 3.2       | 3.7       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| L2BD-vhost-VM     | 10ge2p1x520: 64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc | 2.1       | 2.9       | 3.3       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 vhost        | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-eth-2vhost-1vm-pdrdisc     | 2.0       | 2.7       | 3.0       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 LISP         | 10ge2p1x520: 64B-1t1c-ethip4lispip4-ip4base-pdrdisc             | 4.6       | 4.8       | 5.5       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv6              | 10ge2p1x520: 78B-1t1c-ethip6-ip6base-pdrdisc                    | 7.7       | 7.3       | 8.1       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv6 COP          | 10ge2p1x520: 78B-1t1c-ethip6-ip6base-copwhtlistbase-pdrdisc     | 6.1       | 6.1       | 6.9       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv6 iAcl         | 10ge2p1x520: 78B-1t1c-ethip6-ip6base-iacldstbase-pdrdisc        | 6.5       | 6.1       | 6.9       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv6 FIB 2M       | 10ge2p1x520: 78B-1t1c-ethip6-ip6scale2m-pdrdisc                 | 5.3       | 4.2       | 4.6       |           | ??%             |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
 \r
 Measured improvements are in line with VPP code optimizations listed in\r
-`VPP-17.04 release notes\r
-<https://docs.fd.io/vpp/17.04/release_notes_1704.html>`_.\r
-\r
-Additionally, vhost-VM performance improvements are due to both VPP code\r
-optimizations as well as due to the FD.io CSIT Linux KVM test environment\r
-optimizations for vhost-VM tests - see section "2.1.7. Methodology: KVM VM\r
-vhost".\r
-\r
+`VPP-17.07 release notes\r
+<https://docs.fd.io/vpp/17.07/release_notes_1707.html>`_.\r
 \r
 Other Performance Changes\r
 -------------------------\r
@@ -129,78 +113,78 @@ NDR Throughput
 \r
 Non-Drop Rate Throughput discovery tests:\r
 \r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| VPP Functionality | Test Name                                                       | VPP-16.09  | VPP-17.01 | VPP-17.04 | 17.01 to 17.04  |\r
-|                   |                                                                 | [Mpps]     | [Mpps]    | [Mpps]    | Relative Change |\r
-+===================+=================================================================+============+===========+===========+=================+\r
-| L2XC              | 10ge2p1x520: 64B-1t1c-eth-l2xcbase-ndrdisc                      | 9.4        | 12.7      | 13.1      | 3%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| L2XC              | 10ge2p1xl710: 64B-1t1c-eth-l2xcbase-ndrdisc                     | 9.5        | 12.2      | 12.4      | 2%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| L2XC dot1ad       | 10ge2p1x520: 64B-1t1c-dot1ad-l2xcbase-ndrdisc                   | 7.4        | 8.8       | 9.3       | 6%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| L2XC dot1q        | 10ge2p1x520: 64B-1t1c-dot1q-l2xcbase-ndrdisc                    | 7.5        | 8.8       | 9.2       | 5%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| L2XC VxLAN        | 10ge2p1x520: 64B-1t1c-ethip4vxlan-l2xcbase-ndrdisc              | 5.4        | 6.5       | 6.8       | 5%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| L2BD              | 10ge2p1x520: 64B-1t1c-eth-l2bdbasemaclrn-ndrdisc                | 7.8        | 10.4      | 10.8      | 4%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv4              | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-ndrdisc                    | 8.7        | 9.7       | 10.6      | 9%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv4 COP          | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-copwhtlistbase-ndrdisc     | 7.1        | 8.3       | 9.0       | 8%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv4 iAcl         | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-iacldstbase-ndrdisc        | 6.9        | 7.6       | 8.3       | 9%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv4 FIB 200k     | 10ge2p1x520: 64B-1t1c-ethip4-ip4scale200k-ndrdisc               | 8.5        | 9.0       | 9.7       | 8%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv4 FIB 20k      | 10ge2p1x520: 64B-1t1c-ethip4-ip4scale20k-ndrdisc                | 8.5        | 9.0       | 9.7       | 8%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv4 FIB 2M       | 10ge2p1x520: 64B-1t1c-ethip4-ip4scale2m-ndrdisc                 | 8.5        | 7.8       | 8.1       | 4%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv4 Policer      | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-ipolicemarkbase-ndrdisc    | 6.9        | 7.4       | 8.1       | 9%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv6 FIB 200k     | 10ge2p1x520: 78B-1t1c-ethip6-ip6scale200k-ndrdisc               | 6.5        | 5.3       | 5.3       | 0%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
-| IPv6 FIB 20k      | 10ge2p1x520: 78B-1t1c-ethip6-ip6scale20k-ndrdisc                | 6.9        | 6.5       | 6.9       | 6%              |\r
-+-------------------+-----------------------------------------------------------------+------------+-----------+-----------+-----------------+\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| VPP Functionality | Test Name                                                       | VPP-16.09 | VPP-17.01 | VPP-17.04 | VPP-17.07 | 17.04 to 17.07  |\r
+|                   |                                                                 | [Mpps]    | [Mpps]    | [Mpps]    | [Mpps]    | Relative Change |\r
++===================+=================================================================+===========+===========+===========+===========+=================+\r
+| L2XC              | 10ge2p1x520: 64B-1t1c-eth-l2xcbase-ndrdisc                      | 9.4       | 12.7      | 13.1      |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| L2XC              | 10ge2p1xl710: 64B-1t1c-eth-l2xcbase-ndrdisc                     | 9.5       | 12.2      | 12.4      |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| L2XC dot1ad       | 10ge2p1x520: 64B-1t1c-dot1ad-l2xcbase-ndrdisc                   | 7.4       | 8.8       | 9.3       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| L2XC dot1q        | 10ge2p1x520: 64B-1t1c-dot1q-l2xcbase-ndrdisc                    | 7.5       | 8.8       | 9.2       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| L2XC VxLAN        | 10ge2p1x520: 64B-1t1c-ethip4vxlan-l2xcbase-ndrdisc              | 5.4       | 6.5       | 6.8       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| L2BD              | 10ge2p1x520: 64B-1t1c-eth-l2bdbasemaclrn-ndrdisc                | 7.8       | 10.4      | 10.8      |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4              | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-ndrdisc                    | 8.7       | 9.7       | 10.6      |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 COP          | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-copwhtlistbase-ndrdisc     | 7.1       | 8.3       | 9.0       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 iAcl         | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-iacldstbase-ndrdisc        | 6.9       | 7.6       | 8.3       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 FIB 200k     | 10ge2p1x520: 64B-1t1c-ethip4-ip4scale200k-ndrdisc               | 8.5       | 9.0       | 9.7       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 FIB 20k      | 10ge2p1x520: 64B-1t1c-ethip4-ip4scale20k-ndrdisc                | 8.5       | 9.0       | 9.7       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 FIB 2M       | 10ge2p1x520: 64B-1t1c-ethip4-ip4scale2m-ndrdisc                 | 8.5       | 7.8       | 8.1       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 Policer      | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-ipolicemarkbase-ndrdisc    | 6.9       | 7.4       | 8.1       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv6 FIB 200k     | 10ge2p1x520: 78B-1t1c-ethip6-ip6scale200k-ndrdisc               | 6.5       | 5.3       | 5.3       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv6 FIB 20k      | 10ge2p1x520: 78B-1t1c-ethip6-ip6scale20k-ndrdisc                | 6.9       | 6.5       | 6.9       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
 \r
 PDR Throughput\r
 ~~~~~~~~~~~~~~\r
 \r
 Partial Drop Rate thoughput discovery tests with packet Loss Tolerance of 0.5%:\r
 \r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| VPP Functionality | Test Name                                                       | VPP-16.09 | VPP-17.01 | VPP-17.04 | 17.01 to 17.04  |\r
-|                   |                                                                 | [Mpps]    | [Mpps]    | [Mpps]    | Relative Change |\r
-+===================+=================================================================+===========+===========+===========+=================+\r
-| L2XC              | 10ge2p1x520: 64B-1t1c-eth-l2xcbase-pdrdisc                      | 9.4       | 12.7      | 13.4      | 6%              |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| L2XC dot1ad       | 10ge2p1x520: 64B-1t1c-dot1ad-l2xcbase-pdrdisc                   | 7.4       | 8.8       | 9.3       | 6%              |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| L2XC dot1q        | 10ge2p1x520: 64B-1t1c-dot1q-l2xcbase-pdrdisc                    | 7.5       | 8.8       | 9.2       | 5%              |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| L2XC VxLAN        | 10ge2p1x520: 64B-1t1c-ethip4vxlan-l2xcbase-pdrdisc              | 5.4       | 6.5       | 6.8       | 5%              |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| L2BD              | 10ge2p1x520: 64B-1t1c-eth-l2bdbasemaclrn-pdrdisc                | 7.8       | 10.6      | 10.8      | 2%              |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv4              | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-pdrdisc                    | 8.7       | 9.7       | 10.6      | 9%              |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv4 COP          | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-copwhtlistbase-pdrdisc     | 7.1       | 8.3       | 9.2       | 11%             |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv4 iAcl         | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-iacldstbase-pdrdisc        | 7.1       | 7.6       | 8.3       | 9%              |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv4 FIB 200k     | 10ge2p1x520: 64B-1t1c-ethip4-ip4scale200k-pdrdisc               | 8.5       | 9.0       | 9.7       | 8%              |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv4 FIB 20k      | 10ge2p1x520: 64B-1t1c-ethip4-ip4scale20k-pdrdisc                | 8.5       | 9.0       | 9.7       | 8%              |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv4 FIB 2M       | 10ge2p1x520: 64B-1t1c-ethip4-ip4scale2m-pdrdisc                 | 8.3       | 8.1       | 8.1       | 0%              |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv4 Policer      | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-ipolicemarkbase-pdrdisc    | 7.1       | 7.4       | 8.1       | 9%              |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv6 FIB 200k     | 10ge2p1x520: 78B-1t1c-ethip6-ip6scale200k-pdrdisc               | 6.9       | 5.3       | 5.3       | 0%              |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
-| IPv6 FIB 20k      | 10ge2p1x520: 78B-1t1c-ethip6-ip6scale20k-pdrdisc                | 6.9       | 6.5       | 6.9       | 6%              |\r
-+-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------------+\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| VPP Functionality | Test Name                                                       | VPP-16.09 | VPP-17.01 | VPP-17.04 | VPP-17.07 | 17.04 to 17.07  |\r
+|                   |                                                                 | [Mpps]    | [Mpps]    | [Mpps]    | [Mpps]    | Relative Change |\r
++===================+=================================================================+===========+===========+===========+===========+=================+\r
+| L2XC              | 10ge2p1x520: 64B-1t1c-eth-l2xcbase-pdrdisc                      | 9.4       | 12.7      | 13.4      |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| L2XC dot1ad       | 10ge2p1x520: 64B-1t1c-dot1ad-l2xcbase-pdrdisc                   | 7.4       | 8.8       | 9.3       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| L2XC dot1q        | 10ge2p1x520: 64B-1t1c-dot1q-l2xcbase-pdrdisc                    | 7.5       | 8.8       | 9.2       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| L2XC VxLAN        | 10ge2p1x520: 64B-1t1c-ethip4vxlan-l2xcbase-pdrdisc              | 5.4       | 6.5       | 6.8       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| L2BD              | 10ge2p1x520: 64B-1t1c-eth-l2bdbasemaclrn-pdrdisc                | 7.8       | 10.6      | 10.8      |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4              | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-pdrdisc                    | 8.7       | 9.7       | 10.6      |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 COP          | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-copwhtlistbase-pdrdisc     | 7.1       | 8.3       | 9.2       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 iAcl         | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-iacldstbase-pdrdisc        | 7.1       | 7.6       | 8.3       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 FIB 200k     | 10ge2p1x520: 64B-1t1c-ethip4-ip4scale200k-pdrdisc               | 8.5       | 9.0       | 9.7       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 FIB 20k      | 10ge2p1x520: 64B-1t1c-ethip4-ip4scale20k-pdrdisc                | 8.5       | 9.0       | 9.7       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 FIB 2M       | 10ge2p1x520: 64B-1t1c-ethip4-ip4scale2m-pdrdisc                 | 8.3       | 8.1       | 8.1       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv4 Policer      | 10ge2p1x520: 64B-1t1c-ethip4-ip4base-ipolicemarkbase-pdrdisc    | 7.1       | 7.4       | 8.1       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv6 FIB 200k     | 10ge2p1x520: 78B-1t1c-ethip6-ip6scale200k-pdrdisc               | 6.9       | 5.3       | 5.3       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
+| IPv6 FIB 20k      | 10ge2p1x520: 78B-1t1c-ethip6-ip6scale20k-pdrdisc                | 6.9       | 6.5       | 6.9       |           | ?%              |\r
++-------------------+-----------------------------------------------------------------+-----------+-----------+-----------+-----------+-----------------+\r
 \r
 Known Issues\r
 ------------\r
index ccf8063..a28d857 100644 (file)
@@ -104,7 +104,8 @@ sensitivity to Linux kernel scheduler settings and behaviour, this estimation
 may not always yield good enough accuracy.
 
 For detailed LF FD.io test bed specification and physical topology please refer
-to `LF FDio CSIT testbed wiki page <https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.
+to `LF FDio CSIT testbed wiki page
+<https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.
 
 Performance Tests Coverage
 --------------------------
@@ -205,38 +206,38 @@ suites:
 
 #. **Physical port to physical port - a.k.a. NIC-to-NIC, Phy-to-Phy, P2P**
 
-    - *PortNICConfig-WireEncapsulation-PacketForwardingFunction-
-      PacketProcessingFunction1-...-PacketProcessingFunctionN-TestType*
-    - *10ge2p1x520-dot1q-l2bdbasemaclrn-ndrdisc.robot* => 2 ports of 10GE on
-      Intel x520 NIC, dot1q tagged Ethernet, L2 bridge-domain baseline switching
-      with MAC learning, NDR throughput discovery.
-    - *10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-ndrchk.robot* => 2 ports of 10GE
-      on Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain baseline
-      switching with MAC learning, NDR throughput discovery.
-    - *10ge2p1x520-ethip4-ip4base-ndrdisc.robot* => 2 ports of 10GE on Intel
-      x520 NIC, IPv4 baseline routed forwarding, NDR throughput discovery.
-    - *10ge2p1x520-ethip6-ip6scale200k-ndrdisc.robot* => 2 ports of 10GE on
-      Intel x520 NIC, IPv6 scaled up routed forwarding, NDR throughput
-      discovery.
+   - *PortNICConfig-WireEncapsulation-PacketForwardingFunction-
+     PacketProcessingFunction1-...-PacketProcessingFunctionN-TestType*
+   - *10ge2p1x520-dot1q-l2bdbasemaclrn-ndrdisc.robot* => 2 ports of 10GE on
+     Intel x520 NIC, dot1q tagged Ethernet, L2 bridge-domain baseline switching
+     with MAC learning, NDR throughput discovery.
+   - *10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-ndrchk.robot* => 2 ports of 10GE
+     on Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain baseline
+     switching with MAC learning, NDR throughput discovery.
+   - *10ge2p1x520-ethip4-ip4base-ndrdisc.robot* => 2 ports of 10GE on Intel
+     x520 NIC, IPv4 baseline routed forwarding, NDR throughput discovery.
+   - *10ge2p1x520-ethip6-ip6scale200k-ndrdisc.robot* => 2 ports of 10GE on
+     Intel x520 NIC, IPv6 scaled up routed forwarding, NDR throughput
+     discovery.
 
 #. **Physical port to VM (or VM chain) to physical port - a.k.a. NIC2VM2NIC,
    P2V2P, NIC2VMchain2NIC, P2V2V2P**
 
-    - *PortNICConfig-WireEncapsulation-PacketForwardingFunction-
-      PacketProcessingFunction1-...-PacketProcessingFunctionN-VirtEncapsulation-
-      VirtPortConfig-VMconfig-TestType*
-    - *10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot* => 2 ports
-      of 10GE on Intel x520 NIC, dot1q tagged Ethernet, L2 bridge-domain
-      switching to/from two vhost interfaces and one VM, NDR throughput
-      discovery.
-    - *10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot* => 2
-      ports of 10GE on Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain
-      switching to/from two vhost interfaces and one VM, NDR throughput
-      discovery.
-    - *10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-4vhost-2vm-ndrdisc.robot* => 2
-      ports of 10GE on Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain
-      switching to/from four vhost interfaces and two VMs, NDR throughput
-      discovery.
+   - *PortNICConfig-WireEncapsulation-PacketForwardingFunction-
+     PacketProcessingFunction1-...-PacketProcessingFunctionN-VirtEncapsulation-
+     VirtPortConfig-VMconfig-TestType*
+   - *10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot* => 2 ports
+     of 10GE on Intel x520 NIC, dot1q tagged Ethernet, L2 bridge-domain
+     switching to/from two vhost interfaces and one VM, NDR throughput
+     discovery.
+   - *10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot* => 2
+     ports of 10GE on Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain
+     switching to/from two vhost interfaces and one VM, NDR throughput
+     discovery.
+   - *10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-4vhost-2vm-ndrdisc.robot* => 2
+     ports of 10GE on Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain
+     switching to/from four vhost interfaces and two VMs, NDR throughput
+     discovery.
 
 Methodology: Multi-Thread and Multi-Core
 ----------------------------------------
@@ -356,29 +357,29 @@ specific configuration.
 
 TRex is installed and run on the TG compute node. The typical procedure is:
 
-    - If the TRex is not already installed on TG, it is installed in the
-      suite setup phase - see `TRex intallation`_.
-    - TRex configuration is set in its configuration file
-      ::
+- If the TRex is not already installed on TG, it is installed in the
+  suite setup phase - see `TRex intallation`_.
+- TRex configuration is set in its configuration file
+  ::
 
-        /etc/trex_cfg.yaml
+  /etc/trex_cfg.yaml
 
-    - TRex is started in the background mode
-      ::
+- TRex is started in the background mode
+  ::
 
-        sh -c 'cd /opt/trex-core-2.25/scripts/ && sudo nohup ./t-rex-64 -i -c 7 --iom 0 > /dev/null 2>&1 &' > /dev/null
+  $ sh -c 'cd /opt/trex-core-2.25/scripts/ && sudo nohup ./t-rex-64 -i -c 7 --iom 0 > /dev/null 2>&1 &' > /dev/null
 
-    - There are traffic streams dynamically prepared for each test. The traffic
-      is sent and the statistics obtained using trex_stl_lib.api.STLClient.
+- There are traffic streams dynamically prepared for each test. The traffic
+  is sent and the statistics obtained using trex_stl_lib.api.STLClient.
 
 **Measuring packet loss**
 
-    - Create an instance of STLClient
-    - Connect to the client
-    - Add all streams
-    - Clear statistics
-    - Send the traffic for defined time
-    - Get the statistics
+- Create an instance of STLClient
+- Connect to the client
+- Add all streams
+- Clear statistics
+- Send the traffic for defined time
+- Get the statistics
 
 If there is a warm-up phase required, the traffic is sent also before test and
 the statistics are ignored.
index 307bf3c..7db10ee 100644 (file)
@@ -25,9 +25,9 @@ TGint2-to-SUT2-to-SUT1-to-TGint1.
 .. toctree::
 
     l2
-    ipv4
-    ipv6
-    ipv4_tunnels
-    ipv6_tunnels
+    ip4
+    ip6
+    ip4_tunnels
+    ip6_tunnels
     vm_vhost
     ipsec
@@ -20,7 +20,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv4
+    $ cd $CSIT/tests/vpp/perf/ip4
     $ grep -P '64B-1t1c-ethip4-ip4(base|scale)[a-z0-9]*(?!-eth-[0-9]vhost).*-ndrdisc' *
 
     10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-copwhtlistbase-ndrdisc
@@ -47,7 +47,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv4
+    $ cd $CSIT/tests/vpp/perf/ip4
     $ grep -P '64B-2t2c-ethip4-ip4(base|scale)[a-z0-9]*(?!-eth-[0-9]vhost).*-ndrdisc' *
 
     10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-copwhtlistbase-ndrdisc
@@ -20,7 +20,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv4_tunnels
+    $ cd $CSIT/tests/vpp/perf/ip4_tunnels
     $ grep -E "64B-1t1c-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc" *
 
     10ge2p1x520-ethip4lispip4-ip4base-ndrdisc.robot:| tc01-64B-1t1c-ethip4lispip4-ip4base-ndrdisc
@@ -41,7 +41,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv4_tunnels
+    $ cd $CSIT/tests/vpp/perf/ip4_tunnels
     $ grep -E "64B-2t2c-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc" *
 
     10ge2p1x520-ethip4lispip4-ip4base-ndrdisc.robot:| tc07-64B-2t2c-ethip4lispip4-ip4base-ndrdisc
diff --git a/docs/report/vpp_performance_tests/packet_latency_graphs/ip6.rst b/docs/report/vpp_performance_tests/packet_latency_graphs/ip6.rst
new file mode 100644 (file)
index 0000000..10aa9b9
--- /dev/null
@@ -0,0 +1,57 @@
+IPv6 Routed-Forwarding
+======================
+
+This section includes summary graphs of VPP Phy-to-Phy packet latency
+with IPv6 Routed-Forwarding measured at 50% of discovered NDR throughput
+rate. Latency is reported for VPP running in multiple configurations of
+VPP worker thread(s), a.k.a. VPP data plane thread(s), and their
+physical CPU core(s) placement.
+
+VPP packet latency in 1t1c setup (1thread, 1core) is presented in the graph below.
+
+.. raw:: html
+
+    <iframe width="700" height="1000" frameborder="0" scrolling="no" src="../../_static/vpp/78B-1t1c-ethip6-ip6-ndrdisc-lat50.html"></iframe>
+
+*Figure 1. VPP 1thread 1core - packet latency for Phy-to-Phy IPv6 Routed-Forwarding.*
+
+CSIT source code for the test cases used for above plots can be found in CSIT
+git repository:
+
+.. code-block:: bash
+
+    $ cd $CSIT/tests/vpp/perf/ip6
+    $ grep -E "78B-1t1c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc" *
+
+    10ge2p1x520-ethip6-ip6base-copwhtlistbase-ndrpdrdisc.robot:| tc01-78B-1t1c-ethip6-ip6base-copwhtlistbase-ndrdisc
+    10ge2p1x520-ethip6-ip6base-iacldstbase-ndrpdrdisc.robot:| tc01-78B-1t1c-ethip6-ip6base-iacldstbase-ndrdisc
+    10ge2p1x520-ethip6-ip6base-ndrpdrdisc.robot:| tc01-78B-1t1c-ethip6-ip6base-ndrdisc
+    10ge2p1x520-ethip6-ip6scale200k-ndrpdrdisc.robot:| tc01-78B-1t1c-ethip6-ip6scale200k-ndrdisc
+    10ge2p1x520-ethip6-ip6scale20k-ndrpdrdisc.robot:| tc01-78B-1t1c-ethip6-ip6scale20k-ndrdisc
+    10ge2p1x520-ethip6-ip6scale2m-ndrpdrdisc.robot:| tc01-78B-1t1c-ethip6-ip6scale2m-ndrdisc
+    40ge2p1xl710-ethip6-ip6base-ndrpdrdisc.robot:| tc01-78B-1t1c-ethip6-ip6base-ndrdisc
+
+VPP packet latency in 2t2c setup (2thread, 2core) is presented in the graph below.
+
+.. raw:: html
+
+    <iframe width="700" height="1000" frameborder="0" scrolling="no" src="../../_static/vpp/78B-2t2c-ethip6-ip6-ndrdisc-lat50.html"></iframe>
+
+*Figure 2. VPP 2threads 2cores - packet latency for Phy-to-Phy IPv6 Routed-Forwarding.*
+
+CSIT source code for the test cases used for above plots can be found in CSIT
+git repository:
+
+.. code-block:: bash
+
+    $ cd $CSIT/tests/vpp/perf/ip6
+    $ grep -E "78B-2t2c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc" *
+
+    10ge2p1x520-ethip6-ip6base-copwhtlistbase-ndrpdrdisc.robot:| tc07-78B-2t2c-ethip6-ip6base-copwhtlistbase-ndrdisc
+    10ge2p1x520-ethip6-ip6base-iacldstbase-ndrpdrdisc.robot:| tc07-78B-2t2c-ethip6-ip6base-iacldstbase-ndrdisc
+    10ge2p1x520-ethip6-ip6base-ndrpdrdisc.robot:| tc07-78B-2t2c-ethip6-ip6base-ndrdisc
+    10ge2p1x520-ethip6-ip6scale200k-ndrpdrdisc.robot:| tc07-78B-2t2c-ethip6-ip6scale200k-ndrdisc
+    10ge2p1x520-ethip6-ip6scale20k-ndrpdrdisc.robot:| tc07-78B-2t2c-ethip6-ip6scale20k-ndrdisc
+    10ge2p1x520-ethip6-ip6scale2m-ndrpdrdisc.robot:| tc07-78B-2t2c-ethip6-ip6scale2m-ndrdisc
+    40ge2p1xl710-ethip6-ip6base-ndrpdrdisc.robot:| tc07-78B-2t2c-ethip6-ip6base-ndrdisc
+
index a792cac..1b552c1 100644 (file)
@@ -10,14 +10,6 @@ for VPP running in multiple configurations of VPP worker thread(s),
 a.k.a. VPP data plane thread(s), and their physical CPU core(s)
 placement.
 
-.. note::
-
-    Test results have been generated by FD.io test executor jobs
-    `csit-vpp-perf-1704-all
-    <https://jenkins.fd.io/view/csit/job/csit-vpp-perf-1704-all/>`_,
-    with Robot Framework result files csit-vpp-perf-1704-all-<id>.zip
-    `archived here <../../_static/archive/>`_.
-
 VPP packet latency in 1t1c setup (1thread, 1core) is presented in the graph
 below.
 
@@ -35,14 +27,14 @@ git repository:
     $ cd $CSIT/tests/vpp/perf/crypto
     $ grep -E "64B-1t1c-.*ipsec.*-ndrdisc" *
 
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-interfaces-aes-gcm-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-interfaces-aes-gcm-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-interfaces-cbc-sha1-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-interfaces-cbc-sha1-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-tunnels-aes-gcm-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-tunnels-aes-gcm-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-tunnels-cbc-sha1-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-tunnels-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-tnl-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-tnl-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-tnl-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-tnl-cbc-sha1-ndrdisc
     40ge2p1xl710-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrdisc
 
 
@@ -62,13 +54,13 @@ git repository:
     $ cd $CSIT/tests/vpp/perf/crypto
     $ grep -E "64B-2t2c-.*ipsec.*-ndrdisc" *
 
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc13-64B-2t2c-ethip4ipsecscale1ip4-ip4base-interfaces-aes-gcm-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc15-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-interfaces-aes-gcm-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc13-64B-2t2c-ethip4ipsecscale1ip4-ip4base-interfaces-cbc-sha1-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc15-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-interfaces-cbc-sha1-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc13-64B-2t2c-ethip4ipsecscale1ip4-ip4base-tunnels-aes-gcm-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc15-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-tunnels-aes-gcm-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc13-64B-2t2c-ethip4ipsecscale1ip4-ip4base-tunnels-cbc-sha1-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc15-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-tunnels-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecbasetnl-ip4base-tnl-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecbasetnl-ip4base-tnl-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-tnl-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-tnl-cbc-sha1-ndrdisc
     40ge2p1xl710-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrdisc
 
diff --git a/docs/report/vpp_performance_tests/packet_latency_graphs/ipv6.rst b/docs/report/vpp_performance_tests/packet_latency_graphs/ipv6.rst
deleted file mode 100644 (file)
index a8e8ce7..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-IPv6 Routed-Forwarding
-======================
-
-This section includes summary graphs of VPP Phy-to-Phy packet latency
-with IPv6 Routed-Forwarding measured at 50% of discovered NDR throughput
-rate. Latency is reported for VPP running in multiple configurations of
-VPP worker thread(s), a.k.a. VPP data plane thread(s), and their
-physical CPU core(s) placement.
-
-VPP packet latency in 1t1c setup (1thread, 1core) is presented in the graph below.
-
-.. raw:: html
-
-    <iframe width="700" height="1000" frameborder="0" scrolling="no" src="../../_static/vpp/78B-1t1c-ethip6-ip6-ndrdisc-lat50.html"></iframe>
-
-*Figure 1. VPP 1thread 1core - packet latency for Phy-to-Phy IPv6 Routed-Forwarding.*
-
-CSIT source code for the test cases used for above plots can be found in CSIT
-git repository:
-
-.. code-block:: bash
-
-    $ cd $CSIT/tests/vpp/perf/ipv6
-    $ grep -E "78B-1t1c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc" *
-
-    10ge2p1x520-ethip6-ip6base-copwhtlistbase-ndrdisc.robot:| tc01-78B-1t1c-ethip6-ip6base-copwhtlistbase-ndrdisc
-    10ge2p1x520-ethip6-ip6base-iacldstbase-ndrdisc.robot:| tc01-78B-1t1c-ethip6-ip6base-iacldstbase-ndrdisc
-    10ge2p1x520-ethip6-ip6base-ndrdisc.robot:| tc01-78B-1t1c-ethip6-ip6base-ndrdisc
-    10ge2p1x520-ethip6-ip6scale200k-ndrdisc.robot:| tc01-78B-1t1c-ethip6-ip6scale200k-ndrdisc
-    10ge2p1x520-ethip6-ip6scale20k-ndrdisc.robot:| tc01-78B-1t1c-ethip6-ip6scale20k-ndrdisc
-    10ge2p1x520-ethip6-ip6scale2m-ndrdisc.robot:| tc01-78B-1t1c-ethip6-ip6scale2m-ndrdisc
-    40ge2p1xl710-ethip6-ip6base-ndrdisc.robot:| tc01-78B-1t1c-ethip6-ip6base-ndrdisc
-
-VPP packet latency in 2t2c setup (2thread, 2core) is presented in the graph below.
-
-.. raw:: html
-
-    <iframe width="700" height="1000" frameborder="0" scrolling="no" src="../../_static/vpp/78B-2t2c-ethip6-ip6-ndrdisc-lat50.html"></iframe>
-
-*Figure 2. VPP 2threads 2cores - packet latency for Phy-to-Phy IPv6 Routed-Forwarding.*
-
-CSIT source code for the test cases used for above plots can be found in CSIT
-git repository:
-
-.. code-block:: bash
-
-    $ cd $CSIT/tests/vpp/perf/ipv6
-    $ grep -E "78B-2t2c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc" *
-
-    10ge2p1x520-ethip6-ip6base-copwhtlistbase-ndrdisc.robot:| tc07-78B-2t2c-ethip6-ip6base-copwhtlistbase-ndrdisc
-    10ge2p1x520-ethip6-ip6base-iacldstbase-ndrdisc.robot:| tc07-78B-2t2c-ethip6-ip6base-iacldstbase-ndrdisc
-    10ge2p1x520-ethip6-ip6base-ipolicemarkbase-ndrdisc.robot:| tc07-78B-2t2c-ethip6-ip6base-ipolicemarkbase-ndrdisc
-    10ge2p1x520-ethip6-ip6base-ndrdisc.robot:| tc07-78B-2t2c-ethip6-ip6base-ndrdisc
-    10ge2p1x520-ethip6-ip6scale200k-ndrdisc.robot:| tc07-78B-2t2c-ethip6-ip6scale200k-ndrdisc
-    10ge2p1x520-ethip6-ip6scale20k-ndrdisc.robot:| tc07-78B-2t2c-ethip6-ip6scale20k-ndrdisc
-    10ge2p1x520-ethip6-ip6scale2m-ndrdisc.robot:| tc07-78B-2t2c-ethip6-ip6scale2m-ndrdisc
-    40ge2p1xl710-ethip6-ip6base-ndrdisc.robot:| tc07-78B-2t2c-ethip6-ip6base-ndrdisc
-
index 3b56612..056d3b4 100644 (file)
@@ -21,17 +21,54 @@ git repository:
 .. code-block:: bash
 
     $ cd $CSIT/tests/vpp/perf/l2
-    $ grep -E "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc" *
-
-    10ge2p1vic1227-eth-l2bdbasemaclrn-ndrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-    10ge2p1x520-dot1ad-l2xcbase-ndrdisc.robot:| tc01-64B-1t1c-dot1ad-l2xcbase-ndrdisc
-    10ge2p1x520-dot1q-l2xcbase-ndrdisc.robot:| tc01-64B-1t1c-dot1q-l2xcbase-ndrdisc
-    10ge2p1x520-eth-l2bdbasemaclrn-ndrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-    10ge2p1x520-eth-l2xcbase-ndrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-ndrdisc
-    10ge2p1x710-eth-l2bdbasemaclrn-ndrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-    40ge2p1vic1385-eth-l2bdbasemaclrn-ndrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-    40ge2p1xl710-eth-l2bdbasemaclrn-ndrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
-    40ge2p1xl710-eth-l2xcbase-ndrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-ndrdisc
+    $ grep -E "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-(iacl.*|oacl.*|eth.*)*ndrdisc" *
+
+    10ge2p1vic1227-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
+    10ge2p1x520-dot1ad-l2xcbase-ndrpdrdisc.robot:| tc01-64B-1t1c-dot1ad-l2xcbase-ndrdisc
+    10ge2p1x520-dot1q-l2xcbase-ndrpdrdisc.robot:| tc01-64B-1t1c-dot1q-l2xcbase-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc03-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc05-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc07-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc09-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc11-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc13-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc15-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc17-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-statefull-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc03-64B-1t1c-eth-l2bdbasemaclrn-iacl10-statefull-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc05-64B-1t1c-eth-l2bdbasemaclrn-iacl50-statefull-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc07-64B-1t1c-eth-l2bdbasemaclrn-iacl1-statefull-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc09-64B-1t1c-eth-l2bdbasemaclrn-iacl10-statefull-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc11-64B-1t1c-eth-l2bdbasemaclrn-iacl50-statefull-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc13-64B-1t1c-eth-l2bdbasemaclrn-iacl1-statefull-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc15-64B-1t1c-eth-l2bdbasemaclrn-iacl10-statefull-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc17-64B-1t1c-eth-l2bdbasemaclrn-iacl50-statefull-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc03-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc05-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc07-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc09-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc11-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc13-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc15-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc17-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl1-statefull-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc03-64B-1t1c-eth-l2bdbasemaclrn-oacl10-statefull-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc05-64B-1t1c-eth-l2bdbasemaclrn-oacl50-statefull-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc07-64B-1t1c-eth-l2bdbasemaclrn-oacl1-statefull-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc09-64B-1t1c-eth-l2bdbasemaclrn-oacl10-statefull-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc11-64B-1t1c-eth-l2bdbasemaclrn-oacl50-statefull-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc13-64B-1t1c-eth-l2bdbasemaclrn-oacl1-statefull-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc15-64B-1t1c-eth-l2bdbasemaclrn-oacl10-statefull-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc17-64B-1t1c-eth-l2bdbasemaclrn-oacl50-statefull-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2memif-1lxc-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
+    10ge2p1x520-eth-l2xcbase-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-ndrdisc
+    10ge2p1x710-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
+    40ge2p1vic1385-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
+    40ge2p1xl710-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
+    40ge2p1xl710-eth-l2xcbase-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-ndrdisc
 
 VPP packet latency in 2t2c setup (2thread, 2core) is presented in the graph below.
 
@@ -47,15 +84,16 @@ git repository:
 .. code-block:: bash
 
     $ cd $CSIT/tests/vpp/perf/l2
-    $ grep -E "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc" *
-
-    10ge2p1vic1227-eth-l2bdbasemaclrn-ndrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-    10ge2p1x520-dot1ad-l2xcbase-ndrdisc.robot:| tc07-64B-2t2c-dot1ad-l2xcbase-ndrdisc
-    10ge2p1x520-dot1q-l2xcbase-ndrdisc.robot:| tc07-64B-2t2c-dot1q-l2xcbase-ndrdisc
-    10ge2p1x520-eth-l2bdbasemaclrn-ndrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-    10ge2p1x520-eth-l2xcbase-ndrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-ndrdisc
-    10ge2p1x710-eth-l2bdbasemaclrn-ndrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-    40ge2p1vic1385-eth-l2bdbasemaclrn-ndrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-    40ge2p1xl710-eth-l2bdbasemaclrn-ndrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
-    40ge2p1xl710-eth-l2xcbase-ndrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-ndrdisc
+    $ grep -E "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-(iacl.*|oacl.*|eth.*)*ndrdisc" *
+
+    10ge2p1vic1227-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
+    10ge2p1x520-dot1ad-l2xcbase-ndrpdrdisc.robot:| tc07-64B-2t2c-dot1ad-l2xcbase-ndrdisc
+    10ge2p1x520-dot1q-l2xcbase-ndrpdrdisc.robot:| tc07-64B-2t2c-dot1q-l2xcbase-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2memif-1lxc-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
+    10ge2p1x520-eth-l2xcbase-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-ndrdisc
+    10ge2p1x710-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
+    40ge2p1vic1385-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
+    40ge2p1xl710-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
+    40ge2p1xl710-eth-l2xcbase-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-ndrdisc
 
index 59b5e8a..01ee2a9 100644 (file)
@@ -26,12 +26,21 @@ git repository:
 
     10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
     10ge2p1x520-dot1q-l2xcbase-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc
-    10ge2p1x520-ethip4-ip4base-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-eth-2vhost-1vm-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-ndrdisc
     10ge2p1x520-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-eth-4vhost-2vm-ndrdisc
     10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
-    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrdisc
     10ge2p1x520-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrdisc
-    10ge2p1x520-eth-l2xcbase-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-ndrdisc
     10ge2p1x520-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-4vhost-2vm-ndrdisc
     10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
     40ge2p1xl710-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-ip4base-eth-4vhost-2vm-ndrdisc
@@ -57,12 +66,21 @@ git repository:
 
     10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
     10ge2p1x520-dot1q-l2xcbase-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc
-    10ge2p1x520-ethip4-ip4base-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-eth-2vhost-1vm-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-ndrdisc
     10ge2p1x520-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-eth-4vhost-2vm-ndrdisc
     10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
-    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrdisc
     10ge2p1x520-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrdisc
-    10ge2p1x520-eth-l2xcbase-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-ndrdisc
     10ge2p1x520-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-4vhost-2vm-ndrdisc
     10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
     40ge2p1xl710-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-ip4base-eth-4vhost-2vm-ndrdisc
index c203aa1..91191ef 100644 (file)
@@ -37,9 +37,9 @@ and their indices.
 .. toctree::
 
     l2
-    ipv4
-    ipv6
-    ipv4_tunnels
-    ipv6_tunnels
+    ip4
+    ip6
+    ip4_tunnels
+    ip6_tunnels
     vm_vhost
     ipsec
@@ -24,7 +24,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv4
+    $ cd $CSIT/tests/vpp/perf/ip4
     $ grep -P '64B-1t1c-ethip4-ip4(base|scale)[a-z0-9]*(?!-eth-[0-9]vhost).*-ndrdisc' *
 
     10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-copwhtlistbase-ndrdisc
@@ -35,7 +35,6 @@ git repository:
     10ge2p1x520-ethip4-ip4scale200k-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4scale200k-ndrdisc
     10ge2p1x520-ethip4-ip4scale20k-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4scale20k-ndrdisc
     10ge2p1x520-ethip4-ip4scale2m-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4scale2m-ndrdisc
-    10ge2p1x520-ethip4-ip4scale-snat-ndrpdrdisc.robot:| tc11-64B-1t1c-ethip4-ip4base-snat-4000u-15p-ndrdisc
     40ge2p1xl710-ethip4-ip4base-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-ndrdisc
 
 VPP NDR 64B packet throughput in 2t2c setup (2thread, 2core) is presented
@@ -53,7 +52,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv4
+    $ cd $CSIT/tests/vpp/perf/ip4
     $ grep -P '64B-2t2c-ethip4-ip4(base|scale)[a-z0-9]*(?!-eth-[0-9]vhost).*-ndrdisc' *
 
     10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-copwhtlistbase-ndrdisc
@@ -83,19 +82,17 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv4
+    $ cd $CSIT/tests/vpp/perf/ip4
     $ grep -P '64B-1t1c-ethip4-ip4(base|scale)[a-z0-9]*(?!-eth-[0-9]vhost).*-pdrdisc' *
 
-    10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-copwhtlistbase-pdrdisc
-    10ge2p1x520-ethip4-ip4base-iacldstbase-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-iacldstbase-pdrdisc
-    10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-ipolicemarkbase-pdrdisc
-    10ge2p1x520-ethip4-ip4base-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-pdrdisc
-    10ge2p1x520-ethip4-ip4base-snat-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-snat-1u-1p-pdrdisc
-    10ge2p1x520-ethip4-ip4scale200k-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4scale200k-pdrdisc
-    10ge2p1x520-ethip4-ip4scale20k-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4scale20k-pdrdisc
-    10ge2p1x520-ethip4-ip4scale2m-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4scale2m-pdrdisc
-    10ge2p1x520-ethip4-ip4scale-snat-ndrpdrdisc.robot:| tc11-64B-1t1c-ethip4-ip4base-snat-4000u-15p-pdrdisc
-    40ge2p1xl710-ethip4-ip4base-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-pdrdisc
+    10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-copwhtlistbase-pdrdisc
+    10ge2p1x520-ethip4-ip4base-iacldstbase-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-iacldstbase-pdrdisc
+    10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-ipolicemarkbase-pdrdisc
+    10ge2p1x520-ethip4-ip4base-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-pdrdisc
+    10ge2p1x520-ethip4-ip4base-snat-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-snat-1u-1p-pdrdisc
+    10ge2p1x520-ethip4-ip4scale200k-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4scale200k-pdrdisc
+    10ge2p1x520-ethip4-ip4scale20k-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4scale20k-pdrdisc
+    10ge2p1x520-ethip4-ip4scale2m-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4scale2m-pdrdisc
 
 VPP PDR 64B packet throughput in 2t2c setup (2thread, 2core) is presented
 in the graph below. PDR measured for 0.5% packet loss ratio.
@@ -25,7 +25,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv4_tunnels
+    $ cd $CSIT/tests/vpp/perf/ip4_tunnels
     $ grep -E "64B-1t1c-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc" *
 
     10ge2p1x520-ethip4lispip4-ip4base-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4lispip4-ip4base-ndrdisc
@@ -47,7 +47,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv4_tunnels
+    $ cd $CSIT/tests/vpp/perf/ip4_tunnels
     $ grep -E "64B-2t2c-ethip4[a-z0-9]+-[a-z0-9]*-ndrdisc" *
 
     10ge2p1x520-ethip4lispip4-ip4base-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4lispip4-ip4base-ndrdisc
@@ -73,7 +73,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv4_tunnels
+    $ cd $CSIT/tests/vpp/perf/ip4_tunnels
     $ grep -E "64B-1t1c-ethip4[a-z0-9]+-[a-z0-9]*-pdrdisc" *
 
     10ge2p1x520-ethip4lispip4-ip4base-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4lispip4-ip4base-pdrdisc
@@ -95,7 +95,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv4_tunnels
+    $ cd $CSIT/tests/vpp/perf/ip4_tunnels
     $ grep -E "64B-2t2c-ethip4[a-z0-9]+-[a-z0-9]*-pdrdisc" *
 
     10ge2p1x520-ethip4lispip4-ip4base-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4lispip4-ip4base-pdrdisc
@@ -25,7 +25,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv6
+    $ cd $CSIT/tests/vpp/perf/ip6
     $ grep -E "78B-1t1c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc" *
 
     10ge2p1x520-ethip6-ip6base-copwhtlistbase-ndrpdrdisc.robot:| tc01-78B-1t1c-ethip6-ip6base-copwhtlistbase-ndrdisc
@@ -51,7 +51,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv6
+    $ cd $CSIT/tests/vpp/perf/ip6
     $ grep -E "78B-2t2c-ethip6-ip6[a-z0-9]+-[a-z-]*ndrdisc" *
 
     10ge2p1x520-ethip6-ip6base-copwhtlistbase-ndrpdrdisc.robot:| tc07-78B-2t2c-ethip6-ip6base-copwhtlistbase-ndrdisc
@@ -80,7 +80,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv6
+    $ cd $CSIT/tests/vpp/perf/ip6
     $ grep -E "78B-1t1c-ethip6-ip6[a-z0-9]+-[a-z-]*pdrdisc" *
 
     10ge2p1x520-ethip6-ip6base-copwhtlistbase-ndrpdrdisc.robot:| tc02-78B-1t1c-ethip6-ip6base-copwhtlistbase-pdrdisc
@@ -105,7 +105,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv6
+    $ cd $CSIT/tests/vpp/perf/ip6
     $ grep -E "78B-2t2c-ethip6-ip6[a-z0-9]+-[a-z-]*pdrdisc" *
 
     10ge2p1x520-ethip6-ip6base-copwhtlistbase-ndrpdrdisc.robot:| tc08-78B-2t2c-ethip6-ip6base-copwhtlistbase-pdrdisc
@@ -114,4 +114,3 @@ git repository:
     10ge2p1x520-ethip6-ip6scale200k-ndrpdrdisc.robot:| tc08-78B-2t2c-ethip6-ip6scale200k-pdrdisc
     10ge2p1x520-ethip6-ip6scale20k-ndrpdrdisc.robot:| tc08-78B-2t2c-ethip6-ip6scale20k-pdrdisc
     10ge2p1x520-ethip6-ip6scale2m-ndrpdrdisc.robot:| tc08-78B-2t2c-ethip6-ip6scale2m-pdrdisc
-
@@ -25,7 +25,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv6_tunnels
+    $ cd $CSIT/tests/vpp/perf/ip6_tunnels
     $ grep -E "78B-1t1c-ethip6[a-z0-9]+-[a-z0-9]*-ndrdisc" *
 
     10ge2p1x520-ethip6lispip4-ip6base-ndrdisc.robot:| tc01-78B-1t1c-ethip6lispip4-ip6base-ndrdisc
@@ -46,7 +46,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv6_tunnels
+    $ cd $CSIT/tests/vpp/perf/ip6_tunnels
     $ grep -E "78B-2t2c-ethip6[a-z0-9]+-[a-z0-9]*-ndrdisc" *
 
     10ge2p1x520-ethip6lispip4-ip6base-ndrdisc.robot:| tc07-78B-2t2c-ethip6lispip4-ip6base-ndrdisc
@@ -70,7 +70,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv6_tunnels
+    $ cd $CSIT/tests/vpp/perf/ip6_tunnels
     $ grep -E "78B-1t1c-ethip6[a-z0-9]+-[a-z0-9]*-pdrdisc" *
 
     10ge2p1x520-ethip6lispip4-ip6base-ndrdisc.robot:| tc02-78B-1t1c-ethip6lispip4-ip6base-pdrdisc
@@ -91,7 +91,7 @@ git repository:
 
 .. code-block:: bash
 
-    $ cd $CSIT/tests/vpp/perf/ipv6_tunnels
+    $ cd $CSIT/tests/vpp/perf/ip6_tunnels
     $ grep -E "78B-2t2c-ethip6[a-z0-9]+-[a-z0-9]*-pdrdisc" *
 
     10ge2p1x520-ethip6lispip4-ip6base-ndrdisc.robot:| tc08-78B-2t2c-ethip6lispip4-ip6base-pdrdisc
index 1a519ec..9f9fc8b 100644 (file)
@@ -35,17 +35,16 @@ git repository:
     $ cd $CSIT/tests/vpp/perf/crypto
     $ grep -E "64B-1t1c-.*ipsec.*-ndrdisc" *
 
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-interfaces-aes-gcm-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-interfaces-aes-gcm-ndrdisc
-    {NOT PLOTTED} 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-interfaces-cbc-sha1-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-interfaces-cbc-sha1-ndrdisc
-    {NOT PLOTTED} 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-tunnels-aes-gcm-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-tunnels-aes-gcm-ndrdisc
-    {NOT PLOTTED} 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1ip4-ip4base-tunnels-cbc-sha1-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc03-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-tunnels-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-tnl-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecbasetnl-ip4base-tnl-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-tnl-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-tnl-cbc-sha1-ndrdisc
     40ge2p1xl710-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrdisc
 
-
 VPP NDR 64B packet throughput in 2t2c setup (2thread, 2core) is presented
 in the graph below.
 
@@ -63,14 +62,14 @@ git repository:
     $ cd $CSIT/tests/vpp/perf/crypto
     $ grep -E "64B-2t2c-.*ipsec.*-ndrdisc" *
 
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc13-64B-2t2c-ethip4ipsecscale1ip4-ip4base-interfaces-aes-gcm-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc15-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-interfaces-aes-gcm-ndrdisc
-    {NOT PLOTTED} 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc13-64B-2t2c-ethip4ipsecscale1ip4-ip4base-interfaces-cbc-sha1-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc15-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-interfaces-cbc-sha1-ndrdisc
-    {NOT PLOTTED} 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc13-64B-2t2c-ethip4ipsecscale1ip4-ip4base-tunnels-aes-gcm-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc15-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-tunnels-aes-gcm-ndrdisc
-    {NOT PLOTTED} 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc13-64B-2t2c-ethip4ipsecscale1ip4-ip4base-tunnels-cbc-sha1-ndrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc15-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-tunnels-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecbasetnl-ip4base-tnl-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecbasetnl-ip4base-tnl-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-tnl-aes-gcm-ndrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-tnl-cbc-sha1-ndrdisc
     40ge2p1xl710-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrdisc
 
 PDR Throughput
@@ -93,17 +92,16 @@ git repository:
     $ cd $CSIT/tests/vpp/perf/crypto
     $ grep -E "64B-1t1c-.*ipsec.*-pdrdisc" *
 
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecscale1ip4-ip4base-interfaces-aes-gcm-pdrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc04-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-interfaces-aes-gcm-pdrdisc
-    {NOT PLOTTED} 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecscale1ip4-ip4base-interfaces-cbc-sha1-pdrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc04-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-interfaces-cbc-sha1-pdrdisc
-    {NOT PLOTTED} 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecscale1ip4-ip4base-tunnels-aes-gcm-pdrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc04-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-tunnels-aes-gcm-pdrdisc
-    {NOT PLOTTED} 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecscale1ip4-ip4base-tunnels-cbc-sha1-pdrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc04-64B-1t1c-ethip4ipsecscale1000ip4-ip4base-tunnels-cbc-sha1-pdrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-pdrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-pdrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecbasetnl-ip4base-tnl-aes-gcm-pdrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecbasetnl-ip4base-tnl-cbc-sha1-pdrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-pdrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-pdrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-tnl-aes-gcm-pdrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsecscale1000tnl-ip4base-tnl-cbc-sha1-pdrdisc
     40ge2p1xl710-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4ipsectptlispgpe-ip4base-cbc-sha1-pdrdisc
 
-
 VPP PDR 64B packet throughput in 2t2c setup (2thread, 2core) is presented
 in the graph below. PDR measured for 0.5% packet loss ratio.
 
@@ -121,13 +119,12 @@ git repository:
     $ cd $CSIT/tests/vpp/perf/crypto
     $ grep -E "64B-2t2c-.*ipsec.*-pdrdisc" *
 
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc14-64B-2t2c-ethip4ipsecscale1ip4-ip4base-interfaces-aes-gcm-pdrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-aes-gcm-ndrpdrdisc.robot:| tc16-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-interfaces-aes-gcm-pdrdisc
-    {NOT PLOTTED} 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc14-64B-2t2c-ethip4ipsecscale1ip4-ip4base-interfaces-cbc-sha1-pdrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-interfaces-cbc-sha1-ndrpdrdisc.robot:| tc16-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-interfaces-cbc-sha1-pdrdisc
-    {NOT PLOTTED} 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc14-64B-2t2c-ethip4ipsecscale1ip4-ip4base-tunnels-aes-gcm-pdrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-aes-gcm-ndrpdrdisc.robot:| tc16-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-tunnels-aes-gcm-pdrdisc
-    {NOT PLOTTED} 40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc14-64B-2t2c-ethip4ipsecscale1ip4-ip4base-tunnels-cbc-sha1-pdrdisc
-    40ge2p1xl710-ethip4ipsecscaleip4-ip4base-tunnels-cbc-sha1-ndrpdrdisc.robot:| tc16-64B-2t2c-ethip4ipsecscale1000ip4-ip4base-tunnels-cbc-sha1-pdrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-aes-gcm-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-aes-gcm-pdrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4ipsecbasetnl-ip4base-int-cbc-sha1-pdrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4ipsecbasetnl-ip4base-tnl-aes-gcm-pdrdisc
+    40ge2p1xl710-ethip4ipsecbasetnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4ipsecbasetnl-ip4base-tnl-cbc-sha1-pdrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-aes-gcm-pdrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-int-cbc-sha1-pdrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-aes-gcm-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-tnl-aes-gcm-pdrdisc
+    40ge2p1xl710-ethip4ipsecscale1000tnl-ip4base-tnl-cbc-sha1-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4ipsecscale1000tnl-ip4base-tnl-cbc-sha1-pdrdisc
     40ge2p1xl710-ethip4ipsectptlispgpe-ip4base-cbc-sha1-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4ipsectptlispgpe-ip4base-cbc-sha1-pdrdisc
-
index d097d64..e34786f 100644 (file)
@@ -26,12 +26,49 @@ git repository:
 .. code-block:: bash
 
     $ cd $CSIT/tests/vpp/perf/l2
-    $ grep -E "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc" *
+    $ grep -E "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-(iacl.*|oacl.*|eth.*)*ndrdisc" *
 
     10ge2p1vic1227-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
     10ge2p1x520-dot1ad-l2xcbase-ndrpdrdisc.robot:| tc01-64B-1t1c-dot1ad-l2xcbase-ndrdisc
     10ge2p1x520-dot1q-l2xcbase-ndrpdrdisc.robot:| tc01-64B-1t1c-dot1q-l2xcbase-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc03-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc05-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc07-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc09-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc11-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc13-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc15-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc17-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-iacl1-statefull-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc03-64B-1t1c-eth-l2bdbasemaclrn-iacl10-statefull-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc05-64B-1t1c-eth-l2bdbasemaclrn-iacl50-statefull-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc07-64B-1t1c-eth-l2bdbasemaclrn-iacl1-statefull-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc09-64B-1t1c-eth-l2bdbasemaclrn-iacl10-statefull-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc11-64B-1t1c-eth-l2bdbasemaclrn-iacl50-statefull-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc13-64B-1t1c-eth-l2bdbasemaclrn-iacl1-statefull-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc15-64B-1t1c-eth-l2bdbasemaclrn-iacl10-statefull-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc17-64B-1t1c-eth-l2bdbasemaclrn-iacl50-statefull-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc03-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc05-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc07-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc09-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc11-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc13-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc15-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc17-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-oacl1-statefull-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc03-64B-1t1c-eth-l2bdbasemaclrn-oacl10-statefull-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc05-64B-1t1c-eth-l2bdbasemaclrn-oacl50-statefull-flows100-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc07-64B-1t1c-eth-l2bdbasemaclrn-oacl1-statefull-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc09-64B-1t1c-eth-l2bdbasemaclrn-oacl10-statefull-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc11-64B-1t1c-eth-l2bdbasemaclrn-oacl50-statefull-flows10k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc13-64B-1t1c-eth-l2bdbasemaclrn-oacl1-statefull-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc15-64B-1t1c-eth-l2bdbasemaclrn-oacl10-statefull-flows100k-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc17-64B-1t1c-eth-l2bdbasemaclrn-oacl50-statefull-flows100k-ndrdisc
     10ge2p1x520-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2memif-1lxc-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
     10ge2p1x520-eth-l2xcbase-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-ndrdisc
     10ge2p1x710-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
     40ge2p1vic1385-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
@@ -54,12 +91,13 @@ git repository:
 .. code-block:: bash
 
     $ cd $CSIT/tests/vpp/perf/l2
-    $ grep -E "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc" *
+    $ grep -E "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-(iacl.*|oacl.*|eth.*)*ndrdisc" *
 
     10ge2p1vic1227-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
     10ge2p1x520-dot1ad-l2xcbase-ndrpdrdisc.robot:| tc07-64B-2t2c-dot1ad-l2xcbase-ndrdisc
     10ge2p1x520-dot1q-l2xcbase-ndrpdrdisc.robot:| tc07-64B-2t2c-dot1q-l2xcbase-ndrdisc
     10ge2p1x520-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2memif-1lxc-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2memif-1lxc-ndrdisc
     10ge2p1x520-eth-l2xcbase-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-ndrdisc
     10ge2p1x710-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
     40ge2p1vic1385-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
@@ -90,7 +128,44 @@ git repository:
     10ge2p1vic1227-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-pdrdisc
     10ge2p1x520-dot1ad-l2xcbase-ndrpdrdisc.robot:| tc02-64B-1t1c-dot1ad-l2xcbase-pdrdisc
     10ge2p1x520-dot1q-l2xcbase-ndrpdrdisc.robot:| tc02-64B-1t1c-dot1q-l2xcbase-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows100-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc04-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows100-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc06-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows100-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc08-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows10k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc10-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows10k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc12-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows10k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc14-64B-1t1c-eth-l2bdbasemaclrn-iacl1-stateless-flows100k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc16-64B-1t1c-eth-l2bdbasemaclrn-iacl10-stateless-flows100k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermit-ndrpdrdisc.robot:| tc18-64B-1t1c-eth-l2bdbasemaclrn-iacl50-stateless-flows100k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-iacl1-statefull-flows100-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc04-64B-1t1c-eth-l2bdbasemaclrn-iacl10-statefull-flows100-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc06-64B-1t1c-eth-l2bdbasemaclrn-iacl50-statefull-flows100-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc08-64B-1t1c-eth-l2bdbasemaclrn-iacl1-statefull-flows10k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc10-64B-1t1c-eth-l2bdbasemaclrn-iacl10-statefull-flows10k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc12-64B-1t1c-eth-l2bdbasemaclrn-iacl50-statefull-flows10k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc14-64B-1t1c-eth-l2bdbasemaclrn-iacl1-statefull-flows100k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc16-64B-1t1c-eth-l2bdbasemaclrn-iacl10-statefull-flows100k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-aclinpermitreflect-ndrpdrdisc.robot:| tc18-64B-1t1c-eth-l2bdbasemaclrn-iacl50-statefull-flows100k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows100-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc04-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows100-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc06-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows100-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc08-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows10k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc10-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows10k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc12-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows10k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc14-64B-1t1c-eth-l2bdbasemaclrn-oacl1-stateless-flows100k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc16-64B-1t1c-eth-l2bdbasemaclrn-oacl10-stateless-flows100k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermit-ndrpdrdisc.robot:| tc18-64B-1t1c-eth-l2bdbasemaclrn-oacl50-stateless-flows100k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-oacl1-statefull-flows100-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc04-64B-1t1c-eth-l2bdbasemaclrn-oacl10-statefull-flows100-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc06-64B-1t1c-eth-l2bdbasemaclrn-oacl50-statefull-flows100-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc08-64B-1t1c-eth-l2bdbasemaclrn-oacl1-statefull-flows10k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc10-64B-1t1c-eth-l2bdbasemaclrn-oacl10-statefull-flows10k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc12-64B-1t1c-eth-l2bdbasemaclrn-oacl50-statefull-flows10k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc14-64B-1t1c-eth-l2bdbasemaclrn-oacl1-statefull-flows100k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc16-64B-1t1c-eth-l2bdbasemaclrn-oacl10-statefull-flows100k-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-acloutpermitreflect-ndrpdrdisc.robot:| tc18-64B-1t1c-eth-l2bdbasemaclrn-oacl50-statefull-flows100k-pdrdisc
     10ge2p1x520-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-pdrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2memif-1lxc-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
     10ge2p1x520-eth-l2xcbase-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-pdrdisc
     10ge2p1x710-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-pdrdisc
     40ge2p1vic1385-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-pdrdisc
@@ -111,13 +186,13 @@ git repository:
 .. code-block:: bash
 
     $ cd $CSIT/tests/vpp/perf/l2
-    $ grep -E "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc" *
+    $ grep -E "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-(iacl.*|oacl.*|eth.*)*pdrdisc" *
 
     10ge2p1vic1227-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-pdrdisc
     10ge2p1x520-dot1ad-l2xcbase-ndrpdrdisc.robot:| tc08-64B-2t2c-dot1ad-l2xcbase-pdrdisc
     10ge2p1x520-dot1q-l2xcbase-ndrpdrdisc.robot:| tc08-64B-2t2c-dot1q-l2xcbase-pdrdisc
     10ge2p1x520-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-pdrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2memif-1lxc-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-eth-2memif-1lxc-pdrdisc
     10ge2p1x520-eth-l2xcbase-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-pdrdisc
     10ge2p1x710-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-pdrdisc
     40ge2p1vic1385-eth-l2bdbasemaclrn-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-pdrdisc
-
index fbb3bba..40769a6 100644 (file)
@@ -31,18 +31,27 @@ git repository:
 
     10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
     10ge2p1x520-dot1q-l2xcbase-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc
-    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
-    10ge2p1x520-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrdisc
-    10ge2p1x520-eth-l2xcbase-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc
-    10ge2p1x520-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-4vhost-2vm-ndrdisc
-    10ge2p1x520-ethip4-ip4base-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-eth-2vhost-1vm-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-ndrdisc
     10ge2p1x520-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-eth-4vhost-2vm-ndrdisc
     10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-4vhost-2vm-ndrdisc
     10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
+    40ge2p1xl710-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-ip4base-eth-4vhost-2vm-ndrdisc
     40ge2p1xl710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
     40ge2p1xl710-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrdisc
     40ge2p1xl710-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-4vhost-2vm-ndrdisc
-    40ge2p1xl710-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc01-64B-1t1c-eth-ip4base-eth-4vhost-2vm-ndrdisc
 
 VPP NDR 64B packet throughput in 2t2c setup (2thread, 2core) is presented
 in the graph below.
@@ -64,18 +73,27 @@ git repository:
 
     10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
     10ge2p1x520-dot1q-l2xcbase-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc
-    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
-    10ge2p1x520-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrdisc
-    10ge2p1x520-eth-l2xcbase-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc
-    10ge2p1x520-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-4vhost-2vm-ndrdisc
-    10ge2p1x520-ethip4-ip4base-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-eth-2vhost-1vm-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-ndrdisc
     10ge2p1x520-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-eth-4vhost-2vm-ndrdisc
     10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-ndrdisc
+    10ge2p1x520-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-4vhost-2vm-ndrdisc
     10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
+    40ge2p1xl710-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-ip4base-eth-4vhost-2vm-ndrdisc
     40ge2p1xl710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
     40ge2p1xl710-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrdisc
     40ge2p1xl710-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-4vhost-2vm-ndrdisc
-    40ge2p1xl710-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc07-64B-2t2c-eth-ip4base-eth-4vhost-2vm-ndrdisc
 
 PDR Throughput
 ~~~~~~~~~~~~~~
@@ -100,18 +118,27 @@ git repository:
 
     10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
     10ge2p1x520-dot1q-l2xcbase-eth-2vhost-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-pdrdisc
-    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
-    10ge2p1x520-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhost-2vm-pdrdisc
-    10ge2p1x520-eth-l2xcbase-eth-2vhost-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-pdrdisc
-    10ge2p1x520-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-eth-4vhost-2vm-pdrdisc
-    10ge2p1x520-ethip4-ip4base-eth-2vhost-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-eth-2vhost-1vm-pdrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-eth-2vhostvr1024-1vm-pdrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-eth-2vhostvr256-1vm-pdrdisc
     10ge2p1x520-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-eth-4vhost-2vm-pdrdisc
     10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhost-2vm-pdrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-eth-2vhostvr256-1vm-pdrdisc
+    10ge2p1x520-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-eth-4vhost-2vm-pdrdisc
     10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
+    40ge2p1xl710-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-ip4base-eth-4vhost-2vm-pdrdisc
     40ge2p1xl710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
     40ge2p1xl710-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-4vhost-2vm-pdrdisc
     40ge2p1xl710-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-eth-4vhost-2vm-pdrdisc
-    40ge2p1xl710-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc02-64B-1t1c-eth-ip4base-eth-4vhost-2vm-pdrdisc
 
 VPP PDR 64B packet throughput in 2t2c setup (2thread, 2core) is presented
 in the graph below. PDR measured for 0.5% packet loss ratio.
@@ -133,16 +160,24 @@ git repository:
 
     10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
     10ge2p1x520-dot1q-l2xcbase-eth-2vhost-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-eth-2vhost-1vm-pdrdisc
-    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
-    10ge2p1x520-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhost-2vm-pdrdisc
-    10ge2p1x520-eth-l2xcbase-eth-2vhost-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-eth-2vhost-1vm-pdrdisc
-    10ge2p1x520-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-eth-4vhost-2vm-pdrdisc
-    10ge2p1x520-ethip4-ip4base-eth-2vhost-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-eth-2vhost-1vm-pdrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-eth-2vhostvr1024-1vm-pdrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
+    10ge2p1x520-ethip4-ip4base-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-eth-2vhostvr256-1vm-pdrdisc
     10ge2p1x520-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-eth-4vhost-2vm-pdrdisc
     10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhostvr256-1vm-pdrdisc
+    10ge2p1x520-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhost-2vm-pdrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-cfsrr1-pdrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-eth-2vhostvr1024-1vm-pdrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-cfsrr1-pdrdisc
+    10ge2p1x520-eth-l2xcbase-eth-2vhostvr256-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-eth-2vhostvr256-1vm-pdrdisc
+    10ge2p1x520-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-eth-4vhost-2vm-pdrdisc
     10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
+    40ge2p1xl710-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-ip4base-eth-4vhost-2vm-pdrdisc
     40ge2p1xl710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
     40ge2p1xl710-eth-l2bdbasemaclrn-eth-4vhost-2vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-4vhost-2vm-pdrdisc
     40ge2p1xl710-eth-l2xcbase-eth-4vhost-2vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-eth-4vhost-2vm-pdrdisc
-    40ge2p1xl710-ethip4-ip4base-eth-4vhost-2vm-ndrpdrdisc.robot:| tc08-64B-2t2c-eth-ip4base-eth-4vhost-2vm-pdrdisc
-
index 2ce5f8a..68f4365 100644 (file)
@@ -4,6 +4,132 @@ Test Environment
 To execute performance tests, there are three identical testbeds, each testbed\r
 consists of two SUTs and one TG.\r
 \r
+Naming Convention\r
+-----------------\r
+\r
+Following naming convention is used within this page to specify physical\r
+connectivity and wiring across defined CSIT testbeds:\r
+\r
+- testbedname: testbedN.\r
+- hostname:\r
+\r
+  - traffic-generator: tN-tgW.\r
+  - system-under-testX: tN-sutX.\r
+\r
+- portnames:\r
+\r
+  - tN-tgW-cY/pZ.\r
+  - tN-sutX-cY/pZ.\r
+\r
+- where:\r
+\r
+  - N - testbed number.\r
+  - tgW - server acts as traffic-generator with W index.\r
+  - sutX - server acts as system-under-test with X index.\r
+  - Y - PCIe slot number denoting a NIC card number within the host.\r
+\r
+    - Y=1,2,3 - slots in Riser 1, Right PCIe Riser Board, NUMA node 0.\r
+    - Y=4,5,6 - slots in Riser 2, Left PCIe Riser Board, NUMA node 1.\r
+    - Y=m - the MLOM slot.\r
+\r
+  - Z - port number on the NIC card.\r
+\r
+Server HW Configuration\r
+-----------------------\r
+\r
+CSIT testbed contains following three HW configuration types of UCS x86 servers,\r
+across total of ten servers provided:\r
+\r
+#. Type-1: Purpose - VPP functional and performance conformance testing.\r
+\r
+   - Quantity: 6 computers as SUT hosts (Systems Under Test).\r
+   - Physical connectivity:\r
+\r
+     - CIMC and host management ports.\r
+     - NIC ports connected in 3-node topologies.\r
+\r
+   - Main HW configuration:\r
+\r
+     - Chassis: UCSC-C240-M4SX with 6 PCIe3.0 slots.\r
+     - Processors: 2* E5-2699 2.3 GHz.\r
+     - RAM Memory: 16* 32GB DDR4-2133MHz.\r
+     - Disks: 2* 2TB 12G SAS 7.2K RPM SFF HDD.\r
+\r
+   - NICs configuration:\r
+\r
+     - Right PCIe Riser Board (Riser 1) (x8, x8, x8 PCIe3.0 lanes)\r
+\r
+       - PCIe Slot1: Cisco VIC 1385 2p40GE.\r
+\r
+         - PCIe Slot2: Intel NIC x520 2p10GE.\r
+         - PCIe Slot3: empty.\r
+\r
+     - Left PCIe Riser Board (Riser 2) (x8, x16, x8 PCIe3.0 lanes)\r
+\r
+       - PCIe Slot4: Intel NIC xl710 2p40GE.\r
+       - PCIe Slot5: Intel NIC x710 2p10GE.\r
+       - PCIe Slot6: Intel QAT 8950 50G (Walnut Hill)\r
+\r
+     - MLOM slot: Cisco VIC 1227 2p10GE (x8 PCIe2.0 lanes).\r
+\r
+#. Type-2: Purpose - VPP functional and performance conformance testing.\r
+\r
+   - Quantity: 3 computers as TG hosts (Traffic Generators).\r
+   - Physical connectivity:\r
+\r
+     - CIMC and host management ports.\r
+     - NIC ports connected in 3-node topologies.\r
+\r
+   - Main HW configuration:\r
+\r
+     - Chassis: UCSC-C240-M4SX with 6 PCIe3.0 slots.\r
+     - Processors: 2* E5-2699 2.3 GHz.\r
+     - RAM Memory: 16* 32GB DDR4-2133MHz.\r
+     - Disks: 2* 2TB 12G SAS 7.2K RPM SFF HDD.\r
+\r
+   - NICs configuration:\r
+\r
+     - Right PCIe Riser Board (Riser 1) (x8, x8, x8 lanes)\r
+\r
+       - PCIe Slot1: Intel NIC xl710 2p40GE.\r
+       - PCIe Slot2: Intel NIC x710 2p10GE.\r
+       - PCIe Slot3: Intel NIC x710 2p10GE.\r
+\r
+     - Left PCIe Riser Board (Riser 2) (x8, x16, x8 lanes)\r
+\r
+       - PCIe Slot4: Intel NIC xl710 2p40GE.\r
+       - PCIe Slot5: Intel NIC x710 2p10GE.\r
+       - PCIe Slot6: Intel NIC x710 2p10GE.\r
+\r
+     - MLOM slot: empty.\r
+\r
+#. Type-3: Purpose - VIRL functional conformance.\r
+\r
+   - Quantity: 3 computers as VIRL hosts.\r
+   - Physical connectivity:\r
+\r
+     - CIMC and host management ports.\r
+     - no NIC ports, standalone setup.\r
+\r
+   - Main HW configuration:\r
+\r
+     - Chassis: UCSC-C240-M4SX with 6 PCIe3.0 slots.\r
+     - Processors: 2* E5-2699 2.3 GHz.\r
+     - RAM Memory: 16* 32GB DDR4-2133MHz.\r
+     - Disks: 2* 480 GB 2.5inch 6G SATA SSD.\r
+\r
+   - NICs configuration:\r
+\r
+     - Right PCIe Riser Board (Riser 1) (x8, x8, x8 lanes)\r
+\r
+       - no cards.\r
+\r
+     - Left PCIe Riser Board (Riser 2) (x8, x16, x8 lanes)\r
+\r
+       - no cards.\r
+\r
+     - MLOM slot: empty.\r
+\r
 SUT Configuration - Host HW\r
 ---------------------------\r
 Host hardware details (CPU, memory, NIC layout) and physical topology are\r
@@ -12,9 +138,10 @@ described in detail in
 \r
 **Host configuration**\r
 \r
-- All hosts are Cisco UCS C240-M4 (2x Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz,\r
-  18c, 512GB RAM)\r
-  ::\r
+All hosts are Cisco UCS C240-M4 (2x Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz,\r
+18c, 512GB RAM)\r
+\r
+::\r
 \r
     $ lscpu\r
     Architecture:          x86_64\r
@@ -42,8 +169,9 @@ described in detail in
     NUMA node1 CPU(s):     18-35\r
     Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm xsaveopt cqm_llc cqm_occup_llc dtherm arat pln pts\r
 \r
-- BIOS settings\r
-  ::\r
+**BIOS settings**\r
+\r
+::\r
 \r
     C240 /bios # show advanced detail\r
     Set-up parameters:\r
@@ -114,18 +242,19 @@ described in detail in
         CDN Support for VIC: Disabled\r
         Out-of-Band Management: Disabled\r
 \r
-- In addition to CIMC and Management, each TG has 4x Intel X710 10GB NIC\r
-  (=8 ports) and 2x Intel XL710 40GB NIC (=4 ports), whereas each SUT has:\r
+**NIC models and placement**\r
 \r
-  - 1x Intel X520 NIC (10GB, 2 ports),\r
-  - 1x Cisco VIC 1385 (40GB, 2 ports),\r
-  - 1x Intel XL710 NIC (40GB, 2 ports),\r
-  - 1x Intel X710 NIC (10GB, 2 ports),\r
-  - 1x Cisco VIC 1227 (10GB, 2 ports).\r
-  - This allows for a total of five ring topologies, each using ports on\r
-    specific NIC model, enabling per NIC model benchmarking.\r
+In addition to CIMC and Management, each TG has 4x Intel X710 10GB NIC\r
+(=8 ports) and 2x Intel XL710 40GB NIC (=4 ports), whereas each SUT has:\r
 \r
-**NIC models and placement**\r
+- 1x Intel X520 NIC (10GB, 2 ports),\r
+- 1x Cisco VIC 1385 (40GB, 2 ports),\r
+- 1x Intel XL710 NIC (40GB, 2 ports),\r
+- 1x Intel X710 NIC (10GB, 2 ports),\r
+- 1x Cisco VIC 1227 (10GB, 2 ports).\r
+\r
+This allows for a total of five ring topologies, each using ports on specific\r
+NIC model, enabling per NIC model benchmarking.\r
 \r
 - 0a:00.0 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+\r
   Network Connection (rev 01) Subsystem: Intel Corporation Ethernet Server\r
@@ -157,10 +286,13 @@ described in detail in
 SUT Configuration - Host OS Linux\r
 ---------------------------------\r
 \r
-Software details (OS, configuration) are described in\r
-`CSIT/CSIT_LF_testbed <https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.\r
+Software details (OS, configuration) are described in `LF FDio CSIT testbed\r
+wiki page <https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.\r
+\r
+System provisioning is done by combination of PXE boot unattented install and\r
+`Ansible <https://www.ansible.com>`_ described in `CSIT Testbed Setup`_.\r
 \r
-Below a subset of the configuration:\r
+Below a subset of the running configuration:\r
 \r
 ::\r
 \r
@@ -233,11 +365,39 @@ Below a subset of the configuration:
     Node 1 HugePages_Free:   2048\r
     Node 1 HugePages_Surp:      0\r
 \r
+**Kernel boot parameters used in CSIT performance testbeds**\r
+\r
+- **isolcpus=<cpu number>-<cpu number>** used for all cpu cores apart from\r
+  first core of each socket used for running VPP worker threads and Qemu/LXC\r
+  processes https://www.kernel.org/doc/Documentation/kernel-parameters.txt\r
+- **intel_pstate=disable** - [X86] Do not enable intel_pstate as the default\r
+  scaling driver for the supported processors. Intel P-State driver decide what\r
+  P-state (CPU core power state) to use based on requesting policy from the\r
+  cpufreq core. [X86 - Either 32-bit or 64-bit x86]\r
+  https://www.kernel.org/doc/Documentation/cpu-freq/intel-pstate.txt\r
+- **nohz_full=<cpu number>-<cpu number>** - [KNL,BOOT] In kernels built with\r
+  CONFIG_NO_HZ_FULL=y, set the specified list of CPUs whose tick will be stopped\r
+  whenever possible. The boot CPU will be forced outside the range to maintain\r
+  the timekeeping. The CPUs in this range must also be included in the\r
+  rcu_nocbs= set. Specifies the adaptive-ticks CPU cores, causing kernel to\r
+  avoid sending scheduling-clock interrupts to listed cores as long as they have\r
+  a single runnable task. [KNL - Is a kernel start-up parameter, SMP - The\r
+  kernel is an SMP kernel].\r
+  https://www.kernel.org/doc/Documentation/timers/NO_HZ.txt\r
+- **rcu_nocbs** - [KNL] In kernels built with CONFIG_RCU_NOCB_CPU=y, set the\r
+  specified list of CPUs to be no-callback CPUs, that never queue RCU callbacks\r
+  (read-copy update).\r
+  https://www.kernel.org/doc/Documentation/kernel-parameters.txt\r
+\r
+**Applied command line boot parameters:**\r
+\r
 ::\r
 \r
     $ cat /proc/cmdline\r
     BOOT_IMAGE=/vmlinuz-4.4.0-72-generic root=UUID=35ea11e4-e44f-4f67-8cbe-12f09c49ed90 ro isolcpus=1-17,19-35 nohz_full=1-17,19-35 rcu_nocbs=1-17,19-35 intel_pstate=disable console=tty0 console=ttyS0,115200n8\r
 \r
+**Mount listing**\r
+\r
 ::\r
 \r
     $ cat /proc/mounts\r
@@ -273,6 +433,8 @@ Below a subset of the configuration:
     none /mnt/huge hugetlbfs rw,relatime,pagesize=2048k 0 0\r
     lxcfs /var/lib/lxcfs fuse.lxcfs rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other 0 0\r
 \r
+**Package listing**\r
+\r
 ::\r
 \r
     $ dpkg -l\r
@@ -808,6 +970,8 @@ Below a subset of the configuration:
     ii  zlib1g:amd64                                                      1:1.2.8.dfsg-2ubuntu4                 amd64                                 compression library - runtime\r
     ii  zlib1g-dev:amd64                                                  1:1.2.8.dfsg-2ubuntu4                 amd64                                 compression library - development\r
 \r
+**Kernel module listing**\r
+\r
 ::\r
 \r
     $ lsmod | sort\r
@@ -897,6 +1061,8 @@ Below a subset of the configuration:
     xt_CHECKSUM            16384  1\r
     xt_tcpudp              16384  5\r
 \r
+**Sysctl listing**\r
+\r
 ::\r
 \r
     $ sysctl -a\r
@@ -1841,6 +2007,8 @@ Below a subset of the configuration:
     vm.vfs_cache_pressure = 100\r
     vm.zone_reclaim_mode = 0\r
 \r
+**Services listing**\r
+\r
 ::\r
 \r
     $ service --status-all\r
@@ -1888,6 +2056,72 @@ Below a subset of the configuration:
      [ + ]  uuidd\r
      [ - ]  x11-common\r
 \r
+**Host CFS optimizations (QEMU+VPP)**\r
+\r
+Applying CFS scheduler tuning on all Qemu vcpu worker threads (those are\r
+handling testpmd - pmd threads) and VPP PMD worker threads. List of VPP PMD\r
+threads can be obtained e.g. from:\r
+\r
+::\r
+\r
+    $ for psid in $(pgrep vpp)\r
+    $ do\r
+    $     for tid in $(ps -Lo tid --pid $psid | grep -v TID)\r
+    $     do\r
+    $         echo $tid\r
+    $     done\r
+    $ done\r
+\r
+Or:\r
+\r
+::\r
+\r
+    $ cat /proc/`pidof vpp`/task/*/stat | awk '{print $1" "$2" "$39}'\r
+\r
+Applying Round-robin scheduling with highest priority\r
+\r
+::\r
+\r
+    $ for psid in $(pgrep vpp)\r
+    $ do\r
+    $     for tid in $(ps -Lo tid --pid $psid | grep -v TID)\r
+    $     do\r
+    $         chrt -r -p 1 $tid\r
+    $     done\r
+    $ done\r
+\r
+More information about Linux CFS can be found in: `Sched manual pages\r
+<http://man7.org/linux/man-pages/man7/sched.7.html>`_.\r
+\r
+\r
+**Host IRQ affinity**\r
+\r
+Changing the default pinning of every IRQ to core 0. (Same does apply on both\r
+guest VM and host OS)\r
+\r
+::\r
+\r
+    $ for l in `ls /proc/irq`; do echo 1 | sudo tee /proc/irq/$l/smp_affinity; done\r
+\r
+**Host RCU affinity**\r
+\r
+Changing the default pinning of RCU to core 0. (Same does apply on both guest VM\r
+and host OS)\r
+\r
+::\r
+\r
+    $ for i in `pgrep rcu[^c]` ; do sudo taskset -pc 0 $i ; done\r
+\r
+**Host Writeback affinity**\r
+\r
+Changing the default pinning of writebacks to core 0. (Same does apply on both\r
+guest VM and host OS)\r
+\r
+::\r
+\r
+    $ echo 1 | sudo tee /sys/bus/workqueue/devices/writeback/cpumask\r
+\r
+\r
 DUT Configuration - VPP\r
 -----------------------\r
 \r
@@ -1903,7 +2137,7 @@ DUT Configuration - VPP
 \r
 ::\r
 \r
-    $ dpkg -i --force-all\r
+    $ dpkg -i --force-all vpp*\r
 \r
 **VPP Startup Configuration**\r
 \r
@@ -2040,6 +2274,12 @@ DPDK v17.05
         - dest_mac        :   [0x3c,0xfd,0xfe,0x9c,0xee,0xf4]\r
           src_mac         :   [0x3c,0xfd,0xfe,0x9c,0xee,0xf5]\r
 \r
+**TG Startup Command**\r
+\r
+::\r
+\r
+    $ sh -c 'cd <t-rex-install-dir>/scripts/ && sudo nohup ./t-rex-64 -i -c 7 --iom 0 > /dev/null 2>&1 &'> /dev/null\r
+\r
 **TG common API - pointer to driver**\r
 \r
 `TRex driver`_\r
index 4c90e55..93f3902 100644 (file)
@@ -69,14 +69,17 @@ rst_epilog = """
 .. _tag documentation rst file: https://git.fd.io/csit/tree/docs/tag_documentation.rst?h=rls1707
 .. _TRex intallation: https://git.fd.io/csit/tree/resources/tools/trex/trex_installer.sh?h=rls1707
 .. _TRex driver: https://git.fd.io/csit/tree/resources/tools/trex/trex_stateless_profile.py?h=rls1707
-.. _CSIT Honeycomb Functional Tests Documentation: https://docs.fd.io/csit/rls1707/doc/tests.func.html
-.. _CSIT DPDK Performance Tests Documentation: https://docs.fd.io/csit/rls1707/doc/tests.perf.html
-.. _CSIT VPP Functional Tests Documentation: https://docs.fd.io/csit/rls1707/doc/tests.func.html
-.. _CSIT VPP Performance Tests Documentation: https://docs.fd.io/csit/rls1707/doc/tests.perf.html
+.. _CSIT Honeycomb Functional Tests Documentation: https://docs.fd.io/csit/rls1707/doc/tests.vpp.func.html
+.. _CSIT DPDK Performance Tests Documentation: https://docs.fd.io/csit/rls1707/doc/tests.dpdk.perf.html
+.. _CSIT VPP Functional Tests Documentation: https://docs.fd.io/csit/rls1707/doc/tests.vpp.func.html
+.. _CSIT VPP Performance Tests Documentation: https://docs.fd.io/csit/rls1707/doc/tests.vpp.perf.html
+.. _CSIT NSH_SFC Functional Tests Documentation: https://docs.fd.io/csit/rls1707/doc/tests.nsh_sfc.func.html
 .. _VPP test framework documentation: https://docs.fd.io/vpp/17.07/vpp_make_test/html/
 .. _FD.io test executor vpp performance jobs: https://jenkins.fd.io/view/csit/job/csit-vpp-perf-1707-all
 .. _FD.io test executor dpdk performance jobs: https://jenkins.fd.io/view/csit/job/csit-dpdk-perf-1707-all
 .. _FD.io VPP compile job: https://jenkins.fd.io/view/vpp/job/vpp-merge-1707-ubuntu1604/
+.. _FD.io VPP compile job: https://jenkins.fd.io/view/vpp/job/vpp-merge-1707-ubuntu1604/
+.. _CSIT Testbed Setup: https://git.fd.io/csit/tree/resources/tools/testbed-setup/README.md?h=rls1707
 """
 
 # The language for content autogenerated by Sphinx. Refer to documentation
index e11c68e..494ec56 100755 (executable)
@@ -41,18 +41,18 @@ sudo apt-get -y update
 sudo apt-get -y install libxml2 libxml2-dev libxslt-dev build-essential \
     zlib1g-dev unzip
 
-# Clean-up when finished:
+# Clean-up when finished
 trap 'rm -rf ${WORKING_DIR}; exit' EXIT
 trap 'rm -rf ${WORKING_DIR}; exit' ERR
 
-# Remove the old build:
+# Remove the old build
 rm -rf ${BUILD_DIR} || true
 rm -rf ${WORKING_DIR} || true
 
 # Create working directories
 mkdir ${BUILD_DIR}
 
-# Create virtual environment:
+# Create virtual environment
 virtualenv ${WORKING_DIR}/env
 . ${WORKING_DIR}/env/bin/activate
 
@@ -72,22 +72,23 @@ mkdir -p ${PLOT_DPDK_SOURCE_DIR}
 ### VPP PERFORMANCE SOURCE DATA
 
 JEN_FILE_PERF='output_perf_data.xml'
-JEN_JOB='csit-vpp-perf-1704-all'
-JEN_BUILD=(6 7 8 9 10 12 14 15 16 17)
+JEN_JOB='csit-vpp-perf-master-all'
+JEN_BUILD=(1567)
+JEN_FBUILD=1567
 
 for i in "${JEN_BUILD[@]}"; do
     curl --fail -fs ${CSIT_JEN_URL}/${JEN_JOB}/${i}/robot/report/output_perf_data.xml \
         -o ${PLOT_VPP_SOURCE_DIR}/${JEN_JOB}-${i}.xml
     if [[ ${DEBUG} -eq 1 ]] ;
     then
-        cp ./${JEN_JOB}-10.zip ${STATIC_DIR_ARCH}/${JEN_JOB}-10.zip
+        cp ./${JEN_JOB}-${JEN_FBUILD}.zip ${STATIC_DIR_ARCH}/${JEN_JOB}-${JEN_FBUILD}.zip
     else
         curl --fail -fs ${CSIT_JEN_URL}/${JEN_JOB}/${i}/robot/report/\*zip\*/robot-plugin.zip \
             -o ${STATIC_DIR_ARCH}/${JEN_JOB}-${i}.zip
     fi
 done
 
-unzip -o ${STATIC_DIR_ARCH}/${JEN_JOB}-10.zip -d ${WORKING_DIR}/
+unzip -o ${STATIC_DIR_ARCH}/${JEN_JOB}-${JEN_FBUILD}.zip -d ${WORKING_DIR}/
 python run_robot_data.py -i ${WORKING_DIR}/robot-plugin/output.xml \
     --output ${DTR_PERF_SOURCE_DIR}/vpp_performance_results.rst \
     --formatting rst --start 4 --level 2
@@ -97,48 +98,52 @@ python run_robot_teardown_data.py -i ${WORKING_DIR}/robot-plugin/output.xml \
 python run_robot_teardown_data.py -i ${WORKING_DIR}/robot-plugin/output.xml \
     -o ${DTO_PERF_SOURCE_OPER_DIR}/vpp_performance_operational_data.rst \
     --data "SH_RUN" -f "rst" --start 4 --level 2
-sed -i -e "s@###JOB###@${JEN_JOB}\/75@g" \
-    ${DTR_PERF_SOURCE_DIR}/index.rst
-sed -i -e "s@###LINK###@${CSIT_JEN_URL}\/${JEN_JOB}\/75@g" \
-    ${DTR_PERF_SOURCE_DIR}/index.rst
-sed -i -e "s@###JOB###@${JEN_JOB}\/75@g" \
-    ${DTC_PERF_SOURCE_DIR}/index.rst
-sed -i -e "s@###LINK###@${CSIT_JEN_URL}\/${JEN_JOB}\/75@g" \
-    ${DTC_PERF_SOURCE_DIR}/index.rst
-sed -i -e "s@###JOB###@${JEN_JOB}\/75@g" \
-    ${DTO_PERF_SOURCE_OPER_DIR}/index.rst
-sed -i -e "s@###LINK###@${CSIT_JEN_URL}\/${JEN_JOB}\/75@g" \
-    ${DTO_PERF_SOURCE_OPER_DIR}/index.rst
+if [[ ${DEBUG} -eq 0 ]] ;
+then
+    sed -i -e "s@###JOB###@${JEN_JOB}\/${JEN_FBUILD}@g" \
+        ${DTR_PERF_SOURCE_DIR}/index.rst
+    sed -i -e "s@###LINK###@${CSIT_JEN_URL}\/${JEN_JOB}\/${JEN_FBUILD}@g" \
+        ${DTR_PERF_SOURCE_DIR}/index.rst
+    sed -i -e "s@###JOB###@${JEN_JOB}\/${JEN_FBUILD}@g" \
+        ${DTC_PERF_SOURCE_DIR}/index.rst
+    sed -i -e "s@###LINK###@${CSIT_JEN_URL}\/${JEN_JOB}\/${JEN_FBUILD}@g" \
+        ${DTC_PERF_SOURCE_DIR}/index.rst
+    sed -i -e "s@###JOB###@${JEN_JOB}\/${JEN_FBUILD}@g" \
+        ${DTO_PERF_SOURCE_OPER_DIR}/index.rst
+    sed -i -e "s@###LINK###@${CSIT_JEN_URL}\/${JEN_JOB}\/${JEN_FBUILD}@g" \
+        ${DTO_PERF_SOURCE_OPER_DIR}/index.rst
+fi
 
 ### DPDK PERFORMANCE SOURCE DATA
 
-JEN_JOB='csit-dpdk-perf-master-all'
-JEN_BUILD=(13 14 15 16)
+JEN_JOB='csit-dpdk-perf-1707-all'
+JEN_BUILD=(1 2 3 4)
 
 for i in "${JEN_BUILD[@]}"; do
     curl --fail -fs ${CSIT_JEN_URL}/${JEN_JOB}/${i}/robot/report/output_perf_data.xml \
         -o ${PLOT_DPDK_SOURCE_DIR}/${JEN_JOB}-${i}.xml
     if [[ ${DEBUG} -eq 1 ]] ;
     then
-        cp ./${JEN_JOB}-16.zip ${STATIC_DIR_ARCH}/${JEN_JOB}-16.zip
+        cp ./${JEN_JOB}-${JEN_BUILD[-1]}.zip ${STATIC_DIR_ARCH}/${JEN_JOB}-${JEN_BUILD[-1]}.zip
     else
         curl --fail -fs ${CSIT_JEN_URL}/${JEN_JOB}/${i}/robot/report/\*zip\*/robot-plugin.zip \
             -o ${STATIC_DIR_ARCH}/${JEN_JOB}-${i}.zip
+
+        sed -i -e "s@###JOB###@${JEN_JOB}\/${JEN_BUILD[-1]}@g" \
+            ${DTR_DPDK_SOURCE_DIR}/index.rst
+        sed -i -e "s@###LINK###@${CSIT_JEN_URL}\/${JEN_JOB}\/${JEN_BUILD[-1]}@g" \
+            ${DTR_DPDK_SOURCE_DIR}/index.rst
     fi
 done
 
-unzip -o ${STATIC_DIR_ARCH}/${JEN_JOB}-16.zip -d ${WORKING_DIR}/
+unzip -o ${STATIC_DIR_ARCH}/${JEN_JOB}-${JEN_BUILD[-1]}.zip -d ${WORKING_DIR}/
 python run_robot_data.py -i ${WORKING_DIR}/robot-plugin/output.xml \
     --output ${DTR_DPDK_SOURCE_DIR}/dpdk_performance_results.rst \
-    --formatting rst --start 3 --level 2
-sed -i -e "s@###JOB###@${JEN_JOB}\/16@g" \
-    ${DTR_DPDK_SOURCE_DIR}/index.rst
-sed -i -e "s@###LINK###@${CSIT_JEN_URL}\/${JEN_JOB}\/16@g" \
-    ${DTR_DPDK_SOURCE_DIR}/index.rst
+    --formatting rst --start 4 --level 2
 
 ### FUNCTIONAL SOURCE DATA
 
-JEN_JOB='csit-vpp-functional-master-ubuntu1604-virl'
+JEN_JOB='csit-vpp-functional-1707-ubuntu1604-virl'
 JEN_BUILD='lastSuccessfulBuild'
 
 if [[ ${DEBUG} -eq 1 ]] ;
@@ -147,6 +152,15 @@ then
 else
     curl -fs ${CSIT_JEN_URL}/${JEN_JOB}/${JEN_BUILD}/robot/report/\*zip\*/robot-plugin.zip \
         -o ${STATIC_DIR_ARCH}/${JEN_JOB}-${JEN_BUILD}.zip
+
+    sed -i -e "s@###JOB###@${JEN_JOB}\/${JEN_BUILD}@g" \
+        ${DTR_FUNC_SOURCE_DIR}/index.rst
+    sed -i -e "s@###LINK###@${CSIT_JEN_URL}\/${JEN_JOB}\/${JEN_BUILD}@g" \
+        ${DTR_FUNC_SOURCE_DIR}/index.rst
+    sed -i -e "s@###JOB###@${JEN_JOB}\/${JEN_BUILD}@g" \
+        ${DTC_FUNC_SOURCE_DIR}/index.rst
+    sed -i -e "s@###LINK###@${CSIT_JEN_URL}\/${JEN_JOB}\/${JEN_BUILD}@g" \
+        ${DTC_FUNC_SOURCE_DIR}/index.rst
 fi
 
 unzip -o ${STATIC_DIR_ARCH}/${JEN_JOB}-${JEN_BUILD}.zip -d ${WORKING_DIR}/
@@ -156,18 +170,10 @@ python run_robot_data.py -i ${WORKING_DIR}/robot-plugin/output.xml \
 python run_robot_teardown_data.py -i ${WORKING_DIR}/robot-plugin/output.xml \
     --output ${DTC_FUNC_SOURCE_DIR}/vpp_functional_configuration.rst \
     --data "VAT_H" -f "rst" --start 5 --level 2
-sed -i -e "s@###JOB###@${JEN_JOB}\/${JEN_BUILD}@g" \
-    ${DTR_FUNC_SOURCE_DIR}/index.rst
-sed -i -e "s@###LINK###@${CSIT_JEN_URL}\/${JEN_JOB}\/${JEN_BUILD}@g" \
-    ${DTR_FUNC_SOURCE_DIR}/index.rst
-sed -i -e "s@###JOB###@${JEN_JOB}\/${JEN_BUILD}@g" \
-    ${DTC_FUNC_SOURCE_DIR}/index.rst
-sed -i -e "s@###LINK###@${CSIT_JEN_URL}\/${JEN_JOB}\/${JEN_BUILD}@g" \
-    ${DTC_FUNC_SOURCE_DIR}/index.rst
 
 ### HONEYCOMB SOURCE DATA
 
-JEN_JOB='hc2vpp-csit-integration-master-ubuntu1604'
+JEN_JOB='hc2vpp-csit-integration-1707-ubuntu1604'
 JEN_BUILD='lastSuccessfulBuild'
 
 if [[ ${DEBUG} -eq 1 ]] ;
@@ -176,21 +182,22 @@ then
 else
     curl -fs ${HC_JEN_URL}/${JEN_JOB}/${JEN_BUILD}/robot/report/\*zip\*/robot-plugin.zip \
         -o ${STATIC_DIR_ARCH}/${JEN_JOB}-${JEN_BUILD}.zip
+
+    sed -i -e "s@###JOB###@${JEN_JOB}\/${JEN_BUILD}@g" \
+        ${DTR_HONEYCOMB_SOURCE_DIR}/index.rst
+    sed -i -e "s@###LINK###@${HC_JEN_URL}\/${JEN_JOB}\/${JEN_BUILD}@g" \
+        ${DTR_HONEYCOMB_SOURCE_DIR}/index.rst
 fi
 
 unzip -o ${STATIC_DIR_ARCH}/${JEN_JOB}-${JEN_BUILD}.zip -d ${WORKING_DIR}/
 python run_robot_data.py -i ${WORKING_DIR}/robot-plugin/output.xml \
     --output ${DTR_HONEYCOMB_SOURCE_DIR}/honeycomb_functional_results.rst \
-    --formatting rst --start 3 --level 2
-sed -i -e "s@###JOB###@${JEN_JOB}\/${JEN_BUILD}@g" \
-    ${DTR_HONEYCOMB_SOURCE_DIR}/index.rst
-sed -i -e "s@###LINK###@${HC_JEN_URL}\/${JEN_JOB}\/${JEN_BUILD}@g" \
-    ${DTR_HONEYCOMB_SOURCE_DIR}/index.rst
+    --formatting rst --start 5 --level 2
 
 # Delete temporary json files
 find ${SOURCE_DIR} -name "*.json" -type f -delete
 
-# Generate the documentation:
+# Generate the documentation
 
 DATE=$(date -u '+%d-%b-%Y')
 
@@ -354,11 +361,13 @@ python run_plot.py --input ${PLOT_DPDK_SOURCE_DIR} \
 python run_plot.py --input ${PLOT_DPDK_SOURCE_DIR} \
     --output ${STATIC_DIR_DPDK}/64B-1t1c-ipv4-ndrdisc \
     --title "64B-1t1c-ethip4-ip4base-l3fwd-ndrdisc" \
-    --xpath '//*[@framesize="64B" and contains(@tags,"BASE") and contains(@tags,"NDRDISC") and contains(@tags,"1T1C") and contains(@tags,"IP4FWD")]'
+    --xpath '//*[@framesize="64B" and contains(@tags,"BASE") and contains(@tags,"NDRDISC") and contains(@tags,"1T1C") and contains(@tags,"IP4FWD")]' \
+    --lower 2000000 --upper 12000000
 python run_plot.py --input ${PLOT_DPDK_SOURCE_DIR} \
     --output ${STATIC_DIR_DPDK}/64B-2t2c-ipv4-ndrdisc \
     --title "64B-2t2c-ethip4-ip4base-l3fwd-ndrdisc" \
-    --xpath '//*[@framesize="64B" and contains(@tags,"BASE") and contains(@tags,"NDRDISC") and contains(@tags,"2T2C") and contains(@tags,"IP4FWD")]'
+    --xpath '//*[@framesize="64B" and contains(@tags,"BASE") and contains(@tags,"NDRDISC") and contains(@tags,"2T2C") and contains(@tags,"IP4FWD")]' \
+    --lower 2000000 --upper 12000000
 
 python run_plot.py --input ${PLOT_DPDK_SOURCE_DIR} \
     --output ${STATIC_DIR_DPDK}/64B-1t1c-l2-pdrdisc \
@@ -371,11 +380,13 @@ python run_plot.py --input ${PLOT_DPDK_SOURCE_DIR} \
 python run_plot.py --input ${PLOT_DPDK_SOURCE_DIR} \
     --output ${STATIC_DIR_DPDK}/64B-1t1c-ipv4-pdrdisc \
     --title "64B-1t1c-ethip4-ip4base-l3fwd-pdrdisc" \
-    --xpath '//*[@framesize="64B" and contains(@tags,"BASE") and contains(@tags,"PDRDISC") and not(contains(@tags,"NDRDISC")) and contains(@tags,"1T1C") and contains(@tags,"IP4FWD")]'
+    --xpath '//*[@framesize="64B" and contains(@tags,"BASE") and contains(@tags,"PDRDISC") and not(contains(@tags,"NDRDISC")) and contains(@tags,"1T1C") and contains(@tags,"IP4FWD")]' \
+    --lower 20000000 --upper 30000000
 python run_plot.py --input ${PLOT_DPDK_SOURCE_DIR} \
     --output ${STATIC_DIR_DPDK}/64B-2t2c-ipv4-pdrdisc \
     --title "64B-2t2c-ethip4-ip4base-l3fwd-pdrdisc" \
-    --xpath '//*[@framesize="64B" and contains(@tags,"BASE") and contains(@tags,"PDRDISC") and not(contains(@tags,"NDRDISC")) and contains(@tags,"2T2C") and contains(@tags,"IP4FWD")]'
+    --xpath '//*[@framesize="64B" and contains(@tags,"BASE") and contains(@tags,"PDRDISC") and not(contains(@tags,"NDRDISC")) and contains(@tags,"2T2C") and contains(@tags,"IP4FWD")]' \
+    --lower 20000000 --upper 30000000
 
 # Plot latency