Difference between revisions of "CSIT/csit-perf-tc-naming-change"

From fd.io
Jump to: navigation, search
(CSIT Functional Tests)
(CSIT Functional Tests)
Line 527: Line 527:
 
| bridge_domain_untagged.robot TC04
 
| bridge_domain_untagged.robot TC04
 
|-
 
|-
! 6a
+
! 6
 
| virtio2p-eth-l2xcbase-func.robot
 
| virtio2p-eth-l2xcbase-func.robot
 
| l2_xconnect_untagged.robot TC01..TC02
 
| l2_xconnect_untagged.robot TC01..TC02
 
|-
 
|-
! 6b
+
! 7
 
| virtio2p-eth-l2xcbase-eth-2vhost-1vm-func.robot
 
| virtio2p-eth-l2xcbase-eth-2vhost-1vm-func.robot
 
| l2_xconnect_untagged.robot TC03..TC04
 
| l2_xconnect_untagged.robot TC03..TC04
 
|-
 
|-
! 7
+
! 8
 
| virtio2p-eth-l2xcbase-iacldstbase-func.robot
 
| virtio2p-eth-l2xcbase-iacldstbase-func.robot
 
| l2_iacl_untagged.robot TC01..TC04
 
| l2_iacl_untagged.robot TC01..TC04
 
|-
 
|-
! 8
+
! 9
 
| virtio2p-ethip4-ip4base-copblklistbase-func.robot
 
| virtio2p-ethip4-ip4base-copblklistbase-func.robot
 
| cop_whitelist_blacklist.robot TC02
 
| cop_whitelist_blacklist.robot TC02
 
|-
 
|-
! 9
+
! 10
 
| virtio2p-ethip4-ip4base-copwhlistbase-func.robot
 
| virtio2p-ethip4-ip4base-copwhlistbase-func.robot
 
| cop_whitelist_blacklist.robot TC01
 
| cop_whitelist_blacklist.robot TC01
 
|-
 
|-
! 10
+
! 11
 
| virtio2p-ethip4-ip4base-func.robot
 
| virtio2p-ethip4-ip4base-func.robot
 
| ipv4_untagged.robot TC01..TC08
 
| ipv4_untagged.robot TC01..TC08
 
|-
 
|-
! 11
+
! 12
 
| virtio2p-ethip4-ip4base-iacldstbase-func.robot
 
| virtio2p-ethip4-ip4base-iacldstbase-func.robot
 
| ipv4_iacl_untagged.robot TC01..TC11
 
| ipv4_iacl_untagged.robot TC01..TC11
 
|-
 
|-
! 12
+
! 13
 
| virtio2p-ethip4-ip4base-ip4arp-func.robot
 
| virtio2p-ethip4-ip4base-ip4arp-func.robot
 
| ipv4_arp_untagged.robot TC01,TC02
 
| ipv4_arp_untagged.robot TC01,TC02
 
|-
 
|-
! 13
+
! 14
 
| virtio2p-ethip4-ip4base-ip4dhcpclient-func.robot
 
| virtio2p-ethip4-ip4base-ip4dhcpclient-func.robot
 
| dhcp_client.robot TC01..TC05
 
| dhcp_client.robot TC01..TC05
 
|-
 
|-
! 14
+
! 15
 
| virtio2p-ethip4-ip4base-ip4dhcpproxy-func.robot
 
| virtio2p-ethip4-ip4base-ip4dhcpproxy-func.robot
 
| dhcp_v4_proxy.robot TC01,TC02
 
| dhcp_v4_proxy.robot TC01,TC02
 
|-
 
|-
! 15
+
! 16
 
| virtio2p-ethip4-ip4base-ip4ecmp-func.robot
 
| virtio2p-ethip4-ip4base-ip4ecmp-func.robot
 
| ipv4_multipath_routing.robot TC01
 
| ipv4_multipath_routing.robot TC01
 
|-
 
|-
! 16
+
! 17
 
| virtio2p-ethip4-ip4base-ip4proxyarp-func.robot
 
| virtio2p-ethip4-ip4base-ip4proxyarp-func.robot
 
| ipv4_proxy_arp_untagged.robot TC01..TC05
 
| ipv4_proxy_arp_untagged.robot TC01..TC05
|-
 
! 17
 
| virtio2p-ethip4-ip4base-ip6dhcpproxy-func.robot
 
| dhcp_v6_proxy.robot TC01
 
 
|-
 
|-
 
! 18
 
! 18

Revision as of 16:14, 16 January 2017

CSIT Performance TCs Naming

Background

Now that the number and type of CSIT test cases (TCs) grew significantly, existing naming notation does not work anymore. Firstly, the existing practice does not always follow any strict naming convention. Secondly current TC names do not always clearly capture packet encapsulations, the actual type or content of the tests. Thirdly HW configurations in terms of NICs, ports and their locality are not captured in the name. Bottom line, to address these points within the CSIT project, we agreed to define a new more complete and stricter TC naming convention, and to apply this to all existing and new test cases.

This wiki page captures this change.

CSIT Tests - Naming

Overview

The approach is to use tree naming convention and to encode following testing information into test names:

  1. packet network port configuration
    • physical port type;
    • NIC model;
    • port-NIC locality;
  2. packet encapsulations
  3. VPP packet processing
    • packet forwarding mode
    • packet processing function(s)
  4. packet forwarding path
    • if present, network functions (processes, containers, VMs) and their topology within the computer;
  5. main measured variable, type of test;

Proposed convention is to encode physical ports and NIC on the left (underlay), followed by outer most frame header, then other stacked headers up to the header processed by vSwitch-VPP, then VPP forwarding function, then encap on vhost interface, number of vhost interfaces, number of VMs. If chained VMs present, they get added on the right. Test topology is expected to be symmetric, in other words packets enter and leave SUT through ports specified on the left of the test name. Here some examples to illustrate the convention followed by the complete legend, and tables mapping the new test filenames to old ones.

Convention

CSIT test naming convention for common tested VNF topologies:

  1. Physical port to physical port - a.k.a. NIC-to-NIC, Phy-to-Phy, P2P
    • PortNICConfig-WireEncapsulation-PacketForwardingFunction-PacketProcessingFunction1-...-PacketProcessingFunctionN-TestType
    • 10ge2p1x520-dot1q-l2bdbasemaclrn-ndrdisc.robot => 2 ports of 10GE on Intel x520 NIC, dot1q tagged Ethernet, L2 bridge-domain baseline switching with MAC learning, NDR throughput discovery.
    • 10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-ndrchk.robot => 2 ports of 10GE on Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain baseline switching with MAC learning, NDR throughput discovery.
    • 10ge2p1x520-ethip4-ip4base-ndrdisc.robot => 2 ports of 10GE on Intel x520 NIC, IPv4 baseline routed forwarding, NDR throughput discovery.
    • 10ge2p1x520-ethip6-ip6scale200k-ndrdisc.robot => 2 ports of 10GE on Intel x520 NIC, IPv6 scaled up routed forwarding, NDR throughput discovery.
    • 10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot => 2 ports of 10GE on Intel x520 NIC, IPv4 baseline routed forwarding, ingress Access Control Lists baseline matching on destination, NDR throughput discovery.
    • 40ge2p1vic1385-ethip4-ip4base-ndrdisc.robot => 2 ports of 40GE on Cisco vic1385 NIC, IPv4 baseline routed forwarding, NDR throughput discovery.
    • virtio2p-ethip4-ip4base-func.robot => 2 ports of Virtio, IPv4 baseline routed forwarding, functional tests.
  2. Physical port to VM (or VM chain) to physical port - a.k.a. NIC2VM2NIC, P2V2P, NIC2VMchain2NIC, P2V2V2P
    • PortNICConfig-WireEncapsulation-PacketForwardingFunction-PacketProcessingFunction1-...-PacketProcessingFunctionN-VirtEncapsulation-VirtPortConfig-VMconfig-TestType
    • 10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot => 2 ports of 10GE on Intel x520 NIC, dot1q tagged Ethernet, L2 bridge-domain switching to/from two vhost interfaces and one VM, NDR throughput discovery.
    • 10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot => 2 ports of 10GE on Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain switching to/from two vhost interfaces and one VM, NDR throughput discovery.
    • 10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-4vhost-2vm-ndrdisc.robot => 2 ports of 10GE on Intel x520 NIC, IPv4 VXLAN Ethernet, L2 bridge-domain switching to/from four vhost interfaces and two VMs, NDR throughput discovery.
    • virtio2p-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot => 2 ports of Virtio, IPv4 VXLAN Ethernet, L2 bridge-domain switching to/from two vhost interfaces and one VM, functional tests.

Legend

  1. PortNICConfig - packet network port configuration: physical port type, NIC model, port-NIC locality
    1. <n>ge | virtio - port type
      • <n>ge - Gigabit Ethernet, n=10|40|100|200|400.
      • virtio - virtio.
    2. <n>p - number of physical Ethernet ports, ports distributed evenly across tested NICs, n=1,2,...
    3. <n><nic_model> - number of NICs and NIC model, n=1,2,...
  2. WireEncapsulation
    1. eth | dot1q | dot1ad - Ethernet header
      • eth - untagged Ethernet on the physical wire.
      • dot1q - single VLAN tag on physical wire.
      • dot1ad - double VLAN tag on physical wire.
    2. ip4 | ip6 | ip6e - outer IP header
      • ip4 - IPv4 header.
      • ip6 - IPv6 header.
      • ip6e - IPv6 extended header.
    3. ipsectrt | ipsectnl - IPSec crypto
      • ipsectrt - IPSec transport mode.
      • ipsectnl - IPSec tunnel mode.
    4. vxlan | lisp | gre | gpe - tunnel header
      • vxlan - VXLAN tunnel header.
      • lisp - LISP tunnel header.
      • gre - GRE tunnel header.
      • gpe - GPE tunnel header.
  3. PacketForwardingFunction
    1. l2bd - VPP L2 bridge-domain
      1. base | scale
        • base - baseline test with one L2 MAC flow received per interface.
        • scale<n> - scale test with many L2 MAC flows received per interface, <n> - number of 48-bit MAC address entries present in L2 MAC lookup table.
      2. maclrn | macstc
        • maclrn - learning L2 MAC addresses or MAC flows.
        • macstc - static L2 MAC addresses or MAC flows, programmed before the test.
    2. l2xc - VPP L2 point-to-point crossconnect
      1. base | scale
        • base - baseline test with one L2 cross-connect configured.
        • scale<n> - scale test with <n> L2 cross-connects configured.
    3. ip4 - VPP IPv4 routed forwarding
      1. base | scale
        • base - baseline test with one IPv4 flow received per interface.
        • scale<n> - scale tests with many IPv4 flows received per interface, <n> - number of /32 IPv4 address entries present in IPv4 lookup table.
    4. ip6 - VPP IPv6 routed forwarding
      1. base | scale
        • base - baseline test with one IPv6 flow received per interface.
        • scale<n> - scale tests with many IPv6 flows received per interface, <n> - number of /128 IPv6 address entries present in IPv6 lookup table.
  4. PacketProcessingFunction
    1. l2shg - L2 Split Horizon Group.
    2. iacldstbase - ingress Access Control Lists baseline matching on destination.
    3. ipolicemarkbase - ingress policer and marker baseline.
    4. copwhtlistbase - ingress IP Cop security whitelist filter entries, /24 for IPv4, /64 for IPv6.
    5. copblklistbase - ingress IP Cop security blacklist filter entries, /24 for IPv4, /64 for IPv6
    6. rpf - IP Reverse Path Forwarding check.
    7. ip4dhcpclient - IPv4 DHCP client.
    8. ip4dhcpcproxy - IPv4 DHCP proxy.
  5. VirtEncapsulation
    1. eth | dot1q | dot1ad
      • eth - untagged Ethernet on virtual interface.
      • dot1q - single VLAN tag on virtual interface.
      • dot1ad - double VLAN tag on virtual interface.
  6. VirtPortConfig
    1. <n>vhost - vhost virtual interface, n=1,2, ...
  7. VMconfig
    1. <n>vm - Virtual Machines, n=1,2, ...
  8. TestType
    1. ndrdisc | ndrchk | pdrdisc | pdrchk | func
      • ndrdisc - NDR throughput discovery using RFC2544 binary search.
      • ndrchk - NDR throughput check against a reference NDR throughput.
      • pdrdisc - PDR throughput discovery using RFC2544 binary search.
      • pdrchk - PDR throughput check against a reference NDR throughput.
      • func - functional tests.

Examples

CSIT Perf - Suites and Test Cases

Below examples of CSIT Performance Suite Names (filename.robot) and included test cases.

  1. suite: 10ge2p1x520-ethip4-ip4base-ndrdisc.robot
    1. test cases:
      1. tc01-64B-2t1c-ethip4-ip4base-ndrdisc
      2. tc02-IMIX-1t1c-ethip4-ip4base-ndrdisc
      3. tc03-1518B-1t1c-ethip4-ip4base-ndrdisc
  2. suite: 10ge2p1x710-ethip4-ip4base-ndrdisc.robot
    1. test cases:
      1. tc01-64B-2t1c-ethip4-ip4base-ndrdisc
      2. tc02-IMIX-1t1c-ethip4-ip4base-ndrdisc
      3. tc03-1518B-1t1c-ethip4-ip4base-ndrdisc
  3. suite: 40ge2p1xl710-ethip4-ip4base-ndrdisc.robot
    1. test cases:
      1. tc01-64B-2t1c-ethip4-ip4base-ndrdisc
      2. tc02-IMIX-1t1c-ethip4-ip4base-ndrdisc
      3. tc03-1518B-1t1c-ethip4-ip4base-ndrdisc

CSIT Perf - Trending Graphs

Below examples of CSIT Perf Trending Graphs and included test case result plots.

  1. graph: 64B-1t1c-ethip4-ip4*-ndrdisc
    1. test case result plots:
      1. 10ge2p1x520-ethip4-ip4base
      2. 10ge2p1x710-ethip4-ip4base
      3. 40ge2p1xl710-ethip4-ip4base
      4. 10ge2p1x520-ethip4-ip4scale20k
      5. 10ge2p1x520-ethip4-ip4scale200k
      6. 10ge2p1x520-ethip4-ip4scale2m
      7. 10ge2p1x520-ethip4-ip4base-copwhtlistbase
      8. 10ge2p1x520-ethip4-ip4base-iacldstbase
      9. 10ge2p1x520-ethip4-ip4base-ipolicemarkbase
  2. graph: 64B-1t1c-ethip6-ip6*-ndrdisc
    1. test case result plots:
      1. 10ge2p1x520-ethip6-ip6base
      2. 10ge2p1x710-ethip6-ip6base
      3. 40ge2p1xl710-ethip6-ip6base
      4. 10ge2p1x520-ethip6-ip6scale20k
      5. 10ge2p1x520-ethip6-ip6scale200k
      6. 10ge2p1x520-ethip6-ip6scale2m
      7. 10ge2p1x520-ethip6-ip6base-copwhtlistbase
      8. 10ge2p1x520-ethip6-ip6base-iacldstbase
      9. 10ge2p1x520-ethip6-ip6base-ipolicemarkbase

CSIT Performance Tests

Performance tests executed in FD.io CSIT CPL (Continuous Performance Lab) physical testbeds. Naming change code in FD.io CSIT project by patch #3856.

Throughput NDR Discovery

Sorted alphabetically by new name.

# New Test Filename Old Test Filename
1 10ge2p1x520-dot1ad-l2xcbase-ndrdisc.robot Long_Xconnect_Dot1ad_Intel-X520-DA2.robot
2 10ge2p1x520-dot1q-l2xcbase-ndrdisc.robot Long_Xconnect_Dot1q_Intel-X520-DA2.robot
3 10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot Long_Bridge_Domain_Vhost_Intel-X520-DA2.robot
4 10ge2p1x520-eth-l2bdbasemaclrn-ndrdisc.robot Bridge_Domain_Intel-X520-DA2.robot
5 10ge2p1x520-eth-l2xcbase-eth-2vhost-1vm-ndrdisc.robot Long_Xconnect_Vhost_Intel-X520-DA2.robot
6 10ge2p1x520-eth-l2xcbase-ndrdisc.robot Long_Xconnect_Intel-X520-DA2.robot
7 10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrdisc.robot Long_IPv4_Cop_Intel-X520-DA2.robot
8 10ge2p1x520-ethip4-ip4base-eth-2vhost-1vm-ndrdisc.robot Long_IPv4_Vhost_Intel-X520-DA2.robot
9 10ge2p1x520-ethip4-ip4base-iacldstbase-ndrdisc.robot Long_IPv4_iAcl_Intel-X520-DA2.robot
10 10ge2p1x520-ethip4-ip4base-ndrdisc.robot Long_IPv4_Intel-X520-DA2.robot
11 10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrdisc.robot Long_IPv4_Policer_Intel-X520-DA2.robot
12 10ge2p1x520-ethip4-ip4scale200k-ndrdisc.robot Long_IPv4_Fib_200k_Intel-X520-DA2.robot
13 10ge2p1x520-ethip4-ip4scale20k-ndrdisc.robot Long_IPv4_Fib_20k_Intel-X520-DA2.robot
14 10ge2p1x520-ethip4-ip4scale2m-ndrdisc.robot Long_IPv4_Fib_2M_Intel-X520-DA2.robot
15 10ge2p1x520-ethip4lispip4-ip4base-ndrdisc.robot Long_Lisp_Intel-X520-DA2.robot
16 10ge2p1x520-ethip4lispip6-ip4base-ndrdisc.robot Long_Lisp_Intel-X520-DA2.robot
17 10ge2p1x520-ethip4vxlan-l2xcbase-ndrdisc.robot Long_Xconnect_Vxlan_Ipv4_Intel-X520-DA2.robot
18 10ge2p1x520-ethip6-ip6base-copwhtlistbase-ndrdisc.robot Long_IPv6_Cop_Intel-X520-DA2.robot
19 10ge2p1x520-ethip6-ip6base-iacldstbase-ndrdisc.robot Long_IPv6_iAcl_Intel-X520-DA2.robot
20 10ge2p1x520-ethip6-ip6base-ndrdisc.robot Long_IPv6_Intel-X520-DA2.robot
21 10ge2p1x520-ethip6-ip6scale200k-ndrdisc.robot Long_IPv6_Fib_200k_Intel-X520-DA2.robot
22 10ge2p1x520-ethip6-ip6scale20k-ndrdisc.robot Long_IPv6_Fib_20k_Intel-X520-DA2.robot
23 10ge2p1x520-ethip6-ip6scale2m-ndrdisc.robot Long_IPv6_Fib_2M_Intel-X520-DA2.robot
24 10ge2p1x520-ethip6lispip4-ip6base-ndrdisc.robot Long_Lisp_Intel-X520-DA2.robot
25 10ge2p1x520-ethip6lispip6-ip6base-ndrdisc.robot Long_Lisp_Intel-X520-DA2.robot
26 10ge2p1x710-eth-l2bdbasemaclrn-ndrdisc.robot Bridge_Domain_Intel-X710-DA2.robot
27 40ge2p1xl710-eth-l2bdbasemaclrn-ndrdisc.robot Bridge_Domain_Intel-XL710.robot
28 40ge2p1xl710-eth-l2xcbase-ndrdisc.robot Long_Xconnect_Intel-XL710.robot
29 40ge2p1xl710-ethip4-ip4base-ndrdisc.robot Long_IPv4_Intel-XL710.robot
30 40ge2p1xl710-ethip6-ip6base-ndrdisc.robot Long_IPv6_Intel-XL710.robot

Throughput NDR Check

# New Test Filename Old Test Filename
1 10ge2p1x520-dot1ad-l2xcbase-ndrchk.robot Short_Xconnect_Dot1ad_Intel-X520-DA2.robot
2 10ge2p1x520-dot1q-l2xcbase-ndrchk.robot Short_Xconnect_Dot1q_Intel-X520-DA2.robot
3 10ge2p1x520-eth-l2bdbasemaclrn-ndrchk.robot Short_Bridge_Domain_Intel-X520-DA2.robot
4 10ge2p1x520-eth-l2xcbase-ndrchk.robot Short_Xconnect_Intel-X520-DA2.robot
5 10ge2p1x520-ethip4-ip4base-copwhtlistbase-ndrchk.robot Short_IPv4_Cop_Intel-X520-DA2.robot
6 10ge2p1x520-ethip4-ip4base-iacldstbase-ndrchk.robot Short_IPv4_iAcl_Intel-X520-DA2.robot
7 10ge2p1x520-ethip4-ip4base-ndrchk.robot Short_IPv4_Intel-X520-DA2.robot
8 10ge2p1x520-ethip4-ip4base-ipolicemarkbase-ndrchk.robot Short_IPv4_Policer_Intel-X520-DA2.robot
9 10ge2p1x520-ethip4-ip4scale200k-ndrchk.robot Short_IPv4_Fib_200k_Intel-X520-DA2.robot
10 10ge2p1x520-ethip4-ip4scale20k-ndrchk.robot Short_IPv4_Fib_20k_Intel-X520-DA2.robot
11 10ge2p1x520-ethip4-ip4scale2m-ndrchk.robot Short_IPv4_Fib_2M_Intel-X520-DA2.robot
12 10ge2p1x520-ethip4lispip4-ip4base-ndrchk.robot Short_Lisp_Intel-X520-DA2.robot
13 10ge2p1x520-ethip4lispip6-ip4base-ndrchk.robot Short_Lisp_Intel-X520-DA2.robot
14 10ge2p1x520-ethip4vxlan-l2xcbase-ndrchk.robot Short_Xconnect_Vxlan_Ipv4_Intel-X520-DA2.robot
15 10ge2p1x520-ethip6-ip6base-copwhtlistbase-ndrchk.robot Short_IPv6_Cop_Intel-X520-DA2.robot
16 10ge2p1x520-ethip6-ip6base-iacldstbase-ndrchk.robot Short_IPv6_iAcl_Intel-X520-DA2.robot
17 10ge2p1x520-ethip6-ip6base-ndrchk.robot Short_IPv6_Intel-X520-DA2.robot
18 10ge2p1x520-ethip6-ip6scale200k-ndrchk.robot Short_IPv6_Fib_200k_Intel-X520-DA2.robot
19 10ge2p1x520-ethip6-ip6scale20k-ndrchk.robot Short_IPv6_Fib_20k_Intel-X520-DA2.robot
20 10ge2p1x520-ethip6-ip6scale2m-ndrchk.robot Short_IPv6_Fib_2M_Intel-X520-DA2.robot
21 10ge2p1x520-ethip6lispip4-ip6base-ndrchk.robot Short_Lisp_Intel-X520-DA2.robot
22 10ge2p1x520-ethip6lispip6-ip6base-ndrchk.robot Short_Lisp_Intel-X520-DA2.robot

Performance Trending Graphs

One of the CSIT goals is to auto-generate VPP performance trending graphs for tested use cases and configurations. Trending graphs are auto-generated for Jenkins csit-perf* jobs using Jenkins plugin <add link> and for CSIT release reports using separate python scripts <add link>. For better readibility VPP performance results are marked with RF tags and grouped into separate graphs as follows:

  1. L2BD, L2XC
    • tags: L2BDMACSTAT or L2BDMACLRN or L2XCFWD
  2. IPv4 base, scale, feature
    • tags: IP4FWD
  3. IPv6 base, scale, feature
    • tags: IP6FWD
  4. Overlay tunnels - LISP, VXLAN, GPE, GRE
    • tags: VXLAN or LISP or LISPGPE or VXLANGPE or GRE
  5. Crypto in software: IP4FWD, IP6FWD
    • tags: IPSECSW and (IPSECTRAN or IPSECTUN)
  6. Crypto in hardware: IP4FWD, IP6FWD
    • tags: IPSECHW and (IPSECTRAN or IPSECTUN)
  7. Overlay tunnels with crypto in software
    • tags: (VXLAN or LISP or LISPGPE or VXLANGPE or GRE) and IPSECSW and (IPSECTRAN or IPSECTUN)
  8. Overlay tunnels with crypto in hardware
    • tags: (VXLAN or LISP or LISPGPE or VXLANGPE or GRE) and IPSEHW and (IPSECTRAN or IPSECTUN)
  9. vhost-user
    • tags: VHOST and (ETH or DOT1Q or VXLAN)

For each of the above, separate graph series is auto-generated for:

  1. Throughput type
    1. NDR
      • tags: NDRDISC
    2. PDR
      • tags: PDRDISC
  2. Worker thread and core configuration
    1. 1t1c - 1 worker-thread, 1 core
      • tags: 1T1C
    2. 2t2c - 2 worker-threads, 2 cores
      • tags: 2T2C
    3. 4t4c - 4 worker-threads, 4 cores
      • tags: 2T2C

Resulting total number of auto-generated graphs: 9*5 = 45 graphs.

Test RF Tagging for Trending Graphs

In order to group performance test results into auto-generated trending graphs, CSIT is using Robot Framework (RF) tags. CSIT RF tags are defined and described in `/docs/tag_documentation.rst'. RF tag changes related to test naming change are captured in patch #3856.

  1. Functional and performance tags
    1. FUNCTEST - All functional test cases.
    2. PERFTEST - All performance test cases.
  2. Performance testing tags
    1. PDRDISC - Partial Drop Rate evaluation of single run result, with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted
    2. NDRDISC - Non Drop Rate evaluation of results. Loss acceptance of dropped packets is set to zero lost packets
    3. NDRCHK - Performance tests where TG verifies DUTs' throughput at ref-NDR (reference Non Drop Rate) with zero packet loss tolerance
    4. NDRPDRDISC - Find performance of DUT based on RFC2544 with linear / binary / combined search. (Previous LONG tests.)
  3. Test type tags
    1. BASE - Baseline test cases, no encapsulation, no feature(s) configured in tests.
    2. SCALE - Scale test cases.
    3. ENCAP - Test cases where encapsulation is used. Use also encapsulation tag(s).
    4. FEATURE - At least one feature is configured in test cases. Use also feature tag(s).
  4. Scaling tags
    1. FIB_20K - 2x10,000 entries in single fib table
    2. FIB_200K - 2x100,000 entries in single fib table
    3. FIB_2M - 2x1,000,000 entries in single fib table
  5. Forwarding mode tags
    1. L2BDMACSTAT - VPP L2 bridge-domain, L2 MAC static.
    2. L2BDMACLRN - VPP L2 bridge-domain, L2 MAC learning.
    3. L2XCFWD - VPP L2 point-to-point cross-connect.
    4. IP4FWD - VPP IPv4 routed forwarding.
    5. IP6FWD - VPP IPv6 routed forwarding.
  6. Underlay tags
    1. IP4UNRLAY - IPv4 underlay.
    2. IP6UNRLAY - IPv6 underlay.
    3. MPLSUNRLAY - MPLS underlay.
  7. Overlay tags
    1. L2OVRLAY - L2 overlay.
    2. IP4OVRLAY - IPv4 overlay (IPv4 payload).
    3. IP6OVRLAY - IPv6 overlay (IPv6 payload).
  8. Encapsulation tags
    1. ETH - All test cases with base Ethernet (no encapsulation).
    2. DOT1Q - All test cases with dot1q.
    3. DOT1AD - All test cases with dot1ad.
    4. LISP - All test cases with LISP.
    5. LISPGPE - All test cases with LISP-GPE.
    6. VXLAN - All test cases with Vxlan.
    7. VXLANGPE - All test cases with VXLAN-GPE.
    8. GRE - All test cases with GRE.
  9. Interface tags
    1. PHY - All test cases which use physical interface(s).
    2. VHOST - All test cases which uses VHOST.
    3. TUNTAP - All test cases which uses TUN and TAP.
    4. AFPKT - All test cases which uses AFPKT.
    5. NETMAP - All test cases which uses Netmap.
  10. Feature tags
    1. IACLDST - iACL destination.
    2. COPWHLIST - COP whitelist.
  11. Client-workload tags
    1. VM - All test cases which use at least one virtual machine.
    2. LXC - All test cases which use Linux container.
    3. APP - All test cases with specific APP use.
  12. Multi-threading tags
    1. STHREAD - All test cases using single poll mode thread.
    2. MTHREAD - All test cases using more then one poll mode driver thread.
    3. 1NUMA - All test cases with packet processing on single socket.
    4. 2NUMA - All test cases with packet processing on two sockets.
    5. SMT - All test cases with symmetric Multi-Threading (HyperThreading) enabled.
    6. NOSMT - All test cases with symmetric Multi-Threading (HyperThreading) disabled.
    7. 1T1C - 1 worker thread pinned to 1 dedicated physical core. 1 receive queue per interface. Main thread pinned to core 0.
    8. 2T2C - 2 worker threads pinned to 2 dedicated physical cores. 1 receive queue per interface. Main thread pinned to core 0.
    9. 4T4C - 4 worker threads pinned to 4 dedicated physical cores. 2 receive queues per interface. Main thread pinned to core 0.
    10. 6T6C - 6 worker threads pinned to 6 dedicated physical cores. 3 receive queues per interface. Main thread pinned to core 0.
    11. 8T8C - 8 worker threads pinned to 8 dedicated physical cores. 4 receive queues per interface. Main thread pinned to core 0.

CSIT Functional Tests

Functional tests executed in FD.io CSIT VIRL testbeds. Naming change coded in FD.io CSIT project by [<gerrit link to be added> patch #<gerrit patch id to be added>].

Sorted alphabetically by new name.

# New Test Filename Old Test Filename
1 virtio2p-eth-l2bdbasemaclrn-eth-2vhost-1vm-func.robot bridge_domain_untagged.robot TC06,TC07
2 virtio2p-eth-l2bdbasemaclrn-func.robot bridge_domain_untagged.robot TC01..TC03
3 virtio2p-eth-l2bdbasemaclrn-l2shg-func.robot bridge_domain_untagged.robot TC05
4 virtio2p-eth-l2bdbasemacstc-eth-2vhost-1vm-func.robot bridge_domain_untagged.robot TC08,TC09
5 virtio2p-eth-l2bdbasemacstc-func.robot bridge_domain_untagged.robot TC04
6 virtio2p-eth-l2xcbase-func.robot l2_xconnect_untagged.robot TC01..TC02
7 virtio2p-eth-l2xcbase-eth-2vhost-1vm-func.robot l2_xconnect_untagged.robot TC03..TC04
8 virtio2p-eth-l2xcbase-iacldstbase-func.robot l2_iacl_untagged.robot TC01..TC04
9 virtio2p-ethip4-ip4base-copblklistbase-func.robot cop_whitelist_blacklist.robot TC02
10 virtio2p-ethip4-ip4base-copwhlistbase-func.robot cop_whitelist_blacklist.robot TC01
11 virtio2p-ethip4-ip4base-func.robot ipv4_untagged.robot TC01..TC08
12 virtio2p-ethip4-ip4base-iacldstbase-func.robot ipv4_iacl_untagged.robot TC01..TC11
13 virtio2p-ethip4-ip4base-ip4arp-func.robot ipv4_arp_untagged.robot TC01,TC02
14 virtio2p-ethip4-ip4base-ip4dhcpclient-func.robot dhcp_client.robot TC01..TC05
15 virtio2p-ethip4-ip4base-ip4dhcpproxy-func.robot dhcp_v4_proxy.robot TC01,TC02
16 virtio2p-ethip4-ip4base-ip4ecmp-func.robot ipv4_multipath_routing.robot TC01
17 virtio2p-ethip4-ip4base-ip4proxyarp-func.robot ipv4_proxy_arp_untagged.robot TC01..TC05
18 virtio2p-ethip4-ip4base-ip6dhcpproxy-func.robot dhcp_v6_proxy.robot TC01
19 virtio2p-ethip4gre-ip4base-func.robot gre_encapsulation.robot TC01..TC06
20 virtio2p-ethip4ipsectnl-ip4base-func.robot ipsec_tunnel_mode_ipv4.robot TC01..TC19
21 virtio2p-ethip4ipsectpt-ip4base-func.robot ipsec_transport_mode_ipv4.robot TC01..TC19
22 virtio2p-ethip4ipsectptgpe-ip4base-func.robot ipsec_ipv4_lispgpe_ipv4.robot
23 virtio2p-ethip4ipsectptgpe-ip6base-func.robot ipsec_ipv6_lispgpe_ipv4.robot
24 virtio2p-ethip6-ip6base-copblklistbase-func.robot cop_whitelist_blacklist_IPv6.robot TC02
25 virtio2p-ethip6-ip6base-copwhlistbase-func.robot cop_whitelist_blacklist_IPv6.robot TC01
26 virtio2p-ethip6-ip6base-func.robot ipv6_untagged.robot TC01..TC08
27 virtio2p-ethip6-ip6base-iacldstbase-func.robot ipv6_iacl_untagged.robot TC01..TC12
28 virtio2p-ethip6-ip6base-ip6ecmp-func.robot ipv6_multipath_routing.robot TC01
29 virtio2p-ethip6-ip6base-ip6ra-func.robot ipv6_ra.robot TC01..TC04
30 virtio2p-ethip6ipsectpt-ip6base-func.robot ipsec_transport_mode_ipv6.robot TC01..TC19
31 virtio2p-ethip6ipsectptgpe-ip4base-func.robot ipsec_ipv4_lispgpe_ipv6.robot
32 virtio2p-ethip6ipsectptgpe-ip6base-func.robot ipsec_ipv6_lispgpe_ipv6.robot
33 virtio2p-ethip6psectnl-ip6base-func.robot ipsec_tunnel_mode_ipv6.robot TC01..TC19
34 virtio2p-ethip4ipsectptlispgpe-ip4base-func.robot ipsec_ipv4_lispgpe_ipv4.robot TC01..TC04
35 virtio2p-ethip4ipsectptlispgpe-ip4base-l2bdbasemaclrn-eth-2vhost-1vm-func.robot ipsec_ipv4_lispgpe_ipv4.robot TC05..TC06
36 virtio2p-ethip6ipsectptlispgpe-ip4base-func.robot ipsec_ipv4_lispgpe_ipv6.robot TC01..TC02
37 virtio2p-ethip6ipsectptlispgpe-ip4base-l2bdbasemaclrn-eth-2vhost-1vm-func.robot ipsec_ipv4_lispgpe_ipv6.robot TC03..TC04
38 virtio2p-ethip4ipsectptlispgpe-ip6base-func.robot ipsec_ipv6_lispgpe_ipv4.robot TC01..TC02
39 virtio2p-ethip4ipsectptlispgpe-ip6base-l2bdbasemaclrn-eth-2vhost-1vm-func.robot ipsec_ipv6_lispgpe_ipv4.robot TC03..TC04
40 virtio2p-ethip4ipsectptlispgpe-ip6base-vrf-func.robot ipsec_ipv6_lispgpe_ipv4.robot TC05
41 virtio2p-ethip6ipsectptlispgpe-ip6base-func.robot ipsec_ipv6_lispgpe_ipv6.robot TC01..TC02
42 virtio2p-ethip6ipsectptlispgpe-ip6base-l2bdbasemaclrn-eth-2vhost-1vm-func.robot ipsec_ipv6_lispgpe_ipv6.robot TC03..TC04
43 virtio2p-ethip4lispgpe-ip4base-func.robot ipv4_lispgpe_ipv4.robot TC01
44 virtio2p-ethip4lispgpe-ip4base-vrf-func.robot ipv4_lispgpe_ipv4.robot TC02
45 virtio2p-ethip4lispgpe-ip4base-l2bdbasemaclrn-eth-2vhost-1vm-func.robot ipv4_lispgpe_ipv4.robot TC03
46 virtio2p-ethip4lispgpe-ip4base-vrf-l2bdbasemaclrn-eth-2vhost-1vm-func.robot ipv4_lispgpe_ipv4.robot TC04
47 virtio2p-ethip6lispgpe-ip4base-func.robot ipv4_lispgpe_ipv6.robot TC01
48 virtio2p-ethip6lispgpe-ip4base-vrf-func.robot ipv4_lispgpe_ipv6.robot TC02
49 virtio2p-ethip6lispgpe-ip4base-l2bdbasemaclrn-eth-2vhost-1vm-func.robot ipv4_lispgpe_ipv6.robot TC03
50 virtio2p-ethip4lispgpe-ip6base-func.robot ipv6_lispgpe_ipv4.robot TC01
51 virtio2p-ethip6lispgpe-ip6base-func.robot ipv6_lispgpe_ipv6.robot TC01
52 virtio2p-ethip6lispgpe-ip6base-vrf-func.robot ipv6_lispgpe_ipv6.robot TC02
53 virtio2p-ethip6lispgpe-ip6base-l2bdbasemaclrn-eth-2vhost-1vm-func.robot ipv6_lispgpe_ipv6.robot TC03
54 virtio2p-ethip6lispgpe-ip6base-vrf-l2bdbasemaclrn-eth-2vhost-1vm-func.robot ipv6_lispgpe_ipv6.robot TC04
55 virtio2p-ethip4lisp-l2bdbasemaclrn-func.robot l2_lisp_ipv4.robot TC01
56 virtio2p-ethip6lisp-l2bdbasemaclrn-func.robot l2_lisp_ipv6.robot TC01
57 virtio2p-ethip4-ip4base-ipolicemarkbase-func.robot policer_ipv4_.robot TC01..TC04
58 virtio2p-ethip6-ip6base-ipolicemarkbase-func.robot policer_ipv6_.robot TC01..TC04
59 virtio2p-ethip4-ip4base-rpf-func.robot ipv4_rpf_untagged.robot TC01..TC02
60 virtio2p-ethip4-ip6base-lgtwgt4o6-func.robot lightweight_4over6.robot TC01..TC04
61 virtio2p-ethip4-ip6base-mape-func.robot map_e.robot TC01..TC09, Bug: VPP-318
62 virtio2p-ethip4-ip6base-mapt-func.robot map_t.robot TC01
63 virtio2p-eth-l2bdbasemaclrn-eth-2tap-func.robot tap_interface.robot TC01
64 virtio2p-eth-l2bdbasemaclrn-l2shg-eth-2tap-func.robot tap_interface.robot TC04, TC05
65 virtio2p-ethip4-ip4base-ethip4-1tap-func.robot tap_interface.robot TC02, TC03
66 2tap-func.robot tap_interface.robot TC06
67 virtio2p-ethip4-ip4base-ipfixbase-func.robot ipfix_ipv4.robot TC01..TC05 (VPP-204 not fixed yet)
68 virtio2p-ethip4-ip4base-ipfixscale-func.robot ipfix_ipv4.robot TC06, TC07 (VPP-204 not fixed yet)
69 virtio2p-ethip6-ip6base-ipfixbase-func.robot ipfix_ipv6.robot TC01..TC04 (VPP-204 not fixed yet)
70 virtio2p-ethip6-ip6base-ipfixscale-func.robot ipfix_ipv6.robot TC05, TC06 (VPP-204 not fixed yet)
71 virtio2p-ethip4-ip4base-spanl2-func.robot span.robot TC01
72 virtio2p-ethip4-ip4base-spanip4-func.robot span.robot TC02
73 virtio2p-ethip6-ip6base-spanip6-func.robot span.robot TC03
74 virtio2p-dit1qdot1q-l2xcbase-func.robot qinq_l2_xconnect.robot TC01
75 virtio2p-dot1q-l2bdbasemaclrn-dot1qtransdot1q-func.robot vlan_tag_translate_l2_bridge_domain_ipv4.robot TC01, TC02
76 virtio2p-dot1q-l2bdbasemaclrn-dot1qtransdot1ad-func.robot vlan_tag_translate_l2_bridge_domain_ipv4.robot TC03..TC06
77 virtio2p-dot1ad-l2bdbasemaclrn-dot1adtransdot1q-func.robot vlan_tag_translate_l2_bridge_domain_ipv4.robot TC07, TC08
78 virtio2p-dot1ad-l2bdbasemaclrn-dot1adtransdot1ad-func.robot vlan_tag_translate_l2_bridge_domain_ipv4.robot TC09..TC12
79 virtio2p-dot1q-l2bdbasemaclrn-dot1qtransdot1q-func.robot vlan_tag_translate_l2_bridge_domain_ipv6.robot TC01, TC02
80 virtio2p-dot1q-l2bdbasemaclrn-dot1qtransdot1ad-func.robot vlan_tag_translate_l2_bridge_domain_ipv6.robot TC03..TC06
81 virtio2p-dot1ad-l2bdbasemaclrn-dot1adtransdot1q-func.robot vlan_tag_translate_l2_bridge_domain_ipv6.robot TC07, TC08
82 virtio2p-dot1ad-l2bdbasemaclrn-dot1adtransdot1ad-func.robot vlan_tag_translate_l2_bridge_domain_ipv6.robot TC09..TC12
83 virtio2p-dot1q-l2xcbase-dot1qtransdot1q-func.robot vlan_tag_translate_l2_xconnect_ipv4.robot TC01, TC02
84 virtio2p-dot1q-l2xcbase-dot1qtransdot1ad-func.robot vlan_tag_translate_l2_xconnect_ipv4.robot TC03..TC06
85 virtio2p-dot1ad-l2xcbase-dot1adtransdot1q-func.robot vlan_tag_translate_l2_xconnect_ipv4.robot TC07, TC08
86 virtio2p-dot1ad-l2xcbase-dot1adtransdot1ad-func.robot vlan_tag_translate_l2_xconnect_ipv4.robot TC09..TC12
87 virtio2p-dot1q-l2xcbase-dot1qtransdot1q-func.robot vlan_tag_translate_l2_xconnect_ipv6.robot TC01, TC02
88 virtio2p-dot1q-l2xcbase-dot1qtransdot1ad-func.robot vlan_tag_translate_l2_xconnect_ipv6.robot TC03..TC06
86 virtio2p-dot1ad-l2xcbase-dot1adtransdot1q-func.robot vlan_tag_translate_l2_xconnect_ipv6.robot TC07, TC08
90 virtio2p-dot1ad-l2xcbase-dot1adtransdot1ad-func.robot vlan_tag_translate_l2_xconnect_ipv6.robot TC09..TC12
91 virtio2p-ethip4-ip4base-vrf-func.robot vrf_tests.robot TC01..TC10
92 virtio2p-dot1qip4vxlan-l2bdbasemaclrn-l2shg-func.robot vxlan_bd_dot1q.robot TC01
93 virtio2p-ethip4vxlan-l2bdbasemaclrn-func.robot vxlan_bd_untagged.robot TC01
94 virtio2p-ethip6vxlan-l2bdbasemaclrn-func.robot vxlan_bd_untagged.robot TC04
95 virtio2p-ethip4vxlan-l2bdbasemaclrn-l2shg-func.robot vxlan_bd_untagged.robot TC02, TC03
96 virtio2p-ethip6vxlan-l2bdbasemaclrn-l2shg-func.robot vxlan_bd_untagged.robot TC05, TC06
97 virtio2p-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot vxlan_bd_untagged.robot TC07
98 virtio2p-ethip6vxlan-l2bdbasemaclrn-eth-2vhost-1vm-func.robot vxlan_bd_untagged.robot TC08
99 virtio2p-ethip4vxlan-l2xcbase-func.robot vxlan_xconnect_untagged.robot TC01