diff options
author | Peter Mikus <pmikus@cisco.com> | 2019-04-19 06:40:44 +0000 |
---|---|---|
committer | Peter Mikus <pmikus@cisco.com> | 2019-04-26 11:03:30 +0000 |
commit | 780b65d82863effd53ccb0e0150c29d22522c61d (patch) | |
tree | 0c5a5a48d067e337a754e34a6182470ef5aff9da /tests | |
parent | f6e9d58ecd95789e0b3292983fafff223ec75a2c (diff) |
NF density tests with dtc=0.5 and dtcr=2
Change-Id: Icff556142280ad0b6261e0a2bfb71672ee6b3807
Signed-off-by: Peter Mikus <pmikus@cisco.com>
Diffstat (limited to 'tests')
136 files changed, 9083 insertions, 3452 deletions
diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..c62ed1da48 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 10R1C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 10DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 10 chains +| ... | 10 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-10c1n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${10} | nf_nodes=${1} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${10} | nf_nodes=${1} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-10ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr.robot index 7162606a7d..409dc2352d 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 10R1C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 10DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-10c1n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-20memif-10chain-10dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..62265e6109 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R6C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 6DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain +| ... | 6 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c6n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${1} | nf_nodes=${6} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${1} | nf_nodes=${6} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr.robot index 3707811c42..a75068fc20 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R6C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 6DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c6n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-12memif-1chain-6dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..fcecfccb02 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R8C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 8DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain +| ... | 8 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c8n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${1} | nf_nodes=${8} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${1} | nf_nodes=${8} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr.robot index ac36c6c785..5bbea2a7ce 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R8C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 8DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c8n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-16memif-1chain-8dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..bd5ac3248e --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R10C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 10DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain +| ... | 10 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c10n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${1} | nf_nodes=${10} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${1} | nf_nodes=${10} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1ch-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr.robot index 0fe7945ba5..7ed3535430 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R10C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 10DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c10n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-20memif-1chain-10dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..7b78a43fa5 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R1C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain +| ... | 1 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c1n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${1} | nf_nodes=${1} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${1} | nf_nodes=${1} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1ch-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr.robot index ecd89489ff..0882d63d98 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R1C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c1n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-2memif-1chain-1dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..043c3296e6 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R2C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 2DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain +| ... | 2 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c2n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${1} | nf_nodes=${2} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${1} | nf_nodes=${2} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr.robot index 57f68305f3..353dd59c83 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R2C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 2DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c2n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-4memif-1chain-2dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..00d5bfa384 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R4C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 4DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain +| ... | 4 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c4n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${1} | nf_nodes=${4} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${1} | nf_nodes=${4} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr.robot index 9bfd03487d..8e9dbd1e8c 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R4C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 4DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c4n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-8memif-1chain-4dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..18dfe4393f --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R4C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 8DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 2 chains +| ... | 8 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c4n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${2} | nf_nodes=${4} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${2} | nf_nodes=${4} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr.robot index df280614c3..8613bb70b6 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R4C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 8DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c4n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-16memif-2chain-8dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..6daa2319fd --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R6C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 12DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 2 chains +| ... | 12 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c6n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${2} | nf_nodes=${6} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${2} | nf_nodes=${6} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr.robot index 080b3598e4..919205a45c 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R6C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 12DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c6n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-24memif-2chain-12dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..0da06ad980 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R8C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 16DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 2 chains +| ... | 16 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c8n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${2} | nf_nodes=${8} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${2} | nf_nodes=${8} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-32memif-2chain-16dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr.robot index dfcb0955d6..f6322bd43b 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-32memif-2chain-16dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R8C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 16DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c8n # Container @@ -91,34 +93,34 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-32memif-2chain-16dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-32memif-2chain-16dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc04-1518B-1c-eth-l2bd-32memif-2chain-16dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-32memif-2chain-16dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc07-9000B-1c-eth-l2bd-32memif-2chain-16dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-32memif-2chain-16dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc10-IMIX-1c-eth-l2bd-32memif-2chain-16dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-32memif-2chain-16dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..d97c963a1b --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R1C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 2DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 2 chains +| ... | 2 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c1n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${2} | nf_nodes=${1} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${2} | nf_nodes=${1} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2ch-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr.robot index 48e761aae7..574018cc15 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R1C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 2DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c1n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-4memif-2chain-2dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..7a179af1a0 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R2C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 4DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 2 chains +| ... | 4 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c2n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${2} | nf_nodes=${2} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${2} | nf_nodes=${2} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr.robot index f8dbac7762..b977a60bff 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R2C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 4DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c2n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-8memif-2chain-4dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..48c649ad7a --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 4R2C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 8DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 4 chains +| ... | 8 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c2n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${4} | nf_nodes=${2} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${4} | nf_nodes=${2} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-4ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr.robot index f916d9805a..067fd37e28 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 4R2C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 8DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c2n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-16memif-4chain-8dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..3b201e07e0 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 4R4C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 16DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 4 chains +| ... | 16 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c4n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${4} | nf_nodes=${4} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${4} | nf_nodes=${4} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-4ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-32memif-4chain-16dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr.robot index bc04e14394..08256b8832 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-32memif-4chain-16dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 4R4C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 16DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c4n # Container @@ -91,34 +93,34 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-32memif-4chain-16dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-32memif-4chain-16dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc04-1518B-1c-eth-l2bd-32memif-4chain-16dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-32memif-4chain-16dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc07-9000B-1c-eth-l2bd-32memif-4chain-16dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-32memif-4chain-16dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc10-IMIX-1c-eth-l2bd-32memif-4chain-16dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-32memif-4chain-16dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..77814496d8 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 4R1C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 4DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 4 chains +| ... | 4 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c1n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${4} | nf_nodes=${1} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${4} | nf_nodes=${1} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr.robot index 1109713681..6f47eed0f9 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 4R1C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 4DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -32,7 +32,7 @@ | Test Template | Local Template | ... | Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 4 chains -| ... | 1 docker container* +| ... | 4 docker container* | ... | ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with | ... | single links between nodes. @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c1n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-8memif-4chain-4dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..f84edae7cb --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 6R1C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 6DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 6 chains +| ... | 6 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c1n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${6} | nf_nodes=${1} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${6} | nf_nodes=${1} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-6ch-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr.robot index 142e6ea5e4..9d59f4c1be 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 6R1C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 6DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c1n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-12memif-6chain-6dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..7d904b727f --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 6R2C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 12DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 6 chains +| ... | 12 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c2n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${6} | nf_nodes=${2} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${6} | nf_nodes=${2} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-6ch-24mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr.robot index 5daf1ad96e..c866074bc0 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 6R2C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 12DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c2n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-24memif-6chain-12dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..974a0489e3 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 8R1C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 8DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 8 chains +| ... | 8 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c1n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${8} | nf_nodes=${1} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${8} | nf_nodes=${1} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-8ch-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr.robot index 486d217029..b10ebe5d3e 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 8R1C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 8DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c1n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-16memif-8chain-8dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..0789452c3d --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 8R2C +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 16DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 8 chains +| ... | 16 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c2n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${8} | nf_nodes=${2} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | ... | nf_chains=${8} | nf_nodes=${2} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-8ch-32mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-32memif-8chain-16dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr.robot index 382ecc33f1..e63bc8933d 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-32memif-8chain-16dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 8R2C -| ... | NF_DENSITY | CHAIN | NF_VPPIP4 +| ... | NF_DENSITY | CHAIN | NF_VPPIP4 | 16DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c2n # Container @@ -91,34 +93,34 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-32memif-8chain-16dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-32memif-8chain-16dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc04-1518B-1c-eth-l2bd-32memif-8chain-16dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-32memif-8chain-16dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc07-9000B-1c-eth-l2bd-32memif-8chain-16dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-32memif-8chain-16dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc10-IMIX-1c-eth-l2bd-32memif-8chain-16dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-32memif-8chain-16dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/regenerate_testcases.py b/tests/vpp/perf/nfv_density/dcr_memif/chain/regenerate_testcases.py new file mode 100755 index 0000000000..2632018a80 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python + +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from resources.libraries.python.autogen.Regenerator import Regenerator + +Regenerator().regenerate_glob("*.robot") diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..69e6a381f9 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 10R1C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 10DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 20memif 10 +| ... | pipelines 1 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-10c1n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${10} | nf_nodes=${1} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${10} | nf_nodes=${1} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-10pl-20mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr.robot index 13e412b71d..8622f0ba95 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 10R1C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 10DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-10c1n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-20memif-10pipe-10dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..03e3fe6d71 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R10C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 10DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 2memif 1 +| ... | pipeline 10 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c10n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${1} | nf_nodes=${10} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${1} | nf_nodes=${10} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1pl-2mif-10dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr.robot index 5d0f00679f..e76e69892a 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R10C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 10DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c10n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-2memif-1pipe-10dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..67738aef6c --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R1C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 1DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 2memif 1 +| ... | pipeline 1 docker container* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c1n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${1} | nf_nodes=${1} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${1} | nf_nodes=${1} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1pl-2mif-1dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr.robot index e53c612eb2..5fb0d8a32c 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R1C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 1DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c1n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-2memif-1pipe-1dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..fcc0be980e --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R2C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 2DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 2memif 1 +| ... | pipeline 2 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c2n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${1} | nf_nodes=${2} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${1} | nf_nodes=${2} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1pl-2mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr.robot index 0173645c21..05f6dd621b 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R2C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 2DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c2n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-2memif-1pipe-2dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..17750167fb --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R4C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 4DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 2memif 1 +| ... | pipeline 4 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c4n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${1} | nf_nodes=${4} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${1} | nf_nodes=${4} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1pl-2mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr.robot index 1addfb35fc..9066c51236 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R4C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 4DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c4n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-2memif-1pipe-4dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..86f8bf8eea --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R6C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 6DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 2memif 1 +| ... | pipeline 6 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c6n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${1} | nf_nodes=${6} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${1} | nf_nodes=${6} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1pl-2mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr.robot index cbab163675..f8ba6fd723 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R6C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 6DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c6n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-2memif-1pipe-6dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..ba4aa235e9 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R8C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 8DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 2memif 1 +| ... | pipeline 8 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c8n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${1} | nf_nodes=${8} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${1} | nf_nodes=${8} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1pl-2mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr.robot index c2ceadb701..9fab19ecbb 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 1R8C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 8DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c8n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-2memif-1pipe-8dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..da4487ccb2 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R6C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 12DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 4memif 2 +| ... | pipelines 12 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c6n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${2} | nf_nodes=${6} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${2} | nf_nodes=${6} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2pl-4mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr.robot index 73fd9ec345..df0e15480f 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R6C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 12DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c6n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-4memif-2pipe-12dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..0b58ec9aa1 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R8C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 16DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 4memif 2 +| ... | pipelines 16 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c8n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${2} | nf_nodes=${8} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${2} | nf_nodes=${8} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2pl-4mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-2pipe-16dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr.robot index b3952b431d..98f0e875bc 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-2pipe-16dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R8C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 16DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c8n # Container @@ -91,34 +93,34 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-4memif-2pipe-16dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-4memif-2pipe-16dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc04-1518B-1c-eth-l2bd-4memif-2pipe-16dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-4memif-2pipe-16dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc07-9000B-1c-eth-l2bd-4memif-2pipe-16dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-4memif-2pipe-16dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc10-IMIX-1c-eth-l2bd-4memif-2pipe-16dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-4memif-2pipe-16dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..16bcf0a31b --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R1C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 2DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 4memif 2 +| ... | pipelines 2 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c1n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${2} | nf_nodes=${1} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${2} | nf_nodes=${1} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2pl-4mif-2dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr.robot index 542641b40f..d0a6c35509 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R1C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 2DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c1n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-4memif-2pipe-2dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..6be96b8bb7 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R2C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 4DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 2memif 2 +| ... | pipelines 4 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c2n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${2} | nf_nodes=${2} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${2} | nf_nodes=${2} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2pl-4mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr.robot index 2751869d82..348340788a 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R2C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 4DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c2n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-4memif-2pipe-4dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..eb3fc8e872 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R4C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 8DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 4memif 2 +| ... | pipelines 8 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c4n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${2} | nf_nodes=${4} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${2} | nf_nodes=${4} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2pl-4mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr.robot index 7acea9f09a..fb60376f30 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 2R4C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 8DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c4n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-4memif-2pipe-8dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..86041272c2 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 4R1C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 4DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 8memif 4 +| ... | pipelines 4 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c1n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${4} | nf_nodes=${1} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${4} | nf_nodes=${1} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2pl-8mif-4dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr.robot index b2f1cce3c0..aa1003e85e 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 4R1C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 4DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c1n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-8memif-4pipe-4dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..771b5ab577 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 4R4C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 16DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 8memif 4 +| ... | pipelines 16 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c4n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${4} | nf_nodes=${4} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${4} | nf_nodes=${4} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-4pl-8mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-8memif-4pipe-16dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr.robot index 3fe578fa3a..df9485707a 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-8memif-4pipe-16dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 4R4C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 16DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c4n # Container @@ -91,34 +93,34 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-8memif-4pipe-16dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-8memif-4pipe-16dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc04-1518B-1c-eth-l2bd-8memif-4pipe-16dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-8memif-4pipe-16dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc07-9000B-1c-eth-l2bd-8memif-4pipe-16dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-8memif-4pipe-16dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc10-IMIX-1c-eth-l2bd-8memif-4pipe-16dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-8memif-4pipe-16dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..0a96dfb68f --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 4R2C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 8DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 8memif 4 +| ... | pipelines 8 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c2n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${4} | nf_nodes=${2} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${4} | nf_nodes=${2} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr.robot index 27cfe858ee..3d67127e55 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 4R2C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 8DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c2n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-8memif-4pipe-8dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..252705e437 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 6R2C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 12DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 12memif 6 +| ... | pipelines 12 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c2n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${6} | nf_nodes=${2} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${6} | nf_nodes=${2} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-6pl-12mif-12dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr.robot index de3164cf50..d0bf36e7da 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 6R2C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 12DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c2n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-12memif-6pipe-12dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..aec6c725f2 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 6R1C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 6DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 12memif 6 +| ... | pipelines 1 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c1n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${6} | nf_nodes=${1} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${6} | nf_nodes=${1} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-6pl-12mif-6dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr.robot index eea72f8cd5..f98e355a44 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 6R1C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 6DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c1n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-12memif-6pipe-6dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..413b48467d --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 8R2C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 16DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 16memif 8 +| ... | pipelines 16 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c2n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${8} | nf_nodes=${2} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${8} | nf_nodes=${2} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-8pl-16mif-16dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-16memif-8pipe-16dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr.robot index 1020f16e41..7330ecc688 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-16memif-8pipe-16dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 8R2C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 16DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c2n # Container @@ -91,34 +93,34 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-16memif-8pipe-16dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-16memif-8pipe-16dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc04-1518B-1c-eth-l2bd-16memif-8pipe-16dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-16memif-8pipe-16dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc07-9000B-1c-eth-l2bd-16memif-8pipe-16dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-16memif-8pipe-16dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc10-IMIX-1c-eth-l2bd-16memif-8pipe-16dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-16memif-8pipe-16dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..fdc151b4f5 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr.robot @@ -0,0 +1,142 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 8R1C +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 8DCR1T +| ... +| Suite Setup | Run Keywords +| ... | Set up 2-node performance topology with DUT's NIC model | L3 +| ... | ${nic_name} +| ... | AND | Set up performance test suite with MEMIF +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Run Keywords +| ... | Tear down performance test +| ... | AND | Tear down performance test with container +| ... +| Test Template | Local Template +| ... +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 16memif 8 +| ... | pipelines 8 docker containers* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with +| ... | single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge domains +| ... | and MAC learning enabled. DUT1 tested with ${nic_name}.\ +| ... | Container is connected to VPP via Memif interface. Container is running +| ... | same VPP version as running on DUT. Container is limited via cgroup to +| ... | use cores allocated from pool of isolated CPUs. There are no memory +| ... | contraints. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile +| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per +| ... | flow-group) with all packets containing Ethernet header, IPv4 header +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | addresses of the TG node interfaces. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c1n +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | pipeline_ip4 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | And Set up performance test with containers +| | ... | nf_chains=${8} | nf_nodes=${1} | auto_scale=${False} +| | And Initialize L2 Bridge Domain for multiple pipelines with memif pairs +| | ... | nf_chains=${8} | nf_nodes=${1} | auto_scale=${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr.robot index 9ca59242d0..a7ac595d28 100644 --- a/tests/vpp/perf/container_memif/2n-10ge2p1x710-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | 8R1C -| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 +| ... | NF_DENSITY | PIPELINE | NF_VPPIP4 | 8DCR2T | ... | Suite Setup | Run Keywords | ... | Set up 2-node performance topology with DUT's NIC model | L3 @@ -57,6 +57,8 @@ *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c1n # Container @@ -91,50 +93,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-16memif-8pipe-8dcr-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/regenerate_testcases.py b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/regenerate_testcases.py new file mode 100755 index 0000000000..2632018a80 --- /dev/null +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python + +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from resources.libraries.python.autogen.Regenerator import Regenerator + +Regenerator().regenerate_glob("*.robot") diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr.robot index be3d0ebc6f..99c5cda637 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 10R1C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 10R1C | 10VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 20 vhost -| ... | 10 chains 10 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 20 vhost 10 chains 10 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-10c1n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-20vhost-10chain-10vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..ec2c0aada8 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 10R1C | 10VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 20 vhost 10 chains 10 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-10c1n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${10} | nf_nodes=${1} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${10} | nf_nodes=${1} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-10ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr.robot index ab7bf1e84d..ae78f0b1db 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R6C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R6C | 6VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 12 vhost 1 chain -| ... | 6 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 12 vhost 1 chain 6 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c6n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-12vhost-1chain-6vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..b6cd526a48 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R6C | 6VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 12 vhost 1 chain 6 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c6n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${1} | nf_nodes=${6} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${1} | nf_nodes=${6} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr.robot index 043a7bda8d..1bff538e49 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R8C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R8C | 8VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 16 vhost -| ... | 1 chain 8 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 16 vhost 1 chain 8 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c8n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-16vhost-1chain-8vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..8cdff1aa72 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R8C | 8VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 16 vhost 1 chain 8 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c8n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${1} | nf_nodes=${8} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${1} | nf_nodes=${8} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr.robot index fe4ab4c1b9..eda55f4130 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R10C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R10C | 10VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 20 vhost -| ... | 1 chain 10 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 20 vhost 1 chain 10 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | *[Ref] Applicable standard specifications:* RFC2544 *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c10n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-20vhost-1chain-10vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..934082fb53 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R10C | 10VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 20 vhost 1 chain 10 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544 + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c10n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${1} | nf_nodes=${10} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${1} | nf_nodes=${10} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1ch-20vh-10vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr.robot index 0d783c21e2..8200434094 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R1C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R1C | 1VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 2 vhost 1 chain -| ... | 1 VM* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 2 vhost 1 chain 1 VM* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c1n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-2vhost-1chain-1vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..01a992c2dd --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R1C | 1VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 2 vhost 1 chain 1 VM* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c1n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${1} | nf_nodes=${1} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${1} | nf_nodes=${1} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1ch-2vh-1vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr.robot index bc1d408e02..e2b5f3de9f 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R2C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R2C | 2VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 4 vhost 1 chain -| ... | 2 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 4 vhost 1 chain 2 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c2n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-4vhost-1chain-2vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..6e787a23d9 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R2C | 2VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 4 vhost 1 chain 2 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c2n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${1} | nf_nodes=${2} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${1} | nf_nodes=${2} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr.robot index 53422b9386..857989e6bd 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R4C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R4C | 4VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 8 vhost 1 chains -| ... | 4 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 8 vhost 1 chains 4 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c4n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-8vhost-1chain-4vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..2e61dc5be5 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 1R4C | 4VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 8 vhost 1 chains 4 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c4n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${1} | nf_nodes=${4} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${1} | nf_nodes=${4} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-1ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr.robot index bf5461ffa1..0aa8e8923b 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R4C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R4C | 8VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 16 vhost -| ... | 2 chains 8 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 16 vhost 2 chains 8 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c4n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-16vhost-2chain-8vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..9de7998ec0 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R4C | 8VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 16 vhost 2 chains 8 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c4n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${2} | nf_nodes=${4} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${2} | nf_nodes=${4} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr.robot index a2fdc7e80e..3915b39100 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R6C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R6C | 12VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 24 vhost -| ... | 2 chains 12 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 24 vhost 2 chains 12 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c6n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-24vhost-2chain-12vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..1f76412b18 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R6C | 12VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 24 vhost 2 chains 12 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c6n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${2} | nf_nodes=${6} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${2} | nf_nodes=${6} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..2d80164991 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R8C | 16VM1T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 32 vhost 2 chains 16 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c8n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${2} | nf_nodes=${8} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${2} | nf_nodes=${8} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-2chain-16vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr.robot index 2957a7b6fc..0fb2ce1603 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-2chain-16vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R8C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R8C | 16VM2T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 32 vhost -| ... | 2 chains 16 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 32 vhost 2 chains 16 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c8n @@ -86,34 +87,34 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-32vhost-2chain-16vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-32vhost-2chain-16vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc04-1518B-1c-eth-l2bd-32vhost-2chain-16vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-32vhost-2chain-16vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc07-9000B-1c-eth-l2bd-32vhost-2chain-16vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-32vhost-2chain-16vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc10-IMIX-1c-eth-l2bd-32vhost-2chain-16vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-32vhost-2chain-16vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr.robot index 69d2a61173..5257ff08b5 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R1C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R1C | 2VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 4 vhost 2 chains -| ... | 2 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 4 vhost 2 chains 2 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c1n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-4vhost-2chain-2vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..b9c6dd7537 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R1C | 2VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 4 vhost 2 chains 2 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c1n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${2} | nf_nodes=${1} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${2} | nf_nodes=${1} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2ch-4vh-2vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr.robot index 16d88fc5f5..9a035a27fc 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R2C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R2C | 4VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 8 vhost 2 chains -| ... | 2 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 8 vhost 2 chains 4 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c2n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-8vhost-2chain-4vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..e621e502b9 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 2R2C | 4VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 8 vhost 2 chains 4 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c2n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${2} | nf_nodes=${2} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${2} | nf_nodes=${2} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-2ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr.robot index 05619e9be7..923af98cf6 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 4R2C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 4R2C | 8VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 16 vhost -| ... | 4 chains 8 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 16 vhost 4 chains 8 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c2n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-16vhost-4chain-8vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..c841a90739 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 4R2C | 8VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 16 vhost 4 chains 8 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c2n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${4} | nf_nodes=${2} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${4} | nf_nodes=${2} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-4ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..400bd2274c --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 4R4C | 16VM1T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 32 vhost 4 chains 16 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c4n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${4} | nf_nodes=${4} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${4} | nf_nodes=${4} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-4ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-4chain-16vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr.robot index 0058e1717e..f6569d5712 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-4chain-16vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 4R4C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 4R4C | 16VM2T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 32 vhost -| ... | 4 chains 16 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 32 vhost 4 chains 16 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c4n @@ -86,34 +87,34 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-32vhost-4chain-16vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-32vhost-4chain-16vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc04-1518B-1c-eth-l2bd-32vhost-4chain-16vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-32vhost-4chain-16vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc07-9000B-1c-eth-l2bd-32vhost-4chain-16vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-32vhost-4chain-16vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc10-IMIX-1c-eth-l2bd-32vhost-4chain-16vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-32vhost-4chain-16vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr.robot index 34460235c5..20d99015ea 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 4R1C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 4R1C | 4VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 8 vhost 4 chains -| ... | 1 VM* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 8 vhost 4 chains 4 VM* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c1n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-8vhost-4chain-4vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..eb696acc6b --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 4R1C | 4VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 8 vhost 4 chains 4 VM* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c1n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${4} | nf_nodes=${1} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${4} | nf_nodes=${1} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-4ch-8vh-4vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr.robot index 9fc7c290d7..36e69e6e64 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 6R1C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 6R1C | 6VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 12 vhost -| ... | 6 chains 6 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 12 vhost 6 chains 6 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c1n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-12vhost-6chain-6vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..9e6d7b8cf5 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 6R1C | 6VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 12 vhost 6 chains 6 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c1n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${6} | nf_nodes=${1} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${6} | nf_nodes=${1} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-6ch-12vh-6vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr.robot index 819f5a7a38..00ce5360ff 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 6R2C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 6R2C | 12VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 24 vhost -| ... | 6 chains 12 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 24 vhost 6 chains 12 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c2n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-24vhost-6chain-12vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..2daeae488a --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 6R2C | 12VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 24 vhost 6 chains 12 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c2n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${6} | nf_nodes=${2} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${6} | nf_nodes=${2} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-6ch-24vh-12vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr.robot index 95e0bab017..0459689ea9 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 8R1C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 8R1C | 8VM1T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 16 vhost -| ... | 8 chains 8 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 16 vhost 8 chains 8 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c1n @@ -86,50 +87,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc03-64B-4c-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr +| tc03-64B-4c-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| tc04-1518B-1c-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc06-1518B-4c-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr +| tc06-1518B-4c-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| tc07-9000B-1c-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc09-9000B-4c-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr +| tc09-9000B-4c-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| tc10-IMIX-1c-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| tc12-IMIX-4c-eth-l2bd-16vhost-8chain-8vm-vppip4-ndrpdr +| tc12-IMIX-4c-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..7da25a3ab5 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 8R1C | 8VM2T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 16 vhost 8 chains 8 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c1n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${8} | nf_nodes=${1} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${8} | nf_nodes=${1} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-8ch-16vh-8vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr.robot new file mode 100644 index 0000000000..4bbdacaead --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr.robot @@ -0,0 +1,136 @@ +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +*** Settings *** +| Resource | resources/libraries/robot/performance/performance_setup.robot +| ... +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 8R2C | 16VM1T +| ... +| Suite Setup | Set up 2-node performance topology with DUT's NIC model +| ... | L3 | ${nic_name} +| Suite Teardown | Tear down 2-node performance topology +| ... +| Test Setup | Set up performance test +| Test Teardown | Tear down performance test with vhost +| ... +| Test Template | Local Template +| ... +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 32 vhost 8 chains 16 VMs* +| ... +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | with single links between nodes. +| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. +| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ +| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ +| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ +| ... | of packets transmitted. NDR and PDR are discovered for different\ +| ... | Ethernet L2 frame sizes using MLRsearch library.\ +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ +| ... | interfaces. +| ... | *[Ref] Applicable standard specifications:* RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${overhead}= | ${0} +| ${nf_dtcr}= | ${2} +| ${nf_dtc}= | ${0.5} +# Traffic profile: +| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c2n + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). +| | ... | Type: integer, string +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | ... +| | Set Test Variable | \${frame_size} +| | ... +| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} +| | And Add PCI devices to all DUTs +| | Set Max Rate And Jumbo And Handle Multi Seg +| | And Apply startup configuration on all VPP DUTs +| | When Initialize L2 bridge domains for multiple chains with Vhost-User +| | ... | nf_chains=${8} | nf_nodes=${2} +| | And Configure chains of NFs connected via vhost-user +| | ... | nf_chains=${8} | nf_nodes=${2} | jumbo=${jumbo} +| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=vpp_chain_ip4 +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| tc01-64B-1c-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| tc02-64B-2c-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| tc03-64B-4c-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| tc04-1518B-1c-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| tc05-1518B-2c-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| tc06-1518B-4c-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| tc07-9000B-1c-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| tc08-9000B-2c-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| tc09-9000B-4c-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| tc10-IMIX-1c-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| tc11-IMIX-2c-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| tc12-IMIX-4c-eth-l2bd-8ch-32vh-16vm1t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-8chain-16vm-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr.robot index ff49c86b33..73fdb5495e 100644 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-8chain-16vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr.robot @@ -16,7 +16,7 @@ | ... | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 8R2C +| ... | VHOST_1024 | NF_DENSITY | NF_VPPIP4 | CHAIN | 8R2C | 16VM2T | ... | Suite Setup | Set up 2-node performance topology with DUT's NIC model | ... | L3 | ${nic_name} @@ -27,33 +27,34 @@ | ... | Test Template | Local Template | ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 32 vhost -| ... | 8 chains 16 VMs* +| Documentation +| ... | *RFC2544: Pkt throughput L2BD test cases with 32 vhost 8 chains 16 VMs* | ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ | ... | with single links between nodes. | ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running VPP IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ +| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-\ +| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via\ +| ... | vhost-user interfaces. Guest is running VPP IPv4 interconnecting \ +| ... | vhost-user interfaces, rxd/txd=1024. DUT1 is tested with ${nic_name}. | ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ | ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ | ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ | ... | of packets transmitted. NDR and PDR are discovered for different\ | ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, 254 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static -| ... | payload. MAC addresses are matching MAC addresses of NFs nodes +| ... | Test packets are generated by TG on\ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups\ +| ... | (flow-group per direction, 254 flows per flow-group) with all packets\ +| ... | containing Ethernet header, IPv4 header with IP protocol=61 and static\ +| ... | payload. MAC addresses are matching MAC addresses of NFs nodes\ | ... | interfaces. | ... | *[Ref] Applicable standard specifications:* RFC2544. *** Variables *** | ${nic_name}= | Intel-X710 | ${overhead}= | ${0} +| ${nf_dtcr}= | ${1} +| ${nf_dtc}= | ${1} # Traffic profile: | ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c2n @@ -86,34 +87,34 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| tc01-64B-1c-eth-l2bd-32vhost-8chain-16vm-vppip4-ndrpdr +| tc01-64B-1c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| tc02-64B-2c-eth-l2bd-32vhost-8chain-16vm-vppip4-ndrpdr +| tc02-64B-2c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| tc04-1518B-1c-eth-l2bd-32vhost-8chain-16vm-vppip4-ndrpdr +| tc04-1518B-1c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| tc05-1518B-2c-eth-l2bd-32vhost-8chain-16vm-vppip4-ndrpdr +| tc05-1518B-2c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| tc07-9000B-1c-eth-l2bd-32vhost-8chain-16vm-vppip4-ndrpdr +| tc07-9000B-1c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| tc08-9000B-2c-eth-l2bd-32vhost-8chain-16vm-vppip4-ndrpdr +| tc08-9000B-2c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| tc10-IMIX-1c-eth-l2bd-32vhost-8chain-16vm-vppip4-ndrpdr +| tc10-IMIX-1c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| tc11-IMIX-2c-eth-l2bd-32vhost-8chain-16vm-vppip4-ndrpdr +| tc11-IMIX-2c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/regenerate_testcases.py b/tests/vpp/perf/nfv_density/vm_vhost/chain/regenerate_testcases.py new file mode 100755 index 0000000000..2632018a80 --- /dev/null +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python + +# Copyright (c) 2019 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from resources.libraries.python.autogen.Regenerator import Regenerator + +Regenerator().regenerate_glob("*.robot") diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 141783d863..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 1R6C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 12 vhost 1 chain -| ... | 6 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c6n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${1} | nf_nodes=${6} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${1} | nf_nodes=${6} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-12vhost-1chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 8b039b1e6a..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 6R1C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 12 vhost -| ... | 6 chains 6 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c1n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${6} | nf_nodes=${1} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${6} | nf_nodes=${1} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-12vhost-6chain-6vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 5d6cf6e767..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 1R8C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 16 vhost 1 chain -| ... | 8 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c1n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${1} | nf_nodes=${8} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${1} | nf_nodes=${8} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-16vhost-1chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 56ad479f3d..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 2R4C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 16 vhost -| ... | 2 chains 8 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c4n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${2} | nf_nodes=${4} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${2} | nf_nodes=${4} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-16vhost-2chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index b03de7067b..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 4R2C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 16 vhost -| ... | 4 chains 2 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c2n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${4} | nf_nodes=${2} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${4} | nf_nodes=${2} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-16vhost-4chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 3d062f4515..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 8R1C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 16 vhost -| ... | 8 chains 8 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c1n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${8} | nf_nodes=${1} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${8} | nf_nodes=${1} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-16vhost-8chain-8vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 0b7592874b..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 10R1C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 20 vhost -| ... | 10 chains 10 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-10c1n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${10} | nf_nodes=${1} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${10} | nf_nodes=${1} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-20vhost-10chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 95450da7c1..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 1R10C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 20 vhost 1 chain -| ... | 10 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c10n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${1} | nf_nodes=${10} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${1} | nf_nodes=${10} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-20vhost-1chain-10vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index f6a0b8d67a..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 2R6C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 24 vhost -| ... | 6 chains 12 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c6n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${2} | nf_nodes=${6} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${2} | nf_nodes=${6} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-24vhost-2chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 61d67ea019..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 6R2C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 24 vhost -| ... | 6 chains 12 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-6c2n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${6} | nf_nodes=${2} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${6} | nf_nodes=${2} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-24vhost-6chain-12vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 04989d34c4..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 1R1C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 2 vhost 1 chain -| ... | 1 VM* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c1n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${1} | nf_nodes=${1} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${1} | nf_nodes=${1} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-2vhost-1chain-1vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-2chain-16vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-2chain-16vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 70dacd184f..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-2chain-16vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,118 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 2R8C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 32 vhost -| ... | 2 chains 16 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c8n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${2} | nf_nodes=${8} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${2} | nf_nodes=${8} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-32vhost-2chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-32vhost-2chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc04-1518B-1c-eth-l2bd-32vhost-2chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-32vhost-2chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc07-9000B-1c-eth-l2bd-32vhost-2chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-32vhost-2chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc10-IMIX-1c-eth-l2bd-32vhost-2chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-32vhost-2chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-4chain-16vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-4chain-16vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 7ba1b63950..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-4chain-16vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,118 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 4R4C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 32 vhost -| ... | 4 chains 16 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c4n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${4} | nf_nodes=${4} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${4} | nf_nodes=${4} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-32vhost-4chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-32vhost-4chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc04-1518B-1c-eth-l2bd-32vhost-4chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-32vhost-4chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc07-9000B-1c-eth-l2bd-32vhost-4chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-32vhost-4chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc10-IMIX-1c-eth-l2bd-32vhost-4chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-32vhost-4chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-8chain-16vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-8chain-16vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 5229f22b84..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-32vhost-8chain-16vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,118 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 8R2C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 32 vhost -| ... | 8 chains 16 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-8c2n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${8} | nf_nodes=${2} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${8} | nf_nodes=${2} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-32vhost-8chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-32vhost-8chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc04-1518B-1c-eth-l2bd-32vhost-8chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-32vhost-8chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc07-9000B-1c-eth-l2bd-32vhost-8chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-32vhost-8chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc10-IMIX-1c-eth-l2bd-32vhost-8chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-32vhost-8chain-16vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 36851a3dbf..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 1R2C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 4 vhost 1 chain -| ... | 2 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c2n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${1} | nf_nodes=${2} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${1} | nf_nodes=${2} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-4vhost-1chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 261ccbe712..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 2R1C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 4 vhost 2 chains -| ... | 2 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c1n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${2} | nf_nodes=${1} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${2} | nf_nodes=${1} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-4vhost-2chain-2vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 875070281f..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 1R4C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 8 vhost 1 chain -| ... | 4 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-1c4n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${1} | nf_nodes=${4} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${1} | nf_nodes=${4} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-8vhost-1chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index dd6c0bac43..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 2R2C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 8 vhost 2 chains -| ... | 4 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-2c2n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${2} | nf_nodes=${2} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${2} | nf_nodes=${2} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-8vhost-2chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr.robot deleted file mode 100644 index 1871530717..0000000000 --- a/tests/vpp/perf/vm_vhost/2n-10ge2p1x710-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr.robot +++ /dev/null @@ -1,134 +0,0 @@ -# Copyright (c) 2019 Cisco and/or its affiliates. -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at: -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -*** Settings *** -| Resource | resources/libraries/robot/performance/performance_setup.robot -| ... -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | VM -| ... | VHOST_1024 | NF_DENSITY | NF_L3FWDIP4 | CHAIN | 4R1C -| ... -| Suite Setup | Set up 2-node performance topology with DUT's NIC model -| ... | L3 | ${nic_name} -| Suite Teardown | Tear down 2-node performance topology -| ... -| Test Setup | Set up performance test -| Test Teardown | Tear down performance test with vhost -| ... -| Test Template | Local Template -| ... -| Documentation | *RFC2544: Pkt throughput L2BD test cases with 8 vhost 4 chains -| ... | 4 VMs* -| ... -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are connected to VPP via -| ... | vhost-user interfaces. Guest is running DPDK l3fwd IPv4 -| ... | interconnecting vhost-user interfaces, forwarding mode is -| ... | set to io, rxd/txd=1024. DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* TG finds and reports throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance and throughput PDR (Partial Drop\ -| ... | Rate) with non-zero packet loss tolerance (LT) expressed in percentage\ -| ... | of packets transmitted. NDR and PDR are discovered for different\ -| ... | Ethernet L2 frame sizes using MLRsearch library.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 254 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC -| ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. - -*** Variables *** -| ${nic_name}= | Intel-X710 -| ${overhead}= | ${0} -# Traffic profile: -| ${traffic_profile}= | trex-sl-2n3n-ethip4-ip4src254-4c1n - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ -| | ... -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). -| | ... | Type: integer, string -| | ... | - phy_cores - Number of physical cores. Type: integer -| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer -| | ... -| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} -| | ... -| | Set Test Variable | \${frame_size} -| | ... -| | Given Add worker threads and rxqueues to all DUTs | ${phy_cores} | ${rxq} -| | And Add PCI devices to all DUTs -| | Set Max Rate And Jumbo And Handle Multi Seg -| | And Apply startup configuration on all VPP DUTs -| | When Initialize L2 bridge domains for multiple chains with Vhost-User -| | ... | nf_chains=${4} | nf_nodes=${1} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${4} | nf_nodes=${1} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_mac -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| tc01-64B-1c-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| tc02-64B-2c-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| tc03-64B-4c-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| tc04-1518B-1c-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| tc05-1518B-2c-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| tc06-1518B-4c-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| tc07-9000B-1c-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| tc08-9000B-2c-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| tc09-9000B-4c-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| tc10-IMIX-1c-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| tc11-IMIX-2c-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| tc12-IMIX-4c-eth-l2bd-8vhost-4chain-4vm-l3fwdip4-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} |