diff options
Diffstat (limited to 'tests')
825 files changed, 37940 insertions, 31172 deletions
diff --git a/tests/__init__.robot b/tests/__init__.robot new file mode 100644 index 0000000000..b610a511a2 --- /dev/null +++ b/tests/__init__.robot @@ -0,0 +1,37 @@ +# Copyright (c) 2022 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 *** +| Library | resources.libraries.python.model.ExportJson +| +| Suite Setup | Global Suite Setup +| Suite Teardown | Global Suite Teardown + +*** Keywords *** +| Global Suite Setup +| | [Documentation] +| | ... | Perform initializations needed for any subsequent suite. +| | ... | Currently only a minimal JSON export of time. +| | +| | Start Suite Setup Export +| | # Nothing explicit here, implicitly a place to find global start timestamp. +| | Finalize Suite Setup Export + +| Global Suite Teardown +| | [Documentation] +| | ... | Perform cleanup needed after any preceding suite. +| | ... | Currently only a minimal JSON export of time. +| | +| | Start Suite Teardown Export +| | # Nothing explicit here, implicitly a place to find global end timestamp. +| | Finalize Suite Teardown Export diff --git a/tests/dpdk/perf/10ge2p1x710-eth-l2xcbase-testpmd-ndrpdr.robot b/tests/dpdk/perf/10ge2p1x710-eth-l2xcbase-testpmd-ndrpdr.robot index 3cab124b37..4a041c1692 100644 --- a/tests/dpdk/perf/10ge2p1x710-eth-l2xcbase-testpmd-ndrpdr.robot +++ b/tests/dpdk/perf/10ge2p1x710-eth-l2xcbase-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -13,8 +13,8 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/dpdk/default.robot | Library | resources.libraries.python.DPDK.DPDKTools +| Library | resources.libraries.python.DPDK.TestpmdTest | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | HW_ENV | PERFTEST | NDRPDR | 1NUMA | ... | NIC_Intel-X710 | DPDK | ETH | L2XCFWD | BASE @@ -24,25 +24,32 @@ | | Suite Setup | Setup suite topology interfaces | performance | dpdk | Suite Teardown | Tear down suite | performance | dpdk +| Test Setup | Start Test Export +| Test Teardown | Finalize Test Export | | Test Template | Local Template | -| Documentation | *Raw results L2 routing test cases* -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 frame forwarding. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 run the DPDK testpmd\ -| ... | application and use the io forwarding mode. DUT1 and DUT2 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 static payload.\ +| Documentation | **Raw results L2 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 frame forwarding. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 run the DPDK testpmd \ +| ... | application and use the io forwarding mode. DUT1 and DUT2 are 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 static payload \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. *** Variables *** @@ -56,14 +63,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2 frame forwarding config.\ +| | ... | - **[Cfg]** DUT runs L2 frame forwarding config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | @@ -71,7 +78,8 @@ | | | | Given Set Max Rate And Jumbo | | And Pre-initialize layer driver | ${nic_driver} -| | When Start testpmd on all DUTs | ${phy_cores} | ${rxq} | ${jumbo} +| | When Start testpmd on all DUTs | ${nodes} | ${topology_info} +| | ... | ${phy_cores} | ${rxq} | ${jumbo} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/dpdk/perf/10ge2p1x710-ethip4-ip4base-l3fwd-ndrpdr.robot b/tests/dpdk/perf/10ge2p1x710-ethip4-ip4base-l3fwd-ndrpdr.robot index fc3b3060cc..d822e24f00 100644 --- a/tests/dpdk/perf/10ge2p1x710-ethip4-ip4base-l3fwd-ndrpdr.robot +++ b/tests/dpdk/perf/10ge2p1x710-ethip4-ip4base-l3fwd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -13,8 +13,8 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/dpdk/default.robot | Library | resources.libraries.python.DPDK.DPDKTools +| Library | resources.libraries.python.DPDK.L3fwdTest | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | 1NUMA | ... | NIC_Intel-X710 | DPDK | IP4FWD | BASE | ETH @@ -24,25 +24,32 @@ | | Suite Setup | Setup suite topology interfaces | performance | dpdk | Suite Teardown | Tear down suite | performance | dpdk +| Test Setup | Start Test Export +| Test Teardown | Finalize Test Export | | Test Template | Local Template | -| Documentation | *Raw results IPv4 routing test cases* -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L3 IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 run the DPDK l3fwd application\ -| ... | DUT1 and DUT2 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, 253 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\ +| Documentation | **Raw results IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L3 IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 run the DPDK l3fwd \ +| ... | application. DUT1 and DUT2 are 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, 253 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 *** @@ -56,14 +63,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst253_l3fwd +| ${traffic_profile}= | trex-stl-ethip4-ip4dst253_l3fwd *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L3 IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs L3 IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | @@ -71,7 +78,8 @@ | | | | Given Set Max Rate And Jumbo | | And Pre-initialize layer driver | ${nic_driver} -| | When Start L3FWD on all DUTs | ${phy_cores} | ${rxq} | ${jumbo} +| | When Start l3fwd on all DUTs | ${nodes} | ${topology_info} +| | ... | ${phy_cores} | ${rxq} | ${jumbo} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/dpdk/perf/2n1l-10ge2p1x710-eth-l2xcbase-testpmd-ndrpdr.robot b/tests/dpdk/perf/2n1l-10ge2p1x710-eth-l2xcbase-testpmd-ndrpdr.robot index 1c345950e7..b788f95af1 100644 --- a/tests/dpdk/perf/2n1l-10ge2p1x710-eth-l2xcbase-testpmd-ndrpdr.robot +++ b/tests/dpdk/perf/2n1l-10ge2p1x710-eth-l2xcbase-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -13,8 +13,8 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/dpdk/default.robot | Library | resources.libraries.python.DPDK.DPDKTools +| Library | resources.libraries.python.DPDK.TestpmdTest | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | HW_ENV | PERFTEST | NDRPDR | 1NUMA | ... | NIC_Intel-X710 | DPDK | ETH | L2XCFWD | BASE @@ -24,25 +24,32 @@ | | Suite Setup | Setup suite topology interfaces | performance | dpdk | Suite Teardown | Tear down suite | performance | dpdk +| Test Setup | Start Test Export +| Test Teardown | Finalize Test Export | | Test Template | Local Template | -| Documentation | *Raw results L2 routing test cases* -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **Raw results L2 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 frame forwarding. -| ... | *[Cfg] DUT configuration:* DUT1 run the DPDK testpmd\ -| ... | application and use the io forwarding mode. DUT1 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 static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 frame forwarding. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 run the DPDK testpmd \ +| ... | application and use the io forwarding mode. DUT1 tested with \ +| ... | 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 static payload \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. *** Variables *** @@ -56,14 +63,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2 frame forwarding config.\ +| | ... | - **[Cfg]** DUT runs L2 frame forwarding config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | @@ -71,7 +78,8 @@ | | | | Given Set Max Rate And Jumbo | | And Pre-initialize layer driver | ${nic_driver} -| | When Start testpmd on all DUTs | ${phy_cores} | ${rxq} | ${jumbo} +| | When Start testpmd on all DUTs | ${nodes} | ${topology_info} +| | ... | ${phy_cores} | ${rxq} | ${jumbo} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/dpdk/perf/2n1l-10ge2p1x710-ethip4-ip4base-l3fwd-ndrpdr.robot b/tests/dpdk/perf/2n1l-10ge2p1x710-ethip4-ip4base-l3fwd-ndrpdr.robot index 6e3106d84c..182f272641 100644 --- a/tests/dpdk/perf/2n1l-10ge2p1x710-ethip4-ip4base-l3fwd-ndrpdr.robot +++ b/tests/dpdk/perf/2n1l-10ge2p1x710-ethip4-ip4base-l3fwd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -13,8 +13,8 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/dpdk/default.robot | Library | resources.libraries.python.DPDK.DPDKTools +| Library | resources.libraries.python.DPDK.L3fwdTest | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | 1NUMA | ... | NIC_Intel-X710 | DPDK | IP4FWD | BASE | ETH @@ -24,25 +24,32 @@ | | Suite Setup | Setup suite topology interfaces | performance | dpdk | Suite Teardown | Tear down suite | performance | dpdk +| Test Setup | Start Test Export +| Test Teardown | Finalize Test Export | | Test Template | Local Template | -| Documentation | *Raw results IPv4 routing test cases* -| ... | *[Top] Network Topologies:* TG-DUT1-TG 3-node circular topology\ +| Documentation | **Raw results IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 3-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L3 IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 run the DPDK l3fwd application\ -| ... | DUT1 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, 253 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\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L3 IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 run the DPDK l3fwd application \ +| ... | DUT1 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, 253 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 *** @@ -56,14 +63,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst253_l3fwd +| ${traffic_profile}= | trex-stl-ethip4-ip4dst253_l3fwd *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L3 IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs L3 IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | @@ -71,7 +78,8 @@ | | | | Given Set Max Rate And Jumbo | | And Pre-initialize layer driver | ${nic_driver} -| | When Start L3FWD on all DUTs | ${phy_cores} | ${rxq} | ${jumbo} +| | When Start l3fwd on all DUTs | ${nodes} | ${topology_info} +| | ... | ${phy_cores} | ${rxq} | ${jumbo} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/dpdk/perf/__init__.robot b/tests/dpdk/perf/__init__.robot index 0161b4cff1..2945936116 100644 --- a/tests/dpdk/perf/__init__.robot +++ b/tests/dpdk/perf/__init__.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2021 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: @@ -19,14 +19,18 @@ | Library | resources.libraries.python.SetupFramework.CleanupFramework | Library | resources.libraries.python.DPDK.DPDKTools | -| Suite Setup | Run Keywords | Setup performance global Variables +| Suite Setup | Run Keywords | Start Suite Setup Export +| ... | AND | Setup performance global Variables | ... | AND | Setup Framework | ${nodes} | ... | AND | Install DPDK framework on all DUTs | ${nodes} | ... | AND | Get CPU Info from All Nodes | ${nodes} | ... | AND | Update All Interface Data on All Nodes | ${nodes} | ... | skip_tg=${True} | skip_vpp=${True} +| ... | AND | Finalize Suite Setup Export | -| Suite Teardown | Cleanup Framework | ${nodes} +| Suite Teardown | Run Keywords | Start Suite Teardown Export +| ... | AND | Cleanup Framework | ${nodes} +| ... | AND | Finalize Suite Teardown Export *** Keywords *** | Setup performance global Variables @@ -34,18 +38,14 @@ | | ... | Setup suite Variables. Variables are used across performance testing. | | | | ... | _NOTE:_ This KW sets following suite variables: -| | ... | - pre_stats - Statistics actions before traffic. -| | ... | - post_stats - Statistics actions after traffic. -| | ... | - pre_run_stats - Statistics actions during traffic before timer. -| | ... | - post_run_stats - Statistics actions during traffic after timer. +| | ... | - stat_runtime - Statistics actions within traffic trial. +| | ... | - stat_pre_trial - Statistics actions before traffic trials. +| | ... | - stat_post_trial - Statistics actions after traffic trials. | | -| | ${pre_stats}= | Create List -| | ... | clear-show-runtime-with-traffic -| | ${post_stats}= | Create List | noop -| | ${pre_run_stats}= | Create List | noop -| | ${post_run_stats}= | Create List | noop -| | Set Global Variable | ${pre_stats} -| | Set Global Variable | ${post_stats} -| | Set Global Variable | ${pre_run_stats} -| | Set Global Variable | ${post_run_stats} +| | ${stat_runtime}= | Create List | noop +| | ${stat_pre_trial}= | Create List | noop +| | ${stat_post_trial}= | Create List | noop +| | Set Global Variable | ${stat_runtime} +| | Set Global Variable | ${stat_pre_trial} +| | Set Global Variable | ${stat_post_trial} | | Set Global Variable | ${nodes} diff --git a/tests/dpdk/perf/regenerate_testcases.py b/tests/dpdk/perf/regenerate_testcases.py index 190213fb3d..5059df90bf 100755 --- a/tests/dpdk/perf/regenerate_testcases.py +++ b/tests/dpdk/perf/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2021 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: diff --git a/tests/trex/perf/__init__.robot b/tests/trex/perf/__init__.robot new file mode 100644 index 0000000000..654f23362a --- /dev/null +++ b/tests/trex/perf/__init__.robot @@ -0,0 +1,45 @@ +# Copyright (c) 2023 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/shared/default.robot +| Resource | resources/libraries/robot/shared/interfaces.robot +| +| Library | resources.libraries.python.SetupFramework +| Library | resources.libraries.python.SetupFramework.CleanupFramework +| Library | resources.libraries.python.CpuUtils +| +| Suite Setup | Run Keywords | Start Suite Setup Export +| ... | AND | Setup Global Variables +| ... | AND | Setup Framework | ${nodes} +| ... | AND | Get CPU Info from All Nodes | ${nodes} +| ... | AND | Update All Interface Data on All Nodes | ${nodes} +| ... | skip_tg=${True} | skip_vpp=${True} +| ... | AND | Finalize Suite Setup Export +| +| Suite Teardown | Run Keywords | Start Suite Teardown Export +| ... | AND | Cleanup Framework | ${nodes} +| ... | AND | Finalize Suite Teardown Export + +*** Keywords *** +| Setup Global Variables +| | [Documentation] +| | ... | Setup suite Variables. Variables are used across performance testing. +| | +| | ${stat_runtime}= | Create List | trex-runtime +| | ${stat_pre_trial}= | Create List | noop +| | ${stat_post_trial}= | Create List | noop +| | Set Global Variable | ${stat_runtime} +| | Set Global Variable | ${stat_pre_trial} +| | Set Global Variable | ${stat_post_trial} +| | Set Global Variable | ${nodes} diff --git a/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4-ip4base-tg-ndrpdr.robot b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4-ip4base-tg-ndrpdr.robot new file mode 100644 index 0000000000..3223bdeb7c --- /dev/null +++ b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4-ip4base-tg-ndrpdr.robot @@ -0,0 +1,92 @@ +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 1_NODE_SINGLE_LINK_TOPO | 2_NODE_SINGLE_LINK_TOPO +| ... | 3_NODE_SINGLE_LINK_TOPO +| ... | PERFTEST | HW_ENV | NDRPDR | NIC_Intel-X710 | TREX | ETH | N2N +| ... | BASE | IP4BASE | TG_DRV_IGB_UIO +| ... | ethip4-ip4base-tg +| +| Suite Setup | Setup suite topology interfaces with no DUT | performance_tg_nic +| Suite Teardown | Tear down suite | performance +| Test Setup | Start Test Export +| Test Teardown | Tear down test raw | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput for cross connected NICs with \ +| ... | IPv4 traffic profile.** +| ... | +| ... | - **[Top] Network Topologies:** TG-TG 1-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L1 cross connect patch. +| ... | +| ... | - **[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 TG. \ +| ... | 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 static payload. \ +| ... | MAC addresses are matching MAC addresses of the TG node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${nic_pfs}= | 2 +| ${osi_layer}= | L2 +| ${overhead}= | ${0} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** TG runs L1 cross connect config. +| | ... | - **[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 +| | +| | [Arguments] | ${frame_size} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B--ethip4-ip4base-tg-ndrpdr +| | [Tags] | 64B +| | frame_size=${64} + +| 1518B--ethip4-ip4base-tg-ndrpdr +| | [Tags] | 1518B +| | frame_size=${1518} + +| 9000B--ethip4-ip4base-tg-ndrpdr +| | [Tags] | 9000B +| | frame_size=${9000} + +| IMIX--ethip4-ip4base-tg-ndrpdr +| | [Tags] | IMIX +| | frame_size=IMIX_v4_1 diff --git a/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4-ip4scale20k-tg-ndrpdr.robot b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4-ip4scale20k-tg-ndrpdr.robot new file mode 100644 index 0000000000..117aba81da --- /dev/null +++ b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4-ip4scale20k-tg-ndrpdr.robot @@ -0,0 +1,93 @@ +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 1_NODE_SINGLE_LINK_TOPO | 2_NODE_SINGLE_LINK_TOPO +| ... | 3_NODE_SINGLE_LINK_TOPO +| ... | PERFTEST | HW_ENV | NDRPDR | NIC_Intel-X710 | TREX | ETH | N2N +| ... | SCALE | IP4SCALE20K | TG_DRV_IGB_UIO +| ... | ethip4-ip4scale20k-tg +| +| Suite Setup | Setup suite topology interfaces with no DUT | performance_tg_nic +| Suite Teardown | Tear down suite | performance +| Test Setup | Start Test Export +| Test Teardown | Tear down test raw | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput for cross connected NICs with \ +| ... | IPv4 traffic profile.** +| ... | +| ... | - **[Top] Network Topologies:** TG-TG 1-node circular topology \ +| ... | with single links between. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L1 cross connect patch. +| ... | +| ... | - **[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 TG. \ +| ... | TG traffic profile contains two L3 flow-groups (flow-group per \ +| ... | direction, 10k 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 +| ${nic_pfs}= | 2 +| ${osi_layer}= | L2 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${10000} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${rts_per_flow} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** TG runs L1 cross connect config. +| | ... | - **[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 +| | +| | [Arguments] | ${frame_size} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B--ethip4-ip4scale20k-tg-ndrpdr +| | [Tags] | 64B +| | frame_size=${64} + +| 1518B--ethip4-ip4scale20k-tg-ndrpdr +| | [Tags] | 1518B +| | frame_size=${1518} + +| 9000B--ethip4-ip4scale20k-tg-ndrpdr +| | [Tags] | 9000B +| | frame_size=${9000} + +| IMIX--ethip4-ip4scale20k-tg-ndrpdr +| | [Tags] | IMIX +| | frame_size=IMIX_v4_1 diff --git a/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-cps-tg-ndrpdr.robot b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-cps-tg-ndrpdr.robot new file mode 100644 index 0000000000..9502516509 --- /dev/null +++ b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-cps-tg-ndrpdr.robot @@ -0,0 +1,87 @@ +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 1_NODE_SINGLE_LINK_TOPO | 2_NODE_SINGLE_LINK_TOPO +| ... | 3_NODE_SINGLE_LINK_TOPO +| ... | PERFTEST | HW_ENV | NDRPDR | NIC_Intel-X710 | TREX | ETH | N2N +| ... | IP4BASE | TCP | TCP_CPS | TG_DRV_IGB_UIO | SCALE | HOSTS_1024 +| ... | ethip4tcp-ip4base-h1024-p63-s64512-cps-tg +| +| Suite Setup | Setup suite topology interfaces with no DUT | performance_tg_nic +| Suite Teardown | Tear down suite | performance +| Test Setup | Start Test Export +| Test Teardown | Tear down test raw | performance +| +| Test Template | Local Template +| +| Documentation | **CPS on empty TCP transactions with L1 cross connect** +| ... | +| ... | - **[Top] Network Topologies:** TG-TG 1-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L1 cross connect patch. +| ... | +| ... | - **[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 TG. \ +| ... | TG traffic profile contain L7 flows (${cps} bi-directional TCP flows) \ +| ... | with all packets containing Ethernet header, IPv4 header with TCP \ +| ... | header and static payload. \ +| ... | MAC addresses are matching MAC addresses of the TG node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${nic_pfs}= | 2 +| ${osi_layer}= | L7 +| ${overhead}= | ${0} +# Scale settings +| ${n_hosts}= | ${1024} +| ${n_ports}= | ${63} +| ${transaction_scale}= | ${${n_hosts} * ${n_ports}} +| ${packets_per_transaction_and_direction}= | ${4} +| ${packets_per_transaction_aggregated}= | ${7} +# Traffic profile +| ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h +| ${transaction_type}= | tcp_cps +| ${disable_latency}= | ${True} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** TG runs L1 cross connect config. +| | ... | - **[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 +| | +| | [Arguments] | ${frame_size} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B--ethip4tcp-ip4base-h1024-p63-s64512-cps-tg-ndrpdr +| | [Tags] | 64B +| | frame_size=${64} diff --git a/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-tput-tg-ndrpdr.robot b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-tput-tg-ndrpdr.robot new file mode 100644 index 0000000000..033fdbc935 --- /dev/null +++ b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-tput-tg-ndrpdr.robot @@ -0,0 +1,96 @@ +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 1_NODE_SINGLE_LINK_TOPO | 2_NODE_SINGLE_LINK_TOPO +| ... | 3_NODE_SINGLE_LINK_TOPO +| ... | PERFTEST | HW_ENV | NDRPDR | NIC_Intel-X710 | TREX | ETH | N2N +| ... | IP4BASE | TCP | TCP_TPUT | TG_DRV_IGB_UIO | SCALE | HOSTS_1024 +| ... | ethip4tcp-ip4base-h1024-p63-s64512-tput-tg +| +| Suite Setup | Setup suite topology interfaces with no DUT | performance_tg_nic +| Suite Teardown | Tear down suite | performance +| Test Setup | Start Test Export +| Test Teardown | Tear down test raw | performance +| +| Test Template | Local Template +| +| # TODO CSIT-1765: Unify suite Documentation. +| Documentation | **TPUT on lightweight TCP transactions with L1 cross connect** +| ... | +| ... | - **[Top] Network Topologies:** TG-TG 1-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L1 cross connect patch. +| ... | +| ... | - **[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 TG. \ +| ... | TG traffic profile contains client and server ASTF programs, \ +| ... | generating packets containing Ethernet header, IPv4 header, \ +| ... | TCP header and static payload. \ +| ... | MAC addresses are matching MAC addresses of the TG node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${nic_pfs}= | 2 +| ${osi_layer}= | L7 +| ${overhead}= | ${0} +# Scale settings +| ${n_hosts}= | ${1024} +| ${n_ports}= | ${63} +| ${packets_per_transaction_and_direction}= | ${4 + ${ASTF_N_DATA_FRAMES}} +| ${packets_per_transaction_aggregated}= | ${6 + 2 * ${ASTF_N_DATA_FRAMES}} +| ${transaction_scale}= | ${${n_hosts} * ${n_ports}} +# Traffic profile: +| ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h-pps +| ${transaction_type}= | tcp_pps +| ${disable_latency}= | ${True} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** TG runs L1 cross connect config. +| | ... | - **[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 +| | +| | [Arguments] | ${frame_size} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 100B--ethip4tcp-ip4base-h1024-p63-s64512-tput-tg-ndrpdr +| | [Tags] | 100B +| | frame_size=${100} + +| 1518B--ethip4tcp-ip4base-h1024-p63-s64512-tput-tg-ndrpdr +| | [Tags] | 1518B +| | frame_size=${1518} + +| 9000B--ethip4tcp-ip4base-h1024-p63-s64512-tput-tg-ndrpdr +| | [Tags] | 9000B +| | frame_size=${9000} diff --git a/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-cps-tg-ndrpdr.robot b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-cps-tg-ndrpdr.robot new file mode 100644 index 0000000000..9258e38c10 --- /dev/null +++ b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-cps-tg-ndrpdr.robot @@ -0,0 +1,87 @@ +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 1_NODE_SINGLE_LINK_TOPO | 2_NODE_SINGLE_LINK_TOPO +| ... | 3_NODE_SINGLE_LINK_TOPO +| ... | PERFTEST | HW_ENV | NDRPDR | NIC_Intel-X710 | TREX | ETH | N2N +| ... | IP4BASE | TCP | TCP_CPS | TG_DRV_IGB_UIO | SCALE | HOSTS_262144 +| ... | ethip4tcp-ip4base-h262144-p63-s16515072-cps-tg +| +| Suite Setup | Setup suite topology interfaces with no DUT | performance_tg_nic +| Suite Teardown | Tear down suite | performance +| Test Setup | Start Test Export +| Test Teardown | Tear down test raw | performance +| +| Test Template | Local Template +| +| Documentation | **CPS on empty TCP transactions with L1 cross connect** +| ... | +| ... | - **[Top] Network Topologies:** TG-TG 1-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L1 cross connect patch. +| ... | +| ... | - **[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 TG. \ +| ... | TG traffic profile contain L7 flows (${cps} bi-directional TCP flows) \ +| ... | with all packets containing Ethernet header, IPv4 header with TCP \ +| ... | header and static payload. \ +| ... | MAC addresses are matching MAC addresses of the TG node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${nic_pfs}= | 2 +| ${osi_layer}= | L7 +| ${overhead}= | ${0} +# Scale settings +| ${n_hosts}= | ${262144} +| ${n_ports}= | ${63} +| ${transaction_scale}= | ${${n_hosts} * ${n_ports}} +| ${packets_per_transaction_and_direction}= | ${4} +| ${packets_per_transaction_aggregated}= | ${7} +# Traffic profile +| ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h +| ${transaction_type}= | tcp_cps +| ${disable_latency}= | ${True} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** TG runs L1 cross connect config. +| | ... | - **[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 +| | +| | [Arguments] | ${frame_size} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B--ethip4tcp-ip4base-h262144-p63-s16515072-cps-tg-ndrpdr +| | [Tags] | 64B +| | frame_size=${64} diff --git a/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-tput-tg-ndrpdr.robot b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-tput-tg-ndrpdr.robot new file mode 100644 index 0000000000..4fccf364a5 --- /dev/null +++ b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-tput-tg-ndrpdr.robot @@ -0,0 +1,96 @@ +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 1_NODE_SINGLE_LINK_TOPO | 2_NODE_SINGLE_LINK_TOPO +| ... | 3_NODE_SINGLE_LINK_TOPO +| ... | PERFTEST | HW_ENV | NDRPDR | NIC_Intel-X710 | TREX | ETH | N2N +| ... | IP4BASE | TCP | TCP_TPUT | TG_DRV_IGB_UIO | SCALE | HOSTS_262144 +| ... | ethip4tcp-ip4base-h262144-p63-s16515072-tput-tg +| +| Suite Setup | Setup suite topology interfaces with no DUT | performance_tg_nic +| Suite Teardown | Tear down suite | performance +| Test Setup | Start Test Export +| Test Teardown | Tear down test raw | performance +| +| Test Template | Local Template +| +| # TODO CSIT-1765: Unify suite Documentation. +| Documentation | **TPUT on lightweight TCP transactions with L1 cross connect** +| ... | +| ... | - **[Top] Network Topologies:** TG-TG 1-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L1 cross connect patch. +| ... | +| ... | - **[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 TG. \ +| ... | TG traffic profile contains client and server ASTF programs, \ +| ... | generating packets containing Ethernet header, IPv4 header, \ +| ... | TCP header and static payload. \ +| ... | MAC addresses are matching MAC addresses of the TG node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${nic_pfs}= | 2 +| ${osi_layer}= | L7 +| ${overhead}= | ${0} +# Scale settings +| ${n_hosts}= | ${262144} +| ${n_ports}= | ${63} +| ${packets_per_transaction_and_direction}= | ${4 + ${ASTF_N_DATA_FRAMES}} +| ${packets_per_transaction_aggregated}= | ${6 + 2 * ${ASTF_N_DATA_FRAMES}} +| ${transaction_scale}= | ${${n_hosts} * ${n_ports}} +# Traffic profile: +| ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h-pps +| ${transaction_type}= | tcp_pps +| ${disable_latency}= | ${True} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** TG runs L1 cross connect config. +| | ... | - **[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 +| | +| | [Arguments] | ${frame_size} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 100B--ethip4tcp-ip4base-h262144-p63-s16515072-tput-tg-ndrpdr +| | [Tags] | 100B +| | frame_size=${100} + +| 1518B--ethip4tcp-ip4base-h262144-p63-s16515072-tput-tg-ndrpdr +| | [Tags] | 1518B +| | frame_size=${1518} + +| 9000B--ethip4tcp-ip4base-h262144-p63-s16515072-tput-tg-ndrpdr +| | [Tags] | 9000B +| | frame_size=${9000} diff --git a/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-cps-tg-ndrpdr.robot b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-cps-tg-ndrpdr.robot new file mode 100644 index 0000000000..3c98bb799f --- /dev/null +++ b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-cps-tg-ndrpdr.robot @@ -0,0 +1,85 @@ +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 1_NODE_SINGLE_LINK_TOPO | 2_NODE_SINGLE_LINK_TOPO +| ... | 3_NODE_SINGLE_LINK_TOPO +| ... | PERFTEST | HW_ENV | NDRPDR | NIC_Intel-X710 | TREX | ETH | N2N +| ... | IP4BASE | UDP | UDP_CPS | TG_DRV_IGB_UIO | SCALE | HOSTS_1024 +| ... | ethip4udp-ip4base-h1024-p63-s64512-cps-tg +| +| Suite Setup | Setup suite topology interfaces with no DUT | performance_tg_nic +| Suite Teardown | Tear down suite | performance +| Test Setup | Start Test Export +| Test Teardown | Tear down test raw | performance +| +| Test Template | Local Template +| +| Documentation | **CPS on empty UDP transactions with L1 cross connect** +| ... | +| ... | - **[Top] Network Topologies:** TG-TG 1-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L1 cross connect patch. +| ... | +| ... | - **[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 TG. \ +| ... | TG traffic profile contain L7 flows (${cps} bi-directional UDP flows) \ +| ... | with all packets containing Ethernet header, IPv4 header with UDP \ +| ... | header and static payload. \ +| ... | MAC addresses are matching MAC addresses of the TG node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${nic_pfs}= | 2 +| ${osi_layer}= | L7 +| ${overhead}= | ${0} +# Scale settings +| ${n_hosts}= | ${1024} +| ${n_ports}= | ${63} +| ${transaction_scale}= | ${${n_hosts} * ${n_ports}} +# Traffic profile +| ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h +| ${transaction_type}= | udp_cps +| ${disable_latency}= | ${True} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** TG runs L1 cross connect config. +| | ... | - **[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 +| | +| | [Arguments] | ${frame_size} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B--ethip4udp-ip4base-h1024-p63-s64512-cps-tg-ndrpdr +| | [Tags] | 64B +| | frame_size=${64} diff --git a/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-tput-tg-ndrpdr.robot b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-tput-tg-ndrpdr.robot new file mode 100644 index 0000000000..22d6a20535 --- /dev/null +++ b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-tput-tg-ndrpdr.robot @@ -0,0 +1,95 @@ +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 1_NODE_SINGLE_LINK_TOPO | 2_NODE_SINGLE_LINK_TOPO +| ... | 3_NODE_SINGLE_LINK_TOPO +| ... | PERFTEST | HW_ENV | NDRPDR | NIC_Intel-X710 | TREX | ETH | N2N +| ... | IP4BASE | UDP | UDP_TPUT | TG_DRV_IGB_UIO | SCALE | HOSTS_1024 +| ... | ethip4udp-ip4base-h1024-p63-s64512-tput-tg +| +| Suite Setup | Setup suite topology interfaces with no DUT | performance_tg_nic +| Suite Teardown | Tear down suite | performance +| Test Setup | Start Test Export +| Test Teardown | Tear down test raw | performance +| +| Test Template | Local Template +| +| # TODO CSIT-1765: Unify suite Documentation. +| Documentation | **TPUT on lightweight UDP transactions with L1 cross connect** +| ... | +| ... | - **[Top] Network Topologies:** TG-TG 1-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L1 cross connect patch. +| ... | +| ... | - **[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 TG. \ +| ... | TG traffic profile contains client and server ASTF programs, \ +| ... | generating packets containing Ethernet header, IPv4 header, \ +| ... | UDP header and static payload. \ +| ... | MAC addresses are matching MAC addresses of the TG node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${nic_pfs}= | 2 +| ${osi_layer}= | L7 +| ${overhead}= | ${0} +# Scale settings +| ${n_hosts}= | ${1024} +| ${n_ports}= | ${63} +| ${transaction_scale}= | ${${n_hosts} * ${n_ports}} +| ${packets_per_transaction_and_direction}= | ${ASTF_N_DATA_FRAMES} +# Traffic profile: +| ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h-pps +| ${transaction_type}= | udp_pps +| ${disable_latency}= | ${True} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** TG runs L1 cross connect config. +| | ... | - **[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 +| | +| | [Arguments] | ${frame_size} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 100B--ethip4udp-ip4base-h1024-p63-s64512-tput-tg-ndrpdr +| | [Tags] | 100B +| | frame_size=${100} + +| 1518B--ethip4udp-ip4base-h1024-p63-s64512-tput-tg-ndrpdr +| | [Tags] | 1518B +| | frame_size=${1518} + +| 9000B--ethip4udp-ip4base-h1024-p63-s64512-tput-tg-ndrpdr +| | [Tags] | 9000B +| | frame_size=${9000} diff --git a/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-cps-tg-ndrpdr.robot b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-cps-tg-ndrpdr.robot new file mode 100644 index 0000000000..0d68ebf5fa --- /dev/null +++ b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-cps-tg-ndrpdr.robot @@ -0,0 +1,85 @@ +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 1_NODE_SINGLE_LINK_TOPO | 2_NODE_SINGLE_LINK_TOPO +| ... | 3_NODE_SINGLE_LINK_TOPO +| ... | PERFTEST | HW_ENV | NDRPDR | NIC_Intel-X710 | TREX | ETH | N2N +| ... | IP4BASE | UDP | UDP_CPS | TG_DRV_IGB_UIO | SCALE | HOSTS_262144 +| ... | ethip4udp-ip4base-h262144-p63-s16515072-cps-tg +| +| Suite Setup | Setup suite topology interfaces with no DUT | performance_tg_nic +| Suite Teardown | Tear down suite | performance +| Test Setup | Start Test Export +| Test Teardown | Tear down test raw | performance +| +| Test Template | Local Template +| +| Documentation | **CPS on empty UDP transactions with L1 cross connect** +| ... | +| ... | - **[Top] Network Topologies:** TG-TG 1-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L1 cross connect patch. +| ... | +| ... | - **[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 TG. \ +| ... | TG traffic profile contain L7 flows (${cps} bi-directional UDP flows) \ +| ... | with all packets containing Ethernet header, IPv4 header with UDP \ +| ... | header and static payload. \ +| ... | MAC addresses are matching MAC addresses of the TG node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${nic_pfs}= | 2 +| ${osi_layer}= | L7 +| ${overhead}= | ${0} +# Scale settings +| ${n_hosts}= | ${262144} +| ${n_ports}= | ${63} +| ${transaction_scale}= | ${${n_hosts} * ${n_ports}} +# Traffic profile +| ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h +| ${transaction_type}= | udp_cps +| ${disable_latency}= | ${True} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** TG runs L1 cross connect config. +| | ... | - **[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 +| | +| | [Arguments] | ${frame_size} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B--ethip4udp-ip4base-h262144-p63-s16515072-cps-tg-ndrpdr +| | [Tags] | 64B +| | frame_size=${64} diff --git a/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-tput-tg-ndrpdr.robot b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-tput-tg-ndrpdr.robot new file mode 100644 index 0000000000..dcf153b1ba --- /dev/null +++ b/tests/trex/perf/ip4/1n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-tput-tg-ndrpdr.robot @@ -0,0 +1,94 @@ +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 1_NODE_SINGLE_LINK_TOPO | 2_NODE_SINGLE_LINK_TOPO +| ... | 3_NODE_SINGLE_LINK_TOPO +| ... | PERFTEST | HW_ENV | NDRPDR | NIC_Intel-X710 | TREX | ETH | N2N +| ... | IP4BASE | UDP | UDP_TPUT | TG_DRV_IGB_UIO | SCALE | HOSTS_262144 +| ... | ethip4udp-ip4base-h262144-p63-s16515072-tput-tg +| +| Suite Setup | Setup suite topology interfaces with no DUT | performance_tg_nic +| Suite Teardown | Tear down suite | performance +| Test Setup | Start Test Export +| Test Teardown | Tear down test raw | performance +| +| Test Template | Local Template +| +| Documentation | **TPUT on lightweight UDP transactions with L1 cross connect** +| ... | +| ... | - **[Top] Network Topologies:** TG-TG 1-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L1 cross connect patch. +| ... | +| ... | - **[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 TG. \ +| ... | TG traffic profile contains client and server ASTF programs, \ +| ... | generating packets containing Ethernet header, IPv4 header, \ +| ... | TCP header and static payload. \ +| ... | MAC addresses are matching MAC addresses of the TG node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${nic_pfs}= | 2 +| ${osi_layer}= | L7 +| ${overhead}= | ${0} +# Scale settings +| ${n_hosts}= | ${262144} +| ${n_ports}= | ${63} +| ${transaction_scale}= | ${${n_hosts} * ${n_ports}} +| ${packets_per_transaction_and_direction}= | ${ASTF_N_DATA_FRAMES} +# Traffic profile: +| ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h-pps +| ${transaction_type}= | udp_pps +| ${disable_latency}= | ${True} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** TG runs L1 cross connect config. +| | ... | - **[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 +| | +| | [Arguments] | ${frame_size} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 100B--ethip4udp-ip4base-h262144-p63-s16515072-tput-tg-ndrpdr +| | [Tags] | 100B +| | frame_size=${100} + +| 1518B--ethip4udp-ip4base-h262144-p63-s16515072-tput-tg-ndrpdr +| | [Tags] | 1518B +| | frame_size=${1518} + +| 9000B--ethip4udp-ip4base-h262144-p63-s16515072-tput-tg-ndrpdr +| | [Tags] | 9000B +| | frame_size=${9000} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/regenerate_testcases.py b/tests/trex/perf/ip4/regenerate_testcases.py index ec754aa261..87521e662d 100755 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/regenerate_testcases.py +++ b/tests/trex/perf/ip4/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2021 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: diff --git a/tests/trex/perf/ip6/1n1l-10ge2p1x710-ethip6-ip6base-tg-ndrpdr.robot b/tests/trex/perf/ip6/1n1l-10ge2p1x710-ethip6-ip6base-tg-ndrpdr.robot new file mode 100644 index 0000000000..14b1744f77 --- /dev/null +++ b/tests/trex/perf/ip6/1n1l-10ge2p1x710-ethip6-ip6base-tg-ndrpdr.robot @@ -0,0 +1,92 @@ +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 1_NODE_SINGLE_LINK_TOPO | 2_NODE_SINGLE_LINK_TOPO +| ... | 3_NODE_SINGLE_LINK_TOPO +| ... | PERFTEST | HW_ENV | NDRPDR | NIC_Intel-X710 | TREX | ETH | N2N +| ... | BASE | IP6BASE | TG_DRV_IGB_UIO +| ... | ethip6-ip6base-tg +| +| Suite Setup | Setup suite topology interfaces with no DUT | performance_tg_nic +| Suite Teardown | Tear down suite | performance +| Test Setup | Start Test Export +| Test Teardown | Tear down test raw | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput for cross connected NICs with IPv6 \ +| ... | traffic profile.** +| ... | +| ... | - **[Top] Network Topologies:** TG-TG 1-node circular topology \ +| ... | with single link between. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for L1 cross connect patch. +| ... | +| ... | - **[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 TG. \ +| ... | TG traffic profile contains two L3 flow-groups (flow-group per \ +| ... | direction, 1M flows per flow-group) with all packets containing \ +| ... | Ethernet header, IPv6 header with static payload. \ +| ... | MAC addresses are matching MAC addresses of the TG node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${nic_pfs}= | 2 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** TG runs L1 cross connect config. +| | ... | - **[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 +| | +| | [Arguments] | ${frame_size} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 78B--ethip6-ip6base-tg-ndrpdr +| | [Tags] | 78B +| | frame_size=${78} + +| 1518B--ethip6-ip6base-tg-ndrpdr +| | [Tags] | 1518B +| | frame_size=${1518} + +| 9000B--ethip6-ip6base-tg-ndrpdr +| | [Tags] | 9000B +| | frame_size=${9000} + +| IMIX--ethip6-ip6base-tg-ndrpdr +| | [Tags] | IMIX +| | frame_size=IMIX_v4_1 diff --git a/tests/trex/perf/ip6/1n1l-10ge2p1x710-ethip6-ip6scale20k-tg-ndrpdr.robot b/tests/trex/perf/ip6/1n1l-10ge2p1x710-ethip6-ip6scale20k-tg-ndrpdr.robot new file mode 100644 index 0000000000..063a1d000c --- /dev/null +++ b/tests/trex/perf/ip6/1n1l-10ge2p1x710-ethip6-ip6scale20k-tg-ndrpdr.robot @@ -0,0 +1,93 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 1_NODE_SINGLE_LINK_TOPO | 2_NODE_SINGLE_LINK_TOPO +| ... | 3_NODE_SINGLE_LINK_TOPO +| ... | PERFTEST | HW_ENV | NDRPDR | NIC_Intel-X710 | TREX | ETH | N2N +| ... | SCALE | IP6SCALE20K | TG_DRV_IGB_UIO +| ... | ethip6-ip6scale20k-tg +| +| Suite Setup | Setup suite topology interfaces with no DUT | performance_tg_nic +| Suite Teardown | Tear down suite | performance +| Test Setup | Start Test Export +| Test Teardown | Tear down test raw | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput for cross connected NICs with IPv6 \ +| ... | traffic profile.** +| ... | +| ... | - **[Top] Network Topologies:** TG-TG 1-node circular topology \ +| ... | with single link between. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for L1 cross connect patch. +| ... | +| ... | - **[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 TG. \ +| ... | TG traffic profile contains two L3 flow-groups (flow-group per \ +| ... | direction, 10k flows per flow-group) with all packets containing \ +| ... | Ethernet header, IPv6 header with static payload. \ +| ... | MAC addresses are matching MAC addresses of the TG node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${nic_pfs}= | 2 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${10000} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** TG runs L1 cross connect config. +| | ... | - **[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 +| | +| | [Arguments] | ${frame_size} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 78B--ethip6-ip6scale20k-tg-ndrpdr +| | [Tags] | 78B +| | frame_size=${78} + +| 1518B--ethip6-ip6scale20k-tg-ndrpdr +| | [Tags] | 1518B +| | frame_size=${1518} + +| 9000B--ethip6-ip6scale20k-tg-ndrpdr +| | [Tags] | 9000B +| | frame_size=${9000} + +| IMIX--ethip6-ip6scale20k-tg-ndrpdr +| | [Tags] | IMIX +| | frame_size=IMIX_v4_1 diff --git a/tests/trex/perf/ip6/regenerate_testcases.py b/tests/trex/perf/ip6/regenerate_testcases.py new file mode 100755 index 0000000000..b1c6336c72 --- /dev/null +++ b/tests/trex/perf/ip6/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2021 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(u"*.robot", protocol=u"ip6") diff --git a/tests/trex/perf/l2/1n1l-10ge2p1x710-eth-l2bdscale1mmaclrn-tg-ndrpdr.robot b/tests/trex/perf/l2/1n1l-10ge2p1x710-eth-l2bdscale1mmaclrn-tg-ndrpdr.robot new file mode 100644 index 0000000000..86854c042e --- /dev/null +++ b/tests/trex/perf/l2/1n1l-10ge2p1x710-eth-l2bdscale1mmaclrn-tg-ndrpdr.robot @@ -0,0 +1,96 @@ +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 1_NODE_SINGLE_LINK_TOPO | 2_NODE_SINGLE_LINK_TOPO +| ... | 3_NODE_SINGLE_LINK_TOPO +| ... | PERFTEST | HW_ENV | NDRPDR | NIC_Intel-X710 | TREX | ETH | L2BDMACLRN +| ... | N2N | SCALE | L2BDSCALE | FIB_1M | TG_DRV_IGB_UIO +| ... | eth-l2bdscale1mmaclrn-tg +| +| Suite Setup | Setup suite topology interfaces with no DUT | performance_tg_nic +| Suite Teardown | Tear down suite | performance +| Test Setup | Start Test Export +| Test Teardown | Tear down test raw | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput for cross connected NICs with \ +| ... | IPv4 traffic profile.** +| ... | +| ... | - **[Top] Network Topologies:** TG-TG 1-node circular topology \ +| ... | with single link between. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L1 cross connect patch. +| ... | +| ... | - **[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 TG. \ +| ... | TG traffic profile contains two L3 flow-groups (flow-group per \ +| ... | direction, 500k flows per flow-group) with all packets containing \ +| ... | Ethernet header, IPv4 header with IP protocol=61 and static payload. \ +| ... | MAC addresses ranges are incremented as follows: +| ... | port01_src ca:fe:00:00:00:00 - port01_src ca:fe:00:07:a1:1f, +| ... | port01_dst fa:ce:00:00:00:00 - port01_dst fa:ce:00:07:a1:1f, +| ... | port02_src fa:ce:00:00:00:00 - port02_src fa:ce:00:07:a1:1f, +| ... | port02_dst ca:fe:00:00:00:00 - port02_dst ca:fe:00:07:a1:1f +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| ${nic_name}= | Intel-X710 +| ${nic_pfs}= | 2 +| ${osi_layer}= | L2 +| ${overhead}= | ${0} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-macsrc500kdst500k + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** TG runs L1 cross connect config. +| | ... | - **[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 +| | +| | [Arguments] | ${frame_size} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B--eth-l2bdscale1mmaclrn-tg-ndrpdr +| | [Tags] | 64B +| | frame_size=${64} + +| 1518B--eth-l2bdscale1mmaclrn-tg-ndrpdr +| | [Tags] | 1518B +| | frame_size=${1518} + +| 9000B--eth-l2bdscale1mmaclrn-tg-ndrpdr +| | [Tags] | 9000B +| | frame_size=${9000} + +| IMIX--eth-l2bdscale1mmaclrn-tg-ndrpdr +| | [Tags] | IMIX +| | frame_size=IMIX_v4_1 diff --git a/tests/trex/perf/l2/regenerate_testcases.py b/tests/trex/perf/l2/regenerate_testcases.py new file mode 100755 index 0000000000..87521e662d --- /dev/null +++ b/tests/trex/perf/l2/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2021 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(u"*.robot") diff --git a/tests/vpp/device/__init__.robot b/tests/vpp/device/__init__.robot index 1a669e67fd..e8cbd1ade4 100644 --- a/tests/vpp/device/__init__.robot +++ b/tests/vpp/device/__init__.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -20,16 +20,21 @@ | Library | resources.libraries.python.SetupFramework.CleanupFramework | Library | resources.libraries.python.CpuUtils | -| Suite Setup | Run Keywords | Setup Global Variables +| Suite Setup | Run Keywords | Start Suite Setup Export +| ... | AND | Setup Global Variables | ... | AND | Setup Framework | ${nodes} | ... | AND | Setup Corekeeper on All Nodes | ${nodes} | ... | AND | Install Vpp on All Duts | ${nodes} | ${packages_dir} -| ... | AND | Verify Vpp on All Duts | ${nodes} +| ... | AND | Init Vpp Startup Configuration on All Duts | ${nodes} +| ... | AND | Show Vpp Version on All Duts | ${nodes} | ... | AND | Get CPU Info from All Nodes | ${nodes} | ... | AND | Update All Interface Data on All Nodes | ${nodes} +| ... | AND | Finalize Suite Setup Export | -| Suite Teardown | Run Keywords | Disconnect All Papi Connections +| Suite Teardown | Run Keywords | Start Suite Teardown Export +| ... | AND | Disconnect All Papi Connections | ... | AND | Cleanup Framework | ${nodes} +| ... | AND | Finalize Suite Teardown Export *** Keywords *** | Setup Global Variables @@ -37,23 +42,19 @@ | | ... | Setup suite Variables. Variables are used across device testing. | | | | ... | _NOTE:_ This KW sets following suite variables: -| | ... | - pre_stats - Statistics actions before traffic. -| | ... | - post_stats - Statistics actions after traffic. -| | ... | - pre_run_stats - Statistics actions during traffic before timer. -| | ... | - post_run_stats - Statistics actions during traffic after timer. +| | ... | - stat_runtime - Statistics actions within traffic trial. +| | ... | - stat_pre_trial - Statistics actions before traffic trials. +| | ... | - stat_post_trial - Statistics actions after traffic trials. | | ... | - packages_dir - Path to directory where VPP packages are stored. | | -| | ${pre_stats}= | Create List -| | ... | vpp-clear-stats | vpp-enable-packettrace | vpp-enable-elog -| | ${post_stats}= | Create List -| | ... | vpp-show-stats | vpp-show-packettrace | vpp-show-elog -| | ${pre_run_stats}= | Create List -| | ... | vpp-clear-runtime -| | ${post_run_stats}= | Create List -| | ... | vpp-show-runtime | bash-perf-stat -| | Set Global Variable | ${pre_stats} -| | Set Global Variable | ${post_stats} -| | Set Global Variable | ${pre_run_stats} -| | Set Global Variable | ${post_run_stats} +| | ${stat_runtime}= | Create List +| | ... | vpp-runtime +| | ${stat_pre_trial}= | Create List +| | ... | vpp-clear-stats | vpp-enable-packettrace +| | ${stat_post_trial}= | Create List +| | ... | vpp-show-stats | vpp-show-packettrace +| | Set Global Variable | ${stat_runtime} +| | Set Global Variable | ${stat_pre_trial} +| | Set Global Variable | ${stat_post_trial} | | Set Global Variable | ${packages_dir} | /tmp/openvpp-testing/download_dir/ | | Set Global Variable | ${nodes} diff --git a/tests/vpp/device/container_memif/eth2p-ethipv4-ip4base-eth-2memif-1dcr-dev.robot b/tests/vpp/device/container_memif/2n1l-10ge2p1x710-ethip4-ip4base-eth-2memif-1dcr-scapy.robot index e1773b0351..29f6993095 100644 --- a/tests/vpp/device/container_memif/eth2p-ethipv4-ip4base-eth-2memif-1dcr-dev.robot +++ b/tests/vpp/device/container_memif/2n1l-10ge2p1x710-ethip4-ip4base-eth-2memif-1dcr-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,35 +15,40 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | BASE | MEMIF | DOCKER | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | BASE | MEMIF | DOCKER | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-ip4base-eth-2memif-1dcr +| ... | ethip4-ip4base-eth-2memif-1dcr | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | container +| Test Teardown | Tear down test | packet_trace | telemetry | container | | Test Template | Local Template | -| Documentation | *IPv4 routing test cases with memif interface* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with \ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing on both links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and \ -| ... | two static IPv4 /24 route entries. Container is connected to VPP via \ -| ... | Memif interface. Container is running same VPP version as running on \ -| ... | DUT. -| ... | *[Ver] TG verification:* Test IPv4 packets with IP protocol=61 are \ +| Documentation | **IPv4 routing test cases with memif interface** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing on both \ +| ... | links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and two static IPv4 /24 route entries. Container is connected to VPP \ +| ... | via Memif interface. Container is running same VPP version as running \ +| ... | on DUT. +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets with IP protocol=61 are \ | ... | sent in one direction by TG on links to DUT1 and via container; on \ | ... | receive TG verifies packets for correctness and their IPv4 src-addr, \ | ... | dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC791, RFC826, RFC792 +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC791, RFC826, RFC792 *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -53,12 +58,14 @@ # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain_functional +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv4 packet in both directions between two\ -| | ... | of its interfaces to be routed by DUT to and from docker; verify\ +| | ... | - **[Ver]** Make TG send IPv4 packet in both directions between two \ +| | ... | of its interfaces to be routed by DUT to and from docker; verify \ | | ... | all packets are received. | | | | ... | *Arguments:* @@ -84,6 +91,6 @@ | | ... | ${TG_pf2}[0] | ${DUT1_vf2_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 64B-ethipv4-ip4base-eth-2memif-1dcr-dev -| | [Tags] | 64B +| 64B-0c-ethip4-ip4base-eth-2memif-1dcr-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/container_memif/eth2p-ethipv4-l2bdbasemaclrn-eth-2memif-1dcr-dev.robot b/tests/vpp/device/container_memif/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-eth-2memif-1dcr-scapy.robot index 5fbf2d2d4c..ff33ab8475 100644 --- a/tests/vpp/device/container_memif/eth2p-ethipv4-l2bdbasemaclrn-eth-2memif-1dcr-dev.robot +++ b/tests/vpp/device/container_memif/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-eth-2memif-1dcr-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,35 +15,39 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-l2bdbasemaclrn-eth-2memif-1dcr +| ... | ethip4-l2bdbasemaclrn-eth-2memif-1dcr | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | container +| Test Teardown | Tear down test | packet_trace | telemetry | container | | Test Template | Local Template | -| Documentation | *L2 bridge-domain test cases with memif interface* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology \ +| Documentation | **L2 bridge-domain test cases with memif interface** +| ... | +| ... | - **[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.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ | ... | Both apply to all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-domain \ -| ... | switching. Container is connected to VPP via Memif interface. \ -| ... | Container is running same VPP version as running on DUT. -| ... | *[Ver] TG verification:* Test IPv4 packets with IP protocol=61\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 \ +| ... | bridge-domain switching. Container is connected to VPP via Memif \ +| ... | interface. Container is running same VPP version as running on DUT. +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets with IP protocol=61 \ | ... | are sent in both directions by TG on links to DUT1 and via container; \ -| ... | on receive TG verifies packets for correctness and their IPv4 \ +| ... | on receive TG verifies packets for correctness and their IPv4. \ | ... | src-addr, dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC792 +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC792 *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -53,12 +57,14 @@ # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain_functional +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv4 packets in both directions between two\ -| | ... | of its interfaces to be switched by DUT to and from docker; verify\ +| | ... | - **[Ver]** Make TG send IPv4 packets in both directions between two \ +| | ... | of its interfaces to be switched by DUT to and from docker; verify \ | | ... | all packets are received. | | | | ... | *Arguments:* @@ -83,6 +89,6 @@ | | ... | ${tg} | ${TG_pf1}[0] | ${TG_pf2}[0] *** Test Cases *** -| 64B-ethipv4-l2bdbasemaclrn-eth-2memif-1dcr-dev -| | [Tags] | 64B +| 64B-0c-ethip4-l2bdbasemaclrn-eth-2memif-1dcr-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/container_memif/eth2p-ethipv4-l2xcbase-eth-2memif-1dcr-dev.robot b/tests/vpp/device/container_memif/2n1l-10ge2p1x710-ethip4-l2xcbase-eth-2memif-1dcr-scapy.robot index ea46e7d2dd..75d8fa0ba4 100644 --- a/tests/vpp/device/container_memif/eth2p-ethipv4-l2xcbase-eth-2memif-1dcr-dev.robot +++ b/tests/vpp/device/container_memif/2n1l-10ge2p1x710-ethip4-l2xcbase-eth-2memif-1dcr-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,34 +15,38 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2XCFWD | BASE | MEMIF | DOCKER | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | L2XCFWD | BASE | MEMIF | DOCKER | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-l2xcbase-eth-2memif-1dcr +| ... | ethip4-l2xcbase-eth-2memif-1dcr | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | container +| Test Teardown | Tear down test | packet_trace | telemetry | container | | Test Template | Local Template | -| Documentation | *L2 cross-connect test cases with memif interface* -| -| ... | *[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 cross-connect \ -| ... | (L2XC) switching. Container is connected to VPP via Memif interface. \ -| ... | Container is running same VPP version as running on DUT. -| ... | *[Ver] TG verification:* Test IPv4 packets with IP protocol=61 \ +| Documentation | **L2 cross-connect test cases with memif interface** +| ... | +| ... | - **[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 cross-\ +| ... | connect (L2XC) switching. Container is connected to VPP via Memif \ +| ... | interface. Container is running same VPP version as running on DUT. +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets with IP protocol=61 \ | ... | are sent in both directions by TG on links to DUT1 and via container; \ -| ... | on receive TG verifies packets for correctness and their IPv4 \ +| ... | on receive TG verifies packets for correctness and their IPv4. \ | ... | src-addr, dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC792 +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC792 *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -52,12 +56,14 @@ # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain_functional +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv4 packets in both directions between two\ -| | ... | of its interfaces to be switched by DUT to and from docker; verify\ +| | ... | - **[Ver]** Make TG send IPv4 packets in both directions between two \ +| | ... | of its interfaces to be switched by DUT to and from docker; verify \ | | ... | all packets are received. | | | | ... | *Arguments:* @@ -81,6 +87,6 @@ | | ... | ${tg} | ${TG_pf1}[0] | ${TG_pf2}[0] *** Test Cases *** -| 64B-ethipv4-l2xcbase-eth-2memif-1dcr-dev -| | [Tags] | 64B +| 64B-0c-ethip4-l2xcbase-eth-2memif-1dcr-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/container_memif/eth2p-ethipv6-ip6base-eth-2memif-1dcr-dev.robot b/tests/vpp/device/container_memif/eth2p-ethipv6-ip6base-eth-2memif-1dcr-dev.robot deleted file mode 100644 index 56e1cddc6f..0000000000 --- a/tests/vpp/device/container_memif/eth2p-ethipv6-ip6base-eth-2memif-1dcr-dev.robot +++ /dev/null @@ -1,120 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP6FWD | BASE | MEMIF | DOCKER | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv6-ip6base-eth-2memif-1dcr -| -| Suite Setup | Setup suite topology interfaces | scapy -| Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | container -| -| Test Template | Local Template -| -| Documentation | *IPv4 routing test cases with memif interface* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with \ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing on \ -| ... | both links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and \ -| ... | two static IPv6 /64 route entries. Container is connected to VPP via \ -| ... | Memif interface. Container is running same VPP version as running on \ -| ... | DUT. -| ... | *[Ver] TG verification:* Test IPv6 packets are sent in one direction \ -| ... | by TG on links to DUT1 and via container; on receive TG verifies \ -| ... | packets for correctness and their IPv6 src-addr, dst-addr and \ -| ... | MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC791, RFC826, RFC792 - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | virtual -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${overhead}= | ${0} -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_functional - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Ver] Make TG send IPv6 packets in both directions between two\ -| | ... | of its interfaces to be routed by DUT to and from docker; verify\ -| | ... | all packets are received. -| | -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer. Type: integer -| | ... | - 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 Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs | with_trace=${True} -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Start containers for test | auto_scale=${False} | pinning=${False} -| | And Set up memif interfaces on DUT node -| | ... | ${dut1} | memif-DUT1_CNF | memif-DUT1_CNF -| | ... | memif_if1=memif_if1 | memif_if2=memif_if2 -| | ... | rxq=${rxq_count_int} | txq=${rxq_count_int} -| | # It takes some time for memifs to go up. -| | And Set interfaces in path up -| | And Add Fib Table | ${dut1} | 20 | ipv6=${True} -| | And Assign Interface To Fib Table -| | ... | ${dut1} | ${memif_if2} | 20 | ipv6=${True} -| | And Assign Interface To Fib Table -| | ... | ${dut1} | ${DUT1_${int}2}[0] | 20 | ipv6=${True} -| | And VPP Interface Set IP Address -| | ... | ${dut1} | ${DUT1_${int}1}[0] | 2001:1::1 | 64 -| | And VPP Interface Set IP Address -| | ... | ${dut1} | ${memif_if1} | 2001:2::1 | 64 -| | And VPP Interface Set IP Address -| | ... | ${dut1} | ${memif_if2} | 2001:2::2 | 64 -| | And VPP Interface Set IP Address -| | ... | ${dut1} | ${DUT1_${int}2}[0] | 2001:3::1 | 64 -| | ${memif_if2_key}= | Get interface by sw index | ${nodes['DUT1']} -| | ... | ${memif_if2} -| | ${memif_if2_mac}= | Get interface MAC | ${nodes['DUT1']} | ${memif_if2_key} -| | And Vpp Route Add -| | ... | ${dut1} | 2001:3::0 | 64 | gateway=2001:2::2 | interface=${memif_if1} -| | And Vpp Route Add -| | ... | ${dut1} | 2001:1::0 | 64 | gateway=2001:2::2 | interface=${memif_if2} -| | ... | vrf=20 -| | VPP Add IP Neighbor -| | ... | ${dut1} | ${memif_if1} | 2001:2::2 | ${memif_if2_mac} -| | VPP Add IP Neighbor -| | ... | ${dut1} | ${DUT1_${int}2}[0] | 2001:3::2 | ${TG_pf2_mac}[0] -| | Then Send packet and verify headers -| | ... | ${tg} | 2001:1::1 | 2001:3::2 -| | ... | ${TG_pf1}[0] | ${TG_pf1_mac}[0] | ${DUT1_vf1_mac}[0] -| | ... | ${TG_pf2}[0] | ${DUT1_vf2_mac}[0] | ${TG_pf2_mac}[0] - -*** Test Cases *** -| 78B-ethipv6-ip6base-eth-2memif-1dcr-dev -| | [Tags] | 78B -| | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/container_memif/regenerate_testcases.py b/tests/vpp/device/container_memif/regenerate_testcases.py new file mode 100755 index 0000000000..51070e4864 --- /dev/null +++ b/tests/vpp/device/container_memif/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot") diff --git a/tests/vpp/device/crypto/eth2p-ethip4ipsec11tnlsw-ip4base-int-aes128cbc-hmac512sha-dev.robot b/tests/vpp/device/crypto/ethip4/2n1l-10ge2p1x710-ethip4ipsec11tnlsw-ip4base-int-aes128cbc-hmac512sha-scapy.robot index 4338fa35b5..0d50fde74a 100644 --- a/tests/vpp/device/crypto/eth2p-ethip4ipsec11tnlsw-ip4base-int-aes128cbc-hmac512sha-dev.robot +++ b/tests/vpp/device/crypto/ethip4/2n1l-10ge2p1x710-ethip4ipsec11tnlsw-ip4base-int-aes128cbc-hmac512sha-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -15,33 +15,39 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | IP4FWD | IPSEC | IPSECSW | IPSECINT | IP4BASE +| ... | NIC_Intel-X710 | IP4FWD | IPSEC | IPSECSW | IPSECINT | IP4BASE | ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4ipsec11tnlsw-ip4base-int-aes128cbc-hmac512sha | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | ipsec_sa +| Test Teardown | Tear down test | packet_trace | telemetry | ipsec_sa | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode test suite.* -| -| ... | *[Top] Network topologies:* TG-DUT1 2-node topology with one link\ +| Documentation | **IPv4 IPsec tunnel mode test suite.** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1 2-node topology with one link \ | ... | between nodes. -| ... | *[Cfg] DUT configuration:* On DUT1 create loopback interface, configure\ -| ... | loopback an physical interface IPv4 addresses, static ARP record, route\ -| ... | and IPsec manual keyed connection in tunnel mode. -| ... | *[Ver] TG verification:* ETH-IP4 packet is sent from TG to DUT1. Packet\ -| ... | is received on TG from DUT1. -| ... | *[Ref] Applicable standard specifications:* RFC4303. +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 create loopback interface, \ +| ... | configure loopback an physical interface IPv4 addresses, static ARP \ +| ... | record, route and IPsec manual keyed connection in tunnel mode. +| ... | +| ... | - **[Ver] TG verification:** ETH-IP4 packet is sent from TG to DUT1. \ +| ... | Packet is received on TG from DUT1. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | crypto_openssl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -56,13 +62,15 @@ | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${11} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] On DUT1 configure IPsec tunnel interfaces with encryption\ -| | ... | algorithm AES_128_CBC and integrity algorithm HMAC_SHA_512 in tunnel\ -| | ... | mode. +| | ... | - **[Cfg]** On DUT1 configure IPsec tunnel interfaces with \ +| | ... | encryption algorithm AES_128_CBC and integrity algorithm \ +| | ... | HMAC_SHA_512 in tunnel mode. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -73,10 +81,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg} = | Crypto Alg AES CBC 128 -| | ${auth_alg} = | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} @@ -84,18 +88,18 @@ | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface | | And Initialize IPSec in 2-node circular topology -| | ${encr_key} | ${auth_key} | ${dut_spi} | ${tg_spi} = +| | ${encr_keys} | ${auth_keys} | ${dut_spi} | ${tg_spi} = | | ... | And VPP IPsec Create Tunnel Interfaces | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] | | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | return_keys=${True} | | Then Send IP Packet and verify ESP encapsulation in received packet | | ... | ${tg} | ${TG_pf1}[0] | ${TG_pf2}[0] | ${DUT1_${int}1_mac}[0] -| | ... | ${DUT1_${int}2_mac}[0] | ${encr_alg} | ${encr_key} | ${auth_alg} -| | ... | ${auth_key} | ${dut_spi} | ${tg_spi} | ${laddr_ip4} | ${raddr_ip4} +| | ... | ${DUT1_${int}2_mac}[0] | ${encr_alg} | ${encr_keys}[0] | ${auth_alg} +| | ... | ${auth_keys}[0] | ${dut_spi} | ${tg_spi} | ${laddr_ip4} | ${raddr_ip4} | | ... | ${tun_if1_ip4} | ${tun_if2_ip4} *** Test Cases *** -| 154B-ethip4ipsec11tnlsw-ip4base-int-aes-128-cbc-sha-512-256-dev -| | [Tags] | 154B -| | frame_size=${154} | phy_cores=${0} +| 64B-0c-ethip4ipsec11tnlsw-ip4base-int-aes128cbc-hmac512sha-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/crypto/eth2p-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-dev.robot b/tests/vpp/device/crypto/ethip4/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-scapy.robot index f8ab71565b..621dcec74c 100644 --- a/tests/vpp/device/crypto/eth2p-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-dev.robot +++ b/tests/vpp/device/crypto/ethip4/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -15,33 +15,39 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | IP4FWD | IPSEC | IPSECSW | IPSECINT | IP4BASE +| ... | NIC_Intel-X710 | IP4FWD | IPSEC | IPSECSW | IPSECINT | IP4BASE | ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | ipsec_sa +| Test Teardown | Tear down test | packet_trace | telemetry | ipsec_sa | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode test suite.* -| -| ... | *[Top] Network topologies:* TG-DUT1 2-node topology with one link\ +| Documentation | **IPv4 IPsec tunnel mode test suite.** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1 2-node topology with one link \ | ... | between nodes. -| ... | *[Cfg] DUT configuration:* On DUT1 create loopback interface, configure\ -| ... | loopback an physical interface IPv4 addresses, static ARP record, route\ -| ... | and IPsec manual keyed connection in tunnel mode. -| ... | *[Ver] TG verification:* ETH-IP4 packet is sent from TG to DUT1. Packet\ -| ... | is received on TG from DUT1. -| ... | *[Ref] Applicable standard specifications:* RFC4303. +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 create loopback interface, \ +| ... | configure loopback an physical interface IPv4 addresses, static ARP \ +| ... | irecord, route and IPsec manual keyed connection in tunnel mode. +| ... | +| ... | - **[Ver] TG verification:** ETH-IP4 packet is sent from TG to DUT1. \ +| ... | Packet is received on TG from DUT1. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | crypto_openssl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -56,13 +62,15 @@ | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] On DUT1 configure IPsec tunnel interface with encryption\ -| | ... | algorithm AES_128_CBC and integrity algorithm HMAC_SHA_512 in tunnel\ -| | ... | mode. +| | ... | - **[Cfg]** On DUT1 configure IPsec tunnel interface with encryption \ +| | ... | algorithm AES_128_CBC and integrity algorithm HMAC_SHA_512 in \ +| | ... | tunnel mode. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -73,10 +81,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg} = | Crypto Alg AES CBC 128 -| | ${auth_alg} = | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} @@ -84,19 +88,18 @@ | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface | | And Initialize IPSec in 2-node circular topology -| | ${encr_key} | ${auth_key} | ${dut_spi} | ${tg_spi} = +| | ${encr_keys} | ${auth_keys} | ${dut_spi} | ${tg_spi} = | | ... | And VPP IPsec Create Tunnel Interfaces | | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] | | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | return_keys=${True} | | Then Send IP Packet and verify ESP encapsulation in received packet | | ... | ${tg} | ${TG_pf1}[0] | ${TG_pf2}[0] | ${DUT1_${int}1_mac}[0] -| | ... | ${DUT1_${int}2_mac}[0] | ${encr_alg} | ${encr_key} | ${auth_alg} -| | ... | ${auth_key} | ${dut_spi} | ${tg_spi} | ${laddr_ip4} | ${raddr_ip4} +| | ... | ${DUT1_${int}2_mac}[0] | ${encr_alg} | ${encr_keys}[0] | ${auth_alg} +| | ... | ${auth_keys}[0] | ${dut_spi} | ${tg_spi} | ${laddr_ip4} | ${raddr_ip4} | | ... | ${tun_if1_ip4} | ${tun_if2_ip4} -| | And Show Ipsec Security Association | ${dut1} *** Test Cases *** -| 154B-ethip4ipsec1tnlsw-ip4base-int-aes-128-cbc-sha-512-256-dev -| | [Tags] | 154B -| | frame_size=${154} | phy_cores=${0} +| 64B-0c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/crypto/eth2p-ethip4ipsec1tnlsw-ip4base-policy-aes-128-cbc-sha-512-256-dev.robot b/tests/vpp/device/crypto/ethip4/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-scapy.robot index ccce5f0511..bac48c58c8 100644 --- a/tests/vpp/device/crypto/eth2p-ethip4ipsec1tnlsw-ip4base-policy-aes-128-cbc-sha-512-256-dev.robot +++ b/tests/vpp/device/crypto/ethip4/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -15,33 +15,39 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | IP4FWD | IPSEC | IPSECSW | IPSECTUN | IP4BASE +| ... | NIC_Intel-X710 | IP4FWD | IPSEC | IPSECSW | IPSECTUN | IP4BASE | ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlsw-ip4base-policy-aes-128-cbc-sha-512-256 +| ... | ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | ipsec_sa +| Test Teardown | Tear down test | packet_trace | telemetry | ipsec_sa | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode test suite.* -| -| ... | *[Top] Network topologies:* TG-DUT1 2-node topology with one link\ +| Documentation | **IPv4 IPsec tunnel mode test suite.** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1 2-node topology with one link \ | ... | between nodes. -| ... | *[Cfg] DUT configuration:* On DUT1 create loopback interface, configure\ -| ... | loopback an physical interface IPv4 addresses, static ARP record, route\ -| ... | and IPsec manual keyed connection in tunnel mode. -| ... | *[Ver] TG verification:* ESP packet is sent from TG to DUT1. ESP packet\ -| ... | is received on TG from DUT1. -| ... | *[Ref] Applicable standard specifications:* RFC4303. +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 create loopback interface, \ +| ... | configure loopback an physical interface IPv4 addresses, static ARP \ +| ... | record, route and IPsec manual keyed connection in tunnel mode. +| ... | +| ... | - **[Ver] TG verification:** ESP packet is sent from TG to DUT1. ESP \ +| ... | packet is received on TG from DUT1. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | crypto_openssl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -50,20 +56,21 @@ | ${overhead}= | ${54} | ${tg_spi}= | ${1000} | ${dut_spi}= | ${1001} -| ${ESP_PROTO}= | ${50} | ${tg_if1_ip4}= | 192.168.100.2 | ${tg_if2_ip4}= | 192.168.4.4 | ${dut_if1_ip4}= | 192.168.100.3 | ${dut_if2_ip4}= | 192.168.4.3 | ${tg_host_ip4}= | 192.168.3.3 | ${ip4_plen}= | ${24} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] On DUT1 configure IPsec manual keyed connection with encryption\ -| | ... | algorithm AES_128_CBC and integrity algorithm HMAC_SHA_512 in tunnel\ -| | ... | mode. +| | ... | - **[Cfg]** On DUT1 configure IPsec manual keyed connection with \ +| | ... | encryption algorithm AES_128_CBC and integrity algorithm \ +| | ... | HMAC_SHA_512 in tunnel mode. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -74,10 +81,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} @@ -98,6 +101,6 @@ | | ... | ${dut_tun_ip} *** Test Cases *** -| 110B-ethip4ipsec1tnlsw-ip4base-policy-aes-128-cbc-sha-512-256-dev -| | [Tags] | 110B -| | frame_size=${110} | phy_cores=${0} +| 64B-0c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/crypto/eth2p-ethip4ipsec1tptsw-ip4base-policy-aes-128-cbc-sha-512-256-dev.robot b/tests/vpp/device/crypto/ethip4/2n1l-10ge2p1x710-ethip4ipsec1tptsw-ip4base-policy-aes128cbc-hmac512sha-scapy.robot index a5961ebb63..285154c87f 100644 --- a/tests/vpp/device/crypto/eth2p-ethip4ipsec1tptsw-ip4base-policy-aes-128-cbc-sha-512-256-dev.robot +++ b/tests/vpp/device/crypto/ethip4/2n1l-10ge2p1x710-ethip4ipsec1tptsw-ip4base-policy-aes128cbc-hmac512sha-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -15,33 +15,39 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | IP4FWD | IPSEC | IPSECSW | IPSECTPT | IP4BASE +| ... | NIC_Intel-X710 | IP4FWD | IPSEC | IPSECSW | IPSECTPT | IP4BASE | ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tptsw-ip4base-policy-aes-128-cbc-sha-512-256 +| ... | ethip4ipsec1tptsw-ip4base-policy-aes128cbc-hmac512sha | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | ipsec_sa +| Test Teardown | Tear down test | packet_trace | telemetry | ipsec_sa | | Test Template | Local Template | -| Documentation | *IPv4 IPsec transport mode test suite.* -| -| ... | *[Top] Network topologies:* TG-DUT1 2-node topology with one link\ +| Documentation | **IPv4 IPsec transport mode test suite.** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1 2-node topology with one link \ | ... | between nodes. -| ... | *[Cfg] DUT configuration:* On DUT1 create loopback interface, configure\ -| ... | loopback an physical interface IPv4 addresses, static ARP record, route\ -| ... | and IPsec manual keyed connection in transport mode. -| ... | *[Ver] TG verification:* ESP packet is sent from TG to DUT1. ESP packet\ -| ... | is received on TG from DUT1. -| ... | *[Ref] Applicable standard specifications:* RFC4303. +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 create loopback interface, \ +| ... | configure loopback an physical interface IPv4 addresses, static ARP \ +| ... | record, route and IPsec manual keyed connection in transport mode. +| ... | +| ... | - **[Ver] TG verification:** ESP packet is sent from TG to DUT1. ESP \ +| ... | packet is received on TG from DUT1. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | crypto_openssl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -50,20 +56,21 @@ | ${overhead}= | ${54} | ${tg_spi}= | ${1000} | ${dut_spi}= | ${1001} -| ${ESP_PROTO}= | ${50} | ${tg_if1_ip4}= | 192.168.100.2 | ${tg_if2_ip4}= | 192.168.4.4 | ${dut_if1_ip4}= | 192.168.100.3 | ${dut_if2_ip4}= | 192.168.4.3 | ${tg_host_ip4}= | 192.168.3.3 | ${ip4_plen}= | ${24} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] On DUT1 configure IPsec manual keyed connection with encryption\ -| | ... | algorithm AES_128_CBC and integrity algorithm HMAC_SHA_512 in\ -| | ... | transport mode. +| | ... | - **[Cfg]** On DUT1 configure IPsec manual keyed connection with \ +| | ... | encryption algorithm AES_128_CBC and integrity algorithm \ +| | ... | HMAC_SHA_512 in transport mode. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -74,10 +81,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} @@ -96,6 +99,6 @@ | | ... | ${dut_spi} | ${tg_src_ip} | ${tg_dst_ip} *** Test Cases *** -| 110B-ethip4ipsec1tptsw-ip4base-policy-aes-128-cbc-sha-512-256-dev -| | [Tags] | 110B -| | frame_size=${110} | phy_cores=${0} +| 64B-0c-ethip4ipsec1tptsw-ip4base-policy-aes128cbc-hmac512sha-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/crypto/ethip4/regenerate_testcases.py b/tests/vpp/device/crypto/ethip4/regenerate_testcases.py new file mode 100755 index 0000000000..51070e4864 --- /dev/null +++ b/tests/vpp/device/crypto/ethip4/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot") diff --git a/tests/vpp/device/crypto/eth2p-ethip6ipsec1tnlsw-ip6base-policy-aes-128-cbc-sha-512-256-dev.robot b/tests/vpp/device/crypto/ethip6/2n1l-10ge2p1x710-ethip6ipsec1tnlsw-ip6base-policy-aes128cbc-hmac512sha-scapy.robot index 08d867fe55..0b20f05a00 100644 --- a/tests/vpp/device/crypto/eth2p-ethip6ipsec1tnlsw-ip6base-policy-aes-128-cbc-sha-512-256-dev.robot +++ b/tests/vpp/device/crypto/ethip6/2n1l-10ge2p1x710-ethip6ipsec1tnlsw-ip6base-policy-aes128cbc-hmac512sha-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -15,33 +15,39 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | IP6FWD | IPSEC | IPSECSW | IPSECTUN | IP6BASE +| ... | NIC_Intel-X710 | IP6FWD | IPSEC | IPSECSW | IPSECTUN | IP6BASE | ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip6ipsec1tnlsw-ip6base-policy-aes-128-cbc-sha-512-256 +| ... | ethip6ipsec1tnlsw-ip6base-policy-aes128cbc-hmac512sha | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | ipsec_sa +| Test Teardown | Tear down test | packet_trace | telemetry | ipsec_sa | | Test Template | Local Template | -| Documentation | *IPv6 IPsec tunnel mode test suite.* -| -| ... | *[Top] Network topologies:* TG-DUT1 2-node topology with one link\ +| Documentation | **IPv6 IPsec tunnel mode test suite.** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1 2-node topology with one link \ | ... | between nodes. -| ... | *[Cfg] DUT configuration:* On DUT1 create loopback interface, configure -| ... | loopback an physical interface IPv6 addresses, static ARP record, route -| ... | and IPsec manual keyed connection in tunnel mode. -| ... | *[Ver] TG verification:* ESP packet is sent from TG to DUT1. ESP packet -| ... | is received on TG from DUT1. -| ... | *[Ref] Applicable standard specifications:* RFC4303. +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 create loopback interface, \ +| ... | configure loopback an physical interface IPv6 addresses, static ARP \ +| ... | record, route and IPsec manual keyed connection in tunnel mode. +| ... | +| ... | - **[Ver] TG verification:** ESP packet is sent from TG to DUT1. ESP \ +| ... | packet is received on TG from DUT1. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | crypto_openssl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -50,7 +56,6 @@ | ${overhead}= | ${54} | ${tg_spi}= | ${1000} | ${dut_spi}= | ${1001} -| ${ESP_PROTO}= | ${50} | ${tg_if1_ip6}= | 3ffe:5f::1 | ${tg_if2_ip6}= | 3ffe:60::4 | ${dut_if1_ip6}= | 3ffe:5f::2 @@ -58,13 +63,15 @@ | ${tg_host_ip6}= | 3ffe:61::3 | ${ip6_plen}= | ${64} | ${ip6_plen_rt}= | ${128} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] On DUT1 configure IPsec manual keyed connection with encryption\ -| | ... | algorithm AES_128_CBC and integrity algorithm HMAC_SHA_512 in tunnel\ -| | ... | mode. +| | ... | - **[Cfg]** On DUT1 configure IPsec manual keyed connection with \ +| | ... | encryption algorithm AES_128_CBC and integrity algorithm \ +| | ... | HMAC_SHA_512 in tunnel mode. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -75,10 +82,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} @@ -99,6 +102,6 @@ | | ... | ${dut_tun_ip} *** Test Cases *** -| 124B-ethip6ipsec1tnlsw-ip6base-policy-aes-128-cbc-sha-512-256-dev -| | [Tags] | 124B -| | frame_size=${124} | phy_cores=${0} +| 78B-0c-ethip6ipsec1tnlsw-ip6base-policy-aes128cbc-hmac512sha-scapy +| | [Tags] | 78B | 0C +| | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/crypto/eth2p-ethip6ipsec1tptsw-ip6base-policy-aes-128-cbc-sha-512-256-dev.robot b/tests/vpp/device/crypto/ethip6/2n1l-10ge2p1x710-ethip6ipsec1tptsw-ip6base-policy-aes128cbc-hmac512sha-scapy.robot index 9dba04e816..93c8142a1b 100644 --- a/tests/vpp/device/crypto/eth2p-ethip6ipsec1tptsw-ip6base-policy-aes-128-cbc-sha-512-256-dev.robot +++ b/tests/vpp/device/crypto/ethip6/2n1l-10ge2p1x710-ethip6ipsec1tptsw-ip6base-policy-aes128cbc-hmac512sha-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -15,33 +15,39 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | IP6FWD | IPSEC | IPSECSW | IPSECTPT | IP6BASE +| ... | NIC_Intel-X710 | IP6FWD | IPSEC | IPSECSW | IPSECTPT | IP6BASE | ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip6ipsec1tptsw-ip6base-policy-aes-128-cbc-sha-512-256 +| ... | ethip6ipsec1tptsw-ip6base-policy-aes128cbc-hmac512sha | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | ipsec_sa +| Test Teardown | Tear down test | packet_trace | telemetry | ipsec_sa | | Test Template | Local Template | -| Documentation | *IPv6 IPsec transport mode test suite.* -| -| ... | *[Top] Network topologies:* TG-DUT1 2-node topology with one link\ +| Documentation | **IPv6 IPsec transport mode test suite.** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1 2-node topology with one link \ | ... | between nodes. -| ... | *[Cfg] DUT configuration:* On DUT1 create loopback interface, configure -| ... | loopback an physical interface IPv6 addresses, static ARP record, route -| ... | and IPsec manual keyed connection in transport mode. -| ... | *[Ver] TG verification:* ESP packet is sent from TG to DUT1. ESP packet -| ... | is received on TG from DUT1. -| ... | *[Ref] Applicable standard specifications:* RFC4303. +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 create loopback interface, \ +| ... | configure loopback an physical interface IPv6 addresses, static ARP \ +| ... | record, route and IPsec manual keyed connection in transport mode. +| ... | +| ... | - **[Ver] TG verification:** ESP packet is sent from TG to DUT1. ESP \ +| ... | packet is received on TG from DUT1. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | crypto_openssl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -50,7 +56,6 @@ | ${overhead}= | ${58} | ${tg_spi}= | ${1000} | ${dut_spi}= | ${1001} -| ${ESP_PROTO}= | ${50} | ${tg_if1_ip6}= | 3ffe:5f::1 | ${tg_if2_ip6}= | 3ffe:60::4 | ${dut_if1_ip6}= | 3ffe:5f::2 @@ -58,13 +63,15 @@ | ${tg_host_ip6}= | 3ffe:61::3 | ${ip6_plen}= | ${64} | ${ip6_plen_rt}= | ${128} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] On DUT1 configure IPsec manual keyed connection with encryption\ -| | ... | algorithm AES_128_CBC and integrity algorithm HMAC_SHA_512 in\ -| | ... | transport mode. +| | ... | - **[Cfg]** On DUT1 configure IPsec manual keyed connection with \ +| | ... | encryption algorithm AES_128_CBC and integrity algorithm \ +| | ... | HMAC_SHA_512 in transport mode. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -75,10 +82,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} @@ -98,6 +101,6 @@ | | ... | ${dut_spi} | ${tg_src_ip} | ${tg_dst_ip} *** Test Cases *** -| 124B-ethip6ipsec1tptsw-ip6base-policy-aes-128-cbc-sha-512-256-dev -| | [Tags] | 124B -| | frame_size=${124} | phy_cores=${0} +| 78B-0c-ethip6ipsec1tptsw-ip6base-policy-aes128cbc-hmac512sha-scapy +| | [Tags] | 78B | 0C +| | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/crypto/ethip6/regenerate_testcases.py b/tests/vpp/device/crypto/ethip6/regenerate_testcases.py new file mode 100755 index 0000000000..2cae24e087 --- /dev/null +++ b/tests/vpp/device/crypto/ethip6/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot", protocol=u"ip6") diff --git a/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-gtpu-scapy.robot b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-gtpu-scapy.robot new file mode 100644 index 0000000000..ac9d15efb9 --- /dev/null +++ b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-gtpu-scapy.robot @@ -0,0 +1,127 @@ +# Copyright (c) 2022 Intel 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY +| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | GTPU | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-flow-ip4-gtpu +| +| Suite Setup | Setup suite topology interfaces | scapy +| Test Setup | Setup test +| Test Teardown | Tear down test | packet_trace | telemetry +| +| Test Template | Local Template +| +| Documentation | **IP4_GTPU flow test cases** +| ... +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1 2-node topology with one link \ +| ... | between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IP4-GTPU. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT is configured with IP4_GTPU flow. +| ... | +| ... | - **[Ver] TG verification:** Verify if the flow action is correct. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${src_ip}= | 1.1.1.1 +| ${dst_ip}= | 2.2.2.2 +| ${teid}= | ${12345} +| ${rxq}= | ${4} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Ver]** Make TG send IP4-GTPU packet routed over DUT1 \ +| | ... | interfaces. Make VPP verify flow packet is correct. +| | +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer. Type: integer +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${rxq} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs | with_trace=${True} +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 Gtpu Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | teid=${teid} +| | ... | action=redirect-to-queue | value=${${rxq}-1} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=GTPU +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | value=${teid} +| | ... | action=redirect-to-queue | action_value=${${rxq}-1} +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 Gtpu Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | teid=${teid} +| | ... | action=drop +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=GTPU +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | value=${teid} +| | ... | action=drop +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 Gtpu Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | teid=${teid} +| | ... | action=mark | value=${7} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=GTPU +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | value=${teid} +| | ... | action=mark +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} + +*** Test Cases *** +| 64B-0c-ethip4-flow-ip4-gtpu-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-ipsec-ah-scapy.robot b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-ipsec-ah-scapy.robot new file mode 100644 index 0000000000..1856684de1 --- /dev/null +++ b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-ipsec-ah-scapy.robot @@ -0,0 +1,127 @@ +# Copyright (c) 2022 Intel 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY +| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | IPSEC | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-flow-ip4-ipsec-ah +| +| Suite Setup | Setup suite topology interfaces | scapy +| Test Setup | Setup test +| Test Teardown | Tear down test | packet_trace | telemetry +| +| Test Template | Local Template +| +| Documentation | **IP4_IPSEC flow test cases** +| ... +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1 2-node topology with one link \ +| ... | between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IP4-AH. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT is configured with IP4_IPSEC flow. +| ... | +| ... | - **[Ver] TG verification:** Verify if the flow action is correct. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${src_ip}= | 1.1.1.1 +| ${dst_ip}= | 2.2.2.2 +| ${spi}= | ${12345} +| ${rxq}= | ${4} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Ver]** Make TG send IP4-IPSEC packet routed over DUT1 \ +| | ... | interfaces. Make VPP verify flow packet is correct. +| | +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer. Type: integer +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${rxq} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs | with_trace=${True} +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create IP4 Ipsec Flow | ${dut1} +| | ... | proto=AH | spi=${spi} +| | ... | action=redirect-to-queue | value=${${rxq}-1} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=AH +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | value=${spi} +| | ... | action=redirect-to-queue | action_value=${${rxq}-1} +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create IP4 Ipsec Flow | ${dut1} +| | ... | proto=AH | spi=${spi} +| | ... | action=drop +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=AH +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | value=${spi} +| | ... | action=drop +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create IP4 Ipsec Flow | ${dut1} +| | ... | proto=AH | spi=${spi} +| | ... | action=mark | value=${7} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=AH +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | value=${spi} +| | ... | action=mark +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} + +*** Test Cases *** +| 64B-0c-ethip4-flow-ip4-ipsec-ah-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-ipsec-esp-scapy.robot b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-ipsec-esp-scapy.robot new file mode 100644 index 0000000000..313b084377 --- /dev/null +++ b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-ipsec-esp-scapy.robot @@ -0,0 +1,127 @@ +# Copyright (c) 2022 Intel 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY +| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | IPSEC | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-flow-ip4-ipsec-esp +| +| Suite Setup | Setup suite topology interfaces | scapy +| Test Setup | Setup test +| Test Teardown | Tear down test | packet_trace | telemetry +| +| Test Template | Local Template +| +| Documentation | **IP4_IPSEC flow test cases** +| ... +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1 2-node topology with one link \ +| ... | between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IP4-ESP. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT is configured with IP4_IPSEC flow. +| ... | +| ... | - **[Ver] TG verification:** Verify if the flow action is correct. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${src_ip}= | 1.1.1.1 +| ${dst_ip}= | 2.2.2.2 +| ${spi}= | ${12345} +| ${rxq}= | ${4} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Ver]** Make TG send IP4-IPSEC packet routed over DUT1 \ +| | ... | interfaces. Make VPP verify flow packet is correct. +| | +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer. Type: integer +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${rxq} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs | with_trace=${True} +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create IP4 Ipsec Flow | ${dut1} +| | ... | proto=ESP | spi=${spi} +| | ... | action=redirect-to-queue | value=${${rxq}-1} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=ESP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | value=${spi} +| | ... | action=redirect-to-queue | action_value=${${rxq}-1} +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create IP4 Ipsec Flow | ${dut1} +| | ... | proto=ESP | spi=${spi} +| | ... | action=drop +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=ESP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | value=${spi} +| | ... | action=drop +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create IP4 Ipsec Flow | ${dut1} +| | ... | proto=ESP | spi=${spi} +| | ... | action=mark | value=${7} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=ESP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | value=${spi} +| | ... | action=mark +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} + +*** Test Cases *** +| 64B-0c-ethip4-flow-ip4-ipsec-esp-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-l2tpv3oip-scapy.robot b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-l2tpv3oip-scapy.robot new file mode 100644 index 0000000000..c545ce2d09 --- /dev/null +++ b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-l2tpv3oip-scapy.robot @@ -0,0 +1,128 @@ +# Copyright (c) 2022 Intel 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY +| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | L2TPV3 | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-flow-ip4-l2tpv3oip +| +| Suite Setup | Setup suite topology interfaces | scapy +| Test Setup | Setup test +| Test Teardown | Tear down test | packet_trace | telemetry +| +| Test Template | Local Template +| +| Documentation | **IP4_L2TPV3OIP flow test cases** +| ... +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1 2-node topology with one link \ +| ... | between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IP4-L2TPV3. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT is configured with IP4_L2TPV3OIP \ +| ... | flow. +| ... | +| ... | - **[Ver] TG verification:** Verify if the flow action is correct. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${src_ip}= | 1.1.1.1 +| ${dst_ip}= | 2.2.2.2 +| ${session_id}= | ${12345} +| ${rxq}= | ${4} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Ver]** Make TG send IP4-L2TPV3OIP packet routed over DUT1 \ +| | ... | interfaces. Make VPP verify flow packet is correct. +| | +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer. Type: integer +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${rxq} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs | with_trace=${True} +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create IP4 L2tp Flow | ${dut1} +| | ... | session_id=${session_id} +| | ... | action=redirect-to-queue | value=${${rxq}-1} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=L2TPV3 +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | value=${session_id} +| | ... | action=redirect-to-queue | action_value=${${rxq}-1} +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create IP4 L2tp Flow | ${dut1} +| | ... | session_id=${session_id} +| | ... | action=drop +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=L2TPV3 +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | value=${session_id} +| | ... | action=drop +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create IP4 L2tp Flow | ${dut1} +| | ... | session_id=${session_id} +| | ... | action=mark | value=${7} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=L2TPV3 +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | value=${session_id} +| | ... | action=mark +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} + +*** Test Cases *** +| 64B-0c-ethip4-flow-ip4-l2tpv3oip-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-ntuple-tcp-scapy.robot b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-ntuple-tcp-scapy.robot new file mode 100644 index 0000000000..a2b0774d1e --- /dev/null +++ b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-ntuple-tcp-scapy.robot @@ -0,0 +1,128 @@ +# Copyright (c) 2022 Intel 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY +| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | NTUPLE | TCP | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-flow-ip4-ntuple-tcp +| +| Suite Setup | Setup suite topology interfaces | scapy +| Test Setup | Setup test +| Test Teardown | Tear down test | packet_trace | telemetry +| +| Test Template | Local Template +| +| Documentation | **IP4_N_TUPLE flow test cases** +| ... +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1 2-node topology with one link \ +| ... | between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IP4-TCP. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT is configured with IP4_N_TUPLE flow. +| ... | +| ... | - **[Ver] TG verification:** Verify if the flow action is correct. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${src_ip}= | 1.1.1.1 +| ${dst_ip}= | 2.2.2.2 +| ${src_port}= | ${100} +| ${dst_port}= | ${200} +| ${rxq}= | ${4} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Ver]** Make TG send IP4 packet routed over DUT1 interfaces. \ +| | ... | Make VPP verify flow packet is correct. +| | +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer. Type: integer +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${rxq} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs | with_trace=${True} +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 N Tuple Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | ${src_port} | ${dst_port} +| | ... | proto=TCP | action=redirect-to-queue | value=${${rxq}-1} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=TCP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | src_port=${src_port} | dst_port=${dst_port} +| | ... | action=redirect-to-queue | action_value=${${rxq}-1} +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 N Tuple Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | ${src_port} | ${dst_port} +| | ... | proto=TCP | action=drop +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=TCP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | src_port=${src_port} | dst_port=${dst_port} +| | ... | action=drop +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 N Tuple Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | ${src_port} | ${dst_port} +| | ... | proto=TCP | action=mark | value=${7} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=TCP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | src_port=${src_port} | dst_port=${dst_port} +| | ... | action=mark +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} + +*** Test Cases *** +| 64B-0c-ethip4-flow-ip4-ntuple-tcp-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-ntuple-udp-scapy.robot b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-ntuple-udp-scapy.robot new file mode 100644 index 0000000000..27bfc98ed5 --- /dev/null +++ b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-ntuple-udp-scapy.robot @@ -0,0 +1,128 @@ +# Copyright (c) 2022 Intel 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY +| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | NTUPLE | UDP | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-flow-ip4-ntuple-udp +| +| Suite Setup | Setup suite topology interfaces | scapy +| Test Setup | Setup test +| Test Teardown | Tear down test | packet_trace | telemetry +| +| Test Template | Local Template +| +| Documentation | **IP4_N_TUPLE flow test cases** +| ... +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1 2-node topology with one link \ +| ... | between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IP4-UDP. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT is configured with IP4_N_TUPLE flow. +| ... | +| ... | - **[Ver] TG verification:** Verify if the flow action is correct. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${src_ip}= | 1.1.1.1 +| ${dst_ip}= | 2.2.2.2 +| ${src_port}= | ${100} +| ${dst_port}= | ${200} +| ${rxq}= | ${4} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Ver]** Make TG send IP4 packet routed over DUT1 interfaces. \ +| | ... | Make VPP verify flow packet is correct. +| | +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer. Type: integer +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${rxq} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs | with_trace=${True} +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 N Tuple Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | ${src_port} | ${dst_port} +| | ... | proto=UDP | action=redirect-to-queue | value=${${rxq}-1} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=UDP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | src_port=${src_port} | dst_port=${dst_port} +| | ... | action=redirect-to-queue | action_value=${${rxq}-1} +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 N Tuple Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | ${src_port} | ${dst_port} +| | ... | proto=UDP | action=drop +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=UDP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | src_port=${src_port} | dst_port=${dst_port} +| | ... | action=drop +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 N Tuple Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | ${src_port} | ${dst_port} +| | ... | proto=UDP | action=mark | value=${7} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=UDP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | src_port=${src_port} | dst_port=${dst_port} +| | ... | action=mark +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} + +*** Test Cases *** +| 64B-0c-ethip4-flow-ip4-ntuple-udp-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-tcp-scapy.robot b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-tcp-scapy.robot new file mode 100644 index 0000000000..8abab2a324 --- /dev/null +++ b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-tcp-scapy.robot @@ -0,0 +1,123 @@ +# Copyright (c) 2022 Intel 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY +| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | TCP | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-flow-ip4-tcp +| +| Suite Setup | Setup suite topology interfaces | scapy +| Test Setup | Setup test +| Test Teardown | Tear down test | packet_trace | telemetry +| +| Test Template | Local Template +| +| Documentation | **IP4 flow test cases** +| ... +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1 2-node topology with one link \ +| ... | between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IP4-TCP. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT is configured with IP4 flow. +| ... | +| ... | - **[Ver] TG verification:** Verify if the flow action is correct. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${src_ip}= | 1.1.1.1 +| ${dst_ip}= | 2.2.2.2 +| ${rxq}= | ${4} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Ver]** Make TG send IP4 packet routed over DUT1 interfaces. \ +| | ... | Make VPP verify flow packet is correct. +| | +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer. Type: integer +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${rxq} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs | with_trace=${True} +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | proto=TCP +| | ... | action=redirect-to-queue | value=${${rxq}-1} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=TCP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | action=redirect-to-queue | action_value=${${rxq}-1} +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | proto=TCP +| | ... | action=drop +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=TCP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | action=drop +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | proto=TCP +| | ... | action=mark | value=${7} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=TCP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | action=mark +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} + +*** Test Cases *** +| 64B-0c-ethip4-flow-ip4-tcp-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-udp-scapy.robot b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-udp-scapy.robot new file mode 100644 index 0000000000..44e89555aa --- /dev/null +++ b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip4-flow-ip4-udp-scapy.robot @@ -0,0 +1,123 @@ +# Copyright (c) 2022 Intel 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY +| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | UDP | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-flow-ip4-udp +| +| Suite Setup | Setup suite topology interfaces | scapy +| Test Setup | Setup test +| Test Teardown | Tear down test | packet_trace | telemetry +| +| Test Template | Local Template +| +| Documentation | **IP4 flow test cases** +| ... +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1 2-node topology with one link \ +| ... | between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IP4-UDP. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT is configured with IP4 flow. +| ... | +| ... | - **[Ver] TG verification:** Verify if the flow action is correct. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${src_ip}= | 1.1.1.1 +| ${dst_ip}= | 2.2.2.2 +| ${rxq}= | ${4} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Ver]** Make TG send IP4 packet routed over DUT1 interfaces. \ +| | ... | Make VPP verify flow packet is correct. +| | +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer. Type: integer +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${rxq} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs | with_trace=${True} +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | proto=UDP +| | ... | action=redirect-to-queue | value=${${rxq}-1} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=UDP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | action=redirect-to-queue | action_value=${${rxq}-1} +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | proto=UDP +| | ... | action=drop +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=UDP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | action=drop +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip4 Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | proto=UDP +| | ... | action=mark | value=${7} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP4 | proto=UDP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | action=mark +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} + +*** Test Cases *** +| 64B-0c-ethip4-flow-ip4-udp-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip6-flow-ip6-ntuple-tcp-scapy.robot b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip6-flow-ip6-ntuple-tcp-scapy.robot new file mode 100644 index 0000000000..993428ee9d --- /dev/null +++ b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip6-flow-ip6-ntuple-tcp-scapy.robot @@ -0,0 +1,128 @@ +# Copyright (c) 2022 Intel 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY +| ... | NIC_Intel-X710 | ETH | IP6FWD | FLOW | NTUPLE | TCP | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip6-flow-ip6-ntuple-tcp +| +| Suite Setup | Setup suite topology interfaces | scapy +| Test Setup | Setup test +| Test Teardown | Tear down test | packet_trace | telemetry +| +| Test Template | Local Template +| +| Documentation | **IP6_N_TUPLE flow test cases** +| ... +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1 2-node topology with one link \ +| ... | between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IP6-TCP. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT is configured with IP6_N_TUPLE flow. +| ... | +| ... | - **[Ver] TG verification:** Verify if the flow action is correct. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${src_ip}= | 2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b +| ${dst_ip}= | 1011:2022:3033:4044:5055:6066:7077:8088 +| ${src_port}= | ${100} +| ${dst_port}= | ${200} +| ${rxq}= | ${4} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Ver]** Make TG send IP6 packet routed over DUT1 interfaces. \ +| | ... | Make VPP verify flow packet is correct. +| | +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer. Type: integer +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${rxq} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs | with_trace=${True} +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip6 N Tuple Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | ${src_port} | ${dst_port} +| | ... | proto=TCP | action=redirect-to-queue | value=${${rxq}-1} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP6 | proto=TCP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | src_port=${src_port} | dst_port=${dst_port} +| | ... | action=redirect-to-queue | action_value=${${rxq}-1} +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip6 N Tuple Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | ${src_port} | ${dst_port} +| | ... | proto=TCP | action=drop +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP6 | proto=TCP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | src_port=${src_port} | dst_port=${dst_port} +| | ... | action=drop +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip6 N Tuple Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | ${src_port} | ${dst_port} +| | ... | proto=TCP | action=mark | value=${7} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP6 | proto=TCP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | src_port=${src_port} | dst_port=${dst_port} +| | ... | action=mark +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} + +*** Test Cases *** +| 64B-0c-ethip6-flow-ip6-ntuple-tcp-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip6-flow-ip6-ntuple-udp-scapy.robot b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip6-flow-ip6-ntuple-udp-scapy.robot new file mode 100644 index 0000000000..e338750711 --- /dev/null +++ b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip6-flow-ip6-ntuple-udp-scapy.robot @@ -0,0 +1,128 @@ +# Copyright (c) 2022 Intel 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY +| ... | NIC_Intel-X710 | ETH | IP6FWD | FLOW | NTUPLE | UDP | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip6-flow-ip6-ntuple-udp +| +| Suite Setup | Setup suite topology interfaces | scapy +| Test Setup | Setup test +| Test Teardown | Tear down test | packet_trace | telemetry +| +| Test Template | Local Template +| +| Documentation | **IP6_N_TUPLE flow test cases** +| ... +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1 2-node topology with one link \ +| ... | between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IP6-UDP. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT is configured with IP6_N_TUPLE flow. +| ... | +| ... | - **[Ver] TG verification:** Verify if the flow action is correct. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${src_ip}= | 2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b +| ${dst_ip}= | 1011:2022:3033:4044:5055:6066:7077:8088 +| ${src_port}= | ${100} +| ${dst_port}= | ${200} +| ${rxq}= | ${4} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Ver]** Make TG send IP6 packet routed over DUT1 interfaces. \ +| | ... | Make VPP verify flow packet is correct. +| | +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer. Type: integer +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${rxq} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs | with_trace=${True} +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip6 N Tuple Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | ${src_port} | ${dst_port} +| | ... | proto=UDP | action=redirect-to-queue | value=${${rxq}-1} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP6 | proto=UDP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | src_port=${src_port} | dst_port=${dst_port} +| | ... | action=redirect-to-queue | action_value=${${rxq}-1} +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip6 N Tuple Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | ${src_port} | ${dst_port} +| | ... | proto=UDP | action=drop +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP6 | proto=UDP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | src_port=${src_port} | dst_port=${dst_port} +| | ... | action=drop +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip6 N Tuple Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | ${src_port} | ${dst_port} +| | ... | proto=UDP | action=mark | value=${7} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP6 | proto=UDP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | src_port=${src_port} | dst_port=${dst_port} +| | ... | action=mark +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} + +*** Test Cases *** +| 64B-0c-ethip6-flow-ip6-ntuple-udp-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip6-flow-ip6-tcp-scapy.robot b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip6-flow-ip6-tcp-scapy.robot new file mode 100644 index 0000000000..09ddbe40a2 --- /dev/null +++ b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip6-flow-ip6-tcp-scapy.robot @@ -0,0 +1,123 @@ +# Copyright (c) 2022 Intel 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY +| ... | NIC_Intel-X710 | ETH | IP6FWD | FLOW | TCP | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip6-flow-ip6-tcp +| +| Suite Setup | Setup suite topology interfaces | scapy +| Test Setup | Setup test +| Test Teardown | Tear down test | packet_trace | telemetry +| +| Test Template | Local Template +| +| Documentation | **IP6 flow test cases** +| ... +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1 2-node topology with one link \ +| ... | between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IP6-TCP. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT is configured with IP6 flow. +| ... | +| ... | - **[Ver] TG verification:** Verify if the flow action is correct. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${src_ip}= | 2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b +| ${dst_ip}= | 1011:2022:3033:4044:5055:6066:7077:8088 +| ${rxq}= | ${4} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Ver]** Make TG send IP6 packet routed over DUT1 interfaces. \ +| | ... | Make VPP verify flow packet is correct. +| | +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer. Type: integer +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${rxq} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs | with_trace=${True} +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip6 Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | proto=TCP +| | ... | action=redirect-to-queue | value=${${rxq}-1} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP6 | proto=TCP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | action=redirect-to-queue | action_value=${${rxq}-1} +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip6 Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | proto=TCP +| | ... | action=drop +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP6 | proto=TCP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | action=drop +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip6 Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | proto=TCP +| | ... | action=mark | value=${7} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP6 | proto=TCP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | action=mark +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} + +*** Test Cases *** +| 64B-0c-ethip6-flow-ip6-tcp-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip6-flow-ip6-udp-scapy.robot b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip6-flow-ip6-udp-scapy.robot new file mode 100644 index 0000000000..089436413c --- /dev/null +++ b/tests/vpp/device/flow/2n1l-10ge2p1x710-ethip6-flow-ip6-udp-scapy.robot @@ -0,0 +1,123 @@ +# Copyright (c) 2022 Intel 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY +| ... | NIC_Intel-X710 | ETH | IP6FWD | FLOW | UDP | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip6-flow-ip6-udp +| +| Suite Setup | Setup suite topology interfaces | scapy +| Test Setup | Setup test +| Test Teardown | Tear down test | packet_trace | telemetry +| +| Test Template | Local Template +| +| Documentation | **IP6 flow test cases** +| ... +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1 2-node topology with one link \ +| ... | between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IP6-UDP. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT is configured with IP6 flow. +| ... | +| ... | - **[Ver] TG verification:** Verify if the flow action is correct. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${src_ip}= | 2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b +| ${dst_ip}= | 1011:2022:3033:4044:5055:6066:7077:8088 +| ${rxq}= | ${4} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Ver]** Make TG send IP6 packet routed over DUT1 interfaces. \ +| | ... | Make VPP verify flow packet is correct. +| | +| | ... | *Arguments:* +| | ... | - frame_size - Framesize in Bytes in integer. Type: integer +| | ... | - phy_cores - Number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${rxq} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs | with_trace=${True} +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip6 Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | proto=UDP +| | ... | action=redirect-to-queue | value=${${rxq}-1} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP6 | proto=UDP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | action=redirect-to-queue | action_value=${${rxq}-1} +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip6 Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | proto=UDP +| | ... | action=drop +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP6 | proto=UDP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | action=drop +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} +| | +| | Clear Packet Trace On Dut | ${dut1} +| | Vpp Enable Traces On Dut | ${dut1} +| | ${flow_index} = | And Vpp Create Ip6 Flow | ${dut1} +| | ... | ${src_ip} | ${dst_ip} | proto=UDP +| | ... | action=mark | value=${7} +| | And Vpp Flow Enable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | Then Send flow packet and verify action +| | ... | ${tg} | ${TG_pf1}[0] | ${DUT1_${int}1_mac}[0] +| | ... | flow_type=IP6 | proto=UDP +| | ... | src_ip=${src_ip} | dst_ip=${dst_ip} +| | ... | action=mark +| | And Vpp Flow Disable | ${dut1} | ${DUT1_${int}1}[0] | ${flow_index} +| | And Vpp Flow Del | ${dut1} | ${flow_index} + +*** Test Cases *** +| 64B-0c-ethip6-flow-ip6-udp-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/flow/regenerate_testcases.py b/tests/vpp/device/flow/regenerate_testcases.py new file mode 100755 index 0000000000..51070e4864 --- /dev/null +++ b/tests/vpp/device/flow/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot") diff --git a/tests/vpp/device/interfaces/eth2p-ethicmpv4-ip4base-eth-1tap-namespace-dev.robot b/tests/vpp/device/interfaces/2n1l-10ge2p1x710-ethicmp4-ip4base-eth-1tap-namespace-scapy.robot index 88bd61e25d..453b774a7f 100644 --- a/tests/vpp/device/interfaces/eth2p-ethicmpv4-ip4base-eth-1tap-namespace-dev.robot +++ b/tests/vpp/device/interfaces/2n1l-10ge2p1x710-ethicmp4-ip4base-eth-1tap-namespace-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,35 +15,40 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | BASE | IP4BASE | 1TAP | NAMESPACE +| ... | NIC_Intel-X710 | ETH | IP4FWD | BASE | IP4BASE | 1TAP | NAMESPACE | ... | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethicmpv4-ip4base-eth-1tap-namespace +| ... | ethicmp4-ip4base-eth-1tap-namespace | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test | namespace -| Test Teardown | Tear down test | packet_trace | namespace +| Test Teardown | Tear down test | packet_trace | telemetry | namespace | | Test Template | Local Template | -| Documentation | *Tap Interface Traffic Tests* -| ... | *[Top] Network Topologies:* TG=DUT1 2-node topology with two links +| Documentation | **Tap Interface Traffic Tests** +| ... | +| ... | - **[Top] Network Topologies:** TG=DUT1 2-node topology with two links \ | ... | between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-ICMPv4 for L2 switching of +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-ICMPv4 for L2 switching of \ | ... | IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 -| ... | bridge-domain (L2BD) MAC learning enabled; Split Horizon Groups (SHG) -| ... | are set depending on test case; Namespaces (NM) +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-domain (L2BD) MAC learning enabled; Split Horizon Groups (SHG) \ +| ... | are set depending on test case; Namespaces (NM) \ | ... | are set on DUT1 with attached linux-TAP. -| ... | *[Ver] TG verification:* Test ICMPv4 Echo Request packets -| ... | are sent by TG on link to DUT1; On receipt TG verifies packets +| ... | +| ... | - **[Ver] TG verification:** Test ICMPv4 Echo Request packets \ +| ... | are sent by TG on link to DUT1; On receipt TG verifies packets \ | ... | for correctness and their IPv4 src-addr, dst-addr, and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -57,15 +62,17 @@ | ${tg_ip_address}= | 192.168.0.2 | ${tg_ip_address_GW}= | 192.168.0.0 | ${prefix}= | 24 +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] On DUT1 configure two interface addresses with IPv4 of which\ -| | ... | one is TAP interface (dut_to_tg_if and TAP) and one is linux-TAP in\ -| | ... | namespace. -| | ... | [Ver] Packet sent from TG gets to the destination and ICMP-reply is\ -| | ... | received on TG. +| | ... | - **[Cfg]** On DUT1 configure two interface addresses with IPv4 of \ +| | ... | which one is TAP interface (dut_to_tg_if and TAP) and one is \ +| | ... | linux-TAP in namespace. +| | ... | - **[Ver]** Packet sent from TG gets to the destination and \ +| | ... | ICMP-reply is received on TG. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -105,6 +112,6 @@ | | ... | ${tap1_NM_ip} | ${tg_ip_address} *** Test Cases *** -| 64B-ethicmpv4-ip4base-eth-1tap-namespace-dev -| | [Tags] | 64B +| 64B-0c-ethicmp4-ip4base-eth-1tap-namespace-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/interfaces/eth2p-ethicmpv4-ip4base-eth-1tap-dev.robot b/tests/vpp/device/interfaces/2n1l-10ge2p1x710-ethicmp4-ip4base-eth-1tap-scapy.robot index 6e86a70ba1..eb654109ea 100644 --- a/tests/vpp/device/interfaces/eth2p-ethicmpv4-ip4base-eth-1tap-dev.robot +++ b/tests/vpp/device/interfaces/2n1l-10ge2p1x710-ethicmp4-ip4base-eth-1tap-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,34 +15,39 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | BASE | IP4BASE | 1TAP | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | BASE | IP4BASE | 1TAP | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethicmpv4-ip4base-eth-1tap +| ... | ethicmp4-ip4base-eth-1tap | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test | namespace -| Test Teardown | Tear down test | packet_trace | namespace +| Test Teardown | Tear down test | packet_trace | telemetry | namespace | | Test Template | Local Template | -| Documentation | *Tap Interface Traffic Tests* -| ... | *[Top] Network Topologies:* TG=DUT1 2-node topology with two links +| Documentation | **Tap Interface Traffic Tests** +| ... | +| ... | - **[Top] Network Topologies:** TG=DUT1 2-node topology with two links \ | ... | between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-ICMPv4 for L2 switching of +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-ICMPv4 for L2 switching of \ | ... | IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 -| ... | bridge-domain (L2BD) MAC learning enabled; Split Horizon Groups (SHG) -| ... | are set depending on test case; Namespaces (NM) +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-domain (L2BD) MAC learning enabled; Split Horizon Groups (SHG) \ +| ... | are set depending on test case; Namespaces (NM) \ | ... | are set on DUT1 with attached linux-TAP. -| ... | *[Ver] TG verification:* Test ICMPv4 Echo Request packets -| ... | are sent by TG on link to DUT1; On receipt TG verifies packets +| ... | +| ... | - **[Ver] TG verification:** Test ICMPv4 Echo Request packets \ +| ... | are sent by TG on link to DUT1; On receipt TG verifies packets \ | ... | for correctness and their IPv4 src-addr, dst-addr, and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -56,14 +61,17 @@ | ${tg_ip_address}= | 192.168.0.2 | ${tg_ip_address_GW}= | 192.168.0.0 | ${prefix}= | 24 +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] On DUT1 configure two interface addresses with IPv4 of which\ -| | ... | one is TAP interface (dut_to_tg_if and TAP) and one is linux-TAP. -| | ... | [Ver] Packet sent from TG gets to the destination and ICMP-reply is\ -| | ... | received on TG. +| | ... | - **[Cfg]** On DUT1 configure two interface addresses with IPv4 of \ +| | ... | which one is TAP interface (dut_to_tg_if and TAP) and one is \ +| | ... | linux-TAP. +| | ... | - **[Ver]** Packet sent from TG gets to the destination and \ +| | ... | ICMP-reply is received on TG. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -99,6 +107,6 @@ | | ... | ${tap1_NM_ip} | ${tg_ip_address} *** Test Cases *** -| 64B-ethicmpv4-ip4base-eth-1tap-dev -| | [Tags] | 64B +| 64B-0c-ethicmp4-ip4base-eth-1tap-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/interfaces/eth2p-ethipv4-l2bdbasemaclrn-eth-2tap-dev.robot b/tests/vpp/device/interfaces/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-eth-2tap-scapy.robot index 93c6d8d73e..21cad9a38b 100644 --- a/tests/vpp/device/interfaces/eth2p-ethipv4-l2bdbasemaclrn-eth-2tap-dev.robot +++ b/tests/vpp/device/interfaces/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-eth-2tap-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,35 +15,40 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2BD | BASE | 2TAP | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | L2BD | BASE | 2TAP | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-l2bdbasemaclrn-eth-2tap +| ... | ethip4-l2bdbasemaclrn-eth-2tap | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test | namespace -| Test Teardown | Tear down test | packet_trace | namespace | linux_bridge +| Test Teardown | Tear down test | packet_trace | telemetry | namespace +| ... | linux_bridge | | Test Template | Local Template | -| Documentation | *Tap Interface Traffic Tests* -| -| ... | *[Top] Network Topologies:* TG=DUT1 2-node topology with two links +| Documentation | **Tap Interface Traffic Tests** +| ... | +| ... | - **[Top] Network Topologies:** TG=DUT1 2-node topology with two links \ | ... | between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of \ | ... | IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 -| ... | bridge-domain (L2BD) MAC learning enabled; Split Horizon Groups (SHG) -| ... | are set depending on test case; Namespaces (NM) +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-domain (L2BD) MAC learning enabled; Split Horizon Groups (SHG) \ +| ... | are set depending on test case; Namespaces (NM) \ | ... | are set on DUT1 with attached linux-TAP. -| ... | *[Ver] TG verification:* Test IPv4 packets with IP protocol=61 -| ... | are sent by TG on link to DUT1; On receipt TG verifies packets +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets with IP protocol=61 \ +| ... | are sent by TG on link to DUT1; On receipt TG verifies packets \ | ... | for correctness and their IPv4 src-addr, dst-addr, and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -51,12 +56,14 @@ | ${nic_vfs}= | 0 | ${overhead}= | ${0} | ${bid_TAP}= | tapBr +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Packet sent from TG is passed through all L2BD and received\ -| | ... | back on TG. Then src_ip, dst_ip and MAC are checked. +| | ... | - **[Ver]** Packet sent from TG is passed through all L2BD and \ +| | ... | received back on TG. Then src_ip, dst_ip and MAC are checked. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -88,6 +95,6 @@ | | ... | ${tg} | ${TG_pf1}[0] | ${TG_pf2}[0] *** Test Cases *** -| 64B-ethipv4-l2bdbasemaclrn-eth-2tap-dev -| | [Tags] | 64B +| 64B-0c-ethip4-l2bdbasemaclrn-eth-2tap-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/interfaces/regenerate_testcases.py b/tests/vpp/device/interfaces/regenerate_testcases.py new file mode 100755 index 0000000000..51070e4864 --- /dev/null +++ b/tests/vpp/device/interfaces/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot") diff --git a/tests/vpp/device/ip4/eth2p-ethip4-ip4base-adlalwlistbase-dev.robot b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4-ip4base-adlalwlistbase-scapy.robot index b839bed5a3..2dfa607276 100644 --- a/tests/vpp/device/ip4/eth2p-ethip4-ip4base-adlalwlistbase-dev.robot +++ b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4-ip4base-adlalwlistbase-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,44 +15,50 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | FEATURE | ADLALWLIST | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | FEATURE | ADLALWLIST | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4-ip4base-adlalwlistbase | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *ADL Security IPv4 allowlist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology \ +| Documentation | **ADL Security IPv4 allowlist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and \ -| ... | static routes. ADL security allowlist are applied on DUT1 ingress \ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on all links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and static routes. ADL security allowlist are applied on DUT1 ingress \ | ... | interface from TG. -| ... | *[Ver] TG verification:* Test IPv4 packets are sent in one direction \ -| ... | by TG on link to DUT1; on receive TG verifies packets for correctness \ -| ... | and drops as applicable. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets are sent in one \ +| ... | direction by TG on link to DUT1; on receive TG verifies packets for \ +| ... | correctness and drops as applicable. +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | adl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | adl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv4 on its interface to DUT1; \ +| | ... | - **[Ver]** Make TG send IPv4 on its interface to DUT1; \ | | ... | verify received IPv4 pkts are correct. | | | | ... | *Arguments:* @@ -81,6 +87,6 @@ | | ... | ${TG_pf2}[0] | ${DUT1_vf2_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 64B-ethip4-ip4base-adlalwlistbase-dev -| | [Tags] | 64B +| 64B-0c-ethip4-ip4base-adlalwlistbase-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4/eth2p-ethip4-ip4base-adlblklistbase-dev.robot b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4-ip4base-adlblklistbase-scapy.robot index bd35ccd623..2ebb0e67a9 100644 --- a/tests/vpp/device/ip4/eth2p-ethip4-ip4base-adlblklistbase-dev.robot +++ b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4-ip4base-adlblklistbase-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,44 +15,50 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | FEATURE | ADLBLKLIST | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | FEATURE | ADLBLKLIST | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4-ip4base-adlblklistbase | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *ADL Security IPv4 allowlist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology \ +| Documentation | **ADL Security IPv4 allowlist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and \ -| ... | static routes. ADL security allowlist are applied on DUT1 ingress \ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on all links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and static routes. ADL security allowlist are applied on DUT1 ingress \ | ... | interface from TG. -| ... | *[Ver] TG verification:* Test IPv4 packets are sent in one direction \ -| ... | by TG on link to DUT1; on receive TG verifies packets for correctness \ -| ... | and drops as applicable. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets are sent in one \ +| ... | direction by TG on link to DUT1; on receive TG verifies packets for \ +| ... | correctness and drops as applicable. +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | adl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | adl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv4 on its interface to DUT1; \ +| | ... | - **[Ver]** Make TG send IPv4 on its interface to DUT1; \ | | ... | verify received IPv4 pkts are correct. | | | | ... | *Arguments:* @@ -81,6 +87,6 @@ | | ... | ${TG_pf2}[0] | ${DUT1_vf2_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 64B-ethip4-ip4base-adlblklistbase-dev -| | [Tags] | 64B +| 64B-0c-ethip4-ip4base-adlblklistbase-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4/eth2p-ethip4-ip4base-iacldstbase-dev.robot b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4-ip4base-iacldstbase-scapy.robot index b34ad495ee..1c39e866f8 100644 --- a/tests/vpp/device/ip4/eth2p-ethip4-ip4base-iacldstbase-dev.robot +++ b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4-ip4base-iacldstbase-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,44 +15,50 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | FEATURE | IACLDST | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | FEATURE | IACLDST | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4-ip4base-iacldstbase | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | classify +| Test Teardown | Tear down test | packet_trace | telemetry | classify | | Test Template | Local Template | -| Documentation | *IPv4 iAcl whitelist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **IPv4 iAcl whitelist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and \ -| ... | static routes. IPv4 iAcl security whitelist is applied on DUT1 ingress \ -| ... | interface from TG. -| ... | *[Ver] TG verification:* Test IPv4 packets are sent in one direction \ -| ... | by TG on link to DUT1; on receive TG verifies packets for correctness \ -| ... | and drops as applicable. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on all links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and static routes. IPv4 iAcl security whitelist is applied on DUT1 \ +| ... | ingress interface from TG. +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets are sent in one \ +| ... | direction by TG on link to DUT1; on receive TG verifies packets for \ +| ... | correctness and drops as applicable. +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv4 on its interface to DUT1; \ +| | ... | - **[Ver]** Make TG send IPv4 on its interface to DUT1; \ | | ... | verify received IPv4 pkts are correct. | | | | ... | *Arguments:* @@ -85,6 +91,6 @@ | | ... | ${TG_pf2}[0] | ${DUT1_vf2_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 64B-ethip4-ip4base-iacldstbase-dev -| | [Tags] | 64B +| 64B-0c-ethip4-ip4base-iacldstbase-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4/eth2p-ethip4-ip4base-ipolicemarkbase-dev.robot b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4-ip4base-ipolicemarkbase-scapy.robot index 5c1122211c..2899393b9e 100644 --- a/tests/vpp/device/ip4/eth2p-ethip4-ip4base-ipolicemarkbase-dev.robot +++ b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4-ip4base-ipolicemarkbase-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,32 +15,37 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | FEATURE | POLICE_MARK | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | FEATURE | POLICE_MARK | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4-ip4base-ipolicemarkbase | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | classify +| Test Teardown | Tear down test | packet_trace | telemetry | classify | | Test Template | Local Template | -| Documentation | *IPv4 policer test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **IPv4 policer test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on all links. -| ... | *[Cfg] DUT configuration:* On DUT1 configure interfaces IPv4 adresses, \ -| ... | and static ARP record on the second interface. On DUT1 configure 2R3C \ -| ... | color-aware policer on the first interface. -| ... | *[Ver] TG verification:* Test packet is sent from TG on the first link \ -| ... | to DUT1. Packet is received on TG on the second link from DUT1. -| ... | *[Ref] Applicable standard specifications:* RFC2474, RFC2697, RFC2698. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on all links. +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 configure interfaces IPv4 \ +| ... | addresses and static ARP record on the second interface. On DUT1 \ +| ... | configure 2R3C color-aware policer on the first interface. +| ... | +| ... | - **[Ver] TG verification:** Test packet is sent from TG on the first \ +| ... | link to DUT1. Packet is received on TG on the second link from DUT1. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2474, RFC2697, \ +| ... | RFC2698. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -50,11 +55,13 @@ | ${cir}= | ${100} | ${eir}= | ${150} | ${dscp}= | AF22 +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Test packet is sent from TG on the first link to DUT1. \ +| | ... | - **[Ver]** Test packet is sent from TG on the first link to DUT1. \ | | ... | Packet is received on TG on the second link from DUT1. | | | | ... | *Arguments:* @@ -80,6 +87,6 @@ | | ... | 10.10.10.2 | 20.20.20.2 *** Test Cases *** -| 64B-ethip4-ip4base-ipolicemarkbase-dev -| | [Tags] | 64B +| 64B-0c-ethip4-ip4base-ipolicemarkbase-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4/eth2p-ethipv4-ip4base-dev.robot b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4-ip4base-scapy.robot index 8e4997ab67..399f780940 100644 --- a/tests/vpp/device/ip4/eth2p-ethipv4-ip4base-dev.robot +++ b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4-ip4base-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,44 +15,52 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | BASE | IP4BASE | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | BASE | IP4BASE | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-ip4base +| ... | ethip4-ip4base | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *IPv4 routing test cases* +| Documentation | **IPv4 routing test cases** | ... -| ... | *[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 IPv4 routing on both \ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing on both \ | ... | links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and \ -| ... | two static IPv4 /24 route entries. -| ... | *[Ver] TG verification:* Test IPv4 packet with IP protocol=61 is sent \ -| ... | in one direction by TG on links to DUT1; on receive TG verifies packet \ -| ... | for correctness and their IPv4 src-addr, dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC791, RFC826, RFC792 +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and two static IPv4 /24 route entries. +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packet with IP protocol=61 is \ +| ... | sent in one direction by TG on links to DUT1; on receive TG verifies \ +| ... | packet for correctness and their IPv4 src-addr, dst-addr and MAC \ +| ... | addresses. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC791, RFC826, RFC792 *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv4 packet routed over DUT1 interfaces.\ +| | ... | - **[Ver]** Make TG send IPv4 packet routed over DUT1 interfaces. \ | | ... | Make TG verify IPv4 packet is correct. | | | | ... | *Arguments:* @@ -78,6 +86,6 @@ | | ... | ${TG_pf2}[0] | ${DUT1_vf2_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 64B-ethipv4-ip4base-dev -| | [Tags] | 64B +| 64B-0c-ethip4-ip4base-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4/eth2p-ethip4tcp-nat44det-dev.robot b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44det-scapy.robot index d564c8c398..bc641af789 100644 --- a/tests/vpp/device/ip4/eth2p-ethip4tcp-nat44det-dev.robot +++ b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44det-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -17,36 +17,40 @@ | Resource | resources/libraries/robot/shared/traffic.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | FEATURE | NAT44 | NAT44_DETERMINISTIC +| ... | NIC_Intel-X710 | ETH | IP4FWD | FEATURE | NAT44 | NAT44_DETERMINISTIC | ... | BASE | TCP | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4tcp-nat44det-dev +| ... | ethip4tcp-nat44det | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | det44 +| Test Teardown | Tear down test | packet_trace | telemetry | det44 | | Test Template | Local Template | -| Documentation | *NAT44 deterministic mode test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **NAT44 deterministic mode test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and -| ... | one static IPv4 /${dest_mask} route entries. -| ... | DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* Eth-IPv4-TCP packet is sent from TG to DUT1 in\ -| ... | one direction. Packet is received and verified for correctness on TG.\ -| ... | Then Eth-IPv4-TCP packet is sent from TG in opposite direction. Packet\ -| ... | is received and verified for correctness on TG. -| ... | *[Ref] Applicable standard specifications:* RFC791, RFC793, RFC3022, -| ... | RFC4787. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /${dest_mask} route entries. \ +| ... | DUT1 is tested with ${nic_name}. +| ... | +| ... | - **[Ver] TG verification:** Eth-IPv4-TCP packet is sent from TG to \ +| ... | DUT1 in one direction. Packet is received and verified for correctness \ +| ... | on TG. Then Eth-IPv4-TCP packet is sent from TG in opposite direction. \ +| ... | Packet is received and verified for correctness on TG. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC791, RFC793, \ +| ... | RFC3022 and RFC4787. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | det44_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | det44_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -74,13 +78,15 @@ | ${in_mask}= | ${32} | ${out_net}= | 200.0.0.0 | ${out_mask}= | ${32} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. -| | ... | [Ver] Make TG send IPv4 packet routed over DUT1 interfaces.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Ver]** Make TG send IPv4 packet routed over DUT1 interfaces. \ | | ... | Make TG verify IPv4 packet is correct. | | | | ... | *Arguments:* @@ -106,6 +112,6 @@ | | ... | ${protocol} | ${src_port_in} | ${dst_port} *** Test Cases *** -| 64B-ethip4tcp-nat44det-dev -| | [Tags] | 64B +| 64B-0c-ethip4tcp-nat44det-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4/eth2p-ethip4tcp-nat44ed-dev.robot b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-scapy.robot index c72fae1870..2f6ed76f36 100644 --- a/tests/vpp/device/ip4/eth2p-ethip4tcp-nat44ed-dev.robot +++ b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -17,37 +17,41 @@ | Resource | resources/libraries/robot/shared/traffic.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | FEATURE | NAT44 | NAT44_ENDPOINT_DEPENDENT -| ... | BASE | TCP | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | FEATURE | NAT44 +| ... | NAT44_ENDPOINT_DEPENDENT | BASE | TCP | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4tcp-nat44ed-dev +| ... | ethip4tcp-nat44ed | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | nat-ed +| Test Teardown | Tear down test | packet_trace | telemetry | nat-ed | | Test Template | Local Template | -| Documentation | *Connections per second NAT44 endpoint-dependent mode -| ... | performance test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **Connections per second NAT44 endpoint-dependent mode +| ... | performance test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and -| ... | one static IPv4 /18 route entries. -| ... | DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* Eth-IPv4-TCP packet is sent from TG to DUT1 in\ -| ... | one direction. Packet is received and verified for correctness on TG.\ -| ... | Then Eth-IPv4-TCP packet is sent from TG in opposite direction. Packet\ -| ... | is received and verified for correctness on TG. -| ... | *[Ref] Applicable standard specifications:* RFC791, RFC793, RFC3022, -| ... | RFC4787. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /18 route entries. \ +| ... | DUT1 is tested with ${nic_name}. +| ... | +| ... | - **[Ver] TG verification:** Eth-IPv4-TCP packet is sent from TG to \ +| ... | DUT1 in one direction. Packet is received and verified for correctness \ +| ... | on TG. Then Eth-IPv4-TCP packet is sent from TG in opposite direction. \ +| ... | Packet is received and verified for correctness on TG. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC791, RFC793, \ +| ... | RFC3022 and RFC4787. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -77,13 +81,15 @@ | ${out_net}= | 68.142.68.0 | ${out_net_end}= | 68.142.68.0 | ${out_mask}= | ${32} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. -| | ... | [Ver] Make TG send IPv4 packet routed over DUT1 interfaces.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Ver]** Make TG send IPv4 packet routed over DUT1 interfaces. \ | | ... | Make TG verify IPv4 packet is correct. | | | | ... | *Arguments:* @@ -109,6 +115,6 @@ | | ... | ${protocol} | ${src_port_in} | ${dst_port} *** Test Cases *** -| 64B-ethip4tcp-nat44ed-dev -| | [Tags] | 64B +| 64B-0c-ethip4tcp-nat44ed-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4/eth2p-ethip4udp-nat44det-dev.robot b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-scapy.robot index 5803b4e590..56ea25f313 100644 --- a/tests/vpp/device/ip4/eth2p-ethip4udp-nat44det-dev.robot +++ b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -17,36 +17,40 @@ | Resource | resources/libraries/robot/shared/traffic.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | FEATURE | NAT44 | NAT44_DETERMINISTIC +| ... | NIC_Intel-X710 | ETH | IP4FWD | FEATURE | NAT44 | NAT44_DETERMINISTIC | ... | BASE | UDP | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4udp-nat44det-dev +| ... | ethip4udp-nat44det | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | det44 +| Test Teardown | Tear down test | packet_trace | telemetry | det44 | | Test Template | Local Template | -| Documentation | *NAT44 deterministic mode test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **NAT44 deterministic mode test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and -| ... | one static IPv4 /${dest_mask} route entries. -| ... | DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* Eth-IPv4-UDP packet is sent from TG to DUT1 in\ -| ... | one direction. Packet is received and verified for correctness on TG.\ -| ... | Then Eth-IPv4-UDP packet is sent from TG in opposite direction. Packet\ -| ... | is received and verified for correctness on TG. -| ... | *[Ref] Applicable standard specifications:* RFC791, RFC768, RFC3022, -| ... | RFC4787. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /${dest_mask} route entries. \ +| ... | DUT1 is tested with ${nic_name}. +| ... | +| ... | - **[Ver] TG verification:** Eth-IPv4-UDP packet is sent from TG to \ +| ... | DUT1 in one direction. Packet is received and verified for correctness \ +| ... | on TG. Then Eth-IPv4-UDP packet is sent from TG in opposite direction. \ +| ... | Packet is received and verified for correctness on TG. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC791, RFC768, \ +| ... | RFC3022 and RFC4787. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | det44_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | det44_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -74,13 +78,15 @@ | ${in_mask}= | ${32} | ${out_net}= | 200.0.0.0 | ${out_mask}= | ${32} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. -| | ... | [Ver] Make TG send IPv4 packet routed over DUT1 interfaces.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Ver]** Make TG send IPv4 packet routed over DUT1 interfaces. \ | | ... | Make TG verify IPv4 packet is correct. | | | | ... | *Arguments:* @@ -106,6 +112,6 @@ | | ... | ${protocol} | ${src_port_in} | ${dst_port} *** Test Cases *** -| 64B-ethip4udp-nat44det-dev -| | [Tags] | 64B +| 64B-0c-ethip4udp-nat44det-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4/eth2p-ethip4udp-nat44ed-dev.robot b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-scapy.robot index 18f648f2dc..9c84afabce 100644 --- a/tests/vpp/device/ip4/eth2p-ethip4udp-nat44ed-dev.robot +++ b/tests/vpp/device/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -17,37 +17,41 @@ | Resource | resources/libraries/robot/shared/traffic.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | FEATURE | NAT44 | NAT44_ENDPOINT_DEPENDENT -| ... | BASE | UDP | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | FEATURE | NAT44 +| ... | NAT44_ENDPOINT_DEPENDENT | BASE | UDP | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4udp-nat44ed-dev +| ... | ethip4udp-nat44ed | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | nat-ed +| Test Teardown | Tear down test | packet_trace | telemetry | nat-ed | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput NAT44 endpoint-dependent mode -| ... | performance test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput NAT44 endpoint-dependent mode +| ... | performance test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and -| ... | one static IPv4 /${dest_mask} route entries. -| ... | DUT1 is tested with ${nic_name}.\ -| ... | *[Ver] TG verification:* Eth-IPv4-UDP packet is sent from TG to DUT1 in\ -| ... | one direction. Packet is received and verified for correctness on TG.\ -| ... | Then Eth-IPv4-UDP packet is sent from TG in opposite direction. Packet\ -| ... | is received and verified for correctness on TG. -| ... | *[Ref] Applicable standard specifications:* RFC791, RFC768, RFC3022, -| ... | RFC4787. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /${dest_mask} route entries. \ +| ... | DUT1 is tested with ${nic_name}. +| ... | +| ... | - **[Ver] TG verification:** Eth-IPv4-UDP packet is sent from TG to \ +| ... | DUT1 in one direction. Packet is received and verified for correctness \ +| ... | on TG. Then Eth-IPv4-UDP packet is sent from TG in opposite direction. \ +| ... | Packet is received and verified for correctness on TG. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC791, RFC768, \ +| ... | RFC3022 and RFC4787. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -77,13 +81,15 @@ | ${out_net}= | 68.142.68.0 | ${out_net_end}= | 68.142.68.0 | ${out_mask}= | ${32} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. -| | ... | [Ver] Make TG send IPv4 packet routed over DUT1 interfaces.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Ver]** Make TG send IPv4 packet routed over DUT1 interfaces. \ | | ... | Make TG verify IPv4 packet is correct. | | | | ... | *Arguments:* @@ -109,6 +115,6 @@ | | ... | ${protocol} | ${src_port_in} | ${dst_port} *** Test Cases *** -| 64B-ethip4udp-nat44ed-dev -| | [Tags] | 64B +| 64B-0c-ethip4udp-nat44ed-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4/regenerate_testcases.py b/tests/vpp/device/ip4/regenerate_testcases.py new file mode 100755 index 0000000000..51070e4864 --- /dev/null +++ b/tests/vpp/device/ip4/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot") diff --git a/tests/vpp/device/ip4_tunnels/eth2p-ethip4--ethip4udpgeneve-1tun-ip4base-dev.robot b/tests/vpp/device/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-1tun-ip4base-scapy.robot index fe20d6dd6d..926c0296ac 100644 --- a/tests/vpp/device/ip4_tunnels/eth2p-ethip4--ethip4udpgeneve-1tun-ip4base-dev.robot +++ b/tests/vpp/device/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-1tun-ip4base-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -17,40 +17,44 @@ | Resource | resources/libraries/robot/shared/traffic.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | IP4BASE | UDP | ENCAP | GENEVE +| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | UDP | ENCAP | GENEVE | ... | GENEVE_L3MODE | GENEVE4_1TUN | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4--ethip4udpgeneve-1tun-ip4base | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | geneve4 +| Test Teardown | Tear down test | packet_trace | telemetry | geneve4 | | Test Template | Local Template | -| Documentation | *L2BD with GENEVE L3 mode test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **L2BD with GENEVE L3 mode test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 between TG-if1 and DUT1-if1 and\ -| ... | Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 for IPv4\ -| ... | routing over GENEVE tunnel. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing over\ -| ... | GENEVE tunnel and 4 static IPv4 /24 route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 between TG-if1 and \ +| ... | DUT1-if1 and Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 \ +| ... | for IPv4 routing over GENEVE tunnel. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | over GENEVE tunnel and 4 static IPv4 /24 route entries. \ | ... | DUT1 is tested with ${nic_name}. -| ... | *[Ver] TG verification:* Test Eth-IPv4 packet is sent by TG-if1 on link\ -| ... | to DUT1-if1; on receive by TG-if2 the encapsulated packet is verified\ -| ... | for correctness and its outer and inner IPv4 and MAC addresses, UDP\ -| ... | ports and GENEVE vni and protocol number. Then test\ -| ... | Eth-IPv4-UDP-GENEVE-Eth-IPv4 packet is sent by TG-if2 on link to\ -| ... | DUT1-if2; on receive by TG-if1 decapsulated packet is verified for\ +| ... | +| ... | - **[Ver] TG verification:** Test Eth-IPv4 packet is sent by TG-if1 on \ +| ... | link to DUT1-if1; on receive by TG-if2 the encapsulated packet is \ +| ... | verified for correctness and its outer and inner IPv4 and MAC \ +| ... | addresses, UDP ports and GENEVE vni and protocol number. Then test. \ +| ... | Eth-IPv4-UDP-GENEVE-Eth-IPv4 packet is sent by TG-if2 on link to \ +| ... | DUT1-if2; on receive by TG-if1 decapsulated packet is verified for \ | ... | correctness and its IPv4 and MAC addresses -| ... | *[Ref] Applicable standard specifications:* RFC791, RFC768, RFC8926. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC791, RFC768, RFC8926. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | geneve_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | geneve_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -68,14 +72,16 @@ | &{gen_tunnel}= | ... | local=1.1.1.2 | remote=1.1.1.1 | vni=${1} | ... | src_ip=10.128.1.0 | dst_ip=10.0.1.0 | ip_mask=${24} | if_ip=11.0.1.2 +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs GENEVE ${gen_mode} mode configuration. +| | ... | - **[Cfg]** DUT runs GENEVE ${gen_mode} mode configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -99,9 +105,8 @@ | | ... | ${DUT1_vf1_mac}[0] | ${DUT1_vf2_mac}[0] | | ... | ${gen_tunnel}[local] | ${gen_tunnel}[remote] | ${gen_tunnel}[vni] | | ... | ${gen_tunnel}[src_ip] | ${gen_tunnel}[dst_ip] -| | And Show Geneve Tunnel Data | ${nodes['DUT1']} *** Test Cases *** -| 64B-ethip4--ethip4udpgeneve-1tun-ip4base-dev -| | [Tags] | 64B +| 64B-0c-ethip4--ethip4udpgeneve-1tun-ip4base-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4_tunnels/eth2p-ethip4vxlan-l2bdbasemaclrn-dev.robot b/tests/vpp/device/ip4_tunnels/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-scapy.robot index 0d9607129a..a8c9246ec3 100644 --- a/tests/vpp/device/ip4_tunnels/eth2p-ethip4vxlan-l2bdbasemaclrn-dev.robot +++ b/tests/vpp/device/ip4_tunnels/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,46 +15,52 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | L2BDMACLRN | ENCAP | VXLAN | L2OVRLAY | IP4UNRLAY +| ... | NIC_Intel-X710 | L2BDMACLRN | ENCAP | VXLAN | L2OVRLAY | IP4UNRLAY | ... | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4vxlan-l2bdbasemaclrn | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *L2BD with VXLANoIPv4 test cases* -| -| ... | *[Top] Network topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **L2BD with VXLANoIPv4 test cases** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet encapsulations:* Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 on\ +| ... | +| ... | - **[Enc] Packet encapsulations:** Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 on \ | ... | TG-DUT. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-domain\ -| ... | switching combined with MAC learning enable.\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 \ +| ... | cross-connect switching.combined with MAC learning enable. \ | ... | VXLAN tunnels are configured on links betwen TG and DUT. -| ... | *[Ver] TG verification:* Test Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 packet is\ -| ... | sent by TG on link to DUT1; on receive TG verifies packets for\ -| ... | correctness and their IPv4 src-addr, dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC7348. +| ... | +| ... | - **[Ver] TG verification:** Test Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 \ +| ... | packet is sent by TG on link to DUT1; on receive TG verifies packets \ +| ... | for correctness and their IPv4 src-addr, dst-addr and MAC addresses. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${50} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send VXLAN encapsulated Ethernet frame; verify\ +| | ... | - **[Ver]** Make TG send VXLAN encapsulated Ethernet frame; verify \ | | ... | all packets are received. | | | | ... | *Arguments:* @@ -80,6 +86,6 @@ | | ... | 172.17.0.2 | 172.16.0.1 | ${0} | 172.26.0.1 | 172.27.0.2 | ${0} *** Test Cases *** -| 114B-ethip4vxlan-l2bdbasemaclrn-dev -| | [Tags] | 114B -| | frame_size=${114} | phy_cores=${0} +| 64B-0c-ethip4vxlan-l2bdbasemaclrn-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4_tunnels/eth2p-ethip4vxlan-l2xcbase-dev.robot b/tests/vpp/device/ip4_tunnels/2n1l-10ge2p1x710-ethip4vxlan-l2xcbase-scapy.robot index beff215e8f..7b84de1af0 100644 --- a/tests/vpp/device/ip4_tunnels/eth2p-ethip4vxlan-l2xcbase-dev.robot +++ b/tests/vpp/device/ip4_tunnels/2n1l-10ge2p1x710-ethip4vxlan-l2xcbase-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,45 +15,51 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | L2XCBASE | ENCAP | VXLAN | L2OVRLAY | IP4UNRLAY +| ... | NIC_Intel-X710 | L2XCBASE | ENCAP | VXLAN | L2OVRLAY | IP4UNRLAY | ... | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4vxlan-l2xcbase | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *L2XC with VXLANoIPv4 test cases* -| -| ... | *[Top] Network topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **L2XC with VXLANoIPv4 test cases** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet encapsulations:* Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 on\ +| ... | +| ... | - **[Enc] Packet encapsulations:** Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 on \ | ... | TG-DUT. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 cross-connect.\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 \ | ... | VXLAN tunnels are configured on links betwen TG and DUT. -| ... | *[Ver] TG verification:* Test Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 packet is\ -| ... | sent by TG on link to DUT1; on receive TG verifies packets for\ -| ... | correctness and their IPv4 src-addr, dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC7348. +| ... | +| ... | - **[Ver] TG verification:** Test Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 \ +| ... | packet is sent by TG on link to DUT1; on receive TG verifies packets \ +| ... | for correctness and their IPv4 src-addr, dst-addr and MAC addresses. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${50} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send VXLAN encapsulated Ethernet frame; verify\ +| | ... | - **[Ver]** Make TG send VXLAN encapsulated Ethernet frame; verify \ | | ... | all packets are received. | | | | ... | *Arguments:* @@ -79,6 +85,6 @@ | | ... | 172.17.0.2 | 172.16.0.1 | ${0} | 172.26.0.1 | 172.27.0.2 | ${0} *** Test Cases *** -| 114B-ethip4vxlan-l2xcbase-dev -| | [Tags] | 114B -| | frame_size=${114} | phy_cores=${0} +| 64B-0c-ethip4vxlan-l2xcbase-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4_tunnels/lisp/eth2p-ethip4lisp-ip4base-dev.robot b/tests/vpp/device/ip4_tunnels/lisp/2n1l-10ge2p1x710-ethip4lisp-ip4base-scapy.robot index ed2efca8f2..a3f2c60a8e 100644 --- a/tests/vpp/device/ip4_tunnels/lisp/eth2p-ethip4lisp-ip4base-dev.robot +++ b/tests/vpp/device/ip4_tunnels/lisp/2n1l-10ge2p1x710-ethip4lisp-ip4base-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -17,47 +17,53 @@ | Variables | resources/test_data/lisp/lisp.py | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | IP4FWD | LISP | LISP_IP4o4 | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | IP4FWD | LISP | LISP_IP4o4 | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4lisp-ip4base | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *ip4-lisp-ip4 encapsulation test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node\ -| ... | circular topology with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-LISP-IPv4-ICMPv4\ -| ... | on DUT1-TG, Eth-IPv4-ICMPv4 on TG-DUTn for IPv4 routing\ +| Documentation | **ip4-lisp-ip4 encapsulation test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node \ +| ... | circular with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-LISP-IPv4-ICMPv4 \ +| ... | on DUT1-TG, Eth-IPv4-ICMPv4 on TG-DUTn for IPv4 routing \ | ... | over LISPoIPv4 tunnel. -| ... | *[Cfg] DUT configuration:* DUT is configured with IPv4\ -| ... | routing and static routes. LISPoIPv4 tunnel is\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT is configured with IPv4. \ +| ... | routing and static routes. LISPoIPv4 tunnel is \ | ... | configured between DUT1 and TG2. -| ... | *[Ver] TG verification:* Test ICMPv4 Echo Request packets\ -| ... | are sent by TG on if1 link to DUT1; on receive TG verifies\ -| ... | packets for correctness and their IPv4 src-addr, dst-addr\ +| ... | +| ... | - **[Ver] TG verification:** Test ICMPv4 Echo Request packets \ +| ... | are sent by TG on if1 link to DUT1; on receive TG verifies \ +| ... | packets for correctness and their IPv4 src-addr, dst-addr \ | ... | and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC6830. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC6830. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lisp_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lisp_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${54} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] On DUT1 configure LISP.\ +| | ... | - **[Cfg]** On DUT1 configure LISP. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -86,6 +92,6 @@ | | ... | ${src_rloc4} | ${dst_rloc4} *** Test Cases *** -| 46B-ethip4lisp-ip4base-dev -| | [Tags] | 46B -| | frame_size=${46} | phy_cores=${0} +| 64B-0c-ethip4lisp-ip4base-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4_tunnels/lisp/eth2p-ethip4lispgpe-ip4base-dev.robot b/tests/vpp/device/ip4_tunnels/lisp/2n1l-10ge2p1x710-ethip4lispgpe-ip4base-scapy.robot index f74fe75ca3..e77829a07c 100644 --- a/tests/vpp/device/ip4_tunnels/lisp/eth2p-ethip4lispgpe-ip4base-dev.robot +++ b/tests/vpp/device/ip4_tunnels/lisp/2n1l-10ge2p1x710-ethip4lispgpe-ip4base-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -17,36 +17,40 @@ | Variables | resources/test_data/lisp/lisp.py | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | IP4FWD | LISP | LISPGPE_IP4o4 | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | IP4FWD | LISP | LISPGPE_IP4o4 | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4lispgpe-ip4base | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *ip4-lispgpe-ip4 encapsulation test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node\ -| ... | circular topology with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-LISPGPE-IPv4-ICMPv4\ -| ... | on DUT1-TG, Eth-IPv4-ICMPv4 on TG-DUTn for IPv4\ +| Documentation | **ip4-lispgpe-ip4 encapsulation test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node \ +| ... | circular with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-LISPGPE-IPv4-ICMPv4 \ +| ... | on DUT1-TG, Eth-IPv4-ICMPv4 on TG-DUTn for IPv4. \ | ... | routing over LISPoIPv4 tunnel. -| ... | *[Cfg] DUT configuration:* DUT1 and TG(if2) are configured\ -| ... | with IPv4 routing and static routes. LISPoIPv4 tunnel is\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and TG(if2) are configured \ +| ... | with IPv4 routing and static routes. LISPoIPv4 tunnel is \ | ... | configured between DUT1 and TG. -| ... | *[Ver] TG verification:* Test ICMPv4 Echo Request packets\ -| ... | are sent in TG->DUT(if1); On receive TG(if2) verifies packets\ -| ... | for correctness and their IPv4 src-addr, dst-addr and\ +| ... | +| ... | - **[Ver] TG verification:** Test ICMPv4 Echo Request packets \ +| ... | are sent in TG->DUT(if1); On receive TG(if2) verifies packets \ +| ... | for correctness and their IPv4 src-addr, dst-addr and \ | ... | MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC6830. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC6830. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lisp_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lisp_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -54,11 +58,13 @@ | ${nic_vfs}= | 0 | ${overhead}= | ${54} | ${is_gpe}= | ${1} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] On DUT1 configure LISP. +| | ... | - **[Cfg]** On DUT1 configure LISP. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -87,6 +93,6 @@ | | ... | ${src_rloc4} | ${dst_rloc4} *** Test Cases *** -| 46B-ethip4lispgpe-ip4base-dev -| | [Tags] | 46B -| | frame_size=${46} | phy_cores=${0} +| 64B-0c-ethip4lispgpe-ip4base-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4_tunnels/lisp/eth2p-ethip4lispgpe-ip6base-dev.robot b/tests/vpp/device/ip4_tunnels/lisp/2n1l-10ge2p1x710-ethip4lispgpe-ip6base-scapy.robot index 263b74890f..741244712a 100644 --- a/tests/vpp/device/ip4_tunnels/lisp/eth2p-ethip4lispgpe-ip6base-dev.robot +++ b/tests/vpp/device/ip4_tunnels/lisp/2n1l-10ge2p1x710-ethip4lispgpe-ip6base-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -17,36 +17,40 @@ | Variables | resources/test_data/lisp/lisp.py | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | IP4FWD | LISP | LISPGPE_IP6o4 | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | IP4FWD | LISP | LISPGPE_IP6o4 | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4lispgpe-ip6base | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *ip4-lispgpe-ip6 encapsulation test cases* -| -| ... | *[Top] Network Topologies:* TG(if1)-DUT1-TG(if2) 2-node\ -| ... | circular topology with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-LISPGPE-IPv6-ICMPv6\ -| ... | on DUT1-TG(if2),Eth-IPv6-ICMPv6 on TG-DUTn for IPv6\ +| Documentation | **ip4-lispgpe-ip6 encapsulation test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG(if1)-DUT1-TG(if2) 2-node \ +| ... | circular with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-LISPGPE-IPv6-ICMPv6 \ +| ... | on DUT1-TG(if2),Eth-IPv6-ICMPv6 on TG-DUTn for IPv6 \ | ... | routing over LISPoIPv4 tunnel. -| ... | *[Cfg] DUT configuration:* DUT1 and TG(if2) are configured\ -| ... | with IPv6 routing and static routes. LISPoIPv4 tunnel is\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and TG(if2) are configured \ +| ... | with IPv6 routing and static routes. LISPoIPv4 tunnel is \ | ... | configured between DUT1 and TG(if2). -| ... | *[Ver] TG verification:* Test ICMPv6 Echo Request packets\ -| ... | are sent in if1 by TG on links to DUT1; on receive\ -| ... | TG verifies packets for correctness and their IPv6 src-addr,\ +| ... | +| ... | - **[Ver] TG verification:** Test ICMPv6 Echo Request packets \ +| ... | are sent in if1 by TG on links to DUT1; on receive \ +| ... | TG verifies packets for correctness and their IPv6 src-addr, \ | ... | dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC6830. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC6830. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lisp_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lisp_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -55,11 +59,13 @@ | ${overhead}= | ${54} | ${ot_mode}= | 6to4 | ${is_gpe}= | ${1} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] On DUT1 configure LISPGPE\ +| | ... | - **[Cfg]** On DUT1 configure LISPGPE. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -89,6 +95,6 @@ | | ... | ${src_rloc4} | ${dst_rloc4} | ${ot_mode} *** Test Cases *** -| 62B-ethip4lispgpe-ip6base-dev -| | [Tags] | 62B -| | frame_size=${62} | phy_cores=${0} +| 64B-0c-ethip4lispgpe-ip6base-scapy +| | [Tags] | 64B | 0C +| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/ip4_tunnels/lisp/regenerate_testcases.py b/tests/vpp/device/ip4_tunnels/lisp/regenerate_testcases.py new file mode 100755 index 0000000000..51070e4864 --- /dev/null +++ b/tests/vpp/device/ip4_tunnels/lisp/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot") diff --git a/tests/vpp/device/ip4_tunnels/regenerate_testcases.py b/tests/vpp/device/ip4_tunnels/regenerate_testcases.py new file mode 100755 index 0000000000..51070e4864 --- /dev/null +++ b/tests/vpp/device/ip4_tunnels/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot") diff --git a/tests/vpp/device/ip6/eth2p-ethip6-ip6base-adlalwlistbase-dev.robot b/tests/vpp/device/ip6/2n1l-10ge2p1x710-ethip6-ip6base-adlalwlistbase-scapy.robot index eb9616d751..1b1f759ae5 100644 --- a/tests/vpp/device/ip6/eth2p-ethip6-ip6base-adlalwlistbase-dev.robot +++ b/tests/vpp/device/ip6/2n1l-10ge2p1x710-ethip6-ip6base-adlalwlistbase-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,44 +15,50 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP6FWD | FEATURE | ADLALWLIST | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | ADLALWLIST | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip6-ip6base-adlalwlistbase | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *ADL Security IPv6 allowlist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology \ +| Documentation | **ADL Security IPv6 allowlist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 on all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and \ -| ... | static routes. ADL security allowlists are applied on DUT1 ingress \ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 on all links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ +| ... | and static routes. ADL security allowlists are applied on DUT1 ingress \ | ... | interface from TG. -| ... | *[Ver] TG verification:* Test IPv6 packets are sent in one direction \ -| ... | by TG on link to DUT1; on receive TG verifies packets for correctness \ -| ... | and drops as applicable. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Ver] TG verification:** Test IPv6 packets are sent in one \ +| ... | direction by TG on link to DUT1; on receive TG verifies packets for \ +| ... | correctness and drops as applicable. +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | adl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | adl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv6 on its interface to DUT1; \ +| | ... | - **[Ver]** Make TG send IPv6 on its interface to DUT1; \ | | ... | verify received IPv6 pkts are correct. | | | | ... | *Arguments:* @@ -81,6 +87,6 @@ | | ... | ${TG_pf2}[0] | ${DUT1_vf2_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 78B-ethip6-ip6base-adlalwlistbase-dev -| | [Tags] | 78B +| 78B-0c-ethip6-ip6base-adlalwlistbase-scapy +| | [Tags] | 78B | 0C | | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/ip6/eth2p-ethip6-ip6base-adlblklistbase-dev.robot b/tests/vpp/device/ip6/2n1l-10ge2p1x710-ethip6-ip6base-adlblklistbase-scapy.robot index 7640521677..ea70db0dd9 100644 --- a/tests/vpp/device/ip6/eth2p-ethip6-ip6base-adlblklistbase-dev.robot +++ b/tests/vpp/device/ip6/2n1l-10ge2p1x710-ethip6-ip6base-adlblklistbase-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,44 +15,50 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP6FWD | FEATURE | ADLBLKLIST | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | ADLBLKLIST | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip6-ip6base-adlblklistbase | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *ADL Security IPv6 allowlist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology \ +| Documentation | **ADL Security IPv6 allowlist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 on all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and \ -| ... | static routes. ADL security allowlists are applied on DUT1 ingress \ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 on all links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ +| ... | and static routes. ADL security allowlists are applied on DUT1 ingress \ | ... | interface from TG. -| ... | *[Ver] TG verification:* Test IPv6 packets are sent in one direction \ -| ... | by TG on link to DUT1; on receive TG verifies packets for correctness \ -| ... | and drops as applicable. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Ver] TG verification:** Test IPv6 packets are sent in one \ +| ... | direction by TG on link to DUT1; on receive TG verifies packets for \ +| ... | correctness and drops as applicable. +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | adl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | adl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv6 on its interface to DUT1; \ +| | ... | - **[Ver]** Make TG send IPv6 on its interface to DUT1; \ | | ... | verify received IPv6 pkts are correct. | | | | ... | *Arguments:* @@ -81,6 +87,6 @@ | | ... | ${TG_pf2}[0] | ${DUT1_vf2_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 78B-ethip6-ip6base-adlblklistbase-dev -| | [Tags] | 78B +| 78B-0c-ethip6-ip6base-adlblklistbase-scapy +| | [Tags] | 78B | 0C | | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/ip6/eth2p-ethip6-ip6base-iacldstbase-dev.robot b/tests/vpp/device/ip6/2n1l-10ge2p1x710-ethip6-ip6base-iacldstbase-scapy.robot index 7d64477be5..2b000d998e 100644 --- a/tests/vpp/device/ip6/eth2p-ethip6-ip6base-iacldstbase-dev.robot +++ b/tests/vpp/device/ip6/2n1l-10ge2p1x710-ethip6-ip6base-iacldstbase-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,44 +15,50 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP6FWD | FEATURE | IACLDST | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | IACLDST | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip6-ip6base-iacldstbase | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | classify +| Test Teardown | Tear down test | packet_trace | telemetry | classify | | Test Template | Local Template | -| Documentation | *IPv6 iAcl whitelist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **IPv6 iAcl whitelist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 on all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and \ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 on all links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ | ... | static routes. IPv6 iAcl security whitelist is applied on DUT1 ingress \ | ... | interface from TG. -| ... | *[Ver] TG verification:* Test IPv6 packets are sent in one direction \ -| ... | by TG on link to DUT1; on receive TG verifies packets for correctness \ -| ... | and drops as applicable. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Ver] TG verification:** Test IPv6 packets are sent in one \ +| ... | direction by TG on link to DUT1; on receive TG verifies packets for \ +| ... | correctness and drops as applicable. +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv6 on its interface to DUT1; \ +| | ... | - **[Ver]** Make TG send IPv6 on its interface to DUT1; \ | | ... | verify received IPv6 pkts are correct. | | | | ... | *Arguments:* @@ -85,6 +91,6 @@ | | ... | ${TG_pf2}[0] | ${DUT1_vf2_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 78B-ethip6-ip6base-iacldstbase-dev -| | [Tags] | 78B +| 78B-0c-ethip6-ip6base-iacldstbase-scapy +| | [Tags] | 78B | 0C | | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/ip6/eth2p-ethip6-ip6base-ipolicemarkbase-dev.robot b/tests/vpp/device/ip6/2n1l-10ge2p1x710-ethip6-ip6base-ipolicemarkbase-scapy.robot index 688e912767..bfd7d541c4 100644 --- a/tests/vpp/device/ip6/eth2p-ethip6-ip6base-ipolicemarkbase-dev.robot +++ b/tests/vpp/device/ip6/2n1l-10ge2p1x710-ethip6-ip6base-ipolicemarkbase-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,32 +15,37 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP6FWD | FEATURE | POLICE_MARK | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | POLICE_MARK | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip6-ip6base-ipolicemarkbase | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | classify +| Test Teardown | Tear down test | packet_trace | telemetry | classify | | Test Template | Local Template | -| Documentation | *IPv4 policer test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **IPv4 policer test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 on all links. -| ... | *[Cfg] DUT configuration:* On DUT1 configure interfaces IPv6 adresses, \ -| ... | and static ARP record on the second interface. On DUT1 configure 2R3C \ -| ... | color-aware policer on the first interface. -| ... | *[Ver] TG verification:* Test packet is sent from TG on the first link \ -| ... | to DUT1. Packet is received on TG on the second link from DUT1. -| ... | *[Ref] Applicable standard specifications:* RFC2474, RFC2697, RFC2698. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 on all links. +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 configure interfaces IPv6 \ +| ... | addresses and static ARP record on the second interface. On DUT1 \ +| ... | configure 2R3C color-aware policer on the first interface. +| ... | +| ... | - **[Ver] TG verification:** Test packet is sent from TG on the first \ +| ... | link to DUT1. Packet is received on TG on the second link from DUT1. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2474, RFC2697, \ +| ... | RFC2698. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -50,11 +55,13 @@ | ${cir}= | ${100} | ${eir}= | ${150} | ${dscp}= | AF22 +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Test packet is sent from TG on the first link to DUT1. \ +| | ... | - **[Ver]** Test packet is sent from TG on the first link to DUT1. \ | | ... | Packet is received on TG on the second link from DUT1. | | | | ... | *Arguments:* @@ -81,6 +88,6 @@ | | ... | 2001:1::2 | 2001:2::2 *** Test Cases *** -| 78B-ethip6-ip6base-ipolicemarkbase-dev -| | [Tags] | 78B +| 78B-0c-ethip6-ip6base-ipolicemarkbase-scapy +| | [Tags] | 78B | 0C | | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/ip6/eth2p-ethipv6-ip6base-dev.robot b/tests/vpp/device/ip6/2n1l-10ge2p1x710-ethip6-ip6base-scapy.robot index 752cc80f1d..fe689ae680 100644 --- a/tests/vpp/device/ip6/eth2p-ethipv6-ip6base-dev.robot +++ b/tests/vpp/device/ip6/2n1l-10ge2p1x710-ethip6-ip6base-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,44 +15,51 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP6FWD | BASE | IP6BASE | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP6FWD | BASE | IP6BASE | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv6-ip6base +| ... | ethip6-ip6base | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology \ +| Documentation | **IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing on \ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing on \ | ... | both links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and \ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ | ... | two static IPv6 /64 route entries. -| ... | *[Ver] TG verification:* Test IPv6 packet is sent in one direction \ -| ... | by TG on links to DUT1; on receive TG verifies packet for correctness \ -| ... | and their IPv6 src-addr, dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC2460, RFC4443, RFC4861 +| ... | +| ... | - **[Ver] TG verification:** Test IPv6 packet is sent in one \ +| ... | direction by TG on links to DUT1; on receive TG verifies packet for \ +| ... | correctness and their IPv6 src-addr, dst-addr and MAC addresses. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2460, RFC4443, \ +| ... | RFC4861. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv6 packet routed over DUT1 interfaces;\ +| | ... | - **[Ver]** Make TG send IPv6 packet routed over DUT1 interfaces. \ | | ... | Make TG verify IPv6 packet is correct. | | | | ... | *Arguments:* @@ -78,6 +85,6 @@ | | ... | ${TG_pf2}[0] | ${DUT1_vf2_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 78B-ethipv6-ip6base-dev -| | [Tags] | 78B +| 78B-0c-ethip6-ip6base-scapy +| | [Tags] | 78B | 0C | | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/ip6/regenerate_testcases.py b/tests/vpp/device/ip6/regenerate_testcases.py new file mode 100755 index 0000000000..2cae24e087 --- /dev/null +++ b/tests/vpp/device/ip6/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot", protocol=u"ip6") diff --git a/tests/vpp/device/ip6_tunnels/lisp/eth2p-ethip6lispgpe-ip4base-dev.robot b/tests/vpp/device/ip6_tunnels/lisp/2n1l-10ge2p1x710-ethip6lispgpe-ip4base-scapy.robot index fe9ea06e05..20e11e801c 100644 --- a/tests/vpp/device/ip6_tunnels/lisp/eth2p-ethip6lispgpe-ip4base-dev.robot +++ b/tests/vpp/device/ip6_tunnels/lisp/2n1l-10ge2p1x710-ethip6lispgpe-ip4base-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -17,35 +17,39 @@ | Variables | resources/test_data/lisp/lisp.py | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | IP6FWD | LISP | LISPGPE_IP4o6 | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | IP6FWD | LISP | LISPGPE_IP4o6 | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip6lispgpe-ip4base | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *ip6-lispgpe-ip4 encapsulation test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular\ -| ... | topology with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6-LISPGPE-IPv4-ICMPv4\ -| ... | on DUT1-TG, Eth-IPv4-ICMPv4 on TG-DUTn for IPv6 routing\ +| Documentation | **ip6-lispgpe-ip4 encapsulation test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6-LISPGPE-IPv4-ICMPv4 \ +| ... | on DUT1-TG, Eth-IPv4-ICMPv4 on TG-DUTn for IPv6 routing \ | ... | over LISPoIPv6 tunnel. -| ... | *[Cfg] DUT configuration:* DUT1 and TG(if2) are configured\ -| ... | with IPv6 routing and static routes. LISPoIPv6 tunnel is\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and TG(if2) are configured \ +| ... | with IPv6 routing and static routes. LISPoIPv6 tunnel is \ | ... | configured between DUT1 and TG. -| ... | *[Ver] TG verification:* Test ICMPv4 Echo Request packets are\ -| ... | sent in TG->DUT(if1); On receive TG(if2) verifies packets for\ +| ... | +| ... | - **[Ver] TG verification:** Test ICMPv4 Echo Request packets are \ +| ... | sent in TG->DUT(if1); On receive TG(if2) verifies packets for \ | ... | correctness and their IPv4 src-addr, dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC6830. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC6830. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lisp_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lisp_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -54,11 +58,13 @@ | ${overhead}= | ${54} | ${ot_mode}= | 4to6 | ${is_gpe}= | ${1} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] On DUT1 configure LISP.\ +| | ... | - **[Cfg]** On DUT1 configure LISP. \ | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -88,6 +94,6 @@ | | ... | ${src_rloc6} | ${dst_rloc6} | ${ot_mode} *** Test Cases *** -| 46B-ethip6lispgpe-ip4base-dev -| | [Tags] | 46B -| | frame_size=${46} | phy_cores=${0} +| 78B-0c-ethip6lispgpe-ip4base-scapy +| | [Tags] | 78B | 0C +| | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/ip6_tunnels/lisp/eth2p-ethip6lispgpe-ip6base-dev.robot b/tests/vpp/device/ip6_tunnels/lisp/2n1l-10ge2p1x710-ethip6lispgpe-ip6base-scapy.robot index cf4957b9fd..937bd3c5fe 100644 --- a/tests/vpp/device/ip6_tunnels/lisp/eth2p-ethip6lispgpe-ip6base-dev.robot +++ b/tests/vpp/device/ip6_tunnels/lisp/2n1l-10ge2p1x710-ethip6lispgpe-ip6base-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -17,36 +17,40 @@ | Variables | resources/test_data/lisp/lisp.py | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | IP6FWD | LISP | LISPGPE_IP6o6 | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | IP6FWD | LISP | LISPGPE_IP6o6 | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip6lispgpe-ip6base | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *ip6-lispgpe-ip6 encapsulation test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node\ -| ... | circular topology with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6-LISPGPE-IPv6-ICMPv6\ -| ... | on DUT1-TG, Eth-IPv6-ICMPv6 on TG-DUTn for IPv6 routing\ +| Documentation | **ip6-lispgpe-ip6 encapsulation test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node \ +| ... | circular with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6-LISPGPE-IPv6-ICMPv6 \ +| ... | on DUT1-TG, Eth-IPv6-ICMPv6 on TG-DUTn for IPv6 routing \ | ... | over LISPoIPv6 tunnel. -| ... | *[Cfg] DUT configuration:* DUT1 and TG(if2) are configured\ -| ... | with IPv6 routing and static routes. LISPoIPv6 tunnel is\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and TG(if2) are configured \ +| ... | with IPv6 routing and static routes. LISPoIPv6 tunnel is \ | ... | configured between DUT1 and TG. -| ... | *[Ver] TG verification:* Test ICMPv6 Echo Request packets\ -| ... | are sent in TG->DUT(if1); On receive TG(if2) verifies\ -| ... | packets for correctness and their IPv6 src-addr,\ +| ... | +| ... | - **[Ver] TG verification:** Test ICMPv6 Echo Request packets \ +| ... | are sent in TG->DUT(if1); On receive TG(if2) verifies \ +| ... | packets for correctness and their IPv6 src-addr, \ | ... | dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC6830. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC6830. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lisp_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lisp_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -54,11 +58,13 @@ | ${nic_vfs}= | 0 | ${overhead}= | ${54} | ${is_gpe}= | ${1} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] On DUT1 configure LISP. +| | ... | - **[Cfg]** On DUT1 configure LISP. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer @@ -87,6 +93,6 @@ | | ... | ${src_rloc6} | ${dst_rloc6} *** Test Cases *** -| 62B-ethip6lispgpe-ip6base-dev -| | [Tags] | 62B -| | frame_size=${62} | phy_cores=${0} +| 78B-0c-ethip6lispgpe-ip6base-scapy +| | [Tags] | 78B | 0C +| | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/ip6_tunnels/lisp/regenerate_testcases.py b/tests/vpp/device/ip6_tunnels/lisp/regenerate_testcases.py new file mode 100755 index 0000000000..2cae24e087 --- /dev/null +++ b/tests/vpp/device/ip6_tunnels/lisp/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot", protocol=u"ip6") diff --git a/tests/vpp/device/l2bd/eth2p-ethipv4-l2bdbasemaclrn-iacl1sf-dev.robot b/tests/vpp/device/l2bd/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-iacl1sf-scapy.robot index f205412910..81612d2739 100644 --- a/tests/vpp/device/l2bd/eth2p-ethipv4-l2bdbasemaclrn-iacl1sf-dev.robot +++ b/tests/vpp/device/l2bd/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-iacl1sf-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,34 +15,38 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2BDMACLRN | FEATURE | ACL | ACL_STATEFUL +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | FEATURE | ACL | ACL_STATEFUL | ... | IACL | ACL1 | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-l2bdmaclrn-iacl1sf +| ... | ethip4-l2bdbasemaclrn-iacl1sf | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | acl | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | acl | | Test Template | Local Template | -| Documentation | *L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled.Required ACL rules are applied to input\ -| ... | paths of both DUT1 intefaces.\ -| ... | *[Ver] TG verification:* Test IPv4 packets are sent in one direction \ -| ... | by TG on link to DUT1; on receive TG verifies packets for correctness \ -| ... | and drops as applicable. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on all links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. Required ACL rules are applied to \ +| ... | input paths of both DUT1 intefaces. +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets are sent in one \ +| ... | direction by TG on link to DUT1; on receive TG verifies packets for \ +| ... | correctness and drops as applicable. +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -62,13 +66,15 @@ | ${port_step}= | ${1} | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD config with ACLs. -| | ... | [Ver] Make TG send IPv4 packet in one direction between two\ -| | ... | of its interfaces to be switched by DUT to and from docker.\ +| | ... | - **[Cfg]** DUT runs L2BD config with ACLs. +| | ... | - **[Ver]** Make TG send IPv4 packet in one direction between two \ +| | ... | of its interfaces to be switched by DUT to and from docker. \ | | ... | Make TG verify IPv4 packet is correct. | | | | ... | *Arguments:* @@ -93,6 +99,6 @@ | | ... | ${TG_pf2}[0] | ${TG_pf1_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 64B-ethipv4-l2bdmaclrn-iacl1sf-dev -| | [Tags] | 64B +| 64B-0c-ethip4-l2bdbasemaclrn-iacl1sf-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/l2bd/eth2p-ethipv4-l2bdbasemaclrn-iacl1sl-dev.robot b/tests/vpp/device/l2bd/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-iacl1sl-scapy.robot index eedb5a35dc..bfabea5a8c 100644 --- a/tests/vpp/device/l2bd/eth2p-ethipv4-l2bdbasemaclrn-iacl1sl-dev.robot +++ b/tests/vpp/device/l2bd/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-iacl1sl-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,34 +15,38 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2BDMACLRN | FEATURE | ACL | ACL_STATELESS +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | FEATURE | ACL | ACL_STATELESS | ... | IACL | ACL1 | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-l2bdmaclrn-iacl1sl +| ... | ethip4-l2bdbasemaclrn-iacl1sl | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | acl | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | acl | | Test Template | Local Template | -| Documentation | *L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled.Required ACL rules are applied to input\ -| ... | paths of both DUT1 intefaces.\ -| ... | *[Ver] TG verification:* Test IPv4 packets are sent in one direction \ -| ... | by TG on link to DUT1; on receive TG verifies packets for correctness \ -| ... | and drops as applicable. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on all links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled.Required ACL rules are applied to \ +| ... | input paths of both DUT1 intefaces. +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets are sent in one \ +| ... | direction by TG on link to DUT1; on receive TG verifies packets for \ +| ... | correctness and drops as applicable. +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -62,13 +66,15 @@ | ${port_step}= | ${1} | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD config with ACLs. -| | ... | [Ver] Make TG send IPv4 packet in one direction between two\ -| | ... | of its interfaces to be switched by DUT to and from docker.\ +| | ... | - **[Cfg]** DUT runs L2BD config with ACLs. +| | ... | - **[Ver]** Make TG send IPv4 packet in one direction between two \ +| | ... | of its interfaces to be switched by DUT to and from docker. \ | | ... | Make TG verify IPv4 packet is correct. | | | | ... | *Arguments:* @@ -93,6 +99,6 @@ | | ... | ${TG_pf2}[0] | ${TG_pf1_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 64B-ethipv4-l2bdmaclrn-iacl1sl-dev -| | [Tags] | 64B +| 64B-0c-ethip4-l2bdbasemaclrn-iacl1sl-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/l2bd/eth2p-ethipv4-l2bdbasemaclrn-macip-iacl1sl-dev.robot b/tests/vpp/device/l2bd/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-macip-iacl1sl-scapy.robot index cc3507b7fb..3efe9aac36 100644 --- a/tests/vpp/device/l2bd/eth2p-ethipv4-l2bdbasemaclrn-macip-iacl1sl-dev.robot +++ b/tests/vpp/device/l2bd/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-macip-iacl1sl-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,34 +15,38 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2BDMACLRN | FEATURE | MACIP | ACL_STATELESS +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | FEATURE | MACIP | ACL_STATELESS | ... | IACL | ACL1 | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-l2bdmaclrn-macip-iacl1sl +| ... | ethip4-l2bdbasemaclrn-macip-iacl1sl | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | macipacl | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | macipacl | | Test Template | Local Template | -| Documentation | *L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled.Required MACIP ACL rules are applied to input\ -| ... | paths of both DUT1 intefaces.\ -| ... | *[Ver] TG verification:* Test IPv4 packets are sent in one direction \ -| ... | by TG on link to DUT1; on receive TG verifies packets for correctness \ -| ... | and drops as applicable. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on all links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. Required ACL rules are applied to \ +| ... | input paths of both DUT1 intefaces. +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets are sent in one \ +| ... | direction by TG on link to DUT1; on receive TG verifies packets for \ +| ... | correctness and drops as applicable. +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -63,13 +67,15 @@ | ${tg_mac_mask}= | ff:ff:ff:ff:c0:00 | ${tg_stream1_subnet}= | 10.0.0.0/18 | ${tg_stream2_subnet}= | 20.0.0.0/18 +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD config with ACLs. -| | ... | [Ver] Make TG send IPv4 packet in one direction between two\ -| | ... | of its interfaces to be switched by DUT to and from docker.\ +| | ... | - **[Cfg]** DUT runs L2BD config with ACLs. +| | ... | - **[Ver]** Make TG send IPv4 packet in one direction between two \ +| | ... | of its interfaces to be switched by DUT to and from docker. \ | | ... | Make TG verify IPv4 packet is correct. | | | | ... | *Arguments:* @@ -94,6 +100,6 @@ | | ... | ${TG_pf2}[0] | ${tg_stream1_mac} | ${tg_stream2_mac} *** Test Cases *** -| 64B-ethipv4-l2bdbasemaclrn-iacl1sl-dev -| | [Tags] | 64B +| 64B-0c-ethip4-l2bdbasemaclrn-macip-iacl1sl-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/l2bd/eth2p-ethipv4-l2bdbasemaclrn-oacl1sf-dev.robot b/tests/vpp/device/l2bd/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-oacl1sf-scapy.robot index 5c9b0dcc57..f17d4103e3 100644 --- a/tests/vpp/device/l2bd/eth2p-ethipv4-l2bdbasemaclrn-oacl1sf-dev.robot +++ b/tests/vpp/device/l2bd/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-oacl1sf-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,34 +15,38 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2BDMACLRN | FEATURE | ACL | ACL_STATEFUL +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | FEATURE | ACL | ACL_STATEFUL | ... | OACL | ACL1 | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-l2bdmaclrn-oacl1sf +| ... | ethip4-l2bdbasemaclrn-oacl1sf | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | acl | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | acl | | Test Template | Local Template | -| Documentation | *L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled.Required ACL rules are applied to input\ -| ... | paths of both DUT1 intefaces.\ -| ... | *[Ver] TG verification:* Test IPv4 packets are sent in one direction \ -| ... | by TG on link to DUT1; on receive TG verifies packets for correctness \ -| ... | and drops as applicable. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on all links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled.Required ACL rules are applied to \ +| ... | input paths of both DUT1 intefaces. +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets are sent in one \ +| ... | direction by TG on link to DUT1; on receive TG verifies packets for \ +| ... | correctness and drops as applicable. +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -62,13 +66,15 @@ | ${port_step}= | ${1} | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD config with ACLs. -| | ... | [Ver] Make TG send IPv4 packet in one direction between two\ -| | ... | of its interfaces to be switched by DUT to and from docker.\ +| | ... | - **[Cfg]** DUT runs L2BD config with ACLs. +| | ... | - **[Ver]** Make TG send IPv4 packet in one direction between two \ +| | ... | of its interfaces to be switched by DUT to and from docker. \ | | ... | Make TG verify IPv4 packet is correct. | | | | ... | *Arguments:* @@ -93,6 +99,6 @@ | | ... | ${TG_pf2}[0] | ${TG_pf1_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 64B-ethipv4-l2bdmaclrn-oacl1sf-dev -| | [Tags] | 64B +| 64B-0c-ethip4-l2bdbasemaclrn-oacl1sf-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/l2bd/eth2p-ethipv4-l2bdbasemaclrn-oacl1sl-dev.robot b/tests/vpp/device/l2bd/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-oacl1sl-scapy.robot index b1a4519235..fd33e16202 100644 --- a/tests/vpp/device/l2bd/eth2p-ethipv4-l2bdbasemaclrn-oacl1sl-dev.robot +++ b/tests/vpp/device/l2bd/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-oacl1sl-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,34 +15,38 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2BDMACLRN | FEATURE | ACL | ACL_STATELESS +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | FEATURE | ACL | ACL_STATELESS | ... | OACL | ACL1 | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-l2bdmaclrn-oacl1sl +| ... | ethip4-l2bdbasemaclrn-oacl1sl | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | acl | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | acl | | Test Template | Local Template | -| Documentation | *L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled.Required ACL rules are applied to input\ -| ... | paths of both DUT1 intefaces.\ -| ... | *[Ver] TG verification:* Test IPv4 packets are sent in one direction \ -| ... | by TG on link to DUT1; on receive TG verifies packets for correctness \ -| ... | and drops as applicable. -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on all links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled.Required ACL rules are applied to \ +| ... | input paths of both DUT1 intefaces. +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets are sent in one \ +| ... | direction by TG on link to DUT1; on receive TG verifies packets for \ +| ... | correctness and drops as applicable. +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -62,13 +66,15 @@ | ${port_step}= | ${1} | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD config with ACLs. -| | ... | [Ver] Make TG send IPv4 packet in one direction between two\ -| | ... | of its interfaces to be switched by DUT to and from docker.\ +| | ... | - **[Cfg]** DUT runs L2BD config with ACLs. +| | ... | - **[Ver]** Make TG send IPv4 packet in one direction between two \ +| | ... | of its interfaces to be switched by DUT to and from docker. \ | | ... | Make TG verify IPv4 packet is correct. | | | | ... | *Arguments:* @@ -93,6 +99,6 @@ | | ... | ${TG_pf2}[0] | ${TG_pf1_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 64B-ethipv4-l2bdmaclrn-oacl1sl-dev -| | [Tags] | 64B +| 64B-0c-ethip4-l2bdbasemaclrn-oacl1sl-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/l2bd/eth2p-ethipv4-l2bdbasemaclrn-dev.robot b/tests/vpp/device/l2bd/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-scapy.robot index 1735742f28..0a18369fbe 100644 --- a/tests/vpp/device/l2bd/eth2p-ethipv4-l2bdbasemaclrn-dev.robot +++ b/tests/vpp/device/l2bd/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,46 +15,52 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2BDMACLRN | BASE | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-l2bdbasemaclrn +| ... | ethip4-l2bdbasemaclrn | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *L2 bridge-domain test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology \ +| Documentation | **L2 bridge-domain test cases** +| ... | +| ... | - **[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.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ | ... | Both apply to all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-domain \ -| ... | switching. -| ... | *[Ver] TG verification:* Test IPv4 packets with IP protocol=61 \ -| ... | are sent in both directions by TG on links to DUT1; on receive TG \ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 \ +| ... | cross-connect switching. +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets with IP protocol=61 \ +| ... | are sent in both directions by TG on links to DUT1; on receive TG. \ | ... | verifies packets for correctness and their IPv4 src-addr, \ | ... | dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC792 +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC792 *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv4 packets in both directions between two\ -| | ... | of its interfaces to be switched by DUT to and from docker; verify\ +| | ... | - **[Ver]** Make TG send IPv4 packets in both directions between two \ +| | ... | of its interfaces to be switched by DUT to and from docker; verify \ | | ... | all packets are received. | | | | ... | *Arguments:* @@ -77,6 +83,6 @@ | | ... | ${tg} | ${TG_pf1}[0] | ${TG_pf2}[0] *** Test Cases *** -| 64B-ethipv4-l2bdbasemaclrn-dev -| | [Tags] | 64B +| 64B-0c-ethip4-l2bdbasemaclrn-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/l2bd/eth2p-avf-dot1qip4-l2bdbasemaclrn-dev.robot b/tests/vpp/device/l2bd/eth2p-avf-dot1qip4-l2bdbasemaclrn-dev.robot deleted file mode 100644 index e9c062a4a8..0000000000 --- a/tests/vpp/device/l2bd/eth2p-avf-dot1qip4-l2bdbasemaclrn-dev.robot +++ /dev/null @@ -1,83 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | BASE | DOT1Q | IP4BASE | DRV_AVF -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | avf-dot1qip4-l2bdbasemaclrn -| -| Suite Setup | Setup suite topology interfaces | scapy -| Suite Teardown | Tear down suite -| Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace -| -| Test Template | Local Template -| -| Documentation | *IPv4 routing with IEEE 802.1Q test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. IEEE 802.1Q\ -| ... | tagging is applied on links between TG-DUT1. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | two static IPv4 /30 route entries. DUT1 is tested with ${nic_name}. -| ... | *[Ver] TG verification:* Test IPv4 packets are sent in one direction \ -| ... | by TG on link to DUT1; on receive TG verifies packets for correctness \ -| ... | and drops as applicable. -| ... | *[Ref] Applicable standard specifications:* IEEE 802.1q. - -*** Variables *** -| @{plugins_to_enable}= | avf_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | virtual -| ${nic_driver}= | avf -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 1 -| ${overhead}= | ${4} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Ver] Make TG send IPv4 packets in both directions between two\ -| | ... | of its interfaces to be switched by DUT to and from docker; verify\ -| | ... | all packets are received. -| | -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer. Type: integer -| | ... | - 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 Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs | with_trace=${True} -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize layer dot1q -| | And Initialize L2 bridge domain -| | Then Send IPv4 bidirectionally and verify received packets -| | ... | ${tg} | ${TG_pf1}[0] | ${TG_pf2}[0] - -*** Test Cases *** -| 68B-avf-dot1qip4-l2bdbasemaclrn-dev -| | [Tags] | 68B -| | frame_size=${68} | phy_cores=${0} diff --git a/tests/vpp/device/l2bd/regenerate_testcases.py b/tests/vpp/device/l2bd/regenerate_testcases.py new file mode 100755 index 0000000000..51070e4864 --- /dev/null +++ b/tests/vpp/device/l2bd/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot") diff --git a/tests/vpp/device/l2patch/eth2p-ethip4-l2patch-dev.robot b/tests/vpp/device/l2patch/2n1l-10ge2p1x710-ethip4-l2patch-scapy.robot index 8d5c679d53..4df0c0aecb 100644 --- a/tests/vpp/device/l2patch/eth2p-ethip4-l2patch-dev.robot +++ b/tests/vpp/device/l2patch/2n1l-10ge2p1x710-ethip4-l2patch-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,45 +15,52 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2PATCH | BASE | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | L2PATCH | BASE | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4-l2patch | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *L2 cross-connect test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology \ +| Documentation | **L2 cross-connect test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of \ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of \ | ... | IPv4. Both apply to all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 patch switching. -| ... | *[Ver] TG verification:* Test IPv4 packets with IP protocol=61 \ -| ... | are sent in both directions by TG on links to DUT1; on receive TG \ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 patch \ +| ... | switching. +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets with IP protocol=61 \ +| ... | are sent in both directions by TG on links to DUT1; on receive TG. \ | ... | verifies packets for correctness and their IPv4 src-addr, \ | ... | dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC792 +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC792 *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv4 packets in both directions between two\ -| | ... | of its interfaces to be switched by DUT to and from docker; verify\ +| | ... | - **[Ver]** Make TG send IPv4 packets in both directions between two \ +| | ... | of its interfaces to be switched by DUT to and from docker; verify \ | | ... | all packets are received. | | | | ... | *Arguments:* @@ -76,6 +83,6 @@ | | ... | ${tg} | ${TG_pf1}[0] | ${TG_pf2}[0] *** Test Cases *** -| 64B-ethip4-l2patch-dev -| | [Tags] | 64B +| 64B-0c-ethip4-l2patch-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/l2patch/regenerate_testcases.py b/tests/vpp/device/l2patch/regenerate_testcases.py new file mode 100755 index 0000000000..51070e4864 --- /dev/null +++ b/tests/vpp/device/l2patch/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot") diff --git a/tests/vpp/device/l2xc/eth2p-ethipv4-l2xcbase-dev.robot b/tests/vpp/device/l2xc/2n1l-10ge2p1x710-ethip4-l2xcbase-scapy.robot index fbaeb0b20a..f5d781a4f5 100644 --- a/tests/vpp/device/l2xc/eth2p-ethipv4-l2xcbase-dev.robot +++ b/tests/vpp/device/l2xc/2n1l-10ge2p1x710-ethip4-l2xcbase-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,46 +15,52 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2XCFWD | BASE | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | L2XCFWD | BASE | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-l2xcbase +| ... | ethip4-l2xcbase | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | | Test Template | Local Template | -| Documentation | *L2 cross-connect test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology \ +| Documentation | **L2 cross-connect test cases** +| ... | +| ... | - **[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.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ | ... | Both apply to all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 cross-connect \ -| ... | switching. -| ... | *[Ver] TG verification:* Test IPv4 packets with IP protocol=61 \ -| ... | are sent in both directions by TG on links to DUT1; on receive TG \ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 \ +| ... | cross-connect switching. +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets with IP protocol=61 \ +| ... | are sent in both directions by TG on links to DUT1; on receive TG. \ | ... | verifies packets for correctness and their IPv4 src-addr, \ | ... | dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC792 +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC792 *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Ver] Make TG send IPv4 packets in both directions between two\ -| | ... | of its interfaces to be switched by DUT to and from docker; verify\ +| | ... | - **[Ver]** Make TG send IPv4 packets in both directions between two \ +| | ... | of its interfaces to be switched by DUT to and from docker; verify \ | | ... | all packets are received. | | | | ... | *Arguments:* @@ -77,6 +83,6 @@ | | ... | ${tg} | ${TG_pf1}[0] | ${TG_pf2}[0] *** Test Cases *** -| 64B-ethipv4-l2xcbase-dev -| | [Tags] | 64B +| 64B-0c-ethip4-l2xcbase-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/l2xc/regenerate_testcases.py b/tests/vpp/device/l2xc/regenerate_testcases.py new file mode 100755 index 0000000000..51070e4864 --- /dev/null +++ b/tests/vpp/device/l2xc/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot") diff --git a/tests/vpp/device/srv6/eth2p-ethip6ip6-ip6base-srv6enc1sid-dev.robot b/tests/vpp/device/srv6/2n1l-10ge2p1x710-ethip6ip6-ip6base-srv6enc1sid-scapy.robot index 7c9b37b954..2eb255e140 100644 --- a/tests/vpp/device/srv6/eth2p-ethip6ip6-ip6base-srv6enc1sid-dev.robot +++ b/tests/vpp/device/srv6/2n1l-10ge2p1x710-ethip6ip6-ip6base-srv6enc1sid-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,35 +15,38 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP6FWD | FEATURE | SRv6 | SRv6_1SID | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | SRv6 | SRv6_1SID +| ... | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip6ip6-ip6base-srv6enc1sid | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | srv6 | | Test Template | Local Template | -| Documentation | *Segment routing over IPv6 dataplane with one SID\ -| ... | (SRH not inserted) test suite.* -| -| ... | *[Top] Network topologies:* TG-DUT1 2-node topology with one link\ +| Documentation | **Segment routing over IPv6 dataplane with one SID \ +| ... | (SRH not inserted) test suite.** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1 2-node topology with one link \ | ... | between nodes. -| ... | *[Cfg] DUT configuration:* On DUT1 configure physical interface IPv6\ -| ... | addresses, static ARP record, route and IPv6 forwarding over SRv6\ +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 configure physical interface \ +| ... | IPv6 addresses, static ARP record, route and IPv6 forwarding over SRv6 \ | ... | with one SID - Segment Routing Header not inserted. -| ... | *[Ver] TG verification:* ETH-IP6 packet is sent from TG to DUT1 in one\ -| ... | direction. Packet is received and verified for correctness on TG. Then\ -| ... | ETH-IP6-IP6 packet is sent from TG in opposite direction. Packet is\ -| ... | received and verified for correctness on TG. -| ... | *[Ref] Applicable standard specifications:* SRv6 Network Programming -\ -| ... | draft 3. +| ... | +| ... | - **[Ver] TG verification:** ETH-IP6 packet is sent from TG to DUT1 in \ +| ... | one direction. Packet is received and verified for correctness on TG. \ +| ... | Then ETH-IP6-IP6 packet is sent from TG in opposite direction. Packet \ +| ... | is received and verified for correctness on TG. +| ... | +| ... | - **[Ref] Applicable standard specifications:** SRv6 Network \ +| ... | Programming - draft 3. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -66,14 +69,16 @@ | ${dut2_if1_ip6}= | 2001:3::2 | ${dut2_if2_ip6}= | 2001:2::1 | ${prefix}= | ${64} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT1 is configured with IPv6 routing and static route,\ -| | ... | SR policy and steering policy for one direction and one SR\ +| | ... | - **[Cfg]** DUT1 is configured with IPv6 routing and static route, \ +| | ... | SR policy and steering policy for one direction and one SR \ | | ... | behaviour (function) - End.DX6 - for other direction. -| | ... | [Ver] Make TG send IPv6 packets routed over DUT1 interfaces.\ +| | ... | - **[Ver]** Make TG send IPv6 packets routed over DUT1 interfaces. \ | | ... | Make TG verify IPv6 packets are correct. | | | | ... | *Arguments:* @@ -98,6 +103,6 @@ | | ... | ${dut1_sid1} | ${dut1_sid2} | ${dut2_sid2} | ${dut2_sid1} *** Test Cases *** -| 78B-ethip6ip6-ip6base-srv6enc1sid-dev -| | [Tags] | 78B +| 78B-0c-ethip6ip6-ip6base-srv6enc1sid-scapy +| | [Tags] | 78B | 0C | | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/srv6/eth2p-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-dev.robot b/tests/vpp/device/srv6/2n1l-10ge2p1x710-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-scapy.robot index d78b9a0800..a8e5674271 100644 --- a/tests/vpp/device/srv6/eth2p-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-dev.robot +++ b/tests/vpp/device/srv6/2n1l-10ge2p1x710-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,36 +15,39 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP6FWD | FEATURE | SRv6 | SRv6_2SID_NODECAP +| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | SRv6 | SRv6_2SID_NODECAP | ... | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip6srhip6-ip6base-srv6enc2sids-nodecaps | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | srv6 | | Test Template | Local Template | -| Documentation | *Segment routing over IPv6 dataplane with two SIDs\ -| ... | (SRH inserted) test suite.* -| -| ... | *[Top] Network topologies:* TG-DUT1 2-node topology with one link\ +| Documentation | **Segment routing over IPv6 dataplane with two SIDs \ +| ... | (SRH inserted) test suite.** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1 2-node topology with one link \ | ... | between nodes. -| ... | *[Cfg] DUT configuration:* On DUT1 configure physical interface IPv6\ -| ... | addresses, static ARP record, route and IPv6 forwarding over SRv6\ +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 configure physical interface \ +| ... | IPv6 addresses, static ARP record, route and IPv6 forwarding over SRv6 \ | ... | with two SIDs - Segment Routing Header inserted. -| ... | *[Ver] TG verification:* ETH-IP6 packet is sent from TG to DUT1 in one\ -| ... | direction. Packet is received and verified for correctness on TG. Then\ -| ... | ETH-IP6-IP6 packet is sent from TG in opposite direction. Packet is\ -| ... | received and verified for correctness on TG. -| ... | *[Ref] Applicable standard specifications:* SRv6 Network Programming -\ -| ... | draft 3. +| ... | +| ... | - **[Ver] TG verification:** ETH-IP6 packet is sent from TG to DUT1 in \ +| ... | one direction. Packet is received and verified for correctness on TG. \ +| ... | Then ETH-IP6-IP6 packet is sent from TG in opposite direction. Packet \ +| ... | is received and verified for correctness on TG. +| ... | +| ... | - **[Ref] Applicable standard specifications:** SRv6 Network \ +| ... | Programming - draft 3. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -69,14 +72,16 @@ | ${dut2_if1_ip6}= | 2001:3::2 | ${dut2_if2_ip6}= | 2001:2::1 | ${prefix}= | ${64} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT1 is configured with IPv6 routing and static route,\ -| | ... | SR policy and steering policy for one direction and one SR\ +| | ... | - **[Cfg]** DUT1 is configured with IPv6 routing and static route, \ +| | ... | SR policy and steering policy for one direction and one SR \ | | ... | behaviour (function) - End - for other direction. -| | ... | [Ver] Make TG send IPv6 packets routed over DUT1 interfaces.\ +| | ... | - **[Ver]** Make TG send IPv6 packets routed over DUT1 interfaces. \ | | ... | Make TG verify IPv6 packets are correct. | | | | ... | *Arguments:* @@ -102,6 +107,6 @@ | | ... | ${dut1_sid2_2} | ${dut2_sid1_2} | decap=${False} *** Test Cases *** -| 78B-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-dev -| | [Tags] | 78B +| 78B-0c-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-scapy +| | [Tags] | 78B | 0C | | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/srv6/eth2p-ethip6srhip6-ip6base-srv6enc2sids-dev.robot b/tests/vpp/device/srv6/2n1l-10ge2p1x710-ethip6srhip6-ip6base-srv6enc2sids-scapy.robot index 38ce990d90..a6972e5e10 100644 --- a/tests/vpp/device/srv6/eth2p-ethip6srhip6-ip6base-srv6enc2sids-dev.robot +++ b/tests/vpp/device/srv6/2n1l-10ge2p1x710-ethip6srhip6-ip6base-srv6enc2sids-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,36 +15,39 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP6FWD | FEATURE | SRv6 | SRv6_2SID_DECAP +| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | SRv6 | SRv6_2SID_DECAP | ... | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip6srhip6-ip6base-srv6enc2sids | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace +| Test Teardown | Tear down test | packet_trace | telemetry | srv6 | | Test Template | Local Template | -| Documentation | *Segment routing over IPv6 dataplane with two SIDs\ -| ... | (SRH inserted) test suite.* -| -| ... | *[Top] Network topologies:* TG-DUT1 2-node topology with one link\ +| Documentation | **Segment routing over IPv6 dataplane with two SIDs \ +| ... | (SRH inserted) test suite.** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1 2-node topology with one link \ | ... | between nodes. -| ... | *[Cfg] DUT configuration:* On DUT1 configure physical interface IPv6\ -| ... | addresses, static ARP record, route and IPv6 forwarding over SRv6\ +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 configure physical interface \ +| ... | IPv6 addresses, static ARP record, route and IPv6 forwarding over SRv6 \ | ... | with two SIDs - Segment Routing Header inserted. -| ... | *[Ver] TG verification:* ETH-IP6 packet is sent from TG to DUT1 in one\ -| ... | direction. Packet is received and verified for correctness on TG. Then\ -| ... | ETH-IP6-IP6 packet is sent from TG in opposite direction. Packet is\ -| ... | received and verified for correctness on TG. -| ... | *[Ref] Applicable standard specifications:* SRv6 Network Programming -\ -| ... | draft 3. +| ... | +| ... | - **[Ver] TG verification:** ETH-IP6 packet is sent from TG to DUT1 in \ +| ... | one direction. Packet is received and verified for correctness on TG. \ +| ... | Then ETH-IP6-IP6 packet is sent from TG in opposite direction. Packet \ +| ... | is received and verified for correctness on TG. +| ... | +| ... | - **[Ref] Applicable standard specifications:** SRv6 Network \ +| ... | Programming - draft 3. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -69,14 +72,16 @@ | ${dut2_if1_ip6}= | 2001:3::2 | ${dut2_if2_ip6}= | 2001:2::1 | ${prefix}= | ${64} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT1 is configured with IPv6 routing and static route,\ -| | ... | SR policy and steering policy for one direction and two SR\ +| | ... | - **[Cfg]** DUT1 is configured with IPv6 routing and static route, \ +| | ... | SR policy and steering policy for one direction and two SR \ | | ... | behaviours (functions) - End and End.DX6 - for other direction. -| | ... | [Ver] Make TG send IPv6 packets routed over DUT1 interfaces.\ +| | ... | - **[Ver]** Make TG send IPv6 packets routed over DUT1 interfaces. \ | | ... | Make TG verify IPv6 packets are correct. | | | | ... | *Arguments:* @@ -102,6 +107,6 @@ | | ... | ${dut1_sid2_2} | ${dut2_sid1_2} *** Test Cases *** -| 78B-ethip6srhip6-ip6base-srv6enc2sids-dev -| | [Tags] | 78B +| 78B-0c-ethip6srhip6-ip6base-srv6enc2sids-scapy +| | [Tags] | 78B | 0C | | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/srv6/eth2p-ethip6srhip6-ip6base-srv6proxy-dyn-dev.robot b/tests/vpp/device/srv6/2n1l-10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-dyn-scapy.robot index 0e62ae3ad3..f0466ea8a7 100644 --- a/tests/vpp/device/srv6/eth2p-ethip6srhip6-ip6base-srv6proxy-dyn-dev.robot +++ b/tests/vpp/device/srv6/2n1l-10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-dyn-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,36 +15,40 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP6FWD | FEATURE | SRv6 | SRv6_PROXY +| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | SRv6 | SRv6_PROXY | ... | SRv6_PROXY_DYN | MEMIF | DOCKER | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip6srhip6-ip6base-srv6proxy-dyn | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | container +| Test Teardown | Tear down test | packet_trace | telemetry | container | srv6 | | Test Template | Local Template | -| Documentation | *Segment routing over IPv6 dataplane with Dynamic\ -| ... | SRv6 proxy test suite.* -| -| ... | *[Top] Network topologies:* TG-DUT1 2-node topology with one link\ +| Documentation | **Segment routing over IPv6 dataplane with Dynamic \ +| ... | SRv6 proxy test suite.** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1 2-node topology with one link \ | ... | between nodes. -| ... | *[Cfg] DUT configuration:* On DUT1 configure physical interface IPv6\ -| ... | addresses, static ARP record, route and IPv6 forwarding over SRv6\ +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 configure physical interface \ +| ... | IPv6 addresses, static ARP record, route and IPv6 forwarding over SRv6 \ | ... | with three SIDs - Segment Routing Header inserted. -| ... | *[Ver] TG verification:* ETH-IP6 packet is sent from TG to DUT1 in one\ -| ... | direction. Packet is received and verified for correctness on TG. Then\ -| ... | ETH-IP6-IP6 packet is sent from TG in opposite direction. Packet is\ -| ... | received and verified for correctness on TG. -| ... | *[Ref] Applicable standard specifications:* SRv6 Network Programming -\ -| ... | draft 3. +| ... | +| ... | - **[Ver] TG verification:** ETH-IP6 packet is sent from TG to DUT1 in \ +| ... | one direction. Packet is received and verified for correctness on TG. \ +| ... | Then ETH-IP6-IP6 packet is sent from TG in opposite direction. Packet \ +| ... | is received and verified for correctness on TG. +| ... | +| ... | - **[Ref] Applicable standard specifications:** SRv6 Network \ +| ... | Programming - draft 3. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so | srv6ad_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so +| ... | srv6ad_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -81,14 +85,16 @@ # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain_functional +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT1 is configured with IPv6 routing and static route,\ -| | ... | SR policy and steering policy for one direction and one SR\ +| | ... | - **[Cfg]** DUT1 is configured with IPv6 routing and static route, \ +| | ... | SR policy and steering policy for one direction and one SR \ | | ... | behaviour (function) - End.AD - for other direction. -| | ... | [Ver] Make TG send IPv6 packets routed over DUT1 interfaces.\ +| | ... | - **[Ver]** Make TG send IPv6 packets routed over DUT1 interfaces. \ | | ... | Make TG verify IPv6 packets are correct. | | | | ... | *Arguments:* @@ -116,6 +122,6 @@ | | ... | tg_dstsid3=${out_sid1_2} | dut_dstsid3=${out_sid2_2} *** Test Cases *** -| 78B-ethip6srhip6-ip6base-srv6proxy-dyn-dev -| | [Tags] | 78B +| 78B-0c-ethip6srhip6-ip6base-srv6proxy-dyn-scapy +| | [Tags] | 78B | 0C | | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/srv6/eth2p-ethip6srhip6-ip6base-srv6proxy-masq-dev.robot b/tests/vpp/device/srv6/2n1l-10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-masq-scapy.robot index f751b73016..106bce9d1e 100644 --- a/tests/vpp/device/srv6/eth2p-ethip6srhip6-ip6base-srv6proxy-masq-dev.robot +++ b/tests/vpp/device/srv6/2n1l-10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-masq-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,36 +15,40 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP6FWD | FEATURE | SRv6 | SRv6_PROXY +| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | SRv6 | SRv6_PROXY | ... | SRv6_PROXY_MASQ | MEMIF | DOCKER | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip6srhip6-ip6base-srv6proxy-masq | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | container +| Test Teardown | Tear down test | packet_trace | telemetry | container | srv6 | | Test Template | Local Template | -| Documentation | *Segment routing over IPv6 dataplane with Masquerading\ -| ... | SRv6 proxy test cases* -| -| ... | *[Top] Network topologies:* TG-DUT1 2-node topology with one link\ +| Documentation | **Segment routing over IPv6 dataplane with Masquerading \ +| ... | SRv6 proxy test cases** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1 2-node topology with one link \ | ... | between nodes. -| ... | *[Cfg] DUT configuration:* On DUT1 configure physical interface IPv6\ -| ... | addresses, static ARP record, route and IPv6 forwarding over SRv6\ +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 configure physical interface \ +| ... | IPv6 addresses, static ARP record, route and IPv6 forwarding over SRv6 \ | ... | with three SIDs - Segment Routing Header inserted. -| ... | *[Ver] TG verification:* ETH-IP6 packet is sent from TG to DUT1 in one\ -| ... | direction. Packet is received and verified for correctness on TG. Then\ -| ... | ETH-IP6-IP6 packet is sent from TG in opposite direction. Packet is\ -| ... | received and verified for correctness on TG. -| ... | *[Ref] Applicable standard specifications:* SRv6 Network Programming -\ -| ... | draft 3. +| ... | +| ... | - **[Ver] TG verification:** ETH-IP6 packet is sent from TG to DUT1 in \ +| ... | one direction. Packet is received and verified for correctness on TG. \ +| ... | Then ETH-IP6-IP6 packet is sent from TG in opposite direction. Packet \ +| ... | is received and verified for correctness on TG. +| ... | +| ... | - **[Ref] Applicable standard specifications:** SRv6 Network \ +| ... | Programming - draft 3. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so | srv6am_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so +| ... | srv6am_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -81,14 +85,16 @@ # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain_functional +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT1 is configured with IPv6 routing and static route,\ -| | ... | SR policy and steering policy for one direction and one SR\ +| | ... | - **[Cfg]** DUT1 is configured with IPv6 routing and static route, \ +| | ... | SR policy and steering policy for one direction and one SR \ | | ... | behaviour (function) - End.AM - for other direction. -| | ... | [Ver] Make TG send IPv6 packets routed over DUT1 interfaces.\ +| | ... | - **[Ver]** Make TG send IPv6 packets routed over DUT1 interfaces. \ | | ... | Make TG verify IPv6 packets are correct. | | | | ... | *Arguments:* @@ -116,6 +122,6 @@ | | ... | tg_dstsid3=${out_sid1_2} | dut_dstsid3=${out_sid2_2} *** Test Cases *** -| 78B-ethip6srhip6-ip6base-srv6proxy-masq-dev -| | [Tags] | 78B +| 78B-0c-ethip6srhip6-ip6base-srv6proxy-masq-scapy +| | [Tags] | 78B | 0C | | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/srv6/eth2p-ethip6srhip6-ip6base-srv6proxy-stat-dev.robot b/tests/vpp/device/srv6/2n1l-10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-stat-scapy.robot index 56b43a527e..34c2ff940a 100644 --- a/tests/vpp/device/srv6/eth2p-ethip6srhip6-ip6base-srv6proxy-stat-dev.robot +++ b/tests/vpp/device/srv6/2n1l-10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-stat-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,36 +15,40 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP6FWD | FEATURE | SRv6 | SRv6_PROXY +| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | SRv6 | SRv6_PROXY | ... | SRv6_PROXY_STAT | MEMIF | DOCKER | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip6srhip6-ip6base-srv6proxy-stat | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | container +| Test Teardown | Tear down test | packet_trace | telemetry | container | srv6 | | Test Template | Local Template | -| Documentation | *Segment routing over IPv6 dataplane with Static\ -| ... | SRv6 proxy test cases.* -| -| ... | *[Top] Network topologies:* TG-DUT1 2-node topology with one link\ +| Documentation | **Segment routing over IPv6 dataplane with Static \ +| ... | SRv6 proxy test cases.** +| ... | +| ... | - **[Top] Network topologies:** TG-DUT1 2-node topology with one link \ | ... | between nodes. -| ... | *[Cfg] DUT configuration:* On DUT1 configure physical interface IPv6\ -| ... | addresses, static ARP record, route and IPv6 forwarding over SRv6\ +| ... | +| ... | - **[Cfg] DUT configuration:** On DUT1 configure physical interface \ +| ... | IPv6 addresses, static ARP record, route and IPv6 forwarding over SRv6 \ | ... | with three SIDs - Segment Routing Header inserted. -| ... | *[Ver] TG verification:* ETH-IP6 packet is sent from TG to DUT1 in one\ -| ... | direction. Packet is received and verified for correctness on TG. Then\ -| ... | ETH-IP6-IP6 packet is sent from TG in opposite direction. Packet is\ -| ... | received and verified for correctness on TG. -| ... | *[Ref] Applicable standard specifications:* SRv6 Network Programming -\ -| ... | draft 3. +| ... | +| ... | - **[Ver] TG verification:** ETH-IP6 packet is sent from TG to DUT1 in \ +| ... | one direction. Packet is received and verified for correctness on TG. \ +| ... | Then ETH-IP6-IP6 packet is sent from TG in opposite direction. Packet \ +| ... | is received and verified for correctness on TG. +| ... | +| ... | - **[Ref] Applicable standard specifications:** SRv6 Network \ +| ... | Programming - draft 3. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so | srv6as_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so +| ... | srv6as_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -81,14 +85,16 @@ # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain_functional +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT1 is configured with IPv6 routing and static route,\ -| | ... | SR policy and steering policy for one direction and one SR\ +| | ... | - **[Cfg]** DUT1 is configured with IPv6 routing and static route, \ +| | ... | SR policy and steering policy for one direction and one SR \ | | ... | behaviour (function) - End.AS - for other direction. -| | ... | [Ver] Make TG send IPv6 packets routed over DUT1 interfaces.\ +| | ... | - **[Ver]** Make TG send IPv6 packets routed over DUT1 interfaces. \ | | ... | Make TG verify IPv6 packets are correct. | | | | ... | *Arguments:* @@ -117,6 +123,6 @@ | | ... | static_proxy=${True} *** Test Cases *** -| 78B-ethip6srhip6-ip6base-srv6proxy-stat-dev -| | [Tags] | 78B +| 78B-0c-ethip6srhip6-ip6base-srv6proxy-stat-scapy +| | [Tags] | 78B | 0C | | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/srv6/regenerate_testcases.py b/tests/vpp/device/srv6/regenerate_testcases.py new file mode 100755 index 0000000000..2cae24e087 --- /dev/null +++ b/tests/vpp/device/srv6/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot", protocol=u"ip6") diff --git a/tests/vpp/device/stats/eth2p-ethipv4-l2xcbase-stats-dev.robot b/tests/vpp/device/stats/eth2p-ethipv4-l2xcbase-stats-dev.robot deleted file mode 100644 index b37836ea05..0000000000 --- a/tests/vpp/device/stats/eth2p-ethipv4-l2xcbase-stats-dev.robot +++ /dev/null @@ -1,104 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2XCFWD | BASE | STATS | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-l2xcbase-stats -| -| Suite Setup | Setup suite topology interfaces | scapy -| Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace -| -| Test Template | Local Template -| -| Documentation | *VPP statistic commands test cases* -| -| ... | *[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.\ -| ... | Both apply to all links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 cross-connect \ -| ... | switching. -| ... | *[Ver] TG verification:* Test IPv4 packets with IP protocol=61 \ -| ... | are sent in both directions by TG on links to DUT1; on receive TG \ -| ... | verifies packets for correctness and their IPv4 src-addr, dst-addr \ -| ... | and MAC addresses. Run VPP statistic commands used in performance tests. -| ... | *[Ref] Applicable standard specifications:* RFC792 - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | virtual -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${overhead}= | ${0} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Ver] Make TG send IPv4 packets in both directions between two\ -| | ... | of its interfaces to be switched by DUT to and from docker; verify\ -| | ... | all packets are received. Run VPP statistic commands. -| | -| | ... | *Arguments:* -| | ... | - frame_size - Framesize in Bytes in integer. Type: integer -| | ... | - 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 Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs | with_trace=${True} -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize L2 cross connect -| | VPP Enable Elog Traces On All DUTs | ${nodes} -| | Then Send IPv4 bidirectionally and verify received packets -| | ... | ${tg} | ${TG_pf1}[0] | ${TG_pf2}[0] -| | And Verify statistic commands - -| Verify statistic commands -| | ${results}= | Create List -| | ${status} | ${value}= | Run Keyword And Ignore Error -| | ... | VPP Show Runtime On All DUTs | ${nodes} -| | Append To List | ${results} | ${status} -| | ${status} | ${value}= | Run Keyword And Ignore Error -| | ... | Show Statistics On All DUTs | ${nodes} -| | Append To List | ${results} | ${status} -| | ${status} | ${value}= | Run Keyword And Ignore Error -| | ... | Show Event Logger On All DUTs | ${nodes} -| | Append To List | ${results} | ${status} -| | ${status} | ${value}= | Run Keyword And Ignore Error -| | ... | VPP Clear Runtime On All DUTs | ${nodes} -| | Append To List | ${results} | ${status} -| | ${status} | ${value}= | Run Keyword And Ignore Error -| | ... | Clear Statistics On All DUTs | ${nodes} -| | Append To List | ${results} | ${status} -| | Should Not Contain Match | ${results} | FAIL -| | ... | msg=At least one of statistic commands failed! - -*** Test Cases *** -| 64B-ethipv4-l2xcbase-stats-dev -| | [Tags] | 64B -| | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/vm_vhost/ip4/eth2p-ethipv4-ip4base-eth-2vhost-1vm-dev.robot b/tests/vpp/device/vm_vhost/ethip4/2n1l-10ge2p1x710-ethip4-ip4base-eth-2vhost-1vm-scapy.robot index de34c1e19c..24ea26aadf 100644 --- a/tests/vpp/device/vm_vhost/ip4/eth2p-ethipv4-ip4base-eth-2vhost-1vm-dev.robot +++ b/tests/vpp/device/vm_vhost/ethip4/2n1l-10ge2p1x710-ethip4-ip4base-eth-2vhost-1vm-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,34 +15,40 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP4FWD | BASE | VHOST | 1VM | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | BASE | VHOST | 1VM | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-ip4base-eth-2vhost-1vm +| ... | ethip4-ip4base-eth-2vhost-1vm | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | vhost +| Test Teardown | Tear down test | packet_trace | telemetry | vhost | | Test Template | Local Template | -| Documentation | *IPv4 routing test cases with vhost user interface* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with \ -| ... | VM and single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing on both links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and \ -| ... | two static IPv4 /24 route entries. Qemu Guest is connected to VPP via \ -| ... | vhost-user interfaces. Guest is running VPP ip4 interconnecting \ +| Documentation | **IPv4 routing test cases with vhost user interface** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with VM and single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing on both \ +| ... | links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and two static IPv4 /24 route entries. Qemu Guest is connected to VPP \ +| ... | via vhost-user interfaces. Guest is running VPP ip4 interconnecting \ | ... | vhost-user interfaces. -| ... | *[Ver] TG verification:* Test IPv4 packet with IP protocol=61 is sent \ -| ... | in one direction by TG on links to DUT1; on receive TG verifies packet \ -| ... | for correctness and their IPv4 src-addr, dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC791, RFC826, RFC792 +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packet with IP protocol=61 is \ +| ... | sent in one direction by TG on links to DUT1; on receive TG verifies \ +| ... | packet for correctness and their IPv4 src-addr, dst-addr and MAC \ +| ... | addresses. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC791, RFC826, RFC792 *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -55,6 +61,8 @@ | ${nf_dtcr} | ${1} | ${tg_if1_ip}= | 10.10.10.2 | ${tg_if2_ip}= | 20.20.20.2 +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template @@ -90,6 +98,6 @@ | | ... | ${TG_pf2}[0] | ${DUT1_vf2_mac}[0] | ${TG_pf2_mac}[0] *** Test Cases *** -| 64B-ethip4-ip4base-eth-2vhost-1vm-dev -| | [Tags] | 64B +| 64B-0c-ethip4-ip4base-eth-2vhost-1vm-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/vm_vhost/l2bd/eth2p-ethipv4-l2bdbasemaclrn-eth-2vhost-1vm-dev.robot b/tests/vpp/device/vm_vhost/ethip4/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-eth-2vhost-1vm-scapy.robot index 2f3eb28d32..c6f6fd474a 100644 --- a/tests/vpp/device/vm_vhost/l2bd/eth2p-ethipv4-l2bdbasemaclrn-eth-2vhost-1vm-dev.robot +++ b/tests/vpp/device/vm_vhost/ethip4/2n1l-10ge2p1x710-ethip4-l2bdbasemaclrn-eth-2vhost-1vm-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,37 +15,41 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2BDMACLRN | BASE | VHOST | 1VM +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | VHOST | 1VM | ... | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-l2bdbasemaclrn-eth-2vhost-1vm +| ... | ethip4-l2bdbasemaclrn-eth-2vhost-1vm | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | vhost +| Test Teardown | Tear down test | packet_trace | telemetry | vhost | | Test Template | Local Template | -| Documentation | *L2 bridge-domain test cases with vhost user interface* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with \ -| ... | VM and single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 \ +| Documentation | **L2 bridge-domain test cases with vhost user interface** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with VM and single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with two L2 \ | ... | bridge-domains (L2BD) switching combined with MAC learning enabled. \ | ... | Qemu Guest is connected to VPP via vhost-user interfaces. Guest is \ | ... | configured with VPP l2 cross-connect interconnecting vhost-user \ | ... | interfaces. -| ... | *[Ver] TG verification:* Test IPv4 packets with IP protocol=61 are \ -| ... | sent in both directions by TG on links to DUT1 via VM; on receive TG \ +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets with IP protocol=61 are \ +| ... | sent in both directions by TG on links to DUT1 via VM; on receive TG. \ | ... | verifies packets for correctness and their IPv4 src-addr, dst-addr \ | ... | and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC792 +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC792 *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -56,14 +60,19 @@ | ${nf_nodes}= | ${1} | ${nf_dtc} | ${1} | ${nf_dtcr} | ${1} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Top] TG=DUT=VM. [Enc] Eth-IPv4. [Cfg] On DUT1 configure \ +| | ... | - **[Top]** TG=DUT=VM. +| | ... | - **[Enc]** Eth-IPv4. +| | ... | - **[Cfg]** On DUT1 configure \ | | ... | two L2BDs with MAC learning, each with vhost-user i/f to local \ | | ... | VM and i/f to TG; configure VPP in VM to loop pkts back betwen its \ -| | ... | two virtio i/fs. [Ver] Make TG verify IPv4 packets are switched \ +| | ... | two virtio i/fs. +| | ... | - **[Ver]** Make TG verify IPv4 packets are switched \ | | ... | thru DUT1 and VM in both directions and are correct on receive. | | | | ... | *Arguments:* @@ -90,6 +99,6 @@ | | ... | ${TG_pf1}[0] | ${TG_pf2}[0] *** Test Cases *** -| 64B-ethipv4-l2bdbasemaclrn-eth-2vhost-1vm-dev -| | [Tags] | 64B +| 64B-0c-ethip4-l2bdbasemaclrn-eth-2vhost-1vm-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/vm_vhost/l2xc/eth2p-ethipv4-l2xcbase-eth-2vhost-1vm-dev.robot b/tests/vpp/device/vm_vhost/ethip4/2n1l-10ge2p1x710-ethip4-l2xcbase-eth-2vhost-1vm-scapy.robot index d84fe18f0f..bcd8f46774 100644 --- a/tests/vpp/device/vm_vhost/l2xc/eth2p-ethipv4-l2xcbase-eth-2vhost-1vm-dev.robot +++ b/tests/vpp/device/vm_vhost/ethip4/2n1l-10ge2p1x710-ethip4-l2xcbase-eth-2vhost-1vm-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,35 +15,39 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | L2XCFWD | BASE | VHOST | 1VM | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | L2XCFWD | BASE | VHOST | 1VM | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv4-l2xcbase-eth-2vhost-1vm +| ... | ethip4-l2xcbase-eth-2vhost-1vm | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | vhost +| Test Teardown | Tear down test | packet_trace | telemetry | vhost | | Test Template | Local Template | -| Documentation | *L2 cross-connect test cases with vhost user interface* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with \ -| ... | VM and single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 cross-connect \ +| Documentation | **L2 cross-connect test cases with vhost user interface** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with VM and single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 \ | ... | (L2XC) switching. Qemu Guest is connected to VPP via vhost-user \ -| ... | interfaces. Guest is configured with VPP l2 cross-connect \ +| ... | interfaces. Guest is configured with VPP l2 cross-connect. \ | ... | interconnecting vhost-user interfaces. -| ... | *[Ver] TG verification:* Test IPv4 packets with IP protocol=61 are \ -| ... | sent in both directions by TG on links to DUT1 via VM; on receive TG \ +| ... | +| ... | - **[Ver] TG verification:** Test IPv4 packets with IP protocol=61 are \ +| ... | sent in both directions by TG on links to DUT1 via VM; on receive TG. \ | ... | verifies packets for correctness and their IPv4 src-addr, dst-addr \ | ... | and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC792 +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC792 *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -54,13 +58,18 @@ | ${nf_nodes}= | ${1} | ${nf_dtc} | ${1} | ${nf_dtcr} | ${1} +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template | | [Documentation] -| | ... | [Top] TG=DUT=VM. [Enc] Eth-IPv4. [Cfg] On DUT configure \ +| | ... | - **[Top]** TG=DUT=VM. +| | ... | - **[Enc]** Eth-IPv4. +| | ... | - **[Cfg]** On DUT configure \ | | ... | two L2 cross-connects (L2XC), each with one untagged interface \ -| | ... | to TG and untagged i/f to local VM over vhost-user. [Ver] Make \ +| | ... | to TG and untagged i/f to local VM over vhost-user. +| | ... | - **[Ver]** Make \ | | ... | TG send IPv4 packets in both directions between two of its \ | | ... | i/fs to be switched by DUT to and from VM; verify all packets \ | | ... | are received. [Ref] @@ -88,6 +97,6 @@ | | ... | ${TG_pf1}[0] | ${TG_pf2}[0] *** Test Cases *** -| 64B-ethipv4-l2xcbase-eth-2vhost-1vm-dev -| | [Tags] | 64B +| 64B-0c-ethip4-l2xcbase-eth-2vhost-1vm-scapy +| | [Tags] | 64B | 0C | | frame_size=${64} | phy_cores=${0} diff --git a/tests/vpp/device/vm_vhost/ethip4/regenerate_testcases.py b/tests/vpp/device/vm_vhost/ethip4/regenerate_testcases.py new file mode 100755 index 0000000000..51070e4864 --- /dev/null +++ b/tests/vpp/device/vm_vhost/ethip4/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot") diff --git a/tests/vpp/device/vm_vhost/ip6/eth2p-ethipv6-ip6base-eth-2vhost-1vm-dev.robot b/tests/vpp/device/vm_vhost/ethip6/2n1l-10ge2p1x710-ethip6-ip6base-eth-2vhost-1vm-scapy.robot index 6db832f7f9..9fd6f69b0a 100644 --- a/tests/vpp/device/vm_vhost/ip6/eth2p-ethipv6-ip6base-eth-2vhost-1vm-dev.robot +++ b/tests/vpp/device/vm_vhost/ethip6/2n1l-10ge2p1x710-ethip6-ip6base-eth-2vhost-1vm-scapy.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2022 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: @@ -15,34 +15,40 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY -| ... | NIC_Virtual | ETH | IP6FWD | BASE | VHOST | 1VM | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethipv6-ip6base-eth-2vhost-1vm +| ... | NIC_Intel-X710 | ETH | IP6FWD | BASE | VHOST | 1VM | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | EXPECTED_FAILING +| ... | ethip6-ip6base-eth-2vhost-1vm | | Suite Setup | Setup suite topology interfaces | scapy | Test Setup | Setup test -| Test Teardown | Tear down test | packet_trace | vhost +| Test Teardown | Tear down test | packet_trace | telemetry | vhost | | Test Template | Local Template | -| Documentation | *IPv4 routing test cases with vhost user interface* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with \ -| ... | VM and single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing on both links. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and \ +| Documentation | **IPv4 routing test cases with vhost user interface** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with VM and single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing on both \ +| ... | links. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ | ... | two static IPv6 /64 route entries. Qemu Guest is connected to VPP via \ | ... | vhost-user interfaces. Guest is running VPP ip6 interconnecting \ | ... | vhost-user interfaces. -| ... | *[Ver] TG verification:* Test IPv6 packets are sent in one direction \ -| ... | by TG on links to DUT1; on receive TG verifies packets for correctness \ -| ... | and their IPv6 src-addr, dst-addr and MAC addresses. -| ... | *[Ref] Applicable standard specifications:* RFC2460, RFC4443, RFC4861 +| ... | +| ... | - **[Ver] TG verification:** Test IPv6 packets are sent in one \ +| ... | direction by TG on links to DUT1; on receive TG verifies packets for \ +| ... | correctness and their IPv6 src-addr, dst-addr and MAC addresses. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2460, RFC4443, \ +| ... | RFC4861. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} -| ${nic_name}= | virtual +| ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 @@ -55,6 +61,8 @@ | ${nf_dtcr} | ${1} | ${tg_if1_ip}= | 2001:1::2 | ${tg_if2_ip}= | 2001:2::2 +# Telemetry +| ${telemetry_profile}= | vppctl_test_teardown *** Keywords *** | Local Template @@ -89,8 +97,7 @@ | | ... | ${TG_pf1}[0] | ${TG_pf1_mac}[0] | ${DUT1_vf1_mac}[0] | | ... | ${TG_pf2}[0] | ${DUT1_vf2_mac}[0] | ${TG_pf2_mac}[0] - *** Test Cases *** -| 64B-ethipv6-ip6base-eth-2vhost-1vm-dev -| | [Tags] | 64B -| | frame_size=${64} | phy_cores=${0} +| 78B-0c-ethip6-ip6base-eth-2vhost-1vm-scapy +| | [Tags] | 78B | 0C +| | frame_size=${78} | phy_cores=${0} diff --git a/tests/vpp/device/vm_vhost/ethip6/regenerate_testcases.py b/tests/vpp/device/vm_vhost/ethip6/regenerate_testcases.py new file mode 100755 index 0000000000..2cae24e087 --- /dev/null +++ b/tests/vpp/device/vm_vhost/ethip6/regenerate_testcases.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python3 + +# Copyright (c) 2022 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(u"*.robot", protocol=u"ip6") diff --git a/tests/vpp/perf/__init__.robot b/tests/vpp/perf/__init__.robot index 2b38b2a4ee..04b47f9746 100644 --- a/tests/vpp/perf/__init__.robot +++ b/tests/vpp/perf/__init__.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -18,21 +18,23 @@ | Library | resources.libraries.python.PapiExecutor.Disconnector | Library | resources.libraries.python.SetupFramework | Library | resources.libraries.python.SetupFramework.CleanupFramework -| Library | resources.libraries.python.CpuUtils | -| Suite Setup | Run Keywords | Setup Global Variables +| Suite Setup | Run Keywords | Start Suite Setup Export +| ... | AND | Setup Global Variables | ... | AND | Setup Framework | ${nodes} | ... | AND | Setup Corekeeper on All Nodes | ${nodes} | ... | AND | Install Vpp on All Duts | ${nodes} | ${packages_dir} -| ... | AND | Verify Vpp on All Duts | ${nodes} -| ... | AND | Verify UIO Driver on all DUTs | ${nodes} +| ... | AND | Init Vpp Startup Configuration on All Duts | ${nodes} | ... | AND | Show Vpp Version on All Duts | ${nodes} | ... | AND | Get CPU Info from All Nodes | ${nodes} | ... | AND | Update All Interface Data on All Nodes | ${nodes} | ... | skip_tg=${True} +| ... | AND | Finalize Suite Setup Export | -| Suite Teardown | Run Keywords | Disconnect All Papi Connections +| Suite Teardown | Run Keywords | Start Suite Teardown Export +| ... | AND | Disconnect All Papi Connections | ... | AND | Cleanup Framework | ${nodes} +| ... | AND | Finalize Suite Teardown Export *** Keywords *** | Setup Global Variables @@ -40,24 +42,19 @@ | | ... | Setup suite Variables. Variables are used across performance testing. | | | | ... | _NOTE:_ This KW sets following suite variables: -| | ... | - pre_stats - Statistics actions before traffic. -| | ... | - post_stats - Statistics actions after traffic. -| | ... | - pre_run_stats - Statistics actions during traffic before timer. -| | ... | - post_run_stats - Statistics actions during traffic after timer. +| | ... | - stat_runtime - Statistics actions within traffic trial. +| | ... | - stat_pre_trial - Statistics actions before traffic trials. +| | ... | - stat_post_trial - Statistics actions after traffic trials. | | ... | - packages_dir - Path to directory where VPP packages are stored. | | -| | ${pre_stats}= | Create List -| | ... | clear-show-runtime-with-traffic | vpp-clear-stats -| | ... | vpp-enable-packettrace | vpp-enable-elog -| | ${post_stats}= | Create List -| | ... | vpp-show-stats | vpp-show-packettrace | vpp-show-elog -| | ${pre_run_stats}= | Create List -| | ... | vpp-clear-runtime -| | ${post_run_stats}= | Create List -| | ... | vpp-show-runtime | bash-perf-stat -| | Set Global Variable | ${pre_stats} -| | Set Global Variable | ${post_stats} -| | Set Global Variable | ${pre_run_stats} -| | Set Global Variable | ${post_run_stats} +| | ${stat_runtime}= | Create List +| | ... | vpp-runtime | perf-stat-runtime +| | ${stat_pre_trial}= | Create List +| | ... | vpp-clear-stats | vpp-enable-packettrace +| | ${stat_post_trial}= | Create List +| | ... | vpp-show-stats | vpp-show-packettrace +| | Set Global Variable | ${stat_runtime} +| | Set Global Variable | ${stat_pre_trial} +| | Set Global Variable | ${stat_post_trial} | | Set Global Variable | ${packages_dir} | /tmp/openvpp-testing/download_dir/ | | Set Global Variable | ${nodes} diff --git a/tests/vpp/perf/container_memif/10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr.robot b/tests/vpp/perf/container_memif/10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr.robot index c03f90cf47..26b41b124f 100644 --- a/tests/vpp/perf/container_memif/10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr.robot +++ b/tests/vpp/perf/container_memif/10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,34 +27,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with memif and IEEE 802.1Q test -| ... | cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. IEEE\ +| Documentation | **RFC2544: Pkt throughput L2BD with memif and IEEE 802.1Q \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 bridge domain. IEEE \ | ... | 802.1Q tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with two L2\ -| ... | bridge domains and MAC learning enabled. 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 3 cores allocated from\ -| ... | pool of isolated CPUs. There are no memory constraints. DUT1 and DUT2\ -| ... | 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\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with two \ +| ... | L2 bridge domains and MAC learning enabled. 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 3 cores \ +| ... | allocated from pool of isolated CPUs. There are no memory constraints. \ +| ... | DUT1 and DUT2 are 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -69,7 +74,7 @@ | ${bd_id1}= | 1 | ${bd_id2}= | 2 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain @@ -77,9 +82,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD switching with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD switching with VLAN and 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). diff --git a/tests/vpp/perf/container_memif/10ge2p1x710-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrpdr.robot b/tests/vpp/perf/container_memif/10ge2p1x710-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrpdr.robot index 48e2493cb1..628a264655 100644 --- a/tests/vpp/perf/container_memif/10ge2p1x710-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrpdr.robot +++ b/tests/vpp/perf/container_memif/10ge2p1x710-eth-l2bdbasemaclrn-eth-2memif-1lxc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with two L2 -| ... | bridge domains and MAC learning enabled. LXC is connected to VPP via -| ... | Memif interface. LXC is running same VPP version as running on DUT. LXC -| ... | is limited via cgroup to use 3 cores allocated from pool of isolated -| ... | CPUs. There are no memory constraints. DUT1 and DUT2 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 +| Documentation | **RFC2544: Pkt throughput L2BD test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 bridge domain. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with two \ +| ... | L2 bridge domains and MAC learning enabled. LXC is connected to VPP \ +| ... | via Memif interface. LXC is running same VPP version as running on \ +| ... | DUT. LXC is limited via cgroup to use 3 cores allocated from pool of \ +| ... | isolated CPUs. There are no memory constraints. DUT1 and DUT2 are \ +| ... | tested with 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. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,7 +65,7 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 # Container | ${container_engine}= | LXC | ${container_chain_topology}= | chain @@ -69,9 +73,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/container_memif/10ge2p1x710-eth-l2xcbase-eth-2memif-1dcr-ndrpdr.robot b/tests/vpp/perf/container_memif/10ge2p1x710-eth-l2xcbase-eth-2memif-1dcr-ndrpdr.robot index bc35fd9a74..12263ff0aa 100644 --- a/tests/vpp/perf/container_memif/10ge2p1x710-eth-l2xcbase-eth-2memif-1dcr-ndrpdr.robot +++ b/tests/vpp/perf/container_memif/10ge2p1x710-eth-l2xcbase-eth-2memif-1dcr-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. DUT1 and DUT2 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 3 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 +| Documentation | **RFC2544: Pkt throughput L2XC test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | cross-connect. DUT1 and DUT2 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 \ +| ... | use 3 cores allocated from pool of isolated CPUs. There are no memory \ +| ... | 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,7 +65,7 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain @@ -69,9 +73,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC switching config. +| | ... | - **[Cfg]** DUT runs L2XC switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/container_memif/10ge2p1x710-eth-l2xcbase-eth-2memif-1lxc-ndrpdr.robot b/tests/vpp/perf/container_memif/10ge2p1x710-eth-l2xcbase-eth-2memif-1lxc-ndrpdr.robot index 5662346013..856ae1c8ae 100644 --- a/tests/vpp/perf/container_memif/10ge2p1x710-eth-l2xcbase-eth-2memif-1lxc-ndrpdr.robot +++ b/tests/vpp/perf/container_memif/10ge2p1x710-eth-l2xcbase-eth-2memif-1lxc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. DUT1 and DUT2 tested with ${nic_name}.\ -| ... | LXC is connected to VPP via Memif interface. LXC is running same VPP -| ... | version as running on DUT. LXC is limited via cgroup to use 3 cores +| Documentation | **RFC2544: Pkt throughput L2XC test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | cross-connect. DUT1 and DUT2 tested with ${nic_name}. +| ... | LXC is connected to VPP via Memif interface. LXC is running same VPP \ +| ... | version as running on DUT. LXC is limited via cgroup to use 3 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 +| ... | +| ... | - **[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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,7 +64,7 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 # Container | ${container_engine}= | LXC | ${container_chain_topology}= | chain @@ -68,9 +72,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC switching config. +| | ... | - **[Cfg]** DUT runs L2XC switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/container_memif/10ge2p1x710-ethip4-ip4base-eth-2memif-1dcr-ndrpdr.robot b/tests/vpp/perf/container_memif/10ge2p1x710-ethip4-ip4base-eth-2memif-1dcr-ndrpdr.robot index f0cb26cf6e..8df1e82e68 100644 --- a/tests/vpp/perf/container_memif/10ge2p1x710-ethip4-ip4base-eth-2memif-1dcr-ndrpdr.robot +++ b/tests/vpp/perf/container_memif/10ge2p1x710-ethip4-ip4base-eth-2memif-1dcr-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,30 +26,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4 -| ... | routing with two FIB tables and two static IPv4 /24 route entries per -| ... | FIB table. 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. DUTs are 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 +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing with two FIB tables and two static IPv4 /24 route entries per \ +| ... | FIB table. 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. DUTs are 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. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,7 +64,7 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain @@ -68,9 +72,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr.robot b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr.robot index 6760dea27d..ee2f7a6e06 100644 --- a/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr.robot +++ b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,34 +27,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with memif and IEEE 802.1Q test -| ... | cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. IEEE\ +| Documentation | **RFC2544: Pkt throughput L2BD with memif and IEEE 802.1Q +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 bridge domain. IEEE \ | ... | 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with two L2 bridge\ -| ... | domains and MAC learning enabled. 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 3 cores allocated from\ -| ... | pool of isolated CPUs. There are no memory constraints. 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 DUT1. 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\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with two L2 bridge \ +| ... | domains and MAC learning enabled. 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 3 cores allocated from \ +| ... | pool of isolated CPUs. There are no memory constraints. 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 DUT1. 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -69,7 +74,7 @@ | ${bd_id1}= | 1 | ${bd_id2}= | 2 # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-dot1qip4asym-ip4src254 +| ${traffic_profile}= | trex-stl-dot1qip4asym-ip4src254 # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain @@ -77,9 +82,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD switching with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD switching with VLAN and 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). diff --git a/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr.robot b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr.robot new file mode 100644 index 0000000000..8b64f858a2 --- /dev/null +++ b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr.robot @@ -0,0 +1,163 @@ +# Copyright (c) 2024 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/shared/default.robot +| Resource | resources/libraries/robot/features/dma.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | DOT1Q | L2BDMACLRN | BASE | MEMIF | DOCKER | DMA +| ... | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | container +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput L2BD with memif and IEEE 802.1Q \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 bridge domain. IEEE \ +| ... | 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with two L2 bridge \ +| ... | domains and MAC learning enabled. 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 3 cores allocated from \ +| ... | pool of isolated CPUs. There are no memory constraints. 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 DUT1. 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L2 +| ${overhead}= | ${4} +| ${subid}= | 10 +| ${tag_rewrite}= | pop-1 +| ${bd_id1}= | 1 +| ${bd_id2}= | 2 +| ${heap_size_mult}= | ${2} +#| ${page_size}= | 1G +# Traffic profile: +| ${traffic_profile}= | trex-stl-dot1qip4asym-ip4src254 +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_dma + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** Each DUT runs L2BD switching with VLAN and 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable DMA WQs on all DUTs +| | And Start containers for test +| | ... | nf_chains=${1} | nf_nodes=${1} | auto_scale=${True} +| | ... | pinning=${True} +| | Initialize L2 Bridge Domain with memif pairs and VLAN in circular topology +| | ... | ${bd_id1} | ${bd_id2} | ${subid} | ${tag_rewrite} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-dot1q-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr.robot b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr.robot index 8bbeb9bbe5..5ee6e1b5f5 100644 --- a/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr.robot +++ b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2memif-1dcr-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD test cases* -| -| ... | *[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 +| Documentation | **RFC2544: Pkt throughput L2BD test cases** +| ... | +| ... | - **[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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,7 +65,7 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain @@ -69,9 +73,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr.robot b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr.robot new file mode 100644 index 0000000000..4996795c0c --- /dev/null +++ b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr.robot @@ -0,0 +1,153 @@ +# Copyright (c) 2024 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/shared/default.robot +| Resource | resources/libraries/robot/features/dma.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2BDMACLRN | BASE | MEMIF | DOCKER | DMA +| ... | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | eth-l2bdbasemaclrn-eth-2memif-dma-1dcr +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | container +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput L2BD test cases** +| ... | +| ... | - **[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 is 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L2 +| ${overhead}= | ${0} +| ${heap_size_mult}= | ${2} +#| ${page_size}= | 1G +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_dma + +*** 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable DMA WQs on all DUTs +| | And Start containers for test +| | ... | nf_chains=${1} | nf_nodes=${1} | auto_scale=${True} +| | ... | pinning=${True} +| | And Initialize L2 Bridge Domain for multiple chains with memif pairs +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bdbasemaclrn-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2xcbase-eth-2memif-1dcr-ndrpdr.robot b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2xcbase-eth-2memif-1dcr-ndrpdr.robot index f91ef96ee7..51defa7d47 100644 --- a/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2xcbase-eth-2memif-1dcr-ndrpdr.robot +++ b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2xcbase-eth-2memif-1dcr-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 cross-connect. -| ... | 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 +| Documentation | **RFC2544: Pkt throughput L2XC test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 \ +| ... | 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,7 +65,7 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain @@ -69,9 +73,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC switching config. +| | ... | - **[Cfg]** DUT runs L2XC switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr.robot b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr.robot new file mode 100644 index 0000000000..7443c1015e --- /dev/null +++ b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr.robot @@ -0,0 +1,153 @@ +# Copyright (c) 2024 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/shared/default.robot +| Resource | resources/libraries/robot/features/dma.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | L2XCFWD | BASE | MEMIF | DOCKER | DMA +| ... | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | eth-l2xcbase-eth-2memif-dma-1dcr +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | container +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput L2XC test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 \ +| ... | 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L2 +| ${overhead}= | ${0} +| ${heap_size_mult}= | ${2} +#| ${page_size}= | 1G +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_dma + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs L2XC 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable DMA WQs on all DUTs +| | And Start containers for test +| | ... | nf_chains=${1} | nf_nodes=${1} | auto_scale=${True} +| | ... | pinning=${True} +| | And Initialize L2 xconnect with memif pairs +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2xcbase-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-ethip4-ip4base-eth-2memif-1dcr-ndrpdr.robot b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-ethip4-ip4base-eth-2memif-1dcr-ndrpdr.robot index c474555e67..44d19c08f9 100644 --- a/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-ethip4-ip4base-eth-2memif-1dcr-ndrpdr.robot +++ b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-ethip4-ip4base-eth-2memif-1dcr-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing with -| ... | two FIB tables and two static IPv4 /24 route entries per FIB table. -| ... | 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. 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 DUT1. 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 +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | with two FIB tables and two static IPv4 /24 route entries per FIB \ +| ... | table. 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. 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 DUT1. 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,7 +65,7 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain @@ -69,9 +73,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr.robot b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr.robot new file mode 100644 index 0000000000..2a50bd158c --- /dev/null +++ b/tests/vpp/perf/container_memif/2n1l-10ge2p1x710-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr.robot @@ -0,0 +1,153 @@ +# Copyright (c) 2024 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/shared/default.robot +| Resource | resources/libraries/robot/features/dma.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP4FWD | BASE | MEMIF | DOCKER | DMA +| ... | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-ip4base-eth-2memif-dma-1dcr +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | container +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | with two FIB tables and two static IPv4 /24 route entries per FIB \ +| ... | table. 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. 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 DUT1. 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${heap_size_mult}= | ${2} +#| ${page_size}= | 1G +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 +# Container +| ${container_engine}= | Docker +| ${container_chain_topology}= | chain_dma + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable DMA WQs on all DUTs +| | And Start containers for test +| | ... | nf_chains=${1} | nf_nodes=${1} | auto_scale=${True} +| | ... | pinning=${True} +| | And Initialize IPv4 routing with memif pairs +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4-ip4base-eth-2memif-dma-1dcr-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/container_memif/regenerate_testcases.py b/tests/vpp/perf/container_memif/regenerate_testcases.py index ec754aa261..e22f6de5c3 100755 --- a/tests/vpp/perf/container_memif/regenerate_testcases.py +++ b/tests/vpp/perf/container_memif/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr.robot new file mode 100644 index 0000000000..0e1cecab98 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr.robot @@ -0,0 +1,174 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_100000 +| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | FASTPATH | NIC_Intel-X710 | SCALE +| ... | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${100000} +# Main heap size multiplicator +| ${heap_size_mult}= | ${4} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 +| | ... | - search_type - NDR or PDR. Type: string +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... | - min_rate - Min rate for binary search, default value: ${50000}. +| | ... | Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Enable IPsec SPD Fast Path IPv4 Inbound And Outbound +| | ... | ${${n_tunnels}*10} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And VPP Set Neighbor Limit on all DUTs | ${nodes} | ${${n_tunnels}*2} +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Add Multiple Tunnels +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} +| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec100000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot index f8c25c1bc3..38848d4489 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot @@ -1,4 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel 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: @@ -13,49 +14,57 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR -| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | TNL_1000 +| ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECINT | NIC_Intel-X710 | TNL_10000 | ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlhw-ip4base-int-aes256gcm +| ... | ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +73,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} +| ${n_tunnels}= | ${10000} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,19 +104,13 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto}= | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And VPP IPsec Select Backend | ${dut1} | ${ipsec_proto} | index=${1} -| | And VPP IPsec Select Backend | ${dut2} | ${ipsec_proto} | index=${1} +| | And Enable IPSec Async Mode on all VPP DUTs | | And Initialize IPSec in 3-node circular topology | | And VPP IPsec Create Tunnel Interfaces | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] @@ -115,50 +119,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr +| 64B-1c-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr +| 64B-2c-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr +| 64B-4c-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr +| 1518B-1c-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr +| 1518B-2c-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr +| 1518B-4c-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr +| 9000B-1c-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr +| 9000B-2c-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr +| 9000B-4c-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr +| IMIX-1c-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr +| IMIX-2c-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1000tnlhw-ip4base-int-aes256gcm-ndrpdr +| IMIX-4c-ethip4ipsec10000tnlhwasync-ip4base-int-aes256gcm-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr.robot index 70cdafda5a..1cb7670472 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr.robot @@ -1,4 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,49 +14,57 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR -| ... | IP4FWD | IPSEC | IPSECHW | IPSECTUN | NIC_Intel-X710 | TNL_1000 +| ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECTUN | NIC_Intel-X710 | TNL_10000 | ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm +| ... | ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa +| Test Teardown | Tear down test | performance | ipsec_all | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +73,28 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} +| ${n_tunnels}= | ${10000} +| ${rxq_ratio}= | ${2} +# Main heap size multiplicator +| ${heap_size_mult}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUTs runs IPsec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,19 +106,13 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto}= | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And VPP IPsec Select Backend | ${dut1} | ${ipsec_proto} | index=${1} -| | And VPP IPsec Select Backend | ${dut2} | ${ipsec_proto} | index=${1} +| | And Enable IPSec Async Mode on all VPP DUTs | | And Initialize IPSec in 3-node circular topology | | And VPP IPsec Add Multiple Tunnels | | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} @@ -115,50 +121,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr +| 64B-1c-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr +| 64B-2c-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr +| 64B-4c-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr +| 1518B-1c-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr +| 1518B-2c-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr +| 1518B-4c-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr +| 9000B-1c-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr +| 9000B-2c-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr +| 9000B-4c-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr +| IMIX-1c-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr +| IMIX-2c-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes256gcm-ndrpdr +| IMIX-4c-ethip4ipsec10000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr.robot index 258b6e28e0..d1842e0d76 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr.robot @@ -1,5 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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: @@ -14,49 +14,57 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR -| ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECTUN | NIC_Intel-X710 | TNL_1000 -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI +| ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECTUN | NIC_Intel-X710 | TNL_10000 +| ... | FASTPATH | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha +| ... | ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa +| Test Teardown | Tear down test | performance | ipsec_all | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,26 +72,29 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} +| ${n_tunnels}= | ${10000} +| ${rxq_ratio}= | ${2} +# Main heap size multiplicator +| ${heap_size_mult}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_128_CBC / HMAC_SHA_256 config.\ +| | ... | - **[Cfg]** DUTs runs IPsec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -95,13 +106,11 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} +| | And Enable IPsec SPD Fast Path IPv4 Inbound And Outbound +| | ... | ${${n_tunnels}*10} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface @@ -114,50 +123,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 64B-1c-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 64B-2c-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 64B-4c-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 1518B-1c-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 1518B-2c-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 1518B-4c-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 9000B-1c-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 9000B-2c-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 9000B-4c-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| IMIX-1c-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| IMIX-2c-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| IMIX-4c-ethip4ipsec10000tnlhwasync-ip4base-policy-fastpath-aes256gcm-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot deleted file mode 100644 index 71f05cc075..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_10000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${10000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot deleted file mode 100644 index 35c3e5a7e8..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_10000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${10000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot deleted file mode 100644 index 6bd4e5f9ad..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_10000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${10000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot deleted file mode 100644 index 079378099b..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_10000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_256_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${10000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec10000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index b710512883..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_10000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${10000} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot index e20952c052..30a5709fbc 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_10000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${10000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -94,10 +103,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot index ce8d606852..89b3f8c2ce 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_10000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${10000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,10 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot index 0b8239bdc8..3c213b58fc 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_10000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${10000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,10 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot index 172a911b3c..4f6cd8ea10 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot @@ -1,4 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,49 +14,57 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_10000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | SCALE -| ... | AES_128_GCM | AES | DRV_VFIO_PCI +| ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm +| ... | ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa +| Test Teardown | Tear down test | performance | ipsec_all | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +73,27 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} +| ${n_tunnels}= | ${10000} +# Main heap size multiplicator +| ${heap_size_mult}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -97,11 +108,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto}= | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} @@ -116,50 +122,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 64B-1c-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 64B-2c-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 64B-4c-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 1518B-1c-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 1518B-2c-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 1518B-4c-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 9000B-1c-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 9000B-2c-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 9000B-4c-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr +| IMIX-1c-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr +| IMIX-2c-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes128gcm-ndrpdr +| IMIX-4c-ethip4ipsec10000tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr.robot new file mode 100644 index 0000000000..e093b2329d --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr.robot @@ -0,0 +1,173 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_10000 +| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | FASTPATH | NIC_Intel-X710 | SCALE +| ... | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${10000} +# Main heap size multiplicator +| ${heap_size_mult}= | ${2} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 +| | ... | - search_type - NDR or PDR. Type: string +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... | - min_rate - Min rate for binary search, default value: ${50000}. +| | ... | Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Enable IPsec SPD Fast Path IPv4 Inbound And Outbound +| | ... | ${${n_tunnels}*10} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Add Multiple Tunnels +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} +| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec10000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr.robot new file mode 100644 index 0000000000..521e4b57aa --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr.robot @@ -0,0 +1,173 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_10000 +| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | SPD_FLOW_CACHE | NIC_Intel-X710 +| ... | SCALE | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them with SPD flow cache enabled \ +| ... | on both inbound and outbound traffic. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${10000} +# Main heap size multiplicator +| ${heap_size_mult}= | ${2} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 +| | ... | - search_type - NDR or PDR. Type: string +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... | - min_rate - Min rate for binary search, default value: ${50000}. +| | ... | Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Enable SPD flow cache IPv4 Inbound +| | And Enable SPD flow cache IPv4 Outbound +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Add Multiple Tunnels +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} +| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec10000tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..3734288de1 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,154 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | SCALE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPD_FLOW_CACHE +| ... | SPE_1000 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. SPD flow-cache for IPv4 outbound traffic is enabled. \ +| ... | 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${1000} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Enable SPD flow cache IPv4 Outbound +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..f29a37dfbd --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,151 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | SCALE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPE_1000 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. DUT1 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${1000} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index 8b4de20ad2..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR -| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | TNL_1000 -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance | ipsechw -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index 2c5ac80d10..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR -| ... | IP4FWD | IPSEC | IPSECHW | IPSECTUN | NIC_Intel-X710 | TNL_1000 -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance | ipsechw -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_128_CBC / HMAC_SHA_256 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Add Multiple Tunnels -| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot deleted file mode 100644 index a883c25219..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR -| ... | IP4FWD | IPSEC | IPSECHW | IPSECTUN | NIC_Intel-X710 | TNL_1000 -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha -| -| Suite Setup | Setup suite topology interfaces | performance | ipsechw -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_128_CBC / HMAC_SHA_512 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Add Multiple Tunnels -| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr.robot deleted file mode 100644 index 6ec0e83392..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr.robot +++ /dev/null @@ -1,164 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR -| ... | IP4FWD | IPSEC | IPSECHW | IPSECTUN | NIC_Intel-X710 | TNL_1000 -| ... | AES_128_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm -| -| Suite Setup | Setup suite topology interfaces | performance | ipsechw -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_128_GCM 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto}= | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And VPP IPsec Select Backend | ${dut1} | ${ipsec_proto} | index=${1} -| | And VPP IPsec Select Backend | ${dut2} | ${ipsec_proto} | index=${1} -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Add Multiple Tunnels -| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index dc1ea3a3db..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,163 +0,0 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 -| ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance | ipsechw -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Enable IPSec Async Mode on all VPP DUTs -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot index efcabbdf63..41ceb5270e 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot @@ -1,5 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel 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: @@ -14,7 +14,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 | ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE @@ -22,41 +21,50 @@ | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -65,25 +73,27 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1000} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -95,10 +105,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-ndrpdr.robot index 5f09b970c5..2e2729a4d5 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-ndrpdr.robot @@ -1,5 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel 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: @@ -14,7 +14,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR | ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECINT | NIC_Intel-X710 | TNL_1000 @@ -22,41 +21,50 @@ | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -65,25 +73,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1000} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -95,10 +104,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot index 086b9ba511..82b7143deb 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot @@ -1,5 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel 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: @@ -14,7 +14,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR | ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECINT | NIC_Intel-X710 | TNL_1000 @@ -22,41 +21,50 @@ | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -65,25 +73,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1000} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -95,10 +104,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot deleted file mode 100644 index a20c0d1375..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot +++ /dev/null @@ -1,163 +0,0 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR -| ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECTUN | NIC_Intel-X710 | TNL_1000 -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha -| -| Suite Setup | Setup suite topology interfaces | performance | ipsechw -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_128_CBC / HMAC_SHA_512 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Enable IPSec Async Mode on all VPP DUTs -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Add Multiple Tunnels -| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr.robot index 774a645fb3..bcc46079fd 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-ndrpdr.robot @@ -1,5 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel 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: @@ -14,7 +14,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR | ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECTUN | NIC_Intel-X710 | TNL_1000 @@ -22,41 +21,50 @@ | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa +| Test Teardown | Tear down test | performance | ipsec_all | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -65,25 +73,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1000} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUTs runs IPsec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -95,10 +104,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot deleted file mode 100644 index 00e0bd7155..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_1000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot deleted file mode 100644 index d2616a9f9c..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_1000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot deleted file mode 100644 index 729c4ae8ca..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_1000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot deleted file mode 100644 index bc2dada640..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_1000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_256_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr.robot index ba11e06e34..3ad94ac96e 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr.robot @@ -1,4 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +14,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI +| ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha +| ... | ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +28,43 @@ | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels which shared same tunnel src and dst ip \ +| ... | address. DUTs get IPv4 traffic from TG, encrypt it and send to \ +| ... | another DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -63,26 +72,26 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -97,10 +106,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} @@ -111,54 +116,54 @@ | | And VPP IPsec Add Multiple Tunnels | | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} | | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${False} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 64B-1c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 64B-2c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 64B-4c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 1518B-1c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 1518B-2c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 1518B-4c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 9000B-1c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 9000B-2c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 9000B-4c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| IMIX-1c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| IMIX-2c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| IMIX-4c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr.robot new file mode 100644 index 0000000000..9af8dc5f66 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr.robot @@ -0,0 +1,178 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 +| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | FLOW_DIR | NIC_Intel-X710 | SCALE +| ... | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels which shared same tunnel src and dst ip \ +| ... | address, enabled IPsec_ESP flow director between them.\ +| ... | DUTs get IPv4 traffic from TG, encrypt it and send to another \ +| ... | DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${dut1_spi}= | ${400000} +| ${dut2_spi}= | ${300000} +| ${n_tunnels}= | ${1000} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 +| | ... | - search_type - NDR or PDR. Type: string +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... | - min_rate - Min rate for binary search, default value: ${50000}. +| | ... | Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 3-node circular topology +| | And VPP Create Ipsec Flows On Dut +| | ... | ${dut1} | ${n_tunnels} | ${rxq_count_int} | ${dut1_spi} +| | ... | ${DUT1_${int}2}[0] +| | And VPP Create Ipsec Flows On Dut +| | ... | ${dut2} | ${n_tunnels} | ${rxq_count_int} | ${dut2_spi} +| | ... | ${DUT2_${int}1}[0] +| | And VPP IPsec Add Multiple Tunnels +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} +| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-dir-aes256gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr.robot new file mode 100644 index 0000000000..31b5079f7b --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr.robot @@ -0,0 +1,174 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 +| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | FLOW_RSS | NIC_Intel-X710 | SCALE +| ... | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels which shared same tunnel src and dst ip \ +| ... | address, enabled flow rss action between them.\ +| ... | DUTs get IPv4 traffic from TG, encrypt it and send to another DUT, \ +| ... | where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1000} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 +| | ... | - search_type - NDR or PDR. Type: string +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... | - min_rate - Min rate for binary search, default value: ${50000}. +| | ... | Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 3-node circular topology +| | ${flow_index} = | And VPP Ipsec Flow Enable Rss | ${dut1} +| | And VPP Flow Enable | ${dut1} | ${DUT1_${int}2}[0] | ${flow_index} +| | ${flow_index} = | And VPP Ipsec Flow Enable Rss | ${dut2} +| | And VPP Flow Enable | ${dut2} | ${DUT2_${int}1}[0] | ${flow_index} +| | And VPP IPsec Add Multiple Tunnels +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} +| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${False} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1000tnlsw-fixtnlip-ip4base-policy-flow-rss-aes256gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot index c0240724a3..bd2d615040 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -94,10 +103,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr.robot index 366684858e..d0a41db9f4 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_20000 +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | REASSEMBLY | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha +| ... | ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,44 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. The MTU on DUT-DUT link is lowered to induce packet \ +| ... | fragmentation and reassembly. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +73,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${20000} +| ${n_tunnels}= | ${1000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -94,16 +104,13 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface +| | And Lower DUT1-DUT2 MTU For Fragmentation | | And Initialize IPSec in 3-node circular topology | | And VPP IPsec Create Tunnel Interfaces | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] @@ -112,50 +119,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot index 19a9f19f07..53dafb0189 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,11 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot index 8c60fcc2cb..4635b70c49 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,11 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr.robot index c2eb1946cc..bd399f8ecb 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI +| ... | AES_256_GCM | AES | REASSEMBLY | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha +| ... | ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,44 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. The MTU on DUT-DUT link is lowered to induce packet \ +| ... | fragmentation and reassembly. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -63,26 +72,26 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,16 +103,13 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface +| | And Lower DUT1-DUT2 MTU For Fragmentation | | And Initialize IPSec in 3-node circular topology | | And VPP IPsec Create Tunnel Interfaces | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] @@ -112,50 +118,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 64B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 64B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 64B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 1518B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 1518B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 1518B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 9000B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 9000B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 9000B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| IMIX-1c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| IMIX-2c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| IMIX-4c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot index 82a861f6bd..299a32f0ac 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | SCALE @@ -24,38 +23,47 @@ | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa +| Test Teardown | Tear down test | performance | ipsec_all | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -97,11 +105,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto}= | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr.robot index 64fa889d18..62f328434e 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,49 +13,58 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | AES_256_GCM | AES | REASSEMBLY | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha +| ... | ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa +| Test Teardown | Tear down test | performance | ipsec_all | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. The MTU on DUT-DUT link is lowered to induce packet \ +| ... | fragmentation and reassembly. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -63,26 +72,26 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -97,16 +106,13 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface +| | And Lower DUT1-DUT2 MTU For Fragmentation | | And Initialize IPSec in 3-node circular topology | | And VPP IPsec Add Multiple Tunnels | | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} @@ -115,50 +121,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 64B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 64B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 64B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 1518B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 1518B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 1518B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 9000B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 9000B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 9000B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| IMIX-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| IMIX-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| IMIX-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..55a95344d5 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,154 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | SCALE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPD_FLOW_CACHE +| ... | SPE_100 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. SPD flow-cache for IPv4 outbound traffic is enabled. \ +| ... | DUT1 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${100} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Enable SPD flow cache IPv4 Outbound +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..da0bb0edfc --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,151 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | SCALE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPE_100 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec100spe-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. DUT1 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${100} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..3e665a2fe7 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,154 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | SCALE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPD_FLOW_CACHE +| ... | SPE_10 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. SPD flow-cache for IPv4 outbound traffic is enabled. \ +| ... | DUT1 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${10} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Enable SPD flow cache IPv4 Outbound +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..3bb23bbeca --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,151 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | SCALE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPE_10 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec10spe-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. DUT1 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${10} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..1fb6841428 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,154 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | BASE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPD_FLOW_CACHE +| ... | SPE_1 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. SPD flow-cache for IPv4 outbound traffic is enabled. \ +| ... | DUT1 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${1} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Enable SPD flow cache IPv4 Outbound +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..39ac669b91 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,151 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | BASE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPE_1 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1spe-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. DUT1 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${1} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot deleted file mode 100644 index a9f822e70f..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot +++ /dev/null @@ -1,160 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 -| ... | IP4FWD | IPSEC | IPSECHW | IPSECTUN | NIC_Intel-X710 | BASE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha -| -| Suite Setup | Setup suite topology interfaces | performance | ipsechw -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_CBC_128 / HMAC_512_SHA 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Add Multiple Tunnels -| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr.robot deleted file mode 100644 index 01879c8140..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr.robot +++ /dev/null @@ -1,164 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 -| ... | IP4FWD | IPSEC | IPSECHW | IPSECTUN | NIC_Intel-X710 | BASE -| ... | AES_128_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlhw-ip4base-policy-aes128gcm -| -| Suite Setup | Setup suite topology interfaces | performance | ipsechw -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_128_GCM 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto}= | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And VPP IPsec Select Backend | ${dut1} | ${ipsec_proto} | index=${1} -| | And VPP IPsec Select Backend | ${dut2} | ${ipsec_proto} | index=${1} -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Add Multiple Tunnels -| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1tnlhw-ip4base-policy-aes128gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr.robot deleted file mode 100644 index 02e37038c1..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,164 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 -| ... | IP4FWD | IPSEC | IPSECHW | IPSECTUN | NIC_Intel-X710 | BASE -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlhw-ip4base-policy-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance | ipsechw -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_256_GCM 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto}= | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And VPP IPsec Select Backend | ${dut1} | ${ipsec_proto} | index=${1} -| | And VPP IPsec Select Backend | ${dut2} | ${ipsec_proto} | index=${1} -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Add Multiple Tunnels -| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1tnlhw-ip4base-policy-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index 1e0fd92b05..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,163 +0,0 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 -| ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECINT | NIC_Intel-X710 | BASE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance | ipsechw -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Enable IPSec Async Mode on all VPP DUTs -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot index 0923936c69..d36dff2597 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot @@ -1,5 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel 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: @@ -14,7 +14,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 | ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECINT | NIC_Intel-X710 | BASE @@ -22,41 +21,50 @@ | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -65,25 +73,27 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -95,10 +105,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-ndrpdr.robot index 17c1015abb..b85ff35478 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-ndrpdr.robot @@ -1,5 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel 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: @@ -14,7 +14,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 | ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECINT | NIC_Intel-X710 | BASE @@ -22,41 +21,50 @@ | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -65,25 +73,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -95,10 +104,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot index 3112cca147..5d0d94a93f 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot @@ -1,5 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel 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: @@ -14,7 +14,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 | ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECINT | NIC_Intel-X710 | BASE @@ -22,41 +21,51 @@ | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -65,25 +74,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -95,10 +105,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index b90d0fb20b..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,162 +0,0 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 -| ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECTUN | NIC_Intel-X710 | BASE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance | ipsechw -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_CBC_128 / HMAC_256_SHA 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Enable IPSec Async Mode on all VPP DUTs -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Add Multiple Tunnels -| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot deleted file mode 100644 index bec8975e67..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot +++ /dev/null @@ -1,162 +0,0 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 -| ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECTUN | NIC_Intel-X710 | BASE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha -| -| Suite Setup | Setup suite topology interfaces | performance | ipsechw -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_CBC_128 / HMAC_512_SHA 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Enable IPSec Async Mode on all VPP DUTs -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Add Multiple Tunnels -| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128cbc-hmac512sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-ndrpdr.robot index 95070aab6d..df06d31201 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-ndrpdr.robot @@ -1,5 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel 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: @@ -14,7 +14,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 | ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECTUN | NIC_Intel-X710 | BASE @@ -22,41 +21,50 @@ | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa +| Test Teardown | Tear down test | performance | ipsec_all | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -65,25 +73,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUTs runs IPsec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -95,10 +104,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot deleted file mode 100644 index e802692e61..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_1 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | BASE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot deleted file mode 100644 index d5e3a0f22f..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_1 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | BASE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot deleted file mode 100644 index 1a24c6a3f1..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_1 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | BASE -| ... | AES_128_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot deleted file mode 100644 index d0c235ee99..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_1 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | BASE -| ... | AES_256_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${1} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot index f91e2b430c..4bb76d2458 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | BASE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -94,10 +103,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr.robot index 9caa35be96..fd8fb4e20f 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_400 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | BASE +| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | REASSEMBLY | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha +| ... | ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,44 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. The MTU on DUT-DUT link is lowered to induce packet \ +| ... | fragmentation and reassembly. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +73,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${400} +| ${n_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -94,16 +104,13 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface +| | And Lower DUT1-DUT2 MTU For Fragmentation | | And Initialize IPSec in 3-node circular topology | | And VPP IPsec Create Tunnel Interfaces | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] @@ -112,50 +119,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-1c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-2c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-4c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-1c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-2c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-4c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-1c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-2c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-4c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-1c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-2c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-4c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-reassembly-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-ndrpdr.robot index c1ff5766a7..f48386ad64 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | BASE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,11 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg} = | Crypto Alg AES GCM 128 -| | ${auth_alg} = | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-ndrpdr.robot index ac103420d0..5613b9db59 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | BASE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.\ -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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). @@ -94,11 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg} = | Crypto Alg AES GCM 256 -| | ${auth_alg} = | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr.robot index 2b95b50535..7fd798a8b0 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | BASE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI +| ... | AES_256_GCM | AES | REASSEMBLY | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha +| ... | ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,44 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. The MTU on DUT-DUT link is lowered to induce packet \ +| ... | fragmentation and reassembly. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -63,26 +72,26 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,16 +103,13 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface +| | And Lower DUT1-DUT2 MTU For Fragmentation | | And Initialize IPSec in 3-node circular topology | | And VPP IPsec Create Tunnel Interfaces | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] @@ -112,50 +118,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 64B-1c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 64B-2c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 64B-4c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 1518B-1c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 1518B-2c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 1518B-4c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 9000B-1c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 9000B-2c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 9000B-4c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| IMIX-1c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| IMIX-2c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| IMIX-4c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-reassembly-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot index cfd8aa17a5..a16e041220 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 | ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | BASE @@ -24,38 +23,47 @@ | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa +| Test Teardown | Tear down test | performance | ipsec_all | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,11 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto}= | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr.robot index 900d476cf1..cc39fbbb20 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,49 +13,58 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 | ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | BASE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI +| ... | AES_256_GCM | AES | REASSEMBLY | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha +| ... | ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa +| Test Teardown | Tear down test | performance | ipsec_all | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. The MTU on DUT-DUT link is lowered to induce packet \ +| ... | fragmentation and reassembly. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -63,26 +72,26 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,16 +103,13 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface +| | And Lower DUT1-DUT2 MTU For Fragmentation | | And Initialize IPSec in 3-node circular topology | | And VPP IPsec Add Multiple Tunnels | | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} @@ -112,50 +118,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 64B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 64B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 64B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 1518B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 1518B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 1518B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 9000B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 9000B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 9000B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| IMIX-1c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| IMIX-2c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| IMIX-4c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-reassembly-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot new file mode 100644 index 0000000000..be49518121 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot @@ -0,0 +1,172 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | BASE +| ... | SCHEDULER | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them, run with IPsec async mode and \ +| ... | use crypto sw scheduler engine to schedule crypto work to crypto \ +| ... | cores. DUTs get IPv4 traffic from TG, encrypt it and send to another \ +| ... | DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] +| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot new file mode 100644 index 0000000000..cbb11a7286 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot @@ -0,0 +1,172 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | BASE +| ... | SCHEDULER | AES_128_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them, run with IPsec async mode and \ +| ... | use crypto sw scheduler engine to schedule crypto work to crypto \ +| ... | cores. DUTs get IPv4 traffic from TG, encrypt it and send to another \ +| ... | DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] +| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot new file mode 100644 index 0000000000..bdc58b7143 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot @@ -0,0 +1,172 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | BASE | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | TNL_1 +| ... | SCHEDULER | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them, run with IPsec async mode and \ +| ... | use crypto sw scheduler engine to schedule crypto work to crypto \ +| ... | cores. DUTs get IPv4 traffic from TG, encrypt it and send to another \ +| ... | DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] +| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot deleted file mode 100644 index c712e49fa2..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_20000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${20000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot deleted file mode 100644 index 9f6eda436b..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_20000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${20000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot deleted file mode 100644 index 6fee5fb803..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_20000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${20000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot deleted file mode 100644 index ba0b6bcf24..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_20000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_256_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${20000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec20000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index 797ec06cb0..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_20000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${20000} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec20000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot new file mode 100644 index 0000000000..8ba2e18400 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot @@ -0,0 +1,172 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_2 +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them, run with IPsec async mode and \ +| ... | use crypto sw scheduler engine to schedule crypto work to crypto \ +| ... | cores. DUTs get IPv4 traffic from TG, encrypt it and send to another \ +| ... | DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${2} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] +| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot new file mode 100644 index 0000000000..7e5410e6c7 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot @@ -0,0 +1,172 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_2 +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_128_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them, run with IPsec async mode and \ +| ... | use crypto sw scheduler engine to schedule crypto work to crypto \ +| ... | cores. DUTs get IPv4 traffic from TG, encrypt it and send to another \ +| ... | DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${2} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] +| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot new file mode 100644 index 0000000000..be13f10713 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot @@ -0,0 +1,172 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | TNL_2 +| ... | SCHEDULER | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them, run with IPsec async mode and \ +| ... | use crypto sw scheduler engine to schedule crypto work to crypto \ +| ... | cores. DUTs get IPv4 traffic from TG, encrypt it and send to another \ +| ... | DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${2} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] +| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot deleted file mode 100644 index 18ea04a2e9..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_40000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${40000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot deleted file mode 100644 index 83b8746530..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_40000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${40000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot deleted file mode 100644 index 5d21180735..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_40000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${40000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot deleted file mode 100644 index e4cfe4d478..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_40000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_256_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${40000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index 7d45056f0b..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${40000} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot index 8c981aac8f..2444f1e9af 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${40000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -94,10 +103,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot index 735cdf9049..a4918d449a 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${40000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,11 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot index 6fcbacc22e..442f776f53 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40000 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${40000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,11 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr.robot new file mode 100644 index 0000000000..e64ad376af --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr.robot @@ -0,0 +1,173 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40000 +| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | FASTPATH | NIC_Intel-X710 | SCALE +| ... | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${40000} +# Main heap size multiplicator +| ${heap_size_mult}= | ${4} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 +| | ... | - search_type - NDR or PDR. Type: string +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... | - min_rate - Min rate for binary search, default value: ${50000}. +| | ... | Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Enable IPsec SPD Fast Path IPv4 Inbound And Outbound +| | ... | ${${n_tunnels}*10} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Add Multiple Tunnels +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} +| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec40000tnlsw-ip4base-policy-fastpath-aes256gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot deleted file mode 100644 index 2e234745bc..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_400 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${400} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot deleted file mode 100644 index bbdb57f9f7..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_400 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${400} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot deleted file mode 100644 index aa27e1c337..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_400 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${400} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot deleted file mode 100644 index 08da271ac3..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_400 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_256_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${400} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec400tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index 58df85574c..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_400 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${400} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec400tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot deleted file mode 100644 index b387a4e131..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_40 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${40} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot index 1d89410bf9..5c2f2c528b 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_40 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,32 +27,40 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Packet loss IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[Ver] TG verification:** TG finds throughput NDR (Non Drop Rate) \ +| ... | with zero packet loss tolerance, then measures loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on \ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups \ +| ... | (flow-group per direction, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -62,26 +69,27 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${40} | ${n_added_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | config. Each DUT uses ${phy_cores} physical core(s) for worker \ +| | ... | threads. +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -93,10 +101,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} @@ -109,8 +113,7 @@ | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] | | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And VPP IPsec Create Tunnel Interfaces | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot index 97a7842348..04ce94a9e9 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_40 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,32 +27,40 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Packet loss IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[Ver] TG verification:** TG finds throughput NDR (Non Drop Rate) \ +| ... | with zero packet loss tolerance, then measures loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on \ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups \ +| ... | (flow-group per direction, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -62,26 +69,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${40} | ${n_added_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -93,11 +100,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} @@ -110,8 +112,7 @@ | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] | | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And VPP IPsec Create Tunnel Interfaces | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot index 368c758924..7dcae27f84 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_40 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,32 +27,40 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Packet loss IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[Ver] TG verification:** TG finds throughput NDR (Non Drop Rate) \ +| ... | with zero packet loss tolerance, then measures loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on \ +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups \ +| ... | (flow-group per direction, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -62,26 +69,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${40} | ${n_added_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -93,11 +100,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} @@ -110,8 +112,7 @@ | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] | | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And VPP IPsec Create Tunnel Interfaces | | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index 9e1b6b83b9..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${40} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot index 65a2ae55a7..0d41aa51d5 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${40} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -94,10 +103,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-ndrpdr.robot index 3268ab595b..d4262a52dc 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${40} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,11 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-ndrpdr.robot index b2b80c6d87..d702bd5a64 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${40} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,11 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot index b20bc06d0e..5105a367fb 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,49 +13,57 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | BASE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40 +| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | SCALE +| ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha +| ... | ethip4ipsec40tnlsw-ip4base-policy-aes256gcm | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa +| Test Teardown | Tear down test | performance | ipsec_all | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -63,26 +71,26 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${1} +| ${n_tunnels}= | ${40} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,10 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} @@ -112,50 +116,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 64B-1c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 64B-2c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 64B-4c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 1518B-1c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 1518B-2c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 1518B-4c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 9000B-1c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 9000B-2c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| 9000B-4c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| IMIX-1c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| IMIX-2c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-ndrpdr +| IMIX-4c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index f325c53ade..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,163 +0,0 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 -| ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance | ipsechw -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${4} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Enable IPSec Async Mode on all VPP DUTs -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot index c4129c4060..8449ae35f6 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot @@ -1,5 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel 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: @@ -14,7 +14,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 | ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE @@ -22,41 +21,50 @@ | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -65,25 +73,27 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${4} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -95,10 +105,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-ndrpdr.robot index e424b1e1a9..99f1470270 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-ndrpdr.robot @@ -1,5 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel 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: @@ -14,7 +14,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 | ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE @@ -22,41 +21,50 @@ | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -65,25 +73,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${4} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -95,10 +104,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot index 2858a309ea..97f2e2adf2 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-ndrpdr.robot @@ -1,5 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel 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: @@ -14,7 +14,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 | ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE @@ -22,41 +21,50 @@ | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | ... | ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -65,25 +73,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${4} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -95,10 +104,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr.robot index 35e3addd09..96fad57a18 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr.robot @@ -1,5 +1,5 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 Cisco and/or its affiliates. +# Copyright (c) 2024 Intel 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: @@ -14,49 +14,57 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR -| ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECTUN | NIC_Intel-X710 | TNL_1000 -| ... | AES_128_GCM | AES | DRV_VFIO_PCI +| ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECTUN | NIC_Intel-X710 | TNL_4 +| ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm +| ... | ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa +| Test Teardown | Tear down test | performance | ipsec_all | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -65,25 +73,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${1000} +| ${n_tunnels}= | ${4} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUTs runs IPsec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -95,10 +104,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} @@ -114,50 +119,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 64B-1c-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 64B-2c-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 64B-4c-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 1518B-1c-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 1518B-2c-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 1518B-4c-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 9000B-1c-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 9000B-2c-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 9000B-4c-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| IMIX-1c-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| IMIX-2c-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| IMIX-4c-ethip4ipsec4tnlhwasync-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot deleted file mode 100644 index 2c16245e9f..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_4 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${4} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index 60f5f2fb33..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${4} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot index 741d38e887..fdda0fea82 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,26 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${4} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -94,10 +103,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-ndrpdr.robot index 76293751da..f84e8b4e37 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${4} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,11 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-ndrpdr.robot index 38e1eb0b02..9429fe7eef 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,7 +13,6 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 | ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE @@ -28,34 +27,43 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${4} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,11 +102,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot index f225511a9c..b53451438a 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,49 +13,57 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | BASE -| ... | AES_128_GCM | AES | DRV_VFIO_PCI +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 +| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | SCALE +| ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlsw-ip4base-policy-aes128gcm +| ... | ethip4ipsec4tnlsw-ip4base-policy-aes256gcm | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa +| Test Teardown | Tear down test | performance | ipsec_all | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ | ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,25 +72,25 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L3 | ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 | ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${1} +| ${n_tunnels}= | ${4} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,16 +102,11 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto}= | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} -| | And Apply Startup configuration on all VPP DUTs -| | And Initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface | | And Initialize IPSec in 3-node circular topology | | And VPP IPsec Add Multiple Tunnels @@ -113,50 +116,50 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 64B-1c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 64B-2c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 64B-4c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 1518B-1c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 1518B-2c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 1518B-4c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 9000B-1c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 9000B-2c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr +| 9000B-4c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr +| IMIX-1c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr +| IMIX-2c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1tnlsw-ip4base-policy-aes128gcm-ndrpdr +| IMIX-4c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr.robot new file mode 100644 index 0000000000..ac08ca4d3c --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr.robot @@ -0,0 +1,173 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 +| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | SPD_FLOW_CACHE | NIC_Intel-X710 +| ... | SCALE | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **IPv4 IPsec tunnel mode performance test suite.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them with SPD flow cache enabled \ +| ... | on both inbound and outbound traffic. DUTs get IPv4 traffic from TG, \ +| ... | encrypt it and send to another DUT, where packets are decrypted and \ +| ... | sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${4} +# Main heap size multiplicator +| ${heap_size_mult}= | ${2} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 +| | ... | - search_type - NDR or PDR. Type: string +| | ... | - rxq - Number of RX queues, default value: ${None}. Type: integer +| | ... | - min_rate - Min rate for binary search, default value: ${50000}. +| | ... | Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Enable SPD flow cache IPv4 Inbound +| | And Enable SPD flow cache IPv4 Outbound +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Add Multiple Tunnels +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} +| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec4tnlsw-ip4base-policy-flow-cache-aes256gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot new file mode 100644 index 0000000000..6e6adf98fb --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot @@ -0,0 +1,172 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them, run with IPsec async mode and \ +| ... | use crypto sw scheduler engine to schedule crypto work to crypto \ +| ... | cores. DUTs get IPv4 traffic from TG, encrypt it and send to another \ +| ... | DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${4} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] +| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot new file mode 100644 index 0000000000..f3702ebe1d --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot @@ -0,0 +1,172 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_128_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them, run with IPsec async mode and \ +| ... | use crypto sw scheduler engine to schedule crypto work to crypto \ +| ... | cores. DUTs get IPv4 traffic from TG, encrypt it and send to another \ +| ... | DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${4} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] +| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot new file mode 100644 index 0000000000..87e3326d08 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot @@ -0,0 +1,172 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | TNL_4 +| ... | SCHEDULER | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them, run with IPsec async mode and \ +| ... | use crypto sw scheduler engine to schedule crypto work to crypto \ +| ... | cores. DUTs get IPv4 traffic from TG, encrypt it and send to another \ +| ... | DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${4} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] +| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot deleted file mode 100644 index ab49221762..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_5000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${5000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot deleted file mode 100644 index 6d76d08d8c..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_5000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${5000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot deleted file mode 100644 index d009ad6f23..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_5000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${5000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot deleted file mode 100644 index a5a15da372..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_5000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_256_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${5000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec5000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index 7346affb00..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_5000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${5000} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot deleted file mode 100644 index fbfb631984..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_60000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${60000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac256sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot deleted file mode 100644 index f3569b8d46..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot +++ /dev/null @@ -1,169 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_60000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${78} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${60000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot deleted file mode 100644 index 08fba2fa13..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_60000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${60000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes128gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot deleted file mode 100644 index 6afea0d023..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_60000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_256_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${60000} -| ${n_added_tunnels}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ -| | -| | ... | *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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 -| | Start Traffic on Background | ${unidirectional_throughput} -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} -| | ${result}= | Stop Running Traffic -| | Display Reconfig Test Message | ${result} - -*** Test Cases *** -| 64B-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec60000tnlsw-1atnl-ip4base-int-aes256gcm-reconf -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index c4e2a4cb20..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_60000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${62} -| ${tg_if1_ip4}= | 192.168.10.2 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_tunnels}= | ${60000} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot new file mode 100644 index 0000000000..8222c983ee --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot @@ -0,0 +1,172 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_8 +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them, run with IPsec async mode and \ +| ... | use crypto sw scheduler engine to schedule crypto work to crypto \ +| ... | cores. DUTs get IPv4 traffic from TG, encrypt it and send to another \ +| ... | DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${8} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] +| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot new file mode 100644 index 0000000000..ba0cbc1020 --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr.robot @@ -0,0 +1,172 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_8 +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_128_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them, run with IPsec async mode and \ +| ... | use crypto sw scheduler engine to schedule crypto work to crypto \ +| ... | cores. DUTs get IPv4 traffic from TG, encrypt it and send to another \ +| ... | DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${8} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] +| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot new file mode 100644 index 0000000000..ba25db9e8e --- /dev/null +++ b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr.robot @@ -0,0 +1,172 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | TNL_8 +| ... | SCHEDULER | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-IPSec on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple IPsec tunnels between them, run with IPsec async mode and \ +| ... | use crypto sw scheduler engine to schedule crypto work to crypto \ +| ... | cores. DUTs get IPv4 traffic from TG, encrypt it and send to another \ +| ... | DUT, where packets are decrypted and sent back to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.254 +| ${dut1_if1_ip4}= | 192.168.10.11 +| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.102 +| ${dut2_if2_ip4}= | 192.168.20.11 +| ${tg_if2_ip4}= | 192.168.20.254 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${8} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 3-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] +| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr.robot deleted file mode 100644 index cdb9977712..0000000000 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr.robot +++ /dev/null @@ -1,162 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot -| Resource | resources/libraries/robot/overlay/lispgpe.robot -| -| Variables | resources/test_data/lisp/performance/lisp_static_adjacency.py -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD -| ... | LISPGPE | IPSEC | IPSECHW | IPSECTRAN | ENCAP | IP4UNRLAY | IP4OVRLAY -| ... | NIC_Intel-X710 | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance -| -| Test Template | Local Template -| -| Documentation | *IPv4 IPsec transport mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn,\ -| ... | Eth-IPv4-IPSec-LISPGPE-IPv4 on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* Each DUT is configured with LISP and IPsec\ -| ... | in each direction. IPsec is in transport mode. DUTs get IPv4 traffic\ -| ... | from TG, encrypt it and send to another DUT, where packets are\ -| ... | decrypted and sent back to TG. -| ... | *[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, number of flows per flow-group equals to\ -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address)\ -| ... | field is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC6830, RFC4303 and\ -| ... | RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so -| ${crypto_type}= | HW_DH895xcc -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L3 -| ${overhead}= | ${58} -| ${dut2_spi}= | ${1000} -| ${dut1_spi}= | ${1001} -| ${ESP_PROTO}= | ${50} -| ${tg_if_ip4}= | 192.168.100.2 -| ${dut_if_ip4}= | 192.168.100.3 -| ${tg_lo_ip4}= | 192.168.3.3 -| ${dut_lo_ip4}= | 192.168.4.4 -| ${ip4_plen}= | ${24} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src253 - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] Each DUT is configured with LISP and IPsec in each direction.\ -| | ... | IPsec is in transport mode. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize layer interface -| | And Generate keys for IPSec | ${encr_alg} | ${auth_alg} -| | And Initialize LISP GPE IPv4 over IPsec in 3-node circular topology -| | ... | ${encr_alg} | ${auth_alg} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsectptlispgpe-ip4base-aes128cbc-hmac256sha-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot index e3eb5c470b..6fb300157c 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_60000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_10000 | ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha +| ... | ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,41 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,23 @@ | ${overhead}= | ${78} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${60000} +| ${n_tunnels}= | ${10000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -94,68 +100,64 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-1c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-2c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-4c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-1c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-2c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-4c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-1c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-2c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-4c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-1c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-2c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec60000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-4c-ethip4ipsec10000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot index 6cda1c7239..f081fa5e82 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_5000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_10000 | ... | AES_128_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec5000tnlsw-ip4base-int-aes128gcm +| ... | ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,41 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,22 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${5000} +| ${n_tunnels}= | ${10000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,68 +99,64 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 64B-1c-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 64B-2c-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 64B-4c-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 1518B-1c-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 1518B-2c-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 1518B-4c-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 9000B-1c-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 9000B-2c-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 9000B-4c-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr +| IMIX-1c-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr +| IMIX-2c-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec5000tnlsw-ip4base-int-aes128gcm-ndrpdr +| IMIX-4c-ethip4ipsec10000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot index 2386612c68..348408f6ff 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_5000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_10000 | ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec5000tnlsw-ip4base-int-aes256gcm +| ... | ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,41 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,22 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${5000} +| ${n_tunnels}= | ${10000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,68 +99,64 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 64B-1c-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 64B-2c-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 64B-4c-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 1518B-1c-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 1518B-2c-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 1518B-4c-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 9000B-1c-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 9000B-2c-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 9000B-4c-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr +| IMIX-1c-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr +| IMIX-2c-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec5000tnlsw-ip4base-int-aes256gcm-ndrpdr +| IMIX-4c-ethip4ipsec10000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..714de836a1 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,154 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | SCALE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPD_FLOW_CACHE +| ... | SPE_1000 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. SPD flow-cache for IPv4 outbound traffic is enabled. \ +| ... | 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${1000} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Enable SPD flow cache IPv4 Outbound +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1000spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..e34705e8cf --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,151 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | SCALE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPE_1000 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. DUT1 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${1000} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1000spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot new file mode 100644 index 0000000000..3438416d05 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot @@ -0,0 +1,165 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_1000 +| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir +| +| Suite Setup | Setup suite topology interfaces | performance | cryptohw +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1000} +| ${rxq_ratio}= | ${2} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr.robot index 093ddc31fb..13e198a3c5 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,49 +13,55 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR -| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | TNL_1000 +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_1000 | ... | AES_128_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlhw-ip4base-int-aes128gcm +| ... | ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,23 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1000} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,71 +100,65 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto}= | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And VPP IPsec Select Backend | ${dut1} | ${ipsec_proto} | index=${1} -| | And VPP IPsec Select Backend | ${dut2} | ${ipsec_proto} | index=${1} -| | And Initialize IPSec in 3-node circular topology +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr +| 64B-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr +| 64B-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr +| 64B-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr +| 1518B-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr +| 1518B-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr +| 1518B-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr +| 9000B-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr +| 9000B-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr +| 9000B-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr +| IMIX-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr +| IMIX-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1000tnlhw-ip4base-int-aes128gcm-ndrpdr +| IMIX-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr.robot index 42423b2e5f..1c85d67bed 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,49 +13,55 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | SCALE | NDRPDR -| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | TNL_1000 -| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_1000 +| ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha +| ... | ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -63,26 +69,26 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${osi_layer}= | L3 -| ${overhead}= | ${78} +| ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1000} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,68 +100,65 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-1c-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-2c-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1000tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-4c-ethip4ipsec1000tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..08ff9528e7 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr.robot @@ -0,0 +1,164 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECHW | IPSECTUN | NIC_Intel-X710 | SCALE | TNL_1000 +| ... | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 100.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1000} +| ${rxq_ratio}= | ${2} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Add Multiple Tunnels +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${TG_pf2}[0] | ${n_tunnels} +| | ... | ${encr_alg} | ${auth_alg} | ${tun_if1_ip4} | ${tun_if2_ip4} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1000tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot new file mode 100644 index 0000000000..ac344e98b8 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot @@ -0,0 +1,163 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_1000 +| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1000} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot index 54448105c7..d932dc9045 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_20000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_1000 | ... | AES_128_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec20000tnlsw-ip4base-int-aes128gcm +| ... | ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,41 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,22 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${20000} +| ${n_tunnels}= | ${1000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,68 +99,64 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 64B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 64B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 64B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 1518B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 1518B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 1518B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 9000B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 9000B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 9000B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr +| IMIX-1c-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr +| IMIX-2c-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec20000tnlsw-ip4base-int-aes128gcm-ndrpdr +| IMIX-4c-ethip4ipsec1000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot index 347a916210..6295a38812 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_20000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_1000 | ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec20000tnlsw-ip4base-int-aes256gcm +| ... | ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,41 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,22 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${20000} +| ${n_tunnels}= | ${1000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,68 +99,64 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 64B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 64B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 64B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 1518B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 1518B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 1518B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 9000B-1c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 9000B-2c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 9000B-4c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr +| IMIX-1c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr +| IMIX-2c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec20000tnlsw-ip4base-int-aes256gcm-ndrpdr +| IMIX-4c-ethip4ipsec1000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..22d1279e03 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr.robot @@ -0,0 +1,162 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | SCALE | TNL_1000 +| ... | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 100.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1000} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Add Multiple Tunnels +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${TG_pf2}[0] | ${n_tunnels} +| | ... | ${encr_alg} | ${auth_alg} | ${tun_if1_ip4} | ${tun_if2_ip4} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1000tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..e65dbe7d20 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,154 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | SCALE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPD_FLOW_CACHE +| ... | SPE_100 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. SPD flow-cache for IPv4 outbound traffic is enabled. \ +| ... | 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${100} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Enable SPD flow cache IPv4 Outbound +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec100spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..315e86876f --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,151 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | SCALE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPE_100 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec100spe-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. DUT1 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${100} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec100spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..37d90181a5 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,154 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | SCALE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPD_FLOW_CACHE +| ... | SPE_10 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. SPD flow-cache for IPv4 outbound traffic is enabled. \ +| ... | 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${10} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Enable SPD flow cache IPv4 Outbound +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec10spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..f1bbcf6cc6 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,151 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | SCALE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPE_10 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec10spe-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. DUT1 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${10} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec10spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..690cad3de1 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,154 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | BASE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPD_FLOW_CACHE +| ... | SPE_1 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. SPD flow-cache for IPv4 outbound traffic is enabled. \ +| ... | 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${1} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Enable SPD flow cache IPv4 Outbound +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1spe-cache-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot new file mode 100644 index 0000000000..0ad4fd3c57 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr.robot @@ -0,0 +1,151 @@ +# Copyright (c) 2024 PANTHEON.tech s.r.o. +# 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | IP4FWD +| ... | BASE | IPSEC | IPSECSW | IPSECSPD | SPD_OUTBOUND | SPE_1 | NOCRYPTO +| ... | NIC_Intel-X710 | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1spe-ip4base-policy-outbound-nocrypto +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC4301: SPD lookup performance** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing, \ +| ... | two static IPv4 /24 route entries, one SPD on each outbound interface \ +| ... | in each direction and ${rule amount} SPD entry(ies) in each SPD. Only \ +| ... | outbound traffic is matched and only the last rule is the matching \ +| ... | rule. DUT1 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, 253 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. The DUT does SPD lookup with only \ +| ... | the lowest priority rule matching the traffic. The action of the \ +| ... | matching rule is BYPASS. No encryption or authentication is done. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4301 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${remote_addr_range_ip4}= | 20.20.20.0/24 +| ${local_addr_range_ip4}= | 10.10.10.0/24 +| ${rule_amount}= | ${1} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config with IPsec SPD rules. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPv4 forwarding in circular topology +| | And VPP IPsec create SPDs match nth entry +| | ... | ${dut1} | ${DUT1_${int}2}[0] | ${DUT1_${int}1}[0] | ${rule_amount} +| | ... | ${local_addr_range_ip4} | ${remote_addr_range_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1spe-ip4base-policy-outbound-nocrypto-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot index 96241180c1..3526fbe86a 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,49 +13,55 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 -| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | BASE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | BASE | TNL_1 | ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha +| ... | ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,24 @@ | ${overhead}= | ${78} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -94,68 +101,65 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr.robot index dfacf924d6..b16457abaf 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,49 +13,55 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR | TNL_1 | ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | BASE | ... | AES_128_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlhw-ip4base-int-aes128gcm +| ... | ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,23 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,71 +100,65 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto}= | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And VPP IPsec Select Backend | ${dut1} | ${ipsec_proto} | index=${1} -| | And VPP IPsec Select Backend | ${dut2} | ${ipsec_proto} | index=${1} -| | And Initialize IPSec in 3-node circular topology +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr +| 64B-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr +| 64B-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr +| 64B-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr +| 1518B-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr +| 1518B-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr +| 1518B-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr +| 9000B-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr +| 9000B-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr +| 9000B-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr +| IMIX-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr +| IMIX-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1tnlhw-ip4base-int-aes128gcm-ndrpdr +| IMIX-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr.robot index a4eeed0da4..55a09728fd 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,49 +13,55 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 -| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | BASE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | BASE | TNL_1 | ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlhw-ip4base-int-aes256gcm +| ... | ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,23 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,71 +100,65 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto}= | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And VPP IPsec Select Backend | ${dut1} | ${ipsec_proto} | index=${1} -| | And VPP IPsec Select Backend | ${dut2} | ${ipsec_proto} | index=${1} -| | And Initialize IPSec in 3-node circular topology +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr +| 64B-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr +| 64B-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr +| 64B-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr +| 1518B-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr +| 1518B-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr +| 1518B-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr +| 9000B-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr +| 9000B-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr +| 9000B-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr +| IMIX-1c-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr +| IMIX-2c-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1tnlhw-ip4base-int-aes256gcm-ndrpdr +| IMIX-4c-ethip4ipsec1tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr.robot index 681e1e448f..4dc63497e3 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,48 +13,55 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 -| ... | IP4FWD | IPSEC | IPSECHW | IPSECTUN | NIC_Intel-X710 | BASE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECHW | IPSECTUN | NIC_Intel-X710 | BASE | TNL_1 +| ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha +| ... | ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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.\ -| ... | TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -62,26 +69,25 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${osi_layer}= | L3 -| ${overhead}= | ${62} +| ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 100.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} | ${n_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_CBC_128 / HMAC_256_SHA config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -93,68 +99,65 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Add Multiple Tunnels -| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${TG_pf2}[0] | ${n_tunnels} +| | ... | ${encr_alg} | ${auth_alg} | ${tun_if1_ip4} | ${tun_if2_ip4} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 64B-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 64B-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 64B-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 1518B-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 1518B-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 1518B-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 9000B-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 9000B-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| 9000B-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| IMIX-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| IMIX-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1tnlhw-ip4base-policy-aes128cbc-hmac256sha-ndrpdr +| IMIX-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot new file mode 100644 index 0000000000..c1f6ccca12 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot @@ -0,0 +1,163 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | BASE | TNL_1 +| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..7fe71eb06f --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot @@ -0,0 +1,162 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | BASE | TNL_1 +| ... | AES_128_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..115099c929 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot @@ -0,0 +1,162 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | BASE | TNL_1 +| ... | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..e47f23dfba --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr.robot @@ -0,0 +1,162 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | BASE | TNL_1 +| ... | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 100.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Add Multiple Tunnels +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${TG_pf2}[0] | ${n_tunnels} +| | ... | ${encr_alg} | ${auth_alg} | ${tun_if1_ip4} | ${tun_if2_ip4} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec1tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot new file mode 100644 index 0000000000..8b8525a2db --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | BASE +| ... | SCHEDULER | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | TNL_1 +| ... | ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG, run with IPsec async mode and use crypto \ +| ... | sw scheduler engine to schedule crypto work to crypto cores. DUT gets \ +| ... | IPv4 traffic from TG, encrypts it and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..15f8d35708 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | BASE +| ... | SCHEDULER | AES_128_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | TNL_1 +| ... | ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG, run with IPsec async mode and use crypto \ +| ... | sw scheduler engine to schedule crypto work to crypto cores. DUT gets \ +| ... | IPv4 traffic from TG, encrypts it and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..cefadb21e2 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | BASE +| ... | SCHEDULER | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | TNL_1 +| ... | ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG, run with IPsec async mode and use crypto \ +| ... | sw scheduler engine to schedule crypto work to crypto cores. DUT gets \ +| ... | IPv4 traffic from TG, encrypts it and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${1} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec1tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot new file mode 100644 index 0000000000..c3652c3c70 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | TNL_2 +| ... | ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG, run with IPsec async mode and use crypto \ +| ... | sw scheduler engine to schedule crypto work to crypto cores. DUT gets \ +| ... | IPv4 traffic from TG, encrypts it and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${2} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..e6985dac09 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_128_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | TNL_2 +| ... | ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG, run with IPsec async mode and use crypto \ +| ... | sw scheduler engine to schedule crypto work to crypto cores. DUT gets \ +| ... | IPv4 traffic from TG, encrypts it and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${2} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..ae425ed9be --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | TNL_2 +| ... | ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG, run with IPsec async mode and use crypto \ +| ... | sw scheduler engine to schedule crypto work to crypto cores. DUT gets \ +| ... | IPv4 traffic from TG, encrypts it and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${2} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec2tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot new file mode 100644 index 0000000000..5cd317d7f5 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot @@ -0,0 +1,163 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_40000 +| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${40000} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec40000tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot index ba8f2f3ea0..efad663ecb 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_400 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_40000 | ... | AES_128_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec400tnlsw-ip4base-int-aes128gcm +| ... | ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,41 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,22 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${400} +| ${n_tunnels}= | ${40000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,69 +99,64 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr +| 64B-1c-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr +| 64B-2c-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr +| 64B-4c-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr +| 1518B-1c-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr +| 1518B-2c-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr +| 1518B-4c-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr +| 9000B-1c-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr +| 9000B-2c-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr +| 9000B-4c-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr +| IMIX-1c-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr +| IMIX-2c-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec400tnlsw-ip4base-int-aes128gcm-ndrpdr +| IMIX-4c-ethip4ipsec40000tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot index 2c2557e331..e653af06bf 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_400 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_40000 | ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec400tnlsw-ip4base-int-aes256gcm +| ... | ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,41 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,22 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${400} +| ${n_tunnels}= | ${40000} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,69 +99,64 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr +| 64B-1c-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr +| 64B-2c-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr +| 64B-4c-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr +| 1518B-1c-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr +| 1518B-2c-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr +| 1518B-4c-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr +| 9000B-1c-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr +| 9000B-2c-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr +| 9000B-4c-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr +| IMIX-1c-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr +| IMIX-2c-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec400tnlsw-ip4base-int-aes256gcm-ndrpdr +| IMIX-4c-ethip4ipsec40000tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf.robot index 122e24e699..0e0a6273c8 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_4 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | RECONF +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_40 | ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha +| ... | ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,32 +27,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Packet loss IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[Ver] TG verification:** TG finds throughput NDR (Non Drop Rate) \ +| ... | with zero packet loss tolerance, then measures loss at this load \ +| ... | while additional tunnels are configured. \ +| ... | Test packets are generated by TG on \ +| ... | links to DUTs. TG traffic profile contains one L3 flow-groups \ +| ... | (flow-group per direction, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,24 +70,24 @@ | ${overhead}= | ${78} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${4} +| ${n_tunnels}= | ${40} | ${n_added_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | config. Each DUT uses ${phy_cores} physical core(s) for worker \ +| | ... | threads. +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -93,10 +99,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} @@ -104,66 +106,65 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} | | ${result}= | Stop Running Traffic | | Display Reconfig Test Message | ${result} *** Test Cases *** -| 64B-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf +| 64B-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf +| 64B-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf +| 64B-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf +| 1518B-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf +| 1518B-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf +| 1518B-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf +| 9000B-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf +| 9000B-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf +| 9000B-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf +| IMIX-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf +| IMIX-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-reconf +| IMIX-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128cbc-hmac512sha-udir-reconf | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf.robot index f2c4319287..a772eb8c42 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_4 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | RECONF +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_40 | ... | AES_128_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm +| ... | ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,32 +27,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Packet loss IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[Ver] TG verification:** TG finds throughput NDR (Non Drop Rate) \ +| ... | with zero packet loss tolerance, then measures loss at this load \ +| ... | while additional tunnels are configured. \ +| ... | Test packets are generated by TG on \ +| ... | links to DUTs. TG traffic profile contains one L3 flow-groups \ +| ... | (flow-group per direction, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,24 +70,23 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${4} +| ${n_tunnels}= | ${40} | ${n_added_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -93,11 +98,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} @@ -105,66 +105,65 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} | | ${result}= | Stop Running Traffic | | Display Reconfig Test Message | ${result} *** Test Cases *** -| 64B-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf +| 64B-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf +| 64B-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf +| 64B-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf +| 1518B-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf +| 1518B-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf +| 1518B-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf +| 9000B-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf +| 9000B-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf +| 9000B-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf +| IMIX-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf +| IMIX-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes128gcm-reconf +| IMIX-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes128gcm-udir-reconf | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf.robot index 39752a9b12..6b3ef04b8d 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | RECONF | TNL_4 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | RECONF +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_40 | ... | AES_256_GCM | AES | 1_ADDED_TUNNEL | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm +| ... | ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,32 +27,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Packet loss IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[Ver] TG verification:* TG finds throughput NDR (Non Drop Rate)\ -| ... | with zero packet loss tolerance, then measures loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on -| ... | links to DUTs. TG traffic profile contains two L3 flow-groups -| ... | (flow-group per direction, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[Ver] TG verification:** TG finds throughput NDR (Non Drop Rate) \ +| ... | with zero packet loss tolerance, then measures loss at this load \ +| ... | while additional tunnels are configured. \ +| ... | Test packets are generated by TG on \ +| ... | links to DUTs. TG traffic profile contains one L3 flow-groups \ +| ... | (flow-group per direction, number of flows per flow-group equals to \ +| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -64,24 +70,23 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${4} +| ${n_tunnels}= | ${40} | ${n_added_tunnels}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -93,11 +98,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | ${n_total_tunnels} = | Evaluate | ${n_tunnels} + ${n_added_tunnels} | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} @@ -105,66 +105,65 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_total_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | ${n_tunnels} | | ${result}= | Stop Running Traffic | | Display Reconfig Test Message | ${result} *** Test Cases *** -| 64B-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf +| 64B-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf +| 64B-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf +| 64B-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf +| 1518B-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf +| 1518B-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf +| 1518B-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf +| 9000B-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf +| 9000B-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf +| 9000B-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf +| IMIX-1c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf +| IMIX-2c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec4tnlsw-1atnl-ip4base-int-aes256gcm-reconf +| IMIX-4c-ethip4ipsec40tnlsw-1atnl-ip4base-int-aes256gcm-udir-reconf | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot new file mode 100644 index 0000000000..45e981ccc1 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot @@ -0,0 +1,163 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_40 +| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${40} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec40tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot index f23e3c6f8e..ac3b0b5f0f 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_60000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_40 | ... | AES_128_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec60000tnlsw-ip4base-int-aes128gcm +| ... | ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,41 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,22 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${60000} +| ${n_tunnels}= | ${40} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,69 +99,64 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 64B-1c-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 64B-2c-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 64B-4c-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 1518B-1c-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 1518B-2c-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 1518B-4c-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 9000B-1c-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 9000B-2c-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr +| 9000B-4c-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr +| IMIX-1c-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr +| IMIX-2c-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec60000tnlsw-ip4base-int-aes128gcm-ndrpdr +| IMIX-4c-ethip4ipsec40tnlsw-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot index 93ab652954..5a2a540063 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_60000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_40 | ... | AES_256_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec60000tnlsw-ip4base-int-aes256gcm +| ... | ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,41 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,22 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${60000} +| ${n_tunnels}= | ${40} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_256_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,69 +99,64 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${NONE} -| | ${ipsec_proto} = | IPsec Proto ESP -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 64B-1c-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 64B-2c-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 64B-4c-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 1518B-1c-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 1518B-2c-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 1518B-4c-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 9000B-1c-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 9000B-2c-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr +| 9000B-4c-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr +| IMIX-1c-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr +| IMIX-2c-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec60000tnlsw-ip4base-int-aes256gcm-ndrpdr +| IMIX-4c-ethip4ipsec40tnlsw-ip4base-int-aes256gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..6c420f76f1 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr.robot @@ -0,0 +1,162 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | SCALE | TNL_40 +| ... | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 100.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${40} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Add Multiple Tunnels +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${TG_pf2}[0] | ${n_tunnels} +| | ... | ${encr_alg} | ${auth_alg} | ${tun_if1_ip4} | ${tun_if2_ip4} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec40tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot new file mode 100644 index 0000000000..198278ba1e --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot @@ -0,0 +1,165 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_4 +| ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir +| +| Suite Setup | Setup suite topology interfaces | performance | cryptohw +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${4} +| ${rxq_ratio}= | ${2} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr.robot index dbb00b6db8..a5bc4139d0 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr.robot @@ -1,5 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2024 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: @@ -14,49 +13,55 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 -| ... | IP4FWD | IPSEC | IPSECHW | ASYNC | IPSECTUN | NIC_Intel-X710 | BASE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_4 | ... | AES_128_GCM | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm +| ... | ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | ipsec_sa | | Test Template | Local Template | -| Documentation | *IPv4 IPsec tunnel mode performance test suite.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -67,23 +72,23 @@ | ${overhead}= | ${54} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 100.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${1} +| ${n_tunnels}= | ${4} +| ${rxq_ratio}= | ${2} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUTs runs IPsec tunneling AES_128_GCM config.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -95,10 +100,6 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 128 -| | ${auth_alg}= | Set Variable | ${NONE} -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} @@ -106,58 +107,58 @@ | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface | | And Enable IPSec Async Mode on all VPP DUTs -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Add Multiple Tunnels -| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${dut1_if2_ip4} | ${dut2_if1_ip4} +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 64B-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 64B-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 64B-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 1518B-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 1518B-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 1518B-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 9000B-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 9000B-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| 9000B-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| IMIX-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| IMIX-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1tnlhwasync-ip4base-policy-aes128gcm-ndrpdr +| IMIX-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes128gcm-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..12af09eda6 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr.robot @@ -0,0 +1,164 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_4 +| ... | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance | cryptohw +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | HW_DH895xcc +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${4} +| ${rxq_ratio}= | ${2} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec4tnlhwasync-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot index 89331cf111..c379426060 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr.robot +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -13,13 +13,12 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot | -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_5000 -| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_4 | ... | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha +| ... | ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -28,34 +27,41 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple\ -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it\ -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -66,23 +72,23 @@ | ${overhead}= | ${78} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 -| ${dut2_if1_ip4}= | 200.0.0.2 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.2 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 | ${addr_range}= | ${24} -| ${n_tunnels}= | ${5000} +| ${n_tunnels}= | ${4} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | 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). @@ -94,68 +100,64 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 512 256 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology +| | And Initialize IPSec in 2-node circular topology | | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} | | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-1c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-2c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 64B-4c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-1c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-2c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 1518B-4c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-1c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-2c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| 9000B-4c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-1c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-2c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec5000tnlsw-ip4base-int-aes128cbc-hmac512sha-ndrpdr +| IMIX-4c-ethip4ipsec4tnlsw-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..4302188ff7 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr.robot @@ -0,0 +1,162 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_4 +| ... | AES_128_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${4} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec4tnlsw-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..2c8af17b36 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr.robot @@ -0,0 +1,162 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | TNL_4 +| ... | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${4} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec4tnlsw-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..662c9307df --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr.robot @@ -0,0 +1,162 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | IPSECTUN | NIC_Intel-X710 | SCALE | TNL_4 +| ... | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_all +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG. DUT gets IPv4 traffic from TG, encrypts it \ +| ... | and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 100.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${4} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Add Multiple Tunnels +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${TG_pf2}[0] | ${n_tunnels} +| | ... | ${encr_alg} | ${auth_alg} | ${tun_if1_ip4} | ${tun_if2_ip4} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4ipsec4tnlsw-ip4base-policy-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot new file mode 100644 index 0000000000..4bb8330e5e --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | TNL_4 +| ... | ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG, run with IPsec async mode and use crypto \ +| ... | sw scheduler engine to schedule crypto work to crypto cores. DUT gets \ +| ... | IPv4 traffic from TG, encrypts it and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${4} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..330631c3ff --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_128_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | TNL_4 +| ... | ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG, run with IPsec async mode and use crypto \ +| ... | sw scheduler engine to schedule crypto work to crypto cores. DUT gets \ +| ... | IPv4 traffic from TG, encrypts it and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${4} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..85cfd2b346 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | TNL_4 +| ... | ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG, run with IPsec async mode and use crypto \ +| ... | sw scheduler engine to schedule crypto work to crypto cores. DUT gets \ +| ... | IPv4 traffic from TG, encrypts it and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${4} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec4tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot new file mode 100644 index 0000000000..6d851928e0 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_128_CBC | HMAC_SHA_512 | HMAC | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | TNL_8 +| ... | ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG, run with IPsec async mode and use crypto \ +| ... | sw scheduler engine to schedule crypto work to crypto cores. DUT gets \ +| ... | IPv4 traffic from TG, encrypts it and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES CBC 128 +| ${auth_alg}= | SHA 512 256 +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${78} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${8} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_512 \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128cbc-hmac512sha-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..bf6c5fe286 --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_128_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | TNL_8 +| ... | ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG, run with IPsec async mode and use crypto \ +| ... | sw scheduler engine to schedule crypto work to crypto cores. DUT gets \ +| ... | IPv4 traffic from TG, encrypts it and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 128 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${8} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_128_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes128gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot new file mode 100644 index 0000000000..fb562f220e --- /dev/null +++ b/tests/vpp/perf/crypto/2n1l-10ge2p1x710-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | UDIR | PERFTEST | HW_ENV | NDRPDR +| ... | IP4FWD | IPSEC | IPSECSW | ASYNC | IPSECINT | NIC_Intel-X710 | SCALE +| ... | SCHEDULER | AES_256_GCM | AES | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | TNL_8 +| ... | ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance | ipsec_sa +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 IPsec tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUT1, \ +| ... | Eth-IPv4-IPSec on DUT1-TG. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with multiple IPsec \ +| ... | tunnels between it and TG, run with IPsec async mode and use crypto \ +| ... | sw scheduler engine to schedule crypto work to crypto cores. DUT gets \ +| ... | IPv4 traffic from TG, encrypts it and sends back to TG. +| ... | +| ... | - **[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 one L3 flow-groups (number of flows \ +| ... | per flow-group equals to number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | field is applied to the stream. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so +| ... | crypto_ipsecmb_plugin.so | crypto_sw_scheduler_plugin.so +| ... | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${encr_alg}= | AES GCM 256 +| ${auth_alg}= | NONE +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${54} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${tun_if1_ip4}= | 100.0.0.1 +| ${tun_if2_ip4}= | 200.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${addr_range}= | ${24} +| ${n_tunnels}= | ${8} +| ${dp_cores_count}= | ${1} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${n_tunnels}-udir +| ${traffic_directions}= | ${1} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPSec tunneling AES_256_GCM config. \ +| | ... | Each DUT uses one physical core for data plane workers \ +| | ... | and rest of ${phy_cores} physical core(s) for crypto workers. +| | ... | - **[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 - Total number of physical cores. Type: integer +| | ... | - rxq - Number of RX queues, default value: ${1}. Type: integer +| | +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Enable IPSec Async Mode on all VPP DUTs +| | And Set Data Plane And Feature Plane Workers for IPsec on all VPP DUTs +| | And Initialize IPSec in 2-node circular topology +| | And VPP IPsec Create Tunnel Interfaces +| | ... | ${nodes} | ${tun_if1_ip4} | ${tun_if2_ip4} | ${DUT1_${int}2}[0] +| | ... | ${TG_pf2}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} +| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 3C +| | frame_size=${64} | phy_cores=${3} + +| 64B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 3C +| | frame_size=${1518} | phy_cores=${3} + +| 1518B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 3C +| | frame_size=${9000} | phy_cores=${3} + +| 9000B-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-2c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-3c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 3C +| | frame_size=IMIX_v4_1 | phy_cores=${3} + +| IMIX-4c-ethip4ipsec8tnlswasync-scheduler-ip4base-int-aes256gcm-udir-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/regenerate_testcases.py b/tests/vpp/perf/crypto/regenerate_testcases.py index bba2711971..e22f6de5c3 100755 --- a/tests/vpp/perf/crypto/regenerate_testcases.py +++ b/tests/vpp/perf/crypto/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2tap-gso-iperf3.robot b/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2tap-gso-iperf3-mrr.robot index 91141ce1fa..862ac91203 100644 --- a/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2tap-gso-iperf3.robot +++ b/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2tap-gso-iperf3-mrr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -17,26 +17,31 @@ | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | MRR | ... | NIC_Intel-X710 | IP4FWD | BASE | IP4BASE | DRV_TAP | ... | RXQ_SIZE_4096 | TXQ_SIZE_4096 | GSO_TRUE -| ... | ethip4-ip4base-2tap-gso +| ... | ethip4-ip4base-2tap-gso-iperf3 | -| Suite Setup | Setup suite topology interfaces +| Suite Setup | Setup suite topology interfaces | iPerf3 | Suite Teardown | Tear down suite | Test Setup | Setup test | Test Teardown | Tear down test | iPerf3 | namespace | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases with TAPv2* -| -| ... | *[Top] Network Topologies:* DUT1 1-node topology without physical links. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing. -| ... | *[Ver] TG verification:* iPerf3 client/server is used for Packet\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases with TAPv2** +| ... | +| ... | - **[Top] Network Topologies:** DUT1 1-node topology without physical \ +| ... | links. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing. +| ... | +| ... | - **[Ver] TG verification:** iPerf3 client/server is used for Packet \ | ... | generation and verification. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | ping_plugin.so +| @{plugins_to_enable}= | ping_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | tap @@ -47,6 +52,7 @@ | ${osi_layer}= | L7 | ${overhead}= | ${0} | ${enable_gso}= | ${True} +| ${smt_used}= | ${False} # iPerf3 client settings: | ${iperf_client_bind}= | 1.1.1.1 | ${iperf_client_bind_gw}= | 1.1.1.2 @@ -66,14 +72,14 @@ | ${iperf_server_pf_key}= | ${None} # Trial data overwrite: | ${trial_duration}= | ${30} -| ${trial_multiplicity}= | ${4} +| ${trial_multiplicity}= | ${10} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT configuration: DUT1 is configured with IPv4 routing. -| | ... | [Ver] Measure MaxReceivedRate for ${frame_size}B frames\ -| | ... | using burst trials throughput test.\ +| | ... | - **[Cfg]** DUT configuration: DUT1 is configured with IPv4 routing. +| | ... | - **[Ver]** Measure MaxReceivedRate for ${frame_size}B frames \ +| | ... | using burst trials throughput test. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer, string @@ -83,7 +89,6 @@ | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | | | Set Test Variable | \${frame_size} -| | Set Test Variable | \${rxq_ratio} | ${1} | | | | Given Set Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} @@ -99,14 +104,14 @@ | | Then Traffic should pass with maximum rate on iPerf3 *** Test Cases *** -| 128KB-1c-ethip4-ip4base-2tap-gso-iperf3 +| 128KB-1c-ethip4-ip4base-2tap-gso-iperf3-mrr | | [Tags] | 128KB | 1C | | frame_size=${128000} | phy_cores=${1} -| 128KB-2c-ethip4-ip4base-2tap-gso-iperf3 +| 128KB-2c-ethip4-ip4base-2tap-gso-iperf3-mrr | | [Tags] | 128KB | 2C | | frame_size=${128000} | phy_cores=${2} -| 128KB-4c-ethip4-ip4base-2tap-gso-iperf3 +| 128KB-4c-ethip4-ip4base-2tap-gso-iperf3-mrr | | [Tags] | 128KB | 4C | | frame_size=${128000} | phy_cores=${4} diff --git a/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2tap-iperf3.robot b/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2tap-iperf3-mrr.robot index 31ece186ec..c093208afb 100644 --- a/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2tap-iperf3.robot +++ b/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2tap-iperf3-mrr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -17,26 +17,31 @@ | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | MRR | ... | NIC_Intel-X710 | IP4FWD | BASE | IP4BASE | DRV_TAP | ... | RXQ_SIZE_4096 | TXQ_SIZE_4096 | GSO_FALSE -| ... | ethip4-ip4base-2tap +| ... | ethip4-ip4base-2tap-iperf3 | -| Suite Setup | Setup suite topology interfaces +| Suite Setup | Setup suite topology interfaces | iPerf3 | Suite Teardown | Tear down suite | Test Setup | Setup test | Test Teardown | Tear down test | iPerf3 | namespace | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases with TAPv2* -| -| ... | *[Top] Network Topologies:* DUT1 1-node topology without physical links. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing. -| ... | *[Ver] TG verification:* iPerf3 client/server is used for Packet\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases with TAPv2** +| ... | +| ... | - **[Top] Network Topologies:** DUT1 1-node topology without physical \ +| ... | links. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing. +| ... | +| ... | - **[Ver] TG verification:** iPerf3 client/server is used for Packet \ | ... | generation and verification. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | ping_plugin.so +| @{plugins_to_enable}= | ping_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | tap @@ -47,6 +52,7 @@ | ${osi_layer}= | L7 | ${overhead}= | ${0} | ${enable_gso}= | ${False} +| ${smt_used}= | ${False} # iPerf3 client settings: | ${iperf_client_bind}= | 1.1.1.1 | ${iperf_client_bind_gw}= | 1.1.1.2 @@ -66,14 +72,14 @@ | ${iperf_server_pf_key}= | ${None} # Trial data overwrite: | ${trial_duration}= | ${30} -| ${trial_multiplicity}= | ${4} +| ${trial_multiplicity}= | ${10} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT configuration: DUT1 is configured with IPv4 routing. -| | ... | [Ver] Measure MaxReceivedRate for ${frame_size}B frames\ -| | ... | using burst trials throughput test.\ +| | ... | - **[Cfg]** DUT configuration: DUT1 is configured with IPv4 routing. +| | ... | - **[Ver]** Measure MaxReceivedRate for ${frame_size}B frames \ +| | ... | using burst trials throughput test. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer, string @@ -83,7 +89,6 @@ | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | | | Set Test Variable | \${frame_size} -| | Set Test Variable | \${rxq_ratio} | ${1} | | | | Given Set Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} @@ -99,14 +104,14 @@ | | Then Traffic should pass with maximum rate on iPerf3 *** Test Cases *** -| 128KB-1c-ethip4-ip4base-2tap-iperf3 +| 128KB-1c-ethip4-ip4base-2tap-iperf3-mrr | | [Tags] | 128KB | 1C | | frame_size=${128000} | phy_cores=${1} -| 128KB-2c-ethip4-ip4base-2tap-iperf3 +| 128KB-2c-ethip4-ip4base-2tap-iperf3-mrr | | [Tags] | 128KB | 2C | | frame_size=${128000} | phy_cores=${2} -| 128KB-4c-ethip4-ip4base-2tap-iperf3 +| 128KB-4c-ethip4-ip4base-2tap-iperf3-mrr | | [Tags] | 128KB | 4C | | frame_size=${128000} | phy_cores=${4} diff --git a/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2vhost-gso-iperf3.robot b/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2vhost-gso-iperf3-mrr.robot index 849504050d..c5c2e494f5 100644 --- a/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2vhost-gso-iperf3.robot +++ b/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2vhost-gso-iperf3-mrr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -17,26 +17,31 @@ | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | MRR | ... | NIC_Intel-X710 | IP4FWD | BASE | IP4BASE | DRV_VHOST | ... | RXQ_SIZE_4096 | TXQ_SIZE_4096 | GSO_TRUE -| ... | ethip4-ip4base-2vhost-gso +| ... | ethip4-ip4base-2vhost-gso-iperf3 | -| Suite Setup | Setup suite topology interfaces +| Suite Setup | Setup suite topology interfaces | iPerf3 | Suite Teardown | Tear down suite | Test Setup | Setup test | Test Teardown | Tear down test | iPerf3 | vhost | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases with VHOST* -| -| ... | *[Top] Network Topologies:* DUT1 1-node topology without physical links. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing. -| ... | *[Ver] TG verification:* iPerf3 client/server is used for Packet\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases with VHOST** +| ... | +| ... | - **[Top] Network Topologies:** DUT1 1-node topology without physical \ +| ... | links. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing. +| ... | +| ... | - **[Ver] TG verification:** iPerf3 client/server is used for Packet \ | ... | generation and verification. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | ping_plugin.so +| @{plugins_to_enable}= | ping_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vhost @@ -46,6 +51,7 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L7 | ${overhead}= | ${0} +| ${smt_used}= | ${False} # Qemu settings: | ${enable_gso}= | ${True} | ${enable_csum}= | ${True} @@ -70,14 +76,14 @@ | ${iperf_server_pf_key}= | ${None} # Trial data overwrite: | ${trial_duration}= | ${30} -| ${trial_multiplicity}= | ${4} +| ${trial_multiplicity}= | ${10} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT configuration: DUT1 is configured with IPv4 routing. -| | ... | [Ver] Measure MaxReceivedRate for ${frame_size}B frames\ -| | ... | using burst trials throughput test.\ +| | ... | - **[Cfg]** DUT configuration: DUT1 is configured with IPv4 routing. +| | ... | - **[Ver]** Measure MaxReceivedRate for ${frame_size}B frames \ +| | ... | using burst trials throughput test. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer, string @@ -87,7 +93,6 @@ | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | | | Set Test Variable | \${frame_size} -| | Set Test Variable | \${rxq_ratio} | ${1} | | | | Given Set Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} @@ -108,14 +113,14 @@ | | Traffic should pass with maximum rate on iPerf3 *** Test Cases *** -| 128KB-1c-ethip4-ip4base-2vhost-gso-iperf3 +| 128KB-1c-ethip4-ip4base-2vhost-gso-iperf3-mrr | | [Tags] | 128KB | 1C | | frame_size=${128000} | phy_cores=${1} -| 128KB-2c-ethip4-ip4base-2vhost-gso-iperf3 +| 128KB-2c-ethip4-ip4base-2vhost-gso-iperf3-mrr | | [Tags] | 128KB | 2C | | frame_size=${128000} | phy_cores=${2} -| 128KB-4c-ethip4-ip4base-2vhost-gso-iperf3 +| 128KB-4c-ethip4-ip4base-2vhost-gso-iperf3-mrr | | [Tags] | 128KB | 4C | | frame_size=${128000} | phy_cores=${4} diff --git a/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2vhost-iperf3.robot b/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2vhost-iperf3-mrr.robot index c31097eb7c..f5d6db5b1a 100644 --- a/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2vhost-iperf3.robot +++ b/tests/vpp/perf/gso/2n1l-10ge2p1x710-ethip4-ip4base-2vhost-iperf3-mrr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -17,26 +17,31 @@ | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | MRR | ... | NIC_Intel-X710 | IP4FWD | BASE | IP4BASE | DRV_VHOST | ... | RXQ_SIZE_1024 | TXQ_SIZE_1024 | GSO_TRUE -| ... | ethip4-ip4base-2vhost-gso +| ... | ethip4-ip4base-2vhost-iperf3 | -| Suite Setup | Setup suite topology interfaces +| Suite Setup | Setup suite topology interfaces | iPerf3 | Suite Teardown | Tear down suite | Test Setup | Setup test | Test Teardown | Tear down test | iPerf3 | vhost | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases with VHOST* -| -| ... | *[Top] Network Topologies:* DUT1 1-node topology without physical links. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing. -| ... | *[Ver] TG verification:* iPerf3 client/server is used for Packet\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases with VHOST** +| ... | +| ... | - **[Top] Network Topologies:** DUT1 1-node topology without physical \ +| ... | links. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing. +| ... | +| ... | - **[Ver] TG verification:** iPerf3 client/server is used for Packet \ | ... | generation and verification. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | ping_plugin.so +| @{plugins_to_enable}= | ping_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vhost @@ -46,6 +51,7 @@ | ${nic_vfs}= | 0 | ${osi_layer}= | L7 | ${overhead}= | ${0} +| ${smt_used}= | ${False} # Qemu settings: | ${enable_gso}= | ${False} | ${enable_csum}= | ${False} @@ -70,14 +76,14 @@ | ${iperf_server_pf_key}= | ${None} # Trial data overwrite: | ${trial_duration}= | ${30} -| ${trial_multiplicity}= | ${4} +| ${trial_multiplicity}= | ${10} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT configuration: DUT1 is configured with IPv4 routing. -| | ... | [Ver] Measure MaxReceivedRate for ${frame_size}B frames\ -| | ... | using burst trials throughput test.\ +| | ... | - **[Cfg]** DUT configuration: DUT1 is configured with IPv4 routing. +| | ... | - **[Ver]** Measure MaxReceivedRate for ${frame_size}B frames \ +| | ... | using burst trials throughput test. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer. Type: integer, string @@ -87,7 +93,6 @@ | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | | | Set Test Variable | \${frame_size} -| | Set Test Variable | \${rxq_ratio} | ${1} | | | | Given Set Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} @@ -108,14 +113,14 @@ | | Traffic should pass with maximum rate on iPerf3 *** Test Cases *** -| 128KB-1c-ethip4-ip4base-2vhost-iperf3 +| 128KB-1c-ethip4-ip4base-2vhost-iperf3-mrr | | [Tags] | 128KB | 1C | | frame_size=${128000} | phy_cores=${1} -| 128KB-2c-ethip4-ip4base-2vhost-iperf3 +| 128KB-2c-ethip4-ip4base-2vhost-iperf3-mrr | | [Tags] | 128KB | 2C | | frame_size=${128000} | phy_cores=${2} -| 128KB-4c-ethip4-ip4base-2vhost-iperf3 +| 128KB-4c-ethip4-ip4base-2vhost-iperf3-mrr | | [Tags] | 128KB | 4C | | frame_size=${128000} | phy_cores=${4} diff --git a/tests/vpp/perf/gso/regenerate_testcases.py b/tests/vpp/perf/gso/regenerate_testcases.py index 87521e662d..e22f6de5c3 100755 --- a/tests/vpp/perf/gso/regenerate_testcases.py +++ b/tests/vpp/perf/gso/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpbase-ldpreload-iperf3-bps.robot b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpbase-ldpreload-iperf3-bps.robot index a8d7bf0aa0..2f8232e4c2 100644 --- a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpbase-ldpreload-iperf3-bps.robot +++ b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpbase-ldpreload-iperf3-bps.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -22,38 +22,42 @@ | ... | LDPRELOAD | IPERF3 | 1CLIENT | 1STREAM | 1460B | ... | eth-ip4tcpbase-ldpreload-iperf3 | -| Suite Setup | Setup suite topology interfaces with no TG +| Suite Setup | Setup suite topology interfaces with no TG | iPerf3 | Suite Teardown | Tear down suite | hoststack | Test Setup | Setup test | Test Teardown | Tear down test | | Test Template | Local template | -| Documentation | *Iperf3 client -> Iperf3 server goodput. -| -| ... | *[Top] Network Topologies:* DUT-DUT 2-node topology +| Documentation | **Iperf3 client -> Iperf3 server goodput.** +| ... | +| ... | - **[Top] Network Topologies:** DUT-DUT 2-node topology \ | ... | with single link between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP -| ... | *[Cfg] DUT configuration:* -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 +| ${smt_used}= | ${False} | ${overhead}= | ${0} -| ${frame_size}= | ${9000} +| ${dpdk_no_tx_checksum_offload}= | ${False} +| ${frame_size}= | ${1518} | ${crypto_type}= | ${None} *** Keywords *** | Local template | | [Arguments] | ${phy_cores} | | -| | Set Test Variable | ${dpdk_no_tx_checksum_offload} | ${False} | | Set VPP Hoststack Attributes | phy_cores=${phy_cores} | | ${defer_fail}= | Get Test Results From Hoststack Iperf3 Test | | Run Keyword If | ${defer_fail}==True | FAIL diff --git a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpbase-nsim-ldpreload-iperf3-bps.robot b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpbase-nsim-ldpreload-iperf3-bps.robot index f30c8d6985..39dd77f684 100644 --- a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpbase-nsim-ldpreload-iperf3-bps.robot +++ b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpbase-nsim-ldpreload-iperf3-bps.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -22,31 +22,36 @@ | ... | NSIM | LDPRELOAD | IPERF3 | 1CLIENT | 1STREAM | 1460B | ... | eth-ip4tcpbase-nsim-ldpreload-iperf3 | -| Suite Setup | Setup suite topology interfaces with no TG +| Suite Setup | Setup suite topology interfaces with no TG | iPerf3 | Suite Teardown | Tear down suite | Test Setup | Setup test | Test Teardown | Tear down test | | Test Template | Local template | -| Documentation | *Iperf3 client -> Iperf3 server goodput. -| -| ... | *[Top] Network Topologies:* DUT-DUT 2-node topology +| Documentation | **Iperf3 client -> Iperf3 server goodput.** +| ... | +| ... | - **[Top] Network Topologies:** DUT-DUT 2-node topology \ | ... | with single link between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP -| ... | *[Cfg] DUT configuration:* -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nsim_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nsim_plugin.so | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 +| ${smt_used}= | ${False} | ${overhead}= | ${0} -| ${frame_size}= | ${9000} +| ${dpdk_no_tx_checksum_offload}= | ${False} +| ${frame_size}= | ${1518} | ${crypto_type}= | ${None} | ${pkts_per_drop}= | ${100} diff --git a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpscale1cl10s-ldpreload-iperf3-bps.robot b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpscale1cl10s-ldpreload-iperf3-bps.robot index 9b2d0500ef..17ac73b8e0 100644 --- a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpscale1cl10s-ldpreload-iperf3-bps.robot +++ b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpscale1cl10s-ldpreload-iperf3-bps.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -22,23 +22,26 @@ | ... | LDPRELOAD | IPERF3 | 1CLIENT | 10STREAM | 1460B | ... | eth-ip4tcpscale1cl10s-ldpreload-iperf3 | -| Suite Setup | Setup suite topology interfaces with no TG +| Suite Setup | Setup suite topology interfaces with no TG | iPerf3 | Suite Teardown | Tear down suite | hoststack | Test Setup | Setup test | Test Teardown | Tear down test | | Test Template | Local template | -| Documentation | *Iperf3 client -> Iperf3 server goodput. -| -| ... | *[Top] Network Topologies:* DUT-DUT 2-node topology +| Documentation | **Iperf3 client -> Iperf3 server goodput.** +| ... | +| ... | - **[Top] Network Topologies:** DUT-DUT 2-node topology \ | ... | with single link between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP -| ... | *[Cfg] DUT configuration:* -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -46,7 +49,8 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} -| ${frame_size}= | ${9000} +| ${dpdk_no_tx_checksum_offload}= | ${False} +| ${frame_size}= | ${1518} | ${crypto_type}= | ${None} | ${streams} | ${10} @@ -54,7 +58,6 @@ | Local template | | [Arguments] | ${phy_cores} | | -| | Set Test Variable | ${dpdk_no_tx_checksum_offload} | ${False} | | Set VPP Hoststack Attributes | phy_cores=${phy_cores} | | Set Iperf3 Client Attributes | parallel=${streams} | | ${defer_fail}= | Get Test Results From Hoststack Iperf3 Test diff --git a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpscale1cl10s-nsim-ldpreload-iperf3-bps.robot b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpscale1cl10s-nsim-ldpreload-iperf3-bps.robot index 64144d10e9..30ac61def0 100644 --- a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpscale1cl10s-nsim-ldpreload-iperf3-bps.robot +++ b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4tcpscale1cl10s-nsim-ldpreload-iperf3-bps.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -22,23 +22,26 @@ | ... | NSIM | LDPRELOAD | IPERF3 | 1CLIENT | 10STREAM | 1460B | ... | eth-ip4tcpscale1cl10s-nsim-ldpreload-iperf3 | -| Suite Setup | Setup suite topology interfaces with no TG +| Suite Setup | Setup suite topology interfaces with no TG | iPerf3 | Suite Teardown | Tear down suite | Test Setup | Setup test | Test Teardown | Tear down test | | Test Template | Local template | -| Documentation | *Iperf3 client -> Iperf3 server goodput. -| -| ... | *[Top] Network Topologies:* DUT-DUT 2-node topology +| Documentation | **Iperf3 client -> Iperf3 server goodput.** +| ... | +| ... | - **[Top] Network Topologies:** DUT-DUT 2-node topology \ | ... | with single link between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP -| ... | *[Cfg] DUT configuration:* -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nsim_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nsim_plugin.so | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -46,7 +49,8 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} -| ${frame_size}= | ${9000} +| ${dpdk_no_tx_checksum_offload}= | ${False} +| ${frame_size}= | ${1518} | ${crypto_type}= | ${None} | ${pkts_per_drop}= | ${100} | ${streams}= | ${10} diff --git a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpbase-ldpreload-iperf3-bps.robot b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpbase-ldpreload-iperf3-bps.robot new file mode 100644 index 0000000000..491e20b170 --- /dev/null +++ b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpbase-ldpreload-iperf3-bps.robot @@ -0,0 +1,74 @@ +# Copyright (c) 2024 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 *** +| Library | resources.libraries.python.HoststackUtil +| Resource | resources/libraries/robot/shared/default.robot +| Resource | resources/libraries/robot/hoststack/hoststack.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV +| ... | UDP | NIC_Intel-X710 | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | HOSTSTACK +| ... | LDPRELOAD | IPERF3 | 1CLIENT | 1STREAM | 1460B +| ... | eth-ip4udpbase-ldpreload-iperf3 +| +| Suite Setup | Setup suite topology interfaces with no TG | iPerf3 +| Suite Teardown | Tear down suite | hoststack +| Test Setup | Setup test +| Test Teardown | Tear down test +| +| Test Template | Local template +| +| Documentation | **Iperf3 client -> Iperf3 server goodput.** +| ... | +| ... | - **[Top] Network Topologies:** DUT-DUT 2-node topology \ +| ... | with single link between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${smt_used}= | ${False} +| ${overhead}= | ${0} +| ${dpdk_no_tx_checksum_offload}= | ${False} +| ${frame_size}= | ${1518} +| ${crypto_type}= | ${None} +| ${iperf3_packet_length}= | ${1460} + +*** Keywords *** +| Local template +| | [Arguments] | ${phy_cores} +| | +| | Set VPP Hoststack Attributes | phy_cores=${phy_cores} +| | ${bandwidth} = | Get From Dictionary +| | ... | ${NIC_NAME_TO_BPS_LIMIT} | ${nic_name} +| | Set Iperf3 Client Attributes | udp=${True} | bandwidth=${bandwidth} +| | ... | length=${iperf3_packet_length} +| | ${defer_fail}= | Get Test Results From Hoststack Iperf3 Test +| | Run Keyword If | ${defer_fail}==True | FAIL +| | ... | Defered Failure From Hoststack Iperf3 Test Program + +*** Test Cases *** +| 1460B-1c-eth-ip4udpbase-ldpreload-iperf3-bps +| | [Tags] | 1C +| | phy_cores=${1} diff --git a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicbase-vppecho-bps.robot b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicbase-vppecho-bps.robot index ff0cbb3271..5f2eafb2f5 100644 --- a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicbase-vppecho-bps.robot +++ b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicbase-vppecho-bps.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -21,33 +21,38 @@ | ... | RXQ_SIZE_0 | TXQ_SIZE_0 | UDP | QUIC | VPPECHO | ... | 1CLIENT | 1STREAM | HOSTSTACK | 1280B | eth-ip4udpquicbase-vppecho | -| Suite Setup | Setup suite topology interfaces with no TG +| Suite Setup | Setup suite topology interfaces with no TG | vppecho | Suite Teardown | Tear down suite | Test Setup | Setup test | Test Teardown | Tear down test | | Test Template | Local template | -| Documentation | *QUIC Unidirectional Echo Client -> Echo Server goodput. -| -| ... | *[Top] Network Topologies:* DUT-DUT 2-node topology +| Documentation | **QUIC Unidirectional Echo Client -> Echo Server goodput.** +| ... | +| ... | - **[Top] Network Topologies:** DUT-DUT 2-node topology \ | ... | with single link between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP-QUIC -| ... | *[Cfg] DUT configuration:* -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP-QUIC +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | quic_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | quic_plugin.so | crypto_openssl_plugin.so | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 | ${nic_txq_size}= | 0 | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 +| ${smt_used}= | ${False} | ${overhead}= | ${0} -| ${frame_size}= | ${9000} +| ${dpdk_no_tx_checksum_offload}= | ${False} +| ${frame_size}= | ${1518} | ${crypto_type}= | ${None} -| ${bytes}= | 10G +| ${bytes}= | 5G *** Keywords *** | Local template diff --git a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicscale10cl10s-vppecho-bps.robot b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicscale10cl10s-vppecho-bps.robot index 7cef9aeac1..5806905b4f 100644 --- a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicscale10cl10s-vppecho-bps.robot +++ b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicscale10cl10s-vppecho-bps.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -22,23 +22,26 @@ | ... | HOSTSTACK | 10CLIENT | 10STREAM | 1280B | ... | eth-ip4udpquicscale10cl10s-vppecho | -| Suite Setup | Setup suite topology interfaces with no TG +| Suite Setup | Setup suite topology interfaces with no TG | vppecho | Suite Teardown | Tear down suite | Test Setup | Setup test | Test Teardown | Tear down test | | Test Template | Local template | -| Documentation | *QUIC Unidirectional Echo Client -> Echo Server goodput. -| -| ... | *[Top] Network Topologies:* DUT-DUT 2-node topology +| Documentation | **QUIC Unidirectional Echo Client -> Echo Server goodput.** +| ... | +| ... | - **[Top] Network Topologies:** DUT-DUT 2-node topology \ | ... | with single link between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP-QUIC -| ... | *[Cfg] DUT configuration:* -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP-QUIC +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | quic_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | quic_plugin.so | crypto_openssl_plugin.so | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -46,7 +49,8 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} -| ${frame_size}= | ${9000} +| ${dpdk_no_tx_checksum_offload}= | ${False} +| ${frame_size}= | ${1518} | ${crypto_type}= | ${None} | ${clients}= | ${10} | ${streams}= | ${10} diff --git a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicscale10cl1s-vppecho-bps.robot b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicscale10cl1s-vppecho-bps.robot index ad0a7a7619..a31273681e 100644 --- a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicscale10cl1s-vppecho-bps.robot +++ b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicscale10cl1s-vppecho-bps.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -22,23 +22,26 @@ | ... | HOSTSTACK | 10CLIENT | 1STREAM | 1280B | ... | eth-ip4udpquicscale10cl1s-vppecho | -| Suite Setup | Setup suite topology interfaces with no TG +| Suite Setup | Setup suite topology interfaces with no TG | vppecho | Suite Teardown | Tear down suite | Test Setup | Setup test | Test Teardown | Tear down test | | Test Template | Local template | -| Documentation | *QUIC Unidirectional Echo Client -> Echo Server goodput. -| -| ... | *[Top] Network Topologies:* DUT-DUT 2-node topology +| Documentation | **QUIC Unidirectional Echo Client -> Echo Server goodput.** +| ... | +| ... | - **[Top] Network Topologies:** DUT-DUT 2-node topology \ | ... | with single link between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP-QUIC -| ... | *[Cfg] DUT configuration:* -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP-QUIC +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | quic_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | quic_plugin.so | crypto_openssl_plugin.so | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -46,7 +49,8 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} -| ${frame_size}= | ${9000} +| ${dpdk_no_tx_checksum_offload}= | ${False} +| ${frame_size}= | ${1518} | ${crypto_type}= | ${None} | ${clients}= | ${10} | ${bytes}= | 1G diff --git a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicscale1cl10s-vppecho-bps.robot b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicscale1cl10s-vppecho-bps.robot index a3662784b9..59951aa5db 100644 --- a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicscale1cl10s-vppecho-bps.robot +++ b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpquicscale1cl10s-vppecho-bps.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -22,23 +22,26 @@ | ... | HOSTSTACK | 1CLIENT | 10STREAM | 1280B | ... | eth-ip4udpquicscale1cl10s-vppecho | -| Suite Setup | Setup suite topology interfaces with no TG +| Suite Setup | Setup suite topology interfaces with no TG | vppecho | Suite Teardown | Tear down suite | Test Setup | Setup test | Test Teardown | Tear down test | | Test Template | Local template | -| Documentation | *QUIC Unidirectional Echo Client -> Echo Server goodput. -| -| ... | *[Top] Network Topologies:* DUT-DUT 2-node topology +| Documentation | **QUIC Unidirectional Echo Client -> Echo Server goodput.** +| ... | +| ... | - **[Top] Network Topologies:** DUT-DUT 2-node topology \ | ... | with single link between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP-QUIC -| ... | *[Cfg] DUT configuration:* -| ... | *[Ref] Applicable standard specifications:* +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP-QUIC +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | quic_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | quic_plugin.so | crypto_openssl_plugin.so | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci | ${nic_rxq_size}= | 0 @@ -46,7 +49,8 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${overhead}= | ${0} -| ${frame_size}= | ${9000} +| ${dpdk_no_tx_checksum_offload}= | ${False} +| ${frame_size}= | ${1518} | ${crypto_type}= | ${None} | ${streams}= | ${10} | ${bytes}= | 1G diff --git a/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpscale1cl10s-ldpreload-iperf3-bps.robot b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpscale1cl10s-ldpreload-iperf3-bps.robot new file mode 100644 index 0000000000..0368f9d15b --- /dev/null +++ b/tests/vpp/perf/hoststack/10ge2p1x710-eth-ip4udpscale1cl10s-ldpreload-iperf3-bps.robot @@ -0,0 +1,74 @@ +# Copyright (c) 2024 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 *** +| Library | resources.libraries.python.HoststackUtil +| Resource | resources/libraries/robot/shared/default.robot +| Resource | resources/libraries/robot/hoststack/hoststack.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV +| ... | UDP | NIC_Intel-X710 | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | HOSTSTACK +| ... | LDPRELOAD | IPERF3 | 1CLIENT | 10STREAM | 1460B +| ... | eth-ip4udpscale1cl10s-ldpreload-iperf3 +| +| Suite Setup | Setup suite topology interfaces with no TG | iPerf3 +| Suite Teardown | Tear down suite | hoststack +| Test Setup | Setup test +| Test Teardown | Tear down test +| +| Test Template | Local template +| +| Documentation | **Iperf3 client -> Iperf3 server goodput.** +| ... | +| ... | - **[Top] Network Topologies:** DUT-DUT 2-node topology \ +| ... | with single link between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${dpdk_no_tx_checksum_offload}= | ${False} +| ${frame_size}= | ${1518} +| ${crypto_type}= | ${None} +| ${streams} | ${10} +| ${iperf3_packet_length}= | ${1460} + +*** Keywords *** +| Local template +| | [Arguments] | ${phy_cores} +| | +| | Set VPP Hoststack Attributes | phy_cores=${phy_cores} +| | ${bandwidth} = | Get From Dictionary +| | ... | ${NIC_NAME_TO_BPS_LIMIT} | ${nic_name} +| | Set Iperf3 Client Attributes | udp=${True} | bandwidth=${bandwidth} +| | ... | parallel=${streams} | length=${iperf3_packet_length} +| | ${defer_fail}= | Get Test Results From Hoststack Iperf3 Test +| | Run Keyword If | ${defer_fail}==True | FAIL +| | ... | Defered Failure From Hoststack Iperf3 Test Program + +*** Test Cases *** +| 1460B-1c-eth-ip4udpscale1cl10s-ldpreload-iperf3-bps +| | [Tags] | 1C +| | phy_cores=${1} diff --git a/tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-cps.robot b/tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-cps.robot new file mode 100644 index 0000000000..cd6cb673c5 --- /dev/null +++ b/tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-cps.robot @@ -0,0 +1,122 @@ +# Copyright (c) 2024 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/hoststack/hoststack.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV +| ... | HOSTSTACK | LDP_NGINX | TCP | NIC_Intel-X710 | DRV_VFIO_PCI +| ... | TCP_CPS | DMA +| ... | eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5 +| +| Suite Setup | Setup suite topology interfaces | ab | nginx +| Suite Teardown | Tear down suite | ab +| Test Setup | Setup test +| Test Teardown | Tear down test | nginx +| +| Test Template | Local Template +| +| Documentation | **TCP requests per second.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT-TG 2-node topology \ +| ... | with single link between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP-HTTP for TCP +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ver] TG verification:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | dma_intel_plugin.so | ping_plugin.so +| ${nic_name}= | Intel-X710 +| ${crypto_type}= | ${None} +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${dpdk_no_tx_checksum_offload}= | ${False} +#| ${page_size}= | 1G +| ${ciphers}= | 0 +| ${rps_cps}= | cps +| ${qat}= | ${0} +| ${r_total}= | ${1000000} +| ${c_total}= | ${2000} +| ${listen_port}= | ${80} +| ${mode}= | ldp +| ${tls_tcp}= | tcp +| ${keep_time}= | 0 +| ${ab_ip_prefix}= | 24 +| @{ab_ip_addrs}= | 192.168.10.2 +| ${dut_ip_prefix}= | 24 +| @{dut_ip_addrs}= | 192.168.10.1 +| ${nginx_version}= | 1.21.5 +| ${use_dma}= | ${True} + +*** Keywords *** +| Local template +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Add Additional Startup Configuration For DMA On All DUTs +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set up LDP or VCL Nginx on DUT1 node | ${mode} +| | ... | ${rps_cps} | ${phy_cores} | ${qat} | ${tls_tcp} +| | ... | ${True} +| | And Additional Suite Setup Action For ab +| | Then Measure TLS requests or connections per second +| | ... | ${ciphers} | ${frame_size} | ${tls_tcp} | ${rps_cps} + +*** Test Cases *** +| 0B-1c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-cps +| | [Tags] | 0B | 1C +| | frame_size=${0} | phy_cores=${1} + +| 0B-2c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-cps +| | [Tags] | 0B | 2C +| | frame_size=${0} | phy_cores=${2} + +| 64B-1c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-cps +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-cps +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 1024B-1c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-cps +| | [Tags] | 1024B | 1C +| | frame_size=${1024} | phy_cores=${1} + +| 1024B-2c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-cps +| | [Tags] | 1024B | 2C +| | frame_size=${1024} | phy_cores=${2} + +| 2048B-1c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-cps +| | [Tags] | 2048B | 1C +| | frame_size=${2048} | phy_cores=${1} + +| 2048B-2c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-cps +| | [Tags] | 2048B | 2C +| | frame_size=${2048} | phy_cores=${2} diff --git a/tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-rps.robot b/tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-rps.robot new file mode 100644 index 0000000000..e1680b4779 --- /dev/null +++ b/tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-rps.robot @@ -0,0 +1,122 @@ +# Copyright (c) 2024 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/hoststack/hoststack.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV +| ... | HOSTSTACK | LDP_NGINX | TCP | NIC_Intel-X710 | DRV_VFIO_PCI +| ... | TCP_RPS | DMA +| ... | eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5 +| +| Suite Setup | Setup suite topology interfaces | ab | nginx +| Suite Teardown | Tear down suite | ab +| Test Setup | Setup test +| Test Teardown | Tear down test | nginx +| +| Test Template | Local Template +| +| Documentation | **TCP requests per seconds.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT-TG 2-node topology \ +| ... | with single link between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP-HTTP for TCP +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ver] TG verification:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | dma_intel_plugin.so | ping_plugin.so +| ${nic_name}= | Intel-X710 +| ${crypto_type}= | ${None} +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${dpdk_no_tx_checksum_offload}= | ${False} +#| ${page_size}= | 1G +| ${ciphers}= | 0 +| ${rps_cps}= | rps +| ${qat}= | ${0} +| ${r_total}= | ${1000000} +| ${c_total}= | ${2000} +| ${listen_port}= | ${80} +| ${mode}= | ldp +| ${tls_tcp}= | tcp +| ${keep_time}= | 300 +| ${ab_ip_prefix}= | 24 +| @{ab_ip_addrs}= | 192.168.10.2 +| ${dut_ip_prefix}= | 24 +| @{dut_ip_addrs}= | 192.168.10.1 +| ${nginx_version}= | 1.21.5 +| ${use_dma}= | ${True} + +*** Keywords *** +| Local template +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Add Additional Startup Configuration For DMA On All DUTs +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set up LDP or VCL Nginx on DUT1 node | ${mode} +| | ... | ${rps_cps} | ${phy_cores} | ${qat} | ${tls_tcp} +| | ... | ${True} +| | And Additional Suite Setup Action For ab +| | Then Measure TLS requests or connections per second +| | ... | ${ciphers} | ${frame_size} | ${tls_tcp} | ${rps_cps} + +*** Test Cases *** +| 0B-1c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-rps +| | [Tags] | 0B | 1C +| | frame_size=${0} | phy_cores=${1} + +| 0B-2c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-rps +| | [Tags] | 0B | 2C +| | frame_size=${0} | phy_cores=${2} + +| 64B-1c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-rps +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-rps +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 1024B-1c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-rps +| | [Tags] | 1024B | 1C +| | frame_size=${1024} | phy_cores=${1} + +| 1024B-2c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-rps +| | [Tags] | 1024B | 2C +| | frame_size=${1024} | phy_cores=${2} + +| 2048B-1c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-rps +| | [Tags] | 2048B | 1C +| | frame_size=${2048} | phy_cores=${1} + +| 2048B-2c-eth-ip4tcphttp-dma-ldpreload-nginx-1_21_5-rps +| | [Tags] | 2048B | 2C +| | frame_size=${2048} | phy_cores=${2} diff --git a/tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1_21_5-cps.robot b/tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1_21_5-cps.robot new file mode 100644 index 0000000000..7f1e4ba189 --- /dev/null +++ b/tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1_21_5-cps.robot @@ -0,0 +1,128 @@ +# Copyright (c) 2024 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/hoststack/hoststack.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV +| ... | HOSTSTACK | LDP_NGINX | TCP | NIC_Intel-X710 | DRV_VFIO_PCI +| ... | TCP_CPS | eth-ip4tcphttp-ldpreload-nginx-1_21_5 +| +| Suite Setup | Setup suite topology interfaces | ab | nginx +| Suite Teardown | Tear down suite | ab +| Test Setup | Setup test +| Test Teardown | Tear down test | nginx +| +| Test Template | Local Template +| +| Documentation | **TCP requests per seconds.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT-TG 2-node topology \ +| ... | with single link between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP-HTTP for TCP +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ver] TG verification:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${nic_name}= | Intel-X710 +| ${crypto_type}= | ${None} +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${dpdk_no_tx_checksum_offload}= | ${False} +| ${ciphers}= | 0 +| ${rps_cps}= | cps +| ${qat}= | ${0} +| ${r_total}= | ${1000000} +| ${c_total}= | ${2000} +| ${listen_port}= | ${80} +| ${mode}= | ldp +| ${tls_tcp}= | tcp +| ${keep_time}= | 0 +| ${ab_ip_prefix}= | 24 +| @{ab_ip_addrs}= | 192.168.10.2 +| ${dut_ip_prefix}= | 24 +| @{dut_ip_addrs}= | 192.168.10.1 +| ${nginx_version}= | 1.21.5 +| ${sess_evt_q_length}= | 100000 +| ${sess_prealloc_sess}= | 1100000 +| ${v4_sess_tbl_buckets}= | 250000 +| ${v4_sess_tbl_mem}= | 1g +| ${local_endpts_tbl_buckets}= | 250000 +| ${local_endpts_tbl_mem}= | 1g +| ${tcp_prealloc_conns}= | 1100000 +| ${tcp_prealloc_ho_conns}= | 1100000 + +*** Keywords *** +| Local template +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Configure VPP startup configuration for NGINX | ${sess_prealloc_sess} +| | ... | ${sess_evt_q_length} | ${v4_sess_tbl_buckets} | ${v4_sess_tbl_mem} +| | ... | ${local_endpts_tbl_buckets} | ${local_endpts_tbl_mem} +| | ... | ${tcp_prealloc_conns} | ${tcp_prealloc_ho_conns} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set up LDP or VCL Nginx on DUT1 node | ${mode} +| | ... | ${rps_cps} | ${phy_cores} | ${qat} | ${tls_tcp} +| | And Additional Suite Setup Action For ab +| | Then Measure TLS requests or connections per second +| | ... | ${ciphers} | ${frame_size} | ${tls_tcp} | ${rps_cps} + +*** Test Cases *** +| 0B-1c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-cps +| | [Tags] | 0B | 1C +| | frame_size=${0} | phy_cores=${1} + +| 0B-2c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-cps +| | [Tags] | 0B | 2C +| | frame_size=${0} | phy_cores=${2} + +| 64B-1c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-cps +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-cps +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 1024B-1c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-cps +| | [Tags] | 1024B | 1C +| | frame_size=${1024} | phy_cores=${1} + +| 1024B-2c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-cps +| | [Tags] | 1024B | 2C +| | frame_size=${1024} | phy_cores=${2} + +| 2048B-1c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-cps +| | [Tags] | 2048B | 1C +| | frame_size=${2048} | phy_cores=${1} + +| 2048B-2c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-cps +| | [Tags] | 2048B | 2C +| | frame_size=${2048} | phy_cores=${2} diff --git a/tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1_21_5-rps.robot b/tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1_21_5-rps.robot new file mode 100644 index 0000000000..0db8a72a16 --- /dev/null +++ b/tests/vpp/perf/hoststack/2n1l-10ge2p1x710-eth-ip4tcphttp-ldpreload-nginx-1_21_5-rps.robot @@ -0,0 +1,128 @@ +# Copyright (c) 2024 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/hoststack/hoststack.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV +| ... | HOSTSTACK | LDP_NGINX | TCP | NIC_Intel-X710 | DRV_VFIO_PCI +| ... | TCP_RPS | eth-ip4tcphttp-ldpreload-nginx-1_21_5 +| +| Suite Setup | Setup suite topology interfaces | ab | nginx +| Suite Teardown | Tear down suite | ab +| Test Setup | Setup test +| Test Teardown | Tear down test | nginx +| +| Test Template | Local Template +| +| Documentation | **TCP requests per seconds.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT-TG 2-node topology \ +| ... | with single link between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP-HTTP for TCP +| ... | +| ... | - **[Cfg] DUT configuration:** +| ... | +| ... | - **[Ver] TG verification:** +| ... | +| ... | - **[Ref] Applicable standard specifications:** + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${nic_name}= | Intel-X710 +| ${crypto_type}= | ${None} +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${overhead}= | ${0} +| ${dpdk_no_tx_checksum_offload}= | ${False} +| ${ciphers}= | 0 +| ${rps_cps}= | rps +| ${qat}= | ${0} +| ${r_total}= | ${1000000} +| ${c_total}= | ${2000} +| ${listen_port}= | ${80} +| ${mode}= | ldp +| ${tls_tcp}= | tcp +| ${keep_time}= | 300 +| ${ab_ip_prefix}= | 24 +| @{ab_ip_addrs}= | 192.168.10.2 +| ${dut_ip_prefix}= | 24 +| @{dut_ip_addrs}= | 192.168.10.1 +| ${nginx_version}= | 1.21.5 +| ${sess_evt_q_length}= | 100000 +| ${sess_prealloc_sess}= | 1100000 +| ${v4_sess_tbl_buckets}= | 250000 +| ${v4_sess_tbl_mem}= | 1g +| ${local_endpts_tbl_buckets}= | 250000 +| ${local_endpts_tbl_mem}= | 1g +| ${tcp_prealloc_conns}= | 1100000 +| ${tcp_prealloc_ho_conns}= | 1100000 + +*** Keywords *** +| Local template +| | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} +| | +| | Set Test Variable | \${frame_size} +| | Given Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Configure VPP startup configuration for NGINX | ${sess_prealloc_sess} +| | ... | ${sess_evt_q_length} | ${v4_sess_tbl_buckets} | ${v4_sess_tbl_mem} +| | ... | ${local_endpts_tbl_buckets} | ${local_endpts_tbl_mem} +| | ... | ${tcp_prealloc_conns} | ${tcp_prealloc_ho_conns} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set up LDP or VCL Nginx on DUT1 node | ${mode} +| | ... | ${rps_cps} | ${phy_cores} | ${qat} | ${tls_tcp} +| | And Additional Suite Setup Action For ab +| | Then Measure TLS requests or connections per second +| | ... | ${ciphers} | ${frame_size} | ${tls_tcp} | ${rps_cps} + +*** Test Cases *** +| 0B-1c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-rps +| | [Tags] | 0B | 1C +| | frame_size=${0} | phy_cores=${1} + +| 0B-2c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-rps +| | [Tags] | 0B | 2C +| | frame_size=${0} | phy_cores=${2} + +| 64B-1c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-rps +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-rps +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 1024B-1c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-rps +| | [Tags] | 1024B | 1C +| | frame_size=${1024} | phy_cores=${1} + +| 1024B-2c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-rps +| | [Tags] | 1024B | 2C +| | frame_size=${1024} | phy_cores=${2} + +| 2048B-1c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-rps +| | [Tags] | 2048B | 1C +| | frame_size=${2048} | phy_cores=${1} + +| 2048B-2c-eth-ip4tcphttp-ldpreload-nginx-1_21_5-rps +| | [Tags] | 2048B | 2C +| | frame_size=${2048} | phy_cores=${2} diff --git a/tests/vpp/perf/hoststack/regenerate_testcases.py b/tests/vpp/perf/hoststack/regenerate_testcases.py index ec754aa261..e22f6de5c3 100755 --- a/tests/vpp/perf/hoststack/regenerate_testcases.py +++ b/tests/vpp/perf/hoststack/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/ip4/10ge2p1x710-dot1q-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-dot1q-ip4base-ndrpdr.robot index 6a5f288d6d..406ed94a05 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-dot1q-ip4base-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-dot1q-ip4base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,31 +26,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing with IEEE 802.1Q test\ -| ... | cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. IEEE 802.1Q\ -| ... | tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and two static IPv4 /30 route entries. DUT1 and DUT2 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\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing with IEEE 802.1Q \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. \ +| ... | IEEE 802.1Q tagging is applied on link between DUT1 and DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and two static IPv4 /30 route entries. \ +| ... | DUT1 and DUT2 are 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -66,14 +71,14 @@ | ${tg_if1_net}= | 10.10.10.0 | ${tg_if2_net}= | 20.20.20.0 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs IPv4 routing with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs IPv4 routing with VLAN and 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). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-adlalwlistbase-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-adlalwlistbase-ndrpdr.robot index 64fcc09c73..e4dd791bb8 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-adlalwlistbase-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-adlalwlistbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,29 +26,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 allowlist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4 -| ... | routing, two static IPv4 /24 routes and IPv4 ADL security allowlist -| ... | ingress /24 filter entries applied on links TG - DUT1 and DUT2 - TG. -| ... | DUT1 and DUT2 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| Documentation | **RFC2544: Pkt throughput IPv4 allowlist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4 \ +| ... | routing, two static IPv4 /24 routes and IPv4 ADL security allowlist \ +| ... | ingress /24 filter entries applied on links TG - DUT1 and DUT2 - TG. \ +| ... | DUT1 and DUT2 are 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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | adl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | adl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,14 +64,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. \ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-iacldstbase-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-iacldstbase-ndrpdr.robot index afd4624d55..5b895dd113 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-iacldstbase-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-iacldstbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,29 +26,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 iAcl whitelist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4 -| ... | routing, two static IPv4 /24 routes and IPv4 iAcl security whitelist -| ... | ingress /24 filter entries applied on links TG - DUT1 and DUT2 - TG. -| ... | DUT1 and DUT2 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv6 header -| ... | and generated payload. MAC addresses are matching MAC addresses +| Documentation | **RFC2544: Pkt throughput IPv4 iAcl whitelist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4 \ +| ... | routing, two static IPv4 /24 routes and IPv4 iAcl security whitelist \ +| ... | ingress /24 filter entries applied on links TG - DUT1 and DUT2 - TG. \ +| ... | DUT1 and DUT2 are 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, 253 flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | and generated payload. MAC addresses are matching MAC addresses \ | ... | of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,14 +64,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-ipolicemarkbase-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-ipolicemarkbase-ndrpdr.robot index 3597eab7d7..8be7f04e68 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-ipolicemarkbase-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-ipolicemarkbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 policer test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4 -| ... | routing and two static IPv4 /24 route entries and policer with 2R3C -| ... | color-aware configuration. Policer is applied on links TG - DUT1 and -| ... | DUT2 - TG. DUT1 and DUT2 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv6 header -| ... | and generated payload. MAC addresses are matching MAC addresses +| Documentation | **RFC2544: Pkt throughput IPv4 policer test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4 \ +| ... | routing and two static IPv4 /24 route entries and policer with 2R3C \ +| ... | color-aware configuration. Policer is applied on links TG - DUT1 and \ +| ... | DUT2 - TG. DUT1 and DUT2 are 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, 253 flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | and generated payload. MAC addresses are matching MAC addresses \ | ... | of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC2698. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC2698. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -63,14 +68,14 @@ | ${eir}= | ${150} | ${dscp}= | AF22 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-ndrpdr.robot index 992a9fd851..cfc4bec5d5 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4 -| ... | routing and two static IPv4 /24 route entries. DUT1 and DUT2 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, 253 flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 and DUT2 are \ +| ... | 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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -58,15 +63,15 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale1m-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale1m-ndrpdr.robot new file mode 100644 index 0000000000..95e34e265a --- /dev/null +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale1m-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2023 Intel and/or its affiliates. +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP4FWD | SCALE | FIB_1M | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-ip4scale1m +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and 2x500k static IPv4 /32 route entries. DUT1 and DUT2 are \ +| ... | 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, 500k 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${500000} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${rts_per_flow} + +*** Keywords *** +| Local Template +| | +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale200k-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale200k-ndrpdr.robot index 1ae46ec4eb..b7c0c6040d 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale200k-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale200k-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and 2x100k static IPv4 /32 route entries. DUT1 and DUT2 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, 100k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and 2x100k static IPv4 /32 route entries. DUT1 and DUT2 are \ +| ... | 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, 100k 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,15 +64,15 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${100000} # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv4 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale200k-rnd-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale200k-rnd-ndrpdr.robot index fd4ef619a4..3ea9a74e1d 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale200k-rnd-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale200k-rnd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and 2x100k static IPv4 /32 route entries. DUT1 and DUT2 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 2 randomized L3 flow-groups (flow-group per direction, 100k\ -| ... | flows per flow-group) with all packets containing Ethernet header,\ -| ... | IPv4 header with IP protocol=61 and static payload. MAC addresses are\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and 2x100k static IPv4 /32 route entries. DUT1 and DUT2 are \ +| ... | 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 2 randomized L3 flow-groups (flow-group per direction, 100k \ +| ... | 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,15 +64,15 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${100000} # Traffic profile -| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv4 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale20k-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale20k-ndrpdr.robot index 3218c986af..a42e23c760 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale20k-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale20k-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and 2x10k static IPv4 /32 route entries. DUT1 and DUT2 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, 10k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and 2x10k static IPv4 /32 route entries. DUT1 and DUT2 are \ +| ... | 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, 10k 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,15 +64,15 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${10000} # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv4 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale20k-rnd-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale20k-rnd-ndrpdr.robot index 4ae84b0686..11c3d5a2a0 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale20k-rnd-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale20k-rnd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and 2x10k static IPv4 /32 route entries. DUT1 and DUT2 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 2 randomized L3 flow-groups (flow-group per direction, 10k\ -| ... | flows per flow-group) with all packets containing Ethernet header,\ -| ... | IPv4 header with IP protocol=61 and static payload. MAC addresses are\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and 2x10k static IPv4 /32 route entries. DUT1 and DUT2 are \ +| ... | 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 2 randomized L3 flow-groups (flow-group per direction, 10k \ +| ... | 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,15 +64,15 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${10000} # Traffic profile -| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv4 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale2m-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale2m-ndrpdr.robot index c2d26a9ac3..1af8be3dfe 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale2m-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale2m-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and 2x1M static IPv4 /32 route entries. DUT1 and DUT2 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, 1M flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and 2x1M static IPv4 /32 route entries. DUT1 and DUT2 are \ +| ... | 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, 1M 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,15 +64,15 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${1000000} # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv4 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale2m-rnd-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale2m-rnd-ndrpdr.robot index 4c7a2887b3..89db882343 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale2m-rnd-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale2m-rnd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and 2x1M static IPv4 /32 route entries. DUT1 and DUT2 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 2 randomized L3 flow-groups (flow-group per direction, 1M\ -| ... | flows per flow-group) with all packets containing Ethernet header,\ -| ... | IPv4 header with IP protocol=61 and static payload. MAC addresses are\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and 2x1M static IPv4 /32 route entries. DUT1 and DUT2 are \ +| ... | 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 2 randomized L3 flow-groups (flow-group per direction, 1M \ +| ... | 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,15 +64,15 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${1000000} # Traffic profile -| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv4 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale600k-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale600k-ndrpdr.robot new file mode 100644 index 0000000000..a091ee6936 --- /dev/null +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale600k-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP4FWD | SCALE | FIB_600K | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-ip4scale600k +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and 6x100k static IPv4 /32 route entries. DUT1 and DUT2 are \ +| ... | 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, 100k 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${100000} +| ${rxq_ratio}= | ${3} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4-ip4scale600k-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4-ip4scale600k-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4-ip4scale600k-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4-ip4scale600k-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4-ip4scale600k-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4-ip4scale600k-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4-ip4scale600k-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4-ip4scale600k-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4-ip4scale600k-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4-ip4scale600k-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4-ip4scale600k-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4-ip4scale600k-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale600k-rnd-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale600k-rnd-ndrpdr.robot new file mode 100644 index 0000000000..bc01eefb2c --- /dev/null +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale600k-rnd-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP4FWD | SCALE | FIB_600K | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-ip4scale600k-rnd +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and 6x100k static IPv4 /32 route entries. DUT1 and DUT2 are \ +| ... | 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 2 randomized L3 flow-groups (flow-group per direction, 100k \ +| ... | 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${100000} +| ${rxq_ratio}= | ${3} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4-ip4scale600k-rnd-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4-ip4scale600k-rnd-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4-ip4scale600k-rnd-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4-ip4scale600k-rnd-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4-ip4scale600k-rnd-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4-ip4scale600k-rnd-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4-ip4scale600k-rnd-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4-ip4scale600k-rnd-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4-ip4scale600k-rnd-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4-ip4scale600k-rnd-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4-ip4scale600k-rnd-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4-ip4scale600k-rnd-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale60k-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale60k-ndrpdr.robot new file mode 100644 index 0000000000..b1e83b1d9b --- /dev/null +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale60k-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP4FWD | SCALE | FIB_60K | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-ip4scale60k +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and 6x10k static IPv4 /32 route entries. DUT1 and DUT2 are \ +| ... | 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, 10k 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${10000} +| ${rxq_ratio}= | ${3} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4-ip4scale60k-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4-ip4scale60k-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4-ip4scale60k-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4-ip4scale60k-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4-ip4scale60k-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4-ip4scale60k-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4-ip4scale60k-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4-ip4scale60k-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4-ip4scale60k-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4-ip4scale60k-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4-ip4scale60k-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4-ip4scale60k-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale60k-rnd-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale60k-rnd-ndrpdr.robot new file mode 100644 index 0000000000..e72ba8e1a8 --- /dev/null +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale60k-rnd-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP4FWD | SCALE | FIB_60k | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | IP4_RND +| ... | ethip4-ip4scale60k-rnd +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and 2x10k static IPv4 /32 route entries. DUT1 and DUT2 are \ +| ... | 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 2 randomized L3 flow-groups (flow-group per direction, 10k \ +| ... | 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${10000} +| ${rxq_ratio}= | ${3} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4-ip4scale60k-rnd-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4-ip4scale60k-rnd-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4-ip4scale60k-rnd-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4-ip4scale60k-rnd-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4-ip4scale60k-rnd-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4-ip4scale60k-rnd-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4-ip4scale60k-rnd-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4-ip4scale60k-rnd-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4-ip4scale60k-rnd-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4-ip4scale60k-rnd-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4-ip4scale60k-rnd-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4-ip4scale60k-rnd-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale6m-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale6m-ndrpdr.robot new file mode 100644 index 0000000000..8a17f390c7 --- /dev/null +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale6m-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP4FWD | SCALE | FIB_6M | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-ip4scale6m +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and 2x1M static IPv4 /32 route entries. DUT1 and DUT2 are \ +| ... | 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, 1M 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${1000000} +| ${rxq_ratio}= | ${3} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4-ip4scale6m-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4-ip4scale6m-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4-ip4scale6m-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4-ip4scale6m-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4-ip4scale6m-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4-ip4scale6m-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4-ip4scale6m-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4-ip4scale6m-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4-ip4scale6m-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4-ip4scale6m-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4-ip4scale6m-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4-ip4scale6m-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale6m-rnd-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale6m-rnd-ndrpdr.robot new file mode 100644 index 0000000000..8cd519d499 --- /dev/null +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4-ip4scale6m-rnd-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP4FWD | SCALE | FIB_6M | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 | IP4_RND +| ... | ethip4-ip4scale6m-rnd +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and 2x1M static IPv4 /32 route entries. DUT1 and DUT2 are \ +| ... | 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 2 randomized L3 flow-groups (flow-group per direction, 1M \ +| ... | 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${1000000} +| ${rxq_ratio}= | ${3} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4-ip4scale6m-rnd-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4-ip4scale6m-rnd-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4-ip4scale6m-rnd-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4-ip4scale6m-rnd-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4-ip4scale6m-rnd-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4-ip4scale6m-rnd-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4-ip4scale6m-rnd-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4-ip4scale6m-rnd-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4-ip4scale6m-rnd-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4-ip4scale6m-rnd-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4-ip4scale6m-rnd-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4-ip4scale6m-rnd-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sf-100flows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sf-100flows-ndrpdr.robot index 75dafd82e1..68434bab56 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sf-100flows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sf-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sf-100kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sf-100kflows-ndrpdr.robot index a6f90ee238..11db230a07 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sf-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sf-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sf-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sf-10kflows-ndrpdr.robot index 45285d48fc..e09352d28e 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sl-100flows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sl-100flows-ndrpdr.robot index 4fbf64b48f..679a6d293f 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sl-100kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sl-100kflows-ndrpdr.robot index 74b32cf8ec..b9e92662da 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sl-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sl-10kflows-ndrpdr.robot index 002629e772..c8b55941bc 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl10sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sf-100flows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sf-100flows-ndrpdr.robot index ddd9b09cf2..99d05de024 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sf-100flows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sf-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sf-100kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sf-100kflows-ndrpdr.robot index 386c735d81..de8af776e0 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sf-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sf-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sf-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sf-10kflows-ndrpdr.robot index 41c1c450f7..7313b72ebb 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,15 +80,15 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sl-100flows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sl-100flows-ndrpdr.robot index 8e6bcb7bd4..30ec032775 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sl-100kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sl-100kflows-ndrpdr.robot index dcf6b1c964..c5160f3ac0 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sl-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sl-10kflows-ndrpdr.robot index 5a43e41b37..c38819e131 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl1sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,15 +80,15 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sf-100flows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sf-100flows-ndrpdr.robot index 8c97b59742..7e7e4886df 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sf-100flows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sf-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sf-100kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sf-100kflows-ndrpdr.robot index 443e6c7341..7b94a3f4d3 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sf-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sf-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sf-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sf-10kflows-ndrpdr.robot index 5a08b2bc4d..f28d0b151a 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,15 +80,15 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sl-100flows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sl-100flows-ndrpdr.robot index 2dc5ddeb3c..d66ce1d84b 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sl-100kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sl-100kflows-ndrpdr.robot index 2068b80b0a..01c07541d2 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sl-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sl-10kflows-ndrpdr.robot index 838c5e1108..bdcc74db72 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-iacl50sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to input paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,15 +80,15 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sf-100flows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sf-100flows-ndrpdr.robot index 578c93e1b8..cc3bef56ba 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sf-100flows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sf-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sf-100kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sf-100kflows-ndrpdr.robot index 64dc87dcdf..8f1aa3fb45 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sf-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sf-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sf-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sf-10kflows-ndrpdr.robot index d3b65f42ec..66c50649a6 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sl-100flows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sl-100flows-ndrpdr.robot index 4293a3182f..f8088ec8f1 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sl-100kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sl-100kflows-ndrpdr.robot index 402cbd43e7..ebeec04e41 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sl-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sl-10kflows-ndrpdr.robot index 1ba7cdf821..539db58504 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl10sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sf-100flows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sf-100flows-ndrpdr.robot index 7bb8154fef..f31834239a 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sf-100flows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sf-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sf-100kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sf-100kflows-ndrpdr.robot index b529c4d1b4..d9fef61eb3 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sf-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sf-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sf-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sf-10kflows-ndrpdr.robot index 16cc90306c..71ce7ea633 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sl-100flows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sl-100flows-ndrpdr.robot index afc9d49d95..e5b9ac12a4 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sl-100kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sl-100kflows-ndrpdr.robot index d48b1db27d..558241a277 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sl-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sl-10kflows-ndrpdr.robot index 7f461b4e3f..e920c977f0 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl1sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sf-100flows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sf-100flows-ndrpdr.robot index 9600a10370..e4cf645ebc 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sf-100flows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sf-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sf-100kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sf-100kflows-ndrpdr.robot index c0b1442ec8..30a1120af0 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sf-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sf-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sf-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sf-10kflows-ndrpdr.robot index 696dc3f756..52167c4d3b 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sl-100flows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sl-100flows-ndrpdr.robot index a15049c7d1..2abf6c878d 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sl-100kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sl-100kflows-ndrpdr.robot index f8d51a3aeb..9f2d7a4563 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sl-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sl-10kflows-ndrpdr.robot index e3e3414e76..59115c850e 100644 --- a/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/10ge2p1x710-ethip4udp-ip4base-oacl50sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and one static IPv4 /24 route entries. Required ACL rules are\ -| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are 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, ${flows_per_dir}\ -| ... | 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. +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and one static IPv4 /24 route entries. Required ACL rules are \ +| ... | applied to output paths of both DUT1 intefaces. DUT1 and DUT2 are \ +| ... | 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, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +80,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-dot1q-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-dot1q-ip4base-ndrpdr.robot index c70585dbfb..f9a62e2a27 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-dot1q-ip4base-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-dot1q-ip4base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,30 +26,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing with IEEE 802.1Q test\ -| ... | cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. IEEE 802.1Q\ -| ... | tagging is applied on link between DUT1-if2 and TG-if2. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | two static IPv4 /30 route entries. 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 DUT1. 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\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing with IEEE 802.1Q test \ +| ... | cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. \ +| ... | IEEE 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and two static IPv4 /30 route entries. 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 DUT1. 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -65,14 +71,14 @@ | ${tg_if1_net}= | 10.10.10.0 | ${tg_if2_net}= | 20.20.20.0 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-dot1qip4asym-ip4src254 +| ${traffic_profile}= | trex-stl-dot1qip4asym-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs IPv4 routing with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs IPv4 routing with VLAN and 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). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-adlalwlistbase-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-adlalwlistbase-ndrpdr.robot index a68c79077b..f0ac0984f5 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-adlalwlistbase-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-adlalwlistbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,29 +26,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 allowlist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 allowlist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4 -| ... | routing, two static IPv4 /24 routes and IPv4 ADL security allowlist -| ... | ingress /24 filter entries applied on links TG - DUT1. -| ... | DUT1 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing, two static IPv4 /24 routes and IPv4 ADL security allowlist \ +| ... | ingress /24 filter entries applied on links TG - DUT1. \ +| ... | 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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | adl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | adl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,14 +64,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. \ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-iacldstbase-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-iacldstbase-ndrpdr.robot index 238913461a..2ce0f748c5 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-iacldstbase-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-iacldstbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,29 +26,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 iAcl whitelist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 iAcl whitelist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 -| ... | routing, two static IPv4 /24 routes and IPv4 iAcl security whitelist -| ... | ingress /24 filter entries applied on links TG - DUT1. -| ... | 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv6 header -| ... | and generated payload. MAC addresses are matching MAC addresses +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing, two static IPv4 /24 routes and IPv4 iAcl security whitelist \ +| ... | ingress /24 filter entries applied on links TG - DUT1. \ +| ... | 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, 253 flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | and generated payload. MAC addresses are matching MAC addresses \ | ... | of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,14 +64,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-ipolicemarkbase-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-ipolicemarkbase-ndrpdr.robot index 5ea69a0ab4..5fb43b26e4 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-ipolicemarkbase-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-ipolicemarkbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 policer test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput IPv4 policer test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | two IPv4 ARP entries and policer with 2R3C color-aware configuration.\ -| ... | Policer is applied on links TG - DUT1. 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 253 flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | and generated payload. MAC addresses are matching MAC addresses\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and two IPv4 ARP entries and policer with 2R3C color-aware \ +| ... | configuration. Policer is applied on links TG - DUT1. \ +| ... | 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 253 flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | and generated payload. MAC addresses are matching MAC addresses \ | ... | of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC2698. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC2698. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,14 +67,14 @@ | ${eir}= | ${150} | ${dscp}= | AF22 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-ndrpdr.robot index 6b40a2df9f..8eb9393949 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 -| ... | routing and two static IPv4 /24 route entries. DUT1 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -58,14 +63,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale1m-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale1m-ndrpdr.robot new file mode 100644 index 0000000000..44c27a0a47 --- /dev/null +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale1m-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2023 Intel and/or its affiliates. +# Copyright (c) 2023 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP4FWD | SCALE | FIB_1M | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4-ip4scale1m +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and 2x500k static IPv4 /32 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 500k 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${500000} +# Traffic profile +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${rts_per_flow} + +*** Keywords *** +| Local Template +| | +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4-ip4scale1m-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale200k-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale200k-ndrpdr.robot index 4dbfcccba8..5571caed21 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale200k-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale200k-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,27 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | 2x100k static IPv4 /32 route entries. 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 100k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and 2x100k static IPv4 /32 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 100k 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -58,15 +64,15 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${100000} # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -84,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv4 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale200k-rnd-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale200k-rnd-ndrpdr.robot index 93af6bd73f..c708ec1626 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale200k-rnd-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale200k-rnd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,27 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | 2x100k static IPv4 /32 route entries. 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 DUT1. TG traffic profile\ -| ... | contains 2 randomized L3 flow-groups (flow-group per direction, 100k\ -| ... | flows per flow-group) with all packets containing Ethernet header,\ -| ... | IPv4 header with IP protocol=61 and static payload. MAC addresses are\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and 2x100k static IPv4 /32 route entries. 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 DUT1. TG traffic profile \ +| ... | contains 2 randomized L3 flow-groups (flow-group per direction, 100k \ +| ... | 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,15 +65,15 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${100000} # Traffic profile -| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +91,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv4 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale20k-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale20k-ndrpdr.robot index e27bedc849..3a3d03d2af 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale20k-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale20k-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,27 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | 2x10k static IPv4 /32 route entries. 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 10k 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. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and 2x10k static IPv4 /32 route entries. 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 DUT1. TG traffic \ +| ... | profile contains two L3 flow-groups (flow-group per direction, \ +| ... | 10k 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -58,15 +64,15 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${10000} # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -84,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv4 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale20k-rnd-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale20k-rnd-ndrpdr.robot index d649a711b4..f1a5535094 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale20k-rnd-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale20k-rnd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,27 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | 2x10k static IPv4 /32 route entries. 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 DUT1. TG traffic profile\ -| ... | contains 2 randomized L3 flow-groups (flow-group per direction, 10k\ -| ... | flows per flow-group) with all packets containing Ethernet header,\ -| ... | IPv4 header with IP protocol=61 and static payload. MAC addresses are\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and 2x10k static IPv4 /32 route entries. 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 DUT1. TG traffic profile \ +| ... | contains 2 randomized L3 flow-groups (flow-group per direction, 10k \ +| ... | 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,15 +65,15 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${10000} # Traffic profile -| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +91,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv4 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale2m-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale2m-ndrpdr.robot index 2c9419bd5a..1c2af5fab3 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale2m-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale2m-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,27 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | 2x1M static IPv4 /32 route entries. 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 1M flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and 2x1M static IPv4 /32 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1M 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -58,15 +64,15 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${1000000} # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4dst${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -84,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv4 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale2m-rnd-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale2m-rnd-ndrpdr.robot index 67d5db967f..619191608c 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale2m-rnd-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4-ip4scale2m-rnd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,28 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput IPv4 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | 2x1M static IPv4 /32 route entries. 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 DUT1. TG traffic profile\ -| ... | contains 2 randomized L3 flow-groups (flow-group per direction, 1M\ -| ... | flows per flow-group) with all packets containing Ethernet header,\ -| ... | IPv4 header with IP protocol=61 and static payload. MAC addresses are\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and 2x1M static IPv4 /32 route entries. 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 DUT1. TG traffic profile \ +| ... | contains 2 randomized L3 flow-groups (flow-group per direction, 1M \ +| ... | 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. - +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,15 +65,15 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${1000000} # Traffic profile -| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip4-ip4dst-rnd${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -86,8 +91,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv4 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv4 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-cps-ndrpdr.robot index 63dcc5aed6..6e7ed5096a 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty TCP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **CPS on empty TCP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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\ -| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with TCP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with TCP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-tput-ndrpdr.robot index 26bf1604ba..32f03827f7 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h1024-p63-s64512-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | TCP | TCP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | TCP | TCP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_1024 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4tcp-ip4base-h1024-p63-s64512-pps +| ... | ethip4tcp-ip4base-h1024-p63-s64512-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,33 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight TCP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight TCP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, TCP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, TCP header and static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,7 +66,8 @@ # Scale settings | ${n_hosts}= | ${1024} | ${n_ports}= | ${63} -| ${packets_per_transaction_and_direction}= | ${11} +| ${packets_per_transaction_and_direction}= | ${4 + ${ASTF_N_DATA_FRAMES}} +| ${packets_per_transaction_aggregated}= | ${6 + 2 * ${ASTF_N_DATA_FRAMES}} | ${transaction_scale}= | ${${n_hosts} * ${n_ports}} # Traffic profile: | ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h-pps @@ -70,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -103,14 +110,38 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4tcp-ip4base-h1024-p63-s64512-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4tcp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4tcp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4tcp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4tcp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4tcp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4tcp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4tcp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4tcp-ip4base-h1024-p63-s64512-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4tcp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4tcp-ip4base-h1024-p63-s64512-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4tcp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h16384-p63-s1032192-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h16384-p63-s1032192-cps-ndrpdr.robot index 93adf5bfef..9445b0ac4a 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h16384-p63-s1032192-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h16384-p63-s1032192-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty TCP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **CPS on empty TCP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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\ -| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with TCP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with TCP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h16384-p63-s1032192-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h16384-p63-s1032192-tput-ndrpdr.robot index c0b2193157..fd6a71d473 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h16384-p63-s1032192-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h16384-p63-s1032192-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | TCP | TCP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | TCP | TCP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_16384 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4tcp-ip4base-h16384-p63-s1032192-pps +| ... | ethip4tcp-ip4base-h16384-p63-s1032192-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,33 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight TCP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight TCP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, TCP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, TCP header and static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,7 +66,8 @@ # Scale settings | ${n_hosts}= | ${16384} | ${n_ports}= | ${63} -| ${packets_per_transaction_and_direction}= | ${11} +| ${packets_per_transaction_and_direction}= | ${4 + ${ASTF_N_DATA_FRAMES}} +| ${packets_per_transaction_aggregated}= | ${6 + 2 * ${ASTF_N_DATA_FRAMES}} | ${transaction_scale}= | ${${n_hosts} * ${n_ports}} # Traffic profile: | ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h-pps @@ -70,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -103,14 +110,38 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4tcp-ip4base-h16384-p63-s1032192-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4tcp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4tcp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4tcp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4tcp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4tcp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4tcp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4tcp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4tcp-ip4base-h16384-p63-s1032192-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4tcp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4tcp-ip4base-h16384-p63-s1032192-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4tcp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-cps-ndrpdr.robot index 5892edea9d..0682bc2c6b 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty TCP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **CPS on empty TCP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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\ -| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with TCP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with TCP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-tput-ndrpdr.robot index 554f4070e7..b34a62f424 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h262144-p63-s16515072-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | TCP | TCP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | TCP | TCP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_262144 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4tcp-ip4base-h262144-p63-s16515072-pps +| ... | ethip4tcp-ip4base-h262144-p63-s16515072-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,33 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight TCP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight TCP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, TCP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, TCP header and static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,7 +66,8 @@ # Scale settings | ${n_hosts}= | ${262144} | ${n_ports}= | ${63} -| ${packets_per_transaction_and_direction}= | ${11} +| ${packets_per_transaction_and_direction}= | ${4 + ${ASTF_N_DATA_FRAMES}} +| ${packets_per_transaction_aggregated}= | ${6 + 2 * ${ASTF_N_DATA_FRAMES}} | ${transaction_scale}= | ${${n_hosts} * ${n_ports}} # Traffic profile: | ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h-pps @@ -70,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -103,14 +110,38 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4tcp-ip4base-h262144-p63-s16515072-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4tcp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4tcp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4tcp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4tcp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4tcp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4tcp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4tcp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4tcp-ip4base-h262144-p63-s16515072-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4tcp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4tcp-ip4base-h262144-p63-s16515072-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4tcp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h4096-p63-s258048-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h4096-p63-s258048-cps-ndrpdr.robot index 96c5bc062f..ad692a1d00 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h4096-p63-s258048-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h4096-p63-s258048-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty TCP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **CPS on empty TCP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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\ -| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with TCP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with TCP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h4096-p63-s258048-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h4096-p63-s258048-tput-ndrpdr.robot index 9fd4c4229e..e28823de6c 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h4096-p63-s258048-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h4096-p63-s258048-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | TCP | TCP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | TCP | TCP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_4096 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4tcp-ip4base-h4096-p63-s258048-pps +| ... | ethip4tcp-ip4base-h4096-p63-s258048-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,33 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight TCP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight TCP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, TCP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, TCP header and static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,7 +66,8 @@ # Scale settings | ${n_hosts}= | ${4096} | ${n_ports}= | ${63} -| ${packets_per_transaction_and_direction}= | ${11} +| ${packets_per_transaction_and_direction}= | ${4 + ${ASTF_N_DATA_FRAMES}} +| ${packets_per_transaction_aggregated}= | ${6 + 2 * ${ASTF_N_DATA_FRAMES}} | ${transaction_scale}= | ${${n_hosts} * ${n_ports}} # Traffic profile: | ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h-pps @@ -70,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -103,14 +110,38 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4tcp-ip4base-h4096-p63-s258048-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4tcp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4tcp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4tcp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4tcp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4tcp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4tcp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4tcp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4tcp-ip4base-h4096-p63-s258048-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4tcp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4tcp-ip4base-h4096-p63-s258048-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4tcp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h65536-p63-s4128768-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h65536-p63-s4128768-cps-ndrpdr.robot index ca3d2cfc41..720b382171 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h65536-p63-s4128768-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h65536-p63-s4128768-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty TCP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **CPS on empty TCP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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\ -| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with TCP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with TCP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h65536-p63-s4128768-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h65536-p63-s4128768-tput-ndrpdr.robot index 7327b854c8..e0f0f287de 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h65536-p63-s4128768-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-ip4base-h65536-p63-s4128768-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | TCP | TCP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | TCP | TCP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_65536 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4tcp-ip4base-h65536-p63-s4128768-pps +| ... | ethip4tcp-ip4base-h65536-p63-s4128768-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,33 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight TCP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight TCP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, TCP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, TCP header and static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,7 +66,8 @@ # Scale settings | ${n_hosts}= | ${65536} | ${n_ports}= | ${63} -| ${packets_per_transaction_and_direction}= | ${11} +| ${packets_per_transaction_and_direction}= | ${4 + ${ASTF_N_DATA_FRAMES}} +| ${packets_per_transaction_aggregated}= | ${6 + 2 * ${ASTF_N_DATA_FRAMES}} | ${transaction_scale}= | ${${n_hosts} * ${n_ports}} # Traffic profile: | ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h-pps @@ -70,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -103,14 +110,38 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4tcp-ip4base-h65536-p63-s4128768-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4tcp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4tcp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4tcp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4tcp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4tcp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4tcp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4tcp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4tcp-ip4base-h65536-p63-s4128768-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4tcp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4tcp-ip4base-h65536-p63-s4128768-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4tcp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h1024-p63-s64512-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h1024-p63-s64512-cps-ndrpdr.robot index a3a3d08db3..a605f805e3 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h1024-p63-s64512-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h1024-p63-s64512-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -29,30 +29,35 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty TCP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **CPS on empty TCP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and -| ... | one static IPv4 /18 route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /18 route entries. \ | ... | 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\ -| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with TCP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[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 \ +| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with TCP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -96,9 +101,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h1024-p63-s64512-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h1024-p63-s64512-tput-ndrpdr.robot index 3d75d2639b..1f2c7a1a69 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h1024-p63-s64512-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h1024-p63-s64512-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | TCP | TCP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | TCP | TCP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_1024 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4tcp-nat44ed-h1024-p63-s64512-pps +| ... | ethip4tcp-nat44ed-h1024-p63-s64512-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,33 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight TCP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight TCP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, TCP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, TCP header and static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -79,8 +85,11 @@ | ${n_hosts}= | ${1024} | ${n_ports}= | ${63} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} -| ${packets_per_transaction_and_direction}= | ${11} +| ${packets_per_transaction_and_direction}= | ${4 + ${ASTF_N_DATA_FRAMES}} +| ${packets_per_transaction_aggregated}= | ${6 + 2 * ${ASTF_N_DATA_FRAMES}} | ${transaction_scale}= | ${n_sessions} +# Ramp-up settings +| ${ramp_up_rate}= | ${30000} # Traffic profile | ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h-pps | ${transaction_type}= | tcp_pps @@ -89,9 +98,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -119,17 +128,44 @@ | | And Initialize layer interface | | And Initialize IPv4 forwarding for NAT44 in circular topology | | And Initialize NAT44 endpoint-dependent mode in circular topology -| | Then Find NDR and PDR intervals using optimized search +| | Then Send ramp-up traffic +| | And Verify NAT44 TCP sessions number on DUT1 node +| | And Find NDR and PDR intervals using optimized search +| | And Verify NAT44 TCP sessions number on DUT1 node *** Test Cases *** -| 64B-1c-ethip4tcp-nat44ed-h1024-p63-s64512-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4tcp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4tcp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4tcp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4tcp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4tcp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4tcp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4tcp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4tcp-nat44ed-h1024-p63-s64512-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4tcp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4tcp-nat44ed-h1024-p63-s64512-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4tcp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h16384-p63-s1032192-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h16384-p63-s1032192-cps-ndrpdr.robot index ee865a9db9..7a7779928d 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h16384-p63-s1032192-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h16384-p63-s1032192-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -29,30 +29,35 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty TCP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **CPS on empty TCP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | one static IPv4 /18 route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /18 route entries. \ | ... | 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\ -| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with TCP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[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 \ +| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with TCP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -96,9 +101,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h16384-p63-s1032192-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h16384-p63-s1032192-tput-ndrpdr.robot index f82e46871a..1f163c4b86 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h16384-p63-s1032192-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h16384-p63-s1032192-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | TCP | TCP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | TCP | TCP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_16384 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4tcp-nat44ed-h16384-p63-s1032192-pps +| ... | ethip4tcp-nat44ed-h16384-p63-s1032192-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,33 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight TCP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight TCP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, TCP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, TCP header and static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -79,8 +85,11 @@ | ${n_hosts}= | ${16384} | ${n_ports}= | ${63} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} -| ${packets_per_transaction_and_direction}= | ${11} +| ${packets_per_transaction_and_direction}= | ${4 + ${ASTF_N_DATA_FRAMES}} +| ${packets_per_transaction_aggregated}= | ${6 + 2 * ${ASTF_N_DATA_FRAMES}} | ${transaction_scale}= | ${n_sessions} +# Ramp-up settings +| ${ramp_up_rate}= | ${30000} # Traffic profile | ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h-pps | ${transaction_type}= | tcp_pps @@ -89,9 +98,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -119,17 +128,44 @@ | | And Initialize layer interface | | And Initialize IPv4 forwarding for NAT44 in circular topology | | And Initialize NAT44 endpoint-dependent mode in circular topology -| | Then Find NDR and PDR intervals using optimized search +| | Then Send ramp-up traffic +| | And Verify NAT44 TCP sessions number on DUT1 node +| | And Find NDR and PDR intervals using optimized search +| | And Verify NAT44 TCP sessions number on DUT1 node *** Test Cases *** -| 64B-1c-ethip4tcp-nat44ed-h16384-p63-s1032192-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4tcp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4tcp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4tcp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4tcp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4tcp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4tcp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4tcp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4tcp-nat44ed-h16384-p63-s1032192-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4tcp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4tcp-nat44ed-h16384-p63-s1032192-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4tcp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h262144-p63-s16515072-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h262144-p63-s16515072-cps-ndrpdr.robot index 8afdd3d904..318c4fa679 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h262144-p63-s16515072-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h262144-p63-s16515072-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -29,30 +29,35 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty TCP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **CPS on empty TCP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | one static IPv4 /18 route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /18 route entries. \ | ... | 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\ -| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with TCP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[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 \ +| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with TCP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -98,9 +103,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h262144-p63-s16515072-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h262144-p63-s16515072-tput-ndrpdr.robot index b0e4dfc0c9..82b6adab22 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h262144-p63-s16515072-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h262144-p63-s16515072-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | TCP | TCP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | TCP | TCP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_262144 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4tcp-nat44ed-h262144-p63-s16515072-pps +| ... | ethip4tcp-nat44ed-h262144-p63-s16515072-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,33 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight TCP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight TCP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, TCP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, TCP header and static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -79,10 +85,13 @@ | ${n_hosts}= | ${262144} | ${n_ports}= | ${63} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} -| ${packets_per_transaction_and_direction}= | ${11} +| ${packets_per_transaction_and_direction}= | ${4 + ${ASTF_N_DATA_FRAMES}} +| ${packets_per_transaction_aggregated}= | ${6 + 2 * ${ASTF_N_DATA_FRAMES}} | ${transaction_scale}= | ${n_sessions} # Main heap size multiplicator | ${heap_size_mult}= | ${7} +# Ramp-up settings +| ${ramp_up_rate}= | ${30000} # Traffic profile | ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h-pps | ${transaction_type}= | tcp_pps @@ -91,9 +100,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -121,17 +130,44 @@ | | And Initialize layer interface | | And Initialize IPv4 forwarding for NAT44 in circular topology | | And Initialize NAT44 endpoint-dependent mode in circular topology -| | Then Find NDR and PDR intervals using optimized search +| | Then Send ramp-up traffic +| | And Verify NAT44 TCP sessions number on DUT1 node +| | And Find NDR and PDR intervals using optimized search +| | And Verify NAT44 TCP sessions number on DUT1 node *** Test Cases *** -| 64B-1c-ethip4tcp-nat44ed-h262144-p63-s16515072-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4tcp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4tcp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4tcp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4tcp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4tcp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4tcp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4tcp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4tcp-nat44ed-h262144-p63-s16515072-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4tcp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4tcp-nat44ed-h262144-p63-s16515072-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4tcp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr.robot index 58e9ded2bc..64b916f4ae 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h4096-p63-s258048-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -29,30 +29,35 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty TCP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **CPS on empty TCP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | one static IPv4 /18 route entries.\ -| ... | 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\ -| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with TCP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /18 route entries. \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with TCP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -96,9 +101,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h4096-p63-s258048-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h4096-p63-s258048-tput-ndrpdr.robot index ecd327fa7d..f21131ad06 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h4096-p63-s258048-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h4096-p63-s258048-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | TCP | TCP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | TCP | TCP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_4096 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4tcp-nat44ed-h4096-p63-s258048-pps +| ... | ethip4tcp-nat44ed-h4096-p63-s258048-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,33 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight TCP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight TCP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, TCP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, TCP header and static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -79,8 +85,11 @@ | ${n_hosts}= | ${4096} | ${n_ports}= | ${63} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} -| ${packets_per_transaction_and_direction}= | ${11} +| ${packets_per_transaction_and_direction}= | ${4 + ${ASTF_N_DATA_FRAMES}} +| ${packets_per_transaction_aggregated}= | ${6 + 2 * ${ASTF_N_DATA_FRAMES}} | ${transaction_scale}= | ${n_sessions} +# Ramp-up settings +| ${ramp_up_rate}= | ${30000} # Traffic profile | ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h-pps | ${transaction_type}= | tcp_pps @@ -89,9 +98,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -119,17 +128,44 @@ | | And Initialize layer interface | | And Initialize IPv4 forwarding for NAT44 in circular topology | | And Initialize NAT44 endpoint-dependent mode in circular topology -| | Then Find NDR and PDR intervals using optimized search +| | Then Send ramp-up traffic +| | And Verify NAT44 TCP sessions number on DUT1 node +| | And Find NDR and PDR intervals using optimized search +| | And Verify NAT44 TCP sessions number on DUT1 node *** Test Cases *** -| 64B-1c-ethip4tcp-nat44ed-h4096-p63-s258048-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4tcp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4tcp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4tcp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4tcp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4tcp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4tcp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4tcp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4tcp-nat44ed-h4096-p63-s258048-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4tcp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4tcp-nat44ed-h4096-p63-s258048-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4tcp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h65536-p63-s4128768-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h65536-p63-s4128768-cps-ndrpdr.robot index dc4bf0c308..d6870add90 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h65536-p63-s4128768-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h65536-p63-s4128768-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -29,30 +29,35 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty TCP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **CPS on empty TCP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | one static IPv4 /18 route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /18 route entries. \ | ... | 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\ -| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with TCP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[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 \ +| ... | contain L7 flows (${cps} bi-directional TCP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with TCP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -98,9 +103,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h65536-p63-s4128768-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h65536-p63-s4128768-tput-ndrpdr.robot index 29eab1e792..7ef60af30d 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h65536-p63-s4128768-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4tcp-nat44ed-h65536-p63-s4128768-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | TCP | TCP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | TCP | TCP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_65536 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4tcp-nat44ed-h65536-p63-s4128768-pps +| ... | ethip4tcp-nat44ed-h65536-p63-s4128768-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,33 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight TCP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight TCP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-TCP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, TCP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-TCP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, TCP header and static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -79,10 +85,13 @@ | ${n_hosts}= | ${65536} | ${n_ports}= | ${63} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} -| ${packets_per_transaction_and_direction}= | ${11} +| ${packets_per_transaction_and_direction}= | ${4 + ${ASTF_N_DATA_FRAMES}} +| ${packets_per_transaction_aggregated}= | ${6 + 2 * ${ASTF_N_DATA_FRAMES}} | ${transaction_scale}= | ${n_sessions} # Main heap size multiplicator | ${heap_size_mult}= | ${2} +# Ramp-up settings +| ${ramp_up_rate}= | ${30000} # Traffic profile | ${traffic_profile}= | trex-astf-ethip4tcp-${n_hosts}h-pps | ${transaction_type}= | tcp_pps @@ -91,9 +100,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -121,17 +130,44 @@ | | And Initialize layer interface | | And Initialize IPv4 forwarding for NAT44 in circular topology | | And Initialize NAT44 endpoint-dependent mode in circular topology -| | Then Find NDR and PDR intervals using optimized search +| | Then Send ramp-up traffic +| | And Verify NAT44 TCP sessions number on DUT1 node +| | And Find NDR and PDR intervals using optimized search +| | And Verify NAT44 TCP sessions number on DUT1 node *** Test Cases *** -| 64B-1c-ethip4tcp-nat44ed-h65536-p63-s4128768-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4tcp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4tcp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4tcp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4tcp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4tcp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4tcp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4tcp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4tcp-nat44ed-h65536-p63-s4128768-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4tcp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4tcp-nat44ed-h65536-p63-s4128768-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4tcp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-cps-ndrpdr.robot index 77d3ee210c..c6425b2e49 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty UDP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **CPS on empty UDP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 -| ... | routing and two static IPv4 /22 route entries. DUT1 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\ -| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /22 route entries. DUT1 is tested with \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -69,9 +74,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-tput-ndrpdr.robot index d27b1bda85..e1e755cafa 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h1024-p63-s64512-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | UDP | UDP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | UDP | UDP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_1024 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4udp-ip4base-h1024-p63-s64512-pps +| ... | ethip4udp-ip4base-h1024-p63-s64512-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,32 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight UDP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight UDP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /22 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, UDP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /22 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, UDP header and static \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,7 +66,7 @@ | ${n_hosts}= | ${1024} | ${n_ports}= | ${63} | ${transaction_scale}= | ${${n_hosts} * ${n_ports}} -| ${packets_per_transaction_and_direction}= | ${33} +| ${packets_per_transaction_and_direction}= | ${ASTF_N_DATA_FRAMES} # Traffic profile: | ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h-pps | ${transaction_type}= | udp_pps @@ -70,9 +75,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -103,14 +108,38 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4udp-ip4base-h1024-p63-s64512-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4udp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4udp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4udp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4udp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4udp-ip4base-h1024-p63-s64512-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4udp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4udp-ip4base-h1024-p63-s64512-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4udp-ip4base-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h16384-p63-s1032192-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h16384-p63-s1032192-cps-ndrpdr.robot index 74f34b64f7..308126a629 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h16384-p63-s1032192-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h16384-p63-s1032192-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty UDP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **CPS on empty UDP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 -| ... | routing and two static IPv4 /18 route entries. DUT1 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\ -| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /18 route entries. DUT1 is tested with \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -69,9 +74,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h16384-p63-s1032192-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h16384-p63-s1032192-tput-ndrpdr.robot index 3510c84f9c..7a7b6f2b13 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h16384-p63-s1032192-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h16384-p63-s1032192-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | UDP | UDP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | UDP | UDP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_16384 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4udp-ip4base-h16384-p63-s1032192-pps +| ... | ethip4udp-ip4base-h16384-p63-s1032192-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *PPS on lightweight UDP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **TPUT on lightweight UDP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 -| ... | routing and two static IPv4 /18 route entries. DUT1 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /18 route entries. DUT1 is tested with \ +| ... | 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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,7 +66,7 @@ | ${n_hosts}= | ${16384} | ${n_ports}= | ${63} | ${transaction_scale}= | ${${n_hosts} * ${n_ports}} -| ${packets_per_transaction_and_direction}= | ${33} +| ${packets_per_transaction_and_direction}= | ${ASTF_N_DATA_FRAMES} # Traffic profile: | ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h-pps | ${transaction_type}= | udp_pps @@ -70,9 +75,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -103,14 +108,38 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4udp-ip4base-h16384-p63-s1032192-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4udp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4udp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4udp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4udp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4udp-ip4base-h16384-p63-s1032192-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4udp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4udp-ip4base-h16384-p63-s1032192-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4udp-ip4base-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-cps-ndrpdr.robot index 44b7740f5c..7b95c7ab6c 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty UDP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **CPS on empty UDP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 -| ... | routing and two static IPv4 /14 route entries. DUT1 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\ -| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /14 route entries. DUT1 is tested with \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -69,9 +74,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-tput-ndrpdr.robot index 7a80bf07d5..75279120ba 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h262144-p63-s16515072-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | UDP | UDP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | UDP | UDP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_262144 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4udp-ip4base-h262144-p63-s16515072-pps +| ... | ethip4udp-ip4base-h262144-p63-s16515072-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *PPS on lightweight UDP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **TPUT on lightweight UDP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 -| ... | routing and two static IPv4 /14 route entries. DUT1 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /14 route entries. DUT1 is tested with \ +| ... | 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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,7 +66,7 @@ | ${n_hosts}= | ${262144} | ${n_ports}= | ${63} | ${transaction_scale}= | ${${n_hosts} * ${n_ports}} -| ${packets_per_transaction_and_direction}= | ${33} +| ${packets_per_transaction_and_direction}= | ${ASTF_N_DATA_FRAMES} # Traffic profile: | ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h-pps | ${transaction_type}= | udp_pps @@ -70,9 +75,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -103,14 +108,38 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4udp-ip4base-h262144-p63-s16515072-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4udp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4udp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4udp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4udp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4udp-ip4base-h262144-p63-s16515072-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4udp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4udp-ip4base-h262144-p63-s16515072-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4udp-ip4base-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h4096-p63-s258048-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h4096-p63-s258048-cps-ndrpdr.robot index 4226656f14..56b6363bac 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h4096-p63-s258048-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h4096-p63-s258048-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty UDP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **CPS on empty UDP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 -| ... | routing and two static IPv4 /20 route entries. DUT1 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\ -| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /20 route entries. DUT1 is tested with \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -69,9 +74,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h4096-p63-s258048-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h4096-p63-s258048-tput-ndrpdr.robot index 314b6fcf48..a92513cd4e 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h4096-p63-s258048-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h4096-p63-s258048-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | UDP | UDP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | UDP | UDP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_4096 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4udp-ip4base-h4096-p63-s258048-pps +| ... | ethip4udp-ip4base-h4096-p63-s258048-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *PPS on lightweight UDP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **TPUT on lightweight UDP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 -| ... | routing and two static IPv4 /20 route entries. DUT1 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /20 route entries. DUT1 is tested with \ +| ... | 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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,7 +66,7 @@ | ${n_hosts}= | ${4096} | ${n_ports}= | ${63} | ${transaction_scale}= | ${${n_hosts} * ${n_ports}} -| ${packets_per_transaction_and_direction}= | ${33} +| ${packets_per_transaction_and_direction}= | ${ASTF_N_DATA_FRAMES} # Traffic profile: | ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h-pps | ${transaction_type}= | udp_pps @@ -70,9 +75,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -103,14 +108,38 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4udp-ip4base-h4096-p63-s258048-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4udp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4udp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4udp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4udp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4udp-ip4base-h4096-p63-s258048-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4udp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4udp-ip4base-h4096-p63-s258048-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4udp-ip4base-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h65536-p63-s4128768-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h65536-p63-s4128768-cps-ndrpdr.robot index 301f7643b1..c6b4de65cf 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h65536-p63-s4128768-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h65536-p63-s4128768-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty UDP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **CPS on empty UDP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 -| ... | routing and two static IPv4 /16 route entries. DUT1 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\ -| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /16 route entries. DUT1 is tested with \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -69,9 +74,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h65536-p63-s4128768-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h65536-p63-s4128768-tput-ndrpdr.robot index 480bbc38e1..8f10ed040e 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h65536-p63-s4128768-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-h65536-p63-s4128768-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | UDP | UDP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | IP4BASE | UDP | UDP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_65536 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4udp-ip4base-h65536-p63-s4128768-pps +| ... | ethip4udp-ip4base-h65536-p63-s4128768-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *PPS on lightweight UDP transactions with IPv4 routing* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **TPUT on lightweight UDP transactions with IPv4 routing** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 -| ... | routing and two static IPv4 /16 route entries. DUT1 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /16 route entries. DUT1 is tested with \ +| ... | 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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,7 +66,7 @@ | ${n_hosts}= | ${65536} | ${n_ports}= | ${63} | ${transaction_scale}= | ${${n_hosts} * ${n_ports}} -| ${packets_per_transaction_and_direction}= | ${33} +| ${packets_per_transaction_and_direction}= | ${ASTF_N_DATA_FRAMES} # Traffic profile: | ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h-pps | ${transaction_type}= | udp_pps @@ -70,9 +75,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -103,14 +108,38 @@ | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4udp-ip4base-h65536-p63-s4128768-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4udp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4udp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4udp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4udp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4udp-ip4base-h65536-p63-s4128768-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4udp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4udp-ip4base-h65536-p63-s4128768-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4udp-ip4base-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl1sf-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl1sf-10kflows-ndrpdr.robot index b1e4c301d1..3d4999ac36 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl1sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl1sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,28 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, ${flows_per_dir}\ -| ... | 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. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,15 +79,15 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl1sl-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl1sl-10kflows-ndrpdr.robot index c3a379fbfa..77345a260c 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl1sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl1sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,28 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, ${flows_per_dir}\ -| ... | 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. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,15 +79,15 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl50sf-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl50sf-10kflows-ndrpdr.robot index eb5c01401d..26081dea79 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl50sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl50sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,28 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, ${flows_per_dir}\ -| ... | 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. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,15 +79,15 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl50sl-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl50sl-10kflows-ndrpdr.robot index e44edae3ba..3b95a610dc 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl50sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-iacl50sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,28 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, ${flows_per_dir}\ -| ... | 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. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,15 +79,15 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-oacl50sf-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-oacl50sf-10kflows-ndrpdr.robot index dc50eb132a..0c33d29d64 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-oacl50sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-oacl50sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,28 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, ${flows_per_dir}\ -| ... | 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. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,15 +79,15 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-oacl50sl-10kflows-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-oacl50sl-10kflows-ndrpdr.robot index c74eb51e1c..a516a0ebe8 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-oacl50sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-ip4base-oacl50sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,28 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput IPv4 test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput IPv4 test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, ${flows_per_dir}\ -| ... | 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. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, \ +| ... | ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,15 +79,15 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h1-p1-s1-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h1-p1-s1-ndrpdr.robot index 2081521661..2734b33a6e 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h1-p1-s1-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h1-p1-s1-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -29,29 +29,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput NAT44 deterministic mode performance -| ... | test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput NAT44 deterministic mode performance +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and -| ... | one static IPv4 /18 route entries. -| ... | 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 DUT1. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /18 route entries. \ +| ... | 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1 flow 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | det44_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | det44_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -83,18 +88,18 @@ | ${n_ports}= | ${1} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} # Ramp-up settings -| ${ramp_up_rate}= | ${500000} -| ${ramp_up_duration}= | ${1} +| ${ramp_up_rate}= | ${66061.0} +| ${ramp_up_duration}= | ${2.0} # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4udp-${n_hosts}u${n_ports}p +| ${traffic_profile}= | trex-stl-ethip4udp-${n_hosts}u${n_ports}p *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h1024-p63-s64512-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h1024-p63-s64512-ndrpdr.robot index 02942194e3..8577c90176 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h1024-p63-s64512-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h1024-p63-s64512-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,28 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput NAT44 performance test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput NAT44 performance test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | two static IPv4 /22 and IPv4 /24 route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and two static IPv4 /22 and IPv4 /24 route entries. \ | ... | 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with UDP header and static payload. MAC addresses are matching MAC\ +| ... | +| ... | - **[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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per \ +| ... | flow-group) with all packets containing Ethernet header, IPv4 header \ +| ... | with UDP header and static payload. MAC addresses are matching MAC \ | ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | det44_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | det44_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -80,8 +85,8 @@ | ${n_ports}= | ${63} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} # Ramp-up settings -| ${ramp_up_rate}= | ${500000} -| ${ramp_up_duration}= | ${1} +| ${ramp_up_rate}= | ${66061.0} +| ${ramp_up_duration}= | ${2.0} # Traffic profile | ${traffic_profile}= | trex-stl-ethip4udp-${n_hosts}u${n_ports}p @@ -89,9 +94,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h16384-p63-s1032192-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h16384-p63-s1032192-ndrpdr.robot index 90a1053c9e..47bb13878d 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h16384-p63-s1032192-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h16384-p63-s1032192-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,28 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput NAT44 performance test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput NAT44 performance test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | two static IPv4 /18 and IPv4 /24 route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and two static IPv4 /18 and IPv4 /24 route entries. \ | ... | 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with UDP header and static payload. MAC addresses are matching MAC\ +| ... | +| ... | - **[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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per \ +| ... | flow-group) with all packets containing Ethernet header, IPv4 header \ +| ... | with UDP header and static payload. MAC addresses are matching MAC \ | ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | det44_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | det44_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -80,8 +85,8 @@ | ${n_ports}= | ${63} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} # Ramp-up settings -| ${ramp_up_rate}= | ${400000} -| ${ramp_up_duration}= | ${5.5} +| ${ramp_up_rate}= | ${66061.0} +| ${ramp_up_duration}= | ${16.8} # Traffic profile | ${traffic_profile}= | trex-stl-ethip4udp-${n_hosts}u${n_ports}p @@ -89,9 +94,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h262144-p63-s16515072-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h262144-p63-s16515072-ndrpdr.robot index 913f8b353b..457d07ef42 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h262144-p63-s16515072-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h262144-p63-s16515072-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,28 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput NAT44 performance test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput NAT44 performance test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | two static IPv4 /14 and IPv4 /24 route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and two static IPv4 /14 and IPv4 /24 route entries. \ | ... | 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with UDP header and static payload. MAC addresses are matching MAC\ +| ... | +| ... | - **[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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per \ +| ... | flow-group) with all packets containing Ethernet header, IPv4 header \ +| ... | with UDP header and static payload. MAC addresses are matching MAC \ | ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | det44_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | det44_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -82,8 +87,8 @@ # Main heap size multiplicator | ${heap_size_mult}= | ${7} # Ramp-up settings -| ${ramp_up_rate}= | ${200000} -| ${ramp_up_duration}= | ${82.8} +| ${ramp_up_rate}= | ${66061.0} +| ${ramp_up_duration}= | ${252.3} # Traffic profile | ${traffic_profile}= | trex-stl-ethip4udp-${n_hosts}u${n_ports}p @@ -91,9 +96,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h4096-p63-s258048-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h4096-p63-s258048-ndrpdr.robot index 2e11408323..43be7302b7 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h4096-p63-s258048-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h4096-p63-s258048-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,28 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput NAT44 performance test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput NAT44 performance test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | two static IPv4 /20 and IPv4 /24 route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and two static IPv4 /20 and IPv4 /24 route entries. \ | ... | 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with UDP header and static payload. MAC addresses are matching MAC\ +| ... | +| ... | - **[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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per \ +| ... | flow-group) with all packets containing Ethernet header, IPv4 header \ +| ... | with UDP header and static payload. MAC addresses are matching MAC \ | ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | det44_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | det44_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -80,8 +85,8 @@ | ${n_ports}= | ${63} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} # Ramp-up settings -| ${ramp_up_rate}= | ${400000} -| ${ramp_up_duration}= | ${1.6} +| ${ramp_up_rate}= | ${66061.0} +| ${ramp_up_duration}= | ${5.0} # Traffic profile | ${traffic_profile}= | trex-stl-ethip4udp-${n_hosts}u${n_ports}p @@ -89,9 +94,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h65536-p63-s4128758-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h65536-p63-s4128758-ndrpdr.robot index 7a5bb3f271..c795e04b29 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h65536-p63-s4128758-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44det-h65536-p63-s4128758-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,28 +27,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput NAT44 performance test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput NAT44 performance test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | two static IPv4 /16 and IPv4 /24 route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and two static IPv4 /16 and IPv4 /24 route entries. \ | ... | 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with UDP header and static payload. MAC addresses are matching MAC\ +| ... | +| ... | - **[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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per \ +| ... | flow-group) with all packets containing Ethernet header, IPv4 header \ +| ... | with UDP header and static payload. MAC addresses are matching MAC \ | ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | det44_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | det44_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -82,8 +87,8 @@ # Main heap size multiplicator | ${heap_size_mult}= | ${2} # Ramp-up settings -| ${ramp_up_rate}= | ${200000} -| ${ramp_up_duration}= | ${23.5} +| ${ramp_up_rate}= | ${66061.0} +| ${ramp_up_duration}= | ${63.9} # Traffic profile | ${traffic_profile}= | trex-stl-ethip4udp-${n_hosts}u${n_ports}p @@ -91,9 +96,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h1024-p63-s64512-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h1024-p63-s64512-cps-ndrpdr.robot index 839b9277a9..73b92739d3 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h1024-p63-s64512-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h1024-p63-s64512-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -29,30 +29,35 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty UDP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **CPS on empty UDP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and -| ... | one static IPv4 /${dest_mask} route entries. -| ... | 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\ -| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /${dest_mask} route entries. \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -94,9 +99,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h1024-p63-s64512-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h1024-p63-s64512-tput-ndrpdr.robot index e66ee250b2..e650f1022d 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h1024-p63-s64512-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h1024-p63-s64512-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | UDP | UDP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | UDP | UDP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_1024 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4udp-nat44ed-h1024-p63-s64512-pps +| ... | ethip4udp-nat44ed-h1024-p63-s64512-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,32 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight UDP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight UDP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, UDP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, UDP header and static \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -80,7 +85,9 @@ | ${n_ports}= | ${63} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} | ${transaction_scale}= | ${n_sessions} -| ${packets_per_transaction_and_direction}= | ${33} +| ${packets_per_transaction_and_direction}= | ${ASTF_N_DATA_FRAMES} +# Ramp-up settings +| ${ramp_up_rate}= | ${30000} # Traffic profile | ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h-pps | ${transaction_type}= | udp_pps @@ -89,9 +96,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -119,17 +126,44 @@ | | And Initialize layer interface | | And Initialize IPv4 forwarding for NAT44 in circular topology | | And Initialize NAT44 endpoint-dependent mode in circular topology -| | Then Find NDR and PDR intervals using optimized search +| | Then Send ramp-up traffic +| | And Verify NAT44 UDP sessions number on DUT1 node +| | And Find NDR and PDR intervals using optimized search +| | And Verify NAT44 UDP sessions number on DUT1 node *** Test Cases *** -| 64B-1c-ethip4udp-nat44ed-h1024-p63-s64512-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4udp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4udp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4udp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4udp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4udp-nat44ed-h1024-p63-s64512-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4udp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4udp-nat44ed-h1024-p63-s64512-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4udp-nat44ed-h1024-p63-s64512-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h1024-p63-s64512-udir-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h1024-p63-s64512-udir-ndrpdr.robot index 9866ae2396..836c404759 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h1024-p63-s64512-udir-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h1024-p63-s64512-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput NAT44 endpoint-dependent mode -| ... | performance test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput NAT44 endpoint-dependent mode +| ... | performance test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | one static IPv4 /${dest_mask} route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /${dest_mask} route entries. \ | ... | 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\ -| ... | contain L4 flows (uni-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[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 \ +| ... | contain L4 flows (uni-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,7 +80,7 @@ # NAT settings | ${nat_mode}= | endpoint-dependent | ${in_net}= | 192.168.0.0 -| ${in_mask}= | ${8} +| ${in_mask}= | ${22} | ${out_net}= | 68.142.68.0 | ${out_net_end}= | 68.142.68.0 | ${out_mask}= | ${32} @@ -94,9 +99,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h16384-p63-s1032192-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h16384-p63-s1032192-cps-ndrpdr.robot index 8180d891cb..62b8cb90af 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h16384-p63-s1032192-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h16384-p63-s1032192-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -29,30 +29,35 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty UDP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **CPS on empty UDP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and -| ... | one static IPv4 /${dest_mask} route entries. -| ... | 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\ -| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /${dest_mask} route entries. \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -94,9 +99,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h16384-p63-s1032192-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h16384-p63-s1032192-tput-ndrpdr.robot index d9a652b186..38205ffa72 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h16384-p63-s1032192-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h16384-p63-s1032192-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | UDP | UDP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | UDP | UDP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_16384 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4udp-nat44ed-h16384-p63-s1032192-pps +| ... | ethip4udp-nat44ed-h16384-p63-s1032192-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,33 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight UDP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight UDP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, UDP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, UDP header and static \ +| ... | payload. \ \ \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -80,7 +86,9 @@ | ${n_ports}= | ${63} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} | ${transaction_scale}= | ${n_sessions} -| ${packets_per_transaction_and_direction}= | ${33} +| ${packets_per_transaction_and_direction}= | ${ASTF_N_DATA_FRAMES} +# Ramp-up settings +| ${ramp_up_rate}= | ${30000} # Traffic profile | ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h-pps | ${transaction_type}= | udp_pps @@ -89,9 +97,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -119,17 +127,44 @@ | | And Initialize layer interface | | And Initialize IPv4 forwarding for NAT44 in circular topology | | And Initialize NAT44 endpoint-dependent mode in circular topology -| | Then Find NDR and PDR intervals using optimized search +| | Then Send ramp-up traffic +| | And Verify NAT44 UDP sessions number on DUT1 node +| | And Find NDR and PDR intervals using optimized search +| | And Verify NAT44 UDP sessions number on DUT1 node *** Test Cases *** -| 64B-1c-ethip4udp-nat44ed-h16384-p63-s1032192-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4udp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4udp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4udp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4udp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4udp-nat44ed-h16384-p63-s1032192-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4udp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4udp-nat44ed-h16384-p63-s1032192-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4udp-nat44ed-h16384-p63-s1032192-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h16384-p63-s1032192-udir-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h16384-p63-s1032192-udir-ndrpdr.robot index bd52906c78..db8249365f 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h16384-p63-s1032192-udir-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h16384-p63-s1032192-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput NAT44 endpoint-dependent mode -| ... | performance test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput NAT44 endpoint-dependent mode +| ... | performance test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | one static IPv4 /${dest_mask} route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /${dest_mask} route entries. \ | ... | 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\ -| ... | contain L4 flows (un-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[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 \ +| ... | contain L4 flows (un-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -94,9 +99,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h262144-p63-s16515072-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h262144-p63-s16515072-cps-ndrpdr.robot index 4bfff95012..dbc8abe3e0 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h262144-p63-s16515072-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h262144-p63-s16515072-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -29,30 +29,35 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty UDP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **CPS on empty UDP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and -| ... | one static IPv4 /${dest_mask} route entries. -| ... | 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\ -| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /${dest_mask} route entries. \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -96,9 +101,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h262144-p63-s16515072-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h262144-p63-s16515072-tput-ndrpdr.robot index 4dc9d21358..9cec21c2db 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h262144-p63-s16515072-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h262144-p63-s16515072-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | UD | UDP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | UD | UDP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_262144 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4udp-nat44ed-h262144-p63-s16515072-pps +| ... | ethip4udp-nat44ed-h262144-p63-s16515072-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,33 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight UDP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight UDP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, UDP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, UDP header and static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -80,9 +86,12 @@ | ${n_ports}= | ${63} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} | ${transaction_scale}= | ${n_sessions} -| ${packets_per_transaction_and_direction}= | ${33} +| ${packets_per_transaction_and_direction}= | ${ASTF_N_DATA_FRAMES} # Main heap size multiplicator | ${heap_size_mult}= | ${7} +# Ramp-up settings +# This scale needs more than 55 ktps, which is more than current NDR results. +| ${ramp_up_rate}= | ${30000} # Traffic profile | ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h-pps | ${transaction_type}= | udp_pps @@ -91,9 +100,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -121,17 +130,44 @@ | | And Initialize layer interface | | And Initialize IPv4 forwarding for NAT44 in circular topology | | And Initialize NAT44 endpoint-dependent mode in circular topology -| | Then Find NDR and PDR intervals using optimized search +| | Then Send ramp-up traffic +| | And Verify NAT44 UDP sessions number on DUT1 node +| | And Find NDR and PDR intervals using optimized search +| | And Verify NAT44 UDP sessions number on DUT1 node *** Test Cases *** -| 64B-1c-ethip4udp-nat44ed-h262144-p63-s16515072-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4udp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4udp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4udp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4udp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4udp-nat44ed-h262144-p63-s16515072-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4udp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4udp-nat44ed-h262144-p63-s16515072-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4udp-nat44ed-h262144-p63-s16515072-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h262144-p63-s16515072-udir-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h262144-p63-s16515072-udir-ndrpdr.robot index 99dcb06301..ebe4718df1 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h262144-p63-s16515072-udir-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h262144-p63-s16515072-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput NAT44 endpoint-dependent mode -| ... | performance test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput NAT44 endpoint-dependent mode +| ... | performance test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | one static IPv4 /${dest_mask} route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /${dest_mask} route entries. \ | ... | 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\ -| ... | contain L4 flows (uni-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[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 \ +| ... | contain L4 flows (uni-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,7 +80,7 @@ # NAT settings | ${nat_mode}= | endpoint-dependent | ${in_net}= | 192.168.0.0 -| ${in_mask}= | ${8} +| ${in_mask}= | ${14} | ${out_net}= | 68.142.68.0 | ${out_net_end}= | 68.142.68.255 | ${out_mask}= | ${24} @@ -96,9 +101,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h4096-p63-s258048-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h4096-p63-s258048-cps-ndrpdr.robot index a5346e9d16..492e9619e2 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h4096-p63-s258048-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h4096-p63-s258048-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -29,30 +29,35 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty UDP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **CPS on empty UDP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and -| ... | one static IPv4 /${dest_mask} route entries. -| ... | 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\ -| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /${dest_mask} route entries. \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -94,9 +99,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h4096-p63-s258048-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h4096-p63-s258048-tput-ndrpdr.robot index ce94376c73..1829f5d357 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h4096-p63-s258048-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h4096-p63-s258048-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | UDP | UDP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | UDP | UDP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_4096 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4udp-nat44ed-h4096-p63-s258048-pps +| ... | ethip4udp-nat44ed-h4096-p63-s258048-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,33 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight UDP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight UDP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, UDP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, UDP header and static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -80,7 +86,9 @@ | ${n_ports}= | ${63} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} | ${transaction_scale}= | ${n_sessions} -| ${packets_per_transaction_and_direction}= | ${33} +| ${packets_per_transaction_and_direction}= | ${ASTF_N_DATA_FRAMES} +# Ramp-up settings +| ${ramp_up_rate}= | ${30000} # Traffic profile | ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h-pps | ${transaction_type}= | udp_pps @@ -89,9 +97,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -119,17 +127,44 @@ | | And Initialize layer interface | | And Initialize IPv4 forwarding for NAT44 in circular topology | | And Initialize NAT44 endpoint-dependent mode in circular topology -| | Then Find NDR and PDR intervals using optimized search +| | Then Send ramp-up traffic +| | And Verify NAT44 UDP sessions number on DUT1 node +| | And Find NDR and PDR intervals using optimized search +| | And Verify NAT44 UDP sessions number on DUT1 node *** Test Cases *** -| 64B-1c-ethip4udp-nat44ed-h4096-p63-s258048-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4udp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4udp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4udp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4udp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4udp-nat44ed-h4096-p63-s258048-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4udp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4udp-nat44ed-h4096-p63-s258048-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4udp-nat44ed-h4096-p63-s258048-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h4096-p63-s258048-udir-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h4096-p63-s258048-udir-ndrpdr.robot index 66407ad2df..a05a3d8ec0 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h4096-p63-s258048-udir-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h4096-p63-s258048-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput NAT44 endpoint-dependent mode -| ... | performance test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput NAT44 endpoint-dependent mode +| ... | performance test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | one static IPv4 /${dest_mask} route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /${dest_mask} route entries. \ | ... | 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\ -| ... | contain L4 flows (uni-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[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 \ +| ... | contain L4 flows (uni-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,7 +80,7 @@ # NAT settings | ${nat_mode}= | endpoint-dependent | ${in_net}= | 192.168.0.0 -| ${in_mask}= | ${8} +| ${in_mask}= | ${20} | ${out_net}= | 68.142.68.0 | ${out_net_end}= | 68.142.68.3 | ${out_mask}= | ${30} @@ -94,9 +99,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h65536-p63-s4128768-cps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h65536-p63-s4128768-cps-ndrpdr.robot index 46be534d1a..c82c8b115e 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h65536-p63-s4128768-cps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h65536-p63-s4128768-cps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -29,30 +29,35 @@ | | Test Template | Local Template | -| Documentation | *CPS on empty UDP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **CPS on empty UDP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and -| ... | one static IPv4 /${dest_mask} route entries. -| ... | 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\ -| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /${dest_mask} route entries. \ +| ... | 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 \ +| ... | contain L7 flows (${cps} bi-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -96,9 +101,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h65536-p63-s4128768-pps-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h65536-p63-s4128768-tput-ndrpdr.robot index ca319770d7..e7c3029064 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h65536-p63-s4128768-pps-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h65536-p63-s4128768-tput-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -15,9 +15,9 @@ | Resource | resources/libraries/robot/shared/default.robot | | Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | UDP | UDP_PPS | DRV_VFIO_PCI +| ... | NIC_Intel-X710 | ETH | IP4FWD | NAT44 | UDP | UDP_TPUT | DRV_VFIO_PCI | ... | SCALE | HOSTS_65536 | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4udp-nat44ed-h65536-p63-s4128768-pps +| ... | ethip4udp-nat44ed-h65536-p63-s4128768-tput | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance @@ -27,27 +27,32 @@ | Test Template | Local Template | | # TODO CSIT-1765: Unify suite Documentation. -| Documentation | *PPS on lightweight UDP transactions with NAT44ED* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **TPUT on lightweight UDP transactions with NAT44ED** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4\ -| ... | routing and two static IPv4 /24 route entries. DUT1 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 client and server ASTF programs, generating packets containing\ -| ... | Ethernet header, IPv4 header, UDP header and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ +| ... | routing and two static IPv4 /24 route entries. DUT1 is tested with \ +| ... | 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 client and server ASTF programs, generating packets \ +| ... | containing Ethernet header, IPv4 header, UDP header and static \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -80,9 +85,11 @@ | ${n_ports}= | ${63} | ${n_sessions}= | ${${n_hosts} * ${n_ports}} | ${transaction_scale}= | ${n_sessions} -| ${packets_per_transaction_and_direction}= | ${33} +| ${packets_per_transaction_and_direction}= | ${ASTF_N_DATA_FRAMES} # Main heap size multiplicator | ${heap_size_mult}= | ${2} +# Ramp-up settings +| ${ramp_up_rate}= | ${30000} # Traffic profile | ${traffic_profile}= | trex-astf-ethip4udp-${n_hosts}h-pps | ${transaction_type}= | udp_pps @@ -91,9 +98,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration.\ +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -121,17 +128,44 @@ | | And Initialize layer interface | | And Initialize IPv4 forwarding for NAT44 in circular topology | | And Initialize NAT44 endpoint-dependent mode in circular topology -| | Then Find NDR and PDR intervals using optimized search +| | Then Send ramp-up traffic +| | And Verify NAT44 UDP sessions number on DUT1 node +| | And Find NDR and PDR intervals using optimized search +| | And Verify NAT44 UDP sessions number on DUT1 node *** Test Cases *** -| 64B-1c-ethip4udp-nat44ed-h65536-p63-s4128768-pps-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} +| 100B-1c-ethip4udp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 100B | 1C +| | frame_size=${100} | phy_cores=${1} + +| 100B-2c-ethip4udp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 100B | 2C +| | frame_size=${100} | phy_cores=${2} + +| 100B-4c-ethip4udp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 100B | 4C +| | frame_size=${100} | phy_cores=${4} + +| 1518B-1c-ethip4udp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} -| 64B-2c-ethip4udp-nat44ed-h65536-p63-s4128768-pps-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} +| 9000B-2c-ethip4udp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} -| 64B-4c-ethip4udp-nat44ed-h65536-p63-s4128768-pps-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} +| 9000B-4c-ethip4udp-nat44ed-h65536-p63-s4128768-tput-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} diff --git a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h65536-p63-s4128768-udir-ndrpdr.robot b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h65536-p63-s4128768-udir-ndrpdr.robot index f1c1576848..99d303e15b 100644 --- a/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h65536-p63-s4128768-udir-ndrpdr.robot +++ b/tests/vpp/perf/ip4/2n1l-10ge2p1x710-ethip4udp-nat44ed-h65536-p63-s4128768-udir-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput NAT44 endpoint-dependent mode -| ... | performance test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput NAT44 endpoint-dependent mode +| ... | performance test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing and\ -| ... | one static IPv4 /${dest_mask} route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | and one static IPv4 /${dest_mask} route entries. \ | ... | 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\ -| ... | contain L4 flows (uni-directional UDP flows) with all packets\ -| ... | containing Ethernet header, IPv4 header with UDP header and static\ -| ... | payload. MAC addresses are matching MAC addresses of the TG node\ +| ... | +| ... | - **[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 \ +| ... | contain L4 flows (uni-directional UDP flows) with all packets \ +| ... | containing Ethernet header, IPv4 header with UDP header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* Benchmarking Methodology\ -| ... | for Network Security Device Performance\ +| ... | +| ... | - **[Ref] Applicable standard specifications:** Benchmarking \ +| ... | Methodology for Network Security Device Performance \ | ... | (draft-ietf-bmwg-ngfw-performance-03). *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | nat_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | nat_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,7 +80,7 @@ # NAT settings | ${nat_mode}= | endpoint-dependent | ${in_net}= | 192.168.0.0 -| ${in_mask}= | ${8} +| ${in_mask}= | ${16} | ${out_net}= | 68.142.68.0 | ${out_net_end}= | 68.142.68.63 | ${out_mask}= | ${26} @@ -96,9 +101,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs NAT44 ${nat_mode} configuration. +| | ... | - **[Cfg]** DUT runs NAT44 ${nat_mode} configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4/regenerate_testcases.py b/tests/vpp/perf/ip4/regenerate_testcases.py index ec754aa261..e22f6de5c3 100755 --- a/tests/vpp/perf/ip4/regenerate_testcases.py +++ b/tests/vpp/perf/ip4/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale100l2bd100vlan100vxlan-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale100l2bd100vlan100vxlan-ndrpdr.robot index 6715f40ccc..3fd9b7e26d 100644 --- a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale100l2bd100vlan100vxlan-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale100l2bd100vlan100vxlan-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -22,35 +22,43 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with IEEE 802.1Q and VXLANoIPv4 -| ... | test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-Dot1Q-IPv4 for L2 switching of IPv4\ +| Documentation | **RFC2544: Pkt throughput L2BD with IEEE 802.1Q and \ +| ... | VXLANoIPv4 test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-Dot1Q-IPv4 for L2 switching of \ +| ... | IPv4. \ | ... | on TG-DUTn. Eth-IPv4-VXLAN-Eth-IPv4 is applied on link between DUTs. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with 100 L2\ -| ... | bridge domains. VXLAN tunnels are configured between L2BDs on DUT1 and\ -| ... | DUT2. DUT1 and DUT2 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, up to 64,5k\ -| ... | flows per flow-group) with all packets containing Ethernet header, IEEE\ -| ... | 802.1Q header, IPv4 header with IP protocol=61 and static payload.\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with 100 \ +| ... | L2 \ +| ... | bridge domains. VXLAN tunnels are configured between L2BDs on DUT1 and \ +| ... | DUT2. DUT1 and DUT2 are 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, up to 64,5k \ +| ... | flows per flow-group) with all packets containing Ethernet header, \ +| ... | IEEE \ +| ... | 802.1Q 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, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,7 +69,7 @@ | ${osi_layer}= | L2 | ${overhead}= | ${50} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-dot1qip4-vlan100ip4src254ip4dst254 +| ${traffic_profile}= | trex-stl-dot1qip4-vlan100ip4src254ip4dst254 # Number of VXLAN tunnels | ${vxlan_count}= | ${100} @@ -69,9 +77,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD forwarding config with VLAN and VXLAN and\ -| | ... | uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD forwarding config with VLAN and \ +| | ... | VXLAN and 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). diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale10l2bd10vlan10vxlan-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale10l2bd10vlan10vxlan-ndrpdr.robot index fc6c2a0a2b..16b8c25c3a 100644 --- a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale10l2bd10vlan10vxlan-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale10l2bd10vlan10vxlan-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -22,35 +22,42 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with IEEE 802.1Q and VXLANoIPv4 -| ... | test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-Dot1Q-IPv4 for L2 switching of IPv4\ +| Documentation | **RFC2544: Pkt throughput L2BD with IEEE 802.1Q and \ +| ... | VXLANoIPv4 test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-Dot1Q-IPv4 for L2 switching of \ +| ... | IPv4. \ | ... | on TG-DUTn. Eth-IPv4-VXLAN-Eth-IPv4 is applied on link between DUTs. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with 10 L2\ -| ... | bridge domains. VXLAN tunnels are configured between L2BDs on DUT1 and\ -| ... | DUT2. DUT1 and DUT2 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, up to 64,5k\ -| ... | flows per flow-group) with all packets containing Ethernet header, IEEE\ -| ... | 802.1Q header, IPv4 header with IP protocol=61 and static payload.\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with 10 L2 \ +| ... | bridge domains. VXLAN tunnels are configured between L2BDs on DUT1 and \ +| ... | DUT2. DUT1 and DUT2 are 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, up to 64,5k \ +| ... | flows per flow-group) with all packets containing Ethernet header, \ +| ... | IEEE \ +| ... | 802.1Q 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, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,7 +68,7 @@ | ${osi_layer}= | L2 | ${overhead}= | ${50} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-dot1qip4-vlan10ip4src254ip4dst254 +| ${traffic_profile}= | trex-stl-dot1qip4-vlan10ip4src254ip4dst254 # Number of VXLAN tunnels | ${vxlan_count}= | ${10} @@ -69,9 +76,9 @@ | Local Template | | | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD forwarding config with VLAN and VXLAN and\ -| | ... | uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD forwarding config with VLAN and \ +| | ... | VXLAN and 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). diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale1kl2bd1kvlan1kvxlan-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale1kl2bd1kvlan1kvxlan-ndrpdr.robot index 9e9fc55066..9844ef31e0 100644 --- a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale1kl2bd1kvlan1kvxlan-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale1kl2bd1kvlan1kvxlan-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -22,35 +22,42 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with IEEE 802.1Q and VXLANoIPv4 -| ... | test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-Dot1Q-IPv4 for L2 switching of IPv4\ +| Documentation | **RFC2544: Pkt throughput L2BD with IEEE 802.1Q and \ +| ... | VXLANoIPv4 test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-Dot1Q-IPv4 for L2 switching of \ +| ... | IPv4. \ | ... | on TG-DUTn. Eth-IPv4-VXLAN-Eth-IPv4 is applied on link between DUTs. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with 1k L2\ -| ... | bridge domains. VXLAN tunnels are configured between L2BDs on DUT1 and\ -| ... | DUT2. DUT1 and DUT2 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, up to 64,5k\ -| ... | flows per flow-group) with all packets containing Ethernet header, IEEE\ -| ... | 802.1Q header, IPv4 header with IP protocol=61 and static payload.\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with 1k L2 \ +| ... | bridge domains. VXLAN tunnels are configured between L2BDs on DUT1 and \ +| ... | DUT2. DUT1 and DUT2 are 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, up to 64,5k \ +| ... | flows per flow-group) with all packets containing Ethernet header, \ +| ... | IEEE \ +| ... | 802.1Q 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, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,16 +68,16 @@ | ${osi_layer}= | L2 | ${overhead}= | ${50} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-dot1qip4-vlan1kip4src254ip4dst254 +| ${traffic_profile}= | trex-stl-dot1qip4-vlan1kip4src254ip4dst254 # Number of VXLAN tunnels | ${vxlan_count}= | ${1000} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD forwarding config with VLAN and VXLAN and\ -| | ... | uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD forwarding config with VLAN and \ +| | ... | VXLAN and 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). diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale1l2bd1vlan1vxlan-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale1l2bd1vlan1vxlan-ndrpdr.robot index 3786e2bef9..7382e08566 100644 --- a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale1l2bd1vlan1vxlan-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-dot1q--ethip4vxlan-l2bdscale1l2bd1vlan1vxlan-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -22,35 +22,42 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with IEEE 802.1Q and VXLANoIPv4 -| ... | test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-Dot1Q-IPv4 for L2 switching of IPv4\ +| Documentation | **RFC2544: Pkt throughput L2BD with IEEE 802.1Q and \ +| ... | VXLANoIPv4 test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-Dot1Q-IPv4 for L2 switching of \ +| ... | IPv4. \ | ... | on TG-DUTn. Eth-IPv4-VXLAN-Eth-IPv4 is applied on link between DUTs. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with 1 L2\ -| ... | bridge domains. VXLAN tunnels are configured between L2BDs on DUT1 and\ -| ... | DUT2. DUT1 and DUT2 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, up to 64,5k\ -| ... | flows per flow-group) with all packets containing Ethernet header, IEEE\ -| ... | 802.1Q header, IPv4 header with IP protocol=61 and static payload.\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with 1 L2 \ +| ... | bridge domains. VXLAN tunnels are configured between L2BDs on DUT1 and \ +| ... | DUT2. DUT1 and DUT2 are 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, up to 64,5k \ +| ... | flows per flow-group) with all packets containing Ethernet header, \ +| ... | IEEE \ +| ... | 802.1Q 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, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -61,16 +68,16 @@ | ${osi_layer}= | L2 | ${overhead}= | ${50} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-dot1qip4-vlan1ip4src254ip4dst254 +| ${traffic_profile}= | trex-stl-dot1qip4-vlan1ip4src254ip4dst254-2 # Number of VXLAN tunnels | ${vxlan_count}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD forwarding config with VLAN and VXLAN and\ -| | ... | uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD forwarding config with VLAN and \ +| | ... | VXLAN and 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). diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4gtpuhw-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4gtpuhw-ip4base-ndrpdr.robot new file mode 100644 index 0000000000..2dc8e88e14 --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4gtpuhw-ip4base-ndrpdr.robot @@ -0,0 +1,146 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/overlay/gtpu.robot + +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | IP4FWD | IP4BASE | ENCAP | GTPU | GTPU_HWACCEL +| ... | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4gtpuhw-ip4base +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput GTPU test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-GTPU on DUT1-DUT2, \ +| ... | Eth-IPv4 on TG-DUTn for IPv4 routing over GTPU tunnel. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and static routes. GTPU tunnel is configured on each DUT and \ +| ... | enabled GTPU offload RX. DUT1 and DUT2 are 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 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | gtpu_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${36} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | +| | [Documentation] +| | ... | - **[Cfg]** DUT runs GTPU routing config, and Enable GTPU offload \ +| | ... | RX 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IP4 forwarding with GTPU tunnel in 3-node circular topology +| | ... | offload=${True} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4gtpuhw-ip4base-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4gtpuhw-ip4base-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4gtpuhw-ip4base-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4gtpuhw-ip4base-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4gtpuhw-ip4base-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4gtpuhw-ip4base-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4gtpuhw-ip4base-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4gtpuhw-ip4base-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4gtpuhw-ip4base-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4gtpuhw-ip4base-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4gtpuhw-ip4base-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4gtpuhw-ip4base-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4gtpusw-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4gtpusw-ip4base-ndrpdr.robot new file mode 100644 index 0000000000..e53a267242 --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4gtpusw-ip4base-ndrpdr.robot @@ -0,0 +1,143 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/overlay/gtpu.robot + +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | IP4FWD | IP4BASE | ENCAP | GTPU | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4gtpusw-ip4base +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput GTPU test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-GTPU on DUT1-DUT2, \ +| ... | Eth-IPv4 on TG-DUTn for IPv4 routing over GTPU tunnel. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and static routes. GTPU tunnel is configured between DUT1 \ +| ... | and DUT2. DUT1 and DUT2 are 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 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | gtpu_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${36} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | +| | [Documentation] +| | ... | - **[Cfg]** DUT runs GTPU routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize IP4 forwarding with GTPU tunnel in 3-node circular topology +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4gtpusw-ip4base-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4gtpusw-ip4base-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4gtpusw-ip4base-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4gtpusw-ip4base-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4gtpusw-ip4base-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4gtpusw-ip4base-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4gtpusw-ip4base-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4gtpusw-ip4base-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4gtpusw-ip4base-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4gtpusw-ip4base-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4gtpusw-ip4base-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4gtpusw-ip4base-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4gtpusw-ip4base-reassembly-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4gtpusw-ip4base-reassembly-ndrpdr.robot new file mode 100644 index 0000000000..e254aba99d --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4gtpusw-ip4base-reassembly-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/overlay/gtpu.robot + +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | IP4FWD | IP4BASE | ENCAP | GTPU | DRV_VFIO_PCI +| ... | REASSEMBLY | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4gtpusw-ip4base-reassembly +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput GTPU test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-GTPU on DUT1-DUT2, \ +| ... | Eth-IPv4 on TG-DUTn for IPv4 routing over GTPU tunnel. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and static routes. GTPU tunnel is configured between DUT1 \ +| ... | and DUT2. DUT1 and DUT2 are tested with ${nic_name}. MTU on DUT-DUT \ +| ... | link is lowered to induce packet fragmentation and reassembly. +| ... | +| ... | - **[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 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 *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | gtpu_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${36} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 + +*** Keywords *** +| Local Template +| | +| | [Documentation] +| | ... | - **[Cfg]** DUT runs GTPU routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Lower DUT1-DUT2 MTU For Fragmentation +| | And Initialize IP4 forwarding with GTPU tunnel in 3-node circular topology +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4gtpusw-ip4base-reassembly-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4gtpusw-ip4base-reassembly-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4gtpusw-ip4base-reassembly-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4gtpusw-ip4base-reassembly-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4gtpusw-ip4base-reassembly-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4gtpusw-ip4base-reassembly-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4gtpusw-ip4base-reassembly-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4gtpusw-ip4base-reassembly-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4gtpusw-ip4base-reassembly-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4gtpusw-ip4base-reassembly-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4gtpusw-ip4base-reassembly-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4gtpusw-ip4base-reassembly-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4lispip4-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4lispip4-ip4base-ndrpdr.robot index 9527f7aad7..d3920a0140 100644 --- a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4lispip4-ip4base-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4lispip4-ip4base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -25,34 +25,39 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput Lisp test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-LISP-IPv4 on DUT1-DUT2,\ +| Documentation | **RFC2544: Pkt throughput Lisp test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-LISP-IPv4 on DUT1-DUT2, \ | ... | Eth-IPv4 on TG-DUTn for IPv4 routing over LISPoIPv4 tunnel. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and static routes. LISPoIPv4 tunnel is configured between DUT1\ -| ... | and DUT2. DUT1 and DUT2 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 +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and static routes. LISPoIPv4 tunnel is configured between DUT1 \ +| ... | and DUT2. DUT1 and DUT2 are 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | 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:* RFC6830. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC6830. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lisp_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lisp_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -63,15 +68,15 @@ | ${osi_layer}= | L3 | ${overhead}= | ${8} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 LISP remote static mappings and whitelist filters\ -| | ... | config. +| | ... | - **[Cfg]** DUT runs IPv4 LISP remote static mappings and whitelist \ +| | ... | filters config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4lispip6-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4lispip6-ip4base-ndrpdr.robot index 35fb3baa56..6e4a2007bd 100644 --- a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4lispip6-ip4base-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4lispip6-ip4base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -25,34 +25,39 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput Lisp test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-LISP-IPv6 on DUT1-DUT2,\ +| Documentation | **RFC2544: Pkt throughput Lisp test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-LISP-IPv6 on DUT1-DUT2, \ | ... | Eth-IPv4 on TG-DUTn for IPv4 routing over LISPoIPv6 tunnel. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4\ -| ... | routing and static routes. LISPoIPv6 tunnel is configured between DUT1\ -| ... | and DUT2. DUT1 and DUT2 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 +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ +| ... | routing and static routes. LISPoIPv6 tunnel is configured between DUT1 \ +| ... | and DUT2. DUT1 and DUT2 are 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | 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:* RFC6830. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC6830. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lisp_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lisp_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -63,15 +68,15 @@ | ${osi_layer}= | L3 | ${overhead}= | ${48} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist filters\ -| | ... | config. +| | ... | - **[Cfg]** DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr.robot new file mode 100644 index 0000000000..bd84cebb14 --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr.robot @@ -0,0 +1,170 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/wireguard/wireguard.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 +| ... | IP4FWD | NIC_Intel-X710 | WIREGUARD | ASYNC | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4udpwireguard1000tnlhwasync-ip4base +| +| Suite Setup | Setup suite topology interfaces | performance | cryptohw +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 WireGuard tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-UDP-WireGuard on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple WireGuard tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | and send to another DUT, where packets are decrypted and sent back \ +| ... | to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of WireGuard tunnels) 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. Incrementing of IP.src and IP.dst \ +| ... | are applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | wireguard_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | HW_DH895xcc +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${60} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${dut1_if2_ip4}= | 200.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.2 +| ${dut2_if2_ip4}= | 192.168.20.1 +| ${tg_if2_ip4}= | 192.168.20.2 +| ${wg_if1_ip4}= | 1.0.0.1 +| ${wg_if2_ip4}= | 1.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${n_tunnels}= | ${1000} +| ${listen_port}= | ${51820} +| ${keepalive_time}= | ${256} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src${n_tunnels}ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs wireguard tunnel 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And VPP Enable Wireguard Async Mode on all VPP DUTs +| | And Initialize WireGuard in 3-node circular topology +| | And VPP WireGuard Create Tunnel Interfaces On DUTs +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] +| | ... | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2_mac}[0] +| | ... | ${DUT2_${int}1_mac}[0] | ${wg_if1_ip4} | ${wg_if2_ip4} +| | ... | ${n_tunnels} | ${listen_port} | ${keepalive_time} +| | ... | ${laddr_ip4} | ${raddr_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4udpwireguard1000tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr.robot new file mode 100644 index 0000000000..b3c4ecb830 --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/wireguard/wireguard.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 +| ... | IP4FWD | NIC_Intel-X710 | WIREGUARD | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4udpwireguard1000tnlsw-ip4base +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 WireGuard tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-UDP-WireGuard on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple WireGuard tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | and send to another DUT, where packets are decrypted and sent back \ +| ... | to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of WireGuard tunnels) 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. Incrementing of IP.src and IP.dst \ +| ... | are applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | wireguard_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${60} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${dut1_if2_ip4}= | 200.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.2 +| ${dut2_if2_ip4}= | 192.168.20.1 +| ${tg_if2_ip4}= | 192.168.20.2 +| ${wg_if1_ip4}= | 1.0.0.1 +| ${wg_if2_ip4}= | 1.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${n_tunnels}= | ${1000} +| ${listen_port}= | ${51820} +| ${keepalive_time}= | ${256} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src${n_tunnels}ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs wireguard tunnel 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize WireGuard in 3-node circular topology +| | And VPP WireGuard Create Tunnel Interfaces On DUTs +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] +| | ... | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2_mac}[0] +| | ... | ${DUT2_${int}1_mac}[0] | ${wg_if1_ip4} | ${wg_if2_ip4} +| | ... | ${n_tunnels} | ${listen_port} | ${keepalive_time} +| | ... | ${laddr_ip4} | ${raddr_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4udpwireguard1000tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr.robot new file mode 100644 index 0000000000..8db420d91b --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr.robot @@ -0,0 +1,170 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/wireguard/wireguard.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_100 +| ... | IP4FWD | NIC_Intel-X710 | WIREGUARD | ASYNC | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4udpwireguard100tnlhwasync-ip4base +| +| Suite Setup | Setup suite topology interfaces | performance | cryptohw +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 WireGuard tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-UDP-WireGuard on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple WireGuard tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | and send to another DUT, where packets are decrypted and sent back \ +| ... | to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of WireGuard tunnels) 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. Incrementing of IP.src and IP.dst \ +| ... | are applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | wireguard_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | HW_DH895xcc +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${60} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${dut1_if2_ip4}= | 200.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.2 +| ${dut2_if2_ip4}= | 192.168.20.1 +| ${tg_if2_ip4}= | 192.168.20.2 +| ${wg_if1_ip4}= | 1.0.0.1 +| ${wg_if2_ip4}= | 1.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${n_tunnels}= | ${100} +| ${listen_port}= | ${51820} +| ${keepalive_time}= | ${256} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src${n_tunnels}ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs wireguard tunnel 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And VPP Enable Wireguard Async Mode on all VPP DUTs +| | And Initialize WireGuard in 3-node circular topology +| | And VPP WireGuard Create Tunnel Interfaces On DUTs +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] +| | ... | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2_mac}[0] +| | ... | ${DUT2_${int}1_mac}[0] | ${wg_if1_ip4} | ${wg_if2_ip4} +| | ... | ${n_tunnels} | ${listen_port} | ${keepalive_time} +| | ... | ${laddr_ip4} | ${raddr_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4udpwireguard100tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard100tnlsw-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard100tnlsw-ip4base-ndrpdr.robot new file mode 100644 index 0000000000..f476168555 --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard100tnlsw-ip4base-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/wireguard/wireguard.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_100 +| ... | IP4FWD | NIC_Intel-X710 | WIREGUARD | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4udpwireguard100tnlsw-ip4base +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 WireGuard tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-UDP-WireGuard on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple WireGuard tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | and send to another DUT, where packets are decrypted and sent back \ +| ... | to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of WireGuard tunnels) 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. Incrementing of IP.src and IP.dst \ +| ... | are applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | wireguard_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${60} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${dut1_if2_ip4}= | 200.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.2 +| ${dut2_if2_ip4}= | 192.168.20.1 +| ${tg_if2_ip4}= | 192.168.20.2 +| ${wg_if1_ip4}= | 1.0.0.1 +| ${wg_if2_ip4}= | 1.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${n_tunnels}= | ${100} +| ${listen_port}= | ${51820} +| ${keepalive_time}= | ${256} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src${n_tunnels}ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs wireguard tunnel 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize WireGuard in 3-node circular topology +| | And VPP WireGuard Create Tunnel Interfaces On DUTs +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] +| | ... | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2_mac}[0] +| | ... | ${DUT2_${int}1_mac}[0] | ${wg_if1_ip4} | ${wg_if2_ip4} +| | ... | ${n_tunnels} | ${listen_port} | ${keepalive_time} +| | ... | ${laddr_ip4} | ${raddr_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4udpwireguard100tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4udpwireguard100tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4udpwireguard100tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4udpwireguard100tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udpwireguard100tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udpwireguard100tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udpwireguard100tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4udpwireguard100tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4udpwireguard100tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4udpwireguard100tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4udpwireguard100tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4udpwireguard100tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr.robot index 3ead61307b..0f3596b8a6 100644 --- a/tests/vpp/perf/crypto/10ge2p1x710-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 Intel 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: @@ -13,48 +13,55 @@ *** Settings *** | Resource | resources/libraries/robot/shared/default.robot -| Resource | resources/libraries/robot/crypto/ipsec.robot +| Resource | resources/libraries/robot/wireguard/wireguard.robot | | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 -| ... | IP4FWD | IPSEC | IPSECHW | IPSECINT | NIC_Intel-X710 | BASE -| ... | AES_128_CBC | HMAC_SHA_256 | HMAC | AES | DRV_VFIO_PCI +| ... | IP4FWD | NIC_Intel-X710 | WIREGUARD | ASYNC | DRV_VFIO_PCI | ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha +| ... | ethip4udpwireguard1tnlhwasync-ip4base | -| Suite Setup | Setup suite topology interfaces | performance | ipsechw +| Suite Setup | Setup suite topology interfaces | performance | cryptohw | Suite Teardown | Tear down suite | performance | Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | ipsec_sa +| Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 IPsec tunnel mode.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 on TG-DUTn, -| ... | Eth-IPv4-IPSec on DUT1-DUT2 -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with multiple -| ... | IPsec tunnels between them. DUTs get IPv4 traffic from TG, encrypt it -| ... | and send to another DUT, where packets are decrypted and sent back to TG -| ... | *[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, number of flows per flow-group equals to -| ... | number of IPSec tunnels) 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. Incrementing of IP.dst (IPv4 destination address) field -| ... | is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC4303 and RFC2544. +| Documentation | **RFC2544: Pkt throughput IPv4 WireGuard tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-UDP-WireGuard on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple WireGuard tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | and send to another DUT, where packets are decrypted and sent back \ +| ... | to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of WireGuard tunnels) 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. Incrementing of IP.src and IP.dst \ +| ... | are applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | crypto_native_plugin.so -| ... | crypto_ipsecmb_plugin.so | crypto_openssl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | wireguard_plugin.so | crypto_openssl_plugin.so | ${crypto_type}= | HW_DH895xcc | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -63,26 +70,29 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${osi_layer}= | L3 -| ${overhead}= | ${62} +| ${overhead}= | ${60} | ${tg_if1_ip4}= | 192.168.10.2 | ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.1 +| ${dut1_if2_ip4}= | 200.0.0.1 | ${dut2_if1_ip4}= | 200.0.0.2 | ${dut2_if2_ip4}= | 192.168.20.1 | ${tg_if2_ip4}= | 192.168.20.2 +| ${wg_if1_ip4}= | 1.0.0.1 +| ${wg_if2_ip4}= | 1.0.0.2 | ${raddr_ip4}= | 20.0.0.0 | ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} | ${n_tunnels}= | ${1} +| ${listen_port}= | ${51820} +| ${keepalive_time}= | ${256} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels} +| ${traffic_profile}= | trex-stl-ethip4-ip4src${n_tunnels}ip4dst${n_tunnels} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPSec tunneling AES_128_CBC / HMAC_SHA_256 config.\ +| | ... | - **[Cfg]** DUT runs wireguard tunnel config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,68 +104,67 @@ | | | | Set Test Variable | \${frame_size} | | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES CBC 128 -| | ${auth_alg}= | Integ Alg SHA 256 128 -| | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} | | And Pre-initialize layer driver | ${nic_driver} | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPSec in 3-node circular topology -| | And VPP IPsec Create Tunnel Interfaces -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2}[0] -| | ... | ${DUT2_${int}1}[0] | ${n_tunnels} | ${encr_alg} | ${auth_alg} -| | ... | ${laddr_ip4} | ${raddr_ip4} | ${addr_range} +| | And VPP Enable Wireguard Async Mode on all VPP DUTs +| | And Initialize WireGuard in 3-node circular topology +| | And VPP WireGuard Create Tunnel Interfaces On DUTs +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] +| | ... | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2_mac}[0] +| | ... | ${DUT2_${int}1_mac}[0] | ${wg_if1_ip4} | ${wg_if2_ip4} +| | ... | ${n_tunnels} | ${listen_port} | ${keepalive_time} +| | ... | ${laddr_ip4} | ${raddr_ip4} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** -| 64B-1c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 64B-1c-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr | | [Tags] | 64B | 1C | | frame_size=${64} | phy_cores=${1} -| 64B-2c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 64B-2c-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} -| 64B-4c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 64B-4c-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr | | [Tags] | 64B | 4C | | frame_size=${64} | phy_cores=${4} -| 1518B-1c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 1518B-1c-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} -| 1518B-2c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 1518B-2c-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} -| 1518B-4c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 1518B-4c-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr | | [Tags] | 1518B | 4C | | frame_size=${1518} | phy_cores=${4} -| 9000B-1c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 9000B-1c-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} -| 9000B-2c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 9000B-2c-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} -| 9000B-4c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| 9000B-4c-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr | | [Tags] | 9000B | 4C | | frame_size=${9000} | phy_cores=${4} -| IMIX-1c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| IMIX-1c-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} -| IMIX-2c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| IMIX-2c-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} -| IMIX-4c-ethip4ipsec1tnlhw-ip4base-int-aes128cbc-hmac256sha-ndrpdr +| IMIX-4c-ethip4udpwireguard1tnlhwasync-ip4base-ndrpdr | | [Tags] | IMIX | 4C | | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard1tnlsw-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard1tnlsw-ip4base-ndrpdr.robot new file mode 100644 index 0000000000..54156cda56 --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard1tnlsw-ip4base-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/wireguard/wireguard.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1 +| ... | IP4FWD | NIC_Intel-X710 | WIREGUARD | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4udpwireguard1tnlsw-ip4base +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 WireGuard tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-UDP-WireGuard on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | single WireGuard tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | and send to another DUT, where packets are decrypted and sent back \ +| ... | to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of WireGuard tunnels) 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. Incrementing of IP.dst (IPv4 destination address) \ +| ... | is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | wireguard_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${60} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${dut1_if2_ip4}= | 200.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.2 +| ${dut2_if2_ip4}= | 192.168.20.1 +| ${tg_if2_ip4}= | 192.168.20.2 +| ${wg_if1_ip4}= | 1.0.0.1 +| ${wg_if2_ip4}= | 1.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${n_tunnels}= | ${1} +| ${listen_port}= | ${51820} +| ${keepalive_time}= | ${256} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src${n_tunnels}ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs wireguard TUNNEL. \ +| | ... | 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize WireGuard in 3-node circular topology +| | And VPP WireGuard Create Tunnel Interfaces On DUTs +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] +| | ... | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2_mac}[0] +| | ... | ${DUT2_${int}1_mac}[0] | ${wg_if1_ip4} | ${wg_if2_ip4} +| | ... | ${n_tunnels} | ${listen_port} | ${keepalive_time} +| | ... | ${laddr_ip4} | ${raddr_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4udpwireguard1tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4udpwireguard1tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4udpwireguard1tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4udpwireguard1tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udpwireguard1tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udpwireguard1tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udpwireguard1tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4udpwireguard1tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4udpwireguard1tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4udpwireguard1tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4udpwireguard1tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4udpwireguard1tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr.robot new file mode 100644 index 0000000000..744f3e9dcc --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr.robot @@ -0,0 +1,170 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/wireguard/wireguard.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_2 +| ... | IP4FWD | NIC_Intel-X710 | WIREGUARD | ASYNC | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4udpwireguard2tnlhwasync-ip4base +| +| Suite Setup | Setup suite topology interfaces | performance | cryptohw +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 WireGuard tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-UDP-WireGuard on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple WireGuard tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | and send to another DUT, where packets are decrypted and sent back \ +| ... | to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of WireGuard tunnels) 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. Incrementing of IP.src and IP.dst \ +| ... | are applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | wireguard_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | HW_DH895xcc +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${60} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${dut1_if2_ip4}= | 200.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.2 +| ${dut2_if2_ip4}= | 192.168.20.1 +| ${tg_if2_ip4}= | 192.168.20.2 +| ${wg_if1_ip4}= | 1.0.0.1 +| ${wg_if2_ip4}= | 1.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${n_tunnels}= | ${2} +| ${listen_port}= | ${51820} +| ${keepalive_time}= | ${256} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src${n_tunnels}ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs wireguard tunnel 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And VPP Enable Wireguard Async Mode on all VPP DUTs +| | And Initialize WireGuard in 3-node circular topology +| | And VPP WireGuard Create Tunnel Interfaces On DUTs +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] +| | ... | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2_mac}[0] +| | ... | ${DUT2_${int}1_mac}[0] | ${wg_if1_ip4} | ${wg_if2_ip4} +| | ... | ${n_tunnels} | ${listen_port} | ${keepalive_time} +| | ... | ${laddr_ip4} | ${raddr_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4udpwireguard2tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard2tnlsw-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard2tnlsw-ip4base-ndrpdr.robot new file mode 100644 index 0000000000..de569c7f2a --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard2tnlsw-ip4base-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/wireguard/wireguard.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_2 +| ... | IP4FWD | NIC_Intel-X710 | WIREGUARD | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4udpwireguard2tnlsw-ip4base +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 WireGuard tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-UDP-WireGuard on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple WireGuard tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | and send to another DUT, where packets are decrypted and sent back \ +| ... | to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of WireGuard tunnels) 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. Incrementing of IP.src and IP.dst \ +| ... | are applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | wireguard_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${60} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${dut1_if2_ip4}= | 200.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.2 +| ${dut2_if2_ip4}= | 192.168.20.1 +| ${tg_if2_ip4}= | 192.168.20.2 +| ${wg_if1_ip4}= | 1.0.0.1 +| ${wg_if2_ip4}= | 1.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${n_tunnels}= | ${2} +| ${listen_port}= | ${51820} +| ${keepalive_time}= | ${256} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src${n_tunnels}ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs wireguard tunnel 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize WireGuard in 3-node circular topology +| | And VPP WireGuard Create Tunnel Interfaces On DUTs +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] +| | ... | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2_mac}[0] +| | ... | ${DUT2_${int}1_mac}[0] | ${wg_if1_ip4} | ${wg_if2_ip4} +| | ... | ${n_tunnels} | ${listen_port} | ${keepalive_time} +| | ... | ${laddr_ip4} | ${raddr_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4udpwireguard2tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4udpwireguard2tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4udpwireguard2tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4udpwireguard2tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udpwireguard2tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udpwireguard2tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udpwireguard2tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4udpwireguard2tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4udpwireguard2tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4udpwireguard2tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4udpwireguard2tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4udpwireguard2tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr.robot new file mode 100644 index 0000000000..8a31bcd8c7 --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr.robot @@ -0,0 +1,170 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/wireguard/wireguard.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 +| ... | IP4FWD | NIC_Intel-X710 | WIREGUARD | ASYNC | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4udpwireguard4tnlhwasync-ip4base +| +| Suite Setup | Setup suite topology interfaces | performance | cryptohw +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 WireGuard tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-UDP-WireGuard on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple WireGuard tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | and send to another DUT, where packets are decrypted and sent back \ +| ... | to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of WireGuard tunnels) 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. Incrementing of IP.src and IP.dst \ +| ... | are applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | wireguard_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | HW_DH895xcc +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${60} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${dut1_if2_ip4}= | 200.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.2 +| ${dut2_if2_ip4}= | 192.168.20.1 +| ${tg_if2_ip4}= | 192.168.20.2 +| ${wg_if1_ip4}= | 1.0.0.1 +| ${wg_if2_ip4}= | 1.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${n_tunnels}= | ${4} +| ${listen_port}= | ${51820} +| ${keepalive_time}= | ${256} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src${n_tunnels}ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs wireguard tunnel 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And VPP Enable Wireguard Async Mode on all VPP DUTs +| | And Initialize WireGuard in 3-node circular topology +| | And VPP WireGuard Create Tunnel Interfaces On DUTs +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] +| | ... | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2_mac}[0] +| | ... | ${DUT2_${int}1_mac}[0] | ${wg_if1_ip4} | ${wg_if2_ip4} +| | ... | ${n_tunnels} | ${listen_port} | ${keepalive_time} +| | ... | ${laddr_ip4} | ${raddr_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4udpwireguard4tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard4tnlsw-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard4tnlsw-ip4base-ndrpdr.robot new file mode 100644 index 0000000000..3f29a3c12f --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard4tnlsw-ip4base-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/wireguard/wireguard.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 +| ... | IP4FWD | NIC_Intel-X710 | WIREGUARD | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4udpwireguard4tnlsw-ip4base +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 WireGuard tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-UDP-WireGuard on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple WireGuard tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | and send to another DUT, where packets are decrypted and sent back \ +| ... | to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of WireGuard tunnels) 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. Incrementing of IP.src and IP.dst \ +| ... | are applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | wireguard_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${60} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${dut1_if2_ip4}= | 200.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.2 +| ${dut2_if2_ip4}= | 192.168.20.1 +| ${tg_if2_ip4}= | 192.168.20.2 +| ${wg_if1_ip4}= | 1.0.0.1 +| ${wg_if2_ip4}= | 1.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${n_tunnels}= | ${4} +| ${listen_port}= | ${51820} +| ${keepalive_time}= | ${256} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src${n_tunnels}ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs wireguard tunnel 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize WireGuard in 3-node circular topology +| | And VPP WireGuard Create Tunnel Interfaces On DUTs +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] +| | ... | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2_mac}[0] +| | ... | ${DUT2_${int}1_mac}[0] | ${wg_if1_ip4} | ${wg_if2_ip4} +| | ... | ${n_tunnels} | ${listen_port} | ${keepalive_time} +| | ... | ${laddr_ip4} | ${raddr_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4udpwireguard4tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4udpwireguard4tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4udpwireguard4tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4udpwireguard4tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udpwireguard4tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udpwireguard4tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udpwireguard4tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4udpwireguard4tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4udpwireguard4tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4udpwireguard4tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4udpwireguard4tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4udpwireguard4tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr.robot new file mode 100644 index 0000000000..5c696e2c06 --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr.robot @@ -0,0 +1,170 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/wireguard/wireguard.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_8 +| ... | IP4FWD | NIC_Intel-X710 | WIREGUARD | ASYNC | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4udpwireguard8tnlhwasync-ip4base +| +| Suite Setup | Setup suite topology interfaces | performance | cryptohw +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 WireGuard tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-UDP-WireGuard on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple WireGuard tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | and send to another DUT, where packets are decrypted and sent back \ +| ... | to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of WireGuard tunnels) 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. Incrementing of IP.src and IP.dst \ +| ... | are applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | wireguard_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | HW_DH895xcc +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${60} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${dut1_if2_ip4}= | 200.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.2 +| ${dut2_if2_ip4}= | 192.168.20.1 +| ${tg_if2_ip4}= | 192.168.20.2 +| ${wg_if1_ip4}= | 1.0.0.1 +| ${wg_if2_ip4}= | 1.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${n_tunnels}= | ${8} +| ${listen_port}= | ${51820} +| ${keepalive_time}= | ${256} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src${n_tunnels}ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs wireguard tunnel 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And VPP Enable Wireguard Async Mode on all VPP DUTs +| | And Initialize WireGuard in 3-node circular topology +| | And VPP WireGuard Create Tunnel Interfaces On DUTs +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] +| | ... | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2_mac}[0] +| | ... | ${DUT2_${int}1_mac}[0] | ${wg_if1_ip4} | ${wg_if2_ip4} +| | ... | ${n_tunnels} | ${listen_port} | ${keepalive_time} +| | ... | ${laddr_ip4} | ${raddr_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4udpwireguard8tnlhwasync-ip4base-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard8tnlsw-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard8tnlsw-ip4base-ndrpdr.robot new file mode 100644 index 0000000000..591823d266 --- /dev/null +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4udpwireguard8tnlsw-ip4base-ndrpdr.robot @@ -0,0 +1,169 @@ +# Copyright (c) 2023 Intel 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/shared/default.robot +| Resource | resources/libraries/robot/wireguard/wireguard.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_8 +| ... | IP4FWD | NIC_Intel-X710 | WIREGUARD | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip4udpwireguard8tnlsw-ip4base +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv4 WireGuard tunnel mode.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 on TG-DUTn, \ +| ... | Eth-IPv4-UDP-WireGuard on DUT1-DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with \ +| ... | multiple WireGuard tunnels between them. DUTs get IPv4 traffic from TG, \ +| ... | and send to another DUT, where packets are decrypted and sent back \ +| ... | to TG. +| ... | +| ... | - **[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, number of flows per flow-group equals to \ +| ... | number of WireGuard tunnels) 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. Incrementing of IP.src and IP.dst \ +| ... | are applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC4303 and RFC2544. + + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so +| ... | wireguard_plugin.so | crypto_openssl_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${60} +| ${tg_if1_ip4}= | 192.168.10.2 +| ${dut1_if1_ip4}= | 192.168.10.1 +| ${dut1_if2_ip4}= | 200.0.0.1 +| ${dut2_if1_ip4}= | 200.0.0.2 +| ${dut2_if2_ip4}= | 192.168.20.1 +| ${tg_if2_ip4}= | 192.168.20.2 +| ${wg_if1_ip4}= | 1.0.0.1 +| ${wg_if2_ip4}= | 1.0.0.2 +| ${raddr_ip4}= | 20.0.0.0 +| ${laddr_ip4}= | 10.0.0.0 +| ${n_tunnels}= | ${8} +| ${listen_port}= | ${51820} +| ${keepalive_time}= | ${256} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip4-ip4src${n_tunnels}ip4dst${n_tunnels} + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs wireguard tunnel 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Initialize WireGuard in 3-node circular topology +| | And VPP WireGuard Create Tunnel Interfaces On DUTs +| | ... | ${nodes} | ${DUT1_${int}2}[0] | ${DUT2_${int}1}[0] +| | ... | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${DUT1_${int}2_mac}[0] +| | ... | ${DUT2_${int}1_mac}[0] | ${wg_if1_ip4} | ${wg_if2_ip4} +| | ... | ${n_tunnels} | ${listen_port} | ${keepalive_time} +| | ... | ${laddr_ip4} | ${raddr_ip4} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 64B-1c-ethip4udpwireguard8tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 1C +| | frame_size=${64} | phy_cores=${1} + +| 64B-2c-ethip4udpwireguard8tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 2C +| | frame_size=${64} | phy_cores=${2} + +| 64B-4c-ethip4udpwireguard8tnlsw-ip4base-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + +| 1518B-1c-ethip4udpwireguard8tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip4udpwireguard8tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip4udpwireguard8tnlsw-ip4base-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip4udpwireguard8tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip4udpwireguard8tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip4udpwireguard8tnlsw-ip4base-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip4udpwireguard8tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip4udpwireguard8tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip4udpwireguard8tnlsw-ip4base-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-ndrpdr.robot index 4a0bc51d00..48f3d06f79 100644 --- a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -22,34 +22,41 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with VXLANoIPv4 test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4 on\ +| Documentation | **RFC2544: Pkt throughput L2BD with VXLANoIPv4 test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4 \ +| ... | on \ | ... | TG-DUTn. Eth-IPv4-VXLAN-Eth-IPv4 is applied on link between DUTs. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 bridge\ -| ... | domain. VXLAN tunnels are configured between L2BDs on DUT1 and DUT2.\ -| ... | DUT1 and DUT2 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\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 +| ... | bridge-\ +| ... | domain. VXLAN tunnels are configured between L2BDs on DUT1 and DUT2. \ +| ... | DUT1 and DUT2 are 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, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,14 +67,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${50} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD forwarding config with VXLAN and uses\ +| | ... | - **[Cfg]** Each DUT runs L2BD forwarding config with VXLAN and uses \ | | ... | ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4vxlan-l2xcbase-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4vxlan-l2xcbase-ndrpdr.robot index 9537741850..fcb8d3758b 100644 --- a/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4vxlan-l2xcbase-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/10ge2p1x710-ethip4vxlan-l2xcbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -22,34 +22,40 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC with VXLANoIPv4 test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross-connect on TG-DUTn. -| ... | Eth-IPv4-VXLAN-Eth-IPv4 is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. VXLAN tunnels are configured between L2XCs on DUT1 and DUT2. -| ... | DUT1 and DUT2 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 +| Documentation | **RFC2544: Pkt throughput L2XC with VXLANoIPv4 test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross-connect on \ +| ... | TG-DUTn. Eth-IPv4-VXLAN-Eth-IPv4 is applied on link between \ +| ... | DUT1 and DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | cross- connect. VXLAN tunnels are configured between L2XCs on DUT1 \ +| ... | and DUT2. DUT1 and DUT2 are 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | 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, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,14 +66,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${50} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC forwarding config. +| | ... | - **[Cfg]** DUT runs L2XC forwarding config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-1024tun-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-1024tun-ip4base-ndrpdr.robot index 245bc7ebf7..3894c09ede 100644 --- a/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-1024tun-ip4base-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-1024tun-ip4base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,32 +28,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput GENEVE tunnel L3 mode performance -| ... | test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput GENEVE tunnel L3 mode performance \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 between TG-if1 and DUT1-if1 and\ -| ... | Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 for IPv4\ -| ... | routing over GENEVE tunnels. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing over\ -| ... | ${n_tunnels} GENEVE tunnels and ${${4} * ${n_tunnels}} static IPv4 /24\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 between TG-if1 and \ +| ... | DUT1-if1 and Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 \ +| ... | for IPv4 routing over GENEVE tunnels. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | over ${n_tunnels} GENEVE tunnels and ${${4} * ${n_tunnels}} static \ +| ... | IPv4 /24 \ | ... | route entries. 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 DUT1. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1 flow 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, RFC791, RFC768, -| ... | RFC8926. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC791, \ +| ... | RFC768 and RFC8926. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | geneve_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | geneve_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,15 +81,15 @@ | ... | local=1.1.1.2 | remote=1.1.1.1 | vni=${1} | ... | src_ip=10.128.1.0 | dst_ip=10.0.1.0 | ip_mask=${24} | if_ip=11.0.1.2 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-geneve-${n_tunnels}t +| ${traffic_profile}= | trex-stl-ethip4-geneve-${n_tunnels}t *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs GENEVE ${gen_mode} mode configuration. +| | ... | - **[Cfg]** DUT runs GENEVE ${gen_mode} mode configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,7 +100,6 @@ | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | | | Set Test Variable | \${frame_size} -| | Set Test Variable | \${rxq_ratio} | ${1} | | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} diff --git a/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-16tun-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-16tun-ip4base-ndrpdr.robot index 42444211cb..71a2b10a94 100644 --- a/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-16tun-ip4base-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-16tun-ip4base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,32 +28,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput GENEVE tunnel L3 mode performance -| ... | test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput GENEVE tunnel L3 mode performance \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 between TG-if1 and DUT1-if1 and\ -| ... | Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 for IPv4\ -| ... | routing over GENEVE tunnels. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing over\ -| ... | ${n_tunnels} GENEVE tunnels and ${${4} * ${n_tunnels}} static IPv4 /24\ -| ... | route entries. 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 DUT1. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 between TG-if1 and \ +| ... | DUT1-if1 and Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 \ +| ... | for IPv4 routing over GENEVE tunnels. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | over ${n_tunnels} GENEVE tunnels and ${${4} * ${n_tunnels}} static \ +| ... | IPv4 /24 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1 flow 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, RFC791, RFC768, -| ... | RFC8926. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC791, \ +| ... | RFC768 and RFC8926. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | geneve_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | geneve_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,15 +80,15 @@ | ... | local=1.1.1.2 | remote=1.1.1.1 | vni=${1} | ... | src_ip=10.128.1.0 | dst_ip=10.0.1.0 | ip_mask=${24} | if_ip=11.0.1.2 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-geneve-${n_tunnels}t +| ${traffic_profile}= | trex-stl-ethip4-geneve-${n_tunnels}t *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs GENEVE ${gen_mode} mode configuration. +| | ... | - **[Cfg]** DUT runs GENEVE ${gen_mode} mode configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,7 +99,6 @@ | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | | | Set Test Variable | \${frame_size} -| | Set Test Variable | \${rxq_ratio} | ${1} | | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} diff --git a/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-1tun-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-1tun-ip4base-ndrpdr.robot index b052db0076..d6faf04f95 100644 --- a/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-1tun-ip4base-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-1tun-ip4base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,32 +28,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput GENEVE tunnel L3 mode performance -| ... | test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput GENEVE tunnel L3 mode performance \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 between TG-if1 and DUT1-if1 and\ -| ... | Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 for IPv4\ -| ... | routing over GENEVE tunnel. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing over\ -| ... | GENEVE tunnel and 4 static IPv4 /24 route entries.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 between TG-if1 and \ +| ... | DUT1-if1 and Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 \ +| ... | for IPv4 routing over GENEVE tunnel. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | over GENEVE tunnel and 4 static IPv4 /24 route entries. \ | ... | 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 DUT1. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1 flow 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, RFC791, RFC768, -| ... | RFC8926. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC791, \ +| ... | RFC768 and RFC8926. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | geneve_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | geneve_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,15 +80,15 @@ | ... | local=1.1.1.2 | remote=1.1.1.1 | vni=${1} | ... | src_ip=10.128.1.0 | dst_ip=10.0.1.0 | ip_mask=${24} | if_ip=11.0.1.2 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-geneve-${n_tunnels}t +| ${traffic_profile}= | trex-stl-ethip4-geneve-${n_tunnels}t *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs GENEVE ${gen_mode} mode configuration. +| | ... | - **[Cfg]** DUT runs GENEVE ${gen_mode} mode configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,7 +99,6 @@ | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | | | Set Test Variable | \${frame_size} -| | Set Test Variable | \${rxq_ratio} | ${1} | | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} diff --git a/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-256tun-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-256tun-ip4base-ndrpdr.robot index 684b893621..d7df74b18b 100644 --- a/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-256tun-ip4base-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-256tun-ip4base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,32 +28,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput GENEVE tunnel L3 mode performance -| ... | test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput GENEVE tunnel L3 mode performance \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 between TG-if1 and DUT1-if1 and\ -| ... | Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 for IPv4\ -| ... | routing over GENEVE tunnels. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing over\ -| ... | ${n_tunnels} GENEVE tunnels and ${${4} * ${n_tunnels}} static IPv4 /24\ -| ... | route entries. 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 DUT1. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 between TG-if1 and \ +| ... | DUT1-if1 and Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 \ +| ... | for IPv4 routing over GENEVE tunnels. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | over ${n_tunnels} GENEVE tunnels and ${${4} * ${n_tunnels}} static \ +| ... | IPv4 /24 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1 flow 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, RFC791, RFC768, -| ... | RFC8926. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC791, \ +| ... | RFC768 and RFC8926. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | geneve_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | geneve_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,15 +80,15 @@ | ... | local=1.1.1.2 | remote=1.1.1.1 | vni=${1} | ... | src_ip=10.128.1.0 | dst_ip=10.0.1.0 | ip_mask=${24} | if_ip=11.0.1.2 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-geneve-${n_tunnels}t +| ${traffic_profile}= | trex-stl-ethip4-geneve-${n_tunnels}t *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs GENEVE ${gen_mode} mode configuration. +| | ... | - **[Cfg]** DUT runs GENEVE ${gen_mode} mode configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,7 +99,6 @@ | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | | | Set Test Variable | \${frame_size} -| | Set Test Variable | \${rxq_ratio} | ${1} | | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} diff --git a/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-4tun-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-4tun-ip4base-ndrpdr.robot index 78da203b42..849c5e47da 100644 --- a/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-4tun-ip4base-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-4tun-ip4base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,32 +28,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput GENEVE tunnel L3 mode performance -| ... | test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput GENEVE tunnel L3 mode performance \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 between TG-if1 and DUT1-if1 and\ -| ... | Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 for IPv4\ -| ... | routing over GENEVE tunnels. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing over\ -| ... | ${n_tunnels} GENEVE tunnels and ${${4} * ${n_tunnels}} static IPv4 /24\ -| ... | route entries. 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 DUT1. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 between TG-if1 and \ +| ... | DUT1-if1 and Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 \ +| ... | for IPv4 routing over GENEVE tunnels. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | over ${n_tunnels} GENEVE tunnels and ${${4} * ${n_tunnels}} static \ +| ... | IPv4 /24 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1 flow 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, RFC791, RFC768, -| ... | RFC8926. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC791, \ +| ... | RFC768 and RFC8926. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | geneve_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | geneve_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,15 +80,15 @@ | ... | local=1.1.1.2 | remote=1.1.1.1 | vni=${1} | ... | src_ip=10.128.1.0 | dst_ip=10.0.1.0 | ip_mask=${24} | if_ip=11.0.1.2 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-geneve-${n_tunnels}t +| ${traffic_profile}= | trex-stl-ethip4-geneve-${n_tunnels}t *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs GENEVE ${gen_mode} mode configuration. +| | ... | - **[Cfg]** DUT runs GENEVE ${gen_mode} mode configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,7 +99,6 @@ | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | | | Set Test Variable | \${frame_size} -| | Set Test Variable | \${rxq_ratio} | ${1} | | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} diff --git a/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-64tun-ip4base-ndrpdr.robot b/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-64tun-ip4base-ndrpdr.robot index 923d26c0fb..9bee1f85c0 100644 --- a/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-64tun-ip4base-ndrpdr.robot +++ b/tests/vpp/perf/ip4_tunnels/2n1l-10ge2p1x710-ethip4--ethip4udpgeneve-64tun-ip4base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,32 +28,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput GENEVE tunnel L3 mode performance -| ... | test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput GENEVE tunnel L3 mode performance \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 between TG-if1 and DUT1-if1 and\ -| ... | Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 for IPv4\ -| ... | routing over GENEVE tunnels. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 routing over\ -| ... | ${n_tunnels} GENEVE tunnels and ${${4} * ${n_tunnels}} static IPv4 /24\ -| ... | route entries. 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 DUT1. TG traffic profile -| ... | contains two L3 flow-groups (flow-group per direction, 1 flow per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 between TG-if1 and \ +| ... | DUT1-if1 and Eth-IPv4-UDP-GENEVE-Eth-IPv4 between DUT1-if2 and TG-if2 \ +| ... | for IPv4 routing over GENEVE tunnels. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4 routing \ +| ... | over ${n_tunnels} GENEVE tunnels and ${${4} * ${n_tunnels}} static \ +| ... | IPv4 /24 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1 flow 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, RFC791, RFC768, -| ... | RFC8926. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC791, \ +| ... | RFC768 and RFC8926. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | geneve_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | geneve_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,15 +80,15 @@ | ... | local=1.1.1.2 | remote=1.1.1.1 | vni=${1} | ... | src_ip=10.128.1.0 | dst_ip=10.0.1.0 | ip_mask=${24} | if_ip=11.0.1.2 # Traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-geneve-${n_tunnels}t +| ${traffic_profile}= | trex-stl-ethip4-geneve-${n_tunnels}t *** Keywords *** | Local Template | | | | [Documentation] -| | ... | [Cfg] DUT runs GENEVE ${gen_mode} mode configuration. +| | ... | - **[Cfg]** DUT runs GENEVE ${gen_mode} mode configuration. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -94,7 +99,6 @@ | | [Arguments] | ${frame_size} | ${phy_cores} | ${rxq}=${None} | | | | Set Test Variable | \${frame_size} -| | Set Test Variable | \${rxq_ratio} | ${1} | | | | Given Set Max Rate And Jumbo | | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} diff --git a/tests/vpp/perf/ip4_tunnels/regenerate_testcases.py b/tests/vpp/perf/ip4_tunnels/regenerate_testcases.py index ec754aa261..e22f6de5c3 100755 --- a/tests/vpp/perf/ip4_tunnels/regenerate_testcases.py +++ b/tests/vpp/perf/ip4_tunnels/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/ip6/10ge2p1x710-dot1q-ip6base-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-dot1q-ip6base-ndrpdr.robot index c2c734fda9..25ef8d21d4 100644 --- a/tests/vpp/perf/ip6/10ge2p1x710-dot1q-ip6base-ndrpdr.robot +++ b/tests/vpp/perf/ip6/10ge2p1x710-dot1q-ip6base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -21,36 +21,41 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing with IEEE 802.1Q test -| ... | cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. IEEE 802.1Q\ -| ... | tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and two static IPv6 /64 route entries. DUT1 and DUT2 are 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, 253 flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv6 header with IP\ -| ... | protocol=61 and static payload. MAC addresses are matching MAC\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing with IEEE 802.1Q \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. \ +| ... | IEEE 802.1Q tagging is applied on link between DUT1 and DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and two static IPv6 /64 route entries. \ +| ... | DUT1 and DUT2 are 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, 253 flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv6 header with IP \ +| ... | protocol=61 and static payload. MAC addresses are matching MAC \ | ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -66,14 +71,14 @@ | ${tg_if1_net}= | 2001:1::0 | ${tg_if2_net}= | 2001:2::0 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs IPv6 routing with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs IPv6 routing with VLAN and 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). diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-adlalwlistbase-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-adlalwlistbase-ndrpdr.robot index b5bd9f2beb..988d8a0b7a 100644 --- a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-adlalwlistbase-ndrpdr.robot +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-adlalwlistbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -21,35 +21,40 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 allowlist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6 -| ... | routing, two static IPv6 /64 routes and IPv6 ADL security allowlist -| ... | ingress /64 filter entries applied on links TG - DUT1 and DUT2 - TG. -| ... | DUT1 and DUT2 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, 253 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv6 header and static -| ... | payload. MAC addresses are matching MAC addresses of the TG node +| Documentation | **RFC2544: Pkt throughput IPv6 allowlist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing, two static IPv6 /64 routes and IPv6 ADL security allowlist \ +| ... | ingress /64 filter entries applied on links TG - DUT1 and DUT2 - TG. \ +| ... | DUT1 and DUT2 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, 253 flows per flow-group) with all packets \ +| ... | containing Ethernet header, IPv6 header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | adl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | adl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,14 +65,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing and allowlist filters config with +| | ... | - **[Cfg]** DUT runs IPv6 routing and allowlist filters config with \ | | ... | ${phy_cores} phy core(s). -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-iacldstbase-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-iacldstbase-ndrpdr.robot index 86aa3cbc8c..6a1d3af577 100644 --- a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-iacldstbase-ndrpdr.robot +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-iacldstbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -21,34 +21,39 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | classify | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 iAcl whitelist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6 -| ... | routing, two static IPv6 /64 routes and IPv6 iAcl security whitelist -| ... | ingress /64 filter entries applied on links TG - DUT1 and DUT2 - TG. -| ... | DUT1 and DUT2 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, 253 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv6 header and generated payload. MAC +| Documentation | **RFC2544: Pkt throughput IPv6 iAcl whitelist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing, two static IPv6 /64 routes and IPv6 iAcl security whitelist \ +| ... | ingress /64 filter entries applied on links TG - DUT1 and DUT2 - TG. \ +| ... | DUT1 and DUT2 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, 253 flows per flow-group) with all packets \ +| ... | containing Ethernet header, IPv6 header and generated payload. MAC \ | ... | addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,14 +64,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with +| | ... | - **[Cfg]** DUT runs IPv6 routing and whitelist filters config with \ | | ... | ${phy_cores} phy core(s). -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-ndrpdr.robot index 0538bb4f3e..49a7ae9462 100644 --- a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-ndrpdr.robot +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -21,33 +21,38 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and two static IPv6 /64 route entries. DUT1 and DUT2\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and two static IPv6 /64 route entries. DUT1 and DUT2 \ | ... | 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv6 header and -| ... | static payload. MAC addresses are matching MAC addresses of the TG node -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[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, 253 flows per flow-group) with all packets \ +| ... | containing Ethernet header, IPv6 header and static payload. MAC \ +| ... | addresses are matching MAC addresses of the TG node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -58,14 +63,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config. +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale1m-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale1m-ndrpdr.robot new file mode 100644 index 0000000000..bbd18f049a --- /dev/null +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale1m-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP6FWD | SCALE | FIB_1M | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip6-ip6scale1m +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and 2x500k static IPv6 /128 route entries. DUT1 and DUT2 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, 500k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination \ +| ... | address) field is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${500000} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv6 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 78B-1c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 78B | 1C +| | frame_size=${78} | phy_cores=${1} + +| 78B-2c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 78B | 2C +| | frame_size=${78} | phy_cores=${2} + +| 78B-4c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 78B | 4C +| | frame_size=${78} | phy_cores=${4} + +| 1518B-1c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale200k-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale200k-ndrpdr.robot index 2b0f278a3d..28190f4b8e 100644 --- a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale200k-ndrpdr.robot +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale200k-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -21,34 +21,39 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and 2x100k static IPv6 /64 route entries. DUT1 and DUT2 tested\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and 2x100k static IPv6 /128 route entries. DUT1 and DUT2 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, 100k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | with IP and static payload. MAC addresses are matching MAC addresses\ -| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination\ +| ... | +| ... | - **[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, 100k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination \ | ... | address) field is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,14 +65,14 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${100000} # Traffic profile: -| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config. +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv6 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale200k-rnd-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale200k-rnd-ndrpdr.robot index 58bb8fa77f..304a57976d 100644 --- a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale200k-rnd-ndrpdr.robot +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale200k-rnd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -21,34 +21,39 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and 2x100k static IPv6 /64 route entries. DUT1 and DUT2 tested\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and 2x100k static IPv6 /128 route entries. DUT1 and DUT2 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, 100k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | with IP and static payload. MAC addresses are matching MAC addresses\ -| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination\ +| ... | +| ... | - **[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, 100k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination \ | ... | address) field is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,14 +65,14 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${100000} # Traffic profile: -| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-rnd +| ${traffic_profile}= | trex-stl-ethip6-ip6dst-rnd${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config. +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv6 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale20k-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale20k-ndrpdr.robot index f4347cd955..dcc361d6a0 100644 --- a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale20k-ndrpdr.robot +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale20k-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -21,34 +21,39 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and 2x10k static IPv6 /64 route entries. DUT1 and DUT2 tested\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and 2x10k static IPv6 /128 route entries. DUT1 and DUT2 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, 10k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | with IP and static payload. MAC addresses are matching MAC addresses\ -| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination\ +| ... | +| ... | - **[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, 10k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination \ | ... | address) field is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,14 +65,14 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${10000} # Traffic profile: -| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config. +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv6 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale20k-rnd-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale20k-rnd-ndrpdr.robot index 343fab263e..9e3cf7ce01 100644 --- a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale20k-rnd-ndrpdr.robot +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale20k-rnd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -21,34 +21,39 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and 2x10k static IPv6 /64 route entries. DUT1 and DUT2 tested\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and 2x10k static IPv6 /128 route entries. DUT1 and DUT2 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, 10k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | with IP and static payload. MAC addresses are matching MAC addresses\ -| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination\ +| ... | +| ... | - **[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, 10k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination \ | ... | address) field is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,14 +65,14 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${10000} # Traffic profile: -| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-rnd +| ${traffic_profile}= | trex-stl-ethip6-ip6dst-rnd${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config. +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv6 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale2m-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale2m-ndrpdr.robot index 21ea1c3439..a063c4c132 100644 --- a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale2m-ndrpdr.robot +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale2m-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -21,34 +21,39 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and 2x1M static IPv6 /64 route entries. DUT1 and DUT2 tested\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and 2x1M static IPv6 /128 route entries. DUT1 and DUT2 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, 1M flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | with IP and static payload. MAC addresses are matching MAC addresses\ -| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination\ +| ... | +| ... | - **[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, 1M flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination \ | ... | address) field is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,14 +65,14 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${1000000} # Traffic profile: -| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv6 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale2m-rnd-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale2m-rnd-ndrpdr.robot index f6e2e32191..a0c8c63488 100644 --- a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale2m-rnd-ndrpdr.robot +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale2m-rnd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -21,34 +21,39 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and 2x1M static IPv6 /64 route entries. DUT1 and DUT2 tested\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and 2x1M static IPv6 /128 route entries. DUT1 and DUT2 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, 1M flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | with IP and static payload. MAC addresses are matching MAC addresses\ -| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination\ +| ... | +| ... | - **[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, 1M flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination \ | ... | address) field is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,14 +65,14 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${1000000} # Traffic profile: -| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-rnd +| ${traffic_profile}= | trex-stl-ethip6-ip6dst-rnd${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -85,8 +90,8 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv6 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale600k-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale600k-ndrpdr.robot new file mode 100644 index 0000000000..82d345dde1 --- /dev/null +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale600k-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP6FWD | SCALE | FIB_600K | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip6-ip6scale600k +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and 6x100k static IPv6 /128 route entries. DUT1 and DUT2 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, 100k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination \ +| ... | address) field is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${100000} +| ${rxq_ratio}= | ${3} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv6 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 78B-1c-ethip6-ip6scale600k-ndrpdr +| | [Tags] | 78B | 1C +| | frame_size=${78} | phy_cores=${1} + +| 78B-2c-ethip6-ip6scale600k-ndrpdr +| | [Tags] | 78B | 2C +| | frame_size=${78} | phy_cores=${2} + +| 78B-4c-ethip6-ip6scale600k-ndrpdr +| | [Tags] | 78B | 4C +| | frame_size=${78} | phy_cores=${4} + +| 1518B-1c-ethip6-ip6scale600k-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip6-ip6scale600k-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip6-ip6scale600k-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip6-ip6scale600k-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip6-ip6scale600k-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip6-ip6scale600k-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip6-ip6scale600k-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip6-ip6scale600k-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip6-ip6scale600k-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale600k-rnd-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale600k-rnd-ndrpdr.robot new file mode 100644 index 0000000000..1fc8ecb81a --- /dev/null +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale600k-rnd-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP6FWD | IP6_RND | SCALE | FIB_600K +| ... | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip6-ip6scale600k-rnd +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and 6x10k static IPv6 /128 route entries. DUT1 and DUT2 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, 10k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination \ +| ... | address) field is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${100000} +| ${rxq_ratio}= | ${3} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip6-ip6dst-rnd${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv6 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 78B-1c-ethip6-ip6scale600k-rnd-ndrpdr +| | [Tags] | 78B | 1C +| | frame_size=${78} | phy_cores=${1} + +| 78B-2c-ethip6-ip6scale600k-rnd-ndrpdr +| | [Tags] | 78B | 2C +| | frame_size=${78} | phy_cores=${2} + +| 78B-4c-ethip6-ip6scale600k-rnd-ndrpdr +| | [Tags] | 78B | 4C +| | frame_size=${78} | phy_cores=${4} + +| 1518B-1c-ethip6-ip6scale600k-rnd-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip6-ip6scale600k-rnd-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip6-ip6scale600k-rnd-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip6-ip6scale600k-rnd-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip6-ip6scale600k-rnd-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip6-ip6scale600k-rnd-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip6-ip6scale600k-rnd-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip6-ip6scale600k-rnd-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip6-ip6scale600k-rnd-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale60k-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale60k-ndrpdr.robot new file mode 100644 index 0000000000..edd393df18 --- /dev/null +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale60k-ndrpdr.robot @@ -0,0 +1,144 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP6FWD | SCALE | FIB_60K | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip6-ip6scale60k +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and 6x10k static IPv6 /128 route entries. DUT1 and DUT2 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, 10k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination \ +| ... | address) field is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${10000} +| ${rxq_ratio}= | ${3} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv6 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 78B-1c-ethip6-ip6scale60k-ndrpdr +| | [Tags] | 78B | 1C +| | frame_size=${78} | phy_cores=${1} + +| 78B-2c-ethip6-ip6scale60k-ndrpdr +| | [Tags] | 78B | 2C +| | frame_size=${78} | phy_cores=${2} + +| 78B-4c-ethip6-ip6scale60k-ndrpdr +| | [Tags] | 78B | 4C +| | frame_size=${78} | phy_cores=${4} + +| 1518B-1c-ethip6-ip6scale60k-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip6-ip6scale60k-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip6-ip6scale60k-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip6-ip6scale60k-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip6-ip6scale60k-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip6-ip6scale60k-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip6-ip6scale60k-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip6-ip6scale60k-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip6-ip6scale60k-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale60k-rnd-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale60k-rnd-ndrpdr.robot new file mode 100644 index 0000000000..3c537fc157 --- /dev/null +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale60k-rnd-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP6FWD | IP6_RND | SCALE | FIB_60K +| ... | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip6-ip6scale60k-rnd +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and 6x10k static IPv6 /128 route entries. DUT1 and DUT2 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, 10k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination \ +| ... | address) field is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${10000} +| ${rxq_ratio}= | ${3} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip6-ip6dst-rnd${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv6 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 78B-1c-ethip6-ip6scale60k-rnd-ndrpdr +| | [Tags] | 78B | 1C +| | frame_size=${78} | phy_cores=${1} + +| 78B-2c-ethip6-ip6scale60k-rnd-ndrpdr +| | [Tags] | 78B | 2C +| | frame_size=${78} | phy_cores=${2} + +| 78B-4c-ethip6-ip6scale60k-rnd-ndrpdr +| | [Tags] | 78B | 4C +| | frame_size=${78} | phy_cores=${4} + +| 1518B-1c-ethip6-ip6scale60k-rnd-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip6-ip6scale60k-rnd-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip6-ip6scale60k-rnd-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip6-ip6scale60k-rnd-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip6-ip6scale60k-rnd-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip6-ip6scale60k-rnd-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip6-ip6scale60k-rnd-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip6-ip6scale60k-rnd-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip6-ip6scale60k-rnd-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale6m-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale6m-ndrpdr.robot new file mode 100644 index 0000000000..142c951cb0 --- /dev/null +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale6m-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP6FWD | SCALE | FIB_6M | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip6-ip6scale6m +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and 6x100k static IPv6 /128 route entries. DUT1 and DUT2 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, 100k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination \ +| ... | address) field is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${1000000} +| ${rxq_ratio}= | ${3} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv6 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 78B-1c-ethip6-ip6scale6m-ndrpdr +| | [Tags] | 78B | 1C +| | frame_size=${78} | phy_cores=${1} + +| 78B-2c-ethip6-ip6scale6m-ndrpdr +| | [Tags] | 78B | 2C +| | frame_size=${78} | phy_cores=${2} + +| 78B-4c-ethip6-ip6scale6m-ndrpdr +| | [Tags] | 78B | 4C +| | frame_size=${78} | phy_cores=${4} + +| 1518B-1c-ethip6-ip6scale6m-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip6-ip6scale6m-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip6-ip6scale6m-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip6-ip6scale6m-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip6-ip6scale6m-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip6-ip6scale6m-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip6-ip6scale6m-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip6-ip6scale6m-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip6-ip6scale6m-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale6m-rnd-ndrpdr.robot b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale6m-rnd-ndrpdr.robot new file mode 100644 index 0000000000..b4e9efd584 --- /dev/null +++ b/tests/vpp/perf/ip6/10ge2p1x710-ethip6-ip6scale6m-rnd-ndrpdr.robot @@ -0,0 +1,145 @@ +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP6FWD | IP6_RND | SCALE | FIB_6M +| ... | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip6-ip6scale6m-rnd +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and 6x10k static IPv6 /128 route entries. DUT1 and DUT2 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, 10k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination \ +| ... | address) field is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${1000000} +| ${rxq_ratio}= | ${3} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip6-ip6dst-rnd${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv6 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 78B-1c-ethip6-ip6scale6m-rnd-ndrpdr +| | [Tags] | 78B | 1C +| | frame_size=${78} | phy_cores=${1} + +| 78B-2c-ethip6-ip6scale6m-rnd-ndrpdr +| | [Tags] | 78B | 2C +| | frame_size=${78} | phy_cores=${2} + +| 78B-4c-ethip6-ip6scale6m-rnd-ndrpdr +| | [Tags] | 78B | 4C +| | frame_size=${78} | phy_cores=${4} + +| 1518B-1c-ethip6-ip6scale6m-rnd-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip6-ip6scale6m-rnd-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip6-ip6scale6m-rnd-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip6-ip6scale6m-rnd-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip6-ip6scale6m-rnd-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip6-ip6scale6m-rnd-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip6-ip6scale6m-rnd-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip6-ip6scale6m-rnd-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip6-ip6scale6m-rnd-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-dot1q-ip6base-ndrpdr.robot b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-dot1q-ip6base-ndrpdr.robot index f34bd6d0b3..83e87ef540 100644 --- a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-dot1q-ip6base-ndrpdr.robot +++ b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-dot1q-ip6base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -21,35 +21,40 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing with IEEE 802.1Q test -| ... | cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. IEEE 802.1Q\ -| ... | tagging is applied on link between DUT1-if2 and TG-if2. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and\ -| ... | two static IPv6 /64 route entries. 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 DUT1. TG traffic profile contains two L3\ -| ... | flow-groups (flow-group per direction, 253 flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv6 header with IP\ -| ... | protocol=61 and static payload. MAC addresses are matching MAC\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing with IEEE 802.1Q test \ +| ... | cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. \ +| ... | IEEE 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ +| ... | two static IPv6 /64 route entries. 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 DUT1. TG traffic profile contains two L3 \ +| ... | flow-groups (flow-group per direction, 253 flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv6 header with IP \ +| ... | protocol=61 and static payload. MAC addresses are matching MAC \ | ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -65,14 +70,14 @@ | ${tg_if1_net}= | 2001:1::0 | ${tg_if2_net}= | 2001:2::0 # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-dot1qip6asym-ip6src253 +| ${traffic_profile}= | trex-stl-dot1qip6asym-ip6src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs IPv6 routing with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs IPv6 routing with VLAN and 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). diff --git a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6base-adlalwlistbase-ndrpdr.robot b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6base-adlalwlistbase-ndrpdr.robot index 5c235b87b2..bd48b015a4 100644 --- a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6base-adlalwlistbase-ndrpdr.robot +++ b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6base-adlalwlistbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -21,35 +21,40 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 allowlist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv6 allowlist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 -| ... | routing, two static IPv6 /64 routes and IPv6 ADL security allowlist -| ... | ingress /64 filter entries applied on links TG - DUT1. -| ... | 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.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 \ +| ... | routing, two static IPv6 /64 routes and IPv6 ADL security allowlist \ +| ... | ingress /64 filter entries applied on links TG - DUT1. \ +| ... | 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, 253 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv6 header and static -| ... | payload. MAC addresses are matching MAC addresses of the TG node +| ... | links to DUTs. TG traffic profile contains two L3 flow-groups \ +| ... | (flow-group per direction, 253 flows per flow-group) with all packets \ +| ... | containing Ethernet header, IPv6 header and static \ +| ... | payload. MAC addresses are matching MAC addresses of the TG node \ | ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | adl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | adl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -60,14 +65,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing and allowlist filters config with +| | ... | - **[Cfg]** DUT runs IPv6 routing and allowlist filters config with \ | | ... | ${phy_cores} phy core(s). -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6base-iacldstbase-ndrpdr.robot b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6base-iacldstbase-ndrpdr.robot index 0fc0aea6e2..b1845018ae 100644 --- a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6base-iacldstbase-ndrpdr.robot +++ b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6base-iacldstbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -21,34 +21,39 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | classify | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 iAcl whitelist test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv6 iAcl whitelist test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 -| ... | routing, two static IPv6 /64 routes and IPv6 iAcl security whitelist -| ... | ingress /64 filter entries applied on links TG - DUT1. -| ... | 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, 253 flows per flow-group) with all packets -| ... | containing Ethernet header, IPv6 header and generated payload. MAC +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 \ +| ... | routing, two static IPv6 /64 routes and IPv6 iAcl security whitelist \ +| ... | ingress /64 filter entries applied on links TG - DUT1. \ +| ... | 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, 253 flows per flow-group) with all packets \ +| ... | containing Ethernet header, IPv6 header and generated payload. MAC \ | ... | addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,14 +64,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing and whitelist filters config with +| | ... | - **[Cfg]** DUT runs IPv6 routing and whitelist filters config with \ | | ... | ${phy_cores} phy core(s). -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6base-ndrpdr.robot b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6base-ndrpdr.robot index 3f9531afc0..197564aaad 100644 --- a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6base-ndrpdr.robot +++ b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -21,32 +21,37 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *Packet throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **Packet throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and two\ -| ... | static IPv6 /64 route entries. DUT1 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, 253 flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ +| ... | and two static IPv6 /64 route entries. 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, 253 flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC \ | ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -57,14 +62,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale1m-ndrpdr.robot b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale1m-ndrpdr.robot new file mode 100644 index 0000000000..acd535bc11 --- /dev/null +++ b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale1m-ndrpdr.robot @@ -0,0 +1,144 @@ +# Copyright (c) 2024 Intel and/or its affiliates. +# Copyright (c) 2024 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/shared/default.robot +| +| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR +| ... | NIC_Intel-X710 | ETH | IP6FWD | SCALE | FIB_1M | DRV_VFIO_PCI +| ... | RXQ_SIZE_0 | TXQ_SIZE_0 +| ... | ethip6-ip6scale1m +| +| Suite Setup | Setup suite topology interfaces | performance +| Suite Teardown | Tear down suite | performance +| Test Setup | Setup test | performance +| Test Teardown | Tear down test | performance +| +| Test Template | Local Template +| +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ +| ... | 2x500k static IPv6 /128 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 500k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination \ +| ... | address) field is applied to both streams. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. + +*** Variables *** +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so +| ${crypto_type}= | ${None} +| ${nic_name}= | Intel-X710 +| ${nic_driver}= | vfio-pci +| ${nic_rxq_size}= | 0 +| ${nic_txq_size}= | 0 +| ${nic_pfs}= | 2 +| ${nic_vfs}= | 0 +| ${osi_layer}= | L3 +| ${overhead}= | ${0} +| ${rts_per_flow}= | ${500000} +# Traffic profile: +| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-${nic_pfs}p + +*** Keywords *** +| Local Template +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv6 routing 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 Set Max Rate And Jumbo +| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} +| | And Pre-initialize layer driver | ${nic_driver} +| | And Apply startup configuration on all VPP DUTs +| | When Initialize layer driver | ${nic_driver} +| | And Initialize layer interface +| | And Set interfaces in path up +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} +| | Then Find NDR and PDR intervals using optimized search + +*** Test Cases *** +| 78B-1c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 78B | 1C +| | frame_size=${78} | phy_cores=${1} + +| 78B-2c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 78B | 2C +| | frame_size=${78} | phy_cores=${2} + +| 78B-4c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 78B | 4C +| | frame_size=${78} | phy_cores=${4} + +| 1518B-1c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 1518B | 1C +| | frame_size=${1518} | phy_cores=${1} + +| 1518B-2c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 1518B | 2C +| | frame_size=${1518} | phy_cores=${2} + +| 1518B-4c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + +| 9000B-1c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 9000B | 1C +| | frame_size=${9000} | phy_cores=${1} + +| 9000B-2c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 9000B | 2C +| | frame_size=${9000} | phy_cores=${2} + +| 9000B-4c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + +| IMIX-1c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | IMIX | 1C +| | frame_size=IMIX_v4_1 | phy_cores=${1} + +| IMIX-2c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | IMIX | 2C +| | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-ethip6-ip6scale1m-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale200k-ndrpdr.robot b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale200k-ndrpdr.robot index 9cf7327cf7..9149dad5ed 100644 --- a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale200k-ndrpdr.robot +++ b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale200k-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -21,33 +21,38 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and\ -| ... | 2x100k static IPv6 /64 route entries. 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 100k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | with IP and static payload. MAC addresses are matching MAC addresses\ -| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ +| ... | 2x100k static IPv6 /128 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 100k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination \ | ... | address) field is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,14 +64,14 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${100000} # Traffic profile: -| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config. +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -84,8 +89,7 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv6 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale200k-rnd-ndrpdr.robot b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale200k-rnd-ndrpdr.robot index 1b3b2636e6..2cc8dce84e 100644 --- a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale200k-rnd-ndrpdr.robot +++ b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale200k-rnd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -21,33 +21,38 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and\ -| ... | 2x100k static IPv6 /64 route entries. 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 100k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | with IP and static payload. MAC addresses are matching MAC addresses\ -| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ +| ... | 2x100k static IPv6 /128 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 100k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination \ | ... | address) field is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,14 +64,14 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${100000} # Traffic profile: -| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-rnd +| ${traffic_profile}= | trex-stl-ethip6-ip6dst-rnd${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config. +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -84,8 +89,7 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv6 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale20k-ndrpdr.robot b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale20k-ndrpdr.robot index 718a9613fc..f5d80bdfd1 100644 --- a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale20k-ndrpdr.robot +++ b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale20k-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -21,33 +21,38 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and\ -| ... | 2x10k static IPv6 /64 route entries. 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 10k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | with IP and static payload. MAC addresses are matching MAC addresses\ -| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ +| ... | 2x10k static IPv6 /128 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 10k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination \ | ... | address) field is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,14 +64,14 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${10000} # Traffic profile: -| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config. +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -84,8 +89,7 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv6 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale20k-rnd-ndrpdr.robot b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale20k-rnd-ndrpdr.robot index 3d079cd058..4861ea19cb 100644 --- a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale20k-rnd-ndrpdr.robot +++ b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale20k-rnd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -21,33 +21,38 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and\ -| ... | 2x10k static IPv6 /64 route entries. 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 10k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | with IP and static payload. MAC addresses are matching MAC addresses\ -| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ +| ... | 2x10k static IPv6 /128 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 10k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination \ | ... | address) field is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,14 +64,14 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${10000} # Traffic profile: -| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-rnd +| ${traffic_profile}= | trex-stl-ethip6-ip6dst-rnd${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config. +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -84,8 +89,7 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv6 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale2m-ndrpdr.robot b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale2m-ndrpdr.robot index 823637c18e..12d5045a41 100644 --- a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale2m-ndrpdr.robot +++ b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale2m-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -21,33 +21,38 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and\ -| ... | 2x1M static IPv6 /64 route entries. 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 1M flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | with IP and static payload. MAC addresses are matching MAC addresses\ -| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ +| ... | 2x1M static IPv6 /128 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1M flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Incrementing of IP.dst (IPv6 destination \ | ... | address) field is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,14 +64,14 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${1000000} # Traffic profile: -| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow} +| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -84,8 +89,7 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv6 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale2m-rnd-ndrpdr.robot b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale2m-rnd-ndrpdr.robot index 38e2c8f1f7..d2d0512efd 100644 --- a/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale2m-rnd-ndrpdr.robot +++ b/tests/vpp/perf/ip6/2n1l-10ge2p1x710-ethip6-ip6scale2m-rnd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -21,33 +21,38 @@ | | Suite Setup | Setup suite topology interfaces | performance | Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance | performance +| Test Setup | Setup test | performance | Test Teardown | Tear down test | performance | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv6 routing test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6 for IPv6 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv6 routing and\ -| ... | 2x1M static IPv6 /64 route entries. 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 1M flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv6 header\ -| ... | with IP and static payload. MAC addresses are matching MAC addresses\ -| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination\ +| Documentation | **RFC2544: Pkt throughput IPv6 routing test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6 for IPv6 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv6 routing \ +| ... | 2x1M static IPv6 /128 route entries. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 1M flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv6 header \ +| ... | with IP and static payload. MAC addresses are matching MAC addresses \ +| ... | of the TG node interfaces. Randomization of IP.dst (IPv6 destination \ | ... | address) field is applied to both streams. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -59,14 +64,14 @@ | ${overhead}= | ${0} | ${rts_per_flow}= | ${1000000} # Traffic profile: -| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-rnd +| ${traffic_profile}= | trex-stl-ethip6-ip6dst-rnd${rts_per_flow}-${nic_pfs}p *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 routing config.\ +| | ... | - **[Cfg]** DUT runs IPv6 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -84,8 +89,7 @@ | | And Apply startup configuration on all VPP DUTs | | When Initialize layer driver | ${nic_driver} | | And Initialize layer interface -| | And Initialize IPv6 forwarding with scaling in circular topology -| | ... | ${rts_per_flow} +| | And Initialize IPv6 Forwarding | count=${rts_per_flow} | pfs=${nic_pfs} | | Then Find NDR and PDR intervals using optimized search *** Test Cases *** diff --git a/tests/vpp/perf/ip6/regenerate_testcases.py b/tests/vpp/perf/ip6/regenerate_testcases.py index f6bbf0a102..1a151af0f8 100755 --- a/tests/vpp/perf/ip6/regenerate_testcases.py +++ b/tests/vpp/perf/ip6/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/ip6_tunnels/10ge2p1x710-ethip6lispip4-ip6base-ndrpdr.robot b/tests/vpp/perf/ip6_tunnels/10ge2p1x710-ethip6lispip4-ip6base-ndrpdr.robot index ca0a23ea0e..77cf67e18f 100644 --- a/tests/vpp/perf/ip6_tunnels/10ge2p1x710-ethip6lispip4-ip6base-ndrpdr.robot +++ b/tests/vpp/perf/ip6_tunnels/10ge2p1x710-ethip6lispip4-ip6base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -30,24 +30,29 @@ | | Test Template | Local Template | -| Documentation | *RFC6830: Pkt throughput Lisp test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes.\ -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6-LISP-IPv4 on DUT1-DUT2,\ -| ... | Eth-IPv6 on TG-DUTn for IPv6 routing over LISPoIPv4 tunnel.\ -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and static routes. LISPoIPv4 tunnel is configured between\ -| ... | DUT1 and DUT2. DUT1 and DUT2 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.\ -| ... | *[Ref] Applicable standard specifications:* RFC6830. +| Documentation | **RFC6830: Pkt throughput Lisp test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. \ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6-LISP-IPv4 on DUT1-DUT2, \ +| ... | Eth-IPv6 on TG-DUTn for IPv6 routing over LISPoIPv4 tunnel. \ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and static routes. LISPoIPv4 tunnel is configured between \ +| ... | DUT1 and DUT2. DUT1 and DUT2 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC6830. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lisp_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lisp_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -56,17 +61,17 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${osi_layer}= | L3 -| ${overhead}= | 48 +| ${overhead}= | ${48} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist\ -| | ... | filters config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.\ -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config. \ +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Frame size in Bytes as integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip6_tunnels/10ge2p1x710-ethip6lispip6-ip6base-ndrpdr.robot b/tests/vpp/perf/ip6_tunnels/10ge2p1x710-ethip6lispip6-ip6base-ndrpdr.robot index b86006155a..488267c1c1 100644 --- a/tests/vpp/perf/ip6_tunnels/10ge2p1x710-ethip6lispip6-ip6base-ndrpdr.robot +++ b/tests/vpp/perf/ip6_tunnels/10ge2p1x710-ethip6lispip6-ip6base-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -30,24 +30,29 @@ | | Test Template | Local Template | -| Documentation | *RFC6830: Pkt throughput Lisp test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes.\ -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6-LISP-IPv6 on DUT1-DUT2,\ -| ... | Eth-IPv6 on TG-DUTn for IPv6 routing over LISPoIPv6 tunnel.\ -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and static routes. LISPoIPv6 tunnel is configured between\ -| ... | DUT1 and DUT2. DUT1 and DUT2 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.\ -| ... | *[Ref] Applicable standard specifications:* RFC6830. +| Documentation | **RFC6830: Pkt throughput Lisp test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. \ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6-LISP-IPv6 on DUT1-DUT2, \ +| ... | Eth-IPv6 on TG-DUTn for IPv6 routing over LISPoIPv6 tunnel. \ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and static routes. LISPoIPv6 tunnel is configured between \ +| ... | DUT1 and DUT2. DUT1 and DUT2 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC6830. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lisp_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lisp_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -56,17 +61,17 @@ | ${nic_pfs}= | 2 | ${nic_vfs}= | 0 | ${osi_layer}= | L3 -| ${overhead}= | 8 +| ${overhead}= | ${8} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv6 LISP remote static mappings and whitelist\ -| | ... | filters config.\ -| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads.\ -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs IPv6 LISP remote static mappings and whitelist \ +| | ... | filters config. \ +| | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Frame size in Bytes as integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/ip6_tunnels/regenerate_testcases.py b/tests/vpp/perf/ip6_tunnels/regenerate_testcases.py index f6bbf0a102..1a151af0f8 100755 --- a/tests/vpp/perf/ip6_tunnels/regenerate_testcases.py +++ b/tests/vpp/perf/ip6_tunnels/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/l2/10ge2p1x710-dot1ad-l2xcbase-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-dot1ad-l2xcbase-ndrpdr.robot index 8a693b6f56..bb8c2f01e7 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-dot1ad-l2xcbase-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-dot1ad-l2xcbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC with 802.1ad test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 xconnect. -| ... | 802.1ad tagging is applied on link between DUT1 and DUT2 with inner 4B +| Documentation | **RFC2544: Pkt throughput L2XC with 802.1ad test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 xconnect. \ +| ... | 802.1ad tagging is applied on link between DUT1 and DUT2 with inner 4B \ | ... | vlan tag (id=100) and outer 4B vlan tag (id=200). -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. DUT1 and DUT2 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, 253 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 +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | cross-connect. DUT1 and DUT2 are 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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -66,14 +71,14 @@ | ${type_subif}= | two_tags | ${tag_rewrite}= | pop-2 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC forwarding config. +| | ... | - **[Cfg]** DUT runs L2XC forwarding config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-dot1q-l2bdbasemaclrn-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-dot1q-l2bdbasemaclrn-ndrpdr.robot index fcdcbfd5fa..87ab3522a4 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-dot1q-l2bdbasemaclrn-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-dot1q-l2bdbasemaclrn-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,30 +26,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with IEEE 802.1Q test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. IEEE\ -| ... | 802.1Q tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 bridge\ -| ... | domain and MAC learning enabled. DUT1 and DUT2 are tested\ +| Documentation | **RFC2544: Pkt throughput L2BD with IEEE 802.1Q test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ +| ... | IEEE 802.1Q tagging is applied on link between DUT1 and DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-\ +| ... | domain and MAC learning enabled. DUT1 and DUT2 are 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. +| ... | +| ... | - **[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 *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -65,14 +71,14 @@ | ${bd_id1}= | 1 | ${bd_id2}= | 2 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD config with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD config with VLAN and 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). diff --git a/tests/vpp/perf/l2/10ge2p1x710-dot1q-l2xcbase-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-dot1q-l2xcbase-ndrpdr.robot index 6e43dcfe25..dc7c3a6f56 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-dot1q-l2xcbase-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-dot1q-l2xcbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC with IEEE 802.1Q test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. IEEE\ +| Documentation | **RFC2544: Pkt throughput L2XC with IEEE 802.1Q test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect. IEEE \ | ... | 802.1Q tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross-\ -| ... | connect. DUT1 and DUT2 are 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. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | cross-connect. DUT1 and DUT2 are 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -62,14 +67,14 @@ | ${subid}= | 10 | ${tag_rewrite}= | pop-1 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2XC config with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2XC config with VLAN and 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). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sf-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sf-100flows-ndrpdr.robot index 250c97e62f..95b03526c7 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sf-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sf-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sf-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sf-100kflows-ndrpdr.robot index b1e322e599..b452f31dbd 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sf-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sf-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sf-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sf-10kflows-ndrpdr.robot index faaabf49f7..f65ec313ba 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sl-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sl-100flows-ndrpdr.robot index d2f30dcd0e..cc5ded1eea 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sl-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sl-100kflows-ndrpdr.robot index e103f90c58..dfe1df43f4 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sl-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sl-10kflows-ndrpdr.robot index 46c634a247..cac8ac3f30 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl10sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sf-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sf-100flows-ndrpdr.robot index c3d4b39cd0..37c9fd5bd5 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sf-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sf-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sf-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sf-100kflows-ndrpdr.robot index 468be89791..3a7a356c52 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sf-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sf-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sf-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sf-10kflows-ndrpdr.robot index 296eba2635..879a2f6df4 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy +| | ... | - **[Cfg]** DUT runs L2BD config with ACLs with ${phy_cores} phy \ | | ... | core(s). -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sl-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sl-100flows-ndrpdr.robot index 77338181f3..c791792025 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sl-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sl-100kflows-ndrpdr.robot index 8900ee1f15..bf0e8e96d9 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sl-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sl-10kflows-ndrpdr.robot index 8536a3d9e1..e7390dc978 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl1sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy +| | ... | - **[Cfg]** DUT runs L2BD config with ACLs with ${phy_cores} phy \ | | ... | core(s). -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-100flows-ndrpdr.robot index d358500dcd..f642d4f3c6 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-100kflows-ndrpdr.robot index d5bb12ec7c..9eb02a2ded 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-10kflows-ndrpdr.robot index 515737a8ba..a56cad4ea3 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy +| | ... | - **[Cfg]** DUT runs L2BD config with ACLs with ${phy_cores} phy \ | | ... | core(s). -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-100flows-ndrpdr.robot index 3764d738e5..d727f99d21 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching \ +| ... | of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-100kflows-ndrpdr.robot index d9232df940..ea929e568b 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-10kflows-ndrpdr.robot index b3e497594c..3fcdb42013 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy +| | ... | - **[Cfg]** DUT runs L2BD config with ACLs with ${phy_cores} phy \ | | ... | core(s). -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl10sl-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl10sl-100flows-ndrpdr.robot index 135ceebf4f..6802aecd35 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl10sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl10sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-connects.\ -| ... | Required MACIP ACL rules are applied to input paths of both DUT1\ -| ... | interfaces. DUT1 and DUT2 are tested with 2p10GE NIC X520 Niantic by\ -| ... | Intel. -| ... | *[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, ${flows_per_dir} 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. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required MACIP ACL rules are applied to input paths of both DUT1 \ +| ... | addresses of the TG node interfaces. DUT1 and DUT2 are tested with \ +| ... | 2p10GE NIC X520 Niantic by Intel. +| ... | +| ... | - **[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, ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -77,14 +83,14 @@ | ${tg_stream1_subnet}= | 10.0.0.0/24 | ${tg_stream2_subnet}= | 20.0.0.0/24 # traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-macsrc100ip4src100 +| ${traffic_profile}= | trex-stl-ethip4-macsrc100ip4src100 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl10sl-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl10sl-100kflows-ndrpdr.robot index 80e1cdeb77..5f29851245 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl10sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl10sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-connects.\ -| ... | Required MACIP ACL rules are applied to input paths of both DUT1\ -| ... | interfaces. DUT1 and DUT2 are tested with 2p10GE NIC X520 Niantic by\ -| ... | Intel. -| ... | *[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, ${flows_per_dir} 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. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required MACIP ACL rules are applied to input paths of both DUT1 \ +| ... | addresses of the TG node interfaces. DUT1 and DUT2 are tested with \ +| ... | 2p10GE NIC X520 Niantic by Intel. +| ... | +| ... | - **[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, ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -77,14 +83,14 @@ | ${tg_stream1_subnet}= | 10.0.0.0/15 | ${tg_stream2_subnet}= | 20.0.0.0/15 # traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-macsrc100kip4src100k +| ${traffic_profile}= | trex-stl-ethip4-macsrc100kip4src100k *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl10sl-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl10sl-10kflows-ndrpdr.robot index 540289cf84..152344c619 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl10sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl10sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-connects.\ -| ... | Required MACIP ACL rules are applied to input paths of both DUT1\ -| ... | interfaces. DUT1 and DUT2 are tested with 2p10GE NIC X520 Niantic by\ -| ... | Intel. -| ... | *[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, ${flows_per_dir} 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. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required MACIP ACL rules are applied to input paths of both DUT1 \ +| ... | addresses of the TG node interfaces. DUT1 and DUT2 are tested with \ +| ... | 2p10GE NIC X520 Niantic by Intel. +| ... | +| ... | - **[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, ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -77,14 +83,14 @@ | ${tg_stream1_subnet}= | 10.0.0.0/18 | ${tg_stream2_subnet}= | 20.0.0.0/18 # traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-macsrc10kip4src10k +| ${traffic_profile}= | trex-stl-ethip4-macsrc10kip4src10k *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl1sl-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl1sl-100flows-ndrpdr.robot index 1fecc12fc6..78adbe9e7f 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl1sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl1sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-connects.\ -| ... | Required MACIP ACL rules are applied to input paths of both DUT1\ -| ... | interfaces. DUT1 and DUT2 are 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, ${flows_per_dir} 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. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-\ +| ... | connects. Required MACIP ACL rules are applied to input paths of both \ +| ... | DUT1 addresses of the TG node interfaces. DUT1 and DUT2 are 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, ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -76,14 +82,14 @@ | ${tg_stream1_subnet}= | 10.0.0.0/24 | ${tg_stream2_subnet}= | 20.0.0.0/24 # traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-macsrc100ip4src100 +| ${traffic_profile}= | trex-stl-ethip4-macsrc100ip4src100 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl1sl-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl1sl-100kflows-ndrpdr.robot index ef5b1124b3..c8b79381b7 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl1sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl1sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-connects.\ -| ... | Required MACIP ACL rules are applied to input paths of both DUT1\ -| ... | interfaces. DUT1 and DUT2 are 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, ${flows_per_dir} 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. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-\ +| ... | connects. Required MACIP ACL rules are applied to input paths of both \ +| ... | DUT1 addresses of the TG node interfaces. DUT1 and DUT2 are 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, ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -76,14 +82,14 @@ | ${tg_stream1_subnet}= | 10.0.0.0/15 | ${tg_stream2_subnet}= | 20.0.0.0/15 # traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-macsrc100kip4src100k +| ${traffic_profile}= | trex-stl-ethip4-macsrc100kip4src100k *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl1sl-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl1sl-10kflows-ndrpdr.robot index 815ae62430..df64d73746 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl1sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl1sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-connects.\ -| ... | Required MACIP ACL rules are applied to input paths of both DUT1\ -| ... | interfaces. DUT1 and DUT2 are 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, ${flows_per_dir} 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. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-\ +| ... | connects. Required MACIP ACL rules are applied to input paths of both \ +| ... | DUT1 addresses of the TG node interfaces. DUT1 and DUT2 are 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, ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -76,14 +82,14 @@ | ${tg_stream1_subnet}= | 10.0.0.0/18 | ${tg_stream2_subnet}= | 20.0.0.0/18 # traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-macsrc10kip4src10k +| ${traffic_profile}= | trex-stl-ethip4-macsrc10kip4src10k *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-100flows-ndrpdr.robot index 6038e1e4c2..5e414f23c4 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-connects.\ -| ... | Required MACIP ACL rules are applied to input paths of both DUT1\ -| ... | interfaces. DUT1 and DUT2 are 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, ${flows_per_dir} 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. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-\ +| ... | connects. Required MACIP ACL rules are applied to input paths of both \ +| ... | DUT1 addresses of the TG node interfaces. DUT1 and DUT2 are 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, ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -76,14 +82,14 @@ | ${tg_stream1_subnet}= | 10.0.0.0/24 | ${tg_stream2_subnet}= | 20.0.0.0/24 # traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-macsrc100ip4src100 +| ${traffic_profile}= | trex-stl-ethip4-macsrc100ip4src100 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-100kflows-ndrpdr.robot index 0266f48326..a410b3958c 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-connects.\ -| ... | Required MACIP ACL rules are applied to input paths of both DUT1\ -| ... | interfaces. DUT1 and DUT2 are 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, ${flows_per_dir} 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. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-\ +| ... | connects. Required MACIP ACL rules are applied to input paths of both \ +| ... | DUT1 addresses of the TG node interfaces. DUT1 and DUT2 are 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, ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -76,14 +82,14 @@ | ${tg_stream1_subnet}= | 10.0.0.0/15 | ${tg_stream2_subnet}= | 20.0.0.0/15 # traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-macsrc100kip4src100k +| ${traffic_profile}= | trex-stl-ethip4-macsrc100kip4src100k *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrpdr.robot index fa42e9233b..b10b3c1498 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-connects.\ -| ... | Required MACIP ACL rules are applied to input paths of both DUT1\ -| ... | interfaces. DUT1 and DUT2 are 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, ${flows_per_dir} 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. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-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. DUT2 is configured with L2 cross-\ +| ... | connects. Required MACIP ACL rules are applied to input paths of both \ +| ... | DUT1 addresses of the TG node interfaces. DUT1 and DUT2 are 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, ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -76,14 +82,14 @@ | ${tg_stream1_subnet}= | 10.0.0.0/18 | ${tg_stream2_subnet}= | 20.0.0.0/18 # traffic profile -| ${traffic_profile}= | trex-stl-3n-ethip4-macsrc10kip4src10k +| ${traffic_profile}= | trex-stl-ethip4-macsrc10kip4src10k *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-ndrpdr.robot index 0180a88497..325d69c0ea 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,27 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 bridge-\ -| ... | domain and MAC learning enabled. DUT1 and DUT2 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\ +| Documentation | **RFC2544: Pkt throughput L2BD test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-domain and MAC learning enabled. DUT1 and DUT2 are tested with \ +| ... | 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -57,14 +63,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD switching config and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD switching config and 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). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sf-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sf-100flows-ndrpdr.robot index b71b11eedb..93d5f8b39e 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sf-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sf-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sf-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sf-100kflows-ndrpdr.robot index a0ef617085..70536d0bd2 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sf-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sf-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sf-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sf-10kflows-ndrpdr.robot index 160c5dc42d..92af4ad4f2 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sl-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sl-100flows-ndrpdr.robot index 801bea58ac..34ee275a0e 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sl-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sl-100kflows-ndrpdr.robot index 10847c1ad2..5f9626d636 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sl-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sl-10kflows-ndrpdr.robot index ebf8f33280..169ca282c9 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl10sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sf-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sf-100flows-ndrpdr.robot index 297d2978db..6f50f6db8c 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sf-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sf-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sf-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sf-100kflows-ndrpdr.robot index 8a683864e7..feb2cf54d0 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sf-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sf-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching \ +| ... | of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template -| | [Documentation] | FIXME. -| | ... | [Cfg] DUT runs IPv4 routing config. +| | [Documentation] +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sf-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sf-10kflows-ndrpdr.robot index ad9f0cf171..dde7d8e41f 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sl-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sl-100flows-ndrpdr.robot index ffe5675e3d..6963c33220 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sl-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sl-100kflows-ndrpdr.robot index 086fc3e206..b8e98e74d3 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 \ +| ... | intefaces. DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sl-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sl-10kflows-ndrpdr.robot index 98673c4bea..9fc86835a6 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl1sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-100flows-ndrpdr.robot index fb33596d66..4e118238be 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-100kflows-ndrpdr.robot index 4030d37a0e..6a7ee99f1a 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-10kflows-ndrpdr.robot index 639467d9fb..24eba06766 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-100flows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-100flows-ndrpdr.robot index 64efd479fc..76584e581e 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-100flows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-100flows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u10p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u10p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-100kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-100kflows-ndrpdr.robot index a018cfa9f1..e75d7a1c88 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-100kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-100kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-100u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-100u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-10kflows-ndrpdr.robot index bb1f54c046..3c1c6e4ba3 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled. DUT2 is configured with L2 cross-connects.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. DUT2 is configured with L2 cross-\ +| ... | connects. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | DUT1 and DUT2 are 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +82,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale100kmaclrn-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale100kmaclrn-ndrpdr.robot index f0e5052495..f89983740e 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale100kmaclrn-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale100kmaclrn-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput for L2BD test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 bridge-\ -| ... | domain and MAC learning enabled. DUT1 and DUT2 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, 50k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with IP protocol=61 and static payload.\ +| Documentation | **RFC2544: Pkt throughput for L2BD test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-domain and MAC learning enabled. DUT1 and DUT2 are tested with \ +| ... | 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, 50k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv4 header \ +| ... | with IP protocol=61 and static payload. \ | ... | MAC addresses ranges are incremented as follows: | ... | port01_src ca:fe:00:00:00:00 - port01_src ca:fe:00:07:a1:1f, | ... | port01_dst fa:ce:00:00:00:00 - port01_dst fa:ce:00:07:a1:1f, | ... | port02_src fa:ce:00:00:00:00 - port02_src fa:ce:00:07:a1:1f, | ... | port02_dst ca:fe:00:00:00:00 - port02_dst ca:fe:00:07:a1:1f -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -62,14 +68,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-macsrc50kdst50k +| ${traffic_profile}= | trex-stl-ethip4-macsrc50kdst50k *** Keywords *** | Local Template | | [Documentation] -| | ... | [CFG] Each DUT runs L2BD switching config and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD switching config and 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). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale10kmaclrn-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale10kmaclrn-ndrpdr.robot index 70c97870b0..a42b6c4571 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale10kmaclrn-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale10kmaclrn-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput for L2BD test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 bridge-\ -| ... | domain and MAC learning enabled. DUT1 and DUT2 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, 5k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with IP protocol=61 and static payload.\ +| Documentation | **RFC2544: Pkt throughput for L2BD test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-domain and MAC learning enabled. DUT1 and DUT2 are tested with \ +| ... | 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, 5k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv4 header \ +| ... | with IP protocol=61 and static payload. \ | ... | MAC addresses ranges are incremented as follows: | ... | port01_src ca:fe:00:00:00:00 - port01_src ca:fe:00:07:a1:1f, | ... | port01_dst fa:ce:00:00:00:00 - port01_dst fa:ce:00:07:a1:1f, | ... | port02_src fa:ce:00:00:00:00 - port02_src fa:ce:00:07:a1:1f, | ... | port02_dst ca:fe:00:00:00:00 - port02_dst ca:fe:00:07:a1:1f -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -62,14 +68,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-macsrc5kdst5k +| ${traffic_profile}= | trex-stl-ethip4-macsrc5kdst5k *** Keywords *** | Local Template | | [Documentation] -| | ... | [CFG] Each DUT runs L2BD switching config and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD switching config and 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). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale1mmaclrn-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale1mmaclrn-ndrpdr.robot index 4427e5e0e1..dcebbf8c66 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale1mmaclrn-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2bdscale1mmaclrn-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput for L2BD test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 bridge-\ -| ... | domain and MAC learning enabled. DUT1 and DUT2 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, 500k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with IP protocol=61 and static payload.\ +| Documentation | **RFC2544: Pkt throughput for L2BD test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-\ +| ... | domain and MAC learning enabled. DUT1 and DUT2 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, 500k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv4 header \ +| ... | with IP protocol=61 and static payload. \ | ... | MAC addresses ranges are incremented as follows: | ... | port01_src ca:fe:00:00:00:00 - port01_src ca:fe:00:07:a1:1f, | ... | port01_dst fa:ce:00:00:00:00 - port01_dst fa:ce:00:07:a1:1f, | ... | port02_src fa:ce:00:00:00:00 - port02_src fa:ce:00:07:a1:1f, | ... | port02_dst ca:fe:00:00:00:00 - port02_dst ca:fe:00:07:a1:1f -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -62,14 +68,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-macsrc500kdst500k +| ${traffic_profile}= | trex-stl-ethip4-macsrc500kdst500k *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD switching config and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD switching config and 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). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2patch-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2patch-ndrpdr.robot index 53afbd9ac3..f547b7cf19 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2patch-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2patch-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,27 +26,32 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2patch test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 patch. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 patch\ -| ... | DUT1 and DUT2 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 static payload.\ +| Documentation | **RFC2544: Pkt throughput L2patch test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 patch. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | patch DUT1 and DUT2 are 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 static payload \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -57,14 +62,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2 patch config with ${phy_cores} phy +| | ... | - **[Cfg]** DUT runs L2 patch config with ${phy_cores} phy \ | | ... | core(s). -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/10ge2p1x710-eth-l2xcbase-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-eth-l2xcbase-ndrpdr.robot index 84d3e0017c..f1c8b3dffe 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-eth-l2xcbase-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-eth-l2xcbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,27 +26,32 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. DUT1 and DUT2 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| Documentation | **RFC2544: Pkt throughput L2XC test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | cross-connect. DUT1 and DUT2 are 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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -57,14 +62,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC config with ${phy_cores} phy +| | ... | - **[Cfg]** DUT runs L2XC config with ${phy_cores} phy \ | | ... | core(s). -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-ndrpdr.robot b/tests/vpp/perf/l2/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-ndrpdr.robot index 1b00e06d0e..d98a1679f1 100644 --- a/tests/vpp/perf/l2/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-ndrpdr.robot +++ b/tests/vpp/perf/l2/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,31 +26,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with IEEE 802.1Q test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4 for L2 switching of IPv4.\ -| ... | IEEE 802.1Q tagging is applied on both links TG-DUT1 . -| ... | *[Cfg] DUT configuration:* DUT1 is configured with:\ -| ... | 2 VLAN subinterfaces (VID 100 and 200),\ -| ... | 1 L2 BD with the 2 VLAN subinterfaces,\ -| ... | DUT1 tested with ${nic_name} with VF enabled. -| ... | *[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 DUT1. 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. +| Documentation | **RFC2544: Pkt throughput L2BD with IEEE 802.1Q test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4 for L2 switching \ +| ... | of IPv4. IEEE 802.1Q tagging is applied on both links TG-DUT1. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with: \ +| ... | 2 VLAN subinterfaces (VID 100 and 200), \ +| ... | 1 L2 BD with the 2 VLAN subinterfaces. \ +| ... | DUT1 is tested with ${nic_name} with VF enabled. +| ... | +| ... | - **[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 DUT1. 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -66,9 +71,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD with VLAN with ${phy_cores} physical core(s) for\ -| | ... | worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs L2BD with VLAN with ${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). diff --git a/tests/vpp/perf/l2/2n1l-10ge2p1x710-dot1q-l2xcbase-ndrpdr.robot b/tests/vpp/perf/l2/2n1l-10ge2p1x710-dot1q-l2xcbase-ndrpdr.robot index 3975821e38..4856b4c817 100644 --- a/tests/vpp/perf/l2/2n1l-10ge2p1x710-dot1q-l2xcbase-ndrpdr.robot +++ b/tests/vpp/perf/l2/2n1l-10ge2p1x710-dot1q-l2xcbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC with IEEE 802.1Q test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. IEEE\ +| Documentation | **RFC2544: Pkt throughput L2XC with IEEE 802.1Q test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect. IEEE \ | ... | 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 cross- connect.\ -| ... | 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. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 cross-\ +| ... | connect. 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -65,9 +70,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2XC config with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2XC config with VLAN and 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). diff --git a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-10kflows-ndrpdr.robot index 5c79af9ca8..9362138b1c 100644 --- a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-iacl50sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 1-node circular topology +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 1-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +81,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy +| | ... | - **[Cfg]** DUT runs L2BD config with ACLs with ${phy_cores} phy \ | | ... | core(s). -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-10kflows-ndrpdr.robot index 9a850043aa..57aaea5c03 100644 --- a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-iacl50sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +81,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD config with ACLs with ${phy_cores} phy +| | ... | - **[Cfg]** DUT runs L2BD config with ACLs with ${phy_cores} phy \ | | ... | core(s). -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrpdr.robot index 7a0b90965d..3e89550f9c 100644 --- a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-macip-iacl50sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[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.\ -| ... | Required MACIP ACL rules are applied to input paths of both DUT1\ -| ... | interfaces. 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, ${flows_per_dir} 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. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. \ +| ... | Required MACIP ACL rules are applied to input paths of both DUT1 \ +| ... | addresses of the TG node interfaces. 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, ${flows_per_dir} 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -76,14 +81,14 @@ | ${tg_stream1_subnet}= | 10.0.0.0/18 | ${tg_stream2_subnet}= | 20.0.0.0/18 # traffic profile -| ${traffic_profile}= | trex-stl-2n-ethip4-macsrc10kip4src10k +| ${traffic_profile}= | trex-stl-ethip4-macsrc10kip4src10k *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-ndrpdr.robot b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-ndrpdr.robot index 6ac4f32aa2..d52f0e32be 100644 --- a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-ndrpdr.robot +++ b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,27 +26,32 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput L2BD test cases** +| ... | +| ... | - **[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. DUT1 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 DUT1. 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\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 \ +| ... | and MAC learning enabled. 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 DUT1. 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -57,14 +62,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config and uses ${phy_cores} physical\ -| | ... | core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs L2BD switching config and 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). diff --git a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-10kflows-ndrpdr.robot index bf975521b5..6c24a97ca3 100644 --- a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-oacl50sf-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +81,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-10kflows-ndrpdr.robot b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-10kflows-ndrpdr.robot index 5064cac6a5..b3976f5967 100644 --- a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-10kflows-ndrpdr.robot +++ b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-oacl50sl-10kflows-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with ACL* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with ACL** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge domain\ -| ... | and MAC learning enabled.\ -| ... | Required ACL rules are applied to input paths of both DUT1 intefaces.\ -| ... | 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, ${flows_per_dir} flows per flow-group) with\ -| ... | all packets containing Ethernet header, IPv4 header with UDP header and\ -| ... | static payload. MAC addresses are matching MAC addresses of the TG node\ -| ... | interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for L2 switching of \ +| ... | IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 bridge \ +| ... | domain and MAC learning enabled. \ +| ... | Required ACL rules are applied to input paths of both DUT1 intefaces. \ +| ... | 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, ${flows_per_dir} flows per flow-group) with \ +| ... | all packets containing Ethernet header, IPv4 header with UDP header \ +| ... | and static payload. MAC addresses are matching MAC addresses of the TG \ +| ... | node interfaces. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,14 +81,14 @@ | ${trex_stream1_subnet}= | 10.10.10.0/24 | ${trex_stream2_subnet}= | 20.20.20.0/24 # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4udp-10u1000p-conc +| ${traffic_profile}= | trex-stl-ethip4udp-10u1000p-conc *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdscale100kmaclrn-ndrpdr.robot b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdscale100kmaclrn-ndrpdr.robot index e17bf816e6..c8a4156156 100644 --- a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdscale100kmaclrn-ndrpdr.robot +++ b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdscale100kmaclrn-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput for L2BD test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput for L2BD test cases** +| ... | +| ... | - **[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. DUT1 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 50k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with IP protocol=61 and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 \ +| ... | and MAC learning enabled. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 50k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv4 header \ +| ... | with IP protocol=61 and static payload. \ | ... | MAC addresses ranges are incremented as follows: | ... | port01_src ca:fe:00:00:00:00 - port01_src ca:fe:00:07:a1:1f, | ... | port01_dst fa:ce:00:00:00:00 - port01_dst fa:ce:00:07:a1:1f, | ... | port02_src fa:ce:00:00:00:00 - port02_src fa:ce:00:07:a1:1f, | ... | port02_dst ca:fe:00:00:00:00 - port02_dst ca:fe:00:07:a1:1f -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -62,14 +67,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-macsrc50kdst50k +| ${traffic_profile}= | trex-stl-ethip4-macsrc50kdst50k *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config and uses ${phy_cores} physical\ -| | ... | core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs L2BD switching config and 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). diff --git a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdscale10kmaclrn-ndrpdr.robot b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdscale10kmaclrn-ndrpdr.robot index 16c732c3e2..89dece00d0 100644 --- a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdscale10kmaclrn-ndrpdr.robot +++ b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdscale10kmaclrn-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput for L2BD test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput for L2BD test cases** +| ... | +| ... | - **[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. DUT1 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 5k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with IP protocol=61 and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 \ +| ... | and MAC learning enabled. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 5k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv4 header \ +| ... | with IP protocol=61 and static payload. \ | ... | MAC addresses ranges are incremented as follows: | ... | port01_src ca:fe:00:00:00:00 - port01_src ca:fe:00:07:a1:1f, | ... | port01_dst fa:ce:00:00:00:00 - port01_dst fa:ce:00:07:a1:1f, | ... | port02_src fa:ce:00:00:00:00 - port02_src fa:ce:00:07:a1:1f, | ... | port02_dst ca:fe:00:00:00:00 - port02_dst ca:fe:00:07:a1:1f -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -62,14 +67,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-macsrc5kdst5k +| ${traffic_profile}= | trex-stl-ethip4-macsrc5kdst5k *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config and uses ${phy_cores} physical\ -| | ... | core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs L2BD switching config and 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). diff --git a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdscale1mmaclrn-ndrpdr.robot b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdscale1mmaclrn-ndrpdr.robot index 5b4e8c1931..cfd66cb02d 100644 --- a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdscale1mmaclrn-ndrpdr.robot +++ b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2bdscale1mmaclrn-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2021 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput for L2BD test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput for L2BD test cases** +| ... | +| ... | - **[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. DUT1 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 DUT1. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 500k flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with IP protocol=61 and static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 \ +| ... | and MAC learning enabled. 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 DUT1. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 500k flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv4 header \ +| ... | with IP protocol=61 and static payload. \ | ... | MAC addresses ranges are incremented as follows: | ... | port01_src ca:fe:00:00:00:00 - port01_src ca:fe:00:07:a1:1f, | ... | port01_dst fa:ce:00:00:00:00 - port01_dst fa:ce:00:07:a1:1f, | ... | port02_src fa:ce:00:00:00:00 - port02_src fa:ce:00:07:a1:1f, | ... | port02_dst ca:fe:00:00:00:00 - port02_dst ca:fe:00:07:a1:1f -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -62,14 +67,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-macsrc500kdst500k +| ${traffic_profile}= | trex-stl-ethip4-macsrc500kdst500k *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config and uses ${phy_cores} physical\ -| | ... | core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** DUT runs L2BD switching config and 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). diff --git a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2patch-ndrpdr.robot b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2patch-ndrpdr.robot index 00cee17787..76cba0e601 100644 --- a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2patch-ndrpdr.robot +++ b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2patch-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,27 +26,32 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2patch test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput L2patch test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 patch. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 patch\ -| ... | DUT1 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 static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 patch. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 patch \ +| ... | 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 static payload \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -57,14 +62,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2 patch config with ${phy_cores} phy +| | ... | - **[Cfg]** DUT runs L2 patch config with ${phy_cores} phy \ | | ... | core(s). -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2xcbase-ndrpdr.robot b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2xcbase-ndrpdr.robot index 58f6ecde7d..921e81d923 100644 --- a/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2xcbase-ndrpdr.robot +++ b/tests/vpp/perf/l2/2n1l-10ge2p1x710-eth-l2xcbase-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -26,27 +26,32 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput L2XC test cases** +| ... | +| ... | - **[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 cross-connect. -| ... | DUT1 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 static payload.\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 \ +| ... | 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 static payload \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -57,14 +62,14 @@ | ${osi_layer}= | L2 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC config.\ +| | ... | - **[Cfg]** DUT runs L2XC config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/l2/regenerate_testcases.py b/tests/vpp/perf/l2/regenerate_testcases.py index ec754aa261..e22f6de5c3 100755 --- a/tests/vpp/perf/l2/regenerate_testcases.py +++ b/tests/vpp/perf/l2/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/lb/2n1l-10ge2p1x710-ethip4-loadbalancer-l3dsr-ndrpdr.robot b/tests/vpp/perf/lb/2n1l-10ge2p1x710-ethip4-loadbalancer-l3dsr-ndrpdr.robot index ec4570a44d..a275c579be 100644 --- a/tests/vpp/perf/lb/2n1l-10ge2p1x710-ethip4-loadbalancer-l3dsr-ndrpdr.robot +++ b/tests/vpp/perf/lb/2n1l-10ge2p1x710-ethip4-loadbalancer-l3dsr-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2023 Intel 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput loadbalancer l3dsr test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput loadbalancer l3dsr test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for LoadBalancer l3dsr. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with LoadBalancer\ -| ... | l3dsr and one static IPv4 /24 route entries. DUT1 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 DUT. TG traffic profile\ -| ... | contains two L4 flow-groups (l3dsr use flow-group is only from TG\ -| ... | to DUT, 6 flows for flow-group) with all packets containing Ethernet\ -| ... | header, IPv4 header with IP protocol=17 and static payload. MAC\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for LoadBalancer l3dsr. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with LoadBalancer \ +| ... | l3dsr and one static IPv4 /24 route entries. DUT1 tested with \ +| ... | 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 DUT. TG traffic profile \ +| ... | contains two L4 flow-groups (l3dsr use flow-group is only from TG \ +| ... | to DUT, 6 flows for flow-group) with all packets containing Ethernet \ +| ... | header, IPv4 header with IP protocol=17 and static payload. MAC \ | ... | addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lb_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lb_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -58,15 +63,15 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4udp-lb +| ${traffic_profile}= | trex-stl-ethip4udp-lb | ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs LoadBalancer l3dsr config.\ +| | ... | - **[Cfg]** DUT runs LoadBalancer l3dsr config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/lb/2n1l-10ge2p1x710-ethip4-loadbalancer-maglev-ndrpdr.robot b/tests/vpp/perf/lb/2n1l-10ge2p1x710-ethip4-loadbalancer-maglev-ndrpdr.robot index dff2536f20..e602eab269 100644 --- a/tests/vpp/perf/lb/2n1l-10ge2p1x710-ethip4-loadbalancer-maglev-ndrpdr.robot +++ b/tests/vpp/perf/lb/2n1l-10ge2p1x710-ethip4-loadbalancer-maglev-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2023 Intel 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput loadbalancer maglev test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput loadbalancer maglev test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for LoadBalancer maglev. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with LoadBalancer\ -| ... | maglev and one static IPv4 /24 route entries. DUT1 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 DUT. TG traffic profile\ -| ... | contains two L4 flow-groups (maglev use flow-group is only from TG\ -| ... | to DUT, 6 flows for flow-group) with all packets containing Ethernet\ -| ... | header, IPv4 header with IP protocol=17 and static payload. MAC\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for LoadBalancer maglev. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with LoadBalancer \ +| ... | maglev and one static IPv4 /24 route entries. DUT1 tested with \ +| ... | 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 DUT. TG traffic profile \ +| ... | contains two L4 flow-groups (maglev use flow-group is only from TG \ +| ... | to DUT, 6 flows for flow-group) with all packets containing Ethernet \ +| ... | header, IPv4 header with IP protocol=17 and static payload. MAC \ | ... | addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lb_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lb_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -58,15 +63,15 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4udp-lb +| ${traffic_profile}= | trex-stl-ethip4udp-lb | ${traffic_directions}= | ${1} *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs LoadBalancer maglev config.\ +| | ... | - **[Cfg]** DUT runs LoadBalancer maglev config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/lb/2n1l-10ge2p1x710-ethip4-loadbalancer-nat4-ndrpdr.robot b/tests/vpp/perf/lb/2n1l-10ge2p1x710-ethip4-loadbalancer-nat4-ndrpdr.robot index 75b30e4fbe..eea9a51b71 100644 --- a/tests/vpp/perf/lb/2n1l-10ge2p1x710-ethip4-loadbalancer-nat4-ndrpdr.robot +++ b/tests/vpp/perf/lb/2n1l-10ge2p1x710-ethip4-loadbalancer-nat4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Intel and/or its affiliates. +# Copyright (c) 2023 Intel 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: @@ -26,28 +26,33 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput loadbalancer nat4 test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Pkt throughput loadbalancer nat4 test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4-UDP for LoadBalancer nat4. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with LoadBalancer\ -| ... | nat4 and two static IPv4 /24 route entries. DUT1 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 L4 flow-groups (flow-group per direction, 6 flows per\ -| ... | flow-group) with all packets containing Ethernet header, IPv4 header\ -| ... | with IP protocol=17 and static payload. MAC addresses are matching MAC\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4-UDP for LoadBalancer nat4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with LoadBalancer \ +| ... | nat4 and two static IPv4 /24 route entries. DUT1 tested with \ +| ... | 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 L4 flow-groups (flow-group per direction, 6 flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv4 header \ +| ... | with IP protocol=17 and static payload. MAC addresses are matching MAC \ | ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lb_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lb_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -58,14 +63,14 @@ | ${osi_layer}= | L3 | ${overhead}= | ${0} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4udp-lb +| ${traffic_profile}= | trex-stl-ethip4udp-lb *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs LoadBalancer nat4 config.\ +| | ... | - **[Cfg]** DUT runs LoadBalancer nat4 config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/lb/regenerate_testcases.py b/tests/vpp/perf/lb/regenerate_testcases.py index 6ff6d4d800..7e2cba12d3 100755 --- a/tests/vpp/perf/lb/regenerate_testcases.py +++ b/tests/vpp/perf/lb/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Inter and/or its affiliates. +# Copyright (c) 2023 Inter 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: 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 index 60c12203c5..a969808900 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr.robot index 9c9268f8a4..8b1e291938 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-10ch-20mif-10dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-10ch-40mif-20dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-10ch-40mif-20dcr1t-vppip4-ndrpdr.robot index 98ece2a27b..6c64450ba6 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-10ch-40mif-20dcr1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-10ch-40mif-20dcr1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | Test Template | Local Template | -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 10 chains -| ... | 20 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 +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 10 \ +| ... | chains 20 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index a8da1c362a..b4e7ef8219 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr.robot index fb5ab33751..44994777c6 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-12mif-6dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index a04d285051..7deb9ad98a 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr.robot index 21d7feaeab..fe3c6e995d 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-16mif-8dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index d9dbbfdc88..90367e1b9b 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr.robot index 0811c57570..f0d60e3f10 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-20mif-10dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 \ +| ... | domainsand 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 20d31eb645..cc8510703d 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr.robot index 9a0634664c..ad16cb37b1 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-2mif-1dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index bc80a0916c..85e2383ee7 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr.robot index 0be3a16e5e..e4a08e51ce 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-4mif-2dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 7da217aa89..a4657a91ea 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr.robot index dc45206c96..be0c224ea3 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-1ch-8mif-4dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index d5062990bb..3137e99125 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr.robot index 54f91c26fc..d8655e1287 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-16mif-8dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index c5f43fb4dc..6c3b6cbafd 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr.robot index 84f0eb1c4d..6651af7d89 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-24mif-12dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 5605bd42de..bcdcfa4b42 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr.robot index 0fc40be8fb..25aa563ef0 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -28,31 +28,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +79,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -111,6 +115,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -119,6 +127,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -127,6 +139,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -134,3 +150,7 @@ | IMIX-2c-eth-l2bd-2ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-2ch-32mif-16dcr2t-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-40mif-20dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-40mif-20dcr1t-vppip4-ndrpdr.robot index f8811bb963..a293ff74b2 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-40mif-20dcr1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-40mif-20dcr1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | Test Template | Local Template | -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 2 chains -| ... | 20 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 +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif \ +| ... | 2 chains 20 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index d152a67138..9f0e34eb78 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr.robot index 85c6c71915..2a802317dc 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-4mif-2dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index a3fd350684..e18afe301a 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr.robot index a6ec9c8449..c3e1d15136 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-2ch-8mif-4dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index ab033af177..96490fe826 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr.robot index e360532dac..5749d10793 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-16mif-8dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index b8b7037f17..59a26c9f04 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr.robot index 0c342cac27..997bebb88b 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -110,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -118,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -126,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -133,3 +149,7 @@ | IMIX-2c-eth-l2bd-4ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-4ch-32mif-16dcr2t-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-48mif-24dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-48mif-24dcr1t-vppip4-ndrpdr.robot index 4269557f7c..62f1be2c4a 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-48mif-24dcr1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-48mif-24dcr1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -27,31 +27,35 @@ | | Test Template | Local Template | -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 4 chains -| ... | 24 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 +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif \ +| ... | 4 chains 24 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -110,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-4ch-48mif-24dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-4ch-48mif-24dcr1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -118,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-4ch-48mif-24dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-4ch-48mif-24dcr1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -126,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-4ch-48mif-24dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-4ch-48mif-24dcr1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -133,3 +149,7 @@ | IMIX-2c-eth-l2bd-4ch-48mif-24dcr1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-4ch-48mif-24dcr1t-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-8mif-4dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-8mif-4dcr1t-vppip4-ndrpdr.robot index cef3f8988f..987e080f4f 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr.robot index 18c57e0022..e4a9044662 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-4ch-8mif-4dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 5966f203c7..e10260ba5e 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr.robot index 4e4ff76e4a..4a5e57541b 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-12mif-6dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 7253d40177..630b6d2511 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 \ +| ... | domainsand 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr.robot index ba8996b4ce..e1dda7c627 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-24mif-12dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-48mif-24dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-48mif-24dcr1t-vppip4-ndrpdr.robot index 3ec0e9ed7c..99c3a4465e 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-48mif-24dcr1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-6ch-48mif-24dcr1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -27,31 +27,35 @@ | | Test Template | Local Template | -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 6 chains -| ... | 24 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 +| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif \ +| ... | 6 chains 24 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -110,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-6ch-48mif-24dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-6ch-48mif-24dcr1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -118,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-6ch-48mif-24dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-6ch-48mif-24dcr1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -126,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-6ch-48mif-24dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-6ch-48mif-24dcr1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -133,3 +149,7 @@ | IMIX-2c-eth-l2bd-6ch-48mif-24dcr1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-6ch-48mif-24dcr1t-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 index 0d7f86e518..84e3260cf4 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr.robot index ad71ade856..5497f993f4 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-16mif-8dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index c40f605980..7c4be7fea9 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr.robot index 10e361b245..184322ff58 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/2n-10ge2p1x710-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -110,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -118,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -126,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -133,3 +149,7 @@ | IMIX-2c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-8ch-32mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} 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 index ec754aa261..e22f6de5c3 100755 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain/regenerate_testcases.py +++ b/tests/vpp/perf/nfv_density/dcr_memif/chain/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index c139e80bcf..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_10000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 8DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 8 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${8} -| ${n_tunnels}= | ${10000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec10000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 54c60e5463..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_10000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 1DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 1 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${1} -| ${n_tunnels}= | ${10000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec10000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index e2a2986c6a..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_10000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 2DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 2 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${2} -| ${n_tunnels}= | ${10000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec10000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 9398d588ed..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_10000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 4DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 4 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${4} -| ${n_tunnels}= | ${10000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec10000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 0f930a253c..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 8DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 8 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${8} -| ${n_tunnels}= | ${1000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index fc8a8f76a4..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 1DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 1 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${1} -| ${n_tunnels}= | ${1000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 12fef04f9e..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 2DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 2 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${2} -| ${n_tunnels}= | ${1000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 366f8f2dcc..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_1000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 4DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 4 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${4} -| ${n_tunnels}= | ${1000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec1000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 3adf122aca..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_20000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 8DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 8 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${8} -| ${n_tunnels}= | ${20000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec20000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index bf20589666..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_20000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 1DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 1 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${1} -| ${n_tunnels}= | ${20000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec20000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 000a2b6ab3..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_20000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 2DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 2 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${2} -| ${n_tunnels}= | ${20000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec20000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 0c9fdb83eb..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_20000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 4DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 4 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${4} -| ${n_tunnels}= | ${20000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec20000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index ac50781777..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 8DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 8 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${8} -| ${n_tunnels}= | ${40000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 6629ac787f..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 1DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 1 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${1} -| ${n_tunnels}= | ${40000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 614a0ab579..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 2DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 2 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${2} -| ${n_tunnels}= | ${40000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 63cee14cb8..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 4DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 4 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${4} -| ${n_tunnels}= | ${40000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index e60088cceb..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,167 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_400 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 8DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 8 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${8} -| ${n_tunnels}= | ${400} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec400tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 50a01c2e77..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_400 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 1DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 1 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${1} -| ${n_tunnels}= | ${400} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec400tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 891d7432b0..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_400 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 2DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 2 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${2} -| ${n_tunnels}= | ${400} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec400tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index aaf2f55d51..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_400 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 4DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 4 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${4} -| ${n_tunnels}= | ${400} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec400tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 12f12b8c26..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 8DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 8 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${8} -| ${n_tunnels}= | ${40} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index a849e63e8e..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 1DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 1 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${1} -| ${n_tunnels}= | ${40} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index e1d5692020..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 2DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 2 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${2} -| ${n_tunnels}= | ${40} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 889361d01b..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_40 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 4DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 4 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${4} -| ${n_tunnels}= | ${40} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec40tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 387c6592c9..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 1DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 1 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${1} -| ${n_tunnels}= | ${4} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec4tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 184aae72c4..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 2DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 2 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${2} -| ${n_tunnels}= | ${4} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec4tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 94dba3a0f0..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_4 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 4DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 4 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${4} -| ${n_tunnels}= | ${4} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec4tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 9ebafb8d92..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_5000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 8DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 8 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${8} -| ${n_tunnels}= | ${5000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec5000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 4243882930..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_5000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 1DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 1 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${1} -| ${n_tunnels}= | ${5000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec5000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 7eeb8e8747..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_5000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 2DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 2 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${2} -| ${n_tunnels}= | ${5000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec5000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 470c041cea..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_5000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 4DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 4 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${4} -| ${n_tunnels}= | ${5000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec5000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 10cd5f4835..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_60000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 8DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 8 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${8} -| ${n_tunnels}= | ${60000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec60000tnlsw-l2bd-1ch-16mif-8dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index e23d43dbe1..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_60000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 1DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 1 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${1} -| ${n_tunnels}= | ${60000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec60000tnlsw-l2bd-1ch-2mif-1dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 49765f2d26..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_60000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 2DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 2 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${2} -| ${n_tunnels}= | ${60000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec60000tnlsw-l2bd-1ch-4mif-2dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot deleted file mode 100644 index 633634984d..0000000000 --- a/tests/vpp/perf/nfv_density/dcr_memif/chain_ipsec/10ge2p1x710-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr.robot +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR | TNL_60000 -| ... | IPSEC | IPSECSW | IPSECINT | NIC_Intel-X710 | SCALE | 4DCR -| ... | DOCKER | 2R1C | NF_DENSITY | CHAIN | NF_VPPIP4 | 1DCR1T -| ... | AES_256_GCM | AES | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | container -| -| Test Template | Local Template -| -| Documentation | **RFC2544: Pkt throughput L2BD test cases with memif 1 chain -| ... | 4 docker container* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 bridge domain. -| ... | *[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:* RFC4303 and RFC2544. - -*** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so -| ... | crypto_native_plugin.so | crypto_ipsecmb_plugin.so -| ... | crypto_openssl_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 2 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${54} -| ${tg_if1_ip4}= | 192.168.10.254 -| ${dut1_if1_ip4}= | 192.168.10.1 -| ${dut1_if2_ip4}= | 100.0.0.254 -| ${dut2_if1_ip4}= | 200.0.0.1 -| ${dut2_if2_ip4}= | 192.168.20.1 -| ${tg_if2_ip4}= | 192.168.20.254 -| ${raddr_ip4}= | 20.0.0.0 -| ${laddr_ip4}= | 10.0.0.0 -| ${addr_range}= | ${24} -| ${n_instances}= | ${4} -| ${n_tunnels}= | ${60000} -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4dst${n_tunnels}-${n_instances}cnf -# Container -| ${container_engine}= | Docker -| ${container_chain_topology}= | chain_ipsec - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT1 runs IPSec tunneling AES_256_GCM config to ${n_instances}. -| | ... | containers. -| | ... | 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} -| | -| | # These are enums (not strings) so they cannot be in Variables table. -| | ${encr_alg}= | Crypto Alg AES GCM 256 -| | ${auth_alg}= | Set Variable | ${None} -| | ${ipsec_proto} = | IPsec Proto ESP -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize IPSec in 3-node circular topology -| | And Stop VPP service on all DUTs | ${nodes} -| | And VPP IPsec Create Tunnel Interfaces in Containers -| | ... | ${nodes} | ${dut1_if2_ip4} | ${dut2_if1_ip4} | ${n_tunnels} -| | ... | ${encr_alg} | ${auth_alg} | ${laddr_ip4} | ${raddr_ip4} -| | ... | ${addr_range} | ${n_instances} -| | And Start containers for test -| | ... | nf_chains=${1} | nf_nodes=${n_instances} | auto_scale=${False} -| | ... | pinning=${False} -| | And Start vswitch in container | phy_cores=${phy_cores} | rx_queues=${rxq} -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-ethip4ipsec60000tnlsw-l2bd-1ch-8mif-4dcr1c-vppip4-aes256gcm-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-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 index e6ea710db5..9fdda2e9fd 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr.robot index 31214965c3..2ff59d6b34 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-10pl-20mif-10dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-10pl-20mif-20dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-10pl-20mif-20dcr1t-vppip4-ndrpdr.robot index c9ad2f4d28..cc6062bcb4 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-10pl-20mif-20dcr1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-10pl-20mif-20dcr1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | Test Template | Local Template | -| Documentation | **RFC2544: Pkt throughput L2BD test cases with 20 memif 10 -| ... | pipelines 20 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 +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 20 memif 10 \ +| ... | pipelines 20 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 0d7d766cf2..55c0bd1fbb 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr.robot index 19a0af34b6..9ef54a8f3d 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-10dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 957db35508..c9bc289f2b 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr.robot index 8731d9f11a..e8066d1cc4 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-1dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 56def54571..1e7754d7e8 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr.robot index cb7828e453..fb1e42e547 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-2dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 6a048b9aab..ec54f7caa3 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr.robot index 26d257f4f5..583af8c292 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-4dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index e2a2515ec9..7d21c74674 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr.robot index f19d364f9c..259c3a0544 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-6dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index cb57fee6a3..ea09852ba3 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr.robot index 5b30a24c37..ca662a36c3 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-1pl-2mif-8dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 60a1b48b0d..5dda0b7610 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr.robot index 8c907242c1..0877b267a2 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-12dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 288ce8b750..4729488731 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr.robot index c441196e3b..a71f9463fb 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -110,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -118,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -126,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -133,3 +149,7 @@ | IMIX-2c-eth-l2bd-2pl-4mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-2pl-4mif-16dcr2t-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-20dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-20dcr1t-vppip4-ndrpdr.robot index 810e1b1484..3915419ff5 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-20dcr1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-20dcr1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | Test Template | Local Template | -| Documentation | **RFC2544: Pkt throughput L2BD test cases with 4 memif 2 -| ... | pipelines 20 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 +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 4memif 2 \ +| ... | pipelines 20 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index e8c3346edb..0c8f3fe524 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr.robot index ecdaae2bbf..938628cd1e 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-2dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index d957f983dd..cbfc5e0e22 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 4memif 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr.robot index fcb836c69c..be2df47398 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-4dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 4memif 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 10b5beebda..773a612fea 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr.robot index 032b36f11c..8cbfc08df2 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-4mif-8dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index ed28142fa6..6184611fe1 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr.robot index 7862f04471..e71b7dffc7 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-2pl-8mif-4dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index f0b77a13bd..77143c41a6 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr.robot index f3caf18b14..2e418d1577 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -110,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -118,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -126,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -133,3 +149,7 @@ | IMIX-2c-eth-l2bd-4pl-8mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-4pl-8mif-16dcr2t-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-24dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-24dcr1t-vppip4-ndrpdr.robot index 973e016a09..fdd9ed6b3e 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-24dcr1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-24dcr1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -27,31 +27,35 @@ | | Test Template | Local Template | -| Documentation | **RFC2544: Pkt throughput L2BD test cases with 8 memif 4 -| ... | pipelines 24 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 +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 8memif 4 \ +| ... | pipelines 24 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -110,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-4pl-8mif-24dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-4pl-8mif-24dcr1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -118,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-4pl-8mif-24dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-4pl-8mif-24dcr1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -126,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-4pl-8mif-24dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-4pl-8mif-24dcr1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -133,3 +149,7 @@ | IMIX-2c-eth-l2bd-4pl-8mif-24dcr1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-4pl-8mif-24dcr1t-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-8dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-8dcr1t-vppip4-ndrpdr.robot index ed559d67a7..e82ed38bab 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr.robot index b9b7686af9..e6717abfaf 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-4pl-8mif-8dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 8f4cd6c96d..850b170ec4 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr.robot index a710d05ca0..61c01b0f99 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-12dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-24dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-24dcr1t-vppip4-ndrpdr.robot index 14b229bade..84e66e9412 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-24dcr1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-24dcr1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -27,31 +27,35 @@ | | Test Template | Local Template | -| Documentation | **RFC2544: Pkt throughput L2BD test cases with 12 memif 6 -| ... | pipelines 24 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 +| Documentation | **RFC2544: Pkt throughput L2BD test cases with 12memif 6 \ +| ... | pipelines 24 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -110,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-6pl-12mif-24dcr1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-6pl-12mif-24dcr1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -118,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-6pl-12mif-24dcr1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-6pl-12mif-24dcr1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -126,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-6pl-12mif-24dcr1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-6pl-12mif-24dcr1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -133,3 +149,7 @@ | IMIX-2c-eth-l2bd-6pl-12mif-24dcr1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-6pl-12mif-24dcr1t-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 index 1518a7c587..6b8c379f12 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr.robot index 1456aab860..4c8b4e10f3 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-6pl-12mif-6dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index a55dbb7c52..a80ad8e1d4 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr.robot index 2302bdd8ab..8bad579f89 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -110,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -118,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -126,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -133,3 +149,7 @@ | IMIX-2c-eth-l2bd-8pl-16mif-16dcr2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-8pl-16mif-16dcr2t-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-8dcr1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-8dcr1t-vppip4-ndrpdr.robot index 106da548f8..d4328b0690 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr.robot index 950e6dd71e..5386e38e37 100644 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/2n-10ge2p1x710-eth-l2bd-8pl-16mif-8dcr2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,35 @@ | | 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 +| 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 is 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index ec754aa261..e22f6de5c3 100755 --- a/tests/vpp/perf/nfv_density/dcr_memif/pipeline/regenerate_testcases.py +++ b/tests/vpp/perf/nfv_density/dcr_memif/pipeline/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr.robot index a79f545068..242b330fc7 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-10ch-20vh-10vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,36 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 2eb3af6d44..756a61a819 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,36 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-10ch-40vh-20vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-10ch-40vh-20vm1t-vppip4-ndrpdr.robot index 6c048c454f..18d3a22fa0 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-10ch-40vh-20vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-10ch-40vh-20vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,36 @@ | Test Template | Local Template | | Documentation -| ... | *RFC2544: Pkt throughput L2BD test cases with 40 vhost 10 chains 20 VMs* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | **RFC2544: Pkt throughput L2BD test cases with 40 vhost 10 chains \ +| ... | 20 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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr.robot index 95b749e2e5..6042130a57 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-12vh-6vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 100bee4293..6985539fea 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr.robot index 7fd9b3b7d7..de7d5b8ecd 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-16vh-8vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index aa07a8304d..faa7db91d7 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr.robot index b35265f368..21d1bcd11f 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-20vh-10vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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 +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544 *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 3caa0f46ff..5a3601a73a 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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 +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544 *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr.robot index 69bc78e26c..adb207c73a 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-2vh-1vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 8ea75d90c7..25d63926db 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr.robot index 6cf4d81688..0528c77dbe 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-4vh-2vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 3d25c80d72..eafc00715e 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr.robot index f68b45f751..28137e7d46 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-1ch-8vh-4vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index cc4c3b731e..ecd105cdba 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr.robot index 9fd2f88a1c..ff6f0f0fa5 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-16vh-8vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 0982a01a73..e18c818ac1 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr.robot index 9908589362..41ac854ff6 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-24vh-12vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,36 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 2f8e26ce98..48281fa90d 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,36 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 5f45eaba32..74106b0465 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,36 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr.robot index f59c70e386..c5ef431c21 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -28,30 +28,36 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -108,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -116,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -124,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -131,3 +149,7 @@ | IMIX-2c-eth-l2bd-2ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-2ch-32vh-16vm2t-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-40vh-20vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-40vh-20vm1t-vppip4-ndrpdr.robot index a3f0ca11cb..43c3a6ac81 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-40vh-20vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-40vh-20vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,36 @@ | Test Template | Local Template | | Documentation -| ... | *RFC2544: Pkt throughput L2BD test cases with 40 vhost 2 chains 20 VMs* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | **RFC2544: Pkt throughput L2BD test cases with 40 vhost 2 chains \ +| ... | 20 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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr.robot index 140a20e59c..ca64b8c0b2 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-4vh-2vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index b8224aed3b..3258c3fbe5 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr.robot index 1ae2e30863..7c421ec773 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-2ch-8vh-4vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index c5856d4285..5b97bda963 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr.robot index b7469d30d7..cd0a5eb4d3 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-16vh-8vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 77185c9b0a..6da75ccd26 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 6045c4982b..92269e7cdd 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,36 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr.robot index 30b52e73c9..bbee99fbfc 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -28,30 +28,36 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -108,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -116,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -124,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -131,3 +149,7 @@ | IMIX-2c-eth-l2bd-4ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-4ch-32vh-16vm2t-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-48vh-24vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-48vh-24vm1t-vppip4-ndrpdr.robot index 979431181e..7fdc0fcbee 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-48vh-24vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-48vh-24vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -28,30 +28,36 @@ | Test Template | Local Template | | Documentation -| ... | *RFC2544: Pkt throughput L2BD test cases with 48 vhost 4 chains 24 VMs* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | **RFC2544: Pkt throughput L2BD test cases with 48 vhost 4 chains \ +| ... | 24 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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -108,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-4ch-48vh-24vm1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-4ch-48vh-24vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -116,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-4ch-48vh-24vm1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-4ch-48vh-24vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -124,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-4ch-48vh-24vm1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-4ch-48vh-24vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -131,3 +149,7 @@ | IMIX-2c-eth-l2bd-4ch-48vh-24vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-4ch-48vh-24vm1t-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-4vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr.robot index 658b7aaa24..0043f35093 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-4ch-8vh-4vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index c626e02b1c..8cbbf6cd15 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr.robot index da2fb95c1a..97e03158f9 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-12vh-6vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 95ab703e10..477509b177 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr.robot index 634532a8f5..1f031c184c 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-24vh-12vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,36 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index b0c525cbdd..594365240b 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,36 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-48vh-24vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-48vh-24vm1t-vppip4-ndrpdr.robot index 854d47acb2..45c50b0503 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-48vh-24vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-6ch-48vh-24vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -28,30 +28,36 @@ | Test Template | Local Template | | Documentation -| ... | *RFC2544: Pkt throughput L2BD test cases with 48 vhost 6 chains 24 VMs* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| ... | **RFC2544: Pkt throughput L2BD test cases with 48 vhost 6 chains \ +| ... | 24 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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -108,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-6ch-48vh-24vm1t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-6ch-48vh-24vm1t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -116,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-6ch-48vh-24vm1t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-6ch-48vh-24vm1t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -124,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-6ch-48vh-24vm1t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-6ch-48vh-24vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -131,3 +149,7 @@ | IMIX-2c-eth-l2bd-6ch-48vh-24vm1t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-6ch-48vh-24vm1t-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-8vm1t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr.robot index 9715bbb2e7..69ac30d6fd 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-16vh-8vm1t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index a5567f5b41..3691c96264 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,35 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +76,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). 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 index 1df17cc3a8..bb4e296ffa 100644 --- 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 @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,30 +28,36 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr.robot index 254e650230..58fca61c13 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/2n-10ge2p1x710-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2024 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: @@ -28,30 +28,36 @@ | 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\ +| ... | **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\ +| ... | +| ... | - **[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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,9 +77,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -108,6 +114,10 @@ | | [Tags] | 64B | 2C | | frame_size=${64} | phy_cores=${2} +| 64B-4c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr +| | [Tags] | 64B | 4C +| | frame_size=${64} | phy_cores=${4} + | 1518B-1c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 1518B | 1C | | frame_size=${1518} | phy_cores=${1} @@ -116,6 +126,10 @@ | | [Tags] | 1518B | 2C | | frame_size=${1518} | phy_cores=${2} +| 1518B-4c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr +| | [Tags] | 1518B | 4C +| | frame_size=${1518} | phy_cores=${4} + | 9000B-1c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | 9000B | 1C | | frame_size=${9000} | phy_cores=${1} @@ -124,6 +138,10 @@ | | [Tags] | 9000B | 2C | | frame_size=${9000} | phy_cores=${2} +| 9000B-4c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr +| | [Tags] | 9000B | 4C +| | frame_size=${9000} | phy_cores=${4} + | IMIX-1c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | IMIX | 1C | | frame_size=IMIX_v4_1 | phy_cores=${1} @@ -131,3 +149,7 @@ | IMIX-2c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr | | [Tags] | IMIX | 2C | | frame_size=IMIX_v4_1 | phy_cores=${2} + +| IMIX-4c-eth-l2bd-8ch-32vh-16vm2t-vppip4-ndrpdr +| | [Tags] | IMIX | 4C +| | frame_size=IMIX_v4_1 | phy_cores=${4} 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 index ec754aa261..e22f6de5c3 100755 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain/regenerate_testcases.py +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-1ach-20vh-10vm1t-testpmd-reconf.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-1ach-20vh-10vm1t-testpmd-reconf.robot index eb3abb300c..173325ca19 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-1ach-20vh-10vm1t-testpmd-reconf.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-1ach-20vh-10vm1t-testpmd-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,31 +28,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet loss L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is \ | ... | tested with ${nic_name}. -| ... | *[Ver] TG verification:* TG finds and throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance, then measured loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[Ver] TG verification:** TG finds and throughput NDR (Non Drop \ +| ... | Rate) with zero packet loss tolerance, then measured loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -105,8 +109,7 @@ | | And Configure chains of NFs connected via vhost-user | | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} | | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_io -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And Initialize layer dot1q | | ... | count=${nf_total_chains} | vlan_per_chain=${False} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-1ach-20vh-10vm2t-testpmd-reconf.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-1ach-20vh-10vm2t-testpmd-reconf.robot index 01886d9f67..781784233c 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-1ach-20vh-10vm2t-testpmd-reconf.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-1ach-20vh-10vm2t-testpmd-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,31 +28,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet loss L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is \ | ... | tested with ${nic_name}. -| ... | *[Ver] TG verification:* TG finds and throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance, then measured loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[Ver] TG verification:** TG finds and throughput NDR (Non Drop \ +| ... | Rate) with zero packet loss tolerance, then measured loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -105,8 +109,7 @@ | | And Configure chains of NFs connected via vhost-user | | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} | | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_io -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And Initialize layer dot1q | | ... | count=${nf_total_chains} | vlan_per_chain=${False} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-20vh-10vm1t-testpmd-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-20vh-10vm1t-testpmd-ndrpdr.robot index 1ca55ea361..36df3550b9 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-20vh-10vm1t-testpmd-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-20vh-10vm1t-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | 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, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[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, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +80,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-20vh-10vm2t-testpmd-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-20vh-10vm2t-testpmd-ndrpdr.robot index a99fe586aa..5ba318e62a 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-20vh-10vm2t-testpmd-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-10ch-20vh-10vm2t-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | 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, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[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, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +80,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-1ach-2vh-1vm1t-testpmd-reconf.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-1ach-2vh-1vm1t-testpmd-reconf.robot index adf9dbc0f7..850e1d8b22 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-1ach-2vh-1vm1t-testpmd-reconf.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-1ach-2vh-1vm1t-testpmd-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,31 +28,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet loss L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is \ | ... | tested with ${nic_name}. -| ... | *[Ver] TG verification:* TG finds and throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance, then measured loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[Ver] TG verification:** TG finds and throughput NDR (Non Drop \ +| ... | Rate) with zero packet loss tolerance, then measured loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -105,8 +109,7 @@ | | And Configure chains of NFs connected via vhost-user | | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} | | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_io -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And Initialize layer dot1q | | ... | count=${nf_total_chains} | vlan_per_chain=${False} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-1ach-2vh-1vm2t-testpmd-reconf.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-1ach-2vh-1vm2t-testpmd-reconf.robot index 7319d68ba4..170e09dff8 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-1ach-2vh-1vm2t-testpmd-reconf.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-1ach-2vh-1vm2t-testpmd-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,31 +28,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet loss L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is \ | ... | tested with ${nic_name}. -| ... | *[Ver] TG verification:* TG finds and throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance, then measured loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[Ver] TG verification:** TG finds and throughput NDR (Non Drop \ +| ... | Rate) with zero packet loss tolerance, then measured loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -105,8 +109,7 @@ | | And Configure chains of NFs connected via vhost-user | | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} | | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_io -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And Initialize layer dot1q | | ... | count=${nf_total_chains} | vlan_per_chain=${False} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-2vh-1vm1t-testpmd-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-2vh-1vm1t-testpmd-ndrpdr.robot index 3ded22e15f..639a22d307 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-2vh-1vm1t-testpmd-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-2vh-1vm1t-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | 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, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[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, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +80,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-2vh-1vm2t-testpmd-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-2vh-1vm2t-testpmd-ndrpdr.robot index 85b502ada3..7756f8fb37 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-2vh-1vm2t-testpmd-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-1ch-2vh-1vm2t-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | 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, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[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, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +80,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-1ach-4vh-2vm1t-testpmd-reconf.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-1ach-4vh-2vm1t-testpmd-reconf.robot index 697e5fecee..cb668f5fbf 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-1ach-4vh-2vm1t-testpmd-reconf.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-1ach-4vh-2vm1t-testpmd-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,31 +28,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet loss L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is \ | ... | tested with ${nic_name}. -| ... | *[Ver] TG verification:* TG finds and throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance, then measured loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[Ver] TG verification:** TG finds and throughput NDR (Non Drop \ +| ... | Rate) with zero packet loss tolerance, then measured loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -105,8 +109,7 @@ | | And Configure chains of NFs connected via vhost-user | | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} | | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_io -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And Initialize layer dot1q | | ... | count=${nf_total_chains} | vlan_per_chain=${False} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-1ach-4vh-2vm2t-testpmd-reconf.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-1ach-4vh-2vm2t-testpmd-reconf.robot index fe93ae2b99..4dabec5aaa 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-1ach-4vh-2vm2t-testpmd-reconf.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-1ach-4vh-2vm2t-testpmd-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,31 +28,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet loss L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is \ | ... | tested with ${nic_name}. -| ... | *[Ver] TG verification:* TG finds and throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance, then measured loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[Ver] TG verification:** TG finds and throughput NDR (Non Drop \ +| ... | Rate) with zero packet loss tolerance, then measured loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -105,8 +109,7 @@ | | And Configure chains of NFs connected via vhost-user | | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} | | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_io -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And Initialize layer dot1q | | ... | count=${nf_total_chains} | vlan_per_chain=${False} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-4vh-2vm1t-testpmd-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-4vh-2vm1t-testpmd-ndrpdr.robot index d101240ef8..f78823ad68 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-4vh-2vm1t-testpmd-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-4vh-2vm1t-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | 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, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[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, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +80,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-4vh-2vm2t-testpmd-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-4vh-2vm2t-testpmd-ndrpdr.robot index a8c898249d..6d05b5ec62 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-4vh-2vm2t-testpmd-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-2ch-4vh-2vm2t-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | 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, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[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, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +80,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-1ach-8vh-4vm1t-testpmd-reconf.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-1ach-8vh-4vm1t-testpmd-reconf.robot index fb4ec99418..c0c9ccbd10 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-1ach-8vh-4vm1t-testpmd-reconf.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-1ach-8vh-4vm1t-testpmd-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,31 +28,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is \ | ... | tested with ${nic_name}. -| ... | *[Ver] TG verification:* TG finds and throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance, then measured loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[Ver] TG verification:** TG finds and throughput NDR (Non Drop \ +| ... | Rate) with zero packet loss tolerance, then measured loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -105,8 +109,7 @@ | | And Configure chains of NFs connected via vhost-user | | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} | | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_io -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And Initialize layer dot1q | | ... | count=${nf_total_chains} | vlan_per_chain=${False} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-1ach-8vh-4vm2t-testpmd-reconf.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-1ach-8vh-4vm2t-testpmd-reconf.robot index cbcccfc194..ce8612ca12 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-1ach-8vh-4vm2t-testpmd-reconf.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-1ach-8vh-4vm2t-testpmd-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,31 +28,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is \ | ... | tested with ${nic_name}. -| ... | *[Ver] TG verification:* TG finds and throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance, then measured loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[Ver] TG verification:** TG finds and throughput NDR (Non Drop \ +| ... | Rate) with zero packet loss tolerance, then measured loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -105,8 +109,7 @@ | | And Configure chains of NFs connected via vhost-user | | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} | | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_io -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And Initialize layer dot1q | | ... | count=${nf_total_chains} | vlan_per_chain=${False} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-8vh-4vm1t-testpmd-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-8vh-4vm1t-testpmd-ndrpdr.robot index 7dd950e651..403cd07e42 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-8vh-4vm1t-testpmd-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-8vh-4vm1t-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | 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, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[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, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +80,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-8vh-4vm2t-testpmd-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-8vh-4vm2t-testpmd-ndrpdr.robot index 1ddc8250f4..6826637127 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-8vh-4vm2t-testpmd-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-4ch-8vh-4vm2t-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | 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, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[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, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +80,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-12vh-6vm1t-testpmd-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-12vh-6vm1t-testpmd-ndrpdr.robot index c62a4f5676..ddc29e3230 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-12vh-6vm1t-testpmd-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-12vh-6vm1t-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | 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, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[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, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +80,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-12vh-6vm2t-testpmd-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-12vh-6vm2t-testpmd-ndrpdr.robot index 9848d01f5d..919d92dc6e 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-12vh-6vm2t-testpmd-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-12vh-6vm2t-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | 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, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[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, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +80,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-1ach-12vh-6vm1t-testpmd-reconf.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-1ach-12vh-6vm1t-testpmd-reconf.robot index 8d21fee2f0..6b81b4fea9 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-1ach-12vh-6vm1t-testpmd-reconf.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-1ach-12vh-6vm1t-testpmd-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,31 +28,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet loss L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is \ | ... | tested with ${nic_name}. -| ... | *[Ver] TG verification:* TG finds and throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance, then measured loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[Ver] TG verification:** TG finds and throughput NDR (Non Drop \ +| ... | Rate) with zero packet loss tolerance, then measured loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -105,8 +109,7 @@ | | And Configure chains of NFs connected via vhost-user | | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} | | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_io -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And Initialize layer dot1q | | ... | count=${nf_total_chains} | vlan_per_chain=${False} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-1ach-12vh-6vm2t-testpmd-reconf.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-1ach-12vh-6vm2t-testpmd-reconf.robot index f907f807a3..62542a295b 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-1ach-12vh-6vm2t-testpmd-reconf.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-6ch-1ach-12vh-6vm2t-testpmd-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,31 +28,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet loss L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is \ | ... | tested with ${nic_name}. -| ... | *[Ver] TG verification:* TG finds and throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance, then measured loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[Ver] TG verification:** TG finds and throughput NDR (Non Drop \ +| ... | Rate) with zero packet loss tolerance, then measured loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -105,8 +109,7 @@ | | And Configure chains of NFs connected via vhost-user | | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} | | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_io -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And Initialize layer dot1q | | ... | count=${nf_total_chains} | vlan_per_chain=${False} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-16vh-8vm1t-testpmd-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-16vh-8vm1t-testpmd-ndrpdr.robot index a00bd2df8c..d3b77be2f1 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-16vh-8vm1t-testpmd-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-16vh-8vm1t-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | 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, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[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, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +80,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-16vh-8vm2t-testpmd-ndrpdr.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-16vh-8vm2t-testpmd-ndrpdr.robot index a89d47a730..3353225f00 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-16vh-8vm2t-testpmd-ndrpdr.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-16vh-8vm2t-testpmd-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet throughput L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | 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, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[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, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +80,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-1ach-16vh-8vm1t-testpmd-reconf.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-1ach-16vh-8vm1t-testpmd-reconf.robot index 8f82411342..90e5f1458d 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-1ach-16vh-8vm1t-testpmd-reconf.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-1ach-16vh-8vm1t-testpmd-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,31 +28,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet loss L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is \ | ... | tested with ${nic_name}. -| ... | *[Ver] TG verification:* TG finds and throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance, then measured loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[Ver] TG verification:** TG finds and throughput NDR (Non Drop \ +| ... | Rate) with zero packet loss tolerance, then measured loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -105,8 +109,7 @@ | | And Configure chains of NFs connected via vhost-user | | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} | | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_io -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And Initialize layer dot1q | | ... | count=${nf_total_chains} | vlan_per_chain=${False} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-1ach-16vh-8vm2t-testpmd-reconf.robot b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-1ach-16vh-8vm2t-testpmd-reconf.robot index d34c71d5c0..ddb9c88b1a 100644 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-1ach-16vh-8vm2t-testpmd-reconf.robot +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/2n-10ge2p1x710-dot1qip4vxlan-l2bd-8ch-1ach-16vh-8vm2t-testpmd-reconf.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,31 +28,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet loss L2BD test cases with Dot1Q and -| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology\ +| Documentation | **RFC2544: Packet loss L2BD test cases with Dot1Q and +| ... | VXLANoIPv4 with ${nf_chains} instances, ${nf_nodes} VMs per instance.** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for L2\ -| ... | switching of IPv4. Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is applied on link\ -| ... | between DUT1 and TG. -| ... | *[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 testpmd l2xc\ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is\ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 for \ +| ... | l2 cross-connect switching of IPv4 Dot1q-IPv4-UDP-VXLAN-Eth-IPv4 is \ +| ... | applied on link between DUT1 and TG. +| ... | +| ... | - **[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 testpmd l2xc \ +| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is \ | ... | tested with ${nic_name}. -| ... | *[Ver] TG verification:* TG finds and throughput NDR (Non Drop\ -| ... | Rate) with zero packet loss tolerance, then measured loss at this load\ -| ... | while additional chain is configured.\ -| ... | Test packets are generated by TG on links to DUTs. TG traffic profile\ -| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per\ -| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4\ -| ... | header, UPD header, VXLAN header and static payload. MAC addresses are\ +| ... | +| ... | - **[Ver] TG verification:** TG finds and throughput NDR (Non Drop \ +| ... | Rate) with zero packet loss tolerance, then measured loss at this load \ +| ... | while additional chain is configured. \ +| ... | Test packets are generated by TG on links to DUTs. TG traffic profile \ +| ... | contains two L3 flow-groups (flow-group per direction, 256 flows per \ +| ... | flow-group) with all packets containing Ethernet header with .1Q, IPv4 \ +| ... | header, UPD header, VXLAN header and static payload. MAC addresses are \ | ... | matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,9 +78,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs Dot1Q-IP4-Vxlan L2BD switching config.\ +| | ... | - **[Cfg]** DUT runs Dot1Q-IP4-Vxlan L2BD switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure packet loss during reconfig at NDR load.\ +| | ... | - **[Ver]** Measure packet loss during reconfig at NDR load. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). @@ -105,8 +109,7 @@ | | And Configure chains of NFs connected via vhost-user | | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} | | ... | use_tuned_cfs=${False} | auto_scale=${False} | vnf=testpmd_io -| | ${bidirectional_throughput}= | Find Throughput Using MLRsearch -| | ${unidirectional_throughput}= | Evaluate | ${bidirectional_throughput} / 2.0 +| | ${unidirectional_throughput} = | Find Throughput Using MLRsearch | | Start Traffic on Background | ${unidirectional_throughput} | | And Initialize layer dot1q | | ... | count=${nf_total_chains} | vlan_per_chain=${False} diff --git a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/regenerate_testcases.py b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/regenerate_testcases.py index 2754aff34f..842b53b1c7 100755 --- a/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/regenerate_testcases.py +++ b/tests/vpp/perf/nfv_density/vm_vhost/chain_dot1qip4vxlan/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/srv6/10ge2p1x710-ethip6ip6-ip6base-srv6enc1sid-ndrpdr.robot b/tests/vpp/perf/srv6/10ge2p1x710-ethip6ip6-ip6base-srv6enc1sid-ndrpdr.robot index e0968ec960..1b868a80ad 100644 --- a/tests/vpp/perf/srv6/10ge2p1x710-ethip6ip6-ip6base-srv6enc1sid-ndrpdr.robot +++ b/tests/vpp/perf/srv6/10ge2p1x710-ethip6ip6-ip6base-srv6enc1sid-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,32 +27,38 @@ | | Test Template | Local Template | -| Documentation | *Packet throughput Segment routing over IPv6 dataplane with\ -| ... | one SID (SRH not inserted) test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6-IPv6 on DUT1-DUT2, Eth-IPv6 on\ -| ... | TG-DUTn for IPv6 routing over SRv6. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and static route, SR policy and steering policy for one\ -| ... | direction and one SR behaviour (function) - End.DX6 - for other\ -| ... | direction. DUT1 and DUT2 are 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, 253 flows per flow-group) with\ -| ... | all packets containing Ethernet header,IPv6 header with static payload.\ +| Documentation | **Packet throughput Segment routing over IPv6 dataplane with \ +| ... | one SID (SRH not inserted) test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6-IPv6 on DUT1-DUT2, \ +| ... | Eth-IPv6 on TG-DUTn for IPv6 routing over SRv6. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and static route, SR policy and steering policy for one \ +| ... | direction and one SR behaviour (function) - End.DX6 - for other \ +| ... | direction. DUT1 and DUT2 are 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, 253 flows per flow-group) with \ +| ... | all packets containing Ethernet header,IPv6 header with static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* SRv6 Network Programming -\ -| ... | draft 3. +| ... | +| ... | - **[Ref] Applicable standard specifications:** SRv6 Network \ +| ... | Programming - draft 3. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -80,16 +86,16 @@ | ${dut2_if2_ip6}= | 2001:2::1 | ${prefix}= | ${64} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT1 and DUT2 are configured with IPv6\ -| | ... | routing and static route, SR policy and steering policy for one\ -| | ... | direction and one SR behaviour (function) - End - for other direction. +| | ... | - **[Cfg]** DUT1 and DUT2 are configured with IPv6 routing \ +| | ... | and static route, SR policy and steering policy for one direction \ +| | ... | and one SR behaviour (function) - End - for other direction. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6enc2sids-ndrpdr.robot b/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6enc2sids-ndrpdr.robot index 9fe9266a77..12a0c4360f 100644 --- a/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6enc2sids-ndrpdr.robot +++ b/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6enc2sids-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,32 +27,38 @@ | | Test Template | Local Template | -| Documentation | *Packet throughput Segment routing over IPv6 dataplane with\ -| ... | two SIDs (SRH inserted) test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6-SRH-IPv6 on DUT1-DUT2, Eth-IPv6\ -| ... | on TG-DUTn for IPv6 routing over SRv6. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and static route, SR policy and steering policy for one\ -| ... | direction and two SR behaviours (functions) - End and End.DX6 - for\ -| ... | other direction. DUT1 and DUT2 are 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, 253 flows per flow-group) with\ -| ... | all packets containing Ethernet header,IPv6 header with static payload.\ +| Documentation | **Packet throughput Segment routing over IPv6 dataplane with \ +| ... | two SIDs (SRH inserted) test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6-SRH-IPv6 on DUT1-DUT2, \ +| ... | Eth-IPv6 on TG-DUTn for IPv6 routing over SRv6. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and static route, SR policy and steering policy for one \ +| ... | direction and two SR behaviours (functions) - End and End.DX6 - for \ +| ... | other direction. DUT1 and DUT2 are 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, 253 flows per flow-group) with \ +| ... | all packets containing Ethernet header,IPv6 header with static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* SRv6 Network Programming -\ -| ... | draft 3. +| ... | +| ... | - **[Ref] Applicable standard specifications:** SRv6 Network \ +| ... | Programming - draft 3. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -83,17 +89,17 @@ | ${dut2_if2_ip6}= | 2001:2::1 | ${prefix}= | ${64} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT1 and DUT2 are configured with IPv6\ -| | ... | routing and static route, SR policy and steering policy for one\ -| | ... | direction and two SR behaviours (functions) - End and End.DX6 - for\ -| | ... | other direction. +| | ... | - **[Cfg]** DUT1 and DUT2 are configured with IPv6 \ +| | ... | routing and static route, SR policy and steering policy for one \ +| | ... | direction and two SR behaviours (functions) - End and End. DX6 - for \ +| | ... | other direction. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrpdr.robot b/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrpdr.robot index 093528da1e..8e08ae36e8 100644 --- a/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrpdr.robot +++ b/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,32 +27,38 @@ | | Test Template | Local Template | -| Documentation | *Packet throughput Segment routing over IPv6 dataplane with\ -| ... | two SIDs (SRH inserted) without decapsulation test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6-SRH-IPv6 on DUT1-DUT2 and\ +| Documentation | **Packet throughput Segment routing over IPv6 dataplane with \ +| ... | two SIDs (SRH inserted) without decapsulation test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6-SRH-IPv6 on DUT1-DUT2 and \ | ... | DUTn->TG, Eth-IPv6 on TG->DUTn for IPv6 routing over SRv6. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and static route, SR policy and steering policy for one\ -| ... | direction and one SR behaviour (function) - End - for other direction.\ -| ... | DUT1 and DUT2 are 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, 253 flows per flow-group) with\ -| ... | all packets containing Ethernet header,IPv6 header with static payload.\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and static route, SR policy and steering policy for one \ +| ... | direction and one SR behaviour (function) - End - for other direction. \ +| ... | DUT1 and DUT2 are 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, 253 flows per flow-group) with \ +| ... | all packets containing Ethernet header,IPv6 header with static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* SRv6 Network Programming -\ -| ... | draft 3. +| ... | +| ... | - **[Ref] Applicable standard specifications:** SRv6 Network \ +| ... | Programming - draft 3. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -83,16 +89,16 @@ | ${dut2_if2_ip6}= | 2001:2::1 | ${prefix}= | ${64} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT1 and DUT2 are configured with IPv6\ -| | ... | routing and static route, SR policy and steering policy for one\ -| | ... | direction and one SR behaviour (function) - End - for other direction. +| | ... | - **[Cfg]** DUT1 and DUT2 are configured with IPv6 routing \ +| | ... | and static route, SR policy and steering policy for one direction \ +| | ... | and one SR behaviour (function) - End - for other direction. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-dyn-ndrpdr.robot b/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-dyn-ndrpdr.robot index c3fab92f9d..dbaa5f3282 100644 --- a/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-dyn-ndrpdr.robot +++ b/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-dyn-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,32 +27,40 @@ | | Test Template | Local Template | -| Documentation | *Packet throughput Segment routing over IPv6 dataplane with\ -| ... | Dynamic SRv6 proxy test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6-SRH-IPv6 on DUT1-DUT2 and\ +| Documentation | **Packet throughput Segment routing over IPv6 dataplane with \ +| ... | Dynamic SRv6 proxy test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6-SRH-IPv6 on DUT1-DUT2 and \ | ... | DUTn->TG, Eth-IPv6 on TG->DUTn and DUTn-CNT for IPv6 routing over SRv6. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and static route, SR policy and steering policy for one\ -| ... | direction and one SR behaviour (function) - End.AD - for other\ -| ... | direction. DUT1 and DUT2 are 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, 253 flows per flow-group) with\ -| ... | all packets containing Ethernet header,IPv6 header with static payload.\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and static route, SR policy and steering policy for one \ +| ... | direction and one SR behaviour (function) - End.AD - for other \ +| ... | direction. DUT1 and DUT2 are 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, 253 flows per flow-group) with \ +| ... | all packets containing Ethernet header,IPv6 header with static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* SRv6 Network Programming -\ -| ... | draft 3 and Segment Routing for Service Chaining - internet draft 01. +| ... | +| ... | - **[Ref] Applicable standard specifications:** SRv6 Network \ +| ... | Programming - draft 3.and Segment Routing for Service Chaining \ +| ... | - internet draft 01. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so | srv6ad_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so +| ... | srv6ad_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -91,7 +99,7 @@ | ${prefix}= | ${64} | ${mem_prefix}= | ${128} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain @@ -99,11 +107,11 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT1 and DUT2 are configured with IPv6\ -| | ... | routing and static route, SR policy and steering policy for one\ -| | ... | direction and SR behaviour (function) - End.AD - for other direction. +| | ... | - **[Cfg]** DUT1 and DUT2 are configured with IPv6 routing \ +| | ... | and static route, SR policy and steering policy for one direction \ +| | ... | and SR behaviour (function) - End.AD - for other direction. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-masq-ndrpdr.robot b/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-masq-ndrpdr.robot index 0eb6090ec1..8692273149 100644 --- a/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-masq-ndrpdr.robot +++ b/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-masq-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,32 +27,40 @@ | | Test Template | Local Template | -| Documentation | *Packet throughput Segment routing over IPv6 dataplane with\ -| ... | Masquerading SRv6 proxy test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6-SRH-IPv6 on DUT1-DUT2, DUTn-CNT\ -| ... | and DUTn->TG, Eth-IPv6 on TG->DUTn for IPv6 routing over SRv6. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and static route, SR policy and steering policy for one\ -| ... | direction and one SR behaviour (function) - End.AM - for other\ -| ... | direction. DUT1 and DUT2 are 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, 253 flows per flow-group) with\ -| ... | all packets containing Ethernet header,IPv6 header with static payload.\ +| Documentation | **Packet throughput Segment routing over IPv6 dataplane with \ +| ... | Masquerading SRv6 proxy test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6-SRH-IPv6 on DUT1-DUT2, \ +| ... | DUTn-CNT and DUTn->TG, Eth-IPv6 on TG->DUTn for IPv6 routing over SRv6. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and static route, SR policy and steering policy for one \ +| ... | direction and one SR behaviour (function) - End.AM - for other \ +| ... | direction. DUT1 and DUT2 are 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, 253 flows per flow-group) with \ +| ... | all packets containing Ethernet header,IPv6 header with static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* SRv6 Network Programming -\ -| ... | draft 3 and Segment Routing for Service Chaining - internet draft 01. +| ... | +| ... | - **[Ref] Applicable standard specifications:** SRv6 Network \ +| ... | Programming - draft 3.and Segment Routing for Service Chaining \ +| ... | - internet draft 01. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so | srv6am_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so +| ... | srv6am_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -91,7 +99,7 @@ | ${prefix}= | ${64} | ${mem_prefix}= | ${128} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain @@ -99,11 +107,11 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT1 and DUT2 are configured with IPv6\ -| | ... | routing and static route, SR policy and steering policy for one\ -| | ... | direction and SR behaviour (function) - End.AM - for other direction. +| | ... | - **[Cfg]** DUT1 and DUT2 are configured with IPv6 routing \ +| | ... | and static route, SR policy and steering policy for one direction \ +| | ... | and SR behaviour (function) - End.AM - for other direction. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-stat-ndrpdr.robot b/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-stat-ndrpdr.robot index 63d9751911..718958f370 100644 --- a/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-stat-ndrpdr.robot +++ b/tests/vpp/perf/srv6/10ge2p1x710-ethip6srhip6-ip6base-srv6proxy-stat-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,32 +27,40 @@ | | Test Template | Local Template | -| Documentation | *Packet throughput Segment routing over IPv6 dataplane with\ -| ... | Static SRv6 proxy test cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv6-SRH-IPv6 on DUT1-DUT2 and\ +| Documentation | **Packet throughput Segment routing over IPv6 dataplane with \ +| ... | Static SRv6 proxy test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv6-SRH-IPv6 on DUT1-DUT2 and \ | ... | DUTn->TG, Eth-IPv6 on TG->DUTn and DUTn-CNT for IPv6 routing over SRv6. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv6\ -| ... | routing and static route, SR policy and steering policy for one\ -| ... | direction and one SR behaviour (function) - End.AS - for other\ -| ... | direction. DUT1 and DUT2 are 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, 253 flows per flow-group) with\ -| ... | all packets containing Ethernet header,IPv6 header with static payload.\ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv6 \ +| ... | routing and static route, SR policy and steering policy for one \ +| ... | direction and one SR behaviour (function) - End.AS - for other \ +| ... | direction. DUT1 and DUT2 are 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, 253 flows per flow-group) with \ +| ... | all packets containing Ethernet header,IPv6 header with static \ +| ... | payload. \ | ... | MAC addresses are matching MAC addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* SRv6 Network Programming -\ -| ... | draft 3 and Segment Routing for Service Chaining - internet draft 01. +| ... | +| ... | - **[Ref] Applicable standard specifications:** SRv6 Network \ +| ... | Programming - draft 3.and Segment Routing for Service Chaining \ +| ... | - internet draft 01. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | memif_plugin.so | srv6as_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | memif_plugin.so +| ... | srv6as_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -91,7 +99,7 @@ | ${prefix}= | ${64} | ${mem_prefix}= | ${128} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253 +| ${traffic_profile}= | trex-stl-ethip6-ip6src253 # Container | ${container_engine}= | Docker | ${container_chain_topology}= | chain @@ -99,11 +107,11 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT1 and DUT2 are configured with IPv6\ -| | ... | routing and static route, SR policy and steering policy for one\ -| | ... | direction and SR behaviour (function) - End.AS - for other direction. +| | ... | - **[Cfg]** DUT1 and DUT2 are configured with IPv6 routing \ +| | ... | and static route, SR policy and steering policy for one direction \ +| | ... | and SR behaviour (function) - End.AS - for other direction. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/srv6/regenerate_testcases.py b/tests/vpp/perf/srv6/regenerate_testcases.py index f6bbf0a102..1a151af0f8 100755 --- a/tests/vpp/perf/srv6/regenerate_testcases.py +++ b/tests/vpp/perf/srv6/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot index 8e2adacaad..bfeea9955c 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD test cases with vhost and vpp -| ... | link bonding* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. 802.1q -| ... | tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with VPP -| ... | link bonding (mode LACP, transmit policy l34) on link between DUT1 and +| Documentation | **RFC2544: Pkt throughput L2BD test cases with vhost and vpp \ +| ... | link bonding** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ +| ... | 802.1q tagging is applied on link between DUT1 and DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with VPP \ +| ... | link bonding (mode LACP, transmit policy l34) on link between DUT1 and \ | ... | DUT2 and L2 bridge-domain with MAC learning enabled. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running testpmd \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lacp_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lacp_plugin.so +| ... | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -76,14 +82,14 @@ | ${bd_id1}= | 1 | ${bd_id2}= | 2 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot index c1750b0273..0a09e4b1a3 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD test cases with vhost and vpp -| ... | link bonding* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. 802.1q -| ... | tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with VPP -| ... | link bonding (mode LACP, transmit policy l34) on link between DUT1 and +| Documentation | **RFC2544: Pkt throughput L2BD test cases with vhost and vpp \ +| ... | link bonding** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ +| ... | 802.1q tagging is applied on link between DUT1 and DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with VPP \ +| ... | link bonding (mode LACP, transmit policy l34) on link between DUT1 and \ | ... | DUT2 and L2 bridge-domain with MAC learning enabled. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running VPP l2xc \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lacp_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lacp_plugin.so +| ... | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -76,14 +82,14 @@ | ${bd_id1}= | 1 | ${bd_id2}= | 2 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot index 58a06f9fc3..ed320ca6f6 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases with vhost and vpp -| ... | link bonding* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. 802.1q -| ... | tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with VPP -| ... | link bonding (mode LACP, transmit policy l34) on link between DUT1 and +| Documentation | **RFC2544: Pkt throughput L2XC test cases with vhost and vpp \ +| ... | link bonding** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect. \ +| ... | 802.1q tagging is applied on link between DUT1 and DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with VPP \ +| ... | link bonding (mode LACP, transmit policy l34) on link between DUT1 and \ | ... | DUT2 and L2 cross- connect. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running testpmd \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lacp_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lacp_plugin.so +| ... | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,14 +80,14 @@ | ${bond_mode}= | lacp | ${lb_mode}= | l34 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC switching config. +| | ... | - **[Cfg]** DUT runs L2XC switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot index bf86b9cebb..aac2c62e02 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -28,33 +28,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases with vhost and vpp -| ... | link bonding* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. 802.1q -| ... | tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with VPP -| ... | link bonding (mode LACP, transmit policy l34) on link between DUT1 and +| Documentation | **RFC2544: Pkt throughput L2XC test cases with vhost and vpp \ +| ... | link bonding** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect. \ +| ... | 802.1q tagging is applied on link between DUT1 and DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with VPP \ +| ... | link bonding (mode LACP, transmit policy l34) on link between DUT1 and \ | ... | DUT2 and L2 cross- connect. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running VPP l2xc \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | lacp_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | lacp_plugin.so +| ... | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -74,14 +80,14 @@ | ${bond_mode}= | lacp | ${lb_mode}= | l34 # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC switching config. +| | ... | - **[Cfg]** DUT runs L2XC switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot deleted file mode 100644 index d5b200db1f..0000000000 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot +++ /dev/null @@ -1,160 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_DOUBLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | DOT1Q | L2BDMACLRN | BASE | VHOST | 1VM -| ... | VHOST_1024 | LBOND | LBOND_VPP | LBOND_MODE_LACP | LBOND_LB_L34 -| ... | LBOND_2L | VM_TESTPMD | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | 2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | vhost -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput L2BD test cases with vhost and vpp -| ... | link bonding* -| -| ... | *[Top] Network Topologies:* TG-DUT1=DUT2-TG 3-node circular topology -| ... | with single links between TG and DUT nodes and double link between DUT -| ... | nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. 802.1q -| ... | tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with VPP -| ... | link bonding (mode LACP, transmit policy l34) on link between DUT1 and -| ... | DUT2 and L2 bridge-domain with MAC learning enabled. Qemu VNFs are \ -| ... | connected to VPP via vhost-user interfaces. Guest is running testpmd \ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | lacp_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 4 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${4} -| ${subid}= | 10 -| ${tag_rewrite}= | pop-1 -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -| ${nf_chains}= | ${1} -| ${nf_nodes}= | ${1} -# Link bonding config -| ${bond_mode}= | lacp -| ${lb_mode}= | l34 -| ${bd_id1}= | 1 -| ${bd_id2}= | 2 -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 - -*** 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} -| | Set Test Variable | ${vlan_strip_off} | ${TRUE} -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize L2 bridge domains with Vhost-User and VLAN with VPP link bonding in a 3-node circular topology -| | ... | ${bd_id1} | ${bd_id2} | ${subid} -| | ... | ${tag_rewrite} | ${bond_mode} | ${lb_mode} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${True} | vnf=testpmd_io -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot deleted file mode 100644 index 6728676227..0000000000 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_DOUBLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | DOT1Q | L2BDMACLRN | BASE | VHOST | 1VM -| ... | VHOST_1024 | LBOND | LBOND_VPP | LBOND_MODE_LACP | LBOND_LB_L34 -| ... | LBOND_2L | NF_VPPL2XC | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | 2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | vhost -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput L2BD test cases with vhost and vpp -| ... | link bonding* -| -| ... | *[Top] Network Topologies:* TG-DUT1=DUT2-TG 3-node circular topology -| ... | with single links between TG and DUT nodes and double link between DUT -| ... | nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. 802.1q -| ... | tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with VPP -| ... | link bonding (mode LACP, transmit policy l34) on link between DUT1 and -| ... | DUT2 and L2 bridge-domain with MAC learning enabled. Qemu VNFs are \ -| ... | connected to VPP via vhost-user interfaces. Guest is running VPP l2xc \ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | lacp_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 4 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${4} -| ${subid}= | 10 -| ${tag_rewrite}= | pop-1 -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -| ${nf_chains}= | ${1} -| ${nf_nodes}= | ${1} -# Link bonding config -| ${bond_mode}= | lacp -| ${lb_mode}= | l34 -| ${bd_id1}= | 1 -| ${bd_id2}= | 2 -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 - -*** 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} -| | Set Test Variable | ${vlan_strip_off} | ${TRUE} -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize L2 bridge domains with Vhost-User and VLAN with VPP link bonding in a 3-node circular topology -| | ... | ${bd_id1} | ${bd_id2} | ${subid} -| | ... | ${tag_rewrite} | ${bond_mode} | ${lb_mode} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${True} -| | ... | vnf=vppl2xc_2vhostvr1024 -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-2lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot deleted file mode 100644 index 7053484568..0000000000 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot +++ /dev/null @@ -1,157 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_DOUBLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | DOT1Q | L2XCFWD | BASE | VHOST | 1VM -| ... | VHOST_1024 | LBOND | LBOND_VPP | LBOND_MODE_LACP | LBOND_LB_L34 -| ... | LBOND_2L | NF_TESTPMD | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | 2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | vhost -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput L2XC test cases with vhost and vpp -| ... | link bonding* -| -| ... | *[Top] Network Topologies:* TG-DUT1=DUT2-TG 3-node circular topology -| ... | with single links between TG and DUT nodes and double link between DUT -| ... | nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. 802.1q -| ... | tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with VPP -| ... | link bonding (mode LACP, transmit policy l34) on link between DUT1 and -| ... | DUT2 and L2 cross- connect. Qemu VNFs are \ -| ... | connected to VPP via vhost-user interfaces. Guest is running testpmd \ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | lacp_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 4 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${4} -| ${subid}= | 10 -| ${tag_rewrite}= | pop-1 -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -| ${nf_chains}= | ${1} -| ${nf_nodes}= | ${1} -# Link bonding config -| ${bond_mode}= | lacp -| ${lb_mode}= | l34 -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2XC 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} -| | Set Test Variable | ${vlan_strip_off} | ${TRUE} -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize L2 xconnect with Vhost-User and VLAN with VPP link bonding in 3-node circular topology -| | ... | ${subid} | ${tag_rewrite} | ${bond_mode} | ${lb_mode} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${True} | vnf=testpmd_io -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot deleted file mode 100644 index c128241e48..0000000000 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot +++ /dev/null @@ -1,158 +0,0 @@ -# Copyright (c) 2020 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/shared/default.robot -| -| Force Tags | 3_NODE_DOUBLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR -| ... | NIC_Intel-X710 | DOT1Q | L2XCFWD | BASE | VHOST |1VM -| ... | VHOST_1024 | LBOND | LBOND_VPP | LBOND_MODE_LACP | LBOND_LB_L34 -| ... | LBOND_2L | NF_VPPL2XC | DRV_VFIO_PCI -| ... | RXQ_SIZE_0 | TXQ_SIZE_0 -| ... | 2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc -| -| Suite Setup | Setup suite topology interfaces | performance -| Suite Teardown | Tear down suite | performance -| Test Setup | Setup test | performance -| Test Teardown | Tear down test | performance | vhost -| -| Test Template | Local Template -| -| Documentation | *RFC2544: Pkt throughput L2XC test cases with vhost and vpp -| ... | link bonding* -| -| ... | *[Top] Network Topologies:* TG-DUT1=DUT2-TG 3-node circular topology -| ... | with single links between TG and DUT nodes and double link between DUT -| ... | nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. 802.1q -| ... | tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with VPP -| ... | link bonding (mode LACP, transmit policy l34) on link between DUT1 and -| ... | DUT2 and L2 cross- connect. Qemu VNFs are \ -| ... | connected to VPP via vhost-user interfaces. Guest is running VPP l2xc \ -| ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 *** -| @{plugins_to_enable}= | dpdk_plugin.so | lacp_plugin.so -| ${crypto_type}= | ${None} -| ${nic_name}= | Intel-X710 -| ${nic_driver}= | vfio-pci -| ${nic_rxq_size}= | 0 -| ${nic_txq_size}= | 0 -| ${nic_pfs}= | 4 -| ${nic_vfs}= | 0 -| ${osi_layer}= | L2 -| ${overhead}= | ${4} -| ${subid}= | 10 -| ${tag_rewrite}= | pop-1 -| ${nf_dtcr}= | ${1} -| ${nf_dtc}= | ${1} -| ${nf_chains}= | ${1} -| ${nf_nodes}= | ${1} -# Link bonding config -| ${bond_mode}= | lacp -| ${lb_mode}= | l34 -# Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 - -*** Keywords *** -| Local Template -| | [Documentation] -| | ... | [Cfg] DUT runs L2XC 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} -| | Set Test Variable | ${vlan_strip_off} | ${TRUE} -| | -| | Given Set Max Rate And Jumbo -| | And Add worker threads to all DUTs | ${phy_cores} | ${rxq} -| | And Pre-initialize layer driver | ${nic_driver} -| | And Apply startup configuration on all VPP DUTs -| | When Initialize layer driver | ${nic_driver} -| | And Initialize L2 xconnect with Vhost-User and VLAN with VPP link bonding in 3-node circular topology -| | ... | ${subid} | ${tag_rewrite} | ${bond_mode} | ${lb_mode} -| | And Configure chains of NFs connected via vhost-user -| | ... | nf_chains=${nf_chains} | nf_nodes=${nf_nodes} | jumbo=${jumbo} -| | ... | use_tuned_cfs=${False} | auto_scale=${True} -| | ... | vnf=vppl2xc_2vhostvr1024 -| | Then Find NDR and PDR intervals using optimized search - -*** Test Cases *** -| 64B-1c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 64B | 1C -| | frame_size=${64} | phy_cores=${1} - -| 64B-2c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 64B | 2C -| | frame_size=${64} | phy_cores=${2} - -| 64B-4c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 64B | 4C -| | frame_size=${64} | phy_cores=${4} - -| 1518B-1c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 1518B | 1C -| | frame_size=${1518} | phy_cores=${1} - -| 1518B-2c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 1518B | 2C -| | frame_size=${1518} | phy_cores=${2} - -| 1518B-4c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 1518B | 4C -| | frame_size=${1518} | phy_cores=${4} - -| 9000B-1c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 9000B | 1C -| | frame_size=${9000} | phy_cores=${1} - -| 9000B-2c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 9000B | 2C -| | frame_size=${9000} | phy_cores=${2} - -| 9000B-4c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | 9000B | 4C -| | frame_size=${9000} | phy_cores=${4} - -| IMIX-1c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | IMIX | 1C -| | frame_size=IMIX_v4_1 | phy_cores=${1} - -| IMIX-2c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | IMIX | 2C -| | frame_size=IMIX_v4_1 | phy_cores=${2} - -| IMIX-4c-2lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr -| | [Tags] | IMIX | 4C -| | frame_size=IMIX_v4_1 | phy_cores=${4} diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot index cd5ecd3ab2..62c6583579 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,33 +27,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with vhost and IEEE 802.1Q test -| ... | cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. IEEE\ -| ... | 802.1Q tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 bridge-\ +| Documentation | **RFC2544: Pkt throughput L2BD with vhost and IEEE 802.1Q \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ +| ... | IEEE 802.1Q tagging is applied on link between DUT1 and DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-\ | ... | domain and MAC learning enabled. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running testpmd \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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. +| ... | +| ... | - **[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 *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -72,14 +78,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD switching with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD switching with VLAN and 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). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot index 56d8c257ec..5c67da5b81 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,33 +27,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with vhost abd IEEE 802.1Q test -| ... | cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology\ -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. IEEE\ -| ... | 802.1Q tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 bridge-\ +| Documentation | **RFC2544: Pkt throughput L2BD with vhost abd IEEE 802.1Q \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ +| ... | IEEE 802.1Q tagging is applied on link between DUT1 and DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-\ | ... | domain and MAC learning enabled. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running VPP l2xc \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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. +| ... | +| ... | - **[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 *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -72,14 +78,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD switching with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD switching with VLAN and 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). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot index 2f557bc52e..fb60127794 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. 802.1q -| ... | tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. Qemu VNFs are \ +| Documentation | **RFC2544: Pkt throughput L2XC test cases with vhost** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect. \ +| ... | 802.1q tagging is applied on link between DUT1 and DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | cross-connect. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running testpmd \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -68,14 +73,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC switching config. +| | ... | - **[Cfg]** DUT runs L2XC switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot index 36109f9501..94bb7386b7 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect. 802.1q -| ... | tagging is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. Qemu VNFs are \ +| Documentation | **RFC2544: Pkt throughput L2XC test cases with vhost** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect. \ +| ... | 802.1q tagging is applied on link between DUT1 and DUT2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | cross-connect. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running VPP l2xc \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -68,14 +73,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC switching config. +| | ... | - **[Cfg]** DUT runs L2XC switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot index cb65245cc0..e917492f17 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are \ +| Documentation | **RFC2544: Pkt throughput L2BD test cases with vhost** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-domain and MAC learning enabled. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running testpmd \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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, 253 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 +| ... | +| ... | - **[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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -66,14 +71,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot index a0c7dd4f1d..225538c366 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are \ +| Documentation | **RFC2544: Pkt throughput L2BD test cases with vhost** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-domain and MAC learning enabled. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running VPP l2xc \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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, 253 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 +| ... | +| ... | - **[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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -66,14 +71,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot index b1e2570dc4..1de12975fa 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. Qemu VNFs are \ +| Documentation | **RFC2544: Pkt throughput L2XC test cases with vhost** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | cross-connect. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running testpmd \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -65,14 +70,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC switching config. +| | ... | - **[Cfg]** DUT runs L2XC switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot index b945fc84f9..a5c2496422 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 cross- -| ... | connect. Qemu VNFs are \ +| Documentation | **RFC2544: Pkt throughput L2XC test cases with vhost** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | cross-connect. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running VPP l2xc \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -65,14 +70,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC switching config. +| | ... | - **[Cfg]** DUT runs L2XC switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr.robot index 507043d507..cd69cd7f4a 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4 +| Documentation | **RFC2544: Pkt throughput IPv4 test cases with vhost** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ | ... | routing and two static IPv4 /24 route entries. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running testpmd \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -65,14 +70,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-vppip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-vppip4-ndrpdr.robot index a1dc929645..c7bde1476c 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with IPv4 +| Documentation | **RFC2544: Pkt throughput IPv4 test cases with vhost** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with IPv4. \ | ... | routing and two static IPv4 /24 route entries. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running VPP ip4 \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -65,14 +70,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot index c0c0bfd720..f497cd5bc0 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,32 +27,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD test cases with VXLANoIPv4 -| ... | and vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| Documentation | **RFC2544: Pkt throughput L2BD test cases with VXLANoIPv4. \ +| ... | and vhost** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ | ... | Eth-IPv4-VXLAN-Eth-IPv4 is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are \ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-domain and MAC learning enabled. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running testpmd \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 +| ... | +| ... | - **[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:* RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so +| ... | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -69,14 +75,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot index 8e9ac75c17..a481705e6f 100644 --- a/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,32 +27,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD test cases with VXLANoIPv4 -| ... | and vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-DUT2-TG 3-node circular topology -| ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 switching of IPv4. +| Documentation | **RFC2544: Pkt throughput L2BD test cases with VXLANoIPv4. \ +| ... | and vhost** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-DUT2-TG 3-node circular \ +| ... | topology with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ | ... | Eth-IPv4-VXLAN-Eth-IPv4 is applied on link between DUT1 and DUT2. -| ... | *[Cfg] DUT configuration:* DUT1 and DUT2 are configured with L2 bridge- -| ... | domain and MAC learning enabled. Qemu VNFs are \ +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 and DUT2 are configured with L2 \ +| ... | bridge-domain and MAC learning enabled. Qemu VNFs are \ | ... | connected to VPP via vhost-user interfaces. Guest is running VPP l2xc \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUT1/DUT2 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 +| ... | +| ... | - **[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:* RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so +| ... | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -69,14 +75,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-3n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot index d6b3430c63..79c20a92bd 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,32 +27,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with vhost and IEEE 802.1Q test -| ... | cases* -| -| ... | *[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. IEEE\ -| ... | 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-domain and\ -| ... | MAC learning enabled. Qemu VNFs are connected to VPP via\ +| Documentation | **RFC2544: Pkt throughput L2BD with vhost and IEEE 802.1Q \ +| ... | test cases** +| ... | +| ... | - **[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. \ +| ... | IEEE 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. +| ... | +| ... | - **[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 testpmd 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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,14 +77,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-dot1qip4asym-ip4src254 +| ${traffic_profile}= | trex-stl-dot1qip4asym-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD switching with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD switching with VLAN and 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). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot index aff917f4fa..ab8c81d797 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,32 +27,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with vhost and IEEE 802.1Q test -| ... | cases* -| -| ... | *[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. IEEE\ -| ... | 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-domain and\ -| ... | MAC learning enabled. Qemu VNFs are connected to VPP via\ +| Documentation | **RFC2544: Pkt throughput L2BD with vhost and IEEE 802.1Q \ +| ... | test cases** +| ... | +| ... | - **[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. \ +| ... | IEEE 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. +| ... | +| ... | - **[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 l2xc 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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,14 +77,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-dot1qip4asym-ip4src254 +| ${traffic_profile}= | trex-stl-dot1qip4asym-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD switching with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD switching with VLAN and 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). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot index 7b96e402c3..38ade9e8a7 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2bdbasemaclrn-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,32 +27,38 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD with vhost and IEEE 802.1Q test -| ... | cases* -| -| ... | *[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. IEEE\ -| ... | 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 bridge-domain and\ -| ... | MAC learning enabled. Qemu VNFs are connected to VPP via\ +| Documentation | **RFC2544: Pkt throughput L2BD with vhost and IEEE 802.1Q \ +| ... | test cases** +| ... | +| ... | - **[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. \ +| ... | IEEE 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. +| ... | +| ... | - **[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 l2xc interconnecting \ | ... | virtio 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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -71,14 +77,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-dot1qip4asym-ip4src254 +| ${traffic_profile}= | trex-stl-dot1qip4asym-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2BD switching with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2BD switching with VLAN and 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). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot index b87205b04a..9ef9d2933c 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC with vhost abd IEEE 802.1Q test -| ... | cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect of IPv4.\ -| ... | IEEE 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 cross connect and\ -| ... | MAC learning enabled. Qemu VNFs are connected to VPP via\ +| Documentation | **RFC2544: Pkt throughput L2XC with vhost abd IEEE 802.1Q \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect \ +| ... | of IPv4. IEEE 802.1Q tagging is applied on link between DUT1-if2 \ +| ... | and TG-if2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 cross-\ +| ... | connect and MAC learning enabled. Qemu VNFs are connected to VPP via \ | ... | vhost-user interfaces. Guest is running testpmd 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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -68,14 +74,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-dot1qip4asym-ip4src254 +| ${traffic_profile}= | trex-stl-dot1qip4asym-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2XC switching with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2XC switching with VLAN and 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). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot index 949873b0cf..ae962ab420 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC with vhost abd IEEE 802.1Q test -| ... | cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect of IPv4.\ -| ... | IEEE 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 cross connect and\ -| ... | MAC learning enabled. Qemu VNFs are connected to VPP via\ +| Documentation | **RFC2544: Pkt throughput L2XC with vhost abd IEEE 802.1Q \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect \ +| ... | of IPv4. IEEE 802.1Q tagging is applied on link between DUT1-if2 \ +| ... | and TG-if2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 cross-\ +| ... | connect and MAC learning enabled. Qemu VNFs are connected to VPP via \ | ... | vhost-user interfaces. Guest is running VPP l2xc 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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -68,14 +74,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-dot1qip4asym-ip4src254 +| ${traffic_profile}= | trex-stl-dot1qip4asym-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2XC switching with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2XC switching with VLAN and 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). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2xcbase-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2xcbase-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot index 3dbe0f2d91..fbfc8dc44a 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2xcbase-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-dot1q-l2xcbase-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,37 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC with vhost abd IEEE 802.1Q test -| ... | cases* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology with\ -| ... | single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for L2 cross connect of IPv4.\ -| ... | IEEE 802.1Q tagging is applied on link between DUT1-if2 and TG-if2. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with L2 cross connect and\ -| ... | MAC learning enabled. Qemu VNFs are connected to VPP via\ +| Documentation | **RFC2544: Pkt throughput L2XC with vhost abd IEEE 802.1Q \ +| ... | test cases** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ +| ... | with single links between nodes. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 cross connect \ +| ... | of IPv4. IEEE 802.1Q tagging is applied on link between DUT1-if2 \ +| ... | and TG-if2. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 cross-\ +| ... | connect and MAC learning enabled. Qemu VNFs are connected to VPP via \ | ... | vhost-user interfaces. Guest is running VPP l2xc interconnecting \ | ... | virtio 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\ +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -68,14 +74,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-dot1qip4asym-ip4src254 +| ${traffic_profile}= | trex-stl-dot1qip4asym-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] Each DUT runs L2XC switching with VLAN and uses ${phy_cores}\ -| | ... | physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Cfg]** Each DUT runs L2XC switching with VLAN and 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). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot index f873f23751..9a06a87e6c 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput L2BD test cases with vhost** +| ... | +| ... | - **[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- +| ... | +| ... | - **[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 testpmd \ | ... | 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 the TG node +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -66,14 +71,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot index 0c2bdee531..245f6b6aff 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput L2BD test cases with vhost** +| ... | +| ... | - **[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- +| ... | +| ... | - **[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 l2xc \ | ... | 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 the TG node +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -66,14 +71,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot index 8b6e1d671b..38c5227a2e 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2bdbasemaclrn-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,31 +27,36 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2BD test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput L2BD test cases with vhost** +| ... | +| ... | - **[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- +| ... | +| ... | - **[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 l2xc \ | ... | interconnecting virtio 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 the TG node +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -66,14 +71,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot index 0989313b78..987a1cd8da 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput L2XC test cases with vhost** +| ... | +| ... | - **[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 cross- +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 cross- \ | ... | connect. Qemu VNFs are connected \ | ... | to VPP via vhost-user interfaces. Guest is running testpmd \ | ... | 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 +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -65,14 +70,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC switching config. +| | ... | - **[Cfg]** DUT runs L2XC switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot index d1bd1a056c..0b3682b6a6 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput L2XC test cases with vhost** +| ... | +| ... | - **[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 cross- +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 cross- \ | ... | connect. Qemu VNFs are connected \ | ... | to VPP via vhost-user interfaces. Guest is running VPP l2xc \ | ... | 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 +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -65,14 +70,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC switching config. +| | ... | - **[Cfg]** DUT runs L2XC switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2xcbase-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2xcbase-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot index 2e1988d89a..d626ed0501 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2xcbase-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-eth-l2xcbase-eth-2virtiovr1024-1vm-vppl2xc-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,29 +27,34 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput L2XC test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput L2XC test cases with vhost** +| ... | +| ... | - **[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 cross- -| ... | connect. Qemu VNFs are connected to VPP via vhost-user interfaces \ +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with L2 cross- \ +| ... | connect. Qemu VNFs are connected to VPP via vhost-user interfaces. \ | ... | Guest is running VPP l2xc interconnecting virtio 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 +| ... | +| ... | - **[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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -64,14 +69,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src254 +| ${traffic_profile}= | trex-stl-ethip4-ip4src254 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2XC switching config. +| | ... | - **[Cfg]** DUT runs L2XC switching config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr.robot index 91be50c74c..377c900687 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 test cases with vhost** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ | ... | routing and two static IPv4 /24 route entries. Qemu VNFs are connected \ | ... | to VPP via vhost-user interfaces. Guest is running testpmd \ | ... | 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -65,14 +70,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-vppip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-vppip4-ndrpdr.robot index c1134274a0..728a727fdc 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-ethip4-ip4base-eth-2vhostvr1024-1vm-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 test cases with vhost** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ | ... | routing and two static IPv4 /24 route entries. Qemu VNFs are connected \ | ... | to VPP via vhost-user interfaces. Guest is running VPP ip4 \ | ... | 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[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, 253 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. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -65,14 +70,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-ethip4-ip4base-eth-2virtiovr1024-1vm-vppip4-ndrpdr.robot b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-ethip4-ip4base-eth-2virtiovr1024-1vm-vppip4-ndrpdr.robot index c21031eabb..72dad7f2c1 100644 --- a/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-ethip4-ip4base-eth-2virtiovr1024-1vm-vppip4-ndrpdr.robot +++ b/tests/vpp/perf/vm_vhost/2n1l-10ge2p1x710-ethip4-ip4base-eth-2virtiovr1024-1vm-vppip4-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,30 +27,35 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Pkt throughput IPv4 test cases with vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Pkt throughput IPv4 test cases with vhost** +| ... | +| ... | - **[Top] Network Topologies:** TG-DUT1-TG 2-node circular topology \ | ... | with single links between nodes. -| ... | *[Enc] Packet Encapsulations:* Eth-IPv4 for IPv4 routing. -| ... | *[Cfg] DUT configuration:* DUT1 is configured with IPv4 +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for IPv4 routing. +| ... | +| ... | - **[Cfg] DUT configuration:** DUT1 is configured with IPv4. \ | ... | routing and two static IPv4 /24 route entries. Qemu VNFs are connected \ | ... | to VPP via vhost-user interfaces. Guest is running VPP ip4 \ | ... | interconnecting virtio 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, 253 flows per -| ... | flow-group) with all packets containing Ethernet header, IPv4 header -| ... | with IP protocol=61 and static payload. MAC addresses are matching MAC +| ... | +| ... | - **[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, 253 flows per \ +| ... | flow-group) with all packets containing Ethernet header, IPv4 header \ +| ... | with IP protocol=61 and static payload. MAC addresses are matching MA\C | ... | addresses of the TG node interfaces. -| ... | *[Ref] Applicable standard specifications:* RFC2544. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -65,14 +70,14 @@ | ${nf_chains}= | ${1} | ${nf_nodes}= | ${1} # Traffic profile: -| ${traffic_profile}= | trex-stl-2n-ethip4-ip4src253 +| ${traffic_profile}= | trex-stl-ethip4-ip4src253 *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs IPv4 routing config. +| | ... | - **[Cfg]** DUT runs IPv4 routing config. \ | | ... | Each DUT uses ${phy_cores} physical core(s) for worker threads. -| | ... | [Ver] Measure NDR and PDR values using MLRsearch algorithm.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). diff --git a/tests/vpp/perf/vm_vhost/regenerate_testcases.py b/tests/vpp/perf/vm_vhost/regenerate_testcases.py index ec754aa261..e22f6de5c3 100755 --- a/tests/vpp/perf/vm_vhost/regenerate_testcases.py +++ b/tests/vpp/perf/vm_vhost/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: diff --git a/tests/vpp/perf/vts/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermit-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vts/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermit-2vhostvr1024-1vm-ndrpdr.robot index 610bc2ae26..1fde752893 100644 --- a/tests/vpp/perf/vts/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermit-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vts/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermit-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,33 +27,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with VXLANoIPv4 -| ... | and vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Packet throughput L2BD test cases with \ +| ... | VXLANoIPv4 and vhost** +| ... | +| ... | - **[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. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ | ... | Eth-IPv4-VXLAN-Eth-IPv4 is applied on link from/to TG. -| ... | *[Cfg] DUT configuration:* DUTs are configured with L2 bridge- +| ... | +| ... | - **[Cfg] DUT configuration:** DUTs are configured with L2 bridge- \ | ... | domain and MAC learning enabled. Qemu VNFs are connected \ | ... | to VPP via vhost-user interfaces. Guest is running VPP l2xc \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUTs are \ | ... | 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, 253 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 +| ... | +| ... | - **[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, 253 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, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so +| ... | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +81,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - L2 Frame Size [B]. Type: integer diff --git a/tests/vpp/perf/vts/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermitreflect-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vts/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermitreflect-2vhostvr1024-1vm-ndrpdr.robot index e73dceeaa8..ed3af348ed 100644 --- a/tests/vpp/perf/vts/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermitreflect-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vts/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-aclpermitreflect-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,33 +27,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with VXLANoIPv4 -| ... | and vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Packet throughput L2BD test cases with \ +| ... | VXLANoIPv4 and vhost** +| ... | +| ... | - **[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. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ | ... | Eth-IPv4-VXLAN-Eth-IPv4 is applied on link from/to TG. -| ... | *[Cfg] DUT configuration:* DUTs are configured with L2 bridge- +| ... | +| ... | - **[Cfg] DUT configuration:** DUTs are configured with L2 bridge- \ | ... | domain and MAC learning enabled. Qemu VNFs are connected \ | ... | to VPP via vhost-user interfaces. Guest is running VPP l2xc \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUTs are \ | ... | 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, 253 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 +| ... | +| ... | - **[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, 253 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, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so | acl_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | acl_plugin.so +| ... | vhost_plugin.so | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +81,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - L2 Frame Size [B]. Type: integer diff --git a/tests/vpp/perf/vts/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-noacl-2vhostvr1024-1vm-ndrpdr.robot b/tests/vpp/perf/vts/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-noacl-2vhostvr1024-1vm-ndrpdr.robot index faf85ebb1d..827e79b80c 100644 --- a/tests/vpp/perf/vts/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-noacl-2vhostvr1024-1vm-ndrpdr.robot +++ b/tests/vpp/perf/vts/2n1l-10ge2p1x710-ethip4vxlan-l2bdbasemaclrn-eth-iacldstbase-noacl-2vhostvr1024-1vm-ndrpdr.robot @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Cisco and/or its affiliates. +# Copyright (c) 2023 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: @@ -27,33 +27,39 @@ | | Test Template | Local Template | -| Documentation | *RFC2544: Packet throughput L2BD test cases with VXLANoIPv4 -| ... | and vhost* -| -| ... | *[Top] Network Topologies:* TG-DUT1-TG 2-node circular topology +| Documentation | **RFC2544: Packet throughput L2BD test cases with \ +| ... | VXLANoIPv4 and vhost** +| ... | +| ... | - **[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. +| ... | +| ... | - **[Enc] Packet Encapsulations:** Eth-IPv4 for L2 switching of IPv4. \ | ... | Eth-IPv4-VXLAN-Eth-IPv4 is applied on link from/to TG. -| ... | *[Cfg] DUT configuration:* DUTs are configured with L2 bridge- +| ... | +| ... | - **[Cfg] DUT configuration:** DUTs are configured with L2 bridge- \ | ... | domain and MAC learning enabled. Qemu VNFs are connected \ | ... | to VPP via vhost-user interfaces. Guest is running VPP l2xc \ | ... | interconnecting vhost-user interfaces, rxd/txd=1024. DUTs are \ | ... | 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, 253 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 +| ... | +| ... | - **[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, 253 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, RFC7348. +| ... | +| ... | - **[Ref] Applicable standard specifications:** RFC2544, RFC7348. *** Variables *** -| @{plugins_to_enable}= | dpdk_plugin.so +| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | vhost_plugin.so +| ... | vxlan_plugin.so | ${crypto_type}= | ${None} | ${nic_name}= | Intel-X710 | ${nic_driver}= | vfio-pci @@ -75,9 +81,9 @@ *** Keywords *** | Local Template | | [Documentation] -| | ... | [Cfg] DUT runs L2BD switching config. +| | ... | - **[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.\ +| | ... | - **[Ver]** Measure NDR and PDR values using MLRsearch algorithm. | | | | ... | *Arguments:* | | ... | - frame_size - L2 Frame Size [B]. Type: integer diff --git a/tests/vpp/perf/vts/regenerate_testcases.py b/tests/vpp/perf/vts/regenerate_testcases.py index f5467bfe93..4d34792d2e 100755 --- a/tests/vpp/perf/vts/regenerate_testcases.py +++ b/tests/vpp/perf/vts/regenerate_testcases.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 -# Copyright (c) 2019 Cisco and/or its affiliates. +# Copyright (c) 2023 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: |