Add scale ipsec tunnel tests
[csit.git] / resources / libraries / robot / performance / performance_setup.robot
index 11ce560..9350c65 100644 (file)
 | | ... | argument. Initializes traffic generator.
 | | ...
 | | ... | *Arguments:*
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - osi_layer - OSI Layer type to initialize TG with. Type: string
 | | ... | - nic_name - Interface model. Type: string
 | | ...
 | | ... | *Example:*
 | | ...
 | | ... | \| 2-node Performance Suite Setup \| L2 \| Intel-X520-DA2 \|
 | | ...
-| | [Arguments] | ${traffic_profile} | ${nic_name}
+| | [Arguments] | ${osi_layer} | ${nic_name}
 | | ...
 | | Set variables in 2-node circular topology with DUT interface model
 | | ... | ${nic_name}
 | | Initialize traffic generator | ${tg} | ${tg_if1} | ${tg_if2}
-| | ... | ${dut1} | ${dut1_if1} | ${dut1} | ${dut1_if2} | ${traffic_profile}
+| | ... | ${dut1} | ${dut1_if1} | ${dut1} | ${dut1_if2} | ${osi_layer}
 
 | Set up 2-node-switched performance topology with DUT's NIC model
 | | [Documentation]
 | | ... | argument. Initializes traffic generator.
 | | ...
 | | ... | *Arguments:*
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - osi_layer - OSI Layer type to initialize TG with. Type: string
 | | ... | - nic_name - Interface model. Type: string
 | | ... | - tg_if1_dest_mac - Interface 1 destination MAC address. Type: string
 | | ... | - tg_if2_dest_mac - Interface 2 destination MAC address. Type: string
 | | ... | \| 2-node Performance Suite Setup \| L2 \| Intel-X520-DA2 \
 | | ... | \| 22:22:33:44:55:66 \| 22:22:33:44:55:55 \|
 | | ...
-| | [Arguments] | ${traffic_profile} | ${nic_name} | ${tg_if1_dest_mac}
+| | [Arguments] | ${osi_layer} | ${nic_name} | ${tg_if1_dest_mac}
 | | ... | ${tg_if2_dest_mac}
 | | ...
 | | Set variables in 2-node circular topology with DUT interface model
 | | ... | ${nic_name}
 | | Initialize traffic generator | ${tg} | ${tg_if1} | ${tg_if2}
-| | ... | ${dut1} | ${dut1_if1} | ${dut1} | ${dut1_if2} | ${traffic_profile}
+| | ... | ${dut1} | ${dut1_if1} | ${dut1} | ${dut1_if2} | ${osi_layer}
 | | ... | ${tg_if1_dest_mac} | ${tg_if2_dest_mac}
 
 | Set up 3-node performance topology with DUT's NIC model
 | | ... | argument. Initializes traffic generator.
 | | ...
 | | ... | *Arguments:*
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - osi_layer - OSI Layer type to initialize TG with. Type: string
 | | ... | - nic_name - Interface model. Type: string
 | | ...
 | | ... | *Example:*
 | | ... | \| Set up 3-node performance topology with DUT's NIC model \| L2 \
 | | ... | \| Intel-X520-DA2 \|
 | | ...
-| | [Arguments] | ${traffic_profile} | ${nic_name}
+| | [Arguments] | ${osi_layer} | ${nic_name}
 | | ...
 | | Set variables in 3-node circular topology with DUT interface model
 | | ... | ${nic_name}
 | | Initialize traffic generator | ${tg} | ${tg_if1} | ${tg_if2}
-| | ... | ${dut1} | ${dut1_if1} | ${dut2} | ${dut2_if2} | ${traffic_profile}
+| | ... | ${dut1} | ${dut1_if1} | ${dut2} | ${dut2_if2} | ${osi_layer}
 
 | Set up 3-node performance topology with DUT's NIC model with double link between DUTs
 | | [Documentation]
 | | ... | argument. Initializes traffic generator.
 | | ...
 | | ... | *Arguments:*
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - osi_layer - OSI Layer type to initialize TG with. Type: string
 | | ... | - nic_name - Interface model. Type: string
 | | ...
 | | ... | *Example:*
 | | ... | \| Set up 3-node performance topology with DUT's NIC model with \
 | | ... | double link between DUTs \| L2 \| Intel-X520-DA2 \|
 | | ...
-| | [Arguments] | ${traffic_profile} | ${nic_name}
+| | [Arguments] | ${osi_layer} | ${nic_name}
 | | ...
 | | Set variables in 3-node circular topology with DUT interface model with double link between DUTs
 | | ... | ${nic_name}
 | | Initialize traffic generator | ${tg} | ${tg_if1} | ${tg_if2}
-| | ... | ${dut1} | ${dut1_if1} | ${dut2} | ${dut2_if2} | ${traffic_profile}
+| | ... | ${dut1} | ${dut1_if1} | ${dut2} | ${dut2_if2} | ${osi_layer}
 
 | Set up DPDK 2-node performance topology with DUT's NIC model
 | | [Documentation]
 | | ... | environment.
 | | ...
 | | ... | *Arguments:*
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - osi_layer - OSI Layer type to initialize TG with. Type: string
 | | ... | - nic_name - Interface model. Type: string
 | | ...
 | | ... | *Example:*
 | | ... | \| Set up DPDK 2-node performance topology with DUT's NIC model \
 | | ... | \| L2 \| Intel-X520-DA2 \|
 | | ...
-| | [Arguments] | ${traffic_profile} | ${nic_name}
+| | [Arguments] | ${osi_layer} | ${nic_name}
 | | ...
 | | Set variables in 2-node circular topology with DUT interface model
 | | ... | ${nic_name}
 | | Initialize traffic generator | ${tg} | ${tg_if1} | ${tg_if2}
-| | ... | ${dut1} | ${dut1_if1} | ${dut1} | ${dut1_if2} | ${traffic_profile}
+| | ... | ${dut1} | ${dut1_if1} | ${dut1} | ${dut1_if2} | ${osi_layer}
 | | Initialize DPDK Environment | ${dut1} | ${dut1_if1} | ${dut1_if2}
 
 | Set up DPDK 3-node performance topology with DUT's NIC model
 | | ... | environment.
 | | ...
 | | ... | *Arguments:*
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - osi_layer - OSI Layer type to initialize TG with. Type: string
 | | ... | - nic_name - Interface model. Type: string
 | | ...
 | | ... | *Example:*
 | | ...
 | | ... | \| 3-node Performance Suite Setup \| L2 \| Intel-X520-DA2 \|
 | | ...
-| | [Arguments] | ${traffic_profile} | ${nic_name}
+| | [Arguments] | ${osi_layer} | ${nic_name}
 | | ...
 | | Set variables in 3-node circular topology with DUT interface model
 | | ... | ${nic_name}
 | | Initialize traffic generator | ${tg} | ${tg_if1} | ${tg_if2}
-| | ... | ${dut1} | ${dut1_if1} | ${dut2} | ${dut2_if2} | ${traffic_profile}
+| | ... | ${dut1} | ${dut1_if1} | ${dut2} | ${dut2_if2} | ${osi_layer}
 | | Initialize DPDK Environment | ${dut1} | ${dut1_if1} | ${dut1_if2}
 | | Initialize DPDK Environment | ${dut2} | ${dut2_if1} | ${dut2_if2}
 
 | | ... | It configures PCI device with VFs on all DUTs.
 | | ...
 | | ... | *Arguments:*
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - osi_layer - OSI Layer type to initialize TG with. Type: string
 | | ... | - nic_name - Interface model. Type: string
 | | ... | - vf_driver - Virtual function driver. Type: string
 | | ... | - numvfs - Number of VFs. Type: integer
 | | ... | \| Set up SRIOV 2-node performance topology with DUT's NIC model \
 | | ... | \| L2 \| Intel-X520-DA2 \| AVF \|
 | | ...
-| | [Arguments] | ${traffic_profile} | ${nic_name} | ${vf_driver}
+| | [Arguments] | ${osi_layer} | ${nic_name} | ${vf_driver}
 | | ... | ${numvfs}=${1}
 | | ...
 | | Set variables in 2-node circular topology with DUT interface model
 | | ... | ${nic_name}
 | | Run Keyword If | '${vf_driver}' == 'AVF'
 | | ... | Configure AVF interfaces on all DUTs | numvfs=${numvfs}
-| | ... | traffic_profile=${traffic_profile}
+| | ... | osi_layer=${osi_layer}
 | | Initialize traffic generator | ${tg} | ${tg_if1} | ${tg_if2}
 | | ... | ${dut1} | ${dut1_if1_vf0} | ${dut1} | ${dut1_if2_vf0}
-| | ... | ${traffic_profile}
+| | ... | ${osi_layer}
 
 | Set up SRIOV 3-node performance topology with DUT's NIC model
 | | [Documentation]
 | | ... | It configures PCI device with VFs on all DUTs.
 | | ...
 | | ... | *Arguments:*
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - osi_layer - OSI Layer type to initialize TG with. Type: string
 | | ... | - nic_name - Interface model. Type: string
 | | ... | - vf_driver - Virtual function driver. Type: string
 | | ... | - numvfs - Number of VFs. Type: integer
 | | ... | \| Set up SRIOV 3-node performance topology with DUT's NIC model \
 | | ... | \| L2 \| Intel-X520-DA2 \| AVF \|
 | | ...
-| | [Arguments] | ${traffic_profile} | ${nic_name} | ${vf_driver}
+| | [Arguments] | ${osi_layer} | ${nic_name} | ${vf_driver}
 | | ... | ${numvfs}=${1}
 | | ...
 | | Set variables in 3-node circular topology with DUT interface model
 | | ... | ${nic_name}
 | | Run Keyword If | '${vf_driver}' == 'AVF'
 | | ... | Configure AVF interfaces on all DUTs | numvfs=${numvfs}
-| | ... | traffic_profile=${traffic_profile}
+| | ... | osi_layer=${osi_layer}
 | | Initialize traffic generator | ${tg} | ${tg_if1} | ${tg_if2}
 | | ... | ${dut1} | ${dut1_if1_vf0} | ${dut2} | ${dut2_if2_vf0}
-| | ... | ${traffic_profile}
+| | ... | ${osi_layer}
 
 | Set up IPSec performance test suite
 | | [Documentation]
 | | ... | TODO CSIT-1481: Crypto HW should be read from topology file instead.
 | | ...
 | | ... | *Arguments:*
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - osi_layer - OSI Layer type to initialize TG with. Type: string
 | | ... | - nic_name - Interface model. Type: string
 | | ... | - crypto_type - Crypto device type - HW_DH895xcc or HW_C3xxx or
 | | ... |   SW_cryptodev. Type: string, default value: HW_DH895xcc
 | | ... | \| Set up IPSec performance test suite \| L2 \
 | | ... | \| Intel-X520-DA2 \| HW_DH895xcc \|
 | | ...
-| | [Arguments] | ${traffic_profile} | ${nic_name} | ${crypto_type}=HW_DH895xcc
+| | [Arguments] | ${osi_layer} | ${nic_name} | ${crypto_type}=HW_DH895xcc
 | | ...
 | | Set up 3-node performance topology with DUT's NIC model
-| | ... | ${traffic_profile} | ${nic_name}
+| | ... | ${osi_layer} | ${nic_name}
 | | Return From Keyword If | '${crypto_type}' == 'SW_cryptodev'
 | | ${numvfs}= | Set Variable If
 | | ... | '${crypto_type}' == 'HW_DH895xcc' | ${32}
 | | Set Suite Variable | @{plugins_to_enable}
 | | Append To List | ${plugins_to_enable} | lacp_plugin.so
 
+| Set up performance test suite with crypto ipsecmb
+| | [Documentation]
+| | ... | Append crypto_ipsecmb_plugin.so to the list of enabled plugins.
+| | ...
+| | Set Suite Variable | @{plugins_to_enable}
+| | Append To List | ${plugins_to_enable} | crypto_ia32_plugin.so
+| | Append To List | ${plugins_to_enable} | crypto_ipsecmb_plugin.so
+| | Append To List | ${plugins_to_enable} | crypto_openssl_plugin.so
+
 | Set up 3-node performance topology with wrk and DUT's NIC model
 | | [Documentation]
 | | ... | Suite preparation phase that sets the default startup configuration of
 | | Configure VPP in all '${container_group}' containers
 | | Stop VPP service on all DUTs | ${nodes}
 | | Start VPP in all '${container_group}' containers
-| | Start VPP service on all DUTs | ${nodes}
+| | Restart VPP service on all DUTs | ${nodes}
+| | Verify VPP on all DUTs | ${nodes}
 | | Append To List | ${container_groups} | ${container_group}
 
 # Tests teardowns
 | | ...
 | | ... | *Test Variables needed:*
 | | ... | - frame_size - L2 Frame Size [B]. Type: integer
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - traffic_profile - Profile name to run debug trial with. Type: string
 | | ... | - nodes - Parsed information object. Type: dict
 | | ...
 | | ... | *Example:*
 | | Show PAPI History On All DUTs | ${nodes}
 | | Get Core Files on All Nodes | ${nodes}
 | | Set Test Variable | ${pkt_trace} | ${True}
-| | Show statistics on all DUTs | ${nodes}
 | | Run Keyword If Test Failed
 | | ... | Traffic should pass with no loss | ${perf_trial_duration} | 10000pps
 | | ... | ${frame_size} | ${traffic_profile} | fail_on_loss=${False}
 | | ...
 | | ... | *Test Variables needed:*
 | | ... | - frame_size - L2 Frame Size [B]. Type: integer
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - traffic_profile - Profile name to run debug trial with. Type: string
 | | ...
 | | ... | *Arguments:*
 | | ... | - dut1_node - Node where to clean qemu. Type: dictionary
 | | ...
 | | ... | *Test Variables needed:*
 | | ... | - frame_size - L2 Frame Size [B]. Type: integer
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - traffic_profile - Profile name to run debug trial with. Type: string
 | | ...
 | | ... | *Arguments:*
 | | ... | - dut1_node - Node where to clean qemu. Type: dictionary
 | | ...
 | | ... | *Test Variables needed:*
 | | ... | - frame_size - L2 Frame Size [B]. Type: integer
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - traffic_profile - Profile name to run debug trial with. Type: string
 | | ...
 | | ... | *Example:*
 | | ...
 | | ...
 | | ... | *Test Variables needed:*
 | | ... | - frame_size - L2 Frame Size [B]. Type: integer
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - traffic_profile - Profile name to run debug trial with. Type: string
 | | ...
 | | ... | *Example:*
 | | ...
 | | ...
 | | ... | *Test Variables needed:*
 | | ... | - frame_size - L2 Frame Size [B]. Type: integer
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - traffic_profile - Profile name to run debug trial with. Type: string
 | | ...
 | | ... | *Example:*
 | | ...
 | | ...
 | | ... | *Test Variables needed:*
 | | ... | - frame_size - L2 Frame Size [B]. Type: integer
-| | ... | - traffic_profile - Profile name to initialize TG with. Type: string
+| | ... | - traffic_profile - Profile name to run debug trial with. Type: string
 | | ...
 | | ... | *Example:*
 | | ...