CSIT-744 Update report content for proper parsing 72/7872/3
authorPeter Mikus <pmikus@cisco.com>
Wed, 2 Aug 2017 09:34:42 +0000 (11:34 +0200)
committerPeter Mikus <pmikus@cisco.com>
Wed, 2 Aug 2017 10:37:32 +0000 (12:37 +0200)
Follow the good practices for formatting. Update the content of release
report RST files to use the proper directives like :cite:, :footnote:,
:abbr:, :captions: etc.With these markings we will be able to format
output in proper way and style it in various sphinx output builders.

Change-Id: Ibbb538d43c3bd364a6acdcc990097a477f49de00
Signed-off-by: Peter Mikus <pmikus@cisco.com>
22 files changed:
docs/report/dpdk_performance_tests/overview.rst
docs/report/dpdk_performance_tests/test_environment.rst
docs/report/honeycomb_functional_tests/overview.rst
docs/report/honeycomb_performance_tests/overview.rst
docs/report/introduction/csit_design.rst
docs/report/introduction/general_notes.rst
docs/report/introduction/overview.rst
docs/report/nsh_sfc_functional_tests/overview.rst
docs/report/nsh_sfc_functional_tests/test_environment.rst
docs/report/test_configuration/vpp_functional_configuration/index.rst
docs/report/test_configuration/vpp_performance_configuration/index.rst
docs/report/test_operational_data/vpp_performance_operational_data/index.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/test_environment.rst
docs/tag_documentation.rst
resources/tools/report_gen/conf.py
resources/tools/report_gen/run_plot.py
resources/tools/report_gen/run_report.cfg
resources/tools/report_gen/run_report.sh

index e326de0..6af7fe9 100644 (file)
@@ -5,9 +5,8 @@ Tested Physical Topologies
 --------------------------
 
 CSIT DPDK performance tests are executed on physical baremetal servers hosted
-by LF FD.io project. Testbed physical topology is shown in the figure below.
-
-::
+by :abbr:`LF (Linux Foundation)` FD.io project. Testbed physical topology is
+shown in the figure below.::
 
     +------------------------+           +------------------------+
     |                        |           |                        |
@@ -27,14 +26,13 @@ by LF FD.io project. Testbed physical topology is shown in the figure below.
                              |           |
                              +-----------+
 
-SUT1 and SUT2 are two System Under Test servers (currently Cisco UCS C240,
-each with two Intel XEON CPUs), TG is a Traffic Generator (TG, currently
-another Cisco UCS C240, with two Intel XEON CPUs). SUTs run Testpmd/L3FWD SW
-application in Linux user-mode as a Device Under Test (DUT). TG runs TRex SW
-application as a packet Traffic Generator. Physical connectivity between SUTs
-and to TG is provided using direct links (no L2 switches) connecting different
-NIC models that need to be tested for performance. Currently installed and
-tested NIC models include:
+SUT1 and SUT2 are two System Under Test servers (Cisco UCS C240, each with two
+Intel XEON CPUs), TG is a Traffic Generator (TG, another Cisco UCS C240, with
+two Intel XEON CPUs). SUTs run Testpmd/L3FWD SW SW application in Linux
+user-mode as a Device Under Test (DUT). TG runs TRex SW application as a packet
+Traffic Generator. Physical connectivity between SUTs and to TG is provided
+using different NIC models that need to be tested for performance. Currently
+installed and tested NIC models include:
 
 #. 2port10GE X520-DA2 Intel.
 #. 2port10GE X710 Intel.
@@ -42,26 +40,51 @@ tested NIC models include:
 #. 2port40GE VIC1385 Cisco.
 #. 2port40GE XL710 Intel.
 
-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>`_.
+From SUT and DUT perspective, all performance tests involve forwarding packets
+between two physical Ethernet ports (10GE or 40GE). Due to the number of
+listed NIC models tested and available PCI slot capacity in SUT servers, in
+all of the above cases both physical ports are located on the same NIC. In
+some test cases this results in measured packet throughput being limited not
+by VPP DUT but by either the physical interface or the NIC capacity.
+
+Going forward CSIT project will be looking to add more hardware into FD.io
+performance labs to address larger scale multi-interface and multi-NIC
+performance testing scenarios.
+
+Note that reported DUT (DPDK) performance results are specific to the SUTs
+tested. Current :abbr:`LF (Linux Foundation)` FD.io SUTs are based on Intel
+XEON E5-2699v3 2.3GHz CPUs. SUTs with other CPUs are likely to yield different
+results. A good rule of thumb, that can be applied to estimate DPDK packet
+thoughput for Phy-to-Phy (NIC-to-NIC, PCI-to-PCI) topology, is to expect
+the forwarding performance to be proportional to CPU core frequency,
+assuming CPU is the only limiting factor and all other SUT parameters
+equivalent to FD.io CSIT environment. The same rule of thumb can be also
+applied for Phy-to-VM/LXC-to-Phy (NIC-to-VM/LXC-to-NIC) topology, but due to
+much higher dependency on intensive memory operations and sensitivity to Linux
+kernel scheduler settings and behaviour, this estimation may not always yield
+good enough accuracy.
+
+For detailed :abbr:`LF (Linux Foundation)` FD.io test bed specification and
+physical topology please refer to `LF FD.io CSIT testbed wiki page
+<https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.
 
 Performance Tests Coverage
 --------------------------
 
-Performance tests are split into the two main categories:
+Performance tests are split into two main categories:
 
 - Throughput discovery - discovery of packet forwarding rate using binary search
-  in accordance with RFC2544.
+  in accordance to :rfc:`2544`.
 
   - NDR - discovery of Non Drop Rate packet throughput, at zero packet loss;
-    followed by packet one-way latency measurements at 10%, 50% and 100% of
+    followed by one-way packet latency measurements at 10%, 50% and 100% of
     discovered NDR throughput.
   - PDR - discovery of Partial Drop Rate, with specified non-zero packet loss
-    currently set to 0.5%; followed by packet one-way latency measurements at
+    currently set to 0.5%; followed by one-way packet latency measurements at
     100% of discovered PDR throughput.
 
 - Throughput verification - verification of packet forwarding rate against
-  previously discovered NDR throughput. These tests are currently done against
+  previously discovered throughput rate. These tests are currently done against
   0.9 of reference NDR, with reference rates updated periodically.
 
 CSIT |release| includes following performance test suites, listed per NIC type:
@@ -89,21 +112,32 @@ testbed resources to grow, and will be adding complete set of performance
 tests for all models of hardware to be executed regularly and(or)
 continuously.
 
-Methodology: Multi-Thread and Multi-Core
-----------------------------------------
+Performance Tests Naming
+------------------------
+
+CSIT |release| follows a common structured naming convention for all performance
+and system functional tests, introduced in CSIT |release-1|.
+
+The naming should be intuitive for majority of the tests. Complete description
+of CSIT test naming convention is provided on `CSIT test naming wiki
+<https://wiki.fd.io/view/CSIT/csit-test-naming>`_.
 
-**HyperThreading** - CSIT |release| performance tests are executed with SUT
-servers' Intel XEON CPUs configured in HyperThreading Disabled mode (BIOS
-settings). This is the simplest configuration used to establish baseline
-single-thread single-core SW packet processing and forwarding performance.
-Subsequent releases of CSIT will add performance tests with Intel
-HyperThreading Enabled (requires BIOS settings change and hard reboot).
+Methodology: Multi-Core and Multi-Threading
+-------------------------------------------
 
-**Multi-core Test** - CSIT |release| multi-core tests are executed in the
-following thread and core configurations:
+**Intel Hyper-Threading** - CSIT |release| performance tests are executed with
+SUT servers' Intel XEON processors configured in Intel Hyper-Threading Disabled
+mode (BIOS setting). This is the simplest configuration used to establish
+baseline single-thread single-core application packet processing and forwarding
+performance. Subsequent releases of CSIT will add performance tests with Intel
+Hyper-Threading Enabled (requires BIOS settings change and hard reboot of
+server).
 
-#. 1t1c - 1 pmd thread on 1 CPU physical core.
-#. 2t2c - 2 pmd threads on 2 CPU physical cores.
+**Multi-core Tests** - CSIT |release| multi-core tests are executed in the
+following VPP thread and core configurations:
+
+#. 1t1c - 1 pmd worker thread on 1 CPU physical core.
+#. 2t2c - 2 pmd worker threads on 2 CPU physical cores.
 
 Note that in many tests running Testpmd/L3FWD reaches tested NIC I/O bandwidth
 or packets-per-second limit.
@@ -113,14 +147,14 @@ Methodology: Packet Throughput
 
 Following values are measured and reported for packet throughput tests:
 
-- NDR binary search per RFC2544:
+- NDR binary search per :rfc:`2544`:
 
   - Packet rate: "RATE: <aggregate packet rate in packets-per-second> pps
     (2x <per direction packets-per-second>)"
   - Aggregate bandwidth: "BANDWIDTH: <aggregate bandwidth in Gigabits per
     second> Gbps (untagged)"
 
-- PDR binary search per RFC2544:
+- PDR binary search per :rfc:`2544`:
 
   - Packet rate: "RATE: <aggregate packet rate in packets-per-second> pps (2x
     <per direction packets-per-second>)"
@@ -133,6 +167,8 @@ Following values are measured and reported for packet throughput tests:
 
   - IPv4: 64B, 1518B, 9000B.
 
+All rates are reported from external Traffic Generator perspective.
+
 
 Methodology: Packet Latency
 ---------------------------
@@ -157,3 +193,48 @@ Reported latency values are measured using following methodology:
   additonal Tx/Rx interface latency induced by TRex SW writing and reading
   packet timestamps on CPU cores without HW acceleration on NICs closer to the
   interface line.
+
+Methodology: TRex Traffic Generator Usage
+-----------------------------------------
+
+The `TRex traffic generator <https://wiki.fd.io/view/TRex>`_ is used for all
+CSIT performance tests. TRex stateless mode is used to measure NDR and PDR
+throughputs using binary search (NDR and PDR discovery tests) and for quick
+checks of DUT performance against the reference NDRs (NDR check tests) for
+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
+  ::
+
+  /etc/trex_cfg.yaml
+
+- 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
+
+- There are traffic streams dynamically prepared for each test, based on traffic
+  profiles. The traffic is sent and the statistics obtained using
+  :command:`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
+
+If there is a warm-up phase required, the traffic is sent also before test and
+the statistics are ignored.
+
+**Measuring latency**
+
+If measurement of latency is requested, two more packet streams are created (one
+for each direction) with TRex flow_stats parameter set to STLFlowLatencyStats. In
+that case, returned statistics will also include min/avg/max latency values.
index b02ca67..071973a 100644 (file)
@@ -1,2222 +1 @@
-Test Environment\r
-================\r
-\r
-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 `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
-::\r
-\r
-    $ lscpu\r
-    Architecture:          x86_64\r
-    CPU op-mode(s):        32-bit, 64-bit\r
-    Byte Order:            Little Endian\r
-    CPU(s):                36\r
-    On-line CPU(s) list:   0-35\r
-    Thread(s) per core:    1\r
-    Core(s) per socket:    18\r
-    Socket(s):             2\r
-    NUMA node(s):          2\r
-    Vendor ID:             GenuineIntel\r
-    CPU family:            6\r
-    Model:                 63\r
-    Model name:            Intel(R) Xeon(R) CPU E5-2699 v3 @ 2.30GHz\r
-    Stepping:              2\r
-    CPU MHz:               2294.249\r
-    BogoMIPS:              4589.82\r
-    Virtualization:        VT-x\r
-    L1d cache:             32K\r
-    L1i cache:             32K\r
-    L2 cache:              256K\r
-    L3 cache:              46080K\r
-    NUMA node0 CPU(s):     0-17\r
-    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
-::\r
-\r
-    C240 /bios # show advanced detail\r
-    Set-up parameters:\r
-        Intel(R) VT-d ATS Support: Enabled\r
-        Adjacent Cache Line Prefetcher: Enabled\r
-        All Onboard LOM Ports: Enabled\r
-        Altitude: 300 M\r
-        Bits per second: 115200\r
-        Power Technology: Performance\r
-        Channel Interleaving: Auto\r
-        Intel(R) VT-d Coherency Support: Disabled\r
-        Console Redirection: COM 0\r
-        Number of Enabled Cores: All\r
-        Energy Performance: Performance\r
-        CPU Performance: Enterprise\r
-        DCU IP Prefetcher: Enabled\r
-        DCU Streamer Prefetch: Enabled\r
-        Demand Scrub: Enabled\r
-        Direct Cache Access Support: Auto\r
-        Enhanced Intel Speedstep(R) Tec: Disabled\r
-        Execute Disable: Enabled\r
-        Flow Control: None\r
-        Hardware Prefetcher: Enabled\r
-        Intel(R) Hyper-Threading Techno: Disabled\r
-        Intel(R) Turbo Boost Technology: Disabled\r
-        Intel(R) VT: Enabled\r
-        Intel(R) VT-d: Enabled\r
-        Intel(R) Interrupt Remapping: Enabled\r
-        Legacy USB Support: Enabled\r
-        Extended APIC: XAPIC\r
-        LOM Port 1 OptionROM: Enabled\r
-        LOM Port 2 OptionROM: Enabled\r
-        MMIO above 4GB: Enabled\r
-        NUMA: Enabled\r
-        PCI ROM CLP: Disabled\r
-        Package C State Limit: C6 Retention\r
-        Intel(R) Pass Through DMA: Disabled\r
-        Patrol Scrub: Enabled\r
-        xHCI Mode: Disabled\r
-        All PCIe Slots OptionROM: Enabled\r
-        PCIe Slot:1 OptionROM: Disabled\r
-        PCIe Slot:2 OptionROM: Disabled\r
-        PCIe Slot:3 OptionROM: Disabled\r
-        PCIe Slot:4 OptionROM: Disabled\r
-        PCIe Slot:5 OptionROM: Disabled\r
-        PCIe Slot:6 OptionROM: Disabled\r
-        PCIe Slot:HBA Link Speed: GEN3\r
-        PCIe Slot:HBA OptionROM: Enabled\r
-        PCIe Slot:MLOM OptionROM: Enabled\r
-        PCIe Slot:N1 OptionROM: Enabled\r
-        PCIe Slot:N2 OptionROM: Enabled\r
-        Processor Power state C1 Enhanc: Disabled\r
-        Processor C3 Report: Disabled\r
-        Processor C6 Report: Disabled\r
-        P-STATE Coordination: HW ALL\r
-        Putty KeyPad: ESCN\r
-        Energy Performance Tuning: BIOS\r
-        QPI Link Frequency Select: Auto\r
-        QPI Snoop Mode: Home Snoop\r
-        Rank Interleaving: Auto\r
-        Redirection After BIOS POST: Always Enable\r
-        PCH SATA Mode: AHCI\r
-        Select Memory RAS: Maximum Performance\r
-        SR-IOV Support: Enabled\r
-        Terminal Type: VT100\r
-        Port 60/64 Emulation: Enabled\r
-        Workload Configuration: Balanced\r
-        CDN Support for VIC: Disabled\r
-        Out-of-Band Management: Disabled\r
-\r
-**NIC models and placement**\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
-\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
-  Adapter X520-2\r
-- 0a:00.1 Ethernet controller: Intel Corporation 82599ES 10-Gigabit SFI/SFP+\r
-  Network Connection (rev 01) Subsystem: Intel Corporation Ethernet Server\r
-  Adapter X520-2\r
-- 06:00.0 Ethernet controller: Cisco Systems Inc VIC Ethernet NIC (rev a2)\r
-  Subsystem: Cisco Systems Inc VIC 1227 PCIe Ethernet NIC\r
-- 07:00.0 Ethernet controller: Cisco Systems Inc VIC Ethernet NIC (rev a2)\r
-  Subsystem: Cisco Systems Inc VIC 1227 PCIe Ethernet NIC\r
-- 13:00.0 Ethernet controller: Cisco Systems Inc VIC Ethernet NIC (rev a2)\r
-  Subsystem: Cisco Systems Inc VIC 1385 PCIe Ethernet NIC\r
-- 15:00.0 Ethernet controller: Cisco Systems Inc VIC Ethernet NIC (rev a2)\r
-  Subsystem: Cisco Systems Inc VIC 1385 PCIe Ethernet NIC\r
-- 85:00.0 Ethernet controller: Intel Corporation Ethernet Controller XL710\r
-  for 40GbE QSFP+ (rev 01) Subsystem: Intel Corporation Ethernet Converged\r
-  Network Adapter XL710-Q2\r
-- 85:00.1 Ethernet controller: Intel Corporation Ethernet Controller XL710\r
-  for 40GbE QSFP+ (rev 01) Subsystem: Intel Corporation Ethernet Converged\r
-  Network Adapter XL710-Q2\r
-- 87:00.0 Ethernet controller: Intel Corporation Ethernet Controller X710 for\r
-  10GbE SFP+ (rev 01) Subsystem: Intel Corporation Ethernet Converged Network\r
-  Adapter X710-2\r
-- 87:00.1 Ethernet controller: Intel Corporation Ethernet Controller X710 for\r
-  10GbE SFP+ (rev 01) Subsystem: Intel Corporation Ethernet Converged Network\r
-  Adapter X710-2\r
-\r
-SUT Configuration - Host OS Linux\r
----------------------------------\r
-\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
-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
-    $ lsb_release -a\r
-    No LSB modules are available.\r
-    Distributor ID:    Ubuntu\r
-    Description:       Ubuntu 16.04.1 LTS\r
-    Release:   16.04\r
-    Codename:  xenial\r
-\r
-::\r
-\r
-    $ cat /sys/devices/system/node/node*/meminfo\r
-    Node 0 MemTotal:       264048168 kB\r
-    Node 0 MemFree:        257730716 kB\r
-    Node 0 MemUsed:         6317452 kB\r
-    Node 0 Active:          1079920 kB\r
-    Node 0 Inactive:         470064 kB\r
-    Node 0 Active(anon):     674772 kB\r
-    Node 0 Inactive(anon):   248572 kB\r
-    Node 0 Active(file):     405148 kB\r
-    Node 0 Inactive(file):   221492 kB\r
-    Node 0 Unevictable:           0 kB\r
-    Node 0 Mlocked:               0 kB\r
-    Node 0 Dirty:                12 kB\r
-    Node 0 Writeback:             0 kB\r
-    Node 0 FilePages:       1270432 kB\r
-    Node 0 Mapped:            20116 kB\r
-    Node 0 AnonPages:        279548 kB\r
-    Node 0 Shmem:            643796 kB\r
-    Node 0 KernelStack:        3376 kB\r
-    Node 0 PageTables:         1316 kB\r
-    Node 0 NFS_Unstable:          0 kB\r
-    Node 0 Bounce:                0 kB\r
-    Node 0 WritebackTmp:          0 kB\r
-    Node 0 Slab:              80428 kB\r
-    Node 0 SReclaimable:      38288 kB\r
-    Node 0 SUnreclaim:        42140 kB\r
-    Node 0 AnonHugePages:    270336 kB\r
-    Node 0 HugePages_Total:  2048\r
-    Node 0 HugePages_Free:   2048\r
-    Node 0 HugePages_Surp:      0\r
-    Node 1 MemTotal:       264237596 kB\r
-    Node 1 MemFree:        256758976 kB\r
-    Node 1 MemUsed:         7478620 kB\r
-    Node 1 Active:          1746052 kB\r
-    Node 1 Inactive:         981104 kB\r
-    Node 1 Active(anon):    1272936 kB\r
-    Node 1 Inactive(anon):   849968 kB\r
-    Node 1 Active(file):     473116 kB\r
-    Node 1 Inactive(file):   131136 kB\r
-    Node 1 Unevictable:           0 kB\r
-    Node 1 Mlocked:               0 kB\r
-    Node 1 Dirty:                 0 kB\r
-    Node 1 Writeback:             0 kB\r
-    Node 1 FilePages:       2715284 kB\r
-    Node 1 Mapped:            75928 kB\r
-    Node 1 AnonPages:         11920 kB\r
-    Node 1 Shmem:           2111036 kB\r
-    Node 1 KernelStack:        2576 kB\r
-    Node 1 PageTables:         1348 kB\r
-    Node 1 NFS_Unstable:          0 kB\r
-    Node 1 Bounce:                0 kB\r
-    Node 1 WritebackTmp:          0 kB\r
-    Node 1 Slab:              90604 kB\r
-    Node 1 SReclaimable:      55384 kB\r
-    Node 1 SUnreclaim:        35220 kB\r
-    Node 1 AnonHugePages:      6144 kB\r
-    Node 1 HugePages_Total:  2048\r
-    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\r
-  https://www.kernel.org/doc/Documentation/admin-guide/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/admin-guide/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
-    sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0\r
-    proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0\r
-    udev /dev devtmpfs rw,nosuid,relatime,size=264125468k,nr_inodes=66031367,mode=755 0 0\r
-    devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0\r
-    tmpfs /run tmpfs rw,nosuid,noexec,relatime,size=52828580k,mode=755 0 0\r
-    /dev/sda2 / ext4 rw,relatime,errors=remount-ro,data=ordered 0 0\r
-    securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0\r
-    tmpfs /dev/shm tmpfs rw,nosuid,nodev 0 0\r
-    tmpfs /run/lock tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k 0 0\r
-    tmpfs /sys/fs/cgroup tmpfs ro,nosuid,nodev,noexec,mode=755 0 0\r
-    cgroup /sys/fs/cgroup/systemd cgroup rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd 0 0\r
-    pstore /sys/fs/pstore pstore rw,nosuid,nodev,noexec,relatime 0 0\r
-    cgroup /sys/fs/cgroup/freezer cgroup rw,nosuid,nodev,noexec,relatime,freezer 0 0\r
-    cgroup /sys/fs/cgroup/net_cls,net_prio cgroup rw,nosuid,nodev,noexec,relatime,net_cls,net_prio 0 0\r
-    cgroup /sys/fs/cgroup/cpu,cpuacct cgroup rw,nosuid,nodev,noexec,relatime,cpu,cpuacct 0 0\r
-    cgroup /sys/fs/cgroup/memory cgroup rw,nosuid,nodev,noexec,relatime,memory 0 0\r
-    cgroup /sys/fs/cgroup/blkio cgroup rw,nosuid,nodev,noexec,relatime,blkio 0 0\r
-    cgroup /sys/fs/cgroup/perf_event cgroup rw,nosuid,nodev,noexec,relatime,perf_event 0 0\r
-    cgroup /sys/fs/cgroup/devices cgroup rw,nosuid,nodev,noexec,relatime,devices 0 0\r
-    cgroup /sys/fs/cgroup/cpuset cgroup rw,nosuid,nodev,noexec,relatime,cpuset,clone_children 0 0\r
-    cgroup /sys/fs/cgroup/hugetlb cgroup rw,nosuid,nodev,noexec,relatime,hugetlb 0 0\r
-    cgroup /sys/fs/cgroup/pids cgroup rw,nosuid,nodev,noexec,relatime,pids 0 0\r
-    systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=26,pgrp=1,timeout=0,minproto=5,maxproto=5,direct 0 0\r
-    hugetlbfs /dev/hugepages hugetlbfs rw,relatime 0 0\r
-    debugfs /sys/kernel/debug debugfs rw,relatime 0 0\r
-    mqueue /dev/mqueue mqueue rw,relatime 0 0\r
-    tracefs /sys/kernel/debug/tracing tracefs rw,relatime 0 0\r
-    fusectl /sys/fs/fuse/connections fusectl rw,relatime 0 0\r
-    /dev/sda1 /boot ext4 rw,relatime,data=ordered 0 0\r
-    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 | grep '^ii' | awk '{print $2 ": " $3}'\r
-    accountsservice: 0.6.40-2ubuntu11.1\r
-    acl: 2.2.52-3\r
-    adduser: 3.113+nmu3ubuntu4\r
-    apparmor: 2.10.95-0ubuntu2.6\r
-    apt: 1.2.12~ubuntu16.04.1\r
-    apt-utils: 1.2.12~ubuntu16.04.1\r
-    autoconf: 2.69-9\r
-    automake: 1:1.15-4ubuntu1\r
-    autotools-dev: 20150820.1\r
-    base-files: 9.4ubuntu4.2\r
-    base-passwd: 3.5.39\r
-    bash: 4.3-14ubuntu1.1\r
-    binutils: 2.26.1-1ubuntu1~16.04.3\r
-    bridge-utils: 1.5-9ubuntu1\r
-    bsdutils: 1:2.27.1-6ubuntu3.1\r
-    build-essential: 12.1ubuntu2\r
-    busybox-initramfs: 1:1.22.0-15ubuntu1\r
-    busybox-static: 1:1.22.0-15ubuntu1\r
-    bzip2: 1.0.6-8\r
-    ca-certificates: 20160104ubuntu1\r
-    ca-certificates-java: 20160321\r
-    cgroup-bin: 0.41-7ubuntu1\r
-    cgroup-lite: 1.11\r
-    cgroup-tools: 0.41-7ubuntu1\r
-    cloud-image-utils: 0.27-0ubuntu24\r
-    console-setup: 1.108ubuntu15.2\r
-    console-setup-linux: 1.108ubuntu15.2\r
-    coreutils: 8.25-2ubuntu2\r
-    cpio: 2.11+dfsg-5ubuntu1\r
-    cpp: 4:5.3.1-1ubuntu1\r
-    cpp-5: 5.4.0-6ubuntu1~16.04.2\r
-    cpu-checker: 0.7-0ubuntu7\r
-    cpufrequtils: 008-1\r
-    crda: 3.13-1\r
-    cron: 3.0pl1-128ubuntu2\r
-    crudini: 0.7-1\r
-    dash: 0.5.8-2.1ubuntu2\r
-    dbus: 1.10.6-1ubuntu3\r
-    debconf: 1.5.58ubuntu1\r
-    debconf-i18n: 1.5.58ubuntu1\r
-    debianutils: 4.7\r
-    debootstrap: 1.0.78+nmu1ubuntu1.3\r
-    dh-python: 2.20151103ubuntu1.1\r
-    diffutils: 1:3.3-3\r
-    distro-info: 0.14build1\r
-    distro-info-data: 0.28ubuntu0.1\r
-    dkms: 2.2.0.3-2ubuntu11.2\r
-    dmidecode: 3.0-2ubuntu0.1\r
-    dns-root-data: 2015052300+h+1\r
-    dnsmasq-base: 2.75-1ubuntu0.16.04.2\r
-    dpkg: 1.18.4ubuntu1.1\r
-    dpkg-dev: 1.18.4ubuntu1.1\r
-    e2fslibs:amd64: 1.42.13-1ubuntu1\r
-    e2fsprogs: 1.42.13-1ubuntu1\r
-    eject: 2.1.5+deb1+cvs20081104-13.1\r
-    expect: 5.45-7\r
-    fakeroot: 1.20.2-1ubuntu1\r
-    file: 1:5.25-2ubuntu1\r
-    findutils: 4.6.0+git+20160126-2\r
-    fontconfig-config: 2.11.94-0ubuntu1.1\r
-    fonts-dejavu-core: 2.35-1\r
-    g++: 4:5.3.1-1ubuntu1\r
-    g++-5: 5.4.0-6ubuntu1~16.04.2\r
-    gcc: 4:5.3.1-1ubuntu1\r
-    gcc-5: 5.4.0-6ubuntu1~16.04.2\r
-    gcc-5-base:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    gcc-6-base:amd64: 6.0.1-0ubuntu1\r
-    genisoimage: 9:1.1.11-3ubuntu1\r
-    gettext-base: 0.19.7-2ubuntu3\r
-    gir1.2-glib-2.0:amd64: 1.46.0-3ubuntu1\r
-    git: 1:2.7.4-0ubuntu1\r
-    git-man: 1:2.7.4-0ubuntu1\r
-    gnupg: 1.4.20-1ubuntu3.1\r
-    gpgv: 1.4.20-1ubuntu3.1\r
-    grep: 2.25-1~16.04.1\r
-    grub-common: 2.02~beta2-36ubuntu3.1\r
-    grub-gfxpayload-lists: 0.7\r
-    grub-pc: 2.02~beta2-36ubuntu3.1\r
-    grub-pc-bin: 2.02~beta2-36ubuntu3.1\r
-    grub2-common: 2.02~beta2-36ubuntu3.1\r
-    gzip: 1.6-4ubuntu1\r
-    hostname: 3.16ubuntu2\r
-    ifupdown: 0.8.10ubuntu1\r
-    init: 1.29ubuntu2\r
-    init-system-helpers: 1.29ubuntu2\r
-    initramfs-tools: 0.122ubuntu8.1\r
-    initramfs-tools-bin: 0.122ubuntu8.1\r
-    initramfs-tools-core: 0.122ubuntu8.1\r
-    initscripts: 2.88dsf-59.3ubuntu2\r
-    insserv: 1.14.0-5ubuntu3\r
-    installation-report: 2.60ubuntu1\r
-    iproute2: 4.3.0-1ubuntu3\r
-    iptables: 1.6.0-2ubuntu3\r
-    iputils-ping: 3:20121221-5ubuntu2\r
-    ipxe-qemu: 1.0.0+git-20150424.a25a16d-1ubuntu1\r
-    isc-dhcp-client: 4.3.3-5ubuntu12.1\r
-    isc-dhcp-common: 4.3.3-5ubuntu12.1\r
-    iso-codes: 3.65-1\r
-    iw: 3.17-1\r
-    java-common: 0.56ubuntu2\r
-    kbd: 1.15.5-1ubuntu4\r
-    keyboard-configuration: 1.108ubuntu15.2\r
-    klibc-utils: 2.0.4-8ubuntu1.16.04.1\r
-    kmod: 22-1ubuntu4\r
-    krb5-locales: 1.13.2+dfsg-5\r
-    language-selector-common: 0.165.3\r
-    laptop-detect: 0.13.7ubuntu2\r
-    less: 481-2.1\r
-    libaccountsservice0:amd64: 0.6.40-2ubuntu11.1\r
-    libacl1:amd64: 2.2.52-3\r
-    libaio1:amd64: 0.3.110-2\r
-    libalgorithm-diff-perl: 1.19.03-1\r
-    libalgorithm-diff-xs-perl: 0.04-4build1\r
-    libalgorithm-merge-perl: 0.08-3\r
-    libapparmor-perl: 2.10.95-0ubuntu2.6\r
-    libapparmor1:amd64: 2.10.95-0ubuntu2\r
-    libapr1:amd64: 1.5.2-3\r
-    libapt-inst2.0:amd64: 1.2.12~ubuntu16.04.1\r
-    libapt-pkg5.0:amd64: 1.2.12~ubuntu16.04.1\r
-    libasan2:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    libasn1-8-heimdal:amd64: 1.7~git20150920+dfsg-4ubuntu1\r
-    libasound2:amd64: 1.1.0-0ubuntu1\r
-    libasound2-data: 1.1.0-0ubuntu1\r
-    libasprintf0v5:amd64: 0.19.7-2ubuntu3\r
-    libasyncns0:amd64: 0.8-5build1\r
-    libatm1:amd64: 1:2.5.1-1.5\r
-    libatomic1:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    libattr1:amd64: 1:2.4.47-2\r
-    libaudit-common: 1:2.4.5-1ubuntu2\r
-    libaudit1:amd64: 1:2.4.5-1ubuntu2\r
-    libavahi-client3:amd64: 0.6.32~rc+dfsg-1ubuntu2\r
-    libavahi-common-data:amd64: 0.6.32~rc+dfsg-1ubuntu2\r
-    libavahi-common3:amd64: 0.6.32~rc+dfsg-1ubuntu2\r
-    libblkid1:amd64: 2.27.1-6ubuntu3.1\r
-    libbluetooth3:amd64: 5.37-0ubuntu5\r
-    libboost-iostreams1.58.0:amd64: 1.58.0+dfsg-5ubuntu3.1\r
-    libboost-random1.58.0:amd64: 1.58.0+dfsg-5ubuntu3.1\r
-    libboost-system1.58.0:amd64: 1.58.0+dfsg-5ubuntu3.1\r
-    libboost-thread1.58.0:amd64: 1.58.0+dfsg-5ubuntu3.1\r
-    libbrlapi0.6:amd64: 5.3.1-2ubuntu2.1\r
-    libbsd0:amd64: 0.8.2-1\r
-    libbz2-1.0:amd64: 1.0.6-8\r
-    libc-bin: 2.23-0ubuntu3\r
-    libc-dev-bin: 2.23-0ubuntu3\r
-    libc6:amd64: 2.23-0ubuntu3\r
-    libc6-dev:amd64: 2.23-0ubuntu3\r
-    libcaca0:amd64: 0.99.beta19-2build2~gcc5.2\r
-    libcacard0:amd64: 1:2.5.0-2\r
-    libcap-ng0:amd64: 0.7.7-1\r
-    libcap2:amd64: 1:2.24-12\r
-    libcap2-bin: 1:2.24-12\r
-    libcc1-0:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    libcgroup1:amd64: 0.41-7ubuntu1\r
-    libcilkrts5:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    libcomerr2:amd64: 1.42.13-1ubuntu1\r
-    libcpufreq0: 008-1\r
-    libcryptsetup4:amd64: 2:1.6.6-5ubuntu2\r
-    libcups2:amd64: 2.1.3-4\r
-    libcurl3-gnutls:amd64: 7.47.0-1ubuntu2.1\r
-    libdb5.3:amd64: 5.3.28-11\r
-    libdbus-1-3:amd64: 1.10.6-1ubuntu3\r
-    libdbus-glib-1-2:amd64: 0.106-1\r
-    libdebconfclient0:amd64: 0.198ubuntu1\r
-    libdevmapper1.02.1:amd64: 2:1.02.110-1ubuntu10\r
-    libdns-export162: 1:9.10.3.dfsg.P4-8ubuntu1.1\r
-    libdpkg-perl: 1.18.4ubuntu1.1\r
-    libdrm-amdgpu1:amd64: 2.4.67-1ubuntu0.16.04.2\r
-    libdrm-intel1:amd64: 2.4.67-1ubuntu0.16.04.2\r
-    libdrm-nouveau2:amd64: 2.4.67-1ubuntu0.16.04.2\r
-    libdrm-radeon1:amd64: 2.4.67-1ubuntu0.16.04.2\r
-    libdrm2:amd64: 2.4.67-1ubuntu0.16.04.2\r
-    libedit2:amd64: 3.1-20150325-1ubuntu2\r
-    libelf1:amd64: 0.165-3ubuntu1\r
-    liberror-perl: 0.17-1.2\r
-    libestr0: 0.1.10-1\r
-    libexpat1:amd64: 2.1.0-7ubuntu0.16.04.2\r
-    libexpat1-dev:amd64: 2.1.0-7ubuntu0.16.04.2\r
-    libfakeroot:amd64: 1.20.2-1ubuntu1\r
-    libfdisk1:amd64: 2.27.1-6ubuntu3.1\r
-    libfdt1:amd64: 1.4.0+dfsg-2\r
-    libffi6:amd64: 3.2.1-4\r
-    libfile-fcntllock-perl: 0.22-3\r
-    libflac8:amd64: 1.3.1-4\r
-    libfontconfig1:amd64: 2.11.94-0ubuntu1.1\r
-    libfontenc1:amd64: 1:1.1.3-1\r
-    libfreetype6:amd64: 2.6.1-0.1ubuntu2\r
-    libfribidi0:amd64: 0.19.7-1\r
-    libfuse2:amd64: 2.9.4-1ubuntu3\r
-    libgcc-5-dev:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    libgcc1:amd64: 1:6.0.1-0ubuntu1\r
-    libgcrypt20:amd64: 1.6.5-2ubuntu0.2\r
-    libgdbm3:amd64: 1.8.3-13.1\r
-    libgirepository-1.0-1:amd64: 1.46.0-3ubuntu1\r
-    libgl1-mesa-dri:amd64: 11.2.0-1ubuntu2.2\r
-    libgl1-mesa-glx:amd64: 11.2.0-1ubuntu2.2\r
-    libglapi-mesa:amd64: 11.2.0-1ubuntu2.2\r
-    libglib2.0-0:amd64: 2.48.1-1~ubuntu16.04.1\r
-    libglib2.0-bin: 2.48.1-1~ubuntu16.04.1\r
-    libglib2.0-data: 2.48.1-1~ubuntu16.04.1\r
-    libglib2.0-dev: 2.48.1-1~ubuntu16.04.1\r
-    libgmp10:amd64: 2:6.1.0+dfsg-2\r
-    libgnutls-openssl27:amd64: 3.4.10-4ubuntu1.1\r
-    libgnutls30:amd64: 3.4.10-4ubuntu1.1\r
-    libgomp1:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    libgpg-error0:amd64: 1.21-2ubuntu1\r
-    libgssapi-krb5-2:amd64: 1.13.2+dfsg-5\r
-    libgssapi3-heimdal:amd64: 1.7~git20150920+dfsg-4ubuntu1\r
-    libhcrypto4-heimdal:amd64: 1.7~git20150920+dfsg-4ubuntu1\r
-    libheimbase1-heimdal:amd64: 1.7~git20150920+dfsg-4ubuntu1\r
-    libheimntlm0-heimdal:amd64: 1.7~git20150920+dfsg-4ubuntu1\r
-    libhogweed4:amd64: 3.2-1\r
-    libhx509-5-heimdal:amd64: 1.7~git20150920+dfsg-4ubuntu1\r
-    libice6:amd64: 2:1.0.9-1\r
-    libicu55:amd64: 55.1-7\r
-    libidn11:amd64: 1.32-3ubuntu1.1\r
-    libisc-export160: 1:9.10.3.dfsg.P4-8ubuntu1.1\r
-    libiscsi2:amd64: 1.12.0-2\r
-    libisl15:amd64: 0.16.1-1\r
-    libitm1:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    libjpeg-turbo8:amd64: 1.4.2-0ubuntu3\r
-    libjpeg8:amd64: 8c-2ubuntu8\r
-    libjson-c2:amd64: 0.11-4ubuntu2\r
-    libk5crypto3:amd64: 1.13.2+dfsg-5\r
-    libkeyutils1:amd64: 1.5.9-8ubuntu1\r
-    libklibc: 2.0.4-8ubuntu1.16.04.1\r
-    libkmod2:amd64: 22-1ubuntu4\r
-    libkrb5-26-heimdal:amd64: 1.7~git20150920+dfsg-4ubuntu1\r
-    libkrb5-3:amd64: 1.13.2+dfsg-5\r
-    libkrb5support0:amd64: 1.13.2+dfsg-5\r
-    liblcms2-2:amd64: 2.6-3ubuntu2\r
-    libldap-2.4-2:amd64: 2.4.42+dfsg-2ubuntu3.1\r
-    libllvm3.8:amd64: 1:3.8-2ubuntu4\r
-    liblocale-gettext-perl: 1.07-1build1\r
-    liblsan0:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    libltdl-dev:amd64: 2.4.6-0.1\r
-    libltdl7:amd64: 2.4.6-0.1\r
-    liblxc1: 2.0.7-0ubuntu1~16.04.2\r
-    liblz4-1:amd64: 0.0~r131-2ubuntu2\r
-    liblzma5:amd64: 5.1.1alpha+20120614-2ubuntu2\r
-    libmagic1:amd64: 1:5.25-2ubuntu1\r
-    libmnl0:amd64: 1.0.3-5\r
-    libmount1:amd64: 2.27.1-6ubuntu3.1\r
-    libmpc3:amd64: 1.0.3-1\r
-    libmpdec2:amd64: 2.4.2-1\r
-    libmpfr4:amd64: 3.1.4-1\r
-    libmpx0:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    libncurses5:amd64: 6.0+20160213-1ubuntu1\r
-    libncursesw5:amd64: 6.0+20160213-1ubuntu1\r
-    libnetfilter-conntrack3:amd64: 1.0.5-1\r
-    libnettle6:amd64: 3.2-1\r
-    libnewt0.52:amd64: 0.52.18-1ubuntu2\r
-    libnfnetlink0:amd64: 1.0.1-3\r
-    libnih-dbus1:amd64: 1.0.3-4.3ubuntu1\r
-    libnih1:amd64: 1.0.3-4.3ubuntu1\r
-    libnl-3-200:amd64: 3.2.27-1\r
-    libnl-genl-3-200:amd64: 3.2.27-1\r
-    libnspr4:amd64: 2:4.12-0ubuntu0.16.04.1\r
-    libnss3:amd64: 2:3.23-0ubuntu0.16.04.1\r
-    libnss3-nssdb: 2:3.23-0ubuntu0.16.04.1\r
-    libnuma1:amd64: 2.0.11-1ubuntu1\r
-    libogg0:amd64: 1.3.2-1\r
-    libopus0:amd64: 1.1.2-1ubuntu1\r
-    libp11-kit0:amd64: 0.23.2-3\r
-    libpam-cgfs: 2.0.6-0ubuntu1~16.04.1\r
-    libpam-modules:amd64: 1.1.8-3.2ubuntu2\r
-    libpam-modules-bin: 1.1.8-3.2ubuntu2\r
-    libpam-runtime: 1.1.8-3.2ubuntu2\r
-    libpam0g:amd64: 1.1.8-3.2ubuntu2\r
-    libpcap-dev: 1.7.4-2\r
-    libpcap0.8:amd64: 1.7.4-2\r
-    libpcap0.8-dev: 1.7.4-2\r
-    libpci3:amd64: 1:3.3.1-1.1ubuntu1\r
-    libpciaccess0:amd64: 0.13.4-1\r
-    libpcre16-3:amd64: 2:8.38-3.1\r
-    libpcre3:amd64: 2:8.38-3.1\r
-    libpcre3-dev:amd64: 2:8.38-3.1\r
-    libpcre32-3:amd64: 2:8.38-3.1\r
-    libpcrecpp0v5:amd64: 2:8.38-3.1\r
-    libpcsclite1:amd64: 1.8.14-1ubuntu1.16.04.1\r
-    libperl5.22:amd64: 5.22.1-9\r
-    libpixman-1-0:amd64: 0.33.6-1\r
-    libplymouth4:amd64: 0.9.2-3ubuntu13.1\r
-    libpng12-0:amd64: 1.2.54-1ubuntu1\r
-    libpolkit-gobject-1-0:amd64: 0.105-14.1\r
-    libpopt0:amd64: 1.16-10\r
-    libprocps4:amd64: 2:3.3.10-4ubuntu2\r
-    libpulse0:amd64: 1:8.0-0ubuntu3\r
-    libpython-all-dev:amd64: 2.7.11-1\r
-    libpython-dev:amd64: 2.7.11-1\r
-    libpython-stdlib:amd64: 2.7.11-1\r
-    libpython2.7:amd64: 2.7.12-1~16.04\r
-    libpython2.7-dev:amd64: 2.7.12-1~16.04\r
-    libpython2.7-minimal:amd64: 2.7.12-1~16.04\r
-    libpython2.7-stdlib:amd64: 2.7.12-1~16.04\r
-    libpython3-stdlib:amd64: 3.5.1-3\r
-    libpython3.5-minimal:amd64: 3.5.2-2~16.01\r
-    libpython3.5-stdlib:amd64: 3.5.2-2~16.01\r
-    libquadmath0:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    librados2: 10.2.2-0ubuntu0.16.04.2\r
-    librbd1: 10.2.2-0ubuntu0.16.04.2\r
-    libreadline6:amd64: 6.3-8ubuntu2\r
-    libroken18-heimdal:amd64: 1.7~git20150920+dfsg-4ubuntu1\r
-    librtmp1:amd64: 2.4+20151223.gitfa8646d-1build1\r
-    libsasl2-2:amd64: 2.1.26.dfsg1-14build1\r
-    libsasl2-modules:amd64: 2.1.26.dfsg1-14build1\r
-    libsasl2-modules-db:amd64: 2.1.26.dfsg1-14build1\r
-    libsdl1.2debian:amd64: 1.2.15+dfsg1-3\r
-    libseccomp2:amd64: 2.2.3-3ubuntu3\r
-    libselinux1:amd64: 2.4-3build2\r
-    libsemanage-common: 2.3-1build3\r
-    libsemanage1:amd64: 2.3-1build3\r
-    libsepol1:amd64: 2.4-2\r
-    libsigsegv2:amd64: 2.10-4\r
-    libslang2:amd64: 2.3.0-2ubuntu1\r
-    libsm6:amd64: 2:1.2.2-1\r
-    libsmartcols1:amd64: 2.27.1-6ubuntu3.1\r
-    libsndfile1:amd64: 1.0.25-10\r
-    libspice-server1:amd64: 0.12.6-4ubuntu0.1\r
-    libsqlite3-0:amd64: 3.11.0-1ubuntu1\r
-    libss2:amd64: 1.42.13-1ubuntu1\r
-    libssl1.0.0:amd64: 1.0.2g-1ubuntu4.5\r
-    libstdc++-5-dev:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    libstdc++6:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    libsystemd0:amd64: 229-4ubuntu10\r
-    libtasn1-6:amd64: 4.7-3ubuntu0.16.04.1\r
-    libtcl8.6:amd64: 8.6.5+dfsg-2\r
-    libtext-charwidth-perl: 0.04-7build5\r
-    libtext-iconv-perl: 1.7-5build4\r
-    libtext-wrapi18n-perl: 0.06-7.1\r
-    libtinfo5:amd64: 6.0+20160213-1ubuntu1\r
-    libtk8.6:amd64: 8.6.5-1\r
-    libtool: 2.4.6-0.1\r
-    libtsan0:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    libtxc-dxtn-s2tc0:amd64: 0~git20131104-1.1\r
-    libubsan0:amd64: 5.4.0-6ubuntu1~16.04.2\r
-    libudev1:amd64: 229-4ubuntu10\r
-    libusb-0.1-4:amd64: 2:0.1.12-28\r
-    libusb-1.0-0:amd64: 2:1.0.20-1\r
-    libusbredirparser1:amd64: 0.7.1-1\r
-    libustr-1.0-1:amd64: 1.0.4-5\r
-    libutempter0:amd64: 1.1.6-3\r
-    libuuid1:amd64: 2.27.1-6ubuntu3.1\r
-    libvorbis0a:amd64: 1.3.5-3\r
-    libvorbisenc2:amd64: 1.3.5-3\r
-    libwind0-heimdal:amd64: 1.7~git20150920+dfsg-4ubuntu1\r
-    libwrap0:amd64: 7.6.q-25\r
-    libx11-6:amd64: 2:1.6.3-1ubuntu2\r
-    libx11-data: 2:1.6.3-1ubuntu2\r
-    libx11-xcb1:amd64: 2:1.6.3-1ubuntu2\r
-    libxau6:amd64: 1:1.0.8-1\r
-    libxaw7:amd64: 2:1.0.13-1\r
-    libxcb-dri2-0:amd64: 1.11.1-1ubuntu1\r
-    libxcb-dri3-0:amd64: 1.11.1-1ubuntu1\r
-    libxcb-glx0:amd64: 1.11.1-1ubuntu1\r
-    libxcb-present0:amd64: 1.11.1-1ubuntu1\r
-    libxcb-shape0:amd64: 1.11.1-1ubuntu1\r
-    libxcb-sync1:amd64: 1.11.1-1ubuntu1\r
-    libxcb1:amd64: 1.11.1-1ubuntu1\r
-    libxcomposite1:amd64: 1:0.4.4-1\r
-    libxdamage1:amd64: 1:1.1.4-2\r
-    libxdmcp6:amd64: 1:1.1.2-1.1\r
-    libxen-4.6:amd64: 4.6.0-1ubuntu4.2\r
-    libxenstore3.0:amd64: 4.6.0-1ubuntu4.2\r
-    libxext6:amd64: 2:1.3.3-1\r
-    libxfixes3:amd64: 1:5.0.1-2\r
-    libxft2:amd64: 2.3.2-1\r
-    libxi6:amd64: 2:1.7.6-1\r
-    libxinerama1:amd64: 2:1.1.3-1\r
-    libxml2:amd64: 2.9.3+dfsg1-1ubuntu0.1\r
-    libxmu6:amd64: 2:1.1.2-2\r
-    libxmuu1:amd64: 2:1.1.2-2\r
-    libxpm4:amd64: 1:3.5.11-1\r
-    libxrandr2:amd64: 2:1.5.0-1\r
-    libxrender1:amd64: 1:0.9.9-0ubuntu1\r
-    libxshmfence1:amd64: 1.2-1\r
-    libxss1:amd64: 1:1.2.2-1\r
-    libxt6:amd64: 1:1.1.5-0ubuntu1\r
-    libxtables11:amd64: 1.6.0-2ubuntu3\r
-    libxtst6:amd64: 2:1.2.2-1\r
-    libxv1:amd64: 2:1.0.10-1\r
-    libxxf86dga1:amd64: 2:1.1.4-1\r
-    libxxf86vm1:amd64: 1:1.1.4-1\r
-    libyajl2:amd64: 2.1.0-2\r
-    linux-base: 4.0ubuntu1\r
-    linux-firmware: 1.157.2\r
-    linux-generic: 4.4.0.72.78\r
-    linux-headers-4.4.0-72: 4.4.0-72.93\r
-    linux-headers-4.4.0-72-generic: 4.4.0-72.93\r
-    linux-headers-generic: 4.4.0.72.78\r
-    linux-image-4.4.0-72-generic: 4.4.0-72.93\r
-    linux-image-extra-4.4.0-72-generic: 4.4.0-72.93\r
-    linux-image-generic: 4.4.0.72.78\r
-    linux-libc-dev:amd64: 4.4.0-72.93\r
-    locales: 2.23-0ubuntu3\r
-    login: 1:4.2-3.1ubuntu5\r
-    logrotate: 3.8.7-2ubuntu2\r
-    lsb-base: 9.20160110ubuntu0.2\r
-    lsb-release: 9.20160110ubuntu0.2\r
-    lxc: 2.0.7-0ubuntu1~16.04.2\r
-    lxc-common: 2.0.7-0ubuntu1~16.04.2\r
-    lxc-templates: 2.0.7-0ubuntu1~16.04.2\r
-    lxc1: 2.0.7-0ubuntu1~16.04.2\r
-    lxcfs: 2.0.6-0ubuntu1~16.04.1\r
-    m4: 1.4.17-5\r
-    make: 4.1-6\r
-    makedev: 2.3.1-93ubuntu1\r
-    manpages: 4.04-2\r
-    manpages-dev: 4.04-2\r
-    mawk: 1.3.3-17ubuntu2\r
-    mime-support: 3.59ubuntu1\r
-    mount: 2.27.1-6ubuntu3.1\r
-    mountall: 2.54ubuntu1\r
-    msr-tools: 1.3-2\r
-    multiarch-support: 2.23-0ubuntu3\r
-    ncurses-base: 6.0+20160213-1ubuntu1\r
-    ncurses-bin: 6.0+20160213-1ubuntu1\r
-    ncurses-term: 6.0+20160213-1ubuntu1\r
-    net-tools: 1.60-26ubuntu1\r
-    netbase: 5.3\r
-    netcat-openbsd: 1.105-7ubuntu1\r
-    openjdk-8-jre-headless:amd64: 8u131-b11-0ubuntu1.16.04.2\r
-    openssh-client: 1:7.2p2-4ubuntu2.1\r
-    openssh-server: 1:7.2p2-4ubuntu2.1\r
-    openssh-sftp-server: 1:7.2p2-4ubuntu2.1\r
-    openssl: 1.0.2g-1ubuntu4.5\r
-    os-prober: 1.70ubuntu3\r
-    passwd: 1:4.2-3.1ubuntu5\r
-    patch: 2.7.5-1\r
-    pciutils: 1:3.3.1-1.1ubuntu1\r
-    perl: 5.22.1-9\r
-    perl-base: 5.22.1-9\r
-    perl-modules-5.22: 5.22.1-9\r
-    pkg-config: 0.29.1-0ubuntu1\r
-    plymouth: 0.9.2-3ubuntu13.1\r
-    plymouth-theme-ubuntu-text: 0.9.2-3ubuntu13.1\r
-    procps: 2:3.3.10-4ubuntu2\r
-    python: 2.7.11-1\r
-    python-all: 2.7.11-1\r
-    python-all-dev: 2.7.11-1\r
-    python-apt: 1.1.0~beta1build1\r
-    python-apt-common: 1.1.0~beta1build1\r
-    python-dev: 2.7.11-1\r
-    python-iniparse: 0.4-2.2\r
-    python-minimal: 2.7.11-1\r
-    python-pip: 8.1.1-2ubuntu0.2\r
-    python-pip-whl: 8.1.1-2ubuntu0.2\r
-    python-pkg-resources: 20.7.0-1\r
-    python-setuptools: 20.7.0-1\r
-    python-six: 1.10.0-3\r
-    python-virtualenv: 15.0.1+ds-3\r
-    python-wheel: 0.29.0-1\r
-    python2.7: 2.7.12-1~16.04\r
-    python2.7-dev: 2.7.12-1~16.04\r
-    python2.7-minimal: 2.7.12-1~16.04\r
-    python3: 3.5.1-3\r
-    python3-apt: 1.1.0~beta1build1\r
-    python3-chardet: 2.3.0-2\r
-    python3-dbus: 1.2.0-3\r
-    python3-gi: 3.20.0-0ubuntu1\r
-    python3-lxc: 2.0.7-0ubuntu1~16.04.2\r
-    python3-minimal: 3.5.1-3\r
-    python3-pkg-resources: 20.7.0-1\r
-    python3-requests: 2.9.1-3\r
-    python3-six: 1.10.0-3\r
-    python3-urllib3: 1.13.1-2ubuntu0.16.04.1\r
-    python3-virtualenv: 15.0.1+ds-3\r
-    python3.5: 3.5.2-2~16.01\r
-    python3.5-minimal: 3.5.2-2~16.01\r
-    qemu-block-extra:amd64: 1:2.5+dfsg-5ubuntu10.5\r
-    qemu-system-common: 1:2.5+dfsg-5ubuntu10.5\r
-    qemu-system-x86: 1:2.5+dfsg-5ubuntu10.5\r
-    qemu-utils: 1:2.5+dfsg-5ubuntu10.5\r
-    readline-common: 6.3-8ubuntu2\r
-    rename: 0.20-4\r
-    resolvconf: 1.78ubuntu2\r
-    rsync: 3.1.1-3ubuntu1\r
-    rsyslog: 8.16.0-1ubuntu3\r
-    screen: 4.3.1-2build1\r
-    seabios: 1.8.2-1ubuntu1\r
-    sed: 4.2.2-7\r
-    sensible-utils: 0.0.9\r
-    sgml-base: 1.26+nmu4ubuntu1\r
-    shared-mime-info: 1.5-2ubuntu0.1\r
-    sharutils: 1:4.15.2-1\r
-    socat: 1.7.3.1-1\r
-    ssh-import-id: 5.5-0ubuntu1\r
-    sudo: 1.8.16-0ubuntu1.1\r
-    systemd: 229-4ubuntu10\r
-    systemd-sysv: 229-4ubuntu10\r
-    sysv-rc: 2.88dsf-59.3ubuntu2\r
-    sysvinit-utils: 2.88dsf-59.3ubuntu2\r
-    tar: 1.28-2.1\r
-    tasksel: 3.34ubuntu3\r
-    tasksel-data: 3.34ubuntu3\r
-    tcl-expect:amd64: 5.45-7\r
-    tcl8.6: 8.6.5+dfsg-2\r
-    tcpd: 7.6.q-25\r
-    tk8.6: 8.6.5-1\r
-    tzdata: 2016g-0ubuntu0.16.04\r
-    ubuntu-keyring: 2012.05.19\r
-    ubuntu-minimal: 1.361\r
-    ucf: 3.0036\r
-    udev: 229-4ubuntu10\r
-    uidmap: 1:4.2-3.1ubuntu5.3\r
-    ureadahead: 0.100.0-19\r
-    usbutils: 1:007-4\r
-    util-linux: 2.27.1-6ubuntu3.1\r
-    uuid-runtime: 2.27.1-6ubuntu3.2\r
-    vim-common: 2:7.4.1689-3ubuntu1.1\r
-    vim-tiny: 2:7.4.1689-3ubuntu1.1\r
-    virtualenv: 15.0.1+ds-3\r
-    vpp: 17.10-rc0~89-g7c35f19~b2621\r
-    vpp-dbg: 17.10-rc0~89-g7c35f19~b2621\r
-    vpp-dev: 17.10-rc0~89-g7c35f19~b2621\r
-    vpp-dpdk-dkms: 17.05-vpp6\r
-    vpp-lib: 17.10-rc0~89-g7c35f19~b2621\r
-    vpp-plugins: 17.10-rc0~89-g7c35f19~b2621\r
-    wamerican: 7.1-1\r
-    wget: 1.17.1-1ubuntu1.1\r
-    whiptail: 0.52.18-1ubuntu2\r
-    wireless-regdb: 2015.07.20-1ubuntu1\r
-    x11-common: 1:7.7+13ubuntu3\r
-    x11-utils: 7.7+3\r
-    xauth: 1:1.0.9-1ubuntu2\r
-    xbitmaps: 1.1.1-2\r
-    xdg-user-dirs: 0.15-2ubuntu6\r
-    xkb-data: 2.16-1ubuntu1\r
-    xml-core: 0.13+nmu2\r
-    xterm: 322-1ubuntu1\r
-    xz-utils: 5.1.1alpha+20120614-2ubuntu2\r
-    zlib1g:amd64: 1:1.2.8.dfsg-2ubuntu4\r
-    zlib1g-dev:amd64: 1:1.2.8.dfsg-2ubuntu4\r
-\r
-**Kernel module listing**\r
-\r
-::\r
-\r
-    $ lsmod | sort\r
-    8250_fintek            16384  0\r
-    ablk_helper            16384  1 aesni_intel\r
-    acpi_pad               24576  0\r
-    acpi_power_meter       20480  0\r
-    aesni_intel           167936  0\r
-    aes_x86_64             20480  1 aesni_intel\r
-    ahci                   36864  0\r
-    authenc                16384  1 intel_qat\r
-    autofs4                40960  2\r
-    bridge                126976  0\r
-    coretemp               16384  0\r
-    crc32_pclmul           16384  0\r
-    crct10dif_pclmul       16384  0\r
-    cryptd                 20480  3 ghash_clmulni_intel,aesni_intel,ablk_helper\r
-    dca                    16384  2 igb,ixgbe\r
-    edac_core              53248  1 sb_edac\r
-    enclosure              16384  1 ses\r
-    enic                   81920  0\r
-    fjes                   28672  0\r
-    fnic                  106496  0\r
-    gf128mul               16384  1 lrw\r
-    ghash_clmulni_intel    16384  0\r
-    glue_helper            16384  1 aesni_intel\r
-    hid                   118784  2 hid_generic,usbhid\r
-    hid_generic            16384  0\r
-    i2c_algo_bit           16384  1 igb\r
-    i40e                  286720  0\r
-    igb                   196608  0\r
-    igb_uio                16384  0\r
-    input_leds             16384  0\r
-    intel_powerclamp       16384  0\r
-    intel_qat             110592  2 qat_dh895xccvf,qat_dh895xcc\r
-    intel_rapl             20480  0\r
-    ip6_udp_tunnel         16384  1 vxlan\r
-    ipmi_msghandler        49152  2 ipmi_ssif,ipmi_si\r
-    ipmi_si                57344  0\r
-    ipmi_ssif              24576  0\r
-    iptable_filter         16384  1\r
-    iptable_mangle         16384  1\r
-    iptable_nat            16384  1\r
-    ip_tables              24576  3 iptable_filter,iptable_mangle,iptable_nat\r
-    ipt_MASQUERADE         16384  1\r
-    irqbypass              16384  1 kvm\r
-    ixgbe                 290816  0\r
-    joydev                 20480  0\r
-    kvm                   544768  1 kvm_intel\r
-    kvm_intel             172032  0\r
-    libahci                32768  1 ahci\r
-    libfc                 114688  2 fnic,libfcoe\r
-    libfcoe                65536  1 fnic\r
-    llc                    16384  2 stp,bridge\r
-    lpc_ich                24576  0\r
-    lrw                    16384  1 aesni_intel\r
-    mac_hid                16384  0\r
-    mdio                   16384  1 ixgbe\r
-    megaraid_sas          135168  3\r
-    mei                    98304  1 mei_me\r
-    mei_me                 36864  0\r
-    Module                  Size  Used by\r
-    nf_conntrack          106496  4 nf_nat,nf_nat_ipv4,nf_nat_masquerade_ipv4,nf_conntrack_ipv4\r
-    nf_conntrack_ipv4      16384  1\r
-    nf_defrag_ipv4         16384  1 nf_conntrack_ipv4\r
-    nf_nat                 24576  2 nf_nat_ipv4,nf_nat_masquerade_ipv4\r
-    nf_nat_ipv4            16384  1 iptable_nat\r
-    nf_nat_masquerade_ipv4    16384  1 ipt_MASQUERADE\r
-    pps_core               20480  1 ptp\r
-    ptp                    20480  3 igb,i40e,ixgbe\r
-    qat_dh895xcc           20480  0\r
-    qat_dh895xccvf         20480  0\r
-    sb_edac                32768  0\r
-    scsi_transport_fc      61440  2 fnic,libfc\r
-    ses                    20480  0\r
-    shpchp                 36864  0\r
-    stp                    16384  1 bridge\r
-    udp_tunnel             16384  1 vxlan\r
-    uio                    20480  2 uio_pci_generic,igb_uio\r
-    uio_pci_generic        16384  0\r
-    usbhid                 49152  0\r
-    veth                   16384  0\r
-    vxlan                  49152  2 i40e,ixgbe\r
-    wmi                    20480  0\r
-    x86_pkg_temp_thermal    16384  0\r
-    x_tables               36864  6 xt_CHECKSUM,ip_tables,xt_tcpudp,ipt_MASQUERADE,iptable_filter,iptable_mangle\r
-    xt_CHECKSUM            16384  1\r
-    xt_tcpudp              16384  5\r
-\r
-**Sysctl listing**\r
-\r
-::\r
-\r
-    $ sysctl -a\r
-    abi.vsyscall32 = 1\r
-    debug.exception-trace = 1\r
-    debug.kprobes-optimization = 1\r
-    dev.cdrom.autoclose = 1\r
-    dev.cdrom.autoeject = 0\r
-    dev.cdrom.check_media = 0\r
-    dev.cdrom.debug = 0\r
-    dev.cdrom.info = CD-ROM information, Id: cdrom.c 3.20 2003/12/17\r
-    dev.cdrom.info =\r
-    dev.cdrom.info = drive name:\r
-    dev.cdrom.info = drive speed:\r
-    dev.cdrom.info = drive # of slots:\r
-    dev.cdrom.info = Can close tray:\r
-    dev.cdrom.info = Can open tray:\r
-    dev.cdrom.info = Can lock tray:\r
-    dev.cdrom.info = Can change speed:\r
-    dev.cdrom.info = Can select disk:\r
-    dev.cdrom.info = Can read multisession:\r
-    dev.cdrom.info = Can read MCN:\r
-    dev.cdrom.info = Reports media changed:\r
-    dev.cdrom.info = Can play audio:\r
-    dev.cdrom.info = Can write CD-R:\r
-    dev.cdrom.info = Can write CD-RW:\r
-    dev.cdrom.info = Can read DVD:\r
-    dev.cdrom.info = Can write DVD-R:\r
-    dev.cdrom.info = Can write DVD-RAM:\r
-    dev.cdrom.info = Can read MRW:\r
-    dev.cdrom.info = Can write MRW:\r
-    dev.cdrom.info = Can write RAM:\r
-    dev.cdrom.info =\r
-    dev.cdrom.info =\r
-    dev.cdrom.lock = 0\r
-    dev.hpet.max-user-freq = 64\r
-    dev.mac_hid.mouse_button2_keycode = 97\r
-    dev.mac_hid.mouse_button3_keycode = 100\r
-    dev.mac_hid.mouse_button_emulation = 0\r
-    dev.raid.speed_limit_max = 200000\r
-    dev.raid.speed_limit_min = 1000\r
-    dev.scsi.logging_level = 0\r
-    fs.aio-max-nr = 65536\r
-    fs.aio-nr = 0\r
-    fs.binfmt_misc.status = enabled\r
-    fs.dentry-state = 69970    58326   45      0       0       0\r
-    fs.dir-notify-enable = 1\r
-    fs.epoll.max_user_watches = 108185784\r
-    fs.file-max = 52706330\r
-    fs.file-nr = 1224  0       52706330\r
-    fs.inode-nr = 42965        369\r
-    fs.inode-state = 42965     369     0       0       0       0       0\r
-    fs.inotify.max_queued_events = 16384\r
-    fs.inotify.max_user_instances = 128\r
-    fs.inotify.max_user_watches = 8192\r
-    fs.lease-break-time = 45\r
-    fs.leases-enable = 1\r
-    fs.mount-max = 100000\r
-    fs.mqueue.msg_default = 10\r
-    fs.mqueue.msg_max = 10\r
-    fs.mqueue.msgsize_default = 8192\r
-    fs.mqueue.msgsize_max = 8192\r
-    fs.mqueue.queues_max = 256\r
-    fs.nr_open = 1048576\r
-    fs.overflowgid = 65534\r
-    fs.overflowuid = 65534\r
-    fs.pipe-max-size = 1048576\r
-    fs.pipe-user-pages-hard = 0\r
-    fs.pipe-user-pages-soft = 16384\r
-    fs.protected_hardlinks = 1\r
-    fs.protected_symlinks = 1\r
-    fs.quota.allocated_dquots = 0\r
-    fs.quota.cache_hits = 0\r
-    fs.quota.drops = 0\r
-    fs.quota.free_dquots = 0\r
-    fs.quota.lookups = 0\r
-    fs.quota.reads = 0\r
-    fs.quota.syncs = 0\r
-    fs.quota.writes = 0\r
-    fs.suid_dumpable = 0\r
-    kernel.acct = 4    2       30\r
-    kernel.acpi_video_flags = 0\r
-    kernel.auto_msgmni = 0\r
-    kernel.bootloader_type = 114\r
-    kernel.bootloader_version = 2\r
-    kernel.cad_pid = 1\r
-    kernel.cap_last_cap = 37\r
-    kernel.compat-log = 1\r
-    kernel.core_pattern = core\r
-    kernel.core_pipe_limit = 0\r
-    kernel.core_uses_pid = 0\r
-    kernel.ctrl-alt-del = 0\r
-    kernel.dmesg_restrict = 0\r
-    kernel.domainname = (none)\r
-    kernel.ftrace_dump_on_oops = 0\r
-    kernel.ftrace_enabled = 1\r
-    kernel.hardlockup_all_cpu_backtrace = 0\r
-    kernel.hardlockup_panic = 0\r
-    kernel.hostname = t2-sut1\r
-    kernel.hotplug =\r
-    kernel.hung_task_check_count = 4194304\r
-    kernel.hung_task_panic = 0\r
-    kernel.hung_task_timeout_secs = 120\r
-    kernel.hung_task_warnings = 10\r
-    kernel.io_delay_type = 1\r
-    kernel.kexec_load_disabled = 0\r
-    kernel.keys.gc_delay = 300\r
-    kernel.keys.maxbytes = 20000\r
-    kernel.keys.maxkeys = 200\r
-    kernel.keys.persistent_keyring_expiry = 259200\r
-    kernel.keys.root_maxbytes = 25000000\r
-    kernel.keys.root_maxkeys = 1000000\r
-    kernel.kptr_restrict = 1\r
-    kernel.kstack_depth_to_print = 12\r
-    kernel.max_lock_depth = 1024\r
-    kernel.modprobe = /sbin/modprobe\r
-    kernel.modules_disabled = 0\r
-    kernel.moksbstate_disabled = 0\r
-    kernel.msg_next_id = -1\r
-    kernel.msgmax = 8192\r
-    kernel.msgmnb = 16384\r
-    kernel.msgmni = 32000\r
-    kernel.ngroups_max = 65536\r
-    kernel.nmi_watchdog = 1\r
-    kernel.ns_last_pid = 11764\r
-    kernel.numa_balancing = 1\r
-    kernel.numa_balancing_scan_delay_ms = 1000\r
-    kernel.numa_balancing_scan_period_max_ms = 60000\r
-    kernel.numa_balancing_scan_period_min_ms = 1000\r
-    kernel.numa_balancing_scan_size_mb = 256\r
-    kernel.osrelease = 4.4.0-72-generic\r
-    kernel.ostype = Linux\r
-    kernel.overflowgid = 65534\r
-    kernel.overflowuid = 65534\r
-    kernel.panic = 0\r
-    kernel.panic_on_io_nmi = 0\r
-    kernel.panic_on_oops = 0\r
-    kernel.panic_on_unrecovered_nmi = 0\r
-    kernel.panic_on_warn = 0\r
-    kernel.perf_cpu_time_max_percent = 25\r
-    kernel.perf_event_max_sample_rate = 12500\r
-    kernel.perf_event_mlock_kb = 516\r
-    kernel.perf_event_paranoid = 1\r
-    kernel.pid_max = 36864\r
-    kernel.poweroff_cmd = /sbin/poweroff\r
-    kernel.print-fatal-signals = 0\r
-    kernel.printk = 4  4       1       7\r
-    kernel.printk_delay = 0\r
-    kernel.printk_ratelimit = 5\r
-    kernel.printk_ratelimit_burst = 10\r
-    kernel.pty.max = 4096\r
-    kernel.pty.nr = 1\r
-    kernel.pty.reserve = 1024\r
-    kernel.random.boot_id = f683c836-6fc6-492a-a23b-62ab21895040\r
-    kernel.random.entropy_avail = 200\r
-    kernel.random.poolsize = 4096\r
-    kernel.random.read_wakeup_threshold = 64\r
-    kernel.random.urandom_min_reseed_secs = 60\r
-    kernel.random.uuid = 144ff2ba-1bc7-4836-8fb7-6aaa0ab7e65f\r
-    kernel.random.write_wakeup_threshold = 896\r
-    kernel.randomize_va_space = 0\r
-    kernel.real-root-dev = 0\r
-    kernel.sched_autogroup_enabled = 1\r
-    kernel.sched_cfs_bandwidth_slice_us = 5000\r
-    kernel.sched_child_runs_first = 0\r
-    kernel.sched_domain.cpu0.domain0.busy_factor = 32\r
-    kernel.sched_domain.cpu0.domain0.busy_idx = 3\r
-    kernel.sched_domain.cpu0.domain0.cache_nice_tries = 2\r
-    kernel.sched_domain.cpu0.domain0.flags = 25647\r
-    kernel.sched_domain.cpu0.domain0.forkexec_idx = 0\r
-    kernel.sched_domain.cpu0.domain0.idle_idx = 2\r
-    kernel.sched_domain.cpu0.domain0.imbalance_pct = 125\r
-    kernel.sched_domain.cpu0.domain0.max_interval = 72\r
-    kernel.sched_domain.cpu0.domain0.max_newidle_lb_cost = 1309\r
-    kernel.sched_domain.cpu0.domain0.min_interval = 36\r
-    kernel.sched_domain.cpu0.domain0.name = NUMA\r
-    kernel.sched_domain.cpu0.domain0.newidle_idx = 0\r
-    kernel.sched_domain.cpu0.domain0.wake_idx = 0\r
-    kernel.sched_domain.cpu18.domain0.busy_factor = 32\r
-    kernel.sched_domain.cpu18.domain0.busy_idx = 3\r
-    kernel.sched_domain.cpu18.domain0.cache_nice_tries = 2\r
-    kernel.sched_domain.cpu18.domain0.flags = 25647\r
-    kernel.sched_domain.cpu18.domain0.forkexec_idx = 0\r
-    kernel.sched_domain.cpu18.domain0.idle_idx = 2\r
-    kernel.sched_domain.cpu18.domain0.imbalance_pct = 125\r
-    kernel.sched_domain.cpu18.domain0.max_interval = 72\r
-    kernel.sched_domain.cpu18.domain0.max_newidle_lb_cost = 2026\r
-    kernel.sched_domain.cpu18.domain0.min_interval = 36\r
-    kernel.sched_domain.cpu18.domain0.name = NUMA\r
-    kernel.sched_domain.cpu18.domain0.newidle_idx = 0\r
-    kernel.sched_domain.cpu18.domain0.wake_idx = 0\r
-    kernel.sched_latency_ns = 24000000\r
-    kernel.sched_migration_cost_ns = 500000\r
-    kernel.sched_min_granularity_ns = 3000000\r
-    kernel.sched_nr_migrate = 32\r
-    kernel.sched_rr_timeslice_ms = 25\r
-    kernel.sched_rt_period_us = 1000000\r
-    kernel.sched_rt_runtime_us = 950000\r
-    kernel.sched_shares_window_ns = 10000000\r
-    kernel.sched_time_avg_ms = 1000\r
-    kernel.sched_tunable_scaling = 1\r
-    kernel.sched_wakeup_granularity_ns = 4000000\r
-    kernel.secure_boot = 0\r
-    kernel.sem = 32000 1024000000      500     32000\r
-    kernel.sem_next_id = -1\r
-    kernel.sg-big-buff = 32768\r
-    kernel.shm_next_id = -1\r
-    kernel.shm_rmid_forced = 0\r
-    kernel.shmall = 18446744073692774399\r
-    kernel.shmmax = 8589934592\r
-    kernel.shmmni = 4096\r
-    kernel.soft_watchdog = 1\r
-    kernel.softlockup_all_cpu_backtrace = 0\r
-    kernel.softlockup_panic = 0\r
-    kernel.stack_tracer_enabled = 0\r
-    kernel.sysctl_writes_strict = 0\r
-    kernel.sysrq = 176\r
-    kernel.tainted = 12288\r
-    kernel.threads-max = 4126960\r
-    kernel.timer_migration = 1\r
-    kernel.traceoff_on_warning = 0\r
-    kernel.tracepoint_printk = 0\r
-    kernel.unknown_nmi_panic = 0\r
-    kernel.unprivileged_bpf_disabled = 0\r
-    kernel.unprivileged_userns_apparmor_policy = 1\r
-    kernel.unprivileged_userns_clone = 1\r
-    kernel.usermodehelper.bset = 4294967295    63\r
-    kernel.usermodehelper.inheritable = 4294967295     63\r
-    kernel.version = #93-Ubuntu SMP Fri Mar 31 14:07:41 UTC 2017\r
-    kernel.watchdog = 1\r
-    kernel.watchdog_cpumask = 0,18\r
-    kernel.watchdog_thresh = 10\r
-    kernel.yama.ptrace_scope = 1\r
-    net.core.bpf_jit_enable = 0\r
-    net.core.busy_poll = 0\r
-    net.core.busy_read = 0\r
-    net.core.default_qdisc = pfifo_fast\r
-    net.core.dev_weight = 64\r
-    net.core.flow_limit_cpu_bitmap = 0,00000000\r
-    net.core.flow_limit_table_len = 4096\r
-    net.core.max_skb_frags = 17\r
-    net.core.message_burst = 10\r
-    net.core.message_cost = 5\r
-    net.core.netdev_budget = 300\r
-    net.core.netdev_max_backlog = 1000\r
-    net.core.netdev_rss_key = 29:61:61:e6:4e:d5:d0:a2:dc:81:6a:c8:44:1b:e2:8d:c8:6f:6a:2b:64:62:98:08:bb:63:48:8e:96:d1:6a:15:32:ca:da:8d:3c:0a:ee:a6:f8:59:be:63:33:47:e9:cf:d7:01:e3:18\r
-    net.core.netdev_tstamp_prequeue = 1\r
-    net.core.optmem_max = 20480\r
-    net.core.rmem_default = 212992\r
-    net.core.rmem_max = 212992\r
-    net.core.rps_sock_flow_entries = 0\r
-    net.core.somaxconn = 128\r
-    net.core.tstamp_allow_data = 1\r
-    net.core.warnings = 0\r
-    net.core.wmem_default = 212992\r
-    net.core.wmem_max = 212992\r
-    net.core.xfrm_acq_expires = 30\r
-    net.core.xfrm_aevent_etime = 10\r
-    net.core.xfrm_aevent_rseqth = 2\r
-    net.core.xfrm_larval_drop = 1\r
-    net.fan.vxlan = 4\r
-    net.ipv4.cipso_cache_bucket_size = 10\r
-    net.ipv4.cipso_cache_enable = 1\r
-    net.ipv4.cipso_rbm_optfmt = 0\r
-    net.ipv4.cipso_rbm_strictvalid = 1\r
-    net.ipv4.conf.all.accept_local = 0\r
-    net.ipv4.conf.all.accept_redirects = 0\r
-    net.ipv4.conf.all.accept_source_route = 0\r
-    net.ipv4.conf.all.arp_accept = 0\r
-    net.ipv4.conf.all.arp_announce = 0\r
-    net.ipv4.conf.all.arp_filter = 0\r
-    net.ipv4.conf.all.arp_ignore = 0\r
-    net.ipv4.conf.all.arp_notify = 0\r
-    net.ipv4.conf.all.bootp_relay = 0\r
-    net.ipv4.conf.all.disable_policy = 0\r
-    net.ipv4.conf.all.disable_xfrm = 0\r
-    net.ipv4.conf.all.force_igmp_version = 0\r
-    net.ipv4.conf.all.forwarding = 1\r
-    net.ipv4.conf.all.igmpv2_unsolicited_report_interval = 10000\r
-    net.ipv4.conf.all.igmpv3_unsolicited_report_interval = 1000\r
-    net.ipv4.conf.all.ignore_routes_with_linkdown = 0\r
-    net.ipv4.conf.all.log_martians = 0\r
-    net.ipv4.conf.all.mc_forwarding = 0\r
-    net.ipv4.conf.all.medium_id = 0\r
-    net.ipv4.conf.all.promote_secondaries = 0\r
-    net.ipv4.conf.all.proxy_arp = 0\r
-    net.ipv4.conf.all.proxy_arp_pvlan = 0\r
-    net.ipv4.conf.all.route_localnet = 0\r
-    net.ipv4.conf.all.rp_filter = 1\r
-    net.ipv4.conf.all.secure_redirects = 1\r
-    net.ipv4.conf.all.send_redirects = 1\r
-    net.ipv4.conf.all.shared_media = 1\r
-    net.ipv4.conf.all.src_valid_mark = 0\r
-    net.ipv4.conf.all.tag = 0\r
-    net.ipv4.conf.default.accept_local = 0\r
-    net.ipv4.conf.default.accept_redirects = 1\r
-    net.ipv4.conf.default.accept_source_route = 1\r
-    net.ipv4.conf.default.arp_accept = 0\r
-    net.ipv4.conf.default.arp_announce = 0\r
-    net.ipv4.conf.default.arp_filter = 0\r
-    net.ipv4.conf.default.arp_ignore = 0\r
-    net.ipv4.conf.default.arp_notify = 0\r
-    net.ipv4.conf.default.bootp_relay = 0\r
-    net.ipv4.conf.default.disable_policy = 0\r
-    net.ipv4.conf.default.disable_xfrm = 0\r
-    net.ipv4.conf.default.force_igmp_version = 0\r
-    net.ipv4.conf.default.forwarding = 1\r
-    net.ipv4.conf.default.igmpv2_unsolicited_report_interval = 10000\r
-    net.ipv4.conf.default.igmpv3_unsolicited_report_interval = 1000\r
-    net.ipv4.conf.default.ignore_routes_with_linkdown = 0\r
-    net.ipv4.conf.default.log_martians = 0\r
-    net.ipv4.conf.default.mc_forwarding = 0\r
-    net.ipv4.conf.default.medium_id = 0\r
-    net.ipv4.conf.default.promote_secondaries = 0\r
-    net.ipv4.conf.default.proxy_arp = 0\r
-    net.ipv4.conf.default.proxy_arp_pvlan = 0\r
-    net.ipv4.conf.default.route_localnet = 0\r
-    net.ipv4.conf.default.rp_filter = 1\r
-    net.ipv4.conf.default.secure_redirects = 1\r
-    net.ipv4.conf.default.send_redirects = 1\r
-    net.ipv4.conf.default.shared_media = 1\r
-    net.ipv4.conf.default.src_valid_mark = 0\r
-    net.ipv4.conf.default.tag = 0\r
-    net.ipv4.conf.enp25s0f0.accept_local = 0\r
-    net.ipv4.conf.enp25s0f0.accept_redirects = 1\r
-    net.ipv4.conf.enp25s0f0.accept_source_route = 1\r
-    net.ipv4.conf.enp25s0f0.arp_accept = 0\r
-    net.ipv4.conf.enp25s0f0.arp_announce = 0\r
-    net.ipv4.conf.enp25s0f0.arp_filter = 0\r
-    net.ipv4.conf.enp25s0f0.arp_ignore = 0\r
-    net.ipv4.conf.enp25s0f0.arp_notify = 0\r
-    net.ipv4.conf.enp25s0f0.bootp_relay = 0\r
-    net.ipv4.conf.enp25s0f0.disable_policy = 0\r
-    net.ipv4.conf.enp25s0f0.disable_xfrm = 0\r
-    net.ipv4.conf.enp25s0f0.force_igmp_version = 0\r
-    net.ipv4.conf.enp25s0f0.forwarding = 1\r
-    net.ipv4.conf.enp25s0f0.igmpv2_unsolicited_report_interval = 10000\r
-    net.ipv4.conf.enp25s0f0.igmpv3_unsolicited_report_interval = 1000\r
-    net.ipv4.conf.enp25s0f0.ignore_routes_with_linkdown = 0\r
-    net.ipv4.conf.enp25s0f0.log_martians = 0\r
-    net.ipv4.conf.enp25s0f0.mc_forwarding = 0\r
-    net.ipv4.conf.enp25s0f0.medium_id = 0\r
-    net.ipv4.conf.enp25s0f0.promote_secondaries = 0\r
-    net.ipv4.conf.enp25s0f0.proxy_arp = 0\r
-    net.ipv4.conf.enp25s0f0.proxy_arp_pvlan = 0\r
-    net.ipv4.conf.enp25s0f0.route_localnet = 0\r
-    net.ipv4.conf.enp25s0f0.rp_filter = 1\r
-    net.ipv4.conf.enp25s0f0.secure_redirects = 1\r
-    net.ipv4.conf.enp25s0f0.send_redirects = 1\r
-    net.ipv4.conf.enp25s0f0.shared_media = 1\r
-    net.ipv4.conf.enp25s0f0.src_valid_mark = 0\r
-    net.ipv4.conf.enp25s0f0.tag = 0\r
-    net.ipv4.conf.lo.accept_local = 0\r
-    net.ipv4.conf.lo.accept_redirects = 1\r
-    net.ipv4.conf.lo.accept_source_route = 1\r
-    net.ipv4.conf.lo.arp_accept = 0\r
-    net.ipv4.conf.lo.arp_announce = 0\r
-    net.ipv4.conf.lo.arp_filter = 0\r
-    net.ipv4.conf.lo.arp_ignore = 0\r
-    net.ipv4.conf.lo.arp_notify = 0\r
-    net.ipv4.conf.lo.bootp_relay = 0\r
-    net.ipv4.conf.lo.disable_policy = 1\r
-    net.ipv4.conf.lo.disable_xfrm = 1\r
-    net.ipv4.conf.lo.force_igmp_version = 0\r
-    net.ipv4.conf.lo.forwarding = 1\r
-    net.ipv4.conf.lo.igmpv2_unsolicited_report_interval = 10000\r
-    net.ipv4.conf.lo.igmpv3_unsolicited_report_interval = 1000\r
-    net.ipv4.conf.lo.ignore_routes_with_linkdown = 0\r
-    net.ipv4.conf.lo.log_martians = 0\r
-    net.ipv4.conf.lo.mc_forwarding = 0\r
-    net.ipv4.conf.lo.medium_id = 0\r
-    net.ipv4.conf.lo.promote_secondaries = 0\r
-    net.ipv4.conf.lo.proxy_arp = 0\r
-    net.ipv4.conf.lo.proxy_arp_pvlan = 0\r
-    net.ipv4.conf.lo.route_localnet = 0\r
-    net.ipv4.conf.lo.rp_filter = 0\r
-    net.ipv4.conf.lo.secure_redirects = 1\r
-    net.ipv4.conf.lo.send_redirects = 1\r
-    net.ipv4.conf.lo.shared_media = 1\r
-    net.ipv4.conf.lo.src_valid_mark = 0\r
-    net.ipv4.conf.lo.tag = 0\r
-    net.ipv4.conf.lxcbr0.accept_local = 0\r
-    net.ipv4.conf.lxcbr0.accept_redirects = 1\r
-    net.ipv4.conf.lxcbr0.accept_source_route = 1\r
-    net.ipv4.conf.lxcbr0.arp_accept = 0\r
-    net.ipv4.conf.lxcbr0.arp_announce = 0\r
-    net.ipv4.conf.lxcbr0.arp_filter = 0\r
-    net.ipv4.conf.lxcbr0.arp_ignore = 0\r
-    net.ipv4.conf.lxcbr0.arp_notify = 0\r
-    net.ipv4.conf.lxcbr0.bootp_relay = 0\r
-    net.ipv4.conf.lxcbr0.disable_policy = 0\r
-    net.ipv4.conf.lxcbr0.disable_xfrm = 0\r
-    net.ipv4.conf.lxcbr0.force_igmp_version = 0\r
-    net.ipv4.conf.lxcbr0.forwarding = 1\r
-    net.ipv4.conf.lxcbr0.igmpv2_unsolicited_report_interval = 10000\r
-    net.ipv4.conf.lxcbr0.igmpv3_unsolicited_report_interval = 1000\r
-    net.ipv4.conf.lxcbr0.ignore_routes_with_linkdown = 0\r
-    net.ipv4.conf.lxcbr0.log_martians = 0\r
-    net.ipv4.conf.lxcbr0.mc_forwarding = 0\r
-    net.ipv4.conf.lxcbr0.medium_id = 0\r
-    net.ipv4.conf.lxcbr0.promote_secondaries = 0\r
-    net.ipv4.conf.lxcbr0.proxy_arp = 0\r
-    net.ipv4.conf.lxcbr0.proxy_arp_pvlan = 0\r
-    net.ipv4.conf.lxcbr0.route_localnet = 0\r
-    net.ipv4.conf.lxcbr0.rp_filter = 1\r
-    net.ipv4.conf.lxcbr0.secure_redirects = 1\r
-    net.ipv4.conf.lxcbr0.send_redirects = 1\r
-    net.ipv4.conf.lxcbr0.shared_media = 1\r
-    net.ipv4.conf.lxcbr0.src_valid_mark = 0\r
-    net.ipv4.conf.lxcbr0.tag = 0\r
-    net.ipv4.fwmark_reflect = 0\r
-    net.ipv4.icmp_echo_ignore_all = 0\r
-    net.ipv4.icmp_echo_ignore_broadcasts = 1\r
-    net.ipv4.icmp_errors_use_inbound_ifaddr = 0\r
-    net.ipv4.icmp_ignore_bogus_error_responses = 1\r
-    net.ipv4.icmp_msgs_burst = 50\r
-    net.ipv4.icmp_msgs_per_sec = 1000\r
-    net.ipv4.icmp_ratelimit = 1000\r
-    net.ipv4.icmp_ratemask = 6168\r
-    net.ipv4.igmp_link_local_mcast_reports = 1\r
-    net.ipv4.igmp_max_memberships = 20\r
-    net.ipv4.igmp_max_msf = 10\r
-    net.ipv4.igmp_qrv = 2\r
-    net.ipv4.inet_peer_maxttl = 600\r
-    net.ipv4.inet_peer_minttl = 120\r
-    net.ipv4.inet_peer_threshold = 65664\r
-    net.ipv4.ip_default_ttl = 64\r
-    net.ipv4.ip_dynaddr = 0\r
-    net.ipv4.ip_early_demux = 1\r
-    net.ipv4.ip_forward = 1\r
-    net.ipv4.ip_forward_use_pmtu = 0\r
-    net.ipv4.ip_local_port_range = 32768       60999\r
-    net.ipv4.ip_local_reserved_ports =\r
-    net.ipv4.ip_no_pmtu_disc = 0\r
-    net.ipv4.ip_nonlocal_bind = 0\r
-    net.ipv4.ipfrag_high_thresh = 4194304\r
-    net.ipv4.ipfrag_low_thresh = 3145728\r
-    net.ipv4.ipfrag_max_dist = 64\r
-    net.ipv4.ipfrag_secret_interval = 0\r
-    net.ipv4.ipfrag_time = 30\r
-    net.ipv4.neigh.default.anycast_delay = 100\r
-    net.ipv4.neigh.default.app_solicit = 0\r
-    net.ipv4.neigh.default.base_reachable_time_ms = 30000\r
-    net.ipv4.neigh.default.delay_first_probe_time = 5\r
-    net.ipv4.neigh.default.gc_interval = 30\r
-    net.ipv4.neigh.default.gc_stale_time = 60\r
-    net.ipv4.neigh.default.gc_thresh1 = 128\r
-    net.ipv4.neigh.default.gc_thresh2 = 512\r
-    net.ipv4.neigh.default.gc_thresh3 = 1024\r
-    net.ipv4.neigh.default.locktime = 100\r
-    net.ipv4.neigh.default.mcast_resolicit = 0\r
-    net.ipv4.neigh.default.mcast_solicit = 3\r
-    net.ipv4.neigh.default.proxy_delay = 80\r
-    net.ipv4.neigh.default.proxy_qlen = 64\r
-    net.ipv4.neigh.default.retrans_time_ms = 1000\r
-    net.ipv4.neigh.default.ucast_solicit = 3\r
-    net.ipv4.neigh.default.unres_qlen = 31\r
-    net.ipv4.neigh.default.unres_qlen_bytes = 65536\r
-    net.ipv4.neigh.enp25s0f0.anycast_delay = 100\r
-    net.ipv4.neigh.enp25s0f0.app_solicit = 0\r
-    net.ipv4.neigh.enp25s0f0.base_reachable_time_ms = 30000\r
-    net.ipv4.neigh.enp25s0f0.delay_first_probe_time = 5\r
-    net.ipv4.neigh.enp25s0f0.gc_stale_time = 60\r
-    net.ipv4.neigh.enp25s0f0.locktime = 100\r
-    net.ipv4.neigh.enp25s0f0.mcast_resolicit = 0\r
-    net.ipv4.neigh.enp25s0f0.mcast_solicit = 3\r
-    net.ipv4.neigh.enp25s0f0.proxy_delay = 80\r
-    net.ipv4.neigh.enp25s0f0.proxy_qlen = 64\r
-    net.ipv4.neigh.enp25s0f0.retrans_time_ms = 1000\r
-    net.ipv4.neigh.enp25s0f0.ucast_solicit = 3\r
-    net.ipv4.neigh.enp25s0f0.unres_qlen = 31\r
-    net.ipv4.neigh.enp25s0f0.unres_qlen_bytes = 65536\r
-    net.ipv4.neigh.lo.anycast_delay = 100\r
-    net.ipv4.neigh.lo.app_solicit = 0\r
-    net.ipv4.neigh.lo.base_reachable_time_ms = 30000\r
-    net.ipv4.neigh.lo.delay_first_probe_time = 5\r
-    net.ipv4.neigh.lo.gc_stale_time = 60\r
-    net.ipv4.neigh.lo.locktime = 100\r
-    net.ipv4.neigh.lo.mcast_resolicit = 0\r
-    net.ipv4.neigh.lo.mcast_solicit = 3\r
-    net.ipv4.neigh.lo.proxy_delay = 80\r
-    net.ipv4.neigh.lo.proxy_qlen = 64\r
-    net.ipv4.neigh.lo.retrans_time_ms = 1000\r
-    net.ipv4.neigh.lo.ucast_solicit = 3\r
-    net.ipv4.neigh.lo.unres_qlen = 31\r
-    net.ipv4.neigh.lo.unres_qlen_bytes = 65536\r
-    net.ipv4.neigh.lxcbr0.anycast_delay = 100\r
-    net.ipv4.neigh.lxcbr0.app_solicit = 0\r
-    net.ipv4.neigh.lxcbr0.base_reachable_time_ms = 30000\r
-    net.ipv4.neigh.lxcbr0.delay_first_probe_time = 5\r
-    net.ipv4.neigh.lxcbr0.gc_stale_time = 60\r
-    net.ipv4.neigh.lxcbr0.locktime = 100\r
-    net.ipv4.neigh.lxcbr0.mcast_resolicit = 0\r
-    net.ipv4.neigh.lxcbr0.mcast_solicit = 3\r
-    net.ipv4.neigh.lxcbr0.proxy_delay = 80\r
-    net.ipv4.neigh.lxcbr0.proxy_qlen = 64\r
-    net.ipv4.neigh.lxcbr0.retrans_time_ms = 1000\r
-    net.ipv4.neigh.lxcbr0.ucast_solicit = 3\r
-    net.ipv4.neigh.lxcbr0.unres_qlen = 31\r
-    net.ipv4.neigh.lxcbr0.unres_qlen_bytes = 65536\r
-    net.ipv4.ping_group_range = 1      0\r
-    net.ipv4.route.error_burst = 1250\r
-    net.ipv4.route.error_cost = 250\r
-    net.ipv4.route.gc_elasticity = 8\r
-    net.ipv4.route.gc_interval = 60\r
-    net.ipv4.route.gc_min_interval = 0\r
-    net.ipv4.route.gc_min_interval_ms = 500\r
-    net.ipv4.route.gc_thresh = -1\r
-    net.ipv4.route.gc_timeout = 300\r
-    net.ipv4.route.max_size = 2147483647\r
-    net.ipv4.route.min_adv_mss = 256\r
-    net.ipv4.route.min_pmtu = 552\r
-    net.ipv4.route.mtu_expires = 600\r
-    net.ipv4.route.redirect_load = 5\r
-    net.ipv4.route.redirect_number = 9\r
-    net.ipv4.route.redirect_silence = 5120\r
-    net.ipv4.tcp_abort_on_overflow = 0\r
-    net.ipv4.tcp_adv_win_scale = 1\r
-    net.ipv4.tcp_allowed_congestion_control = cubic reno\r
-    net.ipv4.tcp_app_win = 31\r
-    net.ipv4.tcp_autocorking = 1\r
-    net.ipv4.tcp_available_congestion_control = cubic reno\r
-    net.ipv4.tcp_base_mss = 1024\r
-    net.ipv4.tcp_challenge_ack_limit = 1000\r
-    net.ipv4.tcp_congestion_control = cubic\r
-    net.ipv4.tcp_dsack = 1\r
-    net.ipv4.tcp_early_retrans = 3\r
-    net.ipv4.tcp_ecn = 2\r
-    net.ipv4.tcp_ecn_fallback = 1\r
-    net.ipv4.tcp_fack = 1\r
-    net.ipv4.tcp_fastopen = 1\r
-    net.ipv4.tcp_fastopen_key = 00000000-00000000-00000000-00000000\r
-    net.ipv4.tcp_fin_timeout = 60\r
-    net.ipv4.tcp_frto = 2\r
-    net.ipv4.tcp_fwmark_accept = 0\r
-    net.ipv4.tcp_invalid_ratelimit = 500\r
-    net.ipv4.tcp_keepalive_intvl = 75\r
-    net.ipv4.tcp_keepalive_probes = 9\r
-    net.ipv4.tcp_keepalive_time = 7200\r
-    net.ipv4.tcp_limit_output_bytes = 262144\r
-    net.ipv4.tcp_low_latency = 0\r
-    net.ipv4.tcp_max_orphans = 262144\r
-    net.ipv4.tcp_max_reordering = 300\r
-    net.ipv4.tcp_max_syn_backlog = 2048\r
-    net.ipv4.tcp_max_tw_buckets = 262144\r
-    net.ipv4.tcp_mem = 6188856 8251809 12377712\r
-    net.ipv4.tcp_min_rtt_wlen = 300\r
-    net.ipv4.tcp_min_tso_segs = 2\r
-    net.ipv4.tcp_moderate_rcvbuf = 1\r
-    net.ipv4.tcp_mtu_probing = 0\r
-    net.ipv4.tcp_no_metrics_save = 0\r
-    net.ipv4.tcp_notsent_lowat = -1\r
-    net.ipv4.tcp_orphan_retries = 0\r
-    net.ipv4.tcp_pacing_ca_ratio = 120\r
-    net.ipv4.tcp_pacing_ss_ratio = 200\r
-    net.ipv4.tcp_probe_interval = 600\r
-    net.ipv4.tcp_probe_threshold = 8\r
-    net.ipv4.tcp_recovery = 1\r
-    net.ipv4.tcp_reordering = 3\r
-    net.ipv4.tcp_retrans_collapse = 1\r
-    net.ipv4.tcp_retries1 = 3\r
-    net.ipv4.tcp_retries2 = 15\r
-    net.ipv4.tcp_rfc1337 = 0\r
-    net.ipv4.tcp_rmem = 4096   87380   6291456\r
-    net.ipv4.tcp_sack = 1\r
-    net.ipv4.tcp_slow_start_after_idle = 1\r
-    net.ipv4.tcp_stdurg = 0\r
-    net.ipv4.tcp_syn_retries = 6\r
-    net.ipv4.tcp_synack_retries = 5\r
-    net.ipv4.tcp_syncookies = 1\r
-    net.ipv4.tcp_thin_dupack = 0\r
-    net.ipv4.tcp_thin_linear_timeouts = 0\r
-    net.ipv4.tcp_timestamps = 1\r
-    net.ipv4.tcp_tso_win_divisor = 3\r
-    net.ipv4.tcp_tw_recycle = 0\r
-    net.ipv4.tcp_tw_reuse = 0\r
-    net.ipv4.tcp_window_scaling = 1\r
-    net.ipv4.tcp_wmem = 4096   16384   4194304\r
-    net.ipv4.tcp_workaround_signed_windows = 0\r
-    net.ipv4.udp_mem = 12377712        16503618        24755424\r
-    net.ipv4.udp_rmem_min = 4096\r
-    net.ipv4.udp_wmem_min = 4096\r
-    net.ipv4.xfrm4_gc_thresh = 2147483647\r
-    net.ipv6.anycast_src_echo_reply = 0\r
-    net.ipv6.auto_flowlabels = 1\r
-    net.ipv6.bindv6only = 0\r
-    net.ipv6.conf.all.accept_dad = 1\r
-    net.ipv6.conf.all.accept_ra = 1\r
-    net.ipv6.conf.all.accept_ra_defrtr = 1\r
-    net.ipv6.conf.all.accept_ra_from_local = 0\r
-    net.ipv6.conf.all.accept_ra_min_hop_limit = 1\r
-    net.ipv6.conf.all.accept_ra_mtu = 1\r
-    net.ipv6.conf.all.accept_ra_pinfo = 1\r
-    net.ipv6.conf.all.accept_ra_rt_info_max_plen = 0\r
-    net.ipv6.conf.all.accept_ra_rtr_pref = 1\r
-    net.ipv6.conf.all.accept_redirects = 1\r
-    net.ipv6.conf.all.accept_source_route = 0\r
-    net.ipv6.conf.all.autoconf = 1\r
-    net.ipv6.conf.all.dad_transmits = 1\r
-    net.ipv6.conf.all.disable_ipv6 = 0\r
-    net.ipv6.conf.all.force_mld_version = 0\r
-    net.ipv6.conf.all.force_tllao = 0\r
-    net.ipv6.conf.all.forwarding = 0\r
-    net.ipv6.conf.all.hop_limit = 64\r
-    net.ipv6.conf.all.ignore_routes_with_linkdown = 0\r
-    net.ipv6.conf.all.max_addresses = 16\r
-    net.ipv6.conf.all.max_desync_factor = 600\r
-    net.ipv6.conf.all.mc_forwarding = 0\r
-    net.ipv6.conf.all.mldv1_unsolicited_report_interval = 10000\r
-    net.ipv6.conf.all.mldv2_unsolicited_report_interval = 1000\r
-    net.ipv6.conf.all.mtu = 1280\r
-    net.ipv6.conf.all.ndisc_notify = 0\r
-    net.ipv6.conf.all.proxy_ndp = 0\r
-    net.ipv6.conf.all.regen_max_retry = 3\r
-    net.ipv6.conf.all.router_probe_interval = 60\r
-    net.ipv6.conf.all.router_solicitation_delay = 1\r
-    net.ipv6.conf.all.router_solicitation_interval = 4\r
-    net.ipv6.conf.all.router_solicitations = 3\r
-    sysctl: reading key "net.ipv6.conf.all.stable_secret"\r
-    net.ipv6.conf.all.suppress_frag_ndisc = 1\r
-    net.ipv6.conf.all.temp_prefered_lft = 86400\r
-    net.ipv6.conf.all.temp_valid_lft = 604800\r
-    net.ipv6.conf.all.use_oif_addrs_only = 0\r
-    net.ipv6.conf.all.use_tempaddr = 2\r
-    net.ipv6.conf.default.accept_dad = 1\r
-    net.ipv6.conf.default.accept_ra = 1\r
-    net.ipv6.conf.default.accept_ra_defrtr = 1\r
-    net.ipv6.conf.default.accept_ra_from_local = 0\r
-    net.ipv6.conf.default.accept_ra_min_hop_limit = 1\r
-    net.ipv6.conf.default.accept_ra_mtu = 1\r
-    net.ipv6.conf.default.accept_ra_pinfo = 1\r
-    net.ipv6.conf.default.accept_ra_rt_info_max_plen = 0\r
-    net.ipv6.conf.default.accept_ra_rtr_pref = 1\r
-    net.ipv6.conf.default.accept_redirects = 1\r
-    net.ipv6.conf.default.accept_source_route = 0\r
-    net.ipv6.conf.default.autoconf = 1\r
-    net.ipv6.conf.default.dad_transmits = 1\r
-    net.ipv6.conf.default.disable_ipv6 = 0\r
-    net.ipv6.conf.default.force_mld_version = 0\r
-    net.ipv6.conf.default.force_tllao = 0\r
-    net.ipv6.conf.default.forwarding = 0\r
-    net.ipv6.conf.default.hop_limit = 64\r
-    net.ipv6.conf.default.ignore_routes_with_linkdown = 0\r
-    net.ipv6.conf.default.max_addresses = 16\r
-    net.ipv6.conf.default.max_desync_factor = 600\r
-    net.ipv6.conf.default.mc_forwarding = 0\r
-    net.ipv6.conf.default.mldv1_unsolicited_report_interval = 10000\r
-    net.ipv6.conf.default.mldv2_unsolicited_report_interval = 1000\r
-    net.ipv6.conf.default.mtu = 1280\r
-    net.ipv6.conf.default.ndisc_notify = 0\r
-    net.ipv6.conf.default.proxy_ndp = 0\r
-    net.ipv6.conf.default.regen_max_retry = 3\r
-    net.ipv6.conf.default.router_probe_interval = 60\r
-    net.ipv6.conf.default.router_solicitation_delay = 1\r
-    net.ipv6.conf.default.router_solicitation_interval = 4\r
-    net.ipv6.conf.default.router_solicitations = 3\r
-    sysctl: reading key "net.ipv6.conf.default.stable_secret"\r
-    net.ipv6.conf.default.suppress_frag_ndisc = 1\r
-    net.ipv6.conf.default.temp_prefered_lft = 86400\r
-    net.ipv6.conf.default.temp_valid_lft = 604800\r
-    net.ipv6.conf.default.use_oif_addrs_only = 0\r
-    net.ipv6.conf.default.use_tempaddr = 2\r
-    net.ipv6.conf.enp25s0f0.accept_dad = 1\r
-    net.ipv6.conf.enp25s0f0.accept_ra = 1\r
-    net.ipv6.conf.enp25s0f0.accept_ra_defrtr = 1\r
-    net.ipv6.conf.enp25s0f0.accept_ra_from_local = 0\r
-    net.ipv6.conf.enp25s0f0.accept_ra_min_hop_limit = 1\r
-    net.ipv6.conf.enp25s0f0.accept_ra_mtu = 1\r
-    net.ipv6.conf.enp25s0f0.accept_ra_pinfo = 1\r
-    net.ipv6.conf.enp25s0f0.accept_ra_rt_info_max_plen = 0\r
-    net.ipv6.conf.enp25s0f0.accept_ra_rtr_pref = 1\r
-    net.ipv6.conf.enp25s0f0.accept_redirects = 1\r
-    net.ipv6.conf.enp25s0f0.accept_source_route = 0\r
-    net.ipv6.conf.enp25s0f0.autoconf = 1\r
-    net.ipv6.conf.enp25s0f0.dad_transmits = 1\r
-    net.ipv6.conf.enp25s0f0.disable_ipv6 = 0\r
-    net.ipv6.conf.enp25s0f0.force_mld_version = 0\r
-    net.ipv6.conf.enp25s0f0.force_tllao = 0\r
-    net.ipv6.conf.enp25s0f0.forwarding = 0\r
-    net.ipv6.conf.enp25s0f0.hop_limit = 64\r
-    net.ipv6.conf.enp25s0f0.ignore_routes_with_linkdown = 0\r
-    net.ipv6.conf.enp25s0f0.max_addresses = 16\r
-    net.ipv6.conf.enp25s0f0.max_desync_factor = 600\r
-    net.ipv6.conf.enp25s0f0.mc_forwarding = 0\r
-    net.ipv6.conf.enp25s0f0.mldv1_unsolicited_report_interval = 10000\r
-    net.ipv6.conf.enp25s0f0.mldv2_unsolicited_report_interval = 1000\r
-    net.ipv6.conf.enp25s0f0.mtu = 1500\r
-    net.ipv6.conf.enp25s0f0.ndisc_notify = 0\r
-    net.ipv6.conf.enp25s0f0.proxy_ndp = 0\r
-    net.ipv6.conf.enp25s0f0.regen_max_retry = 3\r
-    net.ipv6.conf.enp25s0f0.router_probe_interval = 60\r
-    net.ipv6.conf.enp25s0f0.router_solicitation_delay = 1\r
-    net.ipv6.conf.enp25s0f0.router_solicitation_interval = 4\r
-    net.ipv6.conf.enp25s0f0.router_solicitations = 3\r
-    sysctl: reading key "net.ipv6.conf.enp25s0f0.stable_secret"\r
-    net.ipv6.conf.enp25s0f0.suppress_frag_ndisc = 1\r
-    net.ipv6.conf.enp25s0f0.temp_prefered_lft = 86400\r
-    net.ipv6.conf.enp25s0f0.temp_valid_lft = 604800\r
-    net.ipv6.conf.enp25s0f0.use_oif_addrs_only = 0\r
-    net.ipv6.conf.enp25s0f0.use_tempaddr = 0\r
-    net.ipv6.conf.lo.accept_dad = -1\r
-    net.ipv6.conf.lo.accept_ra = 1\r
-    net.ipv6.conf.lo.accept_ra_defrtr = 1\r
-    net.ipv6.conf.lo.accept_ra_from_local = 0\r
-    net.ipv6.conf.lo.accept_ra_min_hop_limit = 1\r
-    net.ipv6.conf.lo.accept_ra_mtu = 1\r
-    net.ipv6.conf.lo.accept_ra_pinfo = 1\r
-    net.ipv6.conf.lo.accept_ra_rt_info_max_plen = 0\r
-    net.ipv6.conf.lo.accept_ra_rtr_pref = 1\r
-    net.ipv6.conf.lo.accept_redirects = 1\r
-    net.ipv6.conf.lo.accept_source_route = 0\r
-    net.ipv6.conf.lo.autoconf = 1\r
-    net.ipv6.conf.lo.dad_transmits = 1\r
-    net.ipv6.conf.lo.disable_ipv6 = 0\r
-    net.ipv6.conf.lo.force_mld_version = 0\r
-    net.ipv6.conf.lo.force_tllao = 0\r
-    net.ipv6.conf.lo.forwarding = 0\r
-    net.ipv6.conf.lo.hop_limit = 64\r
-    net.ipv6.conf.lo.ignore_routes_with_linkdown = 0\r
-    net.ipv6.conf.lo.max_addresses = 16\r
-    net.ipv6.conf.lo.max_desync_factor = 600\r
-    net.ipv6.conf.lo.mc_forwarding = 0\r
-    net.ipv6.conf.lo.mldv1_unsolicited_report_interval = 10000\r
-    net.ipv6.conf.lo.mldv2_unsolicited_report_interval = 1000\r
-    net.ipv6.conf.lo.mtu = 65536\r
-    net.ipv6.conf.lo.ndisc_notify = 0\r
-    net.ipv6.conf.lo.proxy_ndp = 0\r
-    net.ipv6.conf.lo.regen_max_retry = 3\r
-    net.ipv6.conf.lo.router_probe_interval = 60\r
-    net.ipv6.conf.lo.router_solicitation_delay = 1\r
-    net.ipv6.conf.lo.router_solicitation_interval = 4\r
-    net.ipv6.conf.lo.router_solicitations = 3\r
-    sysctl: reading key "net.ipv6.conf.lo.stable_secret"\r
-    net.ipv6.conf.lo.suppress_frag_ndisc = 1\r
-    net.ipv6.conf.lo.temp_prefered_lft = 86400\r
-    net.ipv6.conf.lo.temp_valid_lft = 604800\r
-    net.ipv6.conf.lo.use_oif_addrs_only = 0\r
-    net.ipv6.conf.lo.use_tempaddr = -1\r
-    net.ipv6.conf.lxcbr0.accept_dad = 0\r
-    net.ipv6.conf.lxcbr0.accept_ra = 1\r
-    net.ipv6.conf.lxcbr0.accept_ra_defrtr = 1\r
-    net.ipv6.conf.lxcbr0.accept_ra_from_local = 0\r
-    net.ipv6.conf.lxcbr0.accept_ra_min_hop_limit = 1\r
-    net.ipv6.conf.lxcbr0.accept_ra_mtu = 1\r
-    net.ipv6.conf.lxcbr0.accept_ra_pinfo = 1\r
-    net.ipv6.conf.lxcbr0.accept_ra_rt_info_max_plen = 0\r
-    net.ipv6.conf.lxcbr0.accept_ra_rtr_pref = 1\r
-    net.ipv6.conf.lxcbr0.accept_redirects = 1\r
-    net.ipv6.conf.lxcbr0.accept_source_route = 0\r
-    net.ipv6.conf.lxcbr0.autoconf = 1\r
-    net.ipv6.conf.lxcbr0.dad_transmits = 1\r
-    net.ipv6.conf.lxcbr0.disable_ipv6 = 0\r
-    net.ipv6.conf.lxcbr0.force_mld_version = 0\r
-    net.ipv6.conf.lxcbr0.force_tllao = 0\r
-    net.ipv6.conf.lxcbr0.forwarding = 0\r
-    net.ipv6.conf.lxcbr0.hop_limit = 64\r
-    net.ipv6.conf.lxcbr0.ignore_routes_with_linkdown = 0\r
-    net.ipv6.conf.lxcbr0.max_addresses = 16\r
-    net.ipv6.conf.lxcbr0.max_desync_factor = 600\r
-    net.ipv6.conf.lxcbr0.mc_forwarding = 0\r
-    net.ipv6.conf.lxcbr0.mldv1_unsolicited_report_interval = 10000\r
-    net.ipv6.conf.lxcbr0.mldv2_unsolicited_report_interval = 1000\r
-    net.ipv6.conf.lxcbr0.mtu = 1500\r
-    net.ipv6.conf.lxcbr0.ndisc_notify = 0\r
-    net.ipv6.conf.lxcbr0.proxy_ndp = 0\r
-    net.ipv6.conf.lxcbr0.regen_max_retry = 3\r
-    net.ipv6.conf.lxcbr0.router_probe_interval = 60\r
-    net.ipv6.conf.lxcbr0.router_solicitation_delay = 1\r
-    net.ipv6.conf.lxcbr0.router_solicitation_interval = 4\r
-    net.ipv6.conf.lxcbr0.router_solicitations = 3\r
-    sysctl: reading key "net.ipv6.conf.lxcbr0.stable_secret"\r
-    net.ipv6.conf.lxcbr0.suppress_frag_ndisc = 1\r
-    net.ipv6.conf.lxcbr0.temp_prefered_lft = 86400\r
-    net.ipv6.conf.lxcbr0.temp_valid_lft = 604800\r
-    net.ipv6.conf.lxcbr0.use_oif_addrs_only = 0\r
-    net.ipv6.conf.lxcbr0.use_tempaddr = 2\r
-    net.ipv6.flowlabel_consistency = 1\r
-    net.ipv6.flowlabel_state_ranges = 0\r
-    net.ipv6.fwmark_reflect = 0\r
-    net.ipv6.icmp.ratelimit = 1000\r
-    net.ipv6.idgen_delay = 1\r
-    net.ipv6.idgen_retries = 3\r
-    net.ipv6.ip6frag_high_thresh = 4194304\r
-    net.ipv6.ip6frag_low_thresh = 3145728\r
-    net.ipv6.ip6frag_secret_interval = 0\r
-    net.ipv6.ip6frag_time = 60\r
-    net.ipv6.ip_nonlocal_bind = 0\r
-    net.ipv6.mld_max_msf = 64\r
-    net.ipv6.mld_qrv = 2\r
-    net.ipv6.neigh.default.anycast_delay = 100\r
-    net.ipv6.neigh.default.app_solicit = 0\r
-    net.ipv6.neigh.default.base_reachable_time_ms = 30000\r
-    net.ipv6.neigh.default.delay_first_probe_time = 5\r
-    net.ipv6.neigh.default.gc_interval = 30\r
-    net.ipv6.neigh.default.gc_stale_time = 60\r
-    net.ipv6.neigh.default.gc_thresh1 = 128\r
-    net.ipv6.neigh.default.gc_thresh2 = 512\r
-    net.ipv6.neigh.default.gc_thresh3 = 1024\r
-    net.ipv6.neigh.default.locktime = 0\r
-    net.ipv6.neigh.default.mcast_resolicit = 0\r
-    net.ipv6.neigh.default.mcast_solicit = 3\r
-    net.ipv6.neigh.default.proxy_delay = 80\r
-    net.ipv6.neigh.default.proxy_qlen = 64\r
-    net.ipv6.neigh.default.retrans_time_ms = 1000\r
-    net.ipv6.neigh.default.ucast_solicit = 3\r
-    net.ipv6.neigh.default.unres_qlen = 31\r
-    net.ipv6.neigh.default.unres_qlen_bytes = 65536\r
-    net.ipv6.neigh.enp25s0f0.anycast_delay = 100\r
-    net.ipv6.neigh.enp25s0f0.app_solicit = 0\r
-    net.ipv6.neigh.enp25s0f0.base_reachable_time_ms = 30000\r
-    net.ipv6.neigh.enp25s0f0.delay_first_probe_time = 5\r
-    net.ipv6.neigh.enp25s0f0.gc_stale_time = 60\r
-    net.ipv6.neigh.enp25s0f0.locktime = 0\r
-    net.ipv6.neigh.enp25s0f0.mcast_resolicit = 0\r
-    net.ipv6.neigh.enp25s0f0.mcast_solicit = 3\r
-    net.ipv6.neigh.enp25s0f0.proxy_delay = 80\r
-    net.ipv6.neigh.enp25s0f0.proxy_qlen = 64\r
-    net.ipv6.neigh.enp25s0f0.retrans_time_ms = 1000\r
-    net.ipv6.neigh.enp25s0f0.ucast_solicit = 3\r
-    net.ipv6.neigh.enp25s0f0.unres_qlen = 31\r
-    net.ipv6.neigh.enp25s0f0.unres_qlen_bytes = 65536\r
-    net.ipv6.neigh.lo.anycast_delay = 100\r
-    net.ipv6.neigh.lo.app_solicit = 0\r
-    net.ipv6.neigh.lo.base_reachable_time_ms = 30000\r
-    net.ipv6.neigh.lo.delay_first_probe_time = 5\r
-    net.ipv6.neigh.lo.gc_stale_time = 60\r
-    net.ipv6.neigh.lo.locktime = 0\r
-    net.ipv6.neigh.lo.mcast_resolicit = 0\r
-    net.ipv6.neigh.lo.mcast_solicit = 3\r
-    net.ipv6.neigh.lo.proxy_delay = 80\r
-    net.ipv6.neigh.lo.proxy_qlen = 64\r
-    net.ipv6.neigh.lo.retrans_time_ms = 1000\r
-    net.ipv6.neigh.lo.ucast_solicit = 3\r
-    net.ipv6.neigh.lo.unres_qlen = 31\r
-    net.ipv6.neigh.lo.unres_qlen_bytes = 65536\r
-    net.ipv6.neigh.lxcbr0.anycast_delay = 100\r
-    net.ipv6.neigh.lxcbr0.app_solicit = 0\r
-    net.ipv6.neigh.lxcbr0.base_reachable_time_ms = 30000\r
-    net.ipv6.neigh.lxcbr0.delay_first_probe_time = 5\r
-    net.ipv6.neigh.lxcbr0.gc_stale_time = 60\r
-    net.ipv6.neigh.lxcbr0.locktime = 0\r
-    net.ipv6.neigh.lxcbr0.mcast_resolicit = 0\r
-    net.ipv6.neigh.lxcbr0.mcast_solicit = 3\r
-    net.ipv6.neigh.lxcbr0.proxy_delay = 80\r
-    net.ipv6.neigh.lxcbr0.proxy_qlen = 64\r
-    net.ipv6.neigh.lxcbr0.retrans_time_ms = 1000\r
-    net.ipv6.neigh.lxcbr0.ucast_solicit = 3\r
-    net.ipv6.neigh.lxcbr0.unres_qlen = 31\r
-    net.ipv6.neigh.lxcbr0.unres_qlen_bytes = 65536\r
-    net.ipv6.route.gc_elasticity = 9\r
-    net.ipv6.route.gc_interval = 30\r
-    net.ipv6.route.gc_min_interval = 0\r
-    net.ipv6.route.gc_min_interval_ms = 500\r
-    net.ipv6.route.gc_thresh = 1024\r
-    net.ipv6.route.gc_timeout = 60\r
-    net.ipv6.route.max_size = 4096\r
-    net.ipv6.route.min_adv_mss = 1220\r
-    net.ipv6.route.mtu_expires = 600\r
-    net.ipv6.xfrm6_gc_thresh = 2147483647\r
-    net.netfilter.nf_conntrack_acct = 0\r
-    net.netfilter.nf_conntrack_buckets = 65536\r
-    net.netfilter.nf_conntrack_checksum = 1\r
-    net.netfilter.nf_conntrack_count = 2\r
-    net.netfilter.nf_conntrack_events = 1\r
-    net.netfilter.nf_conntrack_expect_max = 1024\r
-    net.netfilter.nf_conntrack_generic_timeout = 600\r
-    net.netfilter.nf_conntrack_helper = 1\r
-    net.netfilter.nf_conntrack_icmp_timeout = 30\r
-    net.netfilter.nf_conntrack_log_invalid = 0\r
-    net.netfilter.nf_conntrack_max = 262144\r
-    net.netfilter.nf_conntrack_tcp_be_liberal = 0\r
-    net.netfilter.nf_conntrack_tcp_loose = 1\r
-    net.netfilter.nf_conntrack_tcp_max_retrans = 3\r
-    net.netfilter.nf_conntrack_tcp_timeout_close = 10\r
-    net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60\r
-    net.netfilter.nf_conntrack_tcp_timeout_established = 432000\r
-    net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120\r
-    net.netfilter.nf_conntrack_tcp_timeout_last_ack = 30\r
-    net.netfilter.nf_conntrack_tcp_timeout_max_retrans = 300\r
-    net.netfilter.nf_conntrack_tcp_timeout_syn_recv = 60\r
-    net.netfilter.nf_conntrack_tcp_timeout_syn_sent = 120\r
-    net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120\r
-    net.netfilter.nf_conntrack_tcp_timeout_unacknowledged = 300\r
-    net.netfilter.nf_conntrack_timestamp = 0\r
-    net.netfilter.nf_conntrack_udp_timeout = 30\r
-    net.netfilter.nf_conntrack_udp_timeout_stream = 180\r
-    net.netfilter.nf_log.0 = NONE\r
-    net.netfilter.nf_log.1 = NONE\r
-    net.netfilter.nf_log.10 = NONE\r
-    net.netfilter.nf_log.11 = NONE\r
-    net.netfilter.nf_log.12 = NONE\r
-    net.netfilter.nf_log.2 = NONE\r
-    net.netfilter.nf_log.3 = NONE\r
-    net.netfilter.nf_log.4 = NONE\r
-    net.netfilter.nf_log.5 = NONE\r
-    net.netfilter.nf_log.6 = NONE\r
-    net.netfilter.nf_log.7 = NONE\r
-    net.netfilter.nf_log.8 = NONE\r
-    net.netfilter.nf_log.9 = NONE\r
-    net.nf_conntrack_max = 262144\r
-    net.unix.max_dgram_qlen = 512\r
-    vm.admin_reserve_kbytes = 8192\r
-    vm.block_dump = 0\r
-    vm.compact_unevictable_allowed = 1\r
-    vm.dirty_background_bytes = 0\r
-    vm.dirty_background_ratio = 10\r
-    vm.dirty_bytes = 0\r
-    vm.dirty_expire_centisecs = 3000\r
-    vm.dirty_ratio = 20\r
-    vm.dirty_writeback_centisecs = 500\r
-    vm.dirtytime_expire_seconds = 43200\r
-    vm.drop_caches = 0\r
-    vm.extfrag_threshold = 500\r
-    vm.hugepages_treat_as_movable = 0\r
-    vm.hugetlb_shm_group = 0\r
-    vm.laptop_mode = 0\r
-    vm.legacy_va_layout = 0\r
-    vm.lowmem_reserve_ratio = 256      256     32      1\r
-    vm.max_map_count = 200000\r
-    vm.memory_failure_early_kill = 0\r
-    vm.memory_failure_recovery = 1\r
-    vm.min_free_kbytes = 90112\r
-    vm.min_slab_ratio = 5\r
-    vm.min_unmapped_ratio = 1\r
-    vm.mmap_min_addr = 65536\r
-    vm.nr_hugepages = 4096\r
-    vm.nr_hugepages_mempolicy = 4096\r
-    vm.nr_overcommit_hugepages = 0\r
-    vm.nr_pdflush_threads = 0\r
-    vm.numa_zonelist_order = default\r
-    vm.oom_dump_tasks = 1\r
-    vm.oom_kill_allocating_task = 0\r
-    vm.overcommit_kbytes = 0\r
-    vm.overcommit_memory = 0\r
-    vm.overcommit_ratio = 50\r
-    vm.page-cluster = 3\r
-    vm.panic_on_oom = 0\r
-    vm.percpu_pagelist_fraction = 0\r
-    vm.stat_interval = 1\r
-    vm.swappiness = 0\r
-    vm.user_reserve_kbytes = 131072\r
-    vm.vfs_cache_pressure = 100\r
-    vm.zone_reclaim_mode = 0\r
-\r
-**Services listing**\r
-\r
-::\r
-\r
-    $ service --status-all\r
-     [ + ]  apparmor\r
-     [ - ]  bootmisc.sh\r
-     [ - ]  checkfs.sh\r
-     [ - ]  checkroot-bootclean.sh\r
-     [ - ]  checkroot.sh\r
-     [ + ]  console-setup\r
-     [ + ]  cpufrequtils\r
-     [ + ]  cron\r
-     [ + ]  dbus\r
-     [ + ]  grub-common\r
-     [ - ]  hostname.sh\r
-     [ - ]  hwclock.sh\r
-     [ + ]  keyboard-setup\r
-     [ - ]  killprocs\r
-     [ + ]  kmod\r
-     [ + ]  loadcpufreq\r
-     [ + ]  lxcfs\r
-     [ - ]  mountall-bootclean.sh\r
-     [ - ]  mountall.sh\r
-     [ - ]  mountdevsubfs.sh\r
-     [ - ]  mountkernfs.sh\r
-     [ - ]  mountnfs-bootclean.sh\r
-     [ - ]  mountnfs.sh\r
-     [ + ]  networking\r
-     [ - ]  ondemand\r
-     [ - ]  plymouth\r
-     [ - ]  plymouth-log\r
-     [ + ]  procps\r
-     [ + ]  qemu-kvm\r
-     [ + ]  rc.local\r
-     [ + ]  resolvconf\r
-     [ - ]  rsync\r
-     [ + ]  rsyslog\r
-     [ - ]  screen-cleanup\r
-     [ - ]  sendsigs\r
-     [ + ]  ssh\r
-     [ + ]  udev\r
-     [ - ]  umountfs\r
-     [ - ]  umountnfs.sh\r
-     [ - ]  umountroot\r
-     [ + ]  urandom\r
-     [ + ]  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
-**DPDK Version**\r
-\r
-|dpdk-release|\r
-\r
-**DPDK Compile Parameters**\r
-\r
-.. code-block:: bash\r
-\r
-    make install T=x86_64-native-linuxapp-gcc -j\r
-\r
-**Testpmd Startup Configuration**\r
-\r
-Testpmd startup configuration changes per test case with different settings for CPU\r
-cores, rx-queues. Startup config is aligned with applied test case tag:\r
-\r
-Tagged by **1T1C**\r
-\r
-.. code-block:: bash\r
-\r
-    testpmd -c 0x3 -n 4 -- --numa --nb-ports=2 --portmask=0x3 --nb-cores=1 --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 **2T2C**\r
-\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 --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 --rxd=1024 --txd=1024 --disable-link-check --auto-start\r
-\r
-**L3FWD Startup Configuration**\r
-\r
-L3FWD startup configuration changes per test case with different settings for CPU\r
-cores, rx-queues. Startup config is aligned with applied test case tag:\r
-\r
-Tagged by **1T1C**\r
-\r
-.. code-block:: bash\r
-\r
-    l3fwd -l 1 -n 4 -- -P -L -p 0x3 --config='${port_config}' --enable-jumbo --max-pkt-len=9000 --eth-dest=0,${adj_mac0} --eth-dest=1,${adj_mac1} --parse-ptype\r
-\r
-Tagged by **2T2C**\r
-\r
-.. code-block:: bash\r
-\r
-    l3fwd -l 1,2 -n 4 -- -P -L -p 0x3 --config='${port_config}' --enable-jumbo --max-pkt-len=9000 --eth-dest=0,${adj_mac0} --eth-dest=1,${adj_mac1} --parse-ptype\r
-\r
-Tagged by **4T4C**\r
-\r
-.. code-block:: bash\r
-\r
-    l3fwd -l 1,2,3,4 -n 4 -- -P -L -p 0x3 --config='${port_config}' --enable-jumbo --max-pkt-len=9000 --eth-dest=0,${adj_mac0} --eth-dest=1,${adj_mac1} --parse-ptype\r
-\r
-TG Configuration - TRex\r
------------------------\r
-\r
-**TG Version**\r
-\r
-|trex-release|\r
-\r
-**DPDK version**\r
-\r
-DPDK v17.05\r
-\r
-**TG Build Script used**\r
-\r
-`TRex intallation`_\r
-\r
-**TG Startup Configuration**\r
-\r
-::\r
-\r
-    $ cat /etc/trex_cfg.yaml\r
-    - port_limit      : 2\r
-      version         : 2\r
-      interfaces      : ["0000:0d:00.0","0000:0d:00.1"]\r
-      port_info       :\r
-        - dest_mac        :   [0x3c,0xfd,0xfe,0x9c,0xee,0xf5]\r
-          src_mac         :   [0x3c,0xfd,0xfe,0x9c,0xee,0xf4]\r
-        - 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
+.. include:: ../vpp_performance_tests/test_environment.rst\r
index 1c992a5..a0491b1 100644 (file)
@@ -5,13 +5,11 @@ Tested Virtual Topologies
 -------------------------
 
 CSIT Honeycomb functional tests are executed on virtualized topologies created
-using Virtual Internet Routing Lab (VIRL) simulation platform contributed by
-Cisco. VIRL runs on physical baremetal servers hosted by LF FD.io project. All
-tests are executed in two node logical test topology - Traffic Generator (TG)
-node and Systems Under Test (SUT1) node connected in a loop. Logical test
-topology is shown in the figure below.
-
-::
+using :abbr:`VIRL (Virtual Internet Routing Lab)` simulation platform
+contributed by Cisco. VIRL runs on physical baremetal servers hosted by LF FD.io
+project. All tests are executed in two node logical test topology - Traffic
+Generator (TG) node and Systems Under Test (SUT1) node connected in a loop.
+Logical test topology is shown in the figure below.::
 
                      +------------------------+
                      |                        |
index 0b2e3c4..ee9788e 100644 (file)
@@ -5,9 +5,7 @@ Tested Physical Topologies
 --------------------------
 
 CSIT VPP performance tests are executed on physical baremetal servers hosted by
-LF FD.io project. Testbed physical topology is shown in the figure below.
-
-::
+LF FD.io project. Testbed physical topology is shown in the figure below.::
 
     +------------------------+           +------------------------+
     |                        |           |                        |
index 0674c50..7798081 100644 (file)
@@ -32,7 +32,7 @@ including CSIT framework is depicted in the figure below.
    :alt: FD.io CSIT system design\r
    :align: center\r
 \r
-   *Figure 1. FD.io CSIT system design*\r
+   *FD.io CSIT system design*\r
 \r
 A brief bottom-up description is provided here:\r
 \r
@@ -161,14 +161,15 @@ RF Keywords Naming Guidelines
 \r
 Readability counts: "..code is read much more often than it is written."\r
 Hence following a good and consistent grammar practice is important when\r
-writing RF KeyWords and Tests. All CSIT test cases are coded using\r
-Gherkin style and include only L2 KWs references. L2 KWs are coded using\r
-simple style and include L2 KWs, L1 KWs, and L1 python references. To\r
-improve readability, the proposal is to use the same grammar for both RF\r
-KW styles, and to formalize the grammar of English sentences used for\r
-naming the RF KWs. RF KWs names are short sentences expressing\r
-functional description of the command. They must follow English sentence\r
-grammar in one of the following forms:\r
+writing :abbr:`RF (Robot Framework)` KeyWords and Tests. All CSIT test cases\r
+are coded using Gherkin style and include only L2 KWs references. L2 KWs are\r
+coded using simple style and include L2 KWs, L1 KWs, and L1 python references.\r
+To improve readability, the proposal is to use the same grammar for both\r
+:abbr:`RF (Robot Framework)` KW styles, and to formalize the grammar of English\r
+sentences used for naming the :abbr:`RF (Robot Framework)` KWs. :abbr:`RF (Robot\r
+Framework)` KWs names are short sentences expressing functional description of\r
+the 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
@@ -181,8 +182,8 @@ grammar in one of the following forms:
 Passive form MUST NOT be used. However a usage of past participle as an\r
 adjective is okay. See usage examples provided in the Coding guidelines\r
 section below. Following sections list applicability of the above\r
-grammar forms to different RF KW categories. Usage examples are\r
-provided, both good and bad.\r
+grammar forms to different :abbr:`RF (Robot Framework)` KW categories. Usage\r
+examples are provided, both good and bad.\r
 \r
 Coding guidelines\r
 -----------------\r
index 380f109..50a9d4c 100644 (file)
@@ -2,13 +2,14 @@ General Notes
 =============
 
 All CSIT test results listed in this report are sourced and auto-generated
-from output.xml Robot Framework (RF) files resulting from LF FD.io Jenkins
-jobs execution against |vpp-release| release artifacts. References are
-provided to the original LF FD.io Jenkins job results. However, as LF FD.io
-Jenkins infrastructure does not automatically archive all jobs (history record
-is provided for the last 30 days or 40 jobs only), additional references are
-provided to the RF result files that got archived in FD.io nexus online
-storage system.
+from :file:`output.xml` :abbr:`RF (Robot Framework)` files resulting from
+:abbr:`LF (Linux Foundation)` FD.io Jenkins jobs execution against |vpp-release|
+release artifacts. References are provided to the original :abbr:`LF (Linux
+Foundation)` FD.io Jenkins job results. However, as :abbr:`LF (Linux
+Foundation)` FD.io Jenkins infrastructure does not automatically archive all jobs
+(history record is provided for the last 30 days or 40 jobs only), additional
+references are provided to the :abbr:`RF (Robot Framework)` result files that
+got archived in FD.io nexus online storage system.
 
 FD.io CSIT project currently covers multiple FD.io system and sub-system
 testing areas and this is  reflected in this report, where each testing area
@@ -42,9 +43,9 @@ is listed separately, as follows:
    against VPP.
 
 #. **Honeycomb Performance Tests** - Honeycomb performance tests are executed in
-   physical FD.io testbeds, focusing on the performance of Honeycomb management and programming
-   functionality of VPP. Tests cover a range of CRUD operations executed
-   against VPP.
+   physical FD.io testbeds, focusing on the performance of Honeycomb management
+   and programming functionality of VPP. Tests cover a range of CRUD operations
+   executed against VPP.
 
 #. **NSH_SFC Functional Tests** - NSH_SFC functional tests are executed in
    virtual FD.io testbeds focusing on NSH_SFC of VPP. Tests cover a range of
@@ -56,12 +57,12 @@ complement CSIT system functional tests, they are provided mainly as a reference
 and to provide a more complete view of automated testing executed against
 |vpp-release|.
 
-FD.io CSIT system is developed using two main coding platformsRobot
-Framework (RF) and Python. CSIT |release| source code for the executed test
+FD.io CSIT system is developed using two main coding platforms :abbr:`RF (Robot
+Framework)` and Python. CSIT |release| source code for the executed test
 suites is available in CSIT branch |release| in the directory
-"./tests/<name_of_the_test_suite>". A local copy of CSIT source code can be
-obtained by cloning CSIT git repository - "git clone
-https://gerrit.fd.io/r/csit". The CSIT testing virtual environment can be run
+:file:`./tests/<name_of_the_test_suite>`. A local copy of CSIT source code
+can be obtained by cloning CSIT git repository - :command:`git clone
+https://gerrit.fd.io/r/csit`. The CSIT testing virtual environment can be run
 on a local computer workstation (laptop, server) using Vagrant by following
 the instructions in `CSIT tutorials
 <https://wiki.fd.io/view/CSIT#Tutorials>`_.
index 57b4cd4..180e73f 100644 (file)
@@ -7,9 +7,9 @@ This is the **F**\ast **D**\ata **I**/**O** Project (**FD.io**) **C**\ontinuous
 
 The report describes CSIT functional and performance tests and their
 continuous execution delivered in CSIT |release|. A high-level overview is
-provided for each CSIT test environment running in Linux Foundation (LF) FD.io
-Continuous Performance Labs. This is followed by summary of all executed tests
-against the |vpp-release| and associated FD.io projects and sub-systems
+provided for each CSIT test environment running in :abbr:`LF (Linux Foundation)`
+FD.io Continuous Performance Labs. This is followed by summary of all executed
+tests against the |vpp-release| and associated FD.io projects and sub-systems
 (Honeycomb, DPDK, NSH_SFC), CSIT |release| release notes, result highlights and
 known issues discovered in CSIT. More detailed description of each environment,
 pointers to CSIT test code documentation and detailed test resuls with links to
index 79403a2..6420d6a 100644 (file)
@@ -4,15 +4,13 @@ Overview
 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
+CSIT NSH_SFC functional tests are executed on virtualized topologies created using\r
+:abbr:`VIRL (Virtual Internet Routing Lab)` 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
+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
+Both logical test topologies are shown in the figures below.::\r
 \r
     +------------------------+           +------------------------+\r
     |                        |           |                        |\r
@@ -68,9 +66,7 @@ For the test cases that require DUT (VPP) to communicate with VM over the
 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
+(marked in the figure with ``***``).::\r
 \r
     +------------------------+           +------------------------+\r
     |      +----------+      |           |      +----------+      |\r
index 79ca0e9..ca7285d 100644 (file)
@@ -1,440 +1 @@
-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
+.. include:: ../vpp_functional_tests/test_environment.rst\r
index 300c135..aab94bd 100644 (file)
@@ -3,9 +3,8 @@ VPP Functional Test Configs
 
 .. note::
 
-    Data sources for reported test results: i) FD.io test executor jobs
-    `FD.io test executor vpp functional jobs`_
-    , ii) archived FD.io jobs test result `output files
+    Data sources for reported test results: i) `FD.io test executor vpp
+    functional jobs`_, ii) archived FD.io jobs test result `output files
     <../../_static/archive/>`_.
 
 .. toctree::
index a146d66..9f35dff 100644 (file)
@@ -3,9 +3,8 @@ VPP Performance Test Configs
 
 .. note::
 
-    Data sources for reported test results: i) FD.io test executor jobs
-    `FD.io test executor vpp performance jobs`_
-    , ii) archived FD.io jobs test result `output files
+    Data sources for reported test results: i) `FD.io test executor vpp
+    performance jobs`_, ii) archived FD.io jobs test result `output files
     <../../_static/archive/>`_.
 
 .. toctree::
index 756c57f..b86c2c3 100644 (file)
@@ -3,9 +3,8 @@ VPP Performance Operational Data
 
 .. note::
 
-    Data sources for reported test results: i) FD.io test executor jobs
-    `FD.io test executor vpp performance jobs`_
-    , ii) archived FD.io jobs test result `output files
+    Data sources for reported test results: i) `FD.io test executor vpp
+    performance jobs`_, ii) archived FD.io jobs test result `output files
     <../../_static/archive/>`_.
 
 .. toctree::
index e8f8460..fda3507 100644 (file)
@@ -5,14 +5,12 @@ Tested Virtual Topologies
 -------------------------\r
 \r
 CSIT VPP functional tests are executed on virtualized topologies created using\r
-Virtual Internet Routing Lab (VIRL) simulation platform contributed by Cisco.\r
-VIRL runs on physical baremetal servers hosted by LF FD.io project.  Majority\r
-of the tests are executed in the three node logical test topology - Traffic\r
-Generator (TG) node and two Systems Under Test (SUT) nodes connected in a\r
-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
+:abbr:`VIRL (Virtual Internet Routing Lab)` 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
@@ -68,9 +66,7 @@ For the test cases that require DUT (VPP) to communicate with VM over the
 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
+(marked in the figure with ``***``).::\r
 \r
     +------------------------+           +------------------------+\r
     |      +----------+      |           |      +----------+      |\r
@@ -135,7 +131,7 @@ 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 \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
index 15c27ec..a4209ed 100644 (file)
@@ -30,14 +30,14 @@ VIRL testbed infrastructure consists of three VIRL hosts:
 Whenever a patch is submitted to gerrit for review, parallel VIRL simulations\r
 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 based on least load algorithm per VIRL simulation.\r
+TEST_GROUPS variable in :file:`csit/bootstrap.sh` file. The VIRL host to run\r
+VIRL 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
 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
+installed on the two SUTs, along with their :file:`/etc/vpp/startup.conf` file,\r
+in all VIRL simulations.\r
 \r
 SUT Configuration - VIRL Guest VM\r
 ---------------------------------\r
@@ -66,26 +66,26 @@ been tested with, is the following:
 #. **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\r
-   update", "apt-get upgrade" on that day), produced by CSIT disk image build\r
-   scripts.\r
-   \r
+   package versions are those that would have been installed by a\r
+   :command:`apt-get update`, :command:`apt-get upgrade` on that day), produced\r
+   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 `VIRL images lists`_.\r
-   \r
-   A replica of this VM image can be built by running the "build.sh" script in\r
-   CSIT repository.\r
+\r
+   A replica of this VM image can be built by running the :command:`build.sh`\r
+   script in CSIT repository.\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
+\r
    The exact list of installed packages and their versions (including the Linux\r
    kernel package version) are included in `VIRL images lists`_.\r
-   \r
-   A replica of this VM image can be built by running the "build.sh" script in\r
-   CSIT repository.\r
+\r
+   A replica of this VM image can be built by running the :command:`build.sh`\r
+   script in CSIT repository.\r
 \r
 #. **Nested VM image**\r
 \r
index 0ee3e82..c9e62e8 100644 (file)
@@ -6,18 +6,18 @@ Changes in CSIT |release|
 \r
 #. Test environment changes in VPP data plane performance tests:\r
 \r
-   - Further characterization and optimizations of VPP vhost-user and VM\r
-     test methodology and test environment;\r
+   - Further characterization and optimizations of VPP vhost-user and VM test\r
+     methodology and test environment;\r
 \r
      - Tests with varying Qemu virtio queue (a.k.a. vring) sizes:\r
        [vr256] default 256 descriptors, [vr1024] 1024 descriptors to\r
        optimize for packet throughput;\r
 \r
-     - Tests with varying Linux CFS (Completely Fair Scheduler)\r
-       settings: [cfs] default settings, [cfsrr1] CFS RoundRobin(1)\r
-       policy applied to all data plane threads handling test packet\r
-       path including all VPP worker threads and all Qemu testpmd\r
-       poll-mode threads;\r
+     - Tests with varying Linux :abbr:`CFS (Completely Fair Scheduler)`\r
+       settings: [cfs] default settings, [cfsrr1] :abbr:`CFS (Completely Fair\r
+       Scheduler)` RoundRobin(1) policy applied to all data plane threads\r
+       handling test packet path including all VPP worker threads and all Qemu\r
+       testpmd poll-mode threads;\r
 \r
      - Resulting test cases are all combinations with [vr256,vr1024] and\r
        [cfs,cfsrr1] settings;\r
@@ -28,8 +28,8 @@ Changes in CSIT |release|
 #. Code updates and optimizations in CSIT performance framework:\r
 \r
    - Complete CSIT framework code revision and optimizations as descried\r
-     on CSIT wiki page\r
-     `Design_Optimizations <https://wiki.fd.io/view/CSIT/Design_Optimizations>`_.\r
+     on CSIT wiki page `Design_Optimizations\r
+     <https://wiki.fd.io/view/CSIT/Design_Optimizations>`_.\r
 \r
    - For more detail see the :ref:`CSIT Framework Design <csit-design>` section\r
      in this report;\r
@@ -85,14 +85,14 @@ Changes in CSIT |release|
 Performance Improvements\r
 ------------------------\r
 \r
-Substantial improvements in measured packet throughput have been\r
-observed in a number of CSIT |release| tests listed below, with relative\r
-increase  of double-digit percentage points. Relative improvements for\r
-this release are calculated against the test results listed in CSIT\r
-|release-1| report. The comparison is calculated between the mean values\r
-based on collected and archived test results' samples for involved VPP\r
-releases. Standard deviation has been also listed for CSIT |release|.\r
-VPP-16.09 and VPP-17.01 numbers are provided for reference.\r
+Substantial improvements in measured packet throughput have been observed in a\r
+number of CSIT |release| tests listed below, with relative increase of\r
+double-digit percentage points. Relative improvements for this release are\r
+calculated against the test results listed in CSIT |release-1| report. The\r
+comparison is calculated between the mean values based on collected and\r
+archived test results' samples for involved VPP releases. Standard deviation\r
+has been also listed for CSIT |release|. VPP-16.09 and VPP-17.01 numbers are\r
+provided for reference.\r
 \r
 NDR Throughput\r
 ~~~~~~~~~~~~~~\r
@@ -121,10 +121,10 @@ Measured improvements are in line with VPP code optimizations listed in
 Other Performance Changes\r
 -------------------------\r
 \r
-Other changes in measured packet throughput, with either minor relative\r
-increase or decrease, have been observed in a number of CSIT |release|\r
-tests listed below. Relative changes are calculated against the test\r
-results listed in CSIT |release-1| report.\r
+Other changes in measured packet throughput, with either minor relative increase\r
+or decrease, have been observed in a number of CSIT |release| tests listed\r
+below. Relative changes are calculated against the test results listed in CSIT\r
+|release-1| report.\r
 \r
 NDR Throughput\r
 ~~~~~~~~~~~~~~\r
index 5cf7b1d..89f5958 100644 (file)
@@ -5,9 +5,8 @@ Tested Physical Topologies
 --------------------------
 
 CSIT VPP performance tests are executed on physical baremetal servers hosted by
-LF FD.io project. Testbed physical topology is shown in the figure below.
-
-::
+:abbr:`LF (Linux Foundation)` FD.io project. Testbed physical topology is shown
+in the figure below.::
 
     +------------------------+           +------------------------+
     |                        |           |                        |
@@ -60,9 +59,7 @@ N>1 DUT a logical service chain forwarding topology is created on DUT by
 applying L2 or IPv4/IPv6 configuration depending on the test suite. DUT
 test topology with N VM/LXC instances is shown in the figure below
 including applicable packet flow thru the DUTs and VMs/LXCs (marked in
-the figure with ``***``).
-
-::
+the figure with ``***``).::
 
     +-------------------------+           +-------------------------+
     | +---------+ +---------+ |           | +---------+ +---------+ |
@@ -92,22 +89,22 @@ Hence the external throughput rates measured by TG and listed in this
 report must be multiplied by (N+1) to represent the actual DUT aggregate
 packet forwarding rate.
 
-Note that reported DUT (VPP) performance results are specific to the
-SUTs tested. Current LF FD.io SUTs are based on Intel XEON E5-2699v3
-2.3GHz CPUs. SUTs with other CPUs are likely to yield different results.
-A good rule of thumb, that can be applied to estimate VPP packet
+Note that reported DUT (VPP) performance results are specific to the SUTs
+tested. Current :abbr:`LF (Linux Foundation)` FD.io SUTs are based on Intel
+XEON E5-2699v3 2.3GHz CPUs. SUTs with other CPUs are likely to yield different
+results. A good rule of thumb, that can be applied to estimate VPP packet
 thoughput for Phy-to-Phy (NIC-to-NIC, PCI-to-PCI) topology, is to expect
 the forwarding performance to be proportional to CPU core frequency,
 assuming CPU is the only limiting factor and all other SUT parameters
 equivalent to FD.io CSIT environment. The same rule of thumb can be also
-applied for Phy-to-VM/LXC-to-Phy (NIC-to-VM/LXC-to-NIC) topology, but
-due to much higher dependency on intensive memory operations and
-sensitivity to Linux kernel scheduler settings and behaviour, this
-estimation may not always yield good enough accuracy.
+applied for Phy-to-VM/LXC-to-Phy (NIC-to-VM/LXC-to-NIC) topology, but due to
+much higher dependency on intensive memory operations and 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 FD.io CSIT testbed wiki page <https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.
+For detailed :abbr:`LF (Linux Foundation)` FD.io test bed specification and
+physical topology please refer to `LF FD.io CSIT testbed wiki page
+<https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.
 
 Performance Tests Coverage
 --------------------------
@@ -115,7 +112,7 @@ Performance Tests Coverage
 Performance tests are split into two main categories:
 
 - Throughput discovery - discovery of packet forwarding rate using binary search
-  in accordance to RFC2544.
+  in accordance to :rfc:`2544`.
 
   - NDR - discovery of Non Drop Rate packet throughput, at zero packet loss;
     followed by one-way packet latency measurements at 10%, 50% and 100% of
@@ -185,60 +182,59 @@ CSIT |release| includes following performance test suites, listed per NIC type:
   - **L2BD** - L2 Bridge-Domain switched-forwarding of untagged Ethernet frames
      with MAC learning.
 
-Execution of performance tests takes time, especially the throughput
-discovery tests. Due to limited HW testbed resources available within
-FD.io labs hosted by Linux Foundation, the number of tests for NICs
-other than X520 (a.k.a. Niantic) has been limited to few baseline tests.
-CSIT team expect the HW testbed resources to grow over time, so that
-complete set of performance tests can be regularly and(or) continuously
-executed against all models of hardware present in FD.io labs.
+Execution of performance tests takes time, especially the throughput discovery
+tests. Due to limited HW testbed resources available within FD.io labs hosted
+by :abbr:`LF (Linux Foundation)`, the number of tests for NICs other than X520
+(a.k.a. Niantic) has been limited to few baseline tests. CSIT team expect the
+HW testbed resources to grow over time, so that complete set of performance
+tests can be regularly and(or) continuously executed against all models of
+hardware present in FD.io labs.
 
 Performance Tests Naming
 ------------------------
 
-CSIT |release| follows a common structured naming convention for all
-performance and system functional tests, introduced in CSIT |release-1|.
+CSIT |release| follows a common structured naming convention for all performance
+and system functional tests, introduced in CSIT |release-1|.
 
-The naming should be intuitive for majority of the tests. Complete
-description of CSIT test naming convention is provided on `CSIT test naming wiki
+The naming should be intuitive for majority of the tests. Complete description
+of CSIT test naming convention is provided on `CSIT test naming wiki
 <https://wiki.fd.io/view/CSIT/csit-test-naming>`_.
 
 Methodology: Multi-Core and Multi-Threading
 -------------------------------------------
 
-**Intel Hyper-Threading** - CSIT |release| performance tests are
-executed with SUT servers' Intel XEON processors configured in Intel
-Hyper-Threading Disabled mode (BIOS setting). This is the simplest
-configuration used to establish baseline single-thread single-core
-application packet processing and forwarding performance. Subsequent
-releases of CSIT will add performance tests with Intel Hyper-Threading
-Enabled (requires BIOS settings change and hard reboot of server).
+**Intel Hyper-Threading** - CSIT |release| performance tests are executed with
+SUT servers' Intel XEON processors configured in Intel Hyper-Threading Disabled
+mode (BIOS setting). This is the simplest configuration used to establish
+baseline single-thread single-core application packet processing and forwarding
+performance. Subsequent releases of CSIT will add performance tests with Intel
+Hyper-Threading Enabled (requires BIOS settings change and hard reboot of
+server).
 
-**Multi-core Tests** - CSIT |release| multi-core tests are executed in
-the following VPP thread and core configurations:
+**Multi-core Tests** - CSIT |release| multi-core tests are executed in the
+following VPP thread and core configurations:
 
 #. 1t1c - 1 VPP worker thread on 1 CPU physical core.
 #. 2t2c - 2 VPP worker threads on 2 CPU physical cores.
 
-VPP worker threads are the data plane threads. VPP control thread is
-running on a separate non-isolated core together with other Linux
-processes. Note that in quite a few test cases running VPP workers on 2
-physical cores hits the tested NIC I/O bandwidth or packets-per-second
-limit.
+VPP worker threads are the data plane threads. VPP control thread is running on
+a separate non-isolated core together with other Linux processes. Note that in
+quite a few test cases running VPP workers on 2 physical cores hits the tested
+NIC I/O bandwidth or packets-per-second limit.
 
 Methodology: Packet Throughput
 ------------------------------
 
 Following values are measured and reported for packet throughput tests:
 
-- NDR binary search per RFC2544:
+- NDR binary search per :rfc:`2544`:
 
   - Packet rate: "RATE: <aggregate packet rate in packets-per-second> pps
     (2x <per direction packets-per-second>)"
   - Aggregate bandwidth: "BANDWIDTH: <aggregate bandwidth in Gigabits per
     second> Gbps (untagged)"
 
-- PDR binary search per RFC2544:
+- PDR binary search per :rfc:`2544`:
 
   - Packet rate: "RATE: <aggregate packet rate in packets-per-second> pps (2x
     <per direction packets-per-second>)"
@@ -282,27 +278,27 @@ latency values are measured using following methodology:
 Methodology: KVM VM vhost
 -------------------------
 
-CSIT |release| introduced test environment configuration changes to KVM Qemu vhost-
-user tests in order to more representatively measure |vpp-release| performance
-in configurations with vhost-user interfaces and different Qemu settings.
+CSIT |release| introduced test environment configuration changes to KVM Qemu
+vhost-user tests in order to more representatively measure |vpp-release|
+performance in configurations with vhost-user interfaces and different Qemu
+settings.
 
-FD.io CSIT performance lab is testing VPP vhost with KVM VMs using following environment settings
+FD.io CSIT performance lab is testing VPP vhost with KVM VMs using following
+environment settings:
 
-- Tests with varying Qemu virtio queue (a.k.a. vring) sizes:
-  [vr256] default 256 descriptors, [vr1024] 1024 descriptors to
-  optimize for packet throughput;
+- Tests with varying Qemu virtio queue (a.k.a. vring) sizes: [vr256] default 256
+  descriptors, [vr1024] 1024 descriptors to optimize for packet throughput;
 
-- Tests with varying Linux CFS (Completely Fair Scheduler)
-  settings: [cfs] default settings, [cfsrr1] CFS RoundRobin(1)
-  policy applied to all data plane threads handling test packet
-  path including all VPP worker threads and all Qemu testpmd
-  poll-mode threads;
+- Tests with varying Linux :abbr:`CFS (Completely Fair Scheduler)` settings:
+  [cfs] default settings, [cfsrr1] CFS RoundRobin(1) policy applied to all data
+  plane threads handling test packet path including all VPP worker threads and
+  all Qemu testpmd poll-mode threads;
 
 - Resulting test cases are all combinations with [vr256,vr1024] and
   [cfs,cfsrr1] settings;
 
-- Adjusted Linux kernel CFS scheduler policy for data plane threads used
-  in CSIT is documented in
+- Adjusted Linux kernel :abbr:`CFS (Completely Fair Scheduler)` scheduler policy
+  for data plane threads used in CSIT is documented in
   `CSIT Performance Environment Tuning wiki <https://wiki.fd.io/view/CSIT/csit-perf-env-tuning-ubuntu1604>`_.
   The purpose is to verify performance impact (NDR, PDR throughput) and
   same test measurements repeatability, by making VPP and VM data plane
@@ -312,15 +308,14 @@ FD.io CSIT performance lab is testing VPP vhost with KVM VMs using following env
 Methodology: LXC Container memif
 --------------------------------
 
-CSIT |release| introduced new tests - VPP Memif virtual interface
-(shared memory interface) tests  interconnecting VPP instances over
-memif. VPP vswitch  instance runs in bare-metal user-mode handling Intel
-x520 NIC  10GbE interfaces and connecting over memif (Master side)
-virtual  interfaces to another instance of VPP running in bare-metal
-Linux  Container (LXC) with memif virtual interfaces (Slave side). LXC
-runs in a priviliged mode with VPP data plane worker threads  pinned to
-dedicated physical CPU cores per usual CSIT practice.  Both VPP run the
-same version of software. This test topology is  equivalent to existing
+CSIT |release| introduced new tests - VPP Memif virtual interface (shared memory
+interface) tests interconnecting VPP instances over memif. VPP vswitch instance
+runs in bare-metal user-mode handling Intel x520 NIC 10GbE interfaces and
+connecting over memif (Master side) virtual interfaces to another instance of
+VPP running in bare-metal :abbr:`LXC (Linux Container)` with memif virtual
+interfaces (Slave side). LXC runs in a priviliged mode with VPP data plane worker
+threads pinned to dedicated physical CPU cores per usual CSIT practice. Both VPP
+run the same version of software. This test topology is equivalent to existing
 tests with vhost-user and VMs.
 
 Methodology: IPSec with Intel QAT HW cards
@@ -363,7 +358,7 @@ TRex is installed and run on the TG compute node. The typical procedure is:
 
 - There are traffic streams dynamically prepared for each test, based on traffic
   profiles. The traffic is sent and the statistics obtained using
-  trex_stl_lib.api.STLClient.
+  :command:`trex_stl_lib.api.STLClient`.
 
 **Measuring packet loss**
 
index ffc47fc..494799f 100644 (file)
@@ -1,17 +1,17 @@
 Test Environment\r
 ================\r
 \r
-CSIT performance tests are executed on the three identical physical\r
-testbeds hosted by Linux Foundation for FD.io project. Each testbed\r
-consists of two servers acting as Systems Under Test (SUT) and one\r
-server acting as Traffic Generator (TG).\r
+CSIT performance tests are executed on the three identical physical testbeds\r
+hosted by :abbr:`LF (Linux Foundation)` for FD.io project. Each testbed\r
+consists of two servers acting as Systems Under Test (SUT) and one server\r
+acting as Traffic Generator (TG).\r
 \r
 Server Specification and Configuration\r
 --------------------------------------\r
 \r
 Complete specification and configuration of compute servers used in CSIT\r
-physical testbeds is maintained on wiki page\r
-`CSIT LF Testbeds <https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.\r
+physical testbeds is maintained on wiki page `CSIT LF Testbeds\r
+<https://wiki.fd.io/view/CSIT/CSIT_LF_testbed>`_.\r
 \r
 SUT Configuration\r
 -----------------\r
index e5dd388..8606734 100644 (file)
@@ -154,7 +154,7 @@ Performance testing tags
 
 .. topic:: NDRPDRDISC
 
-    Find performance of DUT based on RFC2544 with linear / binary / combined
+    Find performance of DUT based on :rfc:`2544` with linear / binary / combined
     search. (Previous LONG tests.)
 
 Ethernet frame size tags for performance tests
index 87120a5..099e66d 100644 (file)
@@ -108,8 +108,6 @@ pygments_style = 'sphinx'
 # If true, `todo` and `todoList` produce output, else they produce nothing.
 todo_include_todos = False
 
-# pdf_documents = [('index', u'rst2pdf', u'Sample rst2pdf doc', u'Your Name'),]
-
 # -- Options for HTML output ----------------------------------------------
 
 # The theme to use for HTML and HTML Help pages.  See the documentation for
@@ -143,7 +141,7 @@ latex_engine = 'pdflatex'
 latex_elements = {
      # The paper size ('letterpaper' or 'a4paper').
      #
-     #'papersize': 'a4paper',
+     'papersize': 'a4paper',
 
      # The font size ('10pt', '11pt' or '12pt').
      #
@@ -163,6 +161,12 @@ latex_elements = {
      #
      'figure_align': 'H',
 
+     # Latex font setup
+     #
+     'fontpkg': r'''
+         \renewcommand{\familydefault}{\sfdefault}
+     ''',
+
      # Latex other setup
      #
      'extraclassoptions': 'openany',
@@ -173,9 +177,6 @@ latex_elements = {
          shadowsep=0pt,
          shadowsize=0pt,
          shadowrule=0pt
-     ''',
-     'fontpkg': r'''
-         \renewcommand{\familydefault}{\sfdefault}
      '''
 }
 
@@ -183,19 +184,19 @@ latex_elements = {
 # (source start file, target name, title,
 #  author, documentclass [howto, manual, or own class]).
 latex_documents = [
-    (master_doc, 'csit.tex', u'CSIT Report',
+    (master_doc, 'csit.tex', u'CSIT REPORT',
      u'', 'manual'),
 ]
 
 # The name of an image file (relative to this directory) to place at the top of
 # the title page.
 #
-latex_logo = 'fdio.pdf'
+latex_logo = 'fdio.pdf'
 
 # For "manual" documents, if this is true, then toplevel headings are parts,
 # not chapters.
 #
-latex_use_parts = True
+latex_use_parts = True
 
 # If true, show page references after internal links.
 #
@@ -203,7 +204,7 @@ latex_show_pagerefs = True
 
 # If true, show URL addresses after external links.
 #
-# latex_show_urls = False
+latex_show_urls = 'footnote'
 
 # Documents to append as an appendix to all manuals.
 #
index 98fc2ba..0a95396 100644 (file)
@@ -200,6 +200,7 @@ def main():
                         name=str(i+1)+'. '+suite.lower().replace('-ndrdisc',''),
                         hoverinfo='x+y',
                         boxpoints='outliers',
+                        whiskerwidth=0,
                     ))
                 elif args.plot == 'scatter':
                     traces.append(plgo.Scatter(
index 3ff9e60..b35f490 100644 (file)
@@ -7,13 +7,18 @@ declare -r FALSE=1
 typeset -A DIR
 typeset -A URL
 typeset -A JOB
+typeset -A CFG
+
+CFG[DEBUG]=0
+CFG[BLD_LATEX]=1
+CFG[BLD_HTML]=1
 
 DIR[WORKING]=_tmp
-DIR[BUILD]=_build
+DIR[BUILD,HTML]=_build
 DIR[BUILD,LATEX]=_build_latex
 DIR[RST]=../../../docs/report
 
-DIR[STATIC]=${DIR[BUILD]}/_static
+DIR[STATIC]=${DIR[BUILD,HTML]}/_static
 DIR[STATIC,VPP]=${DIR[STATIC]}/vpp
 DIR[STATIC,DPDK]=${DIR[STATIC]}/dpdk
 DIR[STATIC,ARCH]=${DIR[STATIC]}/archive
index bf6d584..597cff0 100755 (executable)
@@ -2,19 +2,26 @@
 
 set -x
 
-# Process parameters
-# Debugging
-DEBUG=0
-# Latex Builder
-LATEX=0
+# Script directory
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+# Get actual date
+DATE=$(date -u '+%d-%b-%Y')
 
+# Load configuration
+source ${SCRIPT_DIR}/run_report.cfg
+
+# Process parameters
 for i in "$@"; do
 case $i in
     --debug)
-        DEBUG=1
+        CFG[DEBUG]=1
+    ;;
+    --no_latex)
+        CFG[BLD_LATEX]=0
     ;;
-    --latex)
-        LATEX=1
+    --no_html)
+        CFG[BLD_HTML]=0
     ;;
     *)
         # unknown option
@@ -22,20 +29,11 @@ case $i in
 esac
 done
 
-# Script directory
-SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-
-# Get actual date
-DATE=$(date -u '+%d-%b-%Y')
-
-# Load configuration
-source ${SCRIPT_DIR}/run_report.cfg
-
 # Install system dependencies
 sudo apt-get -y update
 sudo apt-get -y install libxml2 libxml2-dev libxslt-dev build-essential \
     zlib1g-dev unzip
-if [[ ${LATEX} -eq 1 ]] ;
+if [[ ${CFG[BLD_LATEX]} -eq 1 ]] ;
 then
     sudo apt-get -y install librsvg2-bin texlive-latex-recommended \
         texlive-fonts-recommended texlive-fonts-extra texlive-latex-extra latexmk wkhtmltopdf
@@ -47,7 +45,7 @@ trap 'rm -rf ${DIR[WORKING]}; exit' EXIT
 trap 'rm -rf ${DIR[WORKING]}; exit' ERR
 
 # Remove the old build
-rm -rf ${DIR[BUILD]} || true
+rm -rf ${DIR[BUILD,HTML]} || true
 rm -rf ${DIR[BUILD,LATEX]} || true
 rm -rf ${DIR[WORKING]} || true
 
@@ -74,7 +72,7 @@ mkdir -p ${DIR[PLOT,DPDK]}
 
 ### VPP PERFORMANCE SOURCE DATA
 
-#if [[ ${DEBUG} -eq 1 ]] ;
+#if [[ ${CFG[DEBUG]} -eq 1 ]] ;
 #    cp ./${JOB[PERF,VPP]}-${JOB[PERF,VPP,FBLD]}.zip ${DIR[STATIC,ARCH]}/${JOB[PERF,VPP]}-${JOB[PERF,VPP,FBLD]}.zip
 #fi
 
@@ -82,13 +80,13 @@ blds=${JOB[PERF,VPP,BLD]}
 for i in ${blds[@]}; do
     curl --silent ${URL[JENKINS,CSIT]}/${JOB[PERF,VPP]}/${i}/robot/report/output_perf_data.xml \
         --output ${DIR[PLOT,VPP]}/${JOB[PERF,VPP]}-${i}.xml
-    if [[ ${DEBUG} -eq 0 ]] ;
+    if [[ ${CFG[DEBUG]} -eq 0 ]] ;
     then
         curl --fail --silent ${URL[JENKINS,CSIT]}/${JOB[PERF,VPP]}/${i}/robot/report/\*zip\*/robot-plugin.zip \
             --output ${DIR[STATIC,ARCH]}/${JOB[PERF,VPP]}-${i}.zip
     fi
 done
-if [[ ${DEBUG} -eq 0 ]] ;
+if [[ ${CFG[DEBUG]} -eq 0 ]] ;
 then
     curl --fail --silent ${URL[JENKINS,CSIT]}/${JOB[PERF,VPP]}/${JOB[PERF,VPP,FBLD]}/robot/report/\*zip\*/robot-plugin.zip \
         --output ${DIR[STATIC,ARCH]}/${JOB[PERF,VPP]}-${JOB[PERF,VPP,FBLD]}.zip
@@ -103,7 +101,7 @@ done
 
 ### DPDK PERFORMANCE SOURCE DATA
 
-#if [[ ${DEBUG} -eq 1 ]] ;
+#if [[ ${CFG[DEBUG]} -eq 1 ]] ;
 #    cp ./${JOB[PERF,DPDK]}-${JOB[PERF,DPDK,FBLD]}.zip ${DIR[STATIC,ARCH]}/${JOB[PERF,DPDK]}-${JOB[PERF,DPDK,FBLD]}.zip
 #fi
 
@@ -111,7 +109,7 @@ blds=${JOB[PERF,DPDK,BLD]}
 for i in ${blds[@]}; do
     curl --silent ${URL[JENKINS,CSIT]}/${JOB[PERF,DPDK]}/${i}/robot/report/output_perf_data.xml \
         --output ${DIR[PLOT,DPDK]}/${JOB[PERF,DPDK]}-${i}.xml
-    if [[ ${DEBUG} -eq 0 ]] ;
+    if [[ ${CFG[DEBUG]} -eq 0 ]] ;
     then
         curl --fail --silent ${URL[JENKINS,CSIT]}/${JOB[PERF,DPDK]}/${i}/robot/report/\*zip\*/robot-plugin.zip \
             --output ${DIR[STATIC,ARCH]}/${JOB[PERF,DPDK]}-${i}.zip
@@ -121,11 +119,11 @@ cp ${DIR[PLOT,DPDK]}/* ${DIR[STATIC,TREND]}
 
 ### FUNCTIONAL SOURCE DATA
 
-#if [[ ${DEBUG} -eq 1 ]] ;
+#if [[ ${CFG[DEBUG]} -eq 1 ]] ;
 #    cp ./${JOB[FUNC,VPP]}-${JOB[FUNC,VPP,BLD]}.zip ${DIR[STATIC,ARCH]}/${JOB[FUNC,VPP]}-${JOB[FUNC,VPP,BLD]}.zip
 #fi
 
-if [[ ${DEBUG} -eq 0 ]] ;
+if [[ ${CFG[DEBUG]} -eq 0 ]] ;
 then
     curl --fail --silent ${URL[JENKINS,CSIT]}/${JOB[FUNC,VPP]}/${JOB[FUNC,VPP,BLD]}/robot/report/\*zip\*/robot-plugin.zip \
         --output ${DIR[STATIC,ARCH]}/${JOB[FUNC,VPP]}-${JOB[FUNC,VPP,BLD]}.zip
@@ -133,11 +131,11 @@ fi
 
 ### HONEYCOMB FUNCTIONAL SOURCE DATA
 
-#if [[ ${DEBUG} -eq 1 ]] ;
+#if [[ ${CFG[DEBUG]} -eq 1 ]] ;
 #    cp ./${JOB[FUNC,HC]}-${JOB[FUNC,HC,BLD]}.zip ${DIR[STATIC,ARCH]}/${JOB[FUNC,HC]}-${JOB[FUNC,HC,BLD]}.zip
 #fi
 
-if [[ ${DEBUG} -eq 0 ]] ;
+if [[ ${CFG[DEBUG]} -eq 0 ]] ;
 then
     curl --fail --silent ${URL[JENKINS,HC]}/${JOB[FUNC,HC]}/${JOB[FUNC,HC,BLD]}/robot/report/\*zip\*/robot-plugin.zip \
         --output ${DIR[STATIC,ARCH]}/${JOB[FUNC,HC]}-${JOB[FUNC,HC,BLD]}.zip
@@ -145,11 +143,11 @@ fi
 
 ### HONEYCOMB PERFORMANCE SOURCE DATA
 
-#if [[ ${DEBUG} -eq 1 ]] ;
+#if [[ ${CFG[DEBUG]} -eq 1 ]] ;
 #    cp ./${JOB[PERF,HC]}-${JOB[PERF,HC,BLD]}.zip ${DIR[STATIC,ARCH]}/${JOB[PERF,HC]}-${JOB[PERF,HC,BLD]}.zip
 #fi
 
-if [[ ${DEBUG} -eq 0 ]] ;
+if [[ ${CFG[DEBUG]} -eq 0 ]] ;
 then
     blds=${JOB[PERF,HC,BLD]}
     for i in ${blds[@]}; do
@@ -160,11 +158,11 @@ fi
 
 ### NSH_SFC SOURCE DATA
 
-#if [[ ${DEBUG} -eq 1 ]] ;
+#if [[ ${CFG[DEBUG]} -eq 1 ]] ;
 #    cp ./${JOB[FUNC,NSH]}-${JOB[FUNC,NSH,BLD]}.zip ${DIR[STATIC,ARCH]}/${JOB[FUNC,NSH]}-${JOB[FUNC,NSH,BLD]}.zip
 #fi
 
-if [[ ${DEBUG} -eq 0 ]] ;
+if [[ ${CFG[DEBUG]} -eq 0 ]] ;
 then
     curl --fail --silent ${URL[JENKINS,CSIT]}/${JOB[FUNC,NSH]}/${JOB[FUNC,NSH,BLD]}/robot/report/\*zip\*/robot-plugin.zip \
         --output ${DIR[STATIC,ARCH]}/${JOB[FUNC,NSH]}-${JOB[FUNC,NSH,BLD]}.zip
@@ -172,7 +170,7 @@ fi
 
 # Data post processing
 
-if [[ ${DEBUG} -eq 0 ]] ;
+if [[ ${CFG[DEBUG]} -eq 0 ]] ;
 then
     # VPP PERF
     unzip -o ${DIR[STATIC,ARCH]}/${JOB[PERF,VPP]}-${JOB[PERF,VPP,FBLD]}.zip -d ${DIR[WORKING]}/
@@ -224,7 +222,7 @@ then
 fi
 
 # Generate tables for performance improvements
-if [[ ${DEBUG} -eq 0 ]] ;
+if [[ ${CFG[DEBUG]} -eq 0 ]] ;
 then
     python run_improvments_tables.py \
         --input ${DIR[DTR,PERF,VPP,IMPRV]} \
@@ -578,12 +576,14 @@ python run_plot.py --input ${DIR[PLOT,DPDK]} \
     --xpath '//*[@framesize="64B" and contains(@tags,"BASE") and contains(@tags,"NDRDISC") and contains(@tags,"2T2C") and contains(@tags,"IP4FWD")]' --latency lat_50
 
 # HTML BUILDER
-sphinx-build -v -c . -a -b html -E \
-    -D release=$1 -D version="$1 report - $DATE" \
-    ${DIR[RST]} ${DIR[BUILD]}/
+if [[ ${CFG[BLD_HTML]} -eq 1 ]] ;
+then
+    sphinx-build -v -c . -a -b html -E \
+        -D release=$1 -D version="$1 report - $DATE" \
+        ${DIR[RST]} ${DIR[BUILD,HTML]}/
 
-# Patch the CSS for tables layout
-cat - > ${DIR[CSS_PATCH_FILE]} <<"_EOF"
+    # Patch the CSS for tables layout
+    cat - > ${DIR[CSS_PATCH_FILE]} <<"_EOF"
 /* override table width restrictions */
 @media screen and (min-width: 767px) {
     .wy-table-responsive table td, .wy-table-responsive table th {
@@ -598,9 +598,10 @@ cat - > ${DIR[CSS_PATCH_FILE]} <<"_EOF"
     }
 }
 _EOF
+fi
 
 # LATEX BUILDER
-if [[ ${LATEX} -eq 1 ]] ;
+if [[ ${CFG[BLD_LATEX]} -eq 1 ]] ;
 then
     # Convert PyPLOT graphs in HTML format to PDF.
     for f in ${DIR[STATIC,VPP]}/*; do
@@ -609,7 +610,7 @@ then
     for f in ${DIR[STATIC,DPDK]}/*; do
         wkhtmltopdf ${f} ${f%.html}.pdf
     done
-    rsvg-convert -z 10 -f pdf -o fdio.pdf fdio.svg
+    #rsvg-convert -z 10 -f pdf -o fdio.pdf fdio.svg
 
     # Generate the LaTeX documentation
     sphinx-build -v -c . -a -b latex -E \
@@ -620,9 +621,9 @@ then
     pdflatex -interaction nonstopmode csit.tex || true
     cp csit.pdf ../${DIR[STATIC,ARCH]}/csit_$1.pdf
     cd ${SCRIPT_DIR}
-    rm -f fdio.pdf
+    #rm -f fdio.pdf
 fi
 
 # Create archive
 echo Creating csit.report.tar.gz ...
-tar -czvf ./csit.report.tar.gz ${DIR[BUILD]}
+tar -czvf ./csit.report.tar.gz ${DIR[BUILD,HTML]}