diff options
231 files changed, 1565 insertions, 8097 deletions
diff --git a/ansible/roles/build_yardstick_image/tasks/cloudimg_modify_nsb.yml b/ansible/roles/build_yardstick_image/tasks/cloudimg_modify_nsb.yml index c9e386346..8e2c3a623 100644 --- a/ansible/roles/build_yardstick_image/tasks/cloudimg_modify_nsb.yml +++ b/ansible/roles/build_yardstick_image/tasks/cloudimg_modify_nsb.yml @@ -1,4 +1,4 @@ -# Copyright (c) 2018 Intel Corporation. +# Copyright (c) 2018-2019 Intel Corporation. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/docs/release/release-notes/release-notes.rst b/docs/release/release-notes/release-notes.rst index 914daa3a4..920e90fbc 100644 --- a/docs/release/release-notes/release-notes.rst +++ b/docs/release/release-notes/release-notes.rst @@ -36,6 +36,9 @@ Version History | December 14, 2018 | 7.1.0 | Yardstick for Gambia release | | | | | +-------------------+-----------+---------------------------------+ +| January 25, 2019 | 7.2.0 | Yardstick for Gambia release | +| | | | ++-------------------+-----------+---------------------------------+ Important Notes @@ -114,19 +117,19 @@ Release Data | **Project** | Yardstick | | | | +--------------------------------+-----------------------+ -| **Repo/tag** | yardstick/opnfv-7.1.0 | +| **Repo/tag** | yardstick/opnfv-7.2.0 | | | | +--------------------------------+-----------------------+ -| **Yardstick Docker image tag** | opnfv-7.1.0 | +| **Yardstick Docker image tag** | opnfv-7.2.0 | | | | +--------------------------------+-----------------------+ -| **Release designation** | Gambia 7.1 | +| **Release designation** | Gambia 7.2 | | | | +--------------------------------+-----------------------+ -| **Release date** | December 14, 2018 | +| **Release date** | January 25, 2019 | | | | +--------------------------------+-----------------------+ -| **Purpose of the delivery** | OPNFV Gambia 7.1.0 | +| **Purpose of the delivery** | OPNFV Gambia 7.2.0 | | | | +--------------------------------+-----------------------+ @@ -272,7 +275,7 @@ List of Scenarios New Test cases -------------- -.. note:: Yardstick Gambia 7.1.0 adds no new test cases. +.. note:: Yardstick Gambia 7.2.0 adds no new test cases. * Generic NFVI test cases @@ -329,7 +332,7 @@ Feature additions Scenario Matrix =============== -For Gambia 7.1.0, Yardstick was tested on the following scenarios: +For Gambia 7.2.0, Yardstick was tested on the following scenarios: +-------------------------+------+---------+----------+------+ | Scenario | Apex | Compass | Fuel-arm | Fuel | @@ -373,33 +376,16 @@ Known Issues/Faults Corrected Faults ---------------- -Gambia 7.1.0: +Gambia 7.2.0: +--------------------+--------------------------------------------------------------------------+ | **JIRA REFERENCE** | **DESCRIPTION** | +====================+==========================================================================+ -| YARDSTICK-1241 | Update NSB PROX devguide. | -+--------------------+--------------------------------------------------------------------------+ -| YARDSTICK-1458 | NSB NFVi PROX Should report realtime port activity not historical data. | -+--------------------+--------------------------------------------------------------------------+ -| YARDSTICK-1471 | Add Testcase Prox Standalone SRIOV. | -+--------------------+--------------------------------------------------------------------------+ -| YARDSTICK-1475 | Adding Testcase for Prox Stanalone OvS-DPDK. | -+--------------------+--------------------------------------------------------------------------+ -| YARDSTICK-1500 | Adding Testcase for Prox L2FWD PktTouch Stanalone OvS-DPDK. | -+--------------------+--------------------------------------------------------------------------+ -| YARDSTICK-1517 | Missing opnfv "os-ovn-nofeature-ha" scenario test suite. | -+--------------------+--------------------------------------------------------------------------+ -| YARDSTICK-l526 | Run testcase 074 result overridden by job status. | -+--------------------+--------------------------------------------------------------------------+ -| YARDSTICK-1547 | Adding scale up test case for l3fwd OvS-DPDK. | -+--------------------+--------------------------------------------------------------------------+ -| YARDSTICK-1560 | Fix pip environment. | -+--------------------+--------------------------------------------------------------------------+ -| YARDSTICK-1561 | L3FWD Gradana Dashboards Out-of-date and incorrect. | +| YARDSTICK-1512 | [dovetail] split the sla check results into process recovery and service | +| | recovery for HA test cases. | +--------------------+--------------------------------------------------------------------------+ -Gambia 7.1.0 known restrictions/issues +Gambia 7.2.0 known restrictions/issues ====================================== diff --git a/docs/testing/user/userguide/12-nsb-overview.rst b/docs/testing/user/userguide/12-nsb-overview.rst index ec4df1cae..70aba1e37 100644 --- a/docs/testing/user/userguide/12-nsb-overview.rst +++ b/docs/testing/user/userguide/12-nsb-overview.rst @@ -56,7 +56,7 @@ NSB extension includes: * Generic data models of Network Services, based on ETSI spec `ETSI GS NFV-TST 001`_ -* Standalone :term:`context` for VNF testing with SRIOV, OVS, OVS-DPDK, etc +* Standalone :term:`context` for VNF testing SRIOV, OVS, OVS-DPDK, etc * Generic VNF configuration models and metrics implemented with Python classes * Traffic generator features and traffic profiles @@ -121,6 +121,13 @@ Network Service framework performs the necessary test steps. It may involve: Components of Network Service ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +.. TODO: provide a list of components in this section and describe them in + later sub-sections + +.. Components are the methodology, TGs, framework extensions, KPI collection, + Testcases, SampleVNFs +.. Framework extentions include: VNF models, NSPerf Scenario, contexts + * *Models for Network Service benchmarking*: The Network Service benchmarking requires the proper modelling approach. The NSB provides models using Python files and defining of NSDs and VNFDs. @@ -169,6 +176,38 @@ for every combination of test case parameters: * RFC2544 throughput for various loss rate defined (1% is a default) +KPI Collection +^^^^^^^^^^^^^^ + +KPI collection is the process of sampling KPIs at multiple intervals to allow +for investigation into anomalies during runtime. Some KPI intervals are +adjustable. KPIs are collected from traffic generators and NFVI for the SUT. +There is already some reporting in NSB available, but NSB collects all KPIs for +analytics to process. + +Below is an example list of basic KPIs: +* Throughput +* Latency +* Packet delay variation +* Maximum establishment rate +* Maximum tear-down rate +* Maximum simultaneous number of sessions + +Of course, there can be many other KPIs that will be relevant for a specific +NFVI, but in most cases these KPIs are enough to give you a basic picture of +the SUT. NSB also uses :term:`collectd` in order to collect the KPIs. Currently +the following collectd plug-ins are enabled for NSB testcases: + +* Libvirt +* Interface stats +* OvS events +* vSwitch stats +* Huge Pages +* RAM +* CPU usage +* Intel® PMU +* Intel(r) RDT + Graphical Overview ------------------ diff --git a/samples/vnf_samples/nsut/acl/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml b/samples/vnf_samples/nsut/acl/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml index 6c9f53507..e33168723 100644 --- a/samples/vnf_samples/nsut/acl/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml +++ b/samples/vnf_samples/nsut/acl/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_ixia.yaml index 7e5d792a2..7b30fd45b 100644 --- a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml +++ b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_ixia.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_packetsize.yaml b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_packetsize.yaml index 706ffb992..c06a8ef08 100644 --- a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_packetsize.yaml +++ b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_packetsize.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the License); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_worstcaserules_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex.yaml index cb50d7da1..dd6cf344f 100644 --- a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_worstcaserules_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex_corelated_traffic.yaml b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex_correlated_traffic.yaml index 334e36e95..74e04d890 100644 --- a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex_corelated_traffic.yaml +++ b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex_correlated_traffic.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the License); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -24,8 +24,8 @@ scenarios: tg__1: trafficgen_2.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__1': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex_scale_up.yaml b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex_scale_up.yaml index bc68632cf..52f588a10 100644 --- a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex_scale_up.yaml +++ b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex_scale_up.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -24,8 +24,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_worstcaserules_1flow_trex.yaml index cb50d7da1..dd6cf344f 100644 --- a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_ipv4_worstcaserules_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_with_latency_ipv4_1rule_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_with_latency_ipv4_1rule_1flow_trex.yaml index ad9fe90b8..7f5a54862 100644 --- a/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_with_latency_ipv4_1rule_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/acl/tc_baremetal_rfc2544_with_latency_ipv4_1rule_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_bottlenecks_scale_out.yaml b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_bottlenecks_scale_out.yaml index fe3595b14..469f68e77 100644 --- a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_bottlenecks_scale_out.yaml +++ b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_bottlenecks_scale_out.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 @@ -33,8 +33,8 @@ scenarios: {% endfor %} options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: {% for vnf_num in range(num_vnfs|int) %} diff --git a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_trex.yaml index 9c6cd7fc4..75159877f 100644 --- a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the License); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf_0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_traffic_scale_10.yaml b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_traffic_scale_10.yaml index 5b28d5675..2e11329b4 100644 --- a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_traffic_scale_10.yaml +++ b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_traffic_scale_10.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -33,8 +33,8 @@ scenarios: vnf__9: vnf_9.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - {'tg__0': 'xe0'} diff --git a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_traffic_scale_2.yaml b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_traffic_scale_2.yaml index ef76405fe..bbad24c43 100644 --- a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_traffic_scale_2.yaml +++ b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_traffic_scale_2.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -25,8 +25,8 @@ scenarios: vnf__1: vnf_1.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - {'tg__0': 'xe0'} diff --git a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_traffic_scale_4.yaml b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_traffic_scale_4.yaml index edf9611c8..2b57336a6 100644 --- a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_traffic_scale_4.yaml +++ b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_traffic_scale_4.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -27,8 +27,8 @@ scenarios: vnf__3: vnf_3.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - {'tg__0': 'xe0'} diff --git a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_traffic_scale_out.yaml b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_traffic_scale_out.yaml index 4da95a1ca..149ba15bb 100644 --- a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_traffic_scale_out.yaml +++ b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_traffic_scale_out.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -26,8 +26,8 @@ scenarios: {% endfor %} options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: {% for vnf_num in range(num_vnfs|int) %} diff --git a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_scale_up.yaml b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_trex_scale_up.yaml index 2d84802f8..c0758077e 100644 --- a/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_scale_up.yaml +++ b/samples/vnf_samples/nsut/acl/tc_heat_rfc2544_ipv4_1rule_1flow_trex_scale_up.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the License); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- {% set mem = mem or 20480 %} @@ -27,8 +27,8 @@ scenarios: vnf__0: vnf_0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_heat_trex_external_rfc2544_ipv4_1rule_1flow_64B_packetsize.yaml b/samples/vnf_samples/nsut/acl/tc_heat_trex_external_rfc2544_ipv4_1rule_1flow_packetsize.yaml index 015c20eca..06e635c71 100644 --- a/samples/vnf_samples/nsut/acl/tc_heat_trex_external_rfc2544_ipv4_1rule_1flow_64B_packetsize.yaml +++ b/samples/vnf_samples/nsut/acl/tc_heat_trex_external_rfc2544_ipv4_1rule_1flow_packetsize.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the License); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml b/samples/vnf_samples/nsut/acl/tc_ovs_rfc2544_ipv4_1rule_1flow_ixia.yaml index f766674f9..2a0cfe70f 100644 --- a/samples/vnf_samples/nsut/acl/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml +++ b/samples/vnf_samples/nsut/acl/tc_ovs_rfc2544_ipv4_1rule_1flow_ixia.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf__0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/acl/tc_ovs_rfc2544_ipv4_1rule_1flow_trex.yaml index e62425ad7..474a7b834 100644 --- a/samples/vnf_samples/nsut/acl/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/acl/tc_ovs_rfc2544_ipv4_1rule_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf__0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_sriov_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml b/samples/vnf_samples/nsut/acl/tc_sriov_rfc2544_ipv4_1rule_1flow_ixia.yaml index 617af481e..e70700c45 100644 --- a/samples/vnf_samples/nsut/acl/tc_sriov_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml +++ b/samples/vnf_samples/nsut/acl/tc_sriov_rfc2544_ipv4_1rule_1flow_ixia.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/acl/tc_sriov_rfc2544_ipv4_1rule_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/acl/tc_sriov_rfc2544_ipv4_1rule_1flow_trex.yaml index 77df5b18c..4c4f3b599 100644 --- a/samples/vnf_samples/nsut/acl/tc_sriov_rfc2544_ipv4_1rule_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/acl/tc_sriov_rfc2544_ipv4_1rule_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf__0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_ipv4_ixia.yaml b/samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_ipv4_ixia.yaml new file mode 100644 index 000000000..edf36b811 --- /dev/null +++ b/samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_ipv4_ixia.yaml @@ -0,0 +1,45 @@ +# Copyright (c) 2019 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +--- +schema: yardstick:task:0.1 +scenarios: +- type: NSPerf-RFC2544 + traffic_profile: ../../traffic_profiles/ixia_ipv4_latency.yaml + topology: agnostic_vnf_topology_ixia_2ports.yaml + nodes: + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick + options: + framesize: + uplink: {64B: 100} + downlink: {64B: 100} + flow: + src_ip: [{'tg__0': 'xe0'}] + dst_ip: [{'tg__0': 'xe1'}] + count: 1 + traffic_type: 4 + rfc2544: + allowed_drop_rate: 0.0001 - 0.0001 + vnf__0: + [] + runner: + type: Iteration + iterations: 2 + interval: 5 +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: /etc/yardstick/nodes/pod_ixia.yaml diff --git a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml index 6bfca0d7a..60085201f 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: public_ip: ["152.16.40.10"] traffic_type: 4 diff --git a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_64B_ixia.yaml b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_ixia.yaml index 7813a29a3..0e64f9b18 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_64B_ixia.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_ixia.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_64B_ixia_scale_up.yaml b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_ixia_scale_up.yaml index ef99a2fea..ad20ccb3d 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_64B_ixia_scale_up.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_ixia_scale_up.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -24,8 +24,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_trex.yaml index 042c4ddee..93325a8ca 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_64B_trex_corelated_traffic.yaml b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_trex_correlated_traffic.yaml index 1461c9601..27ce7a781 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_64B_trex_corelated_traffic.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_trex_correlated_traffic.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the License); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -24,8 +24,8 @@ scenarios: tg__1: trafficgen_2.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__1': 'xe0'}] diff --git a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_64B_trex_scale_up.yaml b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_trex_scale_up.yaml index 3c5d12abb..9f95ec823 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_64B_trex_scale_up.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_trex_scale_up.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -24,8 +24,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_with_latency_ipv4_1flow_dynamic_cgnapt_ixia.yaml b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_with_latency_ipv4_1flow_dynamic_cgnapt_ixia.yaml index 08a22586d..fc2f68456 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_with_latency_ipv4_1flow_dynamic_cgnapt_ixia.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_with_latency_ipv4_1flow_dynamic_cgnapt_ixia.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the License); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -24,8 +24,8 @@ scenarios: tg__1: trafficgen_2.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__1': 'xe0'}] diff --git a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_with_latency_ipv4_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_with_latency_ipv4_1flow_trex.yaml index 91a703877..27686ff10 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_with_latency_ipv4_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_with_latency_ipv4_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/cgnapt/tc_heat_external_rfc2544_ipv4_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/cgnapt/tc_heat_external_rfc2544_ipv4_1flow_trex.yaml index ba5180a82..68ff4eb1b 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_heat_external_rfc2544_ipv4_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_heat_external_rfc2544_ipv4_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_trex.yaml index b38d4be6c..db466a984 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_64B_trex_correlated_scale_10.yaml b/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_trex_correlated_scale_10.yaml index ac0a83b34..4f519ef04 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_64B_trex_correlated_scale_10.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_trex_correlated_scale_10.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -33,8 +33,8 @@ scenarios: vnf__9: vnf_9.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - {'tg__0': 'xe0'} diff --git a/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_64B_trex_correlated_scale_2.yaml b/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_trex_correlated_scale_2.yaml index 894fcceef..c7df6f78b 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_64B_trex_correlated_scale_2.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_trex_correlated_scale_2.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -25,8 +25,8 @@ scenarios: vnf__1: vnf_1.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - {'tg__0': 'xe0'} diff --git a/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_64B_trex_correlated_scale_4.yaml b/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_trex_correlated_scale_4.yaml index ffdec998e..0658c912b 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_64B_trex_correlated_scale_4.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_trex_correlated_scale_4.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -27,8 +27,8 @@ scenarios: vnf__3: vnf_3.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - {'tg__0': 'xe0'} diff --git a/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_64B_trex_correlated_scale_out.yaml b/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_trex_correlated_scale_out.yaml index 5c884f2e0..18d0e222d 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_64B_trex_correlated_scale_out.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_heat_rfc2544_ipv4_1flow_trex_correlated_scale_out.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -26,8 +26,8 @@ scenarios: {% endfor %} options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: {% for vnf_num in range(num_vnfs|int) %} diff --git a/samples/vnf_samples/nsut/cgnapt/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml b/samples/vnf_samples/nsut/cgnapt/tc_ovs_rfc2544_ipv4_1rule_1flow_ixia.yaml index 90a3aaf6c..62a405bd8 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_ovs_rfc2544_ipv4_1rule_1flow_ixia.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf__0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/cgnapt/tc_ovs_rfc2544_ipv4_1rule_64B_trex.yaml b/samples/vnf_samples/nsut/cgnapt/tc_ovs_rfc2544_ipv4_1rule_trex.yaml index 170b2c539..0145dbdc9 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_ovs_rfc2544_ipv4_1rule_64B_trex.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_ovs_rfc2544_ipv4_1rule_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf__0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/cgnapt/tc_sriov_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml b/samples/vnf_samples/nsut/cgnapt/tc_sriov_rfc2544_ipv4_1rule_1flow_ixia.yaml index f163d33e7..421710f17 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_sriov_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_sriov_rfc2544_ipv4_1rule_1flow_ixia.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/cgnapt/tc_sriov_rfc2544_ipv4_1rule_64B_trex.yaml b/samples/vnf_samples/nsut/cgnapt/tc_sriov_rfc2544_ipv4_1rule_trex.yaml index 523cb2eb3..5f160da48 100644 --- a/samples/vnf_samples/nsut/cgnapt/tc_sriov_rfc2544_ipv4_1rule_64B_trex.yaml +++ b/samples/vnf_samples/nsut/cgnapt/tc_sriov_rfc2544_ipv4_1rule_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf__0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l2fwd_multiflow-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l2fwd_multiflow-scale-up.yaml index 31a76332c..e8145bfaa 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l2fwd_multiflow-scale-up.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l2fwd_multiflow-scale-up.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2018 Intel Corporation +# Copyright (c) 2018-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_mpls_tagging-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_mpls_tagging-scale-up.yaml index 6d6a3645d..04a6ce659 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_mpls_tagging-scale-up.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_mpls_tagging-scale-up.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2018 Intel Corporation +# Copyright (c) 2018-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/samples/vnf_samples/nsut/prox/tc_prox_sriov_l2fwd_multiflow-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_sriov_l2fwd_multiflow-scale-up.yaml index 3fefc48d0..20dcc1c9f 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_sriov_l2fwd_multiflow-scale-up.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_sriov_l2fwd_multiflow-scale-up.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2018 Intel Corporation +# Copyright (c) 2018-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/samples/vnf_samples/nsut/prox/tc_prox_sriov_mpls_tagging-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_sriov_mpls_tagging-scale-up.yaml index fb9970e6b..25e7c22af 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_sriov_mpls_tagging-scale-up.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_sriov_mpls_tagging-scale-up.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2018 Intel Corporation +# Copyright (c) 2018-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/samples/vnf_samples/nsut/router/tc_baremetal_rfc2544_ipv4_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/router/tc_baremetal_rfc2544_ipv4_1flow_trex.yaml index 7b4db0e64..18709dc02 100644 --- a/samples/vnf_samples/nsut/router/tc_baremetal_rfc2544_ipv4_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/router/tc_baremetal_rfc2544_ipv4_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - '152.16.100.26' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_1280B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports.yaml index 20305df7c..69c9a4e70 100644 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_1280B.yaml +++ b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -25,8 +25,8 @@ scenarios: cpt__0: compute_0.compute_nodes options: framesize: - uplink: {1280B: 100} - downlink: {1280B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - '10.0.2.26-10.0.2.105' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_1024B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_1024B.yaml deleted file mode 100644 index 5b268d09e..000000000 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_1024B.yaml +++ /dev/null @@ -1,102 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.baremetal - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: compute_0.compute_nodes - options: - framesize: - uplink: {1024B: 100} - downlink: {1024B: 100} - flow: - src_ip: - - '10.0.2.26-10.0.2.105' - dst_ip: - - '10.0.3.26-10.0.3.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: compute_nodes - type: Node - file: /etc/yardstick/nodes/compute.yaml - - - name: baremetal - type: Node - file: /etc/yardstick/nodes/pod.yaml - - - name: yardstick - image: vrouter_affinity_2c2p - flavor: - vcpus: 5 - ram: 20480 - disk: 10 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 5 - hw:cpu_threads: 1 - hw:mem_page_size: large - hw:cpu_policy: dedicated - hw:cpu_thread_policy: prefer - hw:numa_nodes: 1 - hw:numa_mempolicy: preffered - hw:numa_cpus.0: 0,1,2,3,4 - hw:numa_mem.0: 20480 - user: "root" - password: "password" - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - enable_dhcp: 'false' - xe1: - cidr: '10.0.3.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant3 - port_security_enabled: False - enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_128B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_128B.yaml deleted file mode 100644 index 73459c340..000000000 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_128B.yaml +++ /dev/null @@ -1,102 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.baremetal - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: compute_0.compute_nodes - options: - framesize: - uplink: {128B: 100} - downlink: {128B: 100} - flow: - src_ip: - - '10.0.2.26-10.0.2.105' - dst_ip: - - '10.0.3.26-10.0.3.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: compute_nodes - type: Node - file: /etc/yardstick/nodes/compute.yaml - - - name: baremetal - type: Node - file: /etc/yardstick/nodes/pod.yaml - - - name: yardstick - image: vrouter_affinity_2c2p - flavor: - vcpus: 5 - ram: 20480 - disk: 10 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 5 - hw:cpu_threads: 1 - hw:mem_page_size: large - hw:cpu_policy: dedicated - hw:cpu_thread_policy: prefer - hw:numa_nodes: 1 - hw:numa_mempolicy: preffered - hw:numa_cpus.0: 0,1,2,3,4 - hw:numa_mem.0: 20480 - user: "root" - password: "password" - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - enable_dhcp: 'false' - xe1: - cidr: '10.0.3.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant3 - port_security_enabled: False - enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_1518B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_1518B.yaml deleted file mode 100644 index fb7f48a2f..000000000 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_1518B.yaml +++ /dev/null @@ -1,102 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.baremetal - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: compute_0.compute_nodes - options: - framesize: - uplink: {1518B: 100} - downlink: {1518B: 100} - flow: - src_ip: - - '10.0.2.26-10.0.2.105' - dst_ip: - - '10.0.3.26-10.0.3.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 2 - interval: 35 -contexts: - - name: compute_nodes - type: Node - file: /etc/yardstick/nodes/compute.yaml - - - name: baremetal - type: Node - file: /etc/yardstick/nodes/pod.yaml - - - name: yardstick - image: vrouter_affinity_2c2p - flavor: - vcpus: 5 - ram: 20480 - disk: 10 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 5 - hw:cpu_threads: 1 - hw:mem_page_size: large - hw:cpu_policy: dedicated - hw:cpu_thread_policy: prefer - hw:numa_nodes: 1 - hw:numa_mempolicy: preffered - hw:numa_cpus.0: 0,1,2,3,4 - hw:numa_mem.0: 20480 - user: "root" - password: "password" - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - enable_dhcp: 'false' - xe1: - cidr: '10.0.3.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant3 - port_security_enabled: False - enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_256B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_256B.yaml deleted file mode 100644 index c2bc0b7d2..000000000 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_256B.yaml +++ /dev/null @@ -1,102 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.baremetal - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: compute_0.compute_nodes - options: - framesize: - uplink: {256B: 100} - downlink: {256B: 100} - flow: - src_ip: - - '10.0.2.26-10.0.2.105' - dst_ip: - - '10.0.3.26-10.0.3.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: compute_nodes - type: Node - file: /etc/yardstick/nodes/compute.yaml - - - name: baremetal - type: Node - file: /etc/yardstick/nodes/pod.yaml - - - name: yardstick - image: vrouter_affinity_2c2p - flavor: - vcpus: 5 - ram: 20480 - disk: 10 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 5 - hw:cpu_threads: 1 - hw:mem_page_size: large - hw:cpu_policy: dedicated - hw:cpu_thread_policy: prefer - hw:numa_nodes: 1 - hw:numa_mempolicy: preffered - hw:numa_cpus.0: 0,1,2,3,4 - hw:numa_mem.0: 20480 - user: "root" - password: "password" - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - enable_dhcp: 'false' - xe1: - cidr: '10.0.3.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant3 - port_security_enabled: False - enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_512B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_512B.yaml deleted file mode 100644 index bb17eb4b2..000000000 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_512B.yaml +++ /dev/null @@ -1,102 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.baremetal - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: compute_0.compute_nodes - options: - framesize: - uplink: {512B: 100} - downlink: {512B: 100} - flow: - src_ip: - - '10.0.2.26-10.0.2.105' - dst_ip: - - '10.0.3.26-10.0.3.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: compute_nodes - type: Node - file: /etc/yardstick/nodes/compute.yaml - - - name: baremetal - type: Node - file: /etc/yardstick/nodes/pod.yaml - - - name: yardstick - image: vrouter_affinity_2c2p - flavor: - vcpus: 5 - ram: 20480 - disk: 10 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 5 - hw:cpu_threads: 1 - hw:mem_page_size: large - hw:cpu_policy: dedicated - hw:cpu_thread_policy: prefer - hw:numa_nodes: 1 - hw:numa_mempolicy: preffered - hw:numa_cpus.0: 0,1,2,3,4 - hw:numa_mem.0: 20480 - user: "root" - password: "password" - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - enable_dhcp: 'false' - xe1: - cidr: '10.0.3.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant3 - port_security_enabled: False - enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_64B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_64B.yaml deleted file mode 100644 index 0726e1063..000000000 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_5cores_2ports_64B.yaml +++ /dev/null @@ -1,102 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.baremetal - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: compute_0.compute_nodes - options: - framesize: - uplink: {64B: 100} - downlink: {64B: 100} - flow: - src_ip: - - '10.0.2.26-10.0.2.105' - dst_ip: - - '10.0.3.26-10.0.3.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: compute_nodes - type: Node - file: /etc/yardstick/nodes/compute.yaml - - - name: baremetal - type: Node - file: /etc/yardstick/nodes/pod.yaml - - - name: yardstick - image: vrouter_affinity_2c2p - flavor: - vcpus: 5 - ram: 20480 - disk: 10 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 5 - hw:cpu_threads: 1 - hw:mem_page_size: large - hw:cpu_policy: dedicated - hw:cpu_thread_policy: prefer - hw:numa_nodes: 1 - hw:numa_mempolicy: preffered - hw:numa_cpus.0: 0,1,2,3,4 - hw:numa_mem.0: 20480 - user: "root" - password: "password" - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - enable_dhcp: 'false' - xe1: - cidr: '10.0.3.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant3 - port_security_enabled: False - enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_1024B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports.yaml index 6efc69c40..20d12aba4 100644 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_1024B.yaml +++ b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -25,8 +25,8 @@ scenarios: cpt__0: compute_0.compute_nodes options: framesize: - uplink: {1024B: 100} - downlink: {1024B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - '10.0.2.26-10.0.2.105' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_1280B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_1280B.yaml deleted file mode 100644 index be08b5b39..000000000 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_1280B.yaml +++ /dev/null @@ -1,120 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.baremetal - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: compute_0.compute_nodes - options: - framesize: - uplink: {1280B: 100} - downlink: {1280B: 100} - flow: - src_ip: - - '10.0.2.26-10.0.2.105' - - '10.0.4.26-10.0.4.105' - dst_ip: - - '10.0.3.26-10.0.3.105' - - '10.0.5.26-10.0.5.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: compute_nodes - type: Node - file: /etc/yardstick/nodes/compute.yaml - - - name: baremetal - type: Node - file: /etc/yardstick/nodes/pod_4p.yaml - - - name: yardstick - image: vrouter_affinity_2c4p - flavor: - vcpus: 9 - ram: 8192 - disk: 10 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - hw:mem_page_size: large - hw:cpu_policy: dedicated - hw:cpu_thread_policy: prefer - hw:numa_nodes: 2 - hw:numa_mempolicy: preffered - hw:numa_cpus.0: 0,1,2,3,4 - hw:numa_cpus.1: 5,6,7,8 - hw:numa_mem.0: 4096 - hw:numa_mem.1: 4096 - user: "root" - password: "password" - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - enable_dhcp: 'false' - xe1: - cidr: '10.0.3.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant3 - port_security_enabled: False - enable_dhcp: 'false' - xe2: - cidr: '10.0.4.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant4 - port_security_enabled: False - enable_dhcp: 'false' - xe3: - cidr: '10.0.5.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant5 - port_security_enabled: False - enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_128B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_128B.yaml deleted file mode 100644 index afc4a6839..000000000 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_128B.yaml +++ /dev/null @@ -1,120 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.baremetal - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: compute_0.compute_nodes - options: - framesize: - uplink: {128B: 100} - downlink: {128B: 100} - flow: - src_ip: - - '10.0.2.26-10.0.2.105' - - '10.0.4.26-10.0.4.105' - dst_ip: - - '10.0.3.26-10.0.3.105' - - '10.0.5.26-10.0.5.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: compute_nodes - type: Node - file: /etc/yardstick/nodes/compute.yaml - - - name: baremetal - type: Node - file: /etc/yardstick/nodes/pod_4p.yaml - - - name: yardstick - image: vrouter_affinity_2c4p - flavor: - vcpus: 9 - ram: 8192 - disk: 10 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - hw:mem_page_size: large - hw:cpu_policy: dedicated - hw:cpu_thread_policy: prefer - hw:numa_nodes: 2 - hw:numa_mempolicy: preffered - hw:numa_cpus.0: 0,1,2,3,4 - hw:numa_cpus.1: 5,6,7,8 - hw:numa_mem.0: 4096 - hw:numa_mem.1: 4096 - user: "root" - password: "password" - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - enable_dhcp: 'false' - xe1: - cidr: '10.0.3.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant3 - port_security_enabled: False - enable_dhcp: 'false' - xe2: - cidr: '10.0.4.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant4 - port_security_enabled: False - enable_dhcp: 'false' - xe3: - cidr: '10.0.5.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant5 - port_security_enabled: False - enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_1518B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_1518B.yaml deleted file mode 100644 index c0bbc8cdc..000000000 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_1518B.yaml +++ /dev/null @@ -1,120 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.baremetal - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: compute_0.compute_nodes - options: - framesize: - uplink: {1518B: 100} - downlink: {1518B: 100} - flow: - src_ip: - - '10.0.2.26-10.0.2.105' - - '10.0.4.26-10.0.4.105' - dst_ip: - - '10.0.3.26-10.0.3.105' - - '10.0.5.26-10.0.5.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: compute_nodes - type: Node - file: /etc/yardstick/nodes/compute.yaml - - - name: baremetal - type: Node - file: /etc/yardstick/nodes/pod_4p.yaml - - - name: yardstick - image: vrouter_affinity_2c4p - flavor: - vcpus: 9 - ram: 8192 - disk: 10 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - hw:mem_page_size: large - hw:cpu_policy: dedicated - hw:cpu_thread_policy: prefer - hw:numa_nodes: 2 - hw:numa_mempolicy: preffered - hw:numa_cpus.0: 0,1,2,3,4 - hw:numa_cpus.1: 5,6,7,8 - hw:numa_mem.0: 4096 - hw:numa_mem.1: 4096 - user: "root" - password: "password" - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - enable_dhcp: 'false' - xe1: - cidr: '10.0.3.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant3 - port_security_enabled: False - enable_dhcp: 'false' - xe2: - cidr: '10.0.4.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant4 - port_security_enabled: False - enable_dhcp: 'false' - xe3: - cidr: '10.0.5.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant5 - port_security_enabled: False - enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_256B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_256B.yaml deleted file mode 100644 index c78f0c2c1..000000000 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_256B.yaml +++ /dev/null @@ -1,120 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.baremetal - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: compute_0.compute_nodes - options: - framesize: - uplink: {256B: 100} - downlink: {256B: 100} - flow: - src_ip: - - '10.0.2.26-10.0.2.105' - - '10.0.4.26-10.0.4.105' - dst_ip: - - '10.0.3.26-10.0.3.105' - - '10.0.5.26-10.0.5.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: compute_nodes - type: Node - file: /etc/yardstick/nodes/compute.yaml - - - name: baremetal - type: Node - file: /etc/yardstick/nodes/pod_4p.yaml - - - name: yardstick - image: vrouter_affinity_2c4p - flavor: - vcpus: 9 - ram: 8192 - disk: 10 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - hw:mem_page_size: large - hw:cpu_policy: dedicated - hw:cpu_thread_policy: prefer - hw:numa_nodes: 2 - hw:numa_mempolicy: preffered - hw:numa_cpus.0: 0,1,2,3,4 - hw:numa_cpus.1: 5,6,7,8 - hw:numa_mem.0: 4096 - hw:numa_mem.1: 4096 - user: "root" - password: "password" - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - enable_dhcp: 'false' - xe1: - cidr: '10.0.3.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant3 - port_security_enabled: False - enable_dhcp: 'false' - xe2: - cidr: '10.0.4.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant4 - port_security_enabled: False - enable_dhcp: 'false' - xe3: - cidr: '10.0.5.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant5 - port_security_enabled: False - enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_512B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_512B.yaml deleted file mode 100644 index 9d223299a..000000000 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_512B.yaml +++ /dev/null @@ -1,120 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.baremetal - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: compute_0.compute_nodes - options: - framesize: - uplink: {512B: 100} - downlink: {512B: 100} - flow: - src_ip: - - '10.0.2.26-10.0.2.105' - - '10.0.4.26-10.0.4.105' - dst_ip: - - '10.0.3.26-10.0.3.105' - - '10.0.5.26-10.0.5.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: compute_nodes - type: Node - file: /etc/yardstick/nodes/compute.yaml - - - name: baremetal - type: Node - file: /etc/yardstick/nodes/pod_4p.yaml - - - name: yardstick - image: vrouter_affinity_2c4p - flavor: - vcpus: 9 - ram: 8192 - disk: 10 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - hw:mem_page_size: large - hw:cpu_policy: dedicated - hw:cpu_thread_policy: prefer - hw:numa_nodes: 2 - hw:numa_mempolicy: preffered - hw:numa_cpus.0: 0,1,2,3,4 - hw:numa_cpus.1: 5,6,7,8 - hw:numa_mem.0: 4096 - hw:numa_mem.1: 4096 - user: "root" - password: "password" - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - enable_dhcp: 'false' - xe1: - cidr: '10.0.3.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant3 - port_security_enabled: False - enable_dhcp: 'false' - xe2: - cidr: '10.0.4.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant4 - port_security_enabled: False - enable_dhcp: 'false' - xe3: - cidr: '10.0.5.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant5 - port_security_enabled: False - enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_64B.yaml b/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_64B.yaml deleted file mode 100644 index 45a8c2c5a..000000000 --- a/samples/vnf_samples/nsut/router/tc_heat_external_rfc2544_ipv4_128Kflows_9cores_4ports_64B.yaml +++ /dev/null @@ -1,120 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.baremetal - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: compute_0.compute_nodes - options: - framesize: - uplink: {64B: 100} - downlink: {64B: 100} - flow: - src_ip: - - '10.0.2.26-10.0.2.105' - - '10.0.4.26-10.0.4.105' - dst_ip: - - '10.0.3.26-10.0.3.105' - - '10.0.5.26-10.0.5.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: compute_nodes - type: Node - file: /etc/yardstick/nodes/compute.yaml - - - name: baremetal - type: Node - file: /etc/yardstick/nodes/pod_4p.yaml - - - name: yardstick - image: vrouter_affinity_2c4p - flavor: - vcpus: 9 - ram: 8192 - disk: 10 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - hw:mem_page_size: large - hw:cpu_policy: dedicated - hw:cpu_thread_policy: prefer - hw:numa_nodes: 2 - hw:numa_mempolicy: preffered - hw:numa_cpus.0: 0,1,2,3,4 - hw:numa_cpus.1: 5,6,7,8 - hw:numa_mem.0: 4096 - hw:numa_mem.1: 4096 - user: "root" - password: "password" - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - enable_dhcp: 'false' - xe1: - cidr: '10.0.3.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant3 - port_security_enabled: False - enable_dhcp: 'false' - xe2: - cidr: '10.0.4.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant4 - port_security_enabled: False - enable_dhcp: 'false' - xe3: - cidr: '10.0.5.0/24' - gateway_ip: 'null' - provider: true - physical_network: phystenant5 - port_security_enabled: False - enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_1024B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_1024B_trex.yaml deleted file mode 100644 index b3e4157f5..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_1024B_trex.yaml +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {1024B: 100} - downlink: {1024B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 4 - # override pmd_threads; use specific cpus - pmd_cpu_mask: "0x78" - lcore_mask: "0x4" - ram: - socket_0: 2048 - socket_1: 2048 - queues: 4 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu_5cores.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 5 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='11'/> - <vcpupin vcpu='1' cpuset='12'/> - <vcpupin vcpu='2' cpuset='13'/> - <vcpupin vcpu='3' cpuset='14'/> - <vcpupin vcpu='4' cpuset='15'/> - </cputune>" - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/30' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:1a:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:18:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.100.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_1280B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_1280B_trex.yaml deleted file mode 100644 index 6d1353297..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_1280B_trex.yaml +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {1280B: 100} - downlink: {1280B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 4 - # override pmd_threads; Use specific cpus - pmd_cpu_mask: "0x78" - lcore_mask: "0x4" - ram: - socket_0: 2048 - socket_1: 2048 - queues: 4 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu_5cores.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 5 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='11'/> - <vcpupin vcpu='1' cpuset='12'/> - <vcpupin vcpu='2' cpuset='13'/> - <vcpupin vcpu='3' cpuset='14'/> - <vcpupin vcpu='4' cpuset='15'/> - </cputune>" - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:1a:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:18:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.100.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_128B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_128B_trex.yaml deleted file mode 100644 index 99e9b8d0e..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_128B_trex.yaml +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {128B: 100} - downlink: {128B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 4 - # override pmd_threads; use specific CPUs - pmd_cpu_mask: "0x78" - lcore_mask: "0x4" - ram: - socket_0: 2048 - socket_1: 2048 - queues: 4 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu_5cores.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 5 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='11'/> - <vcpupin vcpu='1' cpuset='12'/> - <vcpupin vcpu='2' cpuset='13'/> - <vcpupin vcpu='3' cpuset='14'/> - <vcpupin vcpu='4' cpuset='15'/> - </cputune>" - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:1a:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:18:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.100.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_1518B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_1518B_trex.yaml deleted file mode 100644 index 1a1be3732..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_1518B_trex.yaml +++ /dev/null @@ -1,115 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {1518B: 100} - downlink: {1518B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 2 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 4 - pmd_cpu_mask: "0x78" - lcore_mask: "0x4" - ram: - socket_0: 2048 - socket_1: 2048 - queues: 4 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu_5cores.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 5 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='11'/> - <vcpupin vcpu='1' cpuset='12'/> - <vcpupin vcpu='2' cpuset='13'/> - <vcpupin vcpu='3' cpuset='14'/> - <vcpupin vcpu='4' cpuset='15'/> - </cputune>" - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:1a:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:18:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_256B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_256B_trex.yaml deleted file mode 100644 index 6c30b621e..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_256B_trex.yaml +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {256B: 100} - downlink: {256B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 4 - # override pmd_threads to use specific cpus - pmd_cpu_mask: "0x78" - lcore_mask: "0x4" - ram: - socket_0: 2048 - socket_1: 2048 - queues: 4 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu_5cores.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 5 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='11'/> - <vcpupin vcpu='1' cpuset='12'/> - <vcpupin vcpu='2' cpuset='13'/> - <vcpupin vcpu='3' cpuset='14'/> - <vcpupin vcpu='4' cpuset='15'/> - </cputune>" - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:1a:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:18:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.100.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_64B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_64B_trex.yaml deleted file mode 100644 index c141f4e57..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_64B_trex.yaml +++ /dev/null @@ -1,116 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {64B: 100} - downlink: {64B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 4 - # override pmd_threads to use specific cpus - pmd_cpu_mask: "0x78" - lcore_mask: "0x4" - ram: - socket_0: 2048 - socket_1: 2048 - queues: 4 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu_5cores.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 5 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='11'/> - <vcpupin vcpu='1' cpuset='12'/> - <vcpupin vcpu='2' cpuset='13'/> - <vcpupin vcpu='3' cpuset='14'/> - <vcpupin vcpu='4' cpuset='15'/> - </cputune>" - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:1a:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:18:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.100.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_512B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_trex.yaml index ddb59cbe6..9077e9288 100644 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_512B_trex.yaml +++ b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_5cores_2ports_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -25,8 +25,8 @@ scenarios: cpt__0: ovs_dpdk.yardstick options: framesize: - uplink: {512B: 100} - downlink: {512B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - '152.16.100.26-152.16.100.105' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_1024B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_1024B_trex.yaml deleted file mode 100644 index bfa5ba4f0..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_1024B_trex.yaml +++ /dev/null @@ -1,106 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {1024B: 100} - downlink: {1024B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 4 - ram: - socket_0: 2048 - socket_1: 2048 - queues: 4 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 7 - hw:cpu_threads: 1 - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/30' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:1a:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:18:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.100.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_1280B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_1280B_trex.yaml deleted file mode 100644 index ea5fb16a9..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_1280B_trex.yaml +++ /dev/null @@ -1,106 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {1280B: 100} - downlink: {1280B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 4 - ram: - socket_0: 2048 - socket_1: 2048 - queues: 4 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 7 - hw:cpu_threads: 1 - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:1a:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:18:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.100.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_128B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_128B_trex.yaml deleted file mode 100644 index fea64f5e7..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_128B_trex.yaml +++ /dev/null @@ -1,106 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {128B: 100} - downlink: {128B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 4 - ram: - socket_0: 2048 - socket_1: 2048 - queues: 4 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 7 - hw:cpu_threads: 1 - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:1a:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:18:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.100.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_1518B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_1518B_trex.yaml deleted file mode 100644 index ac38751e9..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_1518B_trex.yaml +++ /dev/null @@ -1,106 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {1518B: 100} - downlink: {1518B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 4 - ram: - socket_0: 2048 - socket_1: 2048 - queues: 4 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 7 - hw:cpu_threads: 1 - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:1a:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:18:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_512B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_512B_trex.yaml deleted file mode 100644 index 6417d9342..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_512B_trex.yaml +++ /dev/null @@ -1,106 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {512B: 100} - downlink: {512B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 4 - ram: - socket_0: 2048 - socket_1: 2048 - queues: 4 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 7 - hw:cpu_threads: 1 - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:1a:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:18:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.100.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_64B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_64B_trex.yaml deleted file mode 100644 index ae46b865f..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_64B_trex.yaml +++ /dev/null @@ -1,106 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {64B: 100} - downlink: {64B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 7 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 4 - ram: - socket_0: 2048 - socket_1: 2048 - queues: 4 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 7 - hw:cpu_threads: 1 - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:1a:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:18:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.100.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_256B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_trex.yaml index 145f69d89..fe323ae1f 100644 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_256B_trex.yaml +++ b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_7cores_2ports_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -25,8 +25,8 @@ scenarios: cpt__0: ovs_dpdk.yardstick options: framesize: - uplink: {256B: 100} - downlink: {256B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - '152.16.100.26-152.16.100.105' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_1280B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_1280B_trex.yaml deleted file mode 100644 index 0467436ba..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_1280B_trex.yaml +++ /dev/null @@ -1,141 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput-2.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {1280B: 100} - downlink: {1280B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 8 - # override pmd_threads to use NUMA 1 vcpus - pmd_cpu_mask: "0x3FC00000" - lcore_mask: "0x200000" - ram: - socket_0: 0 - socket_1: 4096 - queues: 2 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu_9cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='31'/> - <vcpupin vcpu='1' cpuset='32'/> - <vcpupin vcpu='2' cpuset='33'/> - <vcpupin vcpu='3' cpuset='34'/> - <vcpupin vcpu='4' cpuset='35'/> - <vcpupin vcpu='5' cpuset='36'/> - <vcpupin vcpu='6' cpuset='37'/> - <vcpupin vcpu='7' cpuset='38'/> - <vcpupin vcpu='8' cpuset='39'/> - <emulatorpin cpuset='31-39'/> - </cputune>" - - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - #gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - #gateway_ip: '152.16.40.20' - uplink_1: - port_num: 2 - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - port_num: 3 - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_128B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_128B_trex.yaml deleted file mode 100644 index 30119c76d..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_128B_trex.yaml +++ /dev/null @@ -1,141 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput-2.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {128B: 100} - downlink: {128B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 8 - # override pmd_threads to use NUMA 1 vcpus - pmd_cpu_mask: "0x3FC00000" - lcore_mask: "0x200000" - ram: - socket_0: 0 - socket_1: 4096 - queues: 2 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu_9cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='31'/> - <vcpupin vcpu='1' cpuset='32'/> - <vcpupin vcpu='2' cpuset='33'/> - <vcpupin vcpu='3' cpuset='34'/> - <vcpupin vcpu='4' cpuset='35'/> - <vcpupin vcpu='5' cpuset='36'/> - <vcpupin vcpu='6' cpuset='37'/> - <vcpupin vcpu='7' cpuset='38'/> - <vcpupin vcpu='8' cpuset='39'/> - <emulatorpin cpuset='31-39'/> - </cputune>" - - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - port_num: 2 - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - port_num: 3 - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_1518B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_1518B_trex.yaml deleted file mode 100644 index ac52c29c5..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_1518B_trex.yaml +++ /dev/null @@ -1,142 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput-2.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {1518B: 100} - downlink: {1518B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 5 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 8 - # override pmd_threads to use NUMA 1 vcpus - # 8 cores (CPU 22-29) in NUMA 1 of a 2 socket 20 cpus per socket - pmd_cpu_mask: "0x3FC00000" - lcore_mask: "0x200000" - ram: - socket_0: 0 - socket_1: 4096 - queues: 2 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu_9cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='31'/> - <vcpupin vcpu='1' cpuset='32'/> - <vcpupin vcpu='2' cpuset='33'/> - <vcpupin vcpu='3' cpuset='34'/> - <vcpupin vcpu='4' cpuset='35'/> - <vcpupin vcpu='5' cpuset='36'/> - <vcpupin vcpu='6' cpuset='37'/> - <vcpupin vcpu='7' cpuset='38'/> - <vcpupin vcpu='8' cpuset='39'/> - <emulatorpin cpuset='31-39'/> - </cputune>" - - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - port_num: 2 - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - port_num: 3 - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_256B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_256B_trex.yaml deleted file mode 100644 index 2767851a6..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_256B_trex.yaml +++ /dev/null @@ -1,141 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput-2.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {256B: 100} - downlink: {256B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 8 - # override pmd_threads to use NUMA 1 vcpus - pmd_cpu_mask: "0x3FC00000" - lcore_mask: "0x200000" - ram: - socket_0: 0 - socket_1: 4096 - queues: 2 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu_9cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='31'/> - <vcpupin vcpu='1' cpuset='32'/> - <vcpupin vcpu='2' cpuset='33'/> - <vcpupin vcpu='3' cpuset='34'/> - <vcpupin vcpu='4' cpuset='35'/> - <vcpupin vcpu='5' cpuset='36'/> - <vcpupin vcpu='6' cpuset='37'/> - <vcpupin vcpu='7' cpuset='38'/> - <vcpupin vcpu='8' cpuset='39'/> - <emulatorpin cpuset='31-39'/> - </cputune>" - - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - port_num: 2 - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - port_num: 3 - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_512B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_512B_trex.yaml deleted file mode 100644 index 006718fa2..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_512B_trex.yaml +++ /dev/null @@ -1,141 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput-2.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {512B: 100} - downlink: {512B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 8 - # override pmd_threads to use NUMA 1 vcpus - pmd_cpu_mask: "0x3FC00000" - lcore_mask: "0x200000" - ram: - socket_0: 0 - socket_1: 4096 - queues: 2 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu_9cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='31'/> - <vcpupin vcpu='1' cpuset='32'/> - <vcpupin vcpu='2' cpuset='33'/> - <vcpupin vcpu='3' cpuset='34'/> - <vcpupin vcpu='4' cpuset='35'/> - <vcpupin vcpu='5' cpuset='36'/> - <vcpupin vcpu='6' cpuset='37'/> - <vcpupin vcpu='7' cpuset='38'/> - <vcpupin vcpu='8' cpuset='39'/> - <emulatorpin cpuset='31-39'/> - </cputune>" - - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - port_num: 2 - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - port_num: 3 - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_64B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_64B_trex.yaml deleted file mode 100644 index 601d30891..000000000 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_64B_trex.yaml +++ /dev/null @@ -1,140 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput-2.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: ovs_dpdk.yardstick - options: - framesize: - uplink: {64B: 100} - downlink: {64B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - - name: yardstick - type: StandaloneOvsDpdk - file: /etc/yardstick/nodes/standalone/pod_ovs.yaml - vm_deploy: True - ovs_properties: - version: - ovs: 2.7.0 - dpdk: 16.11.1 - pmd_threads: 8 - # override pmd_threads to use NUMA 1 vcpus - pmd_cpu_mask: "0x3FC00000" - lcore_mask: "0x200000" - ram: - socket_0: 0 - socket_1: 4096 - queues: 2 - vpath: "/usr/local" - - flavor: - images: "/var/lib/libvirt/images/ubuntu_9cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='31'/> - <vcpupin vcpu='1' cpuset='32'/> - <vcpupin vcpu='2' cpuset='33'/> - <vcpupin vcpu='3' cpuset='34'/> - <vcpupin vcpu='4' cpuset='35'/> - <vcpupin vcpu='5' cpuset='36'/> - <vcpupin vcpu='6' cpuset='37'/> - <vcpupin vcpu='7' cpuset='38'/> - <vcpupin vcpu='8' cpuset='39'/> - <emulatorpin cpuset='31-39'/> - </cputune>" - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - port_num: 0 - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - port_num: 1 - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - port_num: 2 - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - port_num: 3 - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' diff --git a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_1024B_trex.yaml b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_trex.yaml index d947e254f..b7a918a80 100644 --- a/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_1024B_trex.yaml +++ b/samples/vnf_samples/nsut/router/tc_ovs_rfc2544_ipv4_128Kflows_9cores_4ports_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -25,8 +25,8 @@ scenarios: cpt__0: ovs_dpdk.yardstick options: framesize: - uplink: {1024B: 100} - downlink: {1024B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - '152.16.100.26-152.16.100.105' @@ -97,7 +97,6 @@ contexts: <vcpupin vcpu='8' cpuset='39'/> <emulatorpin cpuset='31-39'/> </cputune>" - user: "root" password: "password" servers: diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_1024B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_1024B_trex.yaml deleted file mode 100644 index 18e25e25d..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_1024B_trex.yaml +++ /dev/null @@ -1,125 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: sriov.yardstick - options: - framesize: - uplink: {1024B: 100} - downlink: {1024B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - name: yardstick - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu_13cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 13 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='27'/> - <vcpupin vcpu='1' cpuset='28'/> - <vcpupin vcpu='2' cpuset='29'/> - <vcpupin vcpu='3' cpuset='30'/> - <vcpupin vcpu='4' cpuset='31'/> - <vcpupin vcpu='5' cpuset='32'/> - <vcpupin vcpu='6' cpuset='33'/> - <vcpupin vcpu='7' cpuset='34'/> - <vcpupin vcpu='8' cpuset='35'/> - <vcpupin vcpu='9' cpuset='36'/> - <vcpupin vcpu='10' cpuset='37'/> - <vcpupin vcpu='11' cpuset='38'/> - <vcpupin vcpu='12' cpuset='39'/> - <emulatorpin cpuset='27-39'/> - </cputune>" - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' - diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_1280B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_1280B_trex.yaml deleted file mode 100644 index bfaf74b5c..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_1280B_trex.yaml +++ /dev/null @@ -1,125 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: sriov.yardstick - options: - framesize: - uplink: {1280B: 100} - downlink: {1280B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - name: yardstick - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu_13cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 13 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='27'/> - <vcpupin vcpu='1' cpuset='28'/> - <vcpupin vcpu='2' cpuset='29'/> - <vcpupin vcpu='3' cpuset='30'/> - <vcpupin vcpu='4' cpuset='31'/> - <vcpupin vcpu='5' cpuset='32'/> - <vcpupin vcpu='6' cpuset='33'/> - <vcpupin vcpu='7' cpuset='34'/> - <vcpupin vcpu='8' cpuset='35'/> - <vcpupin vcpu='9' cpuset='36'/> - <vcpupin vcpu='10' cpuset='37'/> - <vcpupin vcpu='11' cpuset='38'/> - <vcpupin vcpu='12' cpuset='39'/> - <emulatorpin cpuset='27-39'/> - </cputune>" - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' - diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_128B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_128B_trex.yaml deleted file mode 100644 index 529c8a5ef..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_128B_trex.yaml +++ /dev/null @@ -1,125 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: sriov.yardstick - options: - framesize: - uplink: {128B: 100} - downlink: {128B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - name: yardstick - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu_13cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 13 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='27'/> - <vcpupin vcpu='1' cpuset='28'/> - <vcpupin vcpu='2' cpuset='29'/> - <vcpupin vcpu='3' cpuset='30'/> - <vcpupin vcpu='4' cpuset='31'/> - <vcpupin vcpu='5' cpuset='32'/> - <vcpupin vcpu='6' cpuset='33'/> - <vcpupin vcpu='7' cpuset='34'/> - <vcpupin vcpu='8' cpuset='35'/> - <vcpupin vcpu='9' cpuset='36'/> - <vcpupin vcpu='10' cpuset='37'/> - <vcpupin vcpu='11' cpuset='38'/> - <vcpupin vcpu='12' cpuset='39'/> - <emulatorpin cpuset='27-39'/> - </cputune>" - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' - diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_256B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_256B_trex.yaml deleted file mode 100644 index 9e1e8ebd3..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_256B_trex.yaml +++ /dev/null @@ -1,125 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: sriov.yardstick - options: - framesize: - uplink: {256B: 100} - downlink: {256B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - name: yardstick - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu_13cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 13 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='27'/> - <vcpupin vcpu='1' cpuset='28'/> - <vcpupin vcpu='2' cpuset='29'/> - <vcpupin vcpu='3' cpuset='30'/> - <vcpupin vcpu='4' cpuset='31'/> - <vcpupin vcpu='5' cpuset='32'/> - <vcpupin vcpu='6' cpuset='33'/> - <vcpupin vcpu='7' cpuset='34'/> - <vcpupin vcpu='8' cpuset='35'/> - <vcpupin vcpu='9' cpuset='36'/> - <vcpupin vcpu='10' cpuset='37'/> - <vcpupin vcpu='11' cpuset='38'/> - <vcpupin vcpu='12' cpuset='39'/> - <emulatorpin cpuset='27-39'/> - </cputune>" - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' - diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_512B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_512B_trex.yaml deleted file mode 100644 index 4b3fbe4b3..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_512B_trex.yaml +++ /dev/null @@ -1,125 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: sriov.yardstick - options: - framesize: - uplink: {512B: 100} - downlink: {512B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - name: yardstick - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu_13cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 13 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='27'/> - <vcpupin vcpu='1' cpuset='28'/> - <vcpupin vcpu='2' cpuset='29'/> - <vcpupin vcpu='3' cpuset='30'/> - <vcpupin vcpu='4' cpuset='31'/> - <vcpupin vcpu='5' cpuset='32'/> - <vcpupin vcpu='6' cpuset='33'/> - <vcpupin vcpu='7' cpuset='34'/> - <vcpupin vcpu='8' cpuset='35'/> - <vcpupin vcpu='9' cpuset='36'/> - <vcpupin vcpu='10' cpuset='37'/> - <vcpupin vcpu='11' cpuset='38'/> - <vcpupin vcpu='12' cpuset='39'/> - <emulatorpin cpuset='27-39'/> - </cputune>" - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' - diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_64B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_64B_trex.yaml deleted file mode 100644 index d23ab4e69..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_64B_trex.yaml +++ /dev/null @@ -1,125 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: sriov.yardstick - options: - framesize: - uplink: {64B: 100} - downlink: {64B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - name: yardstick - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu_13cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 13 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='27'/> - <vcpupin vcpu='1' cpuset='28'/> - <vcpupin vcpu='2' cpuset='29'/> - <vcpupin vcpu='3' cpuset='30'/> - <vcpupin vcpu='4' cpuset='31'/> - <vcpupin vcpu='5' cpuset='32'/> - <vcpupin vcpu='6' cpuset='33'/> - <vcpupin vcpu='7' cpuset='34'/> - <vcpupin vcpu='8' cpuset='35'/> - <vcpupin vcpu='9' cpuset='36'/> - <vcpupin vcpu='10' cpuset='37'/> - <vcpupin vcpu='11' cpuset='38'/> - <vcpupin vcpu='12' cpuset='39'/> - <emulatorpin cpuset='27-39'/> - </cputune>" - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' - diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_1518B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_trex.yaml index 0d2cdfbc0..1d6edca5c 100644 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_1518B_trex.yaml +++ b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_4ports_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -25,8 +25,8 @@ scenarios: cpt__0: sriov.yardstick options: framesize: - uplink: {1518B: 100} - downlink: {1518B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - '152.16.100.26-152.16.100.105' diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_6ports_1518B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_6ports_1518B_trex.yaml index 0353b3875..3675ec808 100644 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_6ports_1518B_trex.yaml +++ b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_13cores_6ports_1518B_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -25,8 +25,8 @@ scenarios: cpt__0: sriov.yardstick options: framesize: - uplink: {1518B: 100} - downlink: {1518B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - '152.16.100.26-152.16.100.105' diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_1024B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_1024B_trex.yaml deleted file mode 100644 index 4fa22975f..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_1024B_trex.yaml +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick - cpt__0: sriov.yardstick - options: - framesize: - uplink: {1024B: 100} - downlink: {1024B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 4 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 6 - hw:cpu_threads: 2 - user: "root" - password: "password" - servers: - vnf: - network_ports: - mgmt: - ip: '192.168.18.185' - cidr: '192.168.18.185/30' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - phy_port: "0000:07:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:07:00.1" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_1280B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_1280B_trex.yaml deleted file mode 100644 index a7acbafdd..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_1280B_trex.yaml +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick - cpt__0: sriov.yardstick - options: - framesize: - uplink: {1280B: 100} - downlink: {1280B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 4 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 7 - hw:cpu_threads: 1 - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '192.168.18.185' - cidr: '192.168.18.185/30' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - phy_port: "0000:07:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:07:00.1" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_128B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_128B_trex.yaml deleted file mode 100644 index 121aaec4b..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_128B_trex.yaml +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick - cpt__0: sriov.yardstick - options: - framesize: - uplink: {128B: 100} - downlink: {128B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 4 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 7 - hw:cpu_threads: 1 - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '192.168.18.185' - cidr: '192.168.18.185/30' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - phy_port: "0000:07:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:07:00.1" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.100.20' diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_1518B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_1518B_trex.yaml deleted file mode 100644 index 6e856c80e..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_1518B_trex.yaml +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick - cpt__0: sriov.yardstick - options: - framesize: - uplink: {1518B: 100} - downlink: {1518B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 4 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 7 - hw:cpu_threads: 1 - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '192.168.18.185' - cidr: '192.168.18.185/30' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - phy_port: "0000:07:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:07:00.1" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_256B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_256B_trex.yaml deleted file mode 100644 index 54a26bc49..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_256B_trex.yaml +++ /dev/null @@ -1,92 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick - cpt__0: sriov.yardstick - options: - framesize: - uplink: {256B: 100} - downlink: {256B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 4 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 7 - hw:cpu_threads: 1 - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '192.168.18.185' - cidr: '192.168.18.185/30' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - phy_port: "0000:07:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:07:00.1" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.100.20' diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_512B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_512B_trex.yaml deleted file mode 100644 index 1ed39c236..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_512B_trex.yaml +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick - cpt__0: sriov.yardstick - options: - framesize: - uplink: {512B: 100} - downlink: {512B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 4 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex.yaml - - - name: yardstick - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu.qcow2" - ram: 4096 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 7 - hw:cpu_threads: 1 - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '192.168.18.185' - cidr: '192.168.18.185/30' - xe0: - - uplink_0 - xe1: - - downlink_0 - networks: - uplink_0: - phy_port: "0000:07:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:07:00.1" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.100.20' diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_64B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_trex.yaml index c128df37b..88e40c3d1 100644 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_64B_trex.yaml +++ b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_7cores_2ports_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -24,8 +24,8 @@ scenarios: cpt__0: sriov.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - '152.16.100.26-152.16.100.105' diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_1280B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_1280B_trex.yaml deleted file mode 100644 index cf73e1690..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_1280B_trex.yaml +++ /dev/null @@ -1,121 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: sriov.yardstick - options: - framesize: - uplink: {1280B: 100} - downlink: {1280B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - name: yardstick - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu_9cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='31'/> - <vcpupin vcpu='1' cpuset='32'/> - <vcpupin vcpu='2' cpuset='33'/> - <vcpupin vcpu='3' cpuset='34'/> - <vcpupin vcpu='4' cpuset='35'/> - <vcpupin vcpu='5' cpuset='36'/> - <vcpupin vcpu='6' cpuset='37'/> - <vcpupin vcpu='7' cpuset='38'/> - <vcpupin vcpu='8' cpuset='39'/> - <emulatorpin cpuset='31-39'/> - </cputune>" - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' - diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_128B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_128B_trex.yaml deleted file mode 100644 index 493acb20b..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_128B_trex.yaml +++ /dev/null @@ -1,121 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: sriov.yardstick - options: - framesize: - uplink: {128B: 100} - downlink: {128B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - name: yardstick - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu_9cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='31'/> - <vcpupin vcpu='1' cpuset='32'/> - <vcpupin vcpu='2' cpuset='33'/> - <vcpupin vcpu='3' cpuset='34'/> - <vcpupin vcpu='4' cpuset='35'/> - <vcpupin vcpu='5' cpuset='36'/> - <vcpupin vcpu='6' cpuset='37'/> - <vcpupin vcpu='7' cpuset='38'/> - <vcpupin vcpu='8' cpuset='39'/> - <emulatorpin cpuset='31-39'/> - </cputune>" - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' - diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_1518B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_1518B_trex.yaml deleted file mode 100644 index 6a88e3b8c..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_1518B_trex.yaml +++ /dev/null @@ -1,121 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: sriov.yardstick - options: - framesize: - uplink: {1518B: 100} - downlink: {1518B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - name: yardstick - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu_9cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='31'/> - <vcpupin vcpu='1' cpuset='32'/> - <vcpupin vcpu='2' cpuset='33'/> - <vcpupin vcpu='3' cpuset='34'/> - <vcpupin vcpu='4' cpuset='35'/> - <vcpupin vcpu='5' cpuset='36'/> - <vcpupin vcpu='6' cpuset='37'/> - <vcpupin vcpu='7' cpuset='38'/> - <vcpupin vcpu='8' cpuset='39'/> - <emulatorpin cpuset='31-39'/> - </cputune>" - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' - diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_256B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_256B_trex.yaml deleted file mode 100644 index 79aba6043..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_256B_trex.yaml +++ /dev/null @@ -1,121 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: sriov.yardstick - options: - framesize: - uplink: {256B: 100} - downlink: {256B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - name: yardstick - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu_9cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='31'/> - <vcpupin vcpu='1' cpuset='32'/> - <vcpupin vcpu='2' cpuset='33'/> - <vcpupin vcpu='3' cpuset='34'/> - <vcpupin vcpu='4' cpuset='35'/> - <vcpupin vcpu='5' cpuset='36'/> - <vcpupin vcpu='6' cpuset='37'/> - <vcpupin vcpu='7' cpuset='38'/> - <vcpupin vcpu='8' cpuset='39'/> - <emulatorpin cpuset='31-39'/> - </cputune>" - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' - diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_512B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_512B_trex.yaml deleted file mode 100644 index f83c78872..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_512B_trex.yaml +++ /dev/null @@ -1,121 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: sriov.yardstick - options: - framesize: - uplink: {512B: 100} - downlink: {512B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - name: yardstick - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu_9cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='31'/> - <vcpupin vcpu='1' cpuset='32'/> - <vcpupin vcpu='2' cpuset='33'/> - <vcpupin vcpu='3' cpuset='34'/> - <vcpupin vcpu='4' cpuset='35'/> - <vcpupin vcpu='5' cpuset='36'/> - <vcpupin vcpu='6' cpuset='37'/> - <vcpupin vcpu='7' cpuset='38'/> - <vcpupin vcpu='8' cpuset='39'/> - <emulatorpin cpuset='31-39'/> - </cputune>" - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' - diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_64B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_64B_trex.yaml deleted file mode 100644 index 2c4397233..000000000 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_64B_trex.yaml +++ /dev/null @@ -1,121 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml - topology: router-tg-topology-4port.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick -# Required for enabling NFVi collection - cpt__0: sriov.yardstick - options: - framesize: - uplink: {64B: 100} - downlink: {64B: 100} - flow: - src_ip: - - '152.16.100.26-152.16.100.105' - - '152.16.101.26-152.16.101.105' - dst_ip: - - '152.16.40.26-152.16.40.105' - - '152.16.41.26-152.16.41.105' - src_port: - - '1234-1238' - dst_port: - - '2001-2004' - count: 128000 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.1 - tg__0: - queues_per_port: 8 - vnf__0: - nfvi_enable: True - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - - name: yardstick - type: Node - file: /etc/yardstick/nodes/standalone/pod_trex_4ports.yaml - - type: StandaloneSriov - file: /etc/yardstick/nodes/standalone/host_sriov.yaml - name: yardstick - vm_deploy: True - flavor: - images: "/var/lib/libvirt/images/ubuntu_9cores.qcow2" - ram: 4096 - hw_socket: 1 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 9 - hw:cpu_threads: 1 - cputune: "<cputune> - <vcpupin vcpu='0' cpuset='31'/> - <vcpupin vcpu='1' cpuset='32'/> - <vcpupin vcpu='2' cpuset='33'/> - <vcpupin vcpu='3' cpuset='34'/> - <vcpupin vcpu='4' cpuset='35'/> - <vcpupin vcpu='5' cpuset='36'/> - <vcpupin vcpu='6' cpuset='37'/> - <vcpupin vcpu='7' cpuset='38'/> - <vcpupin vcpu='8' cpuset='39'/> - <emulatorpin cpuset='31-39'/> - </cputune>" - user: root - password: password - servers: - vnf: - network_ports: - mgmt: - ip: '10.166.31.252' - cidr: '10.166.31.252/28' - xe0: - - uplink_0 - xe1: - - downlink_0 - xe2: - - uplink_1 - xe3: - - downlink_1 - networks: - uplink_0: - phy_port: "0000:88:00.0" - vpci: "0000:00:07.0" - cidr: '152.16.100.19/24' - gateway_ip: '152.16.100.20' - downlink_0: - phy_port: "0000:d8:00.0" - vpci: "0000:00:08.0" - cidr: '152.16.40.19/24' - gateway_ip: '152.16.40.20' - uplink_1: - phy_port: "0000:81:00.0" - vpci: "0000:00:09.0" - cidr: '152.16.101.19/24' - gateway_ip: '152.16.101.20' - downlink_1: - phy_port: "0000:86:00.0" - vpci: "0000:00:0a.0" - cidr: '152.16.41.19/24' - gateway_ip: '152.16.41.20' - diff --git a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_1024B_trex.yaml b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_trex.yaml index 7be7c991c..f9f1bbc10 100644 --- a/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_1024B_trex.yaml +++ b/samples/vnf_samples/nsut/router/tc_sriov_rfc2544_ipv4_128Kflows_9cores_4ports_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -25,8 +25,8 @@ scenarios: cpt__0: sriov.yardstick options: framesize: - uplink: {1024B: 100} - downlink: {1024B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - '152.16.100.26-152.16.100.105' diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_1024k_Requests-65000_Concurrency.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_1024k_Requests-65000_Concurrency.yaml deleted file mode 100644 index a87996c1a..000000000 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_1024k_Requests-65000_Concurrency.yaml +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: "../../traffic_profiles/http_tests/HTTP_1024k-requests_65000_concurrency.yaml" - topology: vfw_vnf_topology_ixload.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick - options: - framesize: - uplink: {64B: 100} - downlink: {64B: 100} - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.0001 - vnf__0: - rules: acl_1rule.yaml - vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1} - nfvi_enable: True - runner: - type: Duration - duration: 2 - ixia_profile: ../../traffic_profiles/vfw/HTTP-vFW_IPv4_2Ports.rxf # Need vlan update -context: - type: Node - name: yardstick - nfvi_type: baremetal - file: /etc/yardstick/nodes/pod_ixia.yaml - diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml index 7a9a265d6..fbd994a34 100644 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,8 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set page_size = page_size or "1b" %} +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -25,10 +26,10 @@ scenarios: simulated_users: uplink: [65000] page_object: - uplink: ["/1b.html"] + uplink: ["/{{ page_size }}.html"] #supports /1b /4k /8k /16k /32k /64k /128k.... framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} traffic_type: 4 rfc2544: allowed_drop_rate: 0.0001 - 0.0001 diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency_4port.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency_4port.yaml index a62e447bf..9182f69a6 100644 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency_4port.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency_4port.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} traffic_type: 4 rfc2544: allowed_drop_rate: 0.0001 - 0.0001 diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_256k_Requests-65000_Concurrency.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_256k_Requests-65000_Concurrency.yaml deleted file mode 100644 index 82cdd6210..000000000 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_256k_Requests-65000_Concurrency.yaml +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: "../../traffic_profiles/http_tests/HTTP_256k-requests_65000_concurrency.yaml" - topology: vfw_vnf_topology_ixload.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick - options: - framesize: - uplink: {64B: 100} - downlink: {64B: 100} - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.0001 - vnf__0: - rules: acl_1rule.yaml - vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1} - nfvi_enable: True - runner: - type: Duration - duration: 2 - ixia_profile: ../../traffic_profiles/vfw/HTTP-vFW_IPv4_2Ports.rxf # Need vlan update -context: - type: Node - name: yardstick - nfvi_type: baremetal - file: /etc/yardstick/nodes/pod_ixia.yaml - diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_4k_Requests-65000_Concurrency.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_4k_Requests-65000_Concurrency.yaml deleted file mode 100644 index 00131b5f9..000000000 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_4k_Requests-65000_Concurrency.yaml +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: "../../traffic_profiles/http_tests/HTTP_4k-requests_65000_concurrency.yaml" - topology: vfw_vnf_topology_ixload.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick - options: - framesize: - uplink: {64B: 100} - downlink: {64B: 100} - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.0001 - vnf__0: - rules: acl_1rule.yaml - vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1} - nfvi_enable: True - runner: - type: Duration - duration: 2 - ixia_profile: ../../traffic_profiles/vfw/HTTP-vFW_IPv4_2Ports.rxf # Need vlan update -context: - type: Node - name: yardstick - nfvi_type: baremetal - file: /etc/yardstick/nodes/pod_ixia.yaml - diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_512k_Requests-65000_Concurrency.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_512k_Requests-65000_Concurrency.yaml deleted file mode 100644 index 8fcd66e31..000000000 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_512k_Requests-65000_Concurrency.yaml +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: "../../traffic_profiles/http_tests/HTTP_512k-requests_65000_concurrency.yaml" - topology: vfw_vnf_topology_ixload.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick - options: - framesize: - uplink: {64B: 100} - downlink: {64B: 100} - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.0001 - vnf__0: - rules: acl_1rule.yaml - vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1} - nfvi_enable: True - runner: - type: Duration - duration: 2 - ixia_profile: ../../traffic_profiles/vfw/HTTP-vFW_IPv4_2Ports.rxf # Need vlan update -context: - type: Node - name: yardstick - nfvi_type: baremetal - file: /etc/yardstick/nodes/pod_ixia.yaml - diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_64k_Requests-65000_Concurrency.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_64k_Requests-65000_Concurrency.yaml deleted file mode 100644 index 3b354243b..000000000 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_64k_Requests-65000_Concurrency.yaml +++ /dev/null @@ -1,43 +0,0 @@ -# Copyright (c) 2016-2017 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: "../../traffic_profiles/http_tests/HTTP_64k-requests_65000_concurrency.yaml" - topology: vfw_vnf_topology_ixload.yaml - nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick - options: - framesize: - uplink: {64B: 100} - downlink: {64B: 100} - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.0001 - vnf__0: - rules: acl_1rule.yaml - vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1} - nfvi_enable: True - runner: - type: Duration - duration: 2 - ixia_profile: ../../traffic_profiles/vfw/HTTP-vFW_IPv4_2Ports.rxf # Need vlan update -context: - type: Node - name: yardstick - nfvi_type: baremetal - file: /etc/yardstick/nodes/pod_ixia.yaml diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_ixia.yaml index 5f5fa4b95..964172622 100644 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_ixia.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia_4port.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_ixia_4port.yaml index 9055eb896..0cc67f017 100644 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia_4port.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_ixia_4port.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}, {'tg__0': 'xe2'}] dst_ip: [{'tg__0': 'xe1'}, {'tg__0': 'xe3'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia_scale_up.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_ixia_scale_up.yaml index 07138d60a..afb60715c 100644 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia_scale_up.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_ixia_scale_up.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -24,8 +24,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex.yaml index a3082eeea..613be57f5 100644 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {128B: 100} - downlink: {128B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex_4port.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex_4port.yaml index 30f44d082..9e87c7a55 100644 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex_4port.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex_4port.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}, {'tg__0': 'xe2'}] dst_ip: [{'tg__0': 'xe1'}, {'tg__0': 'xe3'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex_corelated_traffic.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex_correlated_traffic.yaml index 0c4119cf6..efa97196d 100644 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex_corelated_traffic.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex_correlated_traffic.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the License); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -24,8 +24,8 @@ scenarios: tg__1: trafficgen_2.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__1': 'xe0'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex_scale_up.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex_scale_up.yaml index caafe9161..aed62db0a 100644 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_trex_scale_up.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_trex_scale_up.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -24,8 +24,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_with_latency_ipv4_1rule_1flow_64B_ixia.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_with_latency_ipv4_1rule_1flow_ixia.yaml index 077f1fb15..edd33ffd3 100644 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_with_latency_ipv4_1rule_1flow_64B_ixia.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_with_latency_ipv4_1rule_1flow_ixia.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_with_latency_ipv4_1rule_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_with_latency_ipv4_1rule_1flow_trex.yaml index d51a1e983..aca260858 100644 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_with_latency_ipv4_1rule_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_with_latency_ipv4_1rule_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_external_http_ixload_1b_Requests-10Gbps_Throughput.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_external_http_ixload_1b_Requests-10Gbps_Throughput.yaml index 24d87663e..a9ac40c9c 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_external_http_ixload_1b_Requests-10Gbps_Throughput.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_external_http_ixload_1b_Requests-10Gbps_Throughput.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - private: {64B: 100} - public: {64B: 100} + private: {{ framesize }} + public: {{ framesize }} traffic_type: 4 rfc2544: allowed_drop_rate: 0.0001 - 0.0001 diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_external_http_ixload_1b_Requests-65000_Concurrency.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_external_http_ixload_1b_Requests-65000_Concurrency.yaml index 4b3c45f20..29a2bc6ef 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_external_http_ixload_1b_Requests-65000_Concurrency.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_external_http_ixload_1b_Requests-65000_Concurrency.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - private: {64B: 100} - public: {64B: 100} + private: {{ framesize }} + public: {{ framesize }} traffic_type: 4 rfc2544: allowed_drop_rate: 0.0001 - 0.0001 diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_external_http_ixload_1b_Requests-65000_Connections.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_external_http_ixload_1b_Requests-65000_Connections.yaml index 065143cf9..0dfd5fd16 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_external_http_ixload_1b_Requests-65000_Connections.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_external_http_ixload_1b_Requests-65000_Connections.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - private: {64B: 100} - public: {64B: 100} + private: {{ framesize }} + public: {{ framesize }} traffic_type: 4 rfc2544: allowed_drop_rate: 0.0001 - 0.0001 diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_1024B_ixia.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_1024B_ixia.yaml deleted file mode 100644 index 7b597d64a..000000000 --- a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_1024B_ixia.yaml +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright (c) 2017-2018 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ixia_ipv4_latency.yaml - topology: vfw_vnf_topology_ixia.yaml - nodes: - tg__0: trafficgen_1.yardstick1 - vnf__0: vnf.yardstick - options: - framesize: - uplink: {1024B: 100} - downlink: {1024B: 100} - flow: - src_ip: [{'tg__0': 'xe0'}] - dst_ip: [{'tg__0': 'xe1'}] - count: 1 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.0001 - vnf__0: - rules: acl_1rule.yaml - vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1} - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - # put node context first, so we don't HEAT deploy if node has errors - - name: yardstick1 - type: Node - file: ixia.yml - - name: yardstick - image: yardstick-samplevnfs - flavor: - vcpus: 10 - ram: 20480 - disk: 6 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 10 - hw:cpu_threads: 1 - user: ubuntu - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - vld_id: downlink_0 - gateway_ip: 'null' - provider: true - physical_network: phystenant1 - port_security_enabled: False - xe1: - cidr: '10.0.3.0/24' - vld_id: uplink_0 - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_1280B_ixia.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_1280B_ixia.yaml deleted file mode 100644 index 03e6c3477..000000000 --- a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_1280B_ixia.yaml +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright (c) 2017-2018 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ixia_ipv4_latency.yaml - topology: vfw_vnf_topology_ixia.yaml - nodes: - tg__0: trafficgen_1.yardstick1 - vnf__0: vnf.yardstick - options: - framesize: - uplink: {1280B: 100} - downlink: {1280B: 100} - flow: - src_ip: [{'tg__0': 'xe0'}] - dst_ip: [{'tg__0': 'xe1'}] - count: 1 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.0001 - vnf__0: - rules: acl_1rule.yaml - vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1} - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - # put node context first, so we don't HEAT deploy if node has errors - - name: yardstick1 - type: Node - file: ixia.yml - - name: yardstick - image: yardstick-samplevnfs - flavor: - vcpus: 10 - ram: 20480 - disk: 6 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 10 - hw:cpu_threads: 1 - user: ubuntu - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - vld_id: downlink_0 - gateway_ip: 'null' - provider: true - physical_network: phystenant1 - port_security_enabled: False - xe1: - cidr: '10.0.3.0/24' - vld_id: uplink_0 - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_128B_ixia.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_128B_ixia.yaml deleted file mode 100644 index 516afcdb0..000000000 --- a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_128B_ixia.yaml +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright (c) 2017-2018 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ixia_ipv4_latency.yaml - topology: vfw_vnf_topology_ixia.yaml - nodes: - tg__0: trafficgen_1.yardstick1 - vnf__0: vnf.yardstick - options: - framesize: - uplink: {128B: 100} - downlink: {128B: 100} - flow: - src_ip: [{'tg__0': 'xe0'}] - dst_ip: [{'tg__0': 'xe1'}] - count: 1 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.0001 - vnf__0: - rules: acl_1rule.yaml - vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1} - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - # put node context first, so we don't HEAT deploy if node has errors - - name: yardstick1 - type: Node - file: ixia.yml - - name: yardstick - image: yardstick-samplevnfs - flavor: - vcpus: 10 - ram: 20480 - disk: 6 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 10 - hw:cpu_threads: 1 - user: ubuntu - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - vld_id: downlink_0 - gateway_ip: 'null' - provider: true - physical_network: phystenant1 - port_security_enabled: False - xe1: - cidr: '10.0.3.0/24' - vld_id: uplink_0 - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False - diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_1518B_ixia.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_1518B_ixia.yaml deleted file mode 100644 index 73f21cac2..000000000 --- a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_1518B_ixia.yaml +++ /dev/null @@ -1,81 +0,0 @@ -# Copyright (c) 2017-2018 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ixia_ipv4_latency.yaml - topology: vfw_vnf_topology_ixia.yaml - nodes: - tg__0: trafficgen_1.yardstick1 - vnf__0: vnf.yardstick - options: - framesize: - uplink: {1518B: 100} - downlink: {1518B: 100} - flow: - src_ip: [{'tg__0': 'xe0'}] - dst_ip: [{'tg__0': 'xe1'}] - count: 1 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.0001 - vnf__0: - rules: acl_1rule.yaml - vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1} - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - # put node context first, so we don't HEAT deploy if node has errors - - name: yardstick1 - type: Node - file: ixia.yml - - name: yardstick - image: yardstick-samplevnfs - flavor: - vcpus: 10 - ram: 20480 - disk: 6 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 10 - hw:cpu_threads: 1 - user: ubuntu - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - vld_id: downlink_0 - gateway_ip: 'null' - provider: true - physical_network: phystenant1 - port_security_enabled: False - xe1: - cidr: '10.0.3.0/24' - vld_id: uplink_0 - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_256B_ixia.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_256B_ixia.yaml deleted file mode 100644 index 4603ad0b7..000000000 --- a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_256B_ixia.yaml +++ /dev/null @@ -1,81 +0,0 @@ -# Copyright (c) 2017-2018 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ixia_ipv4_latency.yaml - topology: vfw_vnf_topology_ixia.yaml - nodes: - tg__0: trafficgen_1.yardstick1 - vnf__0: vnf.yardstick - options: - framesize: - uplink: {256B: 100} - downlink: {256B: 100} - flow: - src_ip: [{'tg__0': 'xe0'}] - dst_ip: [{'tg__0': 'xe1'}] - count: 1 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.0001 - vnf__0: - rules: acl_1rule.yaml - vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1} - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - # put node context first, so we don't HEAT deploy if node has errors - - name: yardstick1 - type: Node - file: ixia.yml - - name: yardstick - image: yardstick-samplevnfs - flavor: - vcpus: 10 - ram: 20480 - disk: 6 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 10 - hw:cpu_threads: 1 - user: ubuntu - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - vld_id: downlink_0 - gateway_ip: 'null' - provider: true - physical_network: phystenant1 - port_security_enabled: False - xe1: - cidr: '10.0.3.0/24' - vld_id: uplink_0 - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_512B_ixia.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_512B_ixia.yaml deleted file mode 100644 index 340a1be9d..000000000 --- a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_512B_ixia.yaml +++ /dev/null @@ -1,81 +0,0 @@ -# Copyright (c) 2017-2018 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - ---- -schema: yardstick:task:0.1 -scenarios: -- type: NSPerf - traffic_profile: ../../traffic_profiles/ixia_ipv4_latency.yaml - topology: vfw_vnf_topology_ixia.yaml - nodes: - tg__0: trafficgen_1.yardstick1 - vnf__0: vnf.yardstick - options: - framesize: - uplink: {512B: 100} - downlink: {512B: 100} - flow: - src_ip: [{'tg__0': 'xe0'}] - dst_ip: [{'tg__0': 'xe1'}] - count: 1 - traffic_type: 4 - rfc2544: - allowed_drop_rate: 0.0001 - 0.0001 - vnf__0: - rules: acl_1rule.yaml - vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1} - runner: - type: Iteration - iterations: 10 - interval: 35 -contexts: - # put node context first, so we don't HEAT deploy if node has errors - - name: yardstick1 - type: Node - file: ixia.yml - - name: yardstick - image: yardstick-samplevnfs - flavor: - vcpus: 10 - ram: 20480 - disk: 6 - extra_specs: - hw:cpu_sockets: 1 - hw:cpu_cores: 10 - hw:cpu_threads: 1 - user: ubuntu - placement_groups: - pgrp1: - policy: "availability" - servers: - vnf: - floating_ip: true - placement: "pgrp1" - networks: - mgmt: - cidr: '10.0.1.0/24' - xe0: - cidr: '10.0.2.0/24' - vld_id: downlink_0 - gateway_ip: 'null' - provider: true - physical_network: phystenant1 - port_security_enabled: False - xe1: - cidr: '10.0.3.0/24' - vld_id: uplink_0 - gateway_ip: 'null' - provider: true - physical_network: phystenant2 - port_security_enabled: False diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_ixia.yaml index 042eb24be..10ee99059 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_ixia.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017-2018 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf_0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_trex.yaml index 502436ced..392dd8e7d 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_64B_trex_4port.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_trex_4port.yaml index c94ab313a..9db058700 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_64B_trex_4port.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_trex_4port.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf_0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}, {'tg__0': 'xe2'}] dst_ip: [{'tg__0': 'xe1'}, {'tg__0': 'xe3'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex.yaml index 2e096a126..6b538ef6a 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- {% set provider = provider or none %} {% set physical_networks = physical_networks or ['physnet1', 'physnet2'] %} @@ -27,8 +27,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_4port.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_4port.yaml index 980efe433..5e6f77696 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_4port.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_4port.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf_0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}, {'tg__0': 'xe2'}] dst_ip: [{'tg__0': 'xe1'}, {'tg__0': 'xe3'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_computeKPI.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_computeKPI.yaml index b0972c53f..336b4f0b9 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_computeKPI.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_computeKPI.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 @@ -26,8 +26,8 @@ scenarios: cpt__0: compute_0.compute_nodes options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_scale_10.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_scale_10.yaml index 1d9c4e1c6..fc1243f97 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_scale_10.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_scale_10.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -33,8 +33,8 @@ scenarios: vnf__9: vnf_9.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - {'tg__0': 'xe0'} diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_scale_2.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_scale_2.yaml index bfda0bb7f..a29ca110f 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_scale_2.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_scale_2.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -25,8 +25,8 @@ scenarios: vnf__1: vnf_1.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - {'tg__0': 'xe0'} diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_scale_4.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_scale_4.yaml index bd29ab76c..433d30b7b 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_scale_4.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_scale_4.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -27,8 +27,8 @@ scenarios: vnf__3: vnf_3.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: - {'tg__0': 'xe0'} diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_scale_out.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_scale_out.yaml index be15e4550..d4c540229 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_correlated_scale_out.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_correlated_scale_out.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2017 Intel Corporation +# Copyright (c) 2017-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -26,8 +26,8 @@ scenarios: {% endfor %} options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: {% for vnf_num in range(num_vnfs|int) %} diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_iterationipc.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_iterationipc.yaml index 184ed6881..3e6933731 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_iterationipc.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_iterationipc.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- {% set provider = provider or none %} {% set physical_networks = physical_networks or ['physnet1', 'physnet2'] %} @@ -28,8 +28,8 @@ scenarios: options: hugepages_gb: 8 framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_scale-up.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_scale-up.yaml index eaeee7103..34871be63 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_scale-up.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_scale-up.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,6 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. +{% set framesize = framesize or "{64B: 100}" %} {% set mem = mem or 20480 %} {% set vcpus = vcpus or 10 %} {% set vports = vports or 2 %} @@ -27,8 +28,8 @@ scenarios: vnf__0: vnf_0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [ {% for vport in range(0,vports,2|int) %} diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_scale_out.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_scale_out.yaml index f1408931f..915919f1c 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_scale_out.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_trex_scale_out.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2018 Intel Corporation +# Copyright (c) 2018-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,6 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. +{% set framesize = framesize or "{64B: 100}" %} {% set num_vnfs = num_vnfs or 1 %} {% set availability_zone = availability_zone or {} %} --- @@ -28,8 +29,8 @@ scenarios: {% endfor %} options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: {% for vnf_num in range(num_vnfs|int) %} diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_sriov_external_rfc2544_ipv4_1rule_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_sriov_external_rfc2544_ipv4_1rule_1flow_trex.yaml index 4be8e9b16..cd0121883 100644 --- a/samples/vnf_samples/nsut/vfw/tc_heat_sriov_external_rfc2544_ipv4_1rule_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_heat_sriov_external_rfc2544_ipv4_1rule_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml b/samples/vnf_samples/nsut/vfw/tc_ovs_rfc2544_ipv4_1rule_1flow_ixia.yaml index d23c74677..4e5f7b18e 100644 --- a/samples/vnf_samples/nsut/vfw/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_ovs_rfc2544_ipv4_1rule_1flow_ixia.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf__0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/vfw/tc_ovs_rfc2544_ipv4_1rule_1flow_trex.yaml index 4aeadc6db..19c069a2e 100644 --- a/samples/vnf_samples/nsut/vfw/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_ovs_rfc2544_ipv4_1rule_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf__0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_sriov_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml b/samples/vnf_samples/nsut/vfw/tc_sriov_rfc2544_ipv4_1rule_1flow_ixia.yaml index 96cdf0f6e..144644096 100644 --- a/samples/vnf_samples/nsut/vfw/tc_sriov_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_sriov_rfc2544_ipv4_1rule_1flow_ixia.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/nsut/vfw/tc_sriov_rfc2544_ipv4_1rule_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/vfw/tc_sriov_rfc2544_ipv4_1rule_1flow_trex.yaml index 221ead4f9..2a7583bb8 100644 --- a/samples/vnf_samples/nsut/vfw/tc_sriov_rfc2544_ipv4_1rule_1flow_64B_trex.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_sriov_rfc2544_ipv4_1rule_1flow_trex.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - +{% set framesize = framesize or "{64B: 100}" %} --- schema: yardstick:task:0.1 scenarios: @@ -23,8 +23,8 @@ scenarios: vnf__0: vnf__0.yardstick options: framesize: - uplink: {64B: 100} - downlink: {64B: 100} + uplink: {{ framesize }} + downlink: {{ framesize }} flow: src_ip: [{'tg__0': 'xe0'}] dst_ip: [{'tg__0': 'xe1'}] diff --git a/samples/vnf_samples/traffic_profiles/http_tests/HTTP_1024K-requests_65000_concurrency.yaml b/samples/vnf_samples/traffic_profiles/http_tests/HTTP_1024K-requests_65000_concurrency.yaml deleted file mode 100644 index bfc75982f..000000000 --- a/samples/vnf_samples/traffic_profiles/http_tests/HTTP_1024K-requests_65000_concurrency.yaml +++ /dev/null @@ -1,24 +0,0 @@ -schema: "nsb:traffic_profile:0.1" - -name: TrafficProfileGenericHTTP -description: Traffic profile to run HTTP test -traffic_profile: - traffic_type: TrafficProfileGenericHTTP - -#http client specific values -uplink_0: - http_no_requests: "1000" # number of http iterations - http_concurency: "65000" # number of threads to be run - http_locator: "/1024K.bin" # http locator to be read - http_peer_address: "152.40.40.20" # address range of the servers - http_peer_port: "9004" # port range of the server - http_client_address: "152.16.100.20" # address range of the servers - private_subnet_mask: "255.255.255.0" - attacker_tests: "False" # True : If attacker Test, False : Otherwise - -#http server side -downlink_0: - http_locator_image_size: "1024KB" # image size requested by http client - http_bind_address: "152.40.40.20" # where address is bound - http_bind_port: "9004" # when port is bound - public_subnet_mask: "255.255.255.0" diff --git a/samples/vnf_samples/traffic_profiles/http_tests/HTTP_256K-requests_65000_concurrency.yaml b/samples/vnf_samples/traffic_profiles/http_tests/HTTP_256K-requests_65000_concurrency.yaml deleted file mode 100644 index 100257533..000000000 --- a/samples/vnf_samples/traffic_profiles/http_tests/HTTP_256K-requests_65000_concurrency.yaml +++ /dev/null @@ -1,24 +0,0 @@ -schema: "nsb:traffic_profile:0.1" - -name: TrafficProfileGenericHTTP -description: Traffic profile to run HTTP test -traffic_profile: - traffic_type: TrafficProfileGenericHTTP - -#http client specific values -uplink_0: - http_no_requests: "1000" # number of http iterations - http_concurency: "65000" # number of threads to be run - http_locator: "/256K.bin" # http locator to be read - http_peer_address: "152.40.40.20" # address range of the servers - http_peer_port: "9004" # port range of the server - http_client_address: "152.16.100.20" # address range of the servers - private_subnet_mask: "255.255.255.0" - attacker_tests: "False" # True : If attacker Test, False : Otherwise - -#http server side -downlink_0: - http_locator_image_size: "256KB" # image size requested by http client - http_bind_address: "152.40.40.20" # where address is bound - http_bind_port: "9004" # when port is bound - public_subnet_mask: "255.255.255.0" diff --git a/samples/vnf_samples/traffic_profiles/http_tests/HTTP_4K-requests_65000_concurrency.yaml b/samples/vnf_samples/traffic_profiles/http_tests/HTTP_4K-requests_65000_concurrency.yaml deleted file mode 100644 index a62aeb210..000000000 --- a/samples/vnf_samples/traffic_profiles/http_tests/HTTP_4K-requests_65000_concurrency.yaml +++ /dev/null @@ -1,24 +0,0 @@ -schema: "nsb:traffic_profile:0.1" - -name: TrafficProfileGenericHTTP -description: Traffic profile to run HTTP test -traffic_profile: - traffic_type: TrafficProfileGenericHTTP - -#http client specific values -uplink_0: - http_no_requests: "1000" # number of http iterations - http_concurency: "65000" # number of threads to be run - http_locator: "/4K.bin" # http locator to be read - http_peer_address: "152.40.40.20" # address range of the servers - http_peer_port: "9004" # port range of the server - http_client_address: "152.16.100.20" # address range of the servers - private_subnet_mask: "255.255.255.0" - attacker_tests: "False" # True : If attacker Test, False : Otherwise - -#http server side -downlink_0: - http_locator_image_size: "4KB" # image size requested by http client - http_bind_address: "152.40.40.20" # where address is bound - http_bind_port: "9004" # when port is bound - public_subnet_mask: "255.255.255.0" diff --git a/samples/vnf_samples/traffic_profiles/http_tests/HTTP_512K-requests_65000_concurrency.yaml b/samples/vnf_samples/traffic_profiles/http_tests/HTTP_512K-requests_65000_concurrency.yaml deleted file mode 100644 index 9fd76354f..000000000 --- a/samples/vnf_samples/traffic_profiles/http_tests/HTTP_512K-requests_65000_concurrency.yaml +++ /dev/null @@ -1,24 +0,0 @@ -schema: "nsb:traffic_profile:0.1" - -name: TrafficProfileGenericHTTP -description: Traffic profile to run HTTP test -traffic_profile: - traffic_type: TrafficProfileGenericHTTP - -#http client specific values -uplink_0: - http_no_requests: "1000" # number of http iterations - http_concurency: "65000" # number of threads to be run - http_locator: "/512K.bin" # http locator to be read - http_peer_address: "152.40.40.20" # address range of the servers - http_peer_port: "9004" # port range of the server - http_client_address: "152.16.100.20" # address range of the servers - private_subnet_mask: "255.255.255.0" - attacker_tests: "False" # True : If attacker Test, False : Otherwise - -#http server side -downlink_0: - http_locator_image_size: "512KB" # image size requested by http client - http_bind_address: "152.40.40.20" # where address is bound - http_bind_port: "9004" # when port is bound - public_subnet_mask: "255.255.255.0" diff --git a/samples/vnf_samples/traffic_profiles/http_tests/HTTP_64K-requests_65000_concurrency.yaml b/samples/vnf_samples/traffic_profiles/http_tests/HTTP_64K-requests_65000_concurrency.yaml deleted file mode 100644 index 4585b31e9..000000000 --- a/samples/vnf_samples/traffic_profiles/http_tests/HTTP_64K-requests_65000_concurrency.yaml +++ /dev/null @@ -1,24 +0,0 @@ -schema: "nsb:traffic_profile:0.1" - -name: TrafficProfileGenericHTTP -description: Traffic profile to run HTTP test -traffic_profile: - traffic_type: TrafficProfileGenericHTTP - -#http client specific values -uplink_0: - http_no_requests: "1000" # number of http iterations - http_concurency: "65000" # number of threads to be run - http_locator: "/64K.bin" # http locator to be read - http_peer_address: "152.40.40.20" # address range of the servers - http_peer_port: "9004" # port range of the server - http_client_address: "152.16.100.20" # address range of the servers - private_subnet_mask: "255.255.255.0" - attacker_tests: "False" # True : If attacker Test, False : Otherwise - -#http server side -downlink_0: - http_locator_image_size: "64KB" # image size requested by http client - http_bind_address: "152.40.40.20" # where address is bound - http_bind_port: "9004" # when port is bound - public_subnet_mask: "255.255.255.0" diff --git a/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_L3.yaml b/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_L3.yaml index d1abcaf48..24688fe95 100644 --- a/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_L3.yaml +++ b/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_L3.yaml @@ -1,4 +1,4 @@ -# Copyright (c) 2018 Intel Corporation +# Copyright (c) 2018-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc019.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc019.yaml index 08037d9fa..1ed3a3ea6 100644 --- a/tests/opnfv/test_cases/opnfv_yardstick_tc019.yaml +++ b/tests/opnfv/test_cases/opnfv_yardstick_tc019.yaml @@ -40,8 +40,6 @@ scenarios: host: {{attack_host}} monitor_time: 30 monitor_number: 3 - sla: - max_recover_time: 30 nodes: {{attack_host}}: {{attack_host}}.LF diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc045.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc045.yaml index bc7cd3d28..b23855dc1 100644 --- a/tests/opnfv/test_cases/opnfv_yardstick_tc045.yaml +++ b/tests/opnfv/test_cases/opnfv_yardstick_tc045.yaml @@ -38,8 +38,6 @@ scenarios: host: {{attack_host}} monitor_time: 30 monitor_number: 3 - sla: - max_recover_time: 30 nodes: {{attack_host}}: {{attack_host}}.LF diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc046.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc046.yaml index 3b04cc4bd..5bbe72610 100644 --- a/tests/opnfv/test_cases/opnfv_yardstick_tc046.yaml +++ b/tests/opnfv/test_cases/opnfv_yardstick_tc046.yaml @@ -38,8 +38,6 @@ scenarios: host: {{attack_host}} monitor_time: 30 monitor_number: 3 - sla: - max_recover_time: 30 nodes: {{attack_host}}: {{attack_host}}.LF diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc047.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc047.yaml index d199e5117..a8783d6e8 100644 --- a/tests/opnfv/test_cases/opnfv_yardstick_tc047.yaml +++ b/tests/opnfv/test_cases/opnfv_yardstick_tc047.yaml @@ -38,8 +38,6 @@ scenarios: host: {{attack_host}} monitor_time: 30 monitor_number: 3 - sla: - max_recover_time: 30 nodes: {{attack_host}}: {{attack_host}}.LF diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc048.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc048.yaml index 2bca1fb9d..6a4dc8798 100644 --- a/tests/opnfv/test_cases/opnfv_yardstick_tc048.yaml +++ b/tests/opnfv/test_cases/opnfv_yardstick_tc048.yaml @@ -38,8 +38,6 @@ scenarios: host: {{attack_host}} monitor_time: 30 monitor_number: 3 - sla: - max_recover_time: 30 nodes: {{attack_host}}: {{attack_host}}.LF diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc053.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc053.yaml index c2a4f9ede..7b5f77813 100644 --- a/tests/opnfv/test_cases/opnfv_yardstick_tc053.yaml +++ b/tests/opnfv/test_cases/opnfv_yardstick_tc053.yaml @@ -36,8 +36,6 @@ scenarios: host: {{attack_host}} monitor_time: 30 monitor_number: 3 - sla: - max_recover_time: 30 - monitor_type: "openstack-cmd" diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc056.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc056.yaml index 9194d9d4e..41314be27 100644 --- a/tests/opnfv/test_cases/opnfv_yardstick_tc056.yaml +++ b/tests/opnfv/test_cases/opnfv_yardstick_tc056.yaml @@ -61,8 +61,6 @@ scenarios: process_name: "{{ attack_process }}" host: {{attack_host}} monitor_time: 30 - sla: - max_recover_time: 30 nodes: {{attack_host}}: {{attack_host}}.LF diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc058.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc058.yaml index 06d460032..effb20a48 100644 --- a/tests/opnfv/test_cases/opnfv_yardstick_tc058.yaml +++ b/tests/opnfv/test_cases/opnfv_yardstick_tc058.yaml @@ -37,8 +37,6 @@ scenarios: host: {{attack_host}} key: "monitor-recovery" monitor_time: 30 - sla: - max_recover_time: 30 - monitor_type: "general-monitor" diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc088.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc088.yaml index c2f1cbe33..c1b065711 100644 --- a/tests/opnfv/test_cases/opnfv_yardstick_tc088.yaml +++ b/tests/opnfv/test_cases/opnfv_yardstick_tc088.yaml @@ -38,8 +38,6 @@ scenarios: host: {{attack_host}} monitor_time: 30 monitor_number: 3 - sla: - max_recover_time: 30 operations: - diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc089.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc089.yaml index d10650e03..9379d2f75 100644 --- a/tests/opnfv/test_cases/opnfv_yardstick_tc089.yaml +++ b/tests/opnfv/test_cases/opnfv_yardstick_tc089.yaml @@ -38,8 +38,6 @@ scenarios: host: {{attack_host}} monitor_time: 30 monitor_number: 3 - sla: - max_recover_time: 30 operations: - diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc090.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc090.yaml index 41372045d..eaf14f60e 100644 --- a/tests/opnfv/test_cases/opnfv_yardstick_tc090.yaml +++ b/tests/opnfv/test_cases/opnfv_yardstick_tc090.yaml @@ -57,8 +57,6 @@ scenarios: host: {{attack_host}} monitor_time: {{monitor_time}} monitor_number: 3 - sla: - max_recover_time: 30 nodes: {{attack_host}}: {{attack_host}}.LF diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc091.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc091.yaml index d952464a1..54ef6f237 100644 --- a/tests/opnfv/test_cases/opnfv_yardstick_tc091.yaml +++ b/tests/opnfv/test_cases/opnfv_yardstick_tc091.yaml @@ -38,8 +38,6 @@ scenarios: host: {{attack_host}} monitor_time: 30 monitor_number: 3 - sla: - max_recover_time: 30 nodes: {{attack_host}}: {{attack_host}}.LF diff --git a/yardstick/benchmark/core/report.py b/yardstick/benchmark/core/report.py index 0bc392fe5..b7d2fd02b 100644 --- a/yardstick/benchmark/core/report.py +++ b/yardstick/benchmark/core/report.py @@ -1,6 +1,6 @@ ############################################################################## # Copyright (c) 2017 Rajesh Kudaka <4k.rajesh@gmail.com> -# Copyright (c) 2018 Intel Corporation. +# Copyright (c) 2018-2019 Intel Corporation. # # All rights reserved. This program and the accompanying materials # are made available under the terms of the Apache License, Version 2.0 @@ -10,13 +10,12 @@ """ Handler for yardstick command 'report' """ -import ast import re +import six import uuid import jinja2 from api.utils import influx -from oslo_utils import encodeutils from oslo_utils import uuidutils from yardstick.common import constants as consts from yardstick.common.utils import cliargs @@ -55,11 +54,9 @@ class JSTree(object): def format_for_jstree(self, data): """Format the data into the required format for jsTree. - The data format expected is a list of key-value pairs which represent - the data and label for each metric e.g.: + The data format expected is a list of metric names e.g.: - [{'data': [0, ], 'label': 'tg__0.DropPackets'}, - {'data': [548, ], 'label': 'tg__0.LatencyAvg.5'},] + ['tg__0.DropPackets', 'tg__0.LatencyAvg.5'] This data is converted into the format required for jsTree to group and display the metrics in a hierarchial fashion, including creating a @@ -76,8 +73,8 @@ class JSTree(object): self._created_nodes = ['#'] self.jstree_data = [] - for item in data: - self._create_node(item["label"]) + for metric in data: + self._create_node(metric) return self.jstree_data @@ -115,15 +112,34 @@ class Report(object): else: raise KeyError("Test case not found.") - def _get_tasks(self): - task_cmd = "select * from \"%s\" where task_id= '%s'" - task_query = task_cmd % (self.yaml_name, self.task_id) - query_exec = influx.query(task_query) + def _get_metrics(self): + metrics_cmd = "select * from \"%s\" where task_id = '%s'" + metrics_query = metrics_cmd % (self.yaml_name, self.task_id) + query_exec = influx.query(metrics_query) if query_exec: return query_exec else: raise KeyError("Task ID or Test case not found.") + def _get_trimmed_timestamp(self, metric_time, resolution=4): + if not isinstance(metric_time, str): + metric_time = metric_time.encode('utf8') # PY2: unicode to str + metric_time = metric_time[11:] # skip date, keep time + head, _, tail = metric_time.partition('.') # split HH:MM:SS & nsZ + metric_time = head + '.' + tail[:resolution] # join HH:MM:SS & .us + return metric_time + + def _get_timestamps(self, metrics, resolution=6): + # Extract the timestamps from a list of metrics + timestamps = [] + for metric in metrics: + metric_time = self._get_trimmed_timestamp( + metric['time'], resolution) + timestamps.append(metric_time) # HH:MM:SS.micros + return timestamps + + @cliargs("task_id", type=str, help=" task id", nargs=1) + @cliargs("yaml_name", type=str, help=" Yaml file Name", nargs=1) def _generate_common(self, args): """Actions that are common to both report formats. @@ -132,38 +148,64 @@ class Report(object): """ self._validate(args.yaml_name[0], args.task_id[0]) - self.db_fieldkeys = self._get_fieldkeys() + db_fieldkeys = self._get_fieldkeys() + # list of dicts of: + # - PY2: unicode key and unicode value + # - PY3: str key and str value - self.db_task = self._get_tasks() + db_metrics = self._get_metrics() + # list of dicts of: + # - PY2: unicode key and { None | unicode | float | long | int } value + # - PY3: str key and { None | str | float | int } value - field_keys = [] - datasets = [] - table_vals = {} + # extract fieldKey entries, and convert them to str where needed + field_keys = [key if isinstance(key, str) # PY3: already str + else key.encode('utf8') # PY2: unicode to str + for key in + [field['fieldKey'] + for field in db_fieldkeys]] + + # extract timestamps + self.Timestamp = self._get_timestamps(db_metrics) - field_keys = [encodeutils.to_utf8(field['fieldKey']) - for field in self.db_fieldkeys] + # prepare return values + datasets = [] + table_vals = {'Timestamp': self.Timestamp} + # extract and convert field values for key in field_keys: - self.Timestamp = [] values = [] - for task in self.db_task: - task_time = encodeutils.to_utf8(task['time']) - if not isinstance(task_time, str): - task_time = str(task_time, 'utf8') - if not isinstance(key, str): - key = str(key, 'utf8') - task_time = task_time[11:] - head, _, tail = task_time.partition('.') - task_time = head + "." + tail[:6] - self.Timestamp.append(task_time) - if task[key] is None: - values.append(None) - elif isinstance(task[key], (int, float)): - values.append(task[key]) + for metric in db_metrics: + val = metric.get(key, None) + if val is None: + # keep explicit None or missing entry as is + pass + elif isinstance(val, (int, float)): + # keep plain int or float as is + pass + elif six.PY2 and isinstance(val, + long): # pylint: disable=undefined-variable + # PY2: long value would be rendered with trailing L, + # which JS does not support, so convert it to float + val = float(val) + elif isinstance(val, six.string_types): + s = val + if not isinstance(s, str): + s = s.encode('utf8') # PY2: unicode to str + try: + # convert until failure + val = s + val = float(s) + val = int(s) + if six.PY2 and isinstance(val, + long): # pylint: disable=undefined-variable + val = float(val) # PY2: long to float + except ValueError: + pass else: - values.append(ast.literal_eval(task[key])) + raise ValueError("Cannot convert %r" % val) + values.append(val) datasets.append({'label': key, 'data': values}) - table_vals['Timestamp'] = self.Timestamp table_vals[key] = values return datasets, table_vals @@ -197,8 +239,14 @@ class Report(object): @cliargs("yaml_name", type=str, help=" Yaml file Name", nargs=1) def generate_nsb(self, args): """Start NSB report generation.""" - datasets, table_vals = self._generate_common(args) - jstree_data = JSTree().format_for_jstree(datasets) + _, report_data = self._generate_common(args) + report_time = report_data.pop('Timestamp') + report_keys = sorted(report_data, key=str.lower) + report_tree = JSTree().format_for_jstree(report_keys) + report_meta = { + "testcase": self.yaml_name, + "task_id": self.task_id, + } template_dir = consts.YARDSTICK_ROOT_PATH + "yardstick/common" template_environment = jinja2.Environment( @@ -207,10 +255,11 @@ class Report(object): lstrip_blocks=True) context = { - "Timestamps": self.Timestamp, - "task_id": self.task_id, - "table": table_vals, - "jstree_nodes": jstree_data, + "report_meta": report_meta, + "report_data": report_data, + "report_time": report_time, + "report_keys": report_keys, + "report_tree": report_tree, } template_html = template_environment.get_template("nsb_report.html.j2") diff --git a/yardstick/benchmark/runners/base.py b/yardstick/benchmark/runners/base.py index af2557441..94de45d1e 100755 --- a/yardstick/benchmark/runners/base.py +++ b/yardstick/benchmark/runners/base.py @@ -25,9 +25,6 @@ import traceback from six import moves from yardstick.benchmark.scenarios import base as base_scenario -from yardstick.common import messaging -from yardstick.common.messaging import payloads -from yardstick.common.messaging import producer from yardstick.common import utils from yardstick.dispatcher.base import Base as DispatcherBase @@ -80,6 +77,33 @@ def _periodic_action(interval, command, queue): queue.put({'periodic-action-data': data}) +class ScenarioOutput(dict): + + QUEUE_PUT_TIMEOUT = 10 + + def __init__(self, queue, **kwargs): + super(ScenarioOutput, self).__init__() + self._queue = queue + self.result_ext = dict() + for key, val in kwargs.items(): + self.result_ext[key] = val + setattr(self, key, val) + + def push(self, data=None, add_timestamp=True): + if data is None: + data = dict(self) + + if add_timestamp: + result = {'timestamp': time.time(), 'data': data} + else: + result = data + + for key in self.result_ext.keys(): + result[key] = getattr(self, key) + + self._queue.put(result, True, self.QUEUE_PUT_TIMEOUT) + + class Runner(object): runners = [] @@ -271,22 +295,3 @@ class Runner(object): dispatchers = DispatcherBase.get(self.config['output_config']) dispatcher = next((d for d in dispatchers if d.__dispatcher_type__ == 'Influxdb')) dispatcher.upload_one_record(record, self.case_name, '', task_id=self.task_id) - - -class RunnerProducer(producer.MessagingProducer): - """Class implementing the message producer for runners""" - - def __init__(self, _id): - super(RunnerProducer, self).__init__(messaging.TOPIC_RUNNER, _id=_id) - - def start_iteration(self, version=1, data=None): - data = {} if not data else data - self.send_message( - messaging.RUNNER_METHOD_START_ITERATION, - payloads.RunnerPayload(version=version, data=data)) - - def stop_iteration(self, version=1, data=None): - data = {} if not data else data - self.send_message( - messaging.RUNNER_METHOD_STOP_ITERATION, - payloads.RunnerPayload(version=version, data=data)) diff --git a/yardstick/benchmark/runners/iteration.py b/yardstick/benchmark/runners/iteration.py index 58ab06a32..15dad2cd5 100644 --- a/yardstick/benchmark/runners/iteration.py +++ b/yardstick/benchmark/runners/iteration.py @@ -23,7 +23,6 @@ from __future__ import absolute_import import logging import multiprocessing -import time import traceback import os @@ -40,8 +39,6 @@ QUEUE_PUT_TIMEOUT = 10 def _worker_process(queue, cls, method_name, scenario_cfg, context_cfg, aborted, output_queue): - sequence = 1 - runner_cfg = scenario_cfg['runner'] interval = runner_cfg.get("interval", 1) @@ -53,6 +50,7 @@ def _worker_process(queue, cls, method_name, scenario_cfg, runner_cfg['runner_id'] = os.getpid() + scenario_output = base.ScenarioOutput(queue, sequence=1, errors="") benchmark = cls(scenario_cfg, context_cfg) if "setup" in run_step: benchmark.setup() @@ -67,22 +65,21 @@ def _worker_process(queue, cls, method_name, scenario_cfg, LOG.debug("runner=%(runner)s seq=%(sequence)s START", {"runner": runner_cfg["runner_id"], - "sequence": sequence}) - - data = {} - errors = "" + "sequence": scenario_output.sequence}) + scenario_output.clear() + scenario_output.errors = "" benchmark.pre_run_wait_time(interval) try: - result = method(data) + result = method(scenario_output) except y_exc.SLAValidationError as error: # SLA validation failed in scenario, determine what to do now if sla_action == "assert": raise elif sla_action == "monitor": LOG.warning("SLA validation failed: %s", error.args) - errors = error.args + scenario_output.errors = error.args elif sla_action == "rate-control": try: scenario_cfg['options']['rate'] @@ -91,10 +88,10 @@ def _worker_process(queue, cls, method_name, scenario_cfg, scenario_cfg['options']['rate'] = 100 scenario_cfg['options']['rate'] -= delta - sequence = 1 + scenario_output.sequence = 1 continue except Exception: # pylint: disable=broad-except - errors = traceback.format_exc() + scenario_output.errors = traceback.format_exc() LOG.exception("") raise else: @@ -105,23 +102,17 @@ def _worker_process(queue, cls, method_name, scenario_cfg, benchmark.post_run_wait_time(interval) - benchmark_output = { - 'timestamp': time.time(), - 'sequence': sequence, - 'data': data, - 'errors': errors - } - - queue.put(benchmark_output, True, QUEUE_PUT_TIMEOUT) + if scenario_output: + scenario_output.push() LOG.debug("runner=%(runner)s seq=%(sequence)s END", {"runner": runner_cfg["runner_id"], - "sequence": sequence}) + "sequence": scenario_output.sequence}) - sequence += 1 + scenario_output.sequence += 1 - if (errors and sla_action is None) or \ - (sequence > iterations or aborted.is_set()): + if (scenario_output.errors and sla_action is None) or \ + (scenario_output.sequence > iterations or aborted.is_set()): LOG.info("worker END") break if "teardown" in run_step: diff --git a/yardstick/benchmark/runners/iteration_ipc.py b/yardstick/benchmark/runners/iteration_ipc.py deleted file mode 100644 index a0335fdc7..000000000 --- a/yardstick/benchmark/runners/iteration_ipc.py +++ /dev/null @@ -1,205 +0,0 @@ -# Copyright 2018: Intel Corporation -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -"""A runner that runs a configurable number of times before it returns. Each - iteration has a configurable timeout. The loop control depends on the - feedback received from the running VNFs. The context PIDs from the VNFs - to listen the messages from are given in the scenario "setup" method. -""" - -import logging -import multiprocessing -import time -import traceback - -import os - -from yardstick.benchmark.runners import base as base_runner -from yardstick.common import exceptions -from yardstick.common import messaging -from yardstick.common import utils -from yardstick.common.messaging import consumer -from yardstick.common.messaging import payloads - - -LOG = logging.getLogger(__name__) - -QUEUE_PUT_TIMEOUT = 10 -ITERATION_TIMEOUT = 180 - - -class RunnerIterationIPCEndpoint(consumer.NotificationHandler): - """Endpoint class for ``RunnerIterationIPCConsumer``""" - - def tg_method_started(self, ctxt, **kwargs): - if ctxt['id'] in self._ctx_ids: - self._queue.put( - {'id': ctxt['id'], - 'action': messaging.TG_METHOD_STARTED, - 'payload': payloads.TrafficGeneratorPayload.dict_to_obj( - kwargs)}, - QUEUE_PUT_TIMEOUT) - - def tg_method_finished(self, ctxt, **kwargs): - if ctxt['id'] in self._ctx_ids: - self._queue.put( - {'id': ctxt['id'], - 'action': messaging.TG_METHOD_FINISHED, - 'payload': payloads.TrafficGeneratorPayload.dict_to_obj( - kwargs)}) - - def tg_method_iteration(self, ctxt, **kwargs): - if ctxt['id'] in self._ctx_ids: - self._queue.put( - {'id': ctxt['id'], - 'action': messaging.TG_METHOD_ITERATION, - 'payload': payloads.TrafficGeneratorPayload.dict_to_obj( - kwargs)}) - - -class RunnerIterationIPCConsumer(consumer.MessagingConsumer): - """MQ consumer for "IterationIPC" runner""" - - def __init__(self, _id, ctx_ids): - self._id = _id - self._queue = multiprocessing.Queue() - endpoints = [RunnerIterationIPCEndpoint(_id, ctx_ids, self._queue)] - super(RunnerIterationIPCConsumer, self).__init__( - messaging.TOPIC_TG, ctx_ids, endpoints) - self._kpi_per_id = {ctx: [] for ctx in ctx_ids} - self.iteration_index = None - - def is_all_kpis_received_in_iteration(self): - """Check if all producers registered have sent the ITERATION msg - - During the present iteration, all producers (traffic generators) must - start and finish the traffic injection, and at the end of the traffic - injection a TG_METHOD_ITERATION must be sent. This function will check - all KPIs in the present iteration are received. E.g.: - self.iteration_index = 2 - - self._kpi_per_id = { - 'ctx1': [kpi0, kpi1, kpi2], - 'ctx2': [kpi0, kpi1]} --> return False - - self._kpi_per_id = { - 'ctx1': [kpi0, kpi1, kpi2], - 'ctx2': [kpi0, kpi1, kpi2]} --> return True - """ - while not self._queue.empty(): - msg = self._queue.get(True, 1) - if msg['action'] == messaging.TG_METHOD_ITERATION: - id_iter_list = self._kpi_per_id[msg['id']] - id_iter_list.append(msg['payload'].kpi) - - return all(len(id_iter_list) == self.iteration_index - for id_iter_list in self._kpi_per_id.values()) - - -def _worker_process(queue, cls, method_name, scenario_cfg, - context_cfg, aborted, output_queue): # pragma: no cover - runner_cfg = scenario_cfg['runner'] - - timeout = runner_cfg.get('timeout', ITERATION_TIMEOUT) - iterations = runner_cfg.get('iterations', 1) - run_step = runner_cfg.get('run_step', 'setup,run,teardown') - LOG.info('Worker START. Iterations %d times, class %s', iterations, cls) - - runner_cfg['runner_id'] = os.getpid() - - benchmark = cls(scenario_cfg, context_cfg) - method = getattr(benchmark, method_name) - - if 'setup' not in run_step: - raise exceptions.RunnerIterationIPCSetupActionNeeded() - benchmark.setup() - producer_ctxs = benchmark.get_mq_ids() - if not producer_ctxs: - raise exceptions.RunnerIterationIPCNoCtxs() - - mq_consumer = RunnerIterationIPCConsumer(os.getpid(), producer_ctxs) - mq_consumer.start_rpc_server() - mq_producer = base_runner.RunnerProducer(scenario_cfg['task_id']) - - iteration_index = 1 - while 'run' in run_step: - LOG.debug('runner=%(runner)s seq=%(sequence)s START', - {'runner': runner_cfg['runner_id'], - 'sequence': iteration_index}) - data = {} - result = None - errors = '' - mq_consumer.iteration_index = iteration_index - mq_producer.start_iteration() - - try: - utils.wait_until_true( - mq_consumer.is_all_kpis_received_in_iteration, - timeout=timeout, sleep=2) - result = method(data) - except Exception: # pylint: disable=broad-except - errors = traceback.format_exc() - LOG.exception(errors) - - mq_producer.stop_iteration() - - if result: - output_queue.put(result, True, QUEUE_PUT_TIMEOUT) - benchmark_output = {'timestamp': time.time(), - 'sequence': iteration_index, - 'data': data, - 'errors': errors} - queue.put(benchmark_output, True, QUEUE_PUT_TIMEOUT) - - LOG.debug('runner=%(runner)s seq=%(sequence)s END', - {'runner': runner_cfg['runner_id'], - 'sequence': iteration_index}) - - iteration_index += 1 - if iteration_index > iterations or aborted.is_set(): - LOG.info('"IterationIPC" worker END') - break - - if 'teardown' in run_step: - try: - benchmark.teardown() - except Exception: - LOG.exception('Exception during teardown process') - mq_consumer.stop_rpc_server() - raise SystemExit(1) - - LOG.debug('Data queue size = %s', queue.qsize()) - LOG.debug('Output queue size = %s', output_queue.qsize()) - mq_consumer.stop_rpc_server() - - -class IterationIPCRunner(base_runner.Runner): - """Run a scenario for a configurable number of times. - - Each iteration has a configurable timeout. The loop control depends on the - feedback received from the running VNFs. The context PIDs from the VNFs to - listen the messages from are given in the scenario "setup" method. - """ - __execution_type__ = 'IterationIPC' - - def _run_benchmark(self, cls, method, scenario_cfg, context_cfg): - name = '{}-{}-{}'.format( - self.__execution_type__, scenario_cfg.get('type'), os.getpid()) - self.process = multiprocessing.Process( - name=name, - target=_worker_process, - args=(self.result_queue, cls, method, scenario_cfg, - context_cfg, self.aborted, self.output_queue)) - self.process.start() diff --git a/yardstick/benchmark/scenarios/availability/monitor/monitor_multi.py b/yardstick/benchmark/scenarios/availability/monitor/monitor_multi.py index 971bae1e9..8f1f53cde 100644 --- a/yardstick/benchmark/scenarios/availability/monitor/monitor_multi.py +++ b/yardstick/benchmark/scenarios/availability/monitor/monitor_multi.py @@ -62,20 +62,19 @@ class MultiMonitor(basemonitor.BaseMonitor): outage_time = ( last_outage - first_outage if last_outage > first_outage else 0 ) + self._result = {"outage_time": outage_time} LOG.debug("outage_time is: %f", outage_time) max_outage_time = 0 - if "max_outage_time" in self._config["sla"]: - max_outage_time = self._config["sla"]["max_outage_time"] - elif "max_recover_time" in self._config["sla"]: - max_outage_time = self._config["sla"]["max_recover_time"] - else: - raise RuntimeError("'max_outage_time' or 'max_recover_time' " - "config is not found") - self._result = {"outage_time": outage_time} - - if outage_time > max_outage_time: - LOG.error("SLA failure: %f > %f", outage_time, max_outage_time) - return False - else: - return True + if self._config.get("sla"): + if "max_outage_time" in self._config["sla"]: + max_outage_time = self._config["sla"]["max_outage_time"] + elif "max_recover_time" in self._config["sla"]: + max_outage_time = self._config["sla"]["max_recover_time"] + else: + raise RuntimeError("'max_outage_time' or 'max_recover_time' " + "config is not found") + if outage_time > max_outage_time: + LOG.error("SLA failure: %f > %f", outage_time, max_outage_time) + return False + return True diff --git a/yardstick/benchmark/scenarios/availability/monitor/monitor_process.py b/yardstick/benchmark/scenarios/availability/monitor/monitor_process.py index 8d2f2633c..280e5811d 100644 --- a/yardstick/benchmark/scenarios/availability/monitor/monitor_process.py +++ b/yardstick/benchmark/scenarios/availability/monitor/monitor_process.py @@ -46,12 +46,12 @@ class MonitorProcess(basemonitor.BaseMonitor): def verify_SLA(self): outage_time = self._result.get('outage_time', None) - max_outage_time = self._config["sla"]["max_recover_time"] - if outage_time > max_outage_time: - LOG.info("SLA failure: %f > %f", outage_time, max_outage_time) - return False - else: - return True + if self._config.get("sla"): + max_outage_time = self._config["sla"]["max_recover_time"] + if outage_time > max_outage_time: + LOG.info("SLA failure: %f > %f", outage_time, max_outage_time) + return False + return True def _test(): # pragma: no cover diff --git a/yardstick/benchmark/scenarios/base.py b/yardstick/benchmark/scenarios/base.py index 1737bb942..ae8bfad71 100644 --- a/yardstick/benchmark/scenarios/base.py +++ b/yardstick/benchmark/scenarios/base.py @@ -122,7 +122,3 @@ class Scenario(object): except TypeError: dic[k] = v return dic - - def get_mq_ids(self): # pragma: no cover - """Return stored MQ producer IDs, if defined""" - pass diff --git a/yardstick/benchmark/scenarios/networking/vnf_generic.py b/yardstick/benchmark/scenarios/networking/vnf_generic.py index 5ac51cdfc..3fd1845a0 100644 --- a/yardstick/benchmark/scenarios/networking/vnf_generic.py +++ b/yardstick/benchmark/scenarios/networking/vnf_generic.py @@ -44,14 +44,13 @@ traffic_profile.register_modules() LOG = logging.getLogger(__name__) -class NetworkServiceTestCase(scenario_base.Scenario): - """Class handles Generic framework to do pre-deployment VNF & - Network service testing """ +class NetworkServiceBase(scenario_base.Scenario): + """Base class for Network service testing scenarios""" - __scenario_type__ = "NSPerf" + __scenario_type__ = "" def __init__(self, scenario_cfg, context_cfg): # pragma: no cover - super(NetworkServiceTestCase, self).__init__() + super(NetworkServiceBase, self).__init__() self.scenario_cfg = scenario_cfg self.context_cfg = context_cfg @@ -61,7 +60,32 @@ class NetworkServiceTestCase(scenario_base.Scenario): self.traffic_profile = None self.node_netdevs = {} self.bin_path = get_nsb_option('bin_path', '') - self._mq_ids = [] + + def run(self, *args): + pass + + def teardown(self): + """ Stop the collector and terminate VNF & TG instance + + :return + """ + + try: + try: + self.collector.stop() + for vnf in self.vnfs: + LOG.info("Stopping %s", vnf.name) + vnf.terminate() + LOG.debug("all VNFs terminated: %s", ", ".join(vnf.name for vnf in self.vnfs)) + finally: + terminate_children() + except Exception: + # catch any exception in teardown and convert to simple exception + # never pass exceptions back to multiprocessing, because some exceptions can + # be unpicklable + # https://bugs.python.org/issue9400 + LOG.exception("") + raise RuntimeError("Error in teardown") def is_ended(self): return self.traffic_profile is not None and self.traffic_profile.is_ended() @@ -446,12 +470,30 @@ class NetworkServiceTestCase(scenario_base.Scenario): pass self.create_interfaces_from_node(vnfd, node) vnf_impl = self.get_vnf_impl(vnfd['id']) - vnf_instance = vnf_impl(node_name, vnfd, scenario_cfg['task_id']) + vnf_instance = vnf_impl(node_name, vnfd) vnfs.append(vnf_instance) self.vnfs = vnfs return vnfs + def pre_run_wait_time(self, time_seconds): # pragma: no cover + """Time waited before executing the run method""" + time.sleep(time_seconds) + + def post_run_wait_time(self, time_seconds): # pragma: no cover + """Time waited after executing the run method""" + pass + + +class NetworkServiceTestCase(NetworkServiceBase): + """Class handles Generic framework to do pre-deployment VNF & + Network service testing """ + + __scenario_type__ = "NSPerf" + + def __init__(self, scenario_cfg, context_cfg): # pragma: no cover + super(NetworkServiceTestCase, self).__init__(scenario_cfg, context_cfg) + def setup(self): """Setup infrastructure, provission VNFs & start traffic""" # 1. Verify if infrastructure mapping can meet topology @@ -495,11 +537,6 @@ class NetworkServiceTestCase(scenario_base.Scenario): for traffic_gen in traffic_runners: LOG.info("Starting traffic on %s", traffic_gen.name) traffic_gen.run_traffic(self.traffic_profile) - self._mq_ids.append(traffic_gen.get_mq_producer_id()) - - def get_mq_ids(self): # pragma: no cover - """Return stored MQ producer IDs""" - return self._mq_ids def run(self, result): # yardstick API """ Yardstick calls run() at intervals defined in the yaml and @@ -515,33 +552,70 @@ class NetworkServiceTestCase(scenario_base.Scenario): result.update(self.collector.get_kpi()) - def teardown(self): - """ Stop the collector and terminate VNF & TG instance - :return - """ +class NetworkServiceRFC2544(NetworkServiceBase): + """Class handles RFC2544 Network service testing""" + + __scenario_type__ = "NSPerf-RFC2544" + def __init__(self, scenario_cfg, context_cfg): # pragma: no cover + super(NetworkServiceRFC2544, self).__init__(scenario_cfg, context_cfg) + + def setup(self): + """Setup infrastructure, provision VNFs""" + self.map_topology_to_infrastructure() + self.load_vnf_models() + + traffic_runners = [vnf for vnf in self.vnfs if vnf.runs_traffic] + non_traffic_runners = [vnf for vnf in self.vnfs if not vnf.runs_traffic] try: - try: - self.collector.stop() - for vnf in self.vnfs: - LOG.info("Stopping %s", vnf.name) - vnf.terminate() - LOG.debug("all VNFs terminated: %s", ", ".join(vnf.name for vnf in self.vnfs)) - finally: - terminate_children() - except Exception: - # catch any exception in teardown and convert to simple exception - # never pass exceptions back to multiprocessing, because some exceptions can - # be unpicklable - # https://bugs.python.org/issue9400 + for vnf in chain(traffic_runners, non_traffic_runners): + LOG.info("Instantiating %s", vnf.name) + vnf.instantiate(self.scenario_cfg, self.context_cfg) + LOG.info("Waiting for %s to instantiate", vnf.name) + vnf.wait_for_instantiate() + except: LOG.exception("") - raise RuntimeError("Error in teardown") + for vnf in self.vnfs: + vnf.terminate() + raise - def pre_run_wait_time(self, time_seconds): # pragma: no cover - """Time waited before executing the run method""" - time.sleep(time_seconds) + self._generate_pod_yaml() - def post_run_wait_time(self, time_seconds): # pragma: no cover - """Time waited after executing the run method""" - pass + def run(self, output): + """ Run experiment + + :param output: scenario output to push results + :return: None + """ + + self._fill_traffic_profile() + + traffic_runners = [vnf for vnf in self.vnfs if vnf.runs_traffic] + + for traffic_gen in traffic_runners: + traffic_gen.listen_traffic(self.traffic_profile) + + self.collector = Collector(self.vnfs, + context_base.Context.get_physical_nodes()) + self.collector.start() + + test_completed = False + while not test_completed: + for traffic_gen in traffic_runners: + LOG.info("Run traffic on %s", traffic_gen.name) + traffic_gen.run_traffic_once(self.traffic_profile) + + test_completed = True + for traffic_gen in traffic_runners: + # wait for all tg to complete running traffic + status = traffic_gen.wait_on_traffic() + LOG.info("Run traffic on %s complete status=%s", + traffic_gen.name, status) + if status == 'CONTINUE': + # continue running if at least one tg is running + test_completed = False + + output.push(self.collector.get_kpi()) + + self.collector.stop() diff --git a/yardstick/common/exceptions.py b/yardstick/common/exceptions.py index 952c62394..010ec6a51 100644 --- a/yardstick/common/exceptions.py +++ b/yardstick/common/exceptions.py @@ -203,15 +203,6 @@ class TaskRenderError(YardstickException): message = 'Failed to render template:\n%(input_task)s' -class RunnerIterationIPCSetupActionNeeded(YardstickException): - message = ('IterationIPC needs the "setup" action to retrieve the VNF ' - 'handling processes PIDs to receive the messages sent') - - -class RunnerIterationIPCNoCtxs(YardstickException): - message = 'Benchmark "setup" action did not return any VNF process PID' - - class TimerTimeout(YardstickException): message = 'Timer timeout expired, %(timeout)s seconds' diff --git a/yardstick/common/messaging/__init__.py b/yardstick/common/messaging/__init__.py index bd700d9b1..089c99c9f 100644 --- a/yardstick/common/messaging/__init__.py +++ b/yardstick/common/messaging/__init__.py @@ -1,3 +1,14 @@ +# Copyright (c) 2018-2019 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. @@ -15,19 +26,3 @@ TRANSPORT_URL = (MQ_SERVICE + '://' + MQ_USER + ':' + MQ_PASS + '@' + SERVER + # RPC server. RPC_SERVER_EXECUTOR = 'threading' - -# Topics. -TOPIC_TG = 'topic_traffic_generator' -TOPIC_RUNNER = 'topic_runner' - -# Methods. -# Traffic generator consumers methods. Names must match the methods implemented -# in the consumer endpoint class. -TG_METHOD_STARTED = 'tg_method_started' -TG_METHOD_FINISHED = 'tg_method_finished' -TG_METHOD_ITERATION = 'tg_method_iteration' - -# Runner consumers methods. Names must match the methods implemented in the -# consumer endpoint class. -RUNNER_METHOD_START_ITERATION = "runner_method_start_iteration" -RUNNER_METHOD_STOP_ITERATION = "runner_method_stop_iteration" diff --git a/yardstick/common/nsb_report.css b/yardstick/common/nsb_report.css index 2beb91c53..667f865a5 100644 --- a/yardstick/common/nsb_report.css +++ b/yardstick/common/nsb_report.css @@ -9,21 +9,26 @@ ******************************************************************************/ body { - font-size: 16pt; + font-family: Frutiger, "Helvetica Neue", Helvetica, Arial, sans-serif; +} + +header { + padding-top: 5px; + text-align: center; + font-weight: bold; } -table { +#tblMetrics { overflow-y: scroll; height: 360px; display: block; } -header { - font-family: Frutiger, "Helvetica Neue", Helvetica, Arial, sans-serif; - clear: left; - text-align: center; +#cnvGraph { + width: 100%; + height: 500px; } -.control-pane { +#divTree { font-size: 10pt; } diff --git a/yardstick/common/nsb_report.html.j2 b/yardstick/common/nsb_report.html.j2 index a3087d746..aa90253f8 100644 --- a/yardstick/common/nsb_report.html.j2 +++ b/yardstick/common/nsb_report.html.j2 @@ -29,53 +29,45 @@ </head> <body> - <div class="container" style="width:80%"> + <div class="container-fluid"> <div class="row"> - <header class="jumbotron"> - <h1>Yardstick User Interface</h1> - <h4>Report of {{task_id}} Generated</h4> + <header> + Testcase: {{report_meta.testcase}}<br> + Task-ID: {{report_meta.task_id}}<br> </header> </div> <div class="row"> - <div class="col-md-2 control-pane"> - <div id="data_selector"></div> + <div class="col-md-2"> + <div id="divTree"></div> </div> - <div class="col-md-10 data-pane"> - <canvas id="cnvGraph" style="width: 100%; height: 500px"></canvas> + <div class="col-md-10"> + <canvas id="cnvGraph"></canvas> </div> </div> <div class="row"> <div class="col-md-12 table-responsive"> - <table class="table table-hover"></table> + <table id="tblMetrics" class="table table-condensed table-hover"></table> </div> </div> </div> <script> - var arr, jstree_data, timestamps; - arr = {{table|safe}}; - timestamps = {{Timestamps|safe}}; - jstree_data = {{jstree_nodes|safe}}; + // Injected metrics, timestamps, keys and hierarchy + var report_data = {{report_data|safe}}; + var report_time = {{report_time|safe}}; + var report_keys = {{report_keys|safe}}; + var report_tree = {{report_tree|safe}}; + // Wait for DOM to be loaded $(function() { - create_table(arr); - create_tree(jstree_data); - var objGraph = create_graph($('#cnvGraph'), timestamps); + var tblMetrics = $('#tblMetrics'); + var cnvGraph = $('#cnvGraph'); + var divTree = $('#divTree'); - $('#data_selector').on('check_node.jstree uncheck_node.jstree', function(e, data) { - var selected_datasets = []; - for (var i = 0; i < data.selected.length; i++) { - var node = data.instance.get_node(data.selected[i]); - if (node.children.length == 0) { - var dataset = { - label: node.id, - data: arr[node.id], - }; - selected_datasets.push(dataset); - } - } - update_graph(objGraph, selected_datasets); - }); + create_table(tblMetrics, report_data, report_time, report_keys); + var objGraph = create_graph(cnvGraph, report_time); + create_tree(divTree, report_tree); + handle_tree(divTree, tblMetrics, objGraph, report_data, report_time); }); </script> </body> diff --git a/yardstick/common/nsb_report.js b/yardstick/common/nsb_report.js index cc5e14ee7..4de1c8e78 100644 --- a/yardstick/common/nsb_report.js +++ b/yardstick/common/nsb_report.js @@ -10,9 +10,9 @@ var None = null; -function create_tree(jstree_data) +function create_tree(divTree, jstree_data) { - $('#data_selector').jstree({ + divTree.jstree({ plugins: ['checkbox'], checkbox: { three_state: false, @@ -29,34 +29,33 @@ function create_tree(jstree_data) }); } -// may need to pass timestamps too... -function create_table(table_data) +function create_table(tblMetrics, table_data, timestamps, table_keys) { - var tab, tr, td, tn, tbody, keys, key, curr_data, val; - // create table - tab = document.getElementsByTagName('table')[0]; - tbody = document.createElement('tbody'); + var tbody = $('<tbody></tbody>'); + var tr0 = $('<tr></tr>'); + var th0 = $('<th></th>'); + var td0 = $('<td></td>'); + var tr; + + // create table headings using timestamps + tr = tr0.clone().append(th0.clone().text('Timestamp')); + timestamps.forEach(function(t) { + tr.append(th0.clone().text(t)); + }); + tbody.append(tr); + // for each metric - keys = Object.keys(table_data); - for (var i = 0; i < keys.length; i++) { - key = keys[i]; - tr = document.createElement('tr'); - td = document.createElement('td'); - tn = document.createTextNode(key); - td.appendChild(tn); - tr.appendChild(td); + table_keys.forEach(function(key) { + tr = tr0.clone().append(td0.clone().text(key)); // add each piece of data as its own column - curr_data = table_data[key]; - for (var j = 0; j < curr_data.length; j++) { - val = curr_data[j]; - td = document.createElement('td'); - tn = document.createTextNode(val === None ? '' : val); - td.appendChild(tn); - tr.appendChild(td); - } - tbody.appendChild(tr); - } - tab.appendChild(tbody); + table_data[key].forEach(function(val) { + tr.append(td0.clone().text(val === None ? '' : val)); + }); + tbody.append(tr); + }); + + // re-create table + tblMetrics.empty().append(tbody); } function create_graph(cnvGraph, timestamps) @@ -144,3 +143,23 @@ function update_graph(objGraph, datasets) objGraph.data.datasets = datasets; objGraph.update(); } + +function handle_tree(divTree, tblMetrics, objGraph, table_data, timestamps) +{ + divTree.on('check_node.jstree uncheck_node.jstree', function(e, data) { + var selected_keys = []; + var selected_datasets = []; + data.selected.forEach(function(sel) { + var node = data.instance.get_node(sel); + if (node.children.length == 0) { + selected_keys.push(node.id); + selected_datasets.push({ + label: node.id, + data: table_data[node.id], + }); + } + }); + create_table(tblMetrics, table_data, timestamps, selected_keys); + update_graph(objGraph, selected_datasets); + }); +} diff --git a/yardstick/network_services/vnf_generic/vnf/acl_vnf.py b/yardstick/network_services/vnf_generic/vnf/acl_vnf.py index 11a602472..e51d38748 100644 --- a/yardstick/network_services/vnf_generic/vnf/acl_vnf.py +++ b/yardstick/network_services/vnf_generic/vnf/acl_vnf.py @@ -246,9 +246,8 @@ class AclApproxVnf(SampleVNF): 'packets_dropped': 2, } - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): if setup_env_helper_type is None: setup_env_helper_type = AclApproxSetupEnvSetupEnvHelper - super(AclApproxVnf, self).__init__( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + + super(AclApproxVnf, self).__init__(name, vnfd, setup_env_helper_type, resource_helper_type) diff --git a/yardstick/network_services/vnf_generic/vnf/agnostic_vnf.py b/yardstick/network_services/vnf_generic/vnf/agnostic_vnf.py index 115fddcf0..5856eb6e0 100644 --- a/yardstick/network_services/vnf_generic/vnf/agnostic_vnf.py +++ b/yardstick/network_services/vnf_generic/vnf/agnostic_vnf.py @@ -21,8 +21,8 @@ LOG = logging.getLogger(__name__) class AgnosticVnf(base.GenericVNF): """ AgnosticVnf implementation. """ - def __init__(self, name, vnfd, task_id): - super(AgnosticVnf, self).__init__(name, vnfd, task_id) + def __init__(self, name, vnfd): + super(AgnosticVnf, self).__init__(name, vnfd) def instantiate(self, scenario_cfg, context_cfg): pass diff --git a/yardstick/network_services/vnf_generic/vnf/base.py b/yardstick/network_services/vnf_generic/vnf/base.py index 0fb310075..1f49b22d5 100644 --- a/yardstick/network_services/vnf_generic/vnf/base.py +++ b/yardstick/network_services/vnf_generic/vnf/base.py @@ -17,10 +17,6 @@ import abc import logging import six -from yardstick.common import messaging -from yardstick.common.messaging import consumer -from yardstick.common.messaging import payloads -from yardstick.common.messaging import producer from yardstick.network_services.helpers.samplevnf_helper import PortPairs @@ -141,70 +137,6 @@ class VnfdHelper(dict): yield port_name, port_num -class TrafficGeneratorProducer(producer.MessagingProducer): - """Class implementing the message producer for traffic generators - - This message producer must be instantiated in the process created - "run_traffic" process. - """ - def __init__(self, _id): - super(TrafficGeneratorProducer, self).__init__(messaging.TOPIC_TG, - _id=_id) - - def tg_method_started(self, version=1): - """Send a message to inform the traffic generation has started""" - self.send_message( - messaging.TG_METHOD_STARTED, - payloads.TrafficGeneratorPayload(version=version, iteration=0, - kpi={})) - - def tg_method_finished(self, version=1): - """Send a message to inform the traffic generation has finished""" - self.send_message( - messaging.TG_METHOD_FINISHED, - payloads.TrafficGeneratorPayload(version=version, iteration=0, - kpi={})) - - def tg_method_iteration(self, iteration, version=1, kpi=None): - """Send a message, with KPI, once an iteration has finished""" - kpi = {} if kpi is None else kpi - self.send_message( - messaging.TG_METHOD_ITERATION, - payloads.TrafficGeneratorPayload(version=version, - iteration=iteration, kpi=kpi)) - - -@six.add_metaclass(abc.ABCMeta) -class GenericVNFEndpoint(consumer.NotificationHandler): - """Endpoint class for ``GenericVNFConsumer``""" - - @abc.abstractmethod - def runner_method_start_iteration(self, ctxt, **kwargs): - """Endpoint when RUNNER_METHOD_START_ITERATION is received - - :param ctxt: (dict) {'id': <Producer ID>} - :param kwargs: (dict) ``payloads.RunnerPayload`` context - """ - - @abc.abstractmethod - def runner_method_stop_iteration(self, ctxt, **kwargs): - """Endpoint when RUNNER_METHOD_STOP_ITERATION is received - - :param ctxt: (dict) {'id': <Producer ID>} - :param kwargs: (dict) ``payloads.RunnerPayload`` context - """ - - -class GenericVNFConsumer(consumer.MessagingConsumer): - """MQ consumer for ``GenericVNF`` derived classes""" - - def __init__(self, ctx_ids, endpoints): - if not isinstance(endpoints, list): - endpoints = [endpoints] - super(GenericVNFConsumer, self).__init__(messaging.TOPIC_RUNNER, - ctx_ids, endpoints) - - @six.add_metaclass(abc.ABCMeta) class GenericVNF(object): """Class providing file-like API for generic VNF implementation @@ -217,9 +149,8 @@ class GenericVNF(object): UPLINK = PortPairs.UPLINK DOWNLINK = PortPairs.DOWNLINK - def __init__(self, name, vnfd, task_id): + def __init__(self, name, vnfd): self.name = name - self._task_id = task_id self.vnfd_helper = VnfdHelper(vnfd) # List of statistics we can obtain from this VNF # - ETSI MANO 6.3.1.1 monitoring_parameter @@ -280,11 +211,10 @@ class GenericVNF(object): class GenericTrafficGen(GenericVNF): """Class providing file-like API for generic traffic generator""" - def __init__(self, name, vnfd, task_id): - super(GenericTrafficGen, self).__init__(name, vnfd, task_id) + def __init__(self, name, vnfd): + super(GenericTrafficGen, self).__init__(name, vnfd) self.runs_traffic = True self.traffic_finished = False - self._mq_producer = None @abc.abstractmethod def run_traffic(self, traffic_profile): @@ -355,16 +285,3 @@ class GenericTrafficGen(GenericVNF): :return: True/False """ pass - - @staticmethod - def _setup_mq_producer(id): - """Setup the TG MQ producer to send messages between processes - - :return: (derived class from ``MessagingProducer``) MQ producer object - """ - return TrafficGeneratorProducer(id) - - def get_mq_producer_id(self): - """Return the MQ producer ID if initialized""" - if self._mq_producer: - return self._mq_producer.id diff --git a/yardstick/network_services/vnf_generic/vnf/cgnapt_vnf.py b/yardstick/network_services/vnf_generic/vnf/cgnapt_vnf.py index 14f1e2e97..bfe628f09 100644 --- a/yardstick/network_services/vnf_generic/vnf/cgnapt_vnf.py +++ b/yardstick/network_services/vnf_generic/vnf/cgnapt_vnf.py @@ -85,12 +85,12 @@ class CgnaptApproxVnf(SampleVNF): "packets_dropped": 4, } - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): if setup_env_helper_type is None: setup_env_helper_type = CgnaptApproxSetupEnvHelper - super(CgnaptApproxVnf, self).__init__( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + + super(CgnaptApproxVnf, self).__init__(name, vnfd, setup_env_helper_type, + resource_helper_type) def _vnf_up_post(self): super(CgnaptApproxVnf, self)._vnf_up_post() diff --git a/yardstick/network_services/vnf_generic/vnf/epc_vnf.py b/yardstick/network_services/vnf_generic/vnf/epc_vnf.py index 66d16d07f..1b06c59c1 100644 --- a/yardstick/network_services/vnf_generic/vnf/epc_vnf.py +++ b/yardstick/network_services/vnf_generic/vnf/epc_vnf.py @@ -21,8 +21,8 @@ LOG = logging.getLogger(__name__) class EPCVnf(base.GenericVNF): - def __init__(self, name, vnfd, task_id): - super(EPCVnf, self).__init__(name, vnfd, task_id) + def __init__(self, name, vnfd): + super(EPCVnf, self).__init__(name, vnfd) def instantiate(self, scenario_cfg, context_cfg): """Prepare VNF for operation and start the VNF process/VM diff --git a/yardstick/network_services/vnf_generic/vnf/prox_helpers.py b/yardstick/network_services/vnf_generic/vnf/prox_helpers.py index cd3035ef8..aeb41858f 100644 --- a/yardstick/network_services/vnf_generic/vnf/prox_helpers.py +++ b/yardstick/network_services/vnf_generic/vnf/prox_helpers.py @@ -1146,7 +1146,7 @@ class ProxResourceHelper(ClientResourceHelper): self._test_type = self.setup_helper.find_in_section('global', 'name', None) return self._test_type - def run_traffic(self, traffic_profile, *args): + def run_traffic(self, traffic_profile): self._queue.cancel_join_thread() self.lower = 0.0 self.upper = 100.0 diff --git a/yardstick/network_services/vnf_generic/vnf/prox_irq.py b/yardstick/network_services/vnf_generic/vnf/prox_irq.py index dda26b0fe..4cc8923cb 100644 --- a/yardstick/network_services/vnf_generic/vnf/prox_irq.py +++ b/yardstick/network_services/vnf_generic/vnf/prox_irq.py @@ -28,13 +28,13 @@ LOG = logging.getLogger(__name__) class ProxIrq(SampleVNFTrafficGen): - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): vnfd_cpy = copy.deepcopy(vnfd) - super(ProxIrq, self).__init__(name, vnfd_cpy, task_id) + super(ProxIrq, self).__init__(name, vnfd_cpy) self._vnf_wrapper = ProxApproxVnf( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + name, vnfd, setup_env_helper_type, resource_helper_type) self.bin_path = get_nsb_option('bin_path', '') self.name = self._vnf_wrapper.name self.ssh_helper = self._vnf_wrapper.ssh_helper @@ -83,9 +83,9 @@ class ProxIrqVNF(ProxIrq, SampleVNFTrafficGen): APP_NAME = 'ProxIrqVNF' - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): - ProxIrq.__init__(self, name, vnfd, task_id, setup_env_helper_type, + ProxIrq.__init__(self, name, vnfd, setup_env_helper_type, resource_helper_type) self.start_test_time = None @@ -150,9 +150,9 @@ class ProxIrqGen(ProxIrq, SampleVNFTrafficGen): APP_NAME = 'ProxIrqGen' - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): - ProxIrq.__init__(self, name, vnfd, task_id, setup_env_helper_type, + ProxIrq.__init__(self, name, vnfd, setup_env_helper_type, resource_helper_type) self.start_test_time = None self.end_test_time = None diff --git a/yardstick/network_services/vnf_generic/vnf/prox_vnf.py b/yardstick/network_services/vnf_generic/vnf/prox_vnf.py index c3b50369b..0d1360dd0 100644 --- a/yardstick/network_services/vnf_generic/vnf/prox_vnf.py +++ b/yardstick/network_services/vnf_generic/vnf/prox_vnf.py @@ -35,8 +35,7 @@ class ProxApproxVnf(SampleVNF): VNF_PROMPT = "PROX started" LUA_PARAMETER_NAME = "sut" - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): if setup_env_helper_type is None: setup_env_helper_type = ProxDpdkVnfSetupEnvHelper @@ -47,8 +46,8 @@ class ProxApproxVnf(SampleVNF): self.prev_packets_sent = 0 self.prev_tsc = 0 self.tsc_hz = 0 - super(ProxApproxVnf, self).__init__( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + super(ProxApproxVnf, self).__init__(name, vnfd, setup_env_helper_type, + resource_helper_type) def _vnf_up_post(self): self.resource_helper.up_post() diff --git a/yardstick/network_services/vnf_generic/vnf/router_vnf.py b/yardstick/network_services/vnf_generic/vnf/router_vnf.py index e99de9cb3..90b7b215e 100644 --- a/yardstick/network_services/vnf_generic/vnf/router_vnf.py +++ b/yardstick/network_services/vnf_generic/vnf/router_vnf.py @@ -34,8 +34,7 @@ class RouterVNF(SampleVNF): WAIT_TIME = 1 - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): if setup_env_helper_type is None: setup_env_helper_type = DpdkVnfSetupEnvHelper @@ -43,8 +42,7 @@ class RouterVNF(SampleVNF): vnfd['mgmt-interface'].pop("pkey", "") vnfd['mgmt-interface']['password'] = 'password' - super(RouterVNF, self).__init__( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + super(RouterVNF, self).__init__(name, vnfd, setup_env_helper_type, resource_helper_type) def instantiate(self, scenario_cfg, context_cfg): self.scenario_helper.scenario_cfg = scenario_cfg diff --git a/yardstick/network_services/vnf_generic/vnf/sample_vnf.py b/yardstick/network_services/vnf_generic/vnf/sample_vnf.py index 8833b88f2..82a6eda33 100644 --- a/yardstick/network_services/vnf_generic/vnf/sample_vnf.py +++ b/yardstick/network_services/vnf_generic/vnf/sample_vnf.py @@ -18,7 +18,6 @@ from multiprocessing import Queue, Value, Process import os import posixpath import re -import uuid import subprocess import time @@ -397,13 +396,12 @@ class ClientResourceHelper(ResourceHelper): time.sleep(self.QUEUE_WAIT_TIME) self._queue.put(samples) - def run_traffic(self, traffic_profile, mq_producer): + def run_traffic(self, traffic_profile): # if we don't do this we can hang waiting for the queue to drain # have to do this in the subprocess self._queue.cancel_join_thread() # fixme: fix passing correct trex config file, # instead of searching the default path - mq_producer.tg_method_started() try: self._build_ports() self.client = self._connect() @@ -411,12 +409,9 @@ class ClientResourceHelper(ResourceHelper): self.client.remove_all_streams(self.all_ports) # remove all streams traffic_profile.register_generator(self) - iteration_index = 0 while self._terminated.value == 0: - iteration_index += 1 if self._run_traffic_once(traffic_profile): self._terminated.value = 1 - mq_producer.tg_method_iteration(iteration_index) self.client.stop(self.all_ports) self.client.disconnect() @@ -427,8 +422,6 @@ class ClientResourceHelper(ResourceHelper): return # return if trex/tg server is stopped. raise - mq_producer.tg_method_finished() - def terminate(self): self._terminated.value = 1 # stop client @@ -619,7 +612,6 @@ class ScenarioHelper(object): test_timeout = self.options.get('timeout', constants.DEFAULT_VNF_TIMEOUT) return test_duration if test_duration > test_timeout else test_timeout - class SampleVNF(GenericVNF): """ Class providing file-like API for generic VNF implementation """ @@ -629,9 +621,8 @@ class SampleVNF(GenericVNF): APP_NAME = "SampleVNF" # we run the VNF interactively, so the ssh command will timeout after this long - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): - super(SampleVNF, self).__init__(name, vnfd, task_id) + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): + super(SampleVNF, self).__init__(name, vnfd) self.bin_path = get_nsb_option('bin_path', '') self.scenario_helper = ScenarioHelper(self.name) @@ -862,9 +853,8 @@ class SampleVNFTrafficGen(GenericTrafficGen): APP_NAME = 'Sample' RUN_WAIT = 1 - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): - super(SampleVNFTrafficGen, self).__init__(name, vnfd, task_id) + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): + super(SampleVNFTrafficGen, self).__init__(name, vnfd) self.bin_path = get_nsb_option('bin_path', '') self.scenario_helper = ScenarioHelper(self.name) @@ -923,13 +913,12 @@ class SampleVNFTrafficGen(GenericTrafficGen): LOG.info("%s TG Server is up and running.", self.APP_NAME) return self._tg_process.exitcode - def _traffic_runner(self, traffic_profile, mq_id): + def _traffic_runner(self, traffic_profile): # always drop connections first thing in new processes # so we don't get paramiko errors self.ssh_helper.drop_connection() LOG.info("Starting %s client...", self.APP_NAME) - self._mq_producer = self._setup_mq_producer(mq_id) - self.resource_helper.run_traffic(traffic_profile, self._mq_producer) + self.resource_helper.run_traffic(traffic_profile) def run_traffic(self, traffic_profile): """ Generate traffic on the wire according to the given params. @@ -939,12 +928,10 @@ class SampleVNFTrafficGen(GenericTrafficGen): :param traffic_profile: :return: True/False """ - name = '{}-{}-{}-{}'.format(self.name, self.APP_NAME, - traffic_profile.__class__.__name__, + name = "{}-{}-{}-{}".format(self.name, self.APP_NAME, traffic_profile.__class__.__name__, os.getpid()) - self._traffic_process = Process( - name=name, target=self._traffic_runner, - args=(traffic_profile, uuid.uuid1().int)) + self._traffic_process = Process(name=name, target=self._traffic_runner, + args=(traffic_profile,)) self._traffic_process.start() # Wait for traffic process to start while self.resource_helper.client_started.value == 0: @@ -953,6 +940,8 @@ class SampleVNFTrafficGen(GenericTrafficGen): if not self._traffic_process.is_alive(): break + return self._traffic_process.is_alive() + def collect_kpi(self): # check if the tg processes have exited physical_node = Context.get_physical_node_from_server( diff --git a/yardstick/network_services/vnf_generic/vnf/tg_ixload.py b/yardstick/network_services/vnf_generic/vnf/tg_ixload.py index d25402740..97b36d708 100644 --- a/yardstick/network_services/vnf_generic/vnf/tg_ixload.py +++ b/yardstick/network_services/vnf_generic/vnf/tg_ixload.py @@ -126,13 +126,12 @@ class IxLoadResourceHelper(sample_vnf.ClientResourceHelper): class IxLoadTrafficGen(sample_vnf.SampleVNFTrafficGen): - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): if resource_helper_type is None: resource_helper_type = IxLoadResourceHelper - super(IxLoadTrafficGen, self).__init__( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + super(IxLoadTrafficGen, self).__init__(name, vnfd, setup_env_helper_type, + resource_helper_type) self._result = {} def update_gateways(self, links): diff --git a/yardstick/network_services/vnf_generic/vnf/tg_landslide.py b/yardstick/network_services/vnf_generic/vnf/tg_landslide.py index 2fba89b22..fb8c24752 100644 --- a/yardstick/network_services/vnf_generic/vnf/tg_landslide.py +++ b/yardstick/network_services/vnf_generic/vnf/tg_landslide.py @@ -35,11 +35,11 @@ LOG = logging.getLogger(__name__) class LandslideTrafficGen(sample_vnf.SampleVNFTrafficGen): APP_NAME = 'LandslideTG' - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): if resource_helper_type is None: resource_helper_type = LandslideResourceHelper - super(LandslideTrafficGen, self).__init__(name, vnfd, task_id, + super(LandslideTrafficGen, self).__init__(name, vnfd, setup_env_helper_type, resource_helper_type) diff --git a/yardstick/network_services/vnf_generic/vnf/tg_ping.py b/yardstick/network_services/vnf_generic/vnf/tg_ping.py index a3b5afa39..a989543f5 100644 --- a/yardstick/network_services/vnf_generic/vnf/tg_ping.py +++ b/yardstick/network_services/vnf_generic/vnf/tg_ping.py @@ -71,7 +71,7 @@ class PingResourceHelper(ClientResourceHelper): self._queue = Queue() self._parser = PingParser(self._queue) - def run_traffic(self, traffic_profile, *args): + def run_traffic(self, traffic_profile): # drop the connection in order to force a new one self.ssh_helper.drop_connection() @@ -103,14 +103,14 @@ class PingTrafficGen(SampleVNFTrafficGen): APP_NAME = 'Ping' RUN_WAIT = 4 - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): if setup_env_helper_type is None: setup_env_helper_type = PingSetupEnvHelper if resource_helper_type is None: resource_helper_type = PingResourceHelper - super(PingTrafficGen, self).__init__( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + + super(PingTrafficGen, self).__init__(name, vnfd, setup_env_helper_type, + resource_helper_type) self._result = {} def _check_status(self): diff --git a/yardstick/network_services/vnf_generic/vnf/tg_pktgen.py b/yardstick/network_services/vnf_generic/vnf/tg_pktgen.py index 9d452213f..e73cebc40 100644 --- a/yardstick/network_services/vnf_generic/vnf/tg_pktgen.py +++ b/yardstick/network_services/vnf_generic/vnf/tg_pktgen.py @@ -13,9 +13,7 @@ # limitations under the License. import logging -import multiprocessing import time -import uuid from yardstick.common import constants from yardstick.common import exceptions @@ -26,8 +24,7 @@ from yardstick.network_services.vnf_generic.vnf import base as vnf_base LOG = logging.getLogger(__name__) -class PktgenTrafficGen(vnf_base.GenericTrafficGen, - vnf_base.GenericVNFEndpoint): +class PktgenTrafficGen(vnf_base.GenericTrafficGen): """DPDK Pktgen traffic generator Website: http://pktgen-dpdk.readthedocs.io/en/latest/index.html @@ -35,15 +32,8 @@ class PktgenTrafficGen(vnf_base.GenericTrafficGen, TIMEOUT = 30 - def __init__(self, name, vnfd, task_id): - vnf_base.GenericTrafficGen.__init__(self, name, vnfd, task_id) - self.queue = multiprocessing.Queue() - self._id = uuid.uuid1().int - self._mq_producer = self._setup_mq_producer(self._id) - vnf_base.GenericVNFEndpoint.__init__(self, self._id, [task_id], - self.queue) - self._consumer = vnf_base.GenericVNFConsumer([task_id], self) - self._consumer.start_rpc_server() + def __init__(self, name, vnfd): + vnf_base.GenericTrafficGen.__init__(self, name, vnfd) self._traffic_profile = None self._node_ip = vnfd['mgmt-interface'].get('ip') self._lua_node_port = self._get_lua_node_port( @@ -71,7 +61,7 @@ class PktgenTrafficGen(vnf_base.GenericTrafficGen, def wait_for_instantiate(self): # pragma: no cover pass - def runner_method_start_iteration(self, ctxt, **kwargs): + def runner_method_start_iteration(self): # pragma: no cover LOG.debug('Start method') # NOTE(ralonsoh): 'rate' should be modified between iterations. The @@ -81,11 +71,6 @@ class PktgenTrafficGen(vnf_base.GenericTrafficGen, self._traffic_profile.rate(self._rate) time.sleep(4) self._traffic_profile.stop() - self._mq_producer.tg_method_iteration(1, 1, {}) - - def runner_method_stop_iteration(self, ctxt, **kwargs): # pragma: no cover - # pragma: no cover - LOG.debug('Stop method') @staticmethod def _get_lua_node_port(service_ports): diff --git a/yardstick/network_services/vnf_generic/vnf/tg_prox.py b/yardstick/network_services/vnf_generic/vnf/tg_prox.py index d12c42ec8..61ff2e036 100644 --- a/yardstick/network_services/vnf_generic/vnf/tg_prox.py +++ b/yardstick/network_services/vnf_generic/vnf/tg_prox.py @@ -29,13 +29,13 @@ class ProxTrafficGen(SampleVNFTrafficGen): LUA_PARAMETER_NAME = "gen" WAIT_TIME = 1 - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): vnfd_cpy = copy.deepcopy(vnfd) - super(ProxTrafficGen, self).__init__(name, vnfd_cpy, task_id) + super(ProxTrafficGen, self).__init__(name, vnfd_cpy) self._vnf_wrapper = ProxApproxVnf( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + name, vnfd, setup_env_helper_type, resource_helper_type) self.bin_path = get_nsb_option('bin_path', '') self.name = self._vnf_wrapper.name self.ssh_helper = self._vnf_wrapper.ssh_helper diff --git a/yardstick/network_services/vnf_generic/vnf/tg_rfc2544_ixia.py b/yardstick/network_services/vnf_generic/vnf/tg_rfc2544_ixia.py index 4fbbf6a40..c2327733a 100644 --- a/yardstick/network_services/vnf_generic/vnf/tg_rfc2544_ixia.py +++ b/yardstick/network_services/vnf_generic/vnf/tg_rfc2544_ixia.py @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2018 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -15,6 +15,12 @@ import ipaddress import logging import six +import os +import time + +from six import moves + +from multiprocessing import Queue, Process, JoinableQueue from yardstick.common import utils from yardstick.common import exceptions @@ -530,7 +536,7 @@ class IxiaResourceHelper(ClientResourceHelper): self._ix_scenario.apply_config() self._ix_scenario.create_traffic_model(traffic_profile) - def run_traffic(self, traffic_profile, *args): + def run_traffic(self, traffic_profile): if self._terminated.value: return @@ -577,8 +583,76 @@ class IxiaResourceHelper(ClientResourceHelper): LOG.exception('Run Traffic terminated') self._ix_scenario.stop_protocols() + self.client_started.value = 0 self._terminated.value = 1 + def run_test(self, traffic_profile, tasks_queue, results_queue, *args): # pragma: no cover + LOG.info("Ixia resource_helper run_test") + if self._terminated.value: + return + + min_tol = self.rfc_helper.tolerance_low + max_tol = self.rfc_helper.tolerance_high + precision = self.rfc_helper.tolerance_precision + default = "00:00:00:00:00:00" + + self._build_ports() + traffic_profile.update_traffic_profile(self) + self._initialize_client(traffic_profile) + + mac = {} + for port_name in self.vnfd_helper.port_pairs.all_ports: + intf = self.vnfd_helper.find_interface(name=port_name) + virt_intf = intf["virtual-interface"] + # we only know static traffic id by reading the json + # this is used by _get_ixia_trafficrofile + port_num = self.vnfd_helper.port_num(intf) + mac["src_mac_{}".format(port_num)] = virt_intf.get("local_mac", default) + mac["dst_mac_{}".format(port_num)] = virt_intf.get("dst_mac", default) + + self._ix_scenario.run_protocols() + + try: + completed = False + self.client_started.value = 1 + while completed is False and not self._terminated.value: + LOG.info("Wait for task ...") + + try: + task = tasks_queue.get(True, 5) + except moves.queue.Empty: + continue + else: + if task != 'RUN_TRAFFIC': + continue + + LOG.info("Got %s task", task) + first_run = traffic_profile.execute_traffic( + self, self.client, mac) + # pylint: disable=unnecessary-lambda + utils.wait_until_true(lambda: self.client.is_traffic_stopped(), + timeout=traffic_profile.config.duration * 2) + samples = self.generate_samples(traffic_profile.ports, + traffic_profile.config.duration) + + completed, samples = traffic_profile.get_drop_percentage( + samples, min_tol, max_tol, precision, first_run=first_run) + self._queue.put(samples) + + if completed: + LOG.debug("IxiaResourceHelper::run_test - test completed") + results_queue.put('COMPLETE') + else: + results_queue.put('CONTINUE') + tasks_queue.task_done() + + except Exception: # pylint: disable=broad-except + LOG.exception('Run Traffic terminated') + + self._ix_scenario.stop_protocols() + self.client_started.value = 0 + LOG.debug("IxiaResourceHelper::run_test done") + def collect_kpi(self): self.rfc_helper.iteration.value += 1 return super(IxiaResourceHelper, self).collect_kpi() @@ -588,15 +662,18 @@ class IxiaTrafficGen(SampleVNFTrafficGen): APP_NAME = 'Ixia' - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): if resource_helper_type is None: resource_helper_type = IxiaResourceHelper - super(IxiaTrafficGen, self).__init__( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + + super(IxiaTrafficGen, self).__init__(name, vnfd, setup_env_helper_type, + resource_helper_type) self._ixia_traffic_gen = None self.ixia_file_name = '' self.vnf_port_pairs = [] + self._traffic_process = None + self._tasks_queue = JoinableQueue() + self._result_queue = Queue() def _check_status(self): pass @@ -604,3 +681,34 @@ class IxiaTrafficGen(SampleVNFTrafficGen): def terminate(self): self.resource_helper.stop_collect() super(IxiaTrafficGen, self).terminate() + + def _test_runner(self, traffic_profile, tasks, results): + self.resource_helper.run_test(traffic_profile, tasks, results) + + def _init_traffic_process(self, traffic_profile): + name = '{}-{}-{}-{}'.format(self.name, self.APP_NAME, + traffic_profile.__class__.__name__, + os.getpid()) + self._traffic_process = Process(name=name, target=self._test_runner, + args=( + traffic_profile, self._tasks_queue, + self._result_queue)) + + self._traffic_process.start() + while self.resource_helper.client_started.value == 0: + time.sleep(1) + if not self._traffic_process.is_alive(): + break + + def run_traffic_once(self, traffic_profile): + if self.resource_helper.client_started.value == 0: + self._init_traffic_process(traffic_profile) + + # continue test - run next iteration + LOG.info("Run next iteration ...") + self._tasks_queue.put('RUN_TRAFFIC') + + def wait_on_traffic(self): + self._tasks_queue.join() + result = self._result_queue.get() + return result diff --git a/yardstick/network_services/vnf_generic/vnf/tg_rfc2544_trex.py b/yardstick/network_services/vnf_generic/vnf/tg_rfc2544_trex.py index 7ecb12478..7c2079101 100644 --- a/yardstick/network_services/vnf_generic/vnf/tg_rfc2544_trex.py +++ b/yardstick/network_services/vnf_generic/vnf/tg_rfc2544_trex.py @@ -65,9 +65,9 @@ class TrexTrafficGenRFC(tg_trex.TrexTrafficGen): traffic for rfc2544 testcase. """ - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): if resource_helper_type is None: resource_helper_type = TrexRfcResourceHelper - super(TrexTrafficGenRFC, self).__init__( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + + super(TrexTrafficGenRFC, self).__init__(name, vnfd, setup_env_helper_type, + resource_helper_type) diff --git a/yardstick/network_services/vnf_generic/vnf/tg_trex.py b/yardstick/network_services/vnf_generic/vnf/tg_trex.py index 4296da84c..43ee82629 100644 --- a/yardstick/network_services/vnf_generic/vnf/tg_trex.py +++ b/yardstick/network_services/vnf_generic/vnf/tg_trex.py @@ -200,14 +200,15 @@ class TrexTrafficGen(SampleVNFTrafficGen): APP_NAME = 'TRex' - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): if resource_helper_type is None: resource_helper_type = TrexResourceHelper + if setup_env_helper_type is None: setup_env_helper_type = TrexDpdkVnfSetupEnvHelper - super(TrexTrafficGen, self).__init__( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + + super(TrexTrafficGen, self).__init__(name, vnfd, setup_env_helper_type, + resource_helper_type) def _check_status(self): return self.resource_helper.check_status() diff --git a/yardstick/network_services/vnf_generic/vnf/udp_replay.py b/yardstick/network_services/vnf_generic/vnf/udp_replay.py index e3fde1a79..fa92744d8 100644 --- a/yardstick/network_services/vnf_generic/vnf/udp_replay.py +++ b/yardstick/network_services/vnf_generic/vnf/udp_replay.py @@ -60,14 +60,15 @@ class UdpReplayApproxVnf(SampleVNF): PIPELINE_COMMAND = REPLAY_PIPELINE_COMMAND - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): if resource_helper_type is None: resource_helper_type = UdpReplayResourceHelper + if setup_env_helper_type is None: setup_env_helper_type = UdpReplaySetupEnvHelper - super(UdpReplayApproxVnf, self).__init__( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + + super(UdpReplayApproxVnf, self).__init__(name, vnfd, setup_env_helper_type, + resource_helper_type) def _build_pipeline_kwargs(self): ports = self.vnfd_helper.port_pairs.all_ports diff --git a/yardstick/network_services/vnf_generic/vnf/vfw_vnf.py b/yardstick/network_services/vnf_generic/vnf/vfw_vnf.py index a1523dee3..432f30a0c 100644 --- a/yardstick/network_services/vnf_generic/vnf/vfw_vnf.py +++ b/yardstick/network_services/vnf_generic/vnf/vfw_vnf.py @@ -52,9 +52,8 @@ class FWApproxVnf(SampleVNF): 'packets_dropped': 3, } - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): if setup_env_helper_type is None: setup_env_helper_type = FWApproxSetupEnvHelper - super(FWApproxVnf, self).__init__( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + + super(FWApproxVnf, self).__init__(name, vnfd, setup_env_helper_type, resource_helper_type) diff --git a/yardstick/network_services/vnf_generic/vnf/vpe_vnf.py b/yardstick/network_services/vnf_generic/vnf/vpe_vnf.py index dd3221386..08fcb5e14 100644 --- a/yardstick/network_services/vnf_generic/vnf/vpe_vnf.py +++ b/yardstick/network_services/vnf_generic/vnf/vpe_vnf.py @@ -158,12 +158,11 @@ class VpeApproxVnf(SampleVNF): COLLECT_KPI = VPE_COLLECT_KPI WAIT_TIME = 20 - def __init__(self, name, vnfd, task_id, setup_env_helper_type=None, - resource_helper_type=None): + def __init__(self, name, vnfd, setup_env_helper_type=None, resource_helper_type=None): if setup_env_helper_type is None: setup_env_helper_type = VpeApproxSetupEnvHelper - super(VpeApproxVnf, self).__init__( - name, vnfd, task_id, setup_env_helper_type, resource_helper_type) + + super(VpeApproxVnf, self).__init__(name, vnfd, setup_env_helper_type, resource_helper_type) def get_stats(self, *args, **kwargs): raise NotImplementedError diff --git a/yardstick/ssh.py b/yardstick/ssh.py index 8bdc32c7c..2ebf40e98 100644 --- a/yardstick/ssh.py +++ b/yardstick/ssh.py @@ -89,14 +89,6 @@ def convert_key_to_str(key): return k.getvalue() -# class SSHError(Exception): -# pass -# -# -# class SSHTimeout(SSHError): -# pass - - class SSH(object): """Represent ssh connection.""" diff --git a/yardstick/tests/functional/network_services/__init__.py b/yardstick/tests/functional/benchmark/core/__init__.py index e69de29bb..e69de29bb 100644 --- a/yardstick/tests/functional/network_services/__init__.py +++ b/yardstick/tests/functional/benchmark/core/__init__.py diff --git a/yardstick/tests/functional/benchmark/core/test_report.py b/yardstick/tests/functional/benchmark/core/test_report.py new file mode 100644 index 000000000..5f060dd1e --- /dev/null +++ b/yardstick/tests/functional/benchmark/core/test_report.py @@ -0,0 +1,114 @@ +############################################################################## +# Copyright (c) 2018 Intel Corporation. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## + +import ast +import tempfile +import unittest + +import mock +from six.moves import configparser + +from yardstick.benchmark import core +from yardstick.benchmark.core import report +from yardstick.cmd.commands import change_osloobj_to_paras + + +GOOD_YAML_NAME = 'fake_name' +GOOD_TASK_ID = "9cbe74b6-df09-4535-8bdc-dc3a43b8a4e2" +GOOD_DB_FIELDKEYS = [ + {u'fieldKey': u'metric1', u'fieldType': u'integer'}, + {u'fieldKey': u'metric4', u'fieldType': u'integer'}, + {u'fieldKey': u'metric2', u'fieldType': u'integer'}, + {u'fieldKey': u'metric3', u'fieldType': u'integer'}, +] +GOOD_DB_METRICS = [ + {u'time': u'2018-08-20T16:49:26.372662016Z', + u'metric1': 1, u'metric2': 0, u'metric3': 8, u'metric4': 5}, + {u'time': u'2018-08-20T16:49:27.374208000Z', + u'metric1': 1, u'metric2': 1, u'metric3': 5, u'metric4': 4}, + {u'time': u'2018-08-20T16:49:28.375742976Z', + u'metric1': 2, u'metric2': 2, u'metric3': 3, u'metric4': 3}, + {u'time': u'2018-08-20T16:49:29.377299968Z', + u'metric1': 3, u'metric2': 3, u'metric3': 2, u'metric4': 2}, + {u'time': u'2018-08-20T16:49:30.378252032Z', + u'metric1': 5, u'metric2': 4, u'metric3': 1, u'metric4': 1}, + {u'time': u'2018-08-20T16:49:30.379359421Z', + u'metric1': 8, u'metric2': 5, u'metric3': 1, u'metric4': 0}, +] + +yardstick_config = """ +[DEFAULT] +dispatcher = influxdb +""" + + +def my_query(query_sql): + get_fieldkeys_cmd = 'show field keys' + get_metrics_cmd = 'select * from' + + if get_fieldkeys_cmd in query_sql: + return GOOD_DB_FIELDKEYS + elif get_metrics_cmd in query_sql: + return GOOD_DB_METRICS + return [] + + +class ReportTestCase(unittest.TestCase): + + @mock.patch.object(report.influx, 'query', new=my_query) + @mock.patch.object(configparser.ConfigParser, + 'read', side_effect=mock.mock_open(read_data=yardstick_config)) + def test_report_generate_nsb_simple(self, *args): + tmpfile = tempfile.NamedTemporaryFile(delete=True) + + args = core.Param({"task_id": [GOOD_TASK_ID], "yaml_name": [GOOD_YAML_NAME]}) + params = change_osloobj_to_paras(args) + + with mock.patch.object(report.consts, 'DEFAULT_HTML_FILE', tmpfile.name): + report.Report().generate_nsb(params) + + data_act = None + time_act = None + keys_act = None + tree_act = None + with open(tmpfile.name) as f: + for l in f.readlines(): + if "var report_data = {" in l: + data_act = ast.literal_eval(l.strip()[18:-1]) + elif "var report_time = [" in l: + time_act = ast.literal_eval(l.strip()[18:-1]) + elif "var report_keys = [" in l: + keys_act = ast.literal_eval(l.strip()[18:-1]) + elif "var report_tree = [" in l: + tree_act = ast.literal_eval(l.strip()[18:-1]) + + data_exp = { + 'metric1': [1, 1, 2, 3, 5, 8], + 'metric2': [0, 1, 2, 3, 4, 5], + 'metric3': [8, 5, 3, 2, 1, 1], + 'metric4': [5, 4, 3, 2, 1, 0], + } + time_exp = [ + '16:49:26.372662', '16:49:27.374208', '16:49:28.375742', + '16:49:29.377299', '16:49:30.378252', '16:49:30.379359', + ] + keys_exp = [ + 'metric1', 'metric2', 'metric3', 'metric4', + ] + tree_exp = [ + {'parent': '#', 'text': 'metric1', 'id': 'metric1'}, + {'parent': '#', 'text': 'metric2', 'id': 'metric2'}, + {'parent': '#', 'text': 'metric3', 'id': 'metric3'}, + {'parent': '#', 'text': 'metric4', 'id': 'metric4'}, + ] + + self.assertEqual(data_exp, data_act) + self.assertEqual(time_exp, time_act) + self.assertEqual(keys_exp, keys_act) + self.assertEqual(tree_exp, tree_act) diff --git a/yardstick/tests/functional/network_services/vnf_generic/__init__.py b/yardstick/tests/functional/network_services/vnf_generic/__init__.py deleted file mode 100644 index e69de29bb..000000000 --- a/yardstick/tests/functional/network_services/vnf_generic/__init__.py +++ /dev/null diff --git a/yardstick/tests/functional/network_services/vnf_generic/vnf/__init__.py b/yardstick/tests/functional/network_services/vnf_generic/vnf/__init__.py deleted file mode 100644 index e69de29bb..000000000 --- a/yardstick/tests/functional/network_services/vnf_generic/vnf/__init__.py +++ /dev/null diff --git a/yardstick/tests/functional/network_services/vnf_generic/vnf/test_base.py b/yardstick/tests/functional/network_services/vnf_generic/vnf/test_base.py deleted file mode 100644 index e57f8f51c..000000000 --- a/yardstick/tests/functional/network_services/vnf_generic/vnf/test_base.py +++ /dev/null @@ -1,103 +0,0 @@ -# Copyright (c) 2018 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import multiprocessing -import time -import uuid - -import mock - -from yardstick.common import messaging -from yardstick.common.messaging import payloads -from yardstick.common.messaging import producer -from yardstick.network_services.vnf_generic.vnf import base as vnf_base -from yardstick.tests.functional import base as ft_base - - -class _TrafficGenMQConsumer(vnf_base.GenericTrafficGen, - vnf_base.GenericVNFEndpoint): - - def __init__(self, name, vnfd, task_id): - vnf_base.GenericTrafficGen.__init__(self, name, vnfd, task_id) - self.queue = multiprocessing.Queue() - self._id = uuid.uuid1().int - vnf_base.GenericVNFEndpoint.__init__(self, self._id, [task_id], - self.queue) - self._consumer = vnf_base.GenericVNFConsumer([task_id], self) - self._consumer.start_rpc_server() - - def run_traffic(self, *args): - pass - - def terminate(self): - pass - - def collect_kpi(self): - pass - - def instantiate(self, *args): - pass - - def scale(self, flavor=''): - pass - - def runner_method_start_iteration(self, ctxt, **kwargs): - if ctxt['id'] in self._ctx_ids: - self._queue.put( - {'action': messaging.RUNNER_METHOD_START_ITERATION, - 'payload': payloads.RunnerPayload.dict_to_obj(kwargs)}) - - def runner_method_stop_iteration(self, ctxt, **kwargs): - if ctxt['id'] in self._ctx_ids: - self._queue.put( - {'action': messaging.RUNNER_METHOD_STOP_ITERATION, - 'payload': payloads.RunnerPayload.dict_to_obj(kwargs)}) - - -class _DummyProducer(producer.MessagingProducer): - pass - - -class GenericVNFMQConsumerTestCase(ft_base.BaseFunctionalTestCase): - - def test_fistro(self): - vnfd = {'benchmark': {'kpi': mock.ANY}, - 'vdu': [{'external-interface': 'ext_int'}] - } - task_id = uuid.uuid1().int - tg_obj = _TrafficGenMQConsumer('name_tg', vnfd, task_id) - producer = _DummyProducer(messaging.TOPIC_RUNNER, task_id) - - num_messages = 10 - for i in range(num_messages): - pload = payloads.RunnerPayload(version=10, data=i) - for method in (messaging.RUNNER_METHOD_START_ITERATION, - messaging.RUNNER_METHOD_STOP_ITERATION): - producer.send_message(method, pload) - - time.sleep(0.5) # Let consumers attend the calls - output = [] - while not tg_obj.queue.empty(): - data = tg_obj.queue.get(True, 1) - data_dict = {'action': data['action'], - 'payload': data['payload'].obj_to_dict()} - output.append(data_dict) - - self.assertEqual(num_messages * 2, len(output)) - for i in range(num_messages): - pload = payloads.RunnerPayload(version=10, data=i).obj_to_dict() - for method in (messaging.RUNNER_METHOD_START_ITERATION, - messaging.RUNNER_METHOD_STOP_ITERATION): - reg = {'action': method, 'payload': pload} - self.assertIn(reg, output) diff --git a/yardstick/tests/unit/benchmark/core/test_report.py b/yardstick/tests/unit/benchmark/core/test_report.py index 11d017ff0..b498299a9 100644 --- a/yardstick/tests/unit/benchmark/core/test_report.py +++ b/yardstick/tests/unit/benchmark/core/test_report.py @@ -1,6 +1,6 @@ ############################################################################## # Copyright (c) 2017 Rajesh Kudaka. -# Copyright (c) 2018 Intel Corporation. +# Copyright (c) 2018-2019 Intel Corporation. # # All rights reserved. This program and the accompanying materials # are made available under the terms of the Apache License, Version 2.0 @@ -9,6 +9,7 @@ ############################################################################## import mock +import six import unittest import uuid @@ -19,13 +20,82 @@ from yardstick.cmd.commands import change_osloobj_to_paras GOOD_YAML_NAME = 'fake_name' GOOD_TASK_ID = str(uuid.uuid4()) GOOD_DB_FIELDKEYS = [{'fieldKey': 'fake_key'}] -GOOD_DB_TASK = [{ +GOOD_DB_METRICS = [{ 'fake_key': 1.234, 'time': '0000-00-00T12:34:56.789012Z', }] GOOD_TIMESTAMP = ['12:34:56.789012'] BAD_YAML_NAME = 'F@KE_NAME' BAD_TASK_ID = 'aaaaaa-aaaaaaaa-aaaaaaaaaa-aaaaaa' +MORE_DB_FIELDKEYS = [ + {'fieldKey': 'fake_key'}, + {'fieldKey': 'str_str'}, + {'fieldKey': u'str_unicode'}, + {u'fieldKey': 'unicode_str'}, + {u'fieldKey': u'unicode_unicode'}, + ] +MORE_DB_METRICS = [{ + 'fake_key': None, + 'time': '0000-00-00T00:00:00.000000Z', + }, { + 'fake_key': 123, + 'time': '0000-00-00T00:00:01.000000Z', + }, { + 'fake_key': 4.56, + 'time': '0000-00-00T00:00:02.000000Z', + }, { + 'fake_key': 9876543210987654321, + 'time': '0000-00-00T00:00:03.000000Z', + }, { + 'fake_key': 'str_str value', + 'time': '0000-00-00T00:00:04.000000Z', + }, { + 'fake_key': u'str_unicode value', + 'time': '0000-00-00T00:00:05.000000Z', + }, { + u'fake_key': 'unicode_str value', + 'time': '0000-00-00T00:00:06.000000Z', + }, { + u'fake_key': u'unicode_unicode value', + 'time': '0000-00-00T00:00:07.000000Z', + }, { + 'fake_key': '7.89', + 'time': '0000-00-00T00:00:08.000000Z', + }, { + 'fake_key': '1011', + 'time': '0000-00-00T00:00:09.000000Z', + }, { + 'fake_key': '9876543210123456789', + 'time': '0000-00-00T00:00:10.000000Z', + }] +MORE_TIMESTAMP = ['00:00:%02d.000000' % n for n in range(len(MORE_DB_METRICS))] +MORE_EMPTY_DATA = [None] * len(MORE_DB_METRICS) +MORE_EXPECTED_TABLE_VALS = { + 'Timestamp': MORE_TIMESTAMP, + 'fake_key': [ + None, + 123, + 4.56, + 9876543210987654321 if six.PY3 else 9.876543210987655e+18, + 'str_str value', + 'str_unicode value', + 'unicode_str value', + 'unicode_unicode value', + 7.89, + 1011, + 9876543210123456789 if six.PY3 else 9.876543210123457e+18, + ], + 'str_str': MORE_EMPTY_DATA, + 'str_unicode': MORE_EMPTY_DATA, + 'unicode_str': MORE_EMPTY_DATA, + 'unicode_unicode': MORE_EMPTY_DATA, + } +MORE_EXPECTED_DATASETS = [{ + 'label': key, + 'data': MORE_EXPECTED_TABLE_VALS[key], + } + for key in map(str, [field['fieldKey'] for field in MORE_DB_FIELDKEYS]) + ] class JSTreeTestCase(unittest.TestCase): @@ -47,23 +117,15 @@ class JSTreeTestCase(unittest.TestCase): def test_format_for_jstree(self): data = [ - {'data': [0, ], 'label': 'tg__0.DropPackets'}, - {'data': [548, ], 'label': 'tg__0.LatencyAvg.5'}, - {'data': [1172, ], 'label': 'tg__0.LatencyAvg.6'}, - {'data': [1001, ], 'label': 'tg__0.LatencyMax.5'}, - {'data': [1468, ], 'label': 'tg__0.LatencyMax.6'}, - {'data': [18.11, ], 'label': 'tg__0.RxThroughput'}, - {'data': [18.11, ], 'label': 'tg__0.TxThroughput'}, - {'data': [0, ], 'label': 'tg__1.DropPackets'}, - {'data': [548, ], 'label': 'tg__1.LatencyAvg.5'}, - {'data': [1172, ], 'label': 'tg__1.LatencyAvg.6'}, - {'data': [1001, ], 'label': 'tg__1.LatencyMax.5'}, - {'data': [1468, ], 'label': 'tg__1.LatencyMax.6'}, - {'data': [18.1132084505, ], 'label': 'tg__1.RxThroughput'}, - {'data': [18.1157260383, ], 'label': 'tg__1.TxThroughput'}, - {'data': [9057888, ], 'label': 'vnf__0.curr_packets_in'}, - {'data': [0, ], 'label': 'vnf__0.packets_dropped'}, - {'data': [617825443, ], 'label': 'vnf__0.packets_fwd'}, + 'tg__0.DropPackets', + 'tg__0.LatencyAvg.5', 'tg__0.LatencyAvg.6', + 'tg__0.LatencyMax.5', 'tg__0.LatencyMax.6', + 'tg__0.RxThroughput', 'tg__0.TxThroughput', + 'tg__1.DropPackets', + 'tg__1.LatencyAvg.5', 'tg__1.LatencyAvg.6', + 'tg__1.LatencyMax.5', 'tg__1.LatencyMax.6', + 'tg__1.RxThroughput', 'tg__1.TxThroughput', + 'vnf__0.curr_packets_in', 'vnf__0.packets_dropped', 'vnf__0.packets_fwd', ] expected_output = [ @@ -117,11 +179,11 @@ class ReportTestCase(unittest.TestCase): self.assertEqual(GOOD_TASK_ID, str(self.rep.task_id)) def test__validate_invalid_yaml_name(self): - with self.assertRaisesRegexp(ValueError, "yaml*"): + with six.assertRaisesRegex(self, ValueError, "yaml*"): self.rep._validate(BAD_YAML_NAME, GOOD_TASK_ID) def test__validate_invalid_task_id(self): - with self.assertRaisesRegexp(ValueError, "task*"): + with six.assertRaisesRegex(self, ValueError, "task*"): self.rep._validate(GOOD_YAML_NAME, BAD_TASK_ID) @mock.patch.object(influx, 'query') @@ -141,42 +203,59 @@ class ReportTestCase(unittest.TestCase): mock_query.return_value = [] self.rep.yaml_name = GOOD_YAML_NAME self.rep.task_id = GOOD_TASK_ID - self.assertRaisesRegexp(KeyError, "Test case", self.rep._get_fieldkeys) + six.assertRaisesRegex(self, KeyError, "Test case", self.rep._get_fieldkeys) @mock.patch.object(influx, 'query') - def test__get_tasks(self, mock_query): - mock_query.return_value = GOOD_DB_TASK + def test__get_metrics(self, mock_query): + mock_query.return_value = GOOD_DB_METRICS self.rep.yaml_name = GOOD_YAML_NAME self.rep.task_id = GOOD_TASK_ID - self.assertEqual(GOOD_DB_TASK, self.rep._get_tasks()) + self.assertEqual(GOOD_DB_METRICS, self.rep._get_metrics()) @mock.patch.object(influx, 'query') - def test__get_tasks_task_not_found(self, mock_query): + def test__get_metrics_task_not_found(self, mock_query): mock_query.return_value = [] self.rep.yaml_name = GOOD_YAML_NAME self.rep.task_id = GOOD_TASK_ID - self.assertRaisesRegexp(KeyError, "Task ID", self.rep._get_tasks) + six.assertRaisesRegex(self, KeyError, "Task ID", self.rep._get_metrics) + + def test__get_timestamps(self): + + metrics = MORE_DB_METRICS + self.assertEqual( + MORE_TIMESTAMP, + self.rep._get_timestamps(metrics) + ) + + @mock.patch.object(report.Report, '_get_metrics') + @mock.patch.object(report.Report, '_get_fieldkeys') + def test__generate_common(self, mock_keys, mock_metrics): + mock_metrics.return_value = MORE_DB_METRICS + mock_keys.return_value = MORE_DB_FIELDKEYS + datasets, table_vals = self.rep._generate_common(self.param) + self.assertEqual(MORE_EXPECTED_DATASETS, datasets) + self.assertEqual(MORE_EXPECTED_TABLE_VALS, table_vals) - @mock.patch.object(report.Report, '_get_tasks') + @mock.patch.object(report.Report, '_get_metrics') @mock.patch.object(report.Report, '_get_fieldkeys') @mock.patch.object(report.Report, '_validate') - def test_generate(self, mock_valid, mock_keys, mock_tasks): - mock_tasks.return_value = GOOD_DB_TASK + def test_generate(self, mock_valid, mock_keys, mock_metrics): + mock_metrics.return_value = GOOD_DB_METRICS mock_keys.return_value = GOOD_DB_FIELDKEYS self.rep.generate(self.param) mock_valid.assert_called_once_with(GOOD_YAML_NAME, GOOD_TASK_ID) - mock_tasks.assert_called_once_with() + mock_metrics.assert_called_once_with() mock_keys.assert_called_once_with() self.assertEqual(GOOD_TIMESTAMP, self.rep.Timestamp) - @mock.patch.object(report.Report, '_get_tasks') + @mock.patch.object(report.Report, '_get_metrics') @mock.patch.object(report.Report, '_get_fieldkeys') @mock.patch.object(report.Report, '_validate') - def test_generate_nsb(self, mock_valid, mock_keys, mock_tasks): - mock_tasks.return_value = GOOD_DB_TASK + def test_generate_nsb(self, mock_valid, mock_keys, mock_metrics): + mock_metrics.return_value = GOOD_DB_METRICS mock_keys.return_value = GOOD_DB_FIELDKEYS self.rep.generate_nsb(self.param) mock_valid.assert_called_once_with(GOOD_YAML_NAME, GOOD_TASK_ID) - mock_tasks.assert_called_once_with() + mock_metrics.assert_called_once_with() mock_keys.assert_called_once_with() self.assertEqual(GOOD_TIMESTAMP, self.rep.Timestamp) diff --git a/yardstick/tests/unit/benchmark/runner/test_base.py b/yardstick/tests/unit/benchmark/runner/test_base.py index 49ba1efe4..07d6f1843 100644 --- a/yardstick/tests/unit/benchmark/runner/test_base.py +++ b/yardstick/tests/unit/benchmark/runner/test_base.py @@ -8,17 +8,12 @@ ############################################################################## import time -import uuid import mock -from oslo_config import cfg -import oslo_messaging import subprocess from yardstick.benchmark.runners import base as runner_base from yardstick.benchmark.runners import iteration -from yardstick.common import messaging -from yardstick.common.messaging import payloads from yardstick.tests.unit import base as ut_base @@ -48,6 +43,29 @@ class ActionTestCase(ut_base.BaseUnitTestCase): runner_base._periodic_action(0, 'echo', mock.Mock()) +class ScenarioOutputTestCase(ut_base.BaseUnitTestCase): + + def setUp(self): + self.output_queue = mock.Mock() + self.scenario_output = runner_base.ScenarioOutput(self.output_queue, + sequence=1) + + @mock.patch.object(time, 'time') + def test_push(self, mock_time): + mock_time.return_value = 2 + data = {"value1": 1} + self.scenario_output.push(data) + self.output_queue.put.assert_called_once_with({'timestamp': 2, + 'sequence': 1, + 'data': data}, True, 10) + + def test_push_no_timestamp(self): + self.scenario_output["value1"] = 1 + self.scenario_output.push(None, False) + self.output_queue.put.assert_called_once_with({'sequence': 1, + 'value1': 1}, True, 10) + + class RunnerTestCase(ut_base.BaseUnitTestCase): def setUp(self): @@ -99,54 +117,3 @@ class RunnerTestCase(ut_base.BaseUnitTestCase): with self.assertRaises(NotImplementedError): runner._run_benchmark(mock.Mock(), mock.Mock(), mock.Mock(), mock.Mock()) - - -class RunnerProducerTestCase(ut_base.BaseUnitTestCase): - - @mock.patch.object(oslo_messaging, 'Target', return_value='rpc_target') - @mock.patch.object(oslo_messaging, 'RPCClient') - @mock.patch.object(oslo_messaging, 'get_rpc_transport', - return_value='rpc_transport') - @mock.patch.object(cfg, 'CONF') - def test__init(self, mock_config, mock_transport, mock_rpcclient, - mock_target): - _id = uuid.uuid1().int - runner_producer = runner_base.RunnerProducer(_id) - mock_transport.assert_called_once_with( - mock_config, url='rabbit://yardstick:yardstick@localhost:5672/') - mock_target.assert_called_once_with(topic=messaging.TOPIC_RUNNER, - fanout=True, - server=messaging.SERVER) - mock_rpcclient.assert_called_once_with('rpc_transport', 'rpc_target') - self.assertEqual(_id, runner_producer._id) - self.assertEqual(messaging.TOPIC_RUNNER, runner_producer._topic) - - @mock.patch.object(oslo_messaging, 'Target', return_value='rpc_target') - @mock.patch.object(oslo_messaging, 'RPCClient') - @mock.patch.object(oslo_messaging, 'get_rpc_transport', - return_value='rpc_transport') - @mock.patch.object(payloads, 'RunnerPayload', return_value='runner_pload') - def test_start_iteration(self, mock_runner_payload, *args): - runner_producer = runner_base.RunnerProducer(uuid.uuid1().int) - with mock.patch.object(runner_producer, - 'send_message') as mock_message: - runner_producer.start_iteration(version=10) - - mock_message.assert_called_once_with( - messaging.RUNNER_METHOD_START_ITERATION, 'runner_pload') - mock_runner_payload.assert_called_once_with(version=10, data={}) - - @mock.patch.object(oslo_messaging, 'Target', return_value='rpc_target') - @mock.patch.object(oslo_messaging, 'RPCClient') - @mock.patch.object(oslo_messaging, 'get_rpc_transport', - return_value='rpc_transport') - @mock.patch.object(payloads, 'RunnerPayload', return_value='runner_pload') - def test_stop_iteration(self, mock_runner_payload, *args): - runner_producer = runner_base.RunnerProducer(uuid.uuid1().int) - with mock.patch.object(runner_producer, - 'send_message') as mock_message: - runner_producer.stop_iteration(version=15) - - mock_message.assert_called_once_with( - messaging.RUNNER_METHOD_STOP_ITERATION, 'runner_pload') - mock_runner_payload.assert_called_once_with(version=15, data={}) diff --git a/yardstick/tests/unit/benchmark/runner/test_iteration_ipc.py b/yardstick/tests/unit/benchmark/runner/test_iteration_ipc.py deleted file mode 100644 index 10d14a8a0..000000000 --- a/yardstick/tests/unit/benchmark/runner/test_iteration_ipc.py +++ /dev/null @@ -1,136 +0,0 @@ -# Copyright (c) 2018 Intel Corporation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import multiprocessing -import time -import os -import uuid - -import mock - -from yardstick.benchmark.runners import iteration_ipc -from yardstick.common import messaging -from yardstick.common.messaging import payloads -from yardstick.tests.unit import base as ut_base - - -class RunnerIterationIPCEndpointTestCase(ut_base.BaseUnitTestCase): - - def setUp(self): - self._id = uuid.uuid1().int - self._ctx_ids = [uuid.uuid1().int, uuid.uuid1().int] - self._queue = multiprocessing.Queue() - self.runner = iteration_ipc.RunnerIterationIPCEndpoint( - self._id, self._ctx_ids, self._queue) - self._kwargs = {'version': 1, 'iteration': 10, 'kpi': {}} - self._pload_dict = payloads.TrafficGeneratorPayload.dict_to_obj( - self._kwargs).obj_to_dict() - - def test_tg_method_started(self): - self._queue.empty() - ctxt = {'id': self._ctx_ids[0]} - self.runner.tg_method_started(ctxt, **self._kwargs) - time.sleep(0.2) - - output = [] - while not self._queue.empty(): - output.append(self._queue.get(True, 1)) - - self.assertEqual(1, len(output)) - self.assertEqual(self._ctx_ids[0], output[0]['id']) - self.assertEqual(messaging.TG_METHOD_STARTED, output[0]['action']) - self.assertEqual(self._pload_dict, output[0]['payload'].obj_to_dict()) - - def test_tg_method_finished(self): - self._queue.empty() - ctxt = {'id': self._ctx_ids[0]} - self.runner.tg_method_finished(ctxt, **self._kwargs) - time.sleep(0.2) - - output = [] - while not self._queue.empty(): - output.append(self._queue.get(True, 1)) - - self.assertEqual(1, len(output)) - self.assertEqual(self._ctx_ids[0], output[0]['id']) - self.assertEqual(messaging.TG_METHOD_FINISHED, output[0]['action']) - self.assertEqual(self._pload_dict, output[0]['payload'].obj_to_dict()) - - def test_tg_method_iteration(self): - self._queue.empty() - ctxt = {'id': self._ctx_ids[0]} - self.runner.tg_method_iteration(ctxt, **self._kwargs) - time.sleep(0.2) - - output = [] - while not self._queue.empty(): - output.append(self._queue.get(True, 1)) - - self.assertEqual(1, len(output)) - self.assertEqual(self._ctx_ids[0], output[0]['id']) - self.assertEqual(messaging.TG_METHOD_ITERATION, output[0]['action']) - self.assertEqual(self._pload_dict, output[0]['payload'].obj_to_dict()) - - -class RunnerIterationIPCConsumerTestCase(ut_base.BaseUnitTestCase): - - def setUp(self): - self._id = uuid.uuid1().int - self._ctx_ids = [uuid.uuid1().int, uuid.uuid1().int] - self.consumer = iteration_ipc.RunnerIterationIPCConsumer( - self._id, self._ctx_ids) - self.consumer._queue = mock.Mock() - - def test__init(self): - self.assertEqual({self._ctx_ids[0]: [], self._ctx_ids[1]: []}, - self.consumer._kpi_per_id) - - def test_is_all_kpis_received_in_iteration(self): - payload = payloads.TrafficGeneratorPayload( - version=1, iteration=1, kpi={}) - msg1 = {'action': messaging.TG_METHOD_ITERATION, - 'id': self._ctx_ids[0], 'payload': payload} - msg2 = {'action': messaging.TG_METHOD_ITERATION, - 'id': self._ctx_ids[1], 'payload': payload} - self.consumer.iteration_index = 1 - - self.consumer._queue.empty.side_effect = [False, True] - self.consumer._queue.get.return_value = msg1 - self.assertFalse(self.consumer.is_all_kpis_received_in_iteration()) - - self.consumer._queue.empty.side_effect = [False, True] - self.consumer._queue.get.return_value = msg2 - self.assertTrue(self.consumer.is_all_kpis_received_in_iteration()) - - -class IterationIPCRunnerTestCase(ut_base.BaseUnitTestCase): - - @mock.patch.object(iteration_ipc, '_worker_process') - @mock.patch.object(os, 'getpid', return_value=12345678) - @mock.patch.object(multiprocessing, 'Process', return_value=mock.Mock()) - def test__run_benchmark(self, mock_process, mock_getpid, mock_worker): - method = 'method' - scenario_cfg = {'type': 'scenario_type'} - context_cfg = 'context_cfg' - name = '%s-%s-%s' % ('IterationIPC', 'scenario_type', 12345678) - runner = iteration_ipc.IterationIPCRunner(mock.ANY) - mock_getpid.reset_mock() - - runner._run_benchmark('class', method, scenario_cfg, context_cfg) - mock_process.assert_called_once_with( - name=name, - target=mock_worker, - args=(runner.result_queue, 'class', method, scenario_cfg, - context_cfg, runner.aborted, runner.output_queue)) - mock_getpid.assert_called_once() diff --git a/yardstick/tests/unit/benchmark/scenarios/availability/test_monitor_multi.py b/yardstick/tests/unit/benchmark/scenarios/availability/test_monitor_multi.py index e9c680257..dc3a4b99a 100644 --- a/yardstick/tests/unit/benchmark/scenarios/availability/test_monitor_multi.py +++ b/yardstick/tests/unit/benchmark/scenarios/availability/test_monitor_multi.py @@ -63,3 +63,20 @@ class MultiMonitorServiceTestCase(unittest.TestCase): ins.start_monitor() ins.wait_monitor() ins.verify_SLA() + + def test__monitor_multi_no_sla(self, mock_open, mock_ssh): + monitor_cfg = { + 'monitor_type': 'general-monitor', + 'monitor_number': 3, + 'key': 'service-status', + 'monitor_key': 'service-status', + 'host': 'node1', + 'monitor_time': 0.1, + 'parameter': {'serviceName': 'haproxy'} + } + ins = monitor_multi.MultiMonitor( + monitor_cfg, self.context, {"nova-api": 10}) + mock_ssh.SSH.from_node().execute.return_value = (0, "running", '') + ins.start_monitor() + ins.wait_monitor() + self.assertTrue(ins.verify_SLA()) diff --git a/yardstick/tests/unit/benchmark/scenarios/availability/test_monitor_process.py b/yardstick/tests/unit/benchmark/scenarios/availability/test_monitor_process.py index a6d2ca398..8c73bf221 100644 --- a/yardstick/tests/unit/benchmark/scenarios/availability/test_monitor_process.py +++ b/yardstick/tests/unit/benchmark/scenarios/availability/test_monitor_process.py @@ -55,3 +55,19 @@ class MonitorProcessTestCase(unittest.TestCase): ins.monitor_func() ins._result = {"outage_time": 10} ins.verify_SLA() + + def test__monitor_process_no_sla(self, mock_ssh): + + monitor_cfg = { + 'monitor_type': 'process', + 'process_name': 'nova-api', + 'host': "node1", + 'monitor_time': 1, + } + ins = monitor_process.MonitorProcess(monitor_cfg, self.context, {"nova-api": 10}) + + mock_ssh.SSH.from_node().execute.return_value = (0, "0", '') + ins.setup() + ins.monitor_func() + ins._result = {"outage_time": 10} + self.assertTrue(ins.verify_SLA()) diff --git a/yardstick/tests/unit/benchmark/scenarios/networking/test_vnf_generic.py b/yardstick/tests/unit/benchmark/scenarios/networking/test_vnf_generic.py index 8214782b2..8ad35aa51 100644 --- a/yardstick/tests/unit/benchmark/scenarios/networking/test_vnf_generic.py +++ b/yardstick/tests/unit/benchmark/scenarios/networking/test_vnf_generic.py @@ -450,7 +450,6 @@ class TestNetworkServiceTestCase(unittest.TestCase): self._get_file_abspath("tg_trex_tpl.yaml") self.context_cfg["nodes"]['vnf__1']['VNF model'] = \ self._get_file_abspath("tg_trex_tpl.yaml") - self.context_cfg['task_id'] = 'fake_task_id' vnf = mock.Mock(autospec=GenericVNF) self.s.get_vnf_impl = mock.Mock(return_value=vnf) @@ -568,7 +567,6 @@ class TestNetworkServiceTestCase(unittest.TestCase): tgen.verify_traffic = lambda x: verified_dict tgen.terminate = mock.Mock(return_value=True) tgen.name = "tgen__1" - tgen.run_traffic.return_value = 'tg_id' vnf = mock.Mock(autospec=GenericVNF) vnf.runs_traffic = False vnf.terminate = mock.Mock(return_value=True) @@ -581,6 +579,7 @@ class TestNetworkServiceTestCase(unittest.TestCase): self.s.load_vnf_models = mock.Mock(return_value=self.s.vnfs) self.s._fill_traffic_profile = \ mock.Mock(return_value=TRAFFIC_PROFILE) + self.assertIsNone(self.s.setup()) def test_setup_exception(self): with mock.patch("yardstick.ssh.SSH") as ssh: @@ -705,9 +704,6 @@ class TestNetworkServiceTestCase(unittest.TestCase): ) self.assertEqual(self.s.topology, 'fake_nsd') - def test_get_mq_ids(self): - self.assertEqual(self.s._mq_ids, self.s.get_mq_ids()) - def test_teardown(self): vnf = mock.Mock(autospec=GenericVNF) vnf.terminate = mock.Mock(return_value=True) @@ -731,3 +727,87 @@ class TestNetworkServiceTestCase(unittest.TestCase): mock.Mock(return_value=True) with self.assertRaises(RuntimeError): self.s.teardown() + + +class TestNetworkServiceRFC2544TestCase(TestNetworkServiceTestCase): + + def setUp(self): + super(TestNetworkServiceRFC2544TestCase, self).setUp() + self.s = vnf_generic.NetworkServiceRFC2544(self.scenario_cfg, + self.context_cfg) + + def test_run(self): + tgen = mock.Mock(autospec=GenericTrafficGen) + tgen.traffic_finished = True + verified_dict = {"verified": True} + tgen.verify_traffic = lambda x: verified_dict + tgen.name = "tgen__1" + tgen.wait_on_trafic.return_value = 'COMPLETE' + vnf = mock.Mock(autospec=GenericVNF) + vnf.runs_traffic = False + self.s.vnfs = [tgen, vnf] + self.s.traffic_profile = mock.Mock() + self.s._fill_traffic_profile = mock.Mock() + self.s.collector = mock.Mock(autospec=Collector) + self.s.collector.get_kpi = mock.Mock( + return_value={tgen.name: verified_dict}) + result = mock.Mock() + self.s.run(result) + self.s._fill_traffic_profile.assert_called_once() + result.push.assert_called_once() + + def test_setup(self): + with mock.patch("yardstick.ssh.SSH") as ssh: + ssh_mock = mock.Mock(autospec=ssh.SSH) + ssh_mock.execute = \ + mock.Mock(return_value=(0, SYS_CLASS_NET + IP_ADDR_SHOW, "")) + ssh.from_node.return_value = ssh_mock + + tgen = mock.Mock(autospec=GenericTrafficGen) + tgen.traffic_finished = True + verified_dict = {"verified": True} + tgen.verify_traffic = lambda x: verified_dict + tgen.terminate = mock.Mock(return_value=True) + tgen.name = "tgen__1" + tgen.run_traffic.return_value = 'tg_id' + vnf = mock.Mock(autospec=GenericVNF) + vnf.runs_traffic = False + vnf.terminate = mock.Mock(return_value=True) + self.s.vnfs = [tgen, vnf] + self.s.traffic_profile = mock.Mock() + self.s.collector = mock.Mock(autospec=Collector) + self.s.collector.get_kpi = \ + mock.Mock(return_value={tgen.name: verified_dict}) + self.s.map_topology_to_infrastructure = mock.Mock(return_value=0) + self.s.load_vnf_models = mock.Mock(return_value=self.s.vnfs) + self.s.setup() + + def test_setup_exception(self): + with mock.patch("yardstick.ssh.SSH") as ssh: + ssh_mock = mock.Mock(autospec=ssh.SSH) + ssh_mock.execute = \ + mock.Mock(return_value=(0, SYS_CLASS_NET + IP_ADDR_SHOW, "")) + ssh.from_node.return_value = ssh_mock + + tgen = mock.Mock(autospec=GenericTrafficGen) + tgen.traffic_finished = True + verified_dict = {"verified": True} + tgen.verify_traffic = lambda x: verified_dict + tgen.terminate = mock.Mock(return_value=True) + tgen.name = "tgen__1" + vnf = mock.Mock(autospec=GenericVNF) + vnf.runs_traffic = False + vnf.instantiate.side_effect = RuntimeError( + "error during instantiate") + vnf.terminate = mock.Mock(return_value=True) + self.s.vnfs = [tgen, vnf] + self.s.traffic_profile = mock.Mock() + self.s.collector = mock.Mock(autospec=Collector) + self.s.collector.get_kpi = \ + mock.Mock(return_value={tgen.name: verified_dict}) + self.s.map_topology_to_infrastructure = mock.Mock(return_value=0) + self.s.load_vnf_models = mock.Mock(return_value=self.s.vnfs) + self.s._fill_traffic_profile = \ + mock.Mock(return_value=TRAFFIC_PROFILE) + with self.assertRaises(RuntimeError): + self.s.setup() diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_acl_vnf.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_acl_vnf.py index 69a5fb484..2d7ec195f 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_acl_vnf.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_acl_vnf.py @@ -237,7 +237,7 @@ class TestAclApproxVnf(unittest.TestCase): def test___init__(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd, 'task_id') + acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd) self.assertIsNone(acl_approx_vnf._vnf_process) @mock.patch("yardstick.network_services.vnf_generic.vnf.sample_vnf.time") @@ -247,7 +247,7 @@ class TestAclApproxVnf(unittest.TestCase): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd, 'task_id') + acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd) acl_approx_vnf.scenario_helper.scenario_cfg = { 'nodes': {acl_approx_vnf.name: "mock"} } @@ -270,7 +270,7 @@ class TestAclApproxVnf(unittest.TestCase): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd, 'task_id') + acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd) acl_approx_vnf.q_in = mock.MagicMock() acl_approx_vnf.q_out = mock.MagicMock() acl_approx_vnf.q_out.qsize = mock.Mock(return_value=0) @@ -282,7 +282,7 @@ class TestAclApproxVnf(unittest.TestCase): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd, 'task_id') + acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd) acl_approx_vnf.q_in = mock.MagicMock() acl_approx_vnf.q_out = mock.MagicMock() acl_approx_vnf.q_out.qsize = mock.Mock(return_value=0) @@ -303,7 +303,7 @@ class TestAclApproxVnf(unittest.TestCase): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd, 'task_id') + acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd) acl_approx_vnf._build_config = mock.MagicMock() acl_approx_vnf.queue_wrapper = mock.MagicMock() acl_approx_vnf.scenario_helper.scenario_cfg = self.scenario_cfg @@ -323,7 +323,7 @@ class TestAclApproxVnf(unittest.TestCase): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd, 'task_id') + acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd) acl_approx_vnf.deploy_helper = mock.MagicMock() acl_approx_vnf.resource_helper = mock.MagicMock() acl_approx_vnf._build_config = mock.MagicMock() @@ -341,7 +341,7 @@ class TestAclApproxVnf(unittest.TestCase): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd, 'task_id') + acl_approx_vnf = acl_vnf.AclApproxVnf(name, vnfd) acl_approx_vnf._vnf_process = mock.MagicMock() acl_approx_vnf._vnf_process.terminate = mock.Mock() acl_approx_vnf.used_drivers = {"01:01.0": "i40e", diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_agnostic_vnf.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_agnostic_vnf.py index 3374cbe76..47e464da3 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_agnostic_vnf.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_agnostic_vnf.py @@ -13,7 +13,6 @@ # limitations under the License. import unittest -import uuid from yardstick.network_services.vnf_generic.vnf import agnostic_vnf @@ -44,9 +43,8 @@ VNFD = { class TestAgnosticVnf(unittest.TestCase): def setUp(self): - self._id = uuid.uuid1().int self.vnfd = VNFD['vnfd:vnfd-catalog']['vnfd'][0] - self.agnostic_vnf = agnostic_vnf.AgnosticVnf(NAME, self.vnfd, self._id) + self.agnostic_vnf = agnostic_vnf.AgnosticVnf(NAME, self.vnfd) def test_instantiate(self): self.assertIsNone(self.agnostic_vnf.instantiate({}, {})) diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_base.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_base.py index 2ea13a5e0..ea2f84d98 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_base.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_base.py @@ -14,15 +14,10 @@ import multiprocessing import os -import uuid import mock -from oslo_config import cfg -import oslo_messaging import unittest -from yardstick.common import messaging -from yardstick.common.messaging import payloads from yardstick.network_services.vnf_generic.vnf import base from yardstick.ssh import SSH from yardstick.tests.unit import base as ut_base @@ -145,24 +140,6 @@ VNFD = { } -class _DummyGenericTrafficGen(base.GenericTrafficGen): # pragma: no cover - - def run_traffic(self, *args): - pass - - def terminate(self): - pass - - def collect_kpi(self): - pass - - def instantiate(self, *args): - pass - - def scale(self, flavor=''): - pass - - class FileAbsPath(object): def __init__(self, module_file): super(FileAbsPath, self).__init__() @@ -235,8 +212,7 @@ class TestGenericVNF(ut_base.BaseUnitTestCase): """Make sure that the abstract class cannot be instantiated""" with self.assertRaises(TypeError) as exc: # pylint: disable=abstract-class-instantiated - base.GenericVNF('vnf1', VNFD['vnfd:vnfd-catalog']['vnfd'][0], - 'task_id') + base.GenericVNF('vnf1', VNFD['vnfd:vnfd-catalog']['vnfd'][0]) msg = ("Can't instantiate abstract class GenericVNF with abstract " "methods collect_kpi, instantiate, scale, start_collect, " @@ -253,96 +229,8 @@ class GenericTrafficGenTestCase(ut_base.BaseUnitTestCase): name = 'vnf1' with self.assertRaises(TypeError) as exc: # pylint: disable=abstract-class-instantiated - base.GenericTrafficGen(name, vnfd, 'task_id') + base.GenericTrafficGen(name, vnfd) msg = ("Can't instantiate abstract class GenericTrafficGen with " "abstract methods collect_kpi, instantiate, run_traffic, " "scale, terminate") self.assertEqual(msg, str(exc.exception)) - - def test_get_mq_producer_id(self): - vnfd = {'benchmark': {'kpi': mock.ANY}, - 'vdu': [{'external-interface': 'ext_int'}] - } - tg = _DummyGenericTrafficGen('name', vnfd, 'task_id') - tg._mq_producer = mock.Mock() - tg._mq_producer.id = 'fake_id' - self.assertEqual('fake_id', tg.get_mq_producer_id()) - - -class TrafficGeneratorProducerTestCase(ut_base.BaseUnitTestCase): - - @mock.patch.object(oslo_messaging, 'Target', return_value='rpc_target') - @mock.patch.object(oslo_messaging, 'RPCClient') - @mock.patch.object(oslo_messaging, 'get_rpc_transport', - return_value='rpc_transport') - @mock.patch.object(cfg, 'CONF') - def test__init(self, mock_config, mock_transport, mock_rpcclient, - mock_target): - _id = uuid.uuid1().int - tg_producer = base.TrafficGeneratorProducer(_id) - mock_transport.assert_called_once_with( - mock_config, url='rabbit://yardstick:yardstick@localhost:5672/') - mock_target.assert_called_once_with(topic=messaging.TOPIC_TG, - fanout=True, - server=messaging.SERVER) - mock_rpcclient.assert_called_once_with('rpc_transport', 'rpc_target') - self.assertEqual(_id, tg_producer._id) - self.assertEqual(messaging.TOPIC_TG, tg_producer._topic) - - @mock.patch.object(oslo_messaging, 'Target', return_value='rpc_target') - @mock.patch.object(oslo_messaging, 'RPCClient') - @mock.patch.object(oslo_messaging, 'get_rpc_transport', - return_value='rpc_transport') - @mock.patch.object(payloads, 'TrafficGeneratorPayload', - return_value='tg_pload') - def test_tg_method_started(self, mock_tg_payload, *args): - tg_producer = base.TrafficGeneratorProducer(uuid.uuid1().int) - with mock.patch.object(tg_producer, 'send_message') as mock_message: - tg_producer.tg_method_started(version=10) - - mock_message.assert_called_once_with(messaging.TG_METHOD_STARTED, - 'tg_pload') - mock_tg_payload.assert_called_once_with(version=10, iteration=0, - kpi={}) - - @mock.patch.object(oslo_messaging, 'Target', return_value='rpc_target') - @mock.patch.object(oslo_messaging, 'RPCClient') - @mock.patch.object(oslo_messaging, 'get_rpc_transport', - return_value='rpc_transport') - @mock.patch.object(payloads, 'TrafficGeneratorPayload', - return_value='tg_pload') - def test_tg_method_finished(self, mock_tg_payload, *args): - tg_producer = base.TrafficGeneratorProducer(uuid.uuid1().int) - with mock.patch.object(tg_producer, 'send_message') as mock_message: - tg_producer.tg_method_finished(version=20) - - mock_message.assert_called_once_with(messaging.TG_METHOD_FINISHED, - 'tg_pload') - mock_tg_payload.assert_called_once_with(version=20, iteration=0, - kpi={}) - - @mock.patch.object(oslo_messaging, 'Target', return_value='rpc_target') - @mock.patch.object(oslo_messaging, 'RPCClient') - @mock.patch.object(oslo_messaging, 'get_rpc_transport', - return_value='rpc_transport') - @mock.patch.object(payloads, 'TrafficGeneratorPayload', - return_value='tg_pload') - def test_tg_method_iteration(self, mock_tg_payload, *args): - tg_producer = base.TrafficGeneratorProducer(uuid.uuid1().int) - with mock.patch.object(tg_producer, 'send_message') as mock_message: - tg_producer.tg_method_iteration(100, version=30, kpi={'k': 'v'}) - - mock_message.assert_called_once_with(messaging.TG_METHOD_ITERATION, - 'tg_pload') - mock_tg_payload.assert_called_once_with(version=30, iteration=100, - kpi={'k': 'v'}) - - -class GenericVNFConsumerTestCase(ut_base.BaseUnitTestCase): - - def test__init(self): - endpoints = 'endpoint_1' - _ids = [uuid.uuid1().int] - gvnf_consumer = base.GenericVNFConsumer(_ids, endpoints) - self.assertEqual(_ids, gvnf_consumer._ids) - self.assertEqual([endpoints], gvnf_consumer._endpoints) diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_cgnapt_vnf.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_cgnapt_vnf.py index 32f5b758d..635ca41a2 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_cgnapt_vnf.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_cgnapt_vnf.py @@ -318,14 +318,14 @@ class TestCgnaptApproxVnf(unittest.TestCase): def test___init__(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd, 'task_id') + cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd) self.assertIsNone(cgnapt_approx_vnf._vnf_process) @mock.patch.object(process, 'check_if_process_failed') @mock.patch.object(ctx_base.Context, 'get_physical_node_from_server', return_value='mock_node') def test_collect_kpi(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd, 'task_id') + cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd) cgnapt_approx_vnf.scenario_helper.scenario_cfg = { 'nodes': {cgnapt_approx_vnf.name: "mock"} } @@ -349,7 +349,7 @@ class TestCgnaptApproxVnf(unittest.TestCase): @mock.patch.object(time, 'sleep') def test_vnf_execute_command(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd, 'task_id') + cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd) cgnapt_approx_vnf.q_in = mock.Mock() cgnapt_approx_vnf.q_out = mock.Mock() cgnapt_approx_vnf.q_out.qsize = mock.Mock(return_value=0) @@ -357,7 +357,7 @@ class TestCgnaptApproxVnf(unittest.TestCase): def test_get_stats(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd, 'task_id') + cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd) with mock.patch.object(cgnapt_approx_vnf, 'vnf_execute') as mock_exec: mock_exec.return_value = 'output' self.assertEqual('output', cgnapt_approx_vnf.get_stats()) @@ -366,7 +366,7 @@ class TestCgnaptApproxVnf(unittest.TestCase): def test_run_vcgnapt(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd, 'task_id') + cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd) cgnapt_approx_vnf.ssh_helper = mock.Mock() cgnapt_approx_vnf.setup_helper = mock.Mock() with mock.patch.object(cgnapt_approx_vnf, '_build_config'), \ @@ -379,7 +379,7 @@ class TestCgnaptApproxVnf(unittest.TestCase): @mock.patch.object(ctx_base.Context, 'get_context_from_server') def test_instantiate(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd, 'task_id') + cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd) cgnapt_approx_vnf.deploy_helper = mock.MagicMock() cgnapt_approx_vnf.resource_helper = mock.MagicMock() cgnapt_approx_vnf._build_config = mock.MagicMock() @@ -396,7 +396,7 @@ class TestCgnaptApproxVnf(unittest.TestCase): def test__vnf_up_post(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] self.scenario_cfg['options'][name]['napt'] = 'static' - cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd, 'task_id') + cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd) cgnapt_approx_vnf.vnf_execute = mock.Mock() cgnapt_approx_vnf.scenario_helper.scenario_cfg = self.scenario_cfg with mock.patch.object(cgnapt_approx_vnf, 'setup_helper') as \ @@ -407,6 +407,6 @@ class TestCgnaptApproxVnf(unittest.TestCase): def test__vnf_up_post_short(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd, 'task_id') + cgnapt_approx_vnf = cgnapt_vnf.CgnaptApproxVnf(name, vnfd) cgnapt_approx_vnf.scenario_helper.scenario_cfg = self.scenario_cfg cgnapt_approx_vnf._vnf_up_post() diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_epc_vnf.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_epc_vnf.py index 6d14ddb54..c5bc3f59d 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_epc_vnf.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_epc_vnf.py @@ -14,7 +14,6 @@ import copy import unittest -import uuid from yardstick.network_services.vnf_generic.vnf import epc_vnf @@ -45,12 +44,11 @@ VNFD = { class TestEPCVnf(unittest.TestCase): def setUp(self): - self._id = uuid.uuid1().int self.vnfd = VNFD['vnfd:vnfd-catalog']['vnfd'][0] - self.epc_vnf = epc_vnf.EPCVnf(NAME, self.vnfd, self._id) + self.epc_vnf = epc_vnf.EPCVnf(NAME, self.vnfd) def test___init__(self, *args): - _epc_vnf = epc_vnf.EPCVnf(NAME, self.vnfd, self._id) + _epc_vnf = epc_vnf.EPCVnf(NAME, self.vnfd) for x in {'user', 'password', 'ip'}: self.assertEqual(self.vnfd['mgmt-interface'][x], _epc_vnf.vnfd_helper.mgmt_interface[x]) @@ -62,7 +60,7 @@ class TestEPCVnf(unittest.TestCase): def test___init__missing_ip(self, *args): _vnfd = copy.deepcopy(self.vnfd) _vnfd['mgmt-interface'].pop('ip') - _epc_vnf = epc_vnf.EPCVnf(NAME, _vnfd, self._id) + _epc_vnf = epc_vnf.EPCVnf(NAME, _vnfd) for x in {'user', 'password'}: self.assertEqual(_vnfd['mgmt-interface'][x], _epc_vnf.vnfd_helper.mgmt_interface[x]) diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_prox_irq.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_prox_irq.py index 4eaa38c27..fd6f1712c 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_prox_irq.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_prox_irq.py @@ -312,7 +312,7 @@ class TestProxIrqVNF(unittest.TestCase): } def test___init__(self): - prox_irq_vnf = ProxIrqVNF('vnf1', self.VNFD_0, 'task_id') + prox_irq_vnf = ProxIrqVNF('vnf1', self.VNFD_0) self.assertEqual(prox_irq_vnf.name, 'vnf1') self.assertDictEqual(prox_irq_vnf.vnfd_helper, self.VNFD_0) @@ -342,7 +342,7 @@ class TestProxIrqVNF(unittest.TestCase): build_config_file = mock.MagicMock() build_config_file.return_value = None - prox_irq_vnf = ProxIrqVNF(VNF_NAME, vnfd, 'task_id') + prox_irq_vnf = ProxIrqVNF(VNF_NAME, vnfd) startup = ["global", [["eal", "-4"]]] master_0 = ["core 0", [["mode", "master"]]] @@ -371,7 +371,7 @@ class TestProxIrqVNF(unittest.TestCase): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - prox_irq_vnf = ProxIrqVNF(VNF_NAME, vnfd, 'task_id') + prox_irq_vnf = ProxIrqVNF(VNF_NAME, vnfd) prox_irq_vnf.resource_helper = resource_helper = mock.Mock() resource_helper.execute.side_effect = OSError(errno.EPIPE, "") @@ -391,7 +391,7 @@ class TestProxIrqVNF(unittest.TestCase): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] mock_ssh(ssh, exec_result=(1, "", "")) - prox_irq_vnf = ProxIrqVNF(VNF_NAME, vnfd, 'task_id') + prox_irq_vnf = ProxIrqVNF(VNF_NAME, vnfd) prox_irq_vnf._terminated = mock.MagicMock() prox_irq_vnf._traffic_process = mock.MagicMock() @@ -414,7 +414,7 @@ class TestProxIrqVNF(unittest.TestCase): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] mock_ssh(ssh, exec_result=(1, "", "")) - prox_irq_vnf = ProxIrqVNF(VNF_NAME, vnfd, 'task_id') + prox_irq_vnf = ProxIrqVNF(VNF_NAME, vnfd) prox_irq_vnf._terminated = mock.MagicMock() prox_irq_vnf._traffic_process = mock.MagicMock() @@ -714,18 +714,18 @@ class TestProxIrqGen(unittest.TestCase): def test__check_status(self): - prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0, 'task_id') + prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0) with self.assertRaises(NotImplementedError): prox_irq_gen._check_status() def test_listen_traffic(self): - prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0, 'task_id') + prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0) prox_irq_gen.listen_traffic(mock.Mock()) def test_verify_traffic(self): - prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0, 'task_id') + prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0) prox_irq_gen.verify_traffic(mock.Mock()) @@ -734,7 +734,7 @@ class TestProxIrqGen(unittest.TestCase): def test_terminate(self, ssh, *args): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - prox_traffic_gen = ProxIrqGen(VNF_NAME, vnfd, 'task_id') + prox_traffic_gen = ProxIrqGen(VNF_NAME, vnfd) prox_traffic_gen._terminated = mock.MagicMock() prox_traffic_gen._traffic_process = mock.MagicMock() prox_traffic_gen._traffic_process.terminate = mock.Mock() @@ -747,7 +747,7 @@ class TestProxIrqGen(unittest.TestCase): self.assertIsNone(prox_traffic_gen.terminate()) def test__wait_for_process(self): - prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0, 'task_id') + prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0) with mock.patch.object(prox_irq_gen, '_check_status', return_value=0) as mock_status, \ mock.patch.object(prox_irq_gen, '_tg_process') as mock_proc: @@ -758,14 +758,14 @@ class TestProxIrqGen(unittest.TestCase): mock_status.assert_called_once() def test__wait_for_process_not_alive(self): - prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0, 'task_id') + prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0) with mock.patch.object(prox_irq_gen, '_tg_process') as mock_proc: mock_proc.is_alive.return_value = False self.assertRaises(RuntimeError, prox_irq_gen._wait_for_process) mock_proc.is_alive.assert_called_once() def test__wait_for_process_delayed(self): - prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0, 'task_id') + prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0) with mock.patch.object(prox_irq_gen, '_check_status', side_effect=[1, 0]) as mock_status, \ mock.patch.object(prox_irq_gen, @@ -777,7 +777,7 @@ class TestProxIrqGen(unittest.TestCase): mock_status.assert_has_calls([mock.call(), mock.call()]) def test_scale(self): - prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0, 'task_id') + prox_irq_gen = ProxIrqGen('tg1', self.VNFD_0) self.assertRaises(y_exceptions.FunctionNotImplemented, prox_irq_gen.scale) @@ -804,7 +804,7 @@ class TestProxIrqGen(unittest.TestCase): build_config_file = mock.MagicMock() build_config_file.return_value = None - prox_irq_gen = ProxIrqGen(VNF_NAME, vnfd, 'task_id') + prox_irq_gen = ProxIrqGen(VNF_NAME, vnfd) startup = ["global", [["eal", "-4"]]] master_0 = ["core 0", [["mode", "master"]]] diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_prox_vnf.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_prox_vnf.py index 62cbea0bb..de436a46e 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_prox_vnf.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_prox_vnf.py @@ -317,7 +317,7 @@ class TestProxApproxVnf(unittest.TestCase): @mock.patch(SSH_HELPER) def test___init__(self, ssh, *args): mock_ssh(ssh) - prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0, 'task_id') + prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0) self.assertIsNone(prox_approx_vnf._vnf_process) @mock.patch.object(ctx_base.Context, 'get_physical_node_from_server', return_value='mock_node') @@ -325,7 +325,7 @@ class TestProxApproxVnf(unittest.TestCase): def test_collect_kpi_no_client(self, ssh, *args): mock_ssh(ssh) - prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0, 'task_id') + prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0) prox_approx_vnf.scenario_helper.scenario_cfg = { 'nodes': {prox_approx_vnf.name: "mock"} } @@ -352,7 +352,7 @@ class TestProxApproxVnf(unittest.TestCase): [[0, 1, 2, 3, 4, 5], [1, 1, 2, 3, 4, 5]]) resource_helper.collect_collectd_kpi.return_value = {'core': {'result': 234}} - prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0, 'task_id') + prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0) prox_approx_vnf.scenario_helper.scenario_cfg = { 'nodes': {prox_approx_vnf.name: "mock"} } @@ -385,7 +385,7 @@ class TestProxApproxVnf(unittest.TestCase): [[0, 'A', 'B', 'C', 'D', 'E'], ['F', 1, 2, 3, 4, 5]]) - prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0, 'task_id') + prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0) prox_approx_vnf.scenario_helper.scenario_cfg = { 'nodes': {prox_approx_vnf.name: "mock"} } @@ -404,7 +404,7 @@ class TestProxApproxVnf(unittest.TestCase): [[0, 'A', 'B', 'C', 'D', 'E'], ['F', 1, 2, 3, 4, 5]]) - prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0, 'task_id') + prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0) prox_approx_vnf.scenario_helper.scenario_cfg = { 'nodes': {prox_approx_vnf.name: "mock"} } @@ -419,8 +419,7 @@ class TestProxApproxVnf(unittest.TestCase): mock_ssh(ssh) resource_helper = mock.MagicMock() - prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, deepcopy(self.VNFD0), - 'task_id') + prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, deepcopy(self.VNFD0)) prox_approx_vnf.scenario_helper.scenario_cfg = { 'nodes': {prox_approx_vnf.name: "mock"} } @@ -443,7 +442,7 @@ class TestProxApproxVnf(unittest.TestCase): def test_run_prox(self, ssh, *_): mock_ssh(ssh) - prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0, 'task_id') + prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0) prox_approx_vnf.scenario_helper.scenario_cfg = self.SCENARIO_CFG prox_approx_vnf.ssh_helper.join_bin_path.return_value = '/tool_path12/tool_file34' prox_approx_vnf.setup_helper.remote_path = 'configs/file56.cfg' @@ -457,7 +456,7 @@ class TestProxApproxVnf(unittest.TestCase): @mock.patch(SSH_HELPER) def bad_test_instantiate(self, *args): - prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0, 'task_id') + prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0) prox_approx_vnf.scenario_helper = mock.MagicMock() prox_approx_vnf.setup_helper = mock.MagicMock() # we can't mock super @@ -467,7 +466,7 @@ class TestProxApproxVnf(unittest.TestCase): @mock.patch(SSH_HELPER) def test_wait_for_instantiate_panic(self, ssh, *args): mock_ssh(ssh, exec_result=(1, "", "")) - prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0, 'task_id') + prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0) prox_approx_vnf._vnf_process = mock.MagicMock(**{"is_alive.return_value": True}) prox_approx_vnf._run_prox = mock.Mock(return_value=0) prox_approx_vnf.WAIT_TIME = 0 @@ -479,7 +478,7 @@ class TestProxApproxVnf(unittest.TestCase): @mock.patch(SSH_HELPER) def test_terminate(self, ssh, *args): mock_ssh(ssh) - prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0, 'task_id') + prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0) prox_approx_vnf._vnf_process = mock.MagicMock() prox_approx_vnf._vnf_process.terminate = mock.Mock() prox_approx_vnf.ssh_helper = mock.MagicMock() @@ -491,7 +490,7 @@ class TestProxApproxVnf(unittest.TestCase): @mock.patch(SSH_HELPER) def test__vnf_up_post(self, ssh, *args): mock_ssh(ssh) - prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0, 'task_id') + prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0) prox_approx_vnf.resource_helper = resource_helper = mock.Mock() prox_approx_vnf._vnf_up_post() @@ -500,7 +499,7 @@ class TestProxApproxVnf(unittest.TestCase): @mock.patch(SSH_HELPER) def test_vnf_execute_oserror(self, ssh, *args): mock_ssh(ssh) - prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0, 'task_id') + prox_approx_vnf = prox_vnf.ProxApproxVnf(NAME, self.VNFD0) prox_approx_vnf.resource_helper = resource_helper = mock.Mock() resource_helper.execute.side_effect = OSError(errno.EPIPE, "") diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_router_vnf.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_router_vnf.py index ad74145b4..3e21392be 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_router_vnf.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_router_vnf.py @@ -199,7 +199,7 @@ class TestRouterVNF(unittest.TestCase): def test___init__(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - router_vnf = RouterVNF(name, vnfd, 'task_id') + router_vnf = RouterVNF(name, vnfd) self.assertIsNone(router_vnf._vnf_process) def test_get_stats(self): @@ -213,7 +213,7 @@ class TestRouterVNF(unittest.TestCase): m = mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - router_vnf = RouterVNF(name, vnfd, 'task_id') + router_vnf = RouterVNF(name, vnfd) router_vnf.scenario_helper.scenario_cfg = { 'nodes': {router_vnf.name: "mock"} } @@ -232,7 +232,7 @@ class TestRouterVNF(unittest.TestCase): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - router_vnf = RouterVNF(name, vnfd, 'task_id') + router_vnf = RouterVNF(name, vnfd) router_vnf.scenario_helper.scenario_cfg = self.scenario_cfg router_vnf._run() router_vnf.ssh_helper.drop_connection.assert_called_once() @@ -243,7 +243,7 @@ class TestRouterVNF(unittest.TestCase): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - router_vnf = RouterVNF(name, vnfd, 'task_id') + router_vnf = RouterVNF(name, vnfd) router_vnf.WAIT_TIME = 0 router_vnf.INTERFACE_WAIT = 0 self.scenario_cfg.update({"nodes": {"vnf__1": ""}}) @@ -256,7 +256,7 @@ class TestRouterVNF(unittest.TestCase): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - router_vnf = RouterVNF(name, vnfd, 'task_id') + router_vnf = RouterVNF(name, vnfd) router_vnf._vnf_process = mock.MagicMock() router_vnf._vnf_process.terminate = mock.Mock() self.assertIsNone(router_vnf.terminate()) diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_sample_vnf.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_sample_vnf.py index a1802aa55..405eeceb7 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_sample_vnf.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_sample_vnf.py @@ -1062,58 +1062,6 @@ class TestClientResourceHelper(unittest.TestCase): self.assertIs(client_resource_helper._connect(client), client) - @mock.patch.object(ClientResourceHelper, '_build_ports') - @mock.patch.object(ClientResourceHelper, '_run_traffic_once', - return_value=(True, mock.ANY)) - def test_run_traffic(self, mock_run_traffic_once, mock_build_ports): - client_resource_helper = ClientResourceHelper(mock.Mock()) - client = mock.Mock() - traffic_profile = mock.Mock() - mq_producer = mock.Mock() - with mock.patch.object(client_resource_helper, '_connect') \ - as mock_connect, \ - mock.patch.object(client_resource_helper, '_terminated') \ - as mock_terminated: - mock_connect.return_value = client - type(mock_terminated).value = mock.PropertyMock( - side_effect=[0, 1, 1, lambda x: x]) - client_resource_helper.run_traffic(traffic_profile, mq_producer) - - mock_build_ports.assert_called_once() - traffic_profile.register_generator.assert_called_once() - mq_producer.tg_method_started.assert_called_once() - mq_producer.tg_method_finished.assert_called_once() - mq_producer.tg_method_iteration.assert_called_once_with(1) - mock_run_traffic_once.assert_called_once_with(traffic_profile) - - @mock.patch.object(ClientResourceHelper, '_build_ports') - @mock.patch.object(ClientResourceHelper, '_run_traffic_once', - side_effect=Exception) - def test_run_traffic_exception(self, mock_run_traffic_once, - mock_build_ports): - client_resource_helper = ClientResourceHelper(mock.Mock()) - client = mock.Mock() - traffic_profile = mock.Mock() - mq_producer = mock.Mock() - with mock.patch.object(client_resource_helper, '_connect') \ - as mock_connect, \ - mock.patch.object(client_resource_helper, '_terminated') \ - as mock_terminated: - mock_connect.return_value = client - type(mock_terminated).value = mock.PropertyMock(return_value=0) - mq_producer.reset_mock() - # NOTE(ralonsoh): "trex_stl_exceptions.STLError" is mocked - with self.assertRaises(Exception): - client_resource_helper.run_traffic(traffic_profile, - mq_producer) - - mock_build_ports.assert_called_once() - traffic_profile.register_generator.assert_called_once() - mock_run_traffic_once.assert_called_once_with(traffic_profile) - mq_producer.tg_method_started.assert_called_once() - mq_producer.tg_method_finished.assert_not_called() - mq_producer.tg_method_iteration.assert_not_called() - class TestRfc2544ResourceHelper(unittest.TestCase): @@ -1518,7 +1466,7 @@ class TestSampleVnf(unittest.TestCase): } def test___init__(self): - sample_vnf = SampleVNF('vnf1', self.VNFD_0, 'task_id') + sample_vnf = SampleVNF('vnf1', self.VNFD_0) self.assertEqual(sample_vnf.name, 'vnf1') self.assertDictEqual(sample_vnf.vnfd_helper, self.VNFD_0) @@ -1536,8 +1484,7 @@ class TestSampleVnf(unittest.TestCase): class MyResourceHelper(ResourceHelper): pass - sample_vnf = SampleVNF('vnf1', self.VNFD_0, 'task_id', - MySetupEnvHelper, MyResourceHelper) + sample_vnf = SampleVNF('vnf1', self.VNFD_0, MySetupEnvHelper, MyResourceHelper) self.assertEqual(sample_vnf.name, 'vnf1') self.assertDictEqual(sample_vnf.vnfd_helper, self.VNFD_0) @@ -1551,7 +1498,7 @@ class TestSampleVnf(unittest.TestCase): @mock.patch('yardstick.network_services.vnf_generic.vnf.sample_vnf.Process') def test__start_vnf(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sample_vnf = SampleVNF('vnf1', vnfd, 'task_id') + sample_vnf = SampleVNF('vnf1', vnfd) sample_vnf._run = mock.Mock() self.assertIsNone(sample_vnf.queue_wrapper) @@ -1570,7 +1517,7 @@ class TestSampleVnf(unittest.TestCase): } vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sample_vnf = SampleVNF('vnf1', vnfd, 'task_id') + sample_vnf = SampleVNF('vnf1', vnfd) sample_vnf.scenario_helper.scenario_cfg = { 'nodes': {sample_vnf.name: 'mock'} } @@ -1614,7 +1561,7 @@ class TestSampleVnf(unittest.TestCase): 'plugin1': {'param': 1}}} vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sample_vnf = SampleVNF('vnf__0', vnfd, 'task_id') + sample_vnf = SampleVNF('vnf__0', vnfd) sample_vnf._update_collectd_options(scenario_cfg, context_cfg) self.assertEqual(sample_vnf.setup_helper.collectd_options, expected) @@ -1641,7 +1588,7 @@ class TestSampleVnf(unittest.TestCase): 'plugin1': {'param': 1}}} vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sample_vnf = SampleVNF('vnf1', vnfd, 'task_id') + sample_vnf = SampleVNF('vnf1', vnfd) sample_vnf._update_options(options2, options1) self.assertEqual(options2, expected) @@ -1663,7 +1610,7 @@ class TestSampleVnf(unittest.TestCase): ] vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sample_vnf = SampleVNF('vnf1', vnfd, 'task_id') + sample_vnf = SampleVNF('vnf1', vnfd) sample_vnf.APP_NAME = 'sample1' sample_vnf.WAIT_TIME_FOR_SCRIPT = 0 sample_vnf._start_server = mock.Mock(return_value=0) @@ -1694,7 +1641,7 @@ class TestSampleVnf(unittest.TestCase): ] vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sample_vnf = SampleVNF('vnf1', vnfd, 'task_id') + sample_vnf = SampleVNF('vnf1', vnfd) sample_vnf.APP_NAME = 'sample1' sample_vnf.q_out = mock.Mock() sample_vnf.q_out.qsize.side_effect = iter(queue_size_list) @@ -1704,7 +1651,7 @@ class TestSampleVnf(unittest.TestCase): def test_terminate_without_vnf_process(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sample_vnf = SampleVNF('vnf1', vnfd, 'task_id') + sample_vnf = SampleVNF('vnf1', vnfd) sample_vnf.APP_NAME = 'sample1' sample_vnf.vnf_execute = mock.Mock() sample_vnf.ssh_helper = mock.Mock() @@ -1715,7 +1662,7 @@ class TestSampleVnf(unittest.TestCase): def test_get_stats(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sample_vnf = SampleVNF('vnf1', vnfd, 'task_id') + sample_vnf = SampleVNF('vnf1', vnfd) sample_vnf.APP_NAME = 'sample1' sample_vnf.APP_WORD = 'sample1' sample_vnf.vnf_execute = mock.Mock(return_value='the stats') @@ -1725,7 +1672,7 @@ class TestSampleVnf(unittest.TestCase): @mock.patch.object(ctx_base.Context, 'get_physical_node_from_server', return_value='mock_node') def test_collect_kpi(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sample_vnf = SampleVNF('vnf1', vnfd, 'task_id') + sample_vnf = SampleVNF('vnf1', vnfd) sample_vnf.scenario_helper.scenario_cfg = { 'nodes': {sample_vnf.name: "mock"} } @@ -1753,7 +1700,7 @@ class TestSampleVnf(unittest.TestCase): @mock.patch.object(ctx_base.Context, 'get_physical_node_from_server', return_value='mock_node') def test_collect_kpi_default(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sample_vnf = SampleVNF('vnf1', vnfd, 'task_id') + sample_vnf = SampleVNF('vnf1', vnfd) sample_vnf.scenario_helper.scenario_cfg = { 'nodes': {sample_vnf.name: "mock"} } @@ -1772,7 +1719,7 @@ class TestSampleVnf(unittest.TestCase): def test_scale(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sample_vnf = SampleVNF('vnf1', vnfd, 'task_id') + sample_vnf = SampleVNF('vnf1', vnfd) self.assertRaises(y_exceptions.FunctionNotImplemented, sample_vnf.scale) @@ -1780,7 +1727,7 @@ class TestSampleVnf(unittest.TestCase): test_cmd = 'test cmd' run_kwargs = {'arg1': 'val1', 'arg2': 'val2'} vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sample_vnf = SampleVNF('vnf1', vnfd, 'task_id') + sample_vnf = SampleVNF('vnf1', vnfd) sample_vnf.ssh_helper = mock.Mock() sample_vnf.setup_helper = mock.Mock() with mock.patch.object(sample_vnf, '_build_config', @@ -1916,30 +1863,30 @@ class TestSampleVNFTrafficGen(unittest.TestCase): } def test__check_status(self): - sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0, 'task_id') + sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0) with self.assertRaises(NotImplementedError): sample_vnf_tg._check_status() def test_listen_traffic(self): - sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0, 'task_id') + sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0) sample_vnf_tg.listen_traffic(mock.Mock()) def test_verify_traffic(self): - sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0, 'task_id') + sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0) sample_vnf_tg.verify_traffic(mock.Mock()) def test_terminate(self): - sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0, 'task_id') + sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0) sample_vnf_tg._traffic_process = mock.Mock() sample_vnf_tg._tg_process = mock.Mock() sample_vnf_tg.terminate() def test__wait_for_process(self): - sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0, 'task_id') + sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0) with mock.patch.object(sample_vnf_tg, '_check_status', return_value=0) as mock_status, \ mock.patch.object(sample_vnf_tg, '_tg_process') as mock_proc: @@ -1950,14 +1897,14 @@ class TestSampleVNFTrafficGen(unittest.TestCase): mock_status.assert_called_once() def test__wait_for_process_not_alive(self): - sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0, 'task_id') + sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0) with mock.patch.object(sample_vnf_tg, '_tg_process') as mock_proc: mock_proc.is_alive.return_value = False self.assertRaises(RuntimeError, sample_vnf_tg._wait_for_process) mock_proc.is_alive.assert_called_once() def test__wait_for_process_delayed(self): - sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0, 'task_id') + sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0) with mock.patch.object(sample_vnf_tg, '_check_status', side_effect=[1, 0]) as mock_status, \ mock.patch.object(sample_vnf_tg, @@ -1969,6 +1916,6 @@ class TestSampleVNFTrafficGen(unittest.TestCase): mock_status.assert_has_calls([mock.call(), mock.call()]) def test_scale(self): - sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0, 'task_id') + sample_vnf_tg = SampleVNFTrafficGen('tg1', self.VNFD_0) self.assertRaises(y_exceptions.FunctionNotImplemented, sample_vnf_tg.scale) diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_ixload.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_ixload.py index e7f6206eb..469e5113f 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_ixload.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_ixload.py @@ -128,12 +128,12 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase): def test___init__(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd, 'task_id') + ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd) self.assertIsNone(ixload_traffic_gen.resource_helper.data) def test_update_gateways(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd, 'task_id') + ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd) links = {'uplink_0': {'ip': {}}, 'downlink_1': {'ip': {}}} @@ -146,7 +146,7 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase): return_value='mock_node') def test_collect_kpi(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd, 'task_id') + ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd) ixload_traffic_gen.scenario_helper.scenario_cfg = { 'nodes': {ixload_traffic_gen.name: "mock"} } @@ -160,7 +160,7 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase): def test_listen_traffic(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd, 'task_id') + ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd) self.assertIsNone(ixload_traffic_gen.listen_traffic({})) @mock.patch.object(utils, 'find_relative_file') @@ -169,7 +169,7 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase): @mock.patch.object(tg_ixload, 'shutil') def test_instantiate(self, mock_shutil, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd, 'task_id') + ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd) scenario_cfg = {'tc': "nsb_test_case", 'ixia_profile': "ixload.cfg", 'task_path': "/path/to/task"} @@ -209,7 +209,7 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase): vnfd['mgmt-interface'].update({'tg-config': {}}) vnfd['mgmt-interface']['tg-config'].update({'ixchassis': '1.1.1.1'}) vnfd['mgmt-interface']['tg-config'].update({'py_bin_path': '/root'}) - sut = tg_ixload.IxLoadTrafficGen(NAME, vnfd, 'task_id') + sut = tg_ixload.IxLoadTrafficGen(NAME, vnfd) sut.connection = mock.Mock() sut._traffic_runner = mock.Mock(return_value=0) result = sut.run_traffic(mock_traffic_profile) @@ -230,7 +230,7 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase): vnfd['mgmt-interface'].update({'tg-config': {}}) vnfd['mgmt-interface']['tg-config'].update({'ixchassis': '1.1.1.1'}) vnfd['mgmt-interface']['tg-config'].update({'py_bin_path': '/root'}) - sut = tg_ixload.IxLoadTrafficGen(NAME, vnfd, 'task_id') + sut = tg_ixload.IxLoadTrafficGen(NAME, vnfd) sut.connection = mock.Mock() sut._traffic_runner = mock.Mock(return_value=0) subprocess.call(['touch', '/tmp/1.csv']) @@ -240,7 +240,7 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase): def test_terminate(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd, 'task_id') + ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd) self.assertIsNone(ixload_traffic_gen.terminate()) def test_parse_csv_read(self): @@ -253,7 +253,7 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase): 'HTTP Transaction Rate': True, } http_reader = [kpi_data] - ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd, 'task_id') + ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd) result = ixload_traffic_gen.resource_helper.result ixload_traffic_gen.resource_helper.parse_csv_read(http_reader) for k_left, k_right in tg_ixload.IxLoadResourceHelper.KPI_LIST.items(): @@ -268,7 +268,7 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase): 'HTTP Connection Rate': 4, 'HTTP Transaction Rate': 5, }] - ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd, 'task_id') + ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd) init_value = ixload_traffic_gen.resource_helper.result ixload_traffic_gen.resource_helper.parse_csv_read(http_reader) self.assertDictEqual(ixload_traffic_gen.resource_helper.result, @@ -282,7 +282,6 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase): 'HTTP Concurrent Connections': 3, 'HTTP Transaction Rate': 5, }] - ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd, 'task_id') - + ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd) with self.assertRaises(KeyError): ixload_traffic_gen.resource_helper.parse_csv_read(http_reader) diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_landslide.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_landslide.py index 1736d0f17..8c017d15e 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_landslide.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_landslide.py @@ -17,7 +17,6 @@ import mock import requests import time import unittest -import uuid from yardstick.benchmark.contexts import base as ctx_base from yardstick.common import exceptions @@ -399,8 +398,6 @@ class TestLandslideTrafficGen(unittest.TestCase): TEST_USER_ID = 11 def setUp(self): - self._id = uuid.uuid1().int - self.mock_lsapi = mock.patch.object(tg_landslide, 'LsApi') self.mock_lsapi.start() @@ -408,7 +405,7 @@ class TestLandslideTrafficGen(unittest.TestCase): self.mock_ssh_helper.start() self.vnfd = VNFD['vnfd:vnfd-catalog']['vnfd'][0] self.ls_tg = tg_landslide.LandslideTrafficGen( - NAME, self.vnfd, self._id) + NAME, self.vnfd) self.session_profile = copy.deepcopy(SESSION_PROFILE) self.ls_tg.session_profile = self.session_profile @@ -422,7 +419,7 @@ class TestLandslideTrafficGen(unittest.TestCase): def test___init__(self, mock_get_nsb_option, *args): _path_to_nsb = 'path/to/nsb' mock_get_nsb_option.return_value = _path_to_nsb - ls_tg = tg_landslide.LandslideTrafficGen(NAME, self.vnfd, self._id) + ls_tg = tg_landslide.LandslideTrafficGen(NAME, self.vnfd) self.assertIsInstance(ls_tg.resource_helper, tg_landslide.LandslideResourceHelper) mock_get_nsb_option.assert_called_once_with('bin_path') @@ -655,7 +652,7 @@ class TestLandslideTrafficGen(unittest.TestCase): def test__load_session_profile_unequal_num_of_cfg_blocks( self, mock_yaml_load, *args): vnfd = copy.deepcopy(VNFD['vnfd:vnfd-catalog']['vnfd'][0]) - ls_traffic_gen = tg_landslide.LandslideTrafficGen(NAME, vnfd, self._id) + ls_traffic_gen = tg_landslide.LandslideTrafficGen(NAME, vnfd) ls_traffic_gen.scenario_helper.scenario_cfg = self.SCENARIO_CFG mock_yaml_load.return_value = copy.deepcopy(SESSION_PROFILE) # Delete test_servers item from pod file to make it not valid @@ -670,7 +667,7 @@ class TestLandslideTrafficGen(unittest.TestCase): vnfd = copy.deepcopy(VNFD['vnfd:vnfd-catalog']['vnfd'][0]) # Swap test servers data in pod file vnfd['config'] = list(reversed(vnfd['config'])) - ls_tg = tg_landslide.LandslideTrafficGen(NAME, vnfd, self._id) + ls_tg = tg_landslide.LandslideTrafficGen(NAME, vnfd) ls_tg.scenario_helper.scenario_cfg = self.SCENARIO_CFG mock_yaml_load.return_value = SESSION_PROFILE with self.assertRaises(RuntimeError): diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_ping.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_ping.py index 434a7b770..51f075e4a 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_ping.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_ping.py @@ -226,7 +226,7 @@ class TestPingTrafficGen(unittest.TestCase): @mock.patch("yardstick.ssh.SSH") def test___init__(self, ssh): ssh.from_node.return_value.execute.return_value = 0, "success", "" - ping_traffic_gen = PingTrafficGen('vnf1', self.VNFD_0, 'task_id') + ping_traffic_gen = PingTrafficGen('vnf1', self.VNFD_0) self.assertIsInstance(ping_traffic_gen.setup_helper, PingSetupEnvHelper) self.assertIsInstance(ping_traffic_gen.resource_helper, PingResourceHelper) @@ -243,7 +243,7 @@ class TestPingTrafficGen(unittest.TestCase): (0, 'if_name_2', ''), ] ssh.from_node.return_value.execute.side_effect = iter(execute_result_data) - ping_traffic_gen = PingTrafficGen('vnf1', self.VNFD_0, 'task_id') + ping_traffic_gen = PingTrafficGen('vnf1', self.VNFD_0) ext_ifs = ping_traffic_gen.vnfd_helper.interfaces self.assertNotEqual(ext_ifs[0]['virtual-interface']['local_iface_name'], 'if_name_1') self.assertNotEqual(ext_ifs[1]['virtual-interface']['local_iface_name'], 'if_name_2') @@ -253,7 +253,7 @@ class TestPingTrafficGen(unittest.TestCase): def test_collect_kpi(self, ssh, *args): mock_ssh(ssh, exec_result=(0, "success", "")) - ping_traffic_gen = PingTrafficGen('vnf1', self.VNFD_0, 'task_id') + ping_traffic_gen = PingTrafficGen('vnf1', self.VNFD_0) ping_traffic_gen.scenario_helper.scenario_cfg = { 'nodes': {ping_traffic_gen.name: "mock"} } @@ -271,7 +271,7 @@ class TestPingTrafficGen(unittest.TestCase): @mock.patch(SSH_HELPER) def test_instantiate(self, ssh): mock_ssh(ssh, spec=VnfSshHelper, exec_result=(0, "success", "")) - ping_traffic_gen = PingTrafficGen('vnf1', self.VNFD_0, 'task_id') + ping_traffic_gen = PingTrafficGen('vnf1', self.VNFD_0) ping_traffic_gen.setup_helper.ssh_helper = mock.MagicMock( **{"execute.return_value": (0, "xe0_fake", "")}) self.assertIsInstance(ping_traffic_gen.ssh_helper, mock.Mock) @@ -286,7 +286,7 @@ class TestPingTrafficGen(unittest.TestCase): self.assertIsNotNone(ping_traffic_gen._result) def test_listen_traffic(self): - ping_traffic_gen = PingTrafficGen('vnf1', self.VNFD_0, 'task_id') + ping_traffic_gen = PingTrafficGen('vnf1', self.VNFD_0) self.assertIsNone(ping_traffic_gen.listen_traffic({})) @mock.patch("yardstick.ssh.SSH") @@ -294,5 +294,5 @@ class TestPingTrafficGen(unittest.TestCase): ssh.from_node.return_value.execute.return_value = 0, "success", "" ssh.from_node.return_value.run.return_value = 0, "success", "" - ping_traffic_gen = PingTrafficGen('vnf1', self.VNFD_0, 'task_id') + ping_traffic_gen = PingTrafficGen('vnf1', self.VNFD_0) self.assertIsNone(ping_traffic_gen.terminate()) diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_pktgen.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_pktgen.py index d341b970b..34dd640ad 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_pktgen.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_pktgen.py @@ -12,8 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -import uuid - import mock from yardstick.common import constants @@ -33,23 +31,12 @@ class PktgenTrafficGenTestCase(ut_base.BaseUnitTestCase): 'benchmark': {'kpi': 'fake_kpi'} } - def setUp(self): - self._id = uuid.uuid1().int - self._mock_vnf_consumer = mock.patch.object(vnf_base, - 'GenericVNFConsumer') - self.mock_vnf_consumer = self._mock_vnf_consumer.start() - self.addCleanup(self._stop_mock) - - def _stop_mock(self): - self._mock_vnf_consumer.stop() - def test__init(self): - tg = tg_pktgen.PktgenTrafficGen('name1', self.VNFD, self._id) - self.assertTrue(isinstance(tg, (vnf_base.GenericTrafficGen, - vnf_base.GenericVNFEndpoint))) + tg = tg_pktgen.PktgenTrafficGen('name1', self.VNFD) + self.assertTrue(isinstance(tg, vnf_base.GenericTrafficGen)) def test_run_traffic(self): - tg = tg_pktgen.PktgenTrafficGen('name1', self.VNFD, self._id) + tg = tg_pktgen.PktgenTrafficGen('name1', self.VNFD) mock_tp = mock.Mock() with mock.patch.object(tg, '_is_running', return_value=True): tg.run_traffic(mock_tp) @@ -57,23 +44,23 @@ class PktgenTrafficGenTestCase(ut_base.BaseUnitTestCase): mock_tp.init.assert_called_once_with(tg._node_ip, tg._lua_node_port) def test__get_lua_node_port(self): - tg = tg_pktgen.PktgenTrafficGen('name1', self.VNFD, self._id) + tg = tg_pktgen.PktgenTrafficGen('name1', self.VNFD) service_ports = [{'port': constants.LUA_PORT, 'node_port': '12345'}] self.assertEqual(12345, tg._get_lua_node_port(service_ports)) def test__get_lua_node_port_no_lua_port(self): - tg = tg_pktgen.PktgenTrafficGen('name1', self.VNFD, self._id) + tg = tg_pktgen.PktgenTrafficGen('name1', self.VNFD) service_ports = [{'port': '333'}] self.assertIsNone(tg._get_lua_node_port(service_ports)) def test__is_running(self): - tg = tg_pktgen.PktgenTrafficGen('name1', self.VNFD, self._id) + tg = tg_pktgen.PktgenTrafficGen('name1', self.VNFD) with mock.patch.object(tg, '_traffic_profile'): self.assertTrue(tg._is_running()) def test__is_running_exception(self): - tg = tg_pktgen.PktgenTrafficGen('name1', self.VNFD, self._id) + tg = tg_pktgen.PktgenTrafficGen('name1', self.VNFD) with mock.patch.object(tg, '_traffic_profile') as mock_tp: mock_tp.help.side_effect = exceptions.PktgenActionError() self.assertFalse(tg._is_running()) diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_prox.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_prox.py index 935d3fa30..49df19378 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_prox.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_prox.py @@ -314,16 +314,15 @@ class TestProxTrafficGen(unittest.TestCase): @mock.patch(SSH_HELPER) def test___init__(self, ssh, *args): mock_ssh(ssh) - prox_traffic_gen = ProxTrafficGen(NAME, self.VNFD0, 'task_id') + prox_traffic_gen = ProxTrafficGen(NAME, self.VNFD0) self.assertIsNone(prox_traffic_gen._tg_process) self.assertIsNone(prox_traffic_gen._traffic_process) - self.assertIsNone(prox_traffic_gen._mq_producer) @mock.patch.object(ctx_base.Context, 'get_physical_node_from_server', return_value='mock_node') @mock.patch(SSH_HELPER) def test_collect_kpi(self, ssh, *args): mock_ssh(ssh) - prox_traffic_gen = ProxTrafficGen(NAME, self.VNFD0, 'task_id') + prox_traffic_gen = ProxTrafficGen(NAME, self.VNFD0) prox_traffic_gen.scenario_helper.scenario_cfg = { 'nodes': {prox_traffic_gen.name: "mock"} } @@ -365,7 +364,7 @@ class TestProxTrafficGen(unittest.TestCase): mock_traffic_profile.params = self.TRAFFIC_PROFILE vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - prox_traffic_gen = ProxTrafficGen(NAME, vnfd, 'task_id') + prox_traffic_gen = ProxTrafficGen(NAME, vnfd) ssh_helper = mock.MagicMock( **{"execute.return_value": (0, "", ""), "bin_path": ""}) prox_traffic_gen.ssh_helper = ssh_helper @@ -407,22 +406,21 @@ class TestProxTrafficGen(unittest.TestCase): mock_traffic_profile.params = self.TRAFFIC_PROFILE vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sut = ProxTrafficGen(NAME, vnfd, 'task_id') + sut = ProxTrafficGen(NAME, vnfd) sut._get_socket = mock.MagicMock() sut.ssh_helper = mock.Mock() sut.ssh_helper.run = mock.Mock() sut.setup_helper.prox_config_dict = {} sut._connect_client = mock.Mock(autospec=mock.Mock()) sut._connect_client.get_stats = mock.Mock(return_value="0") - sut._setup_mq_producer = mock.Mock(return_value='mq_producer') - sut._traffic_runner(mock_traffic_profile, mock.ANY) + sut._traffic_runner(mock_traffic_profile) @mock.patch('yardstick.network_services.vnf_generic.vnf.prox_helpers.socket') @mock.patch(SSH_HELPER) def test_listen_traffic(self, ssh, *args): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - prox_traffic_gen = ProxTrafficGen(NAME, vnfd, 'task_id') + prox_traffic_gen = ProxTrafficGen(NAME, vnfd) self.assertIsNone(prox_traffic_gen.listen_traffic(mock.Mock())) @mock.patch('yardstick.network_services.vnf_generic.vnf.prox_helpers.socket') @@ -430,7 +428,7 @@ class TestProxTrafficGen(unittest.TestCase): def test_terminate(self, ssh, *args): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - prox_traffic_gen = ProxTrafficGen(NAME, vnfd, 'task_id') + prox_traffic_gen = ProxTrafficGen(NAME, vnfd) prox_traffic_gen._terminated = mock.MagicMock() prox_traffic_gen._traffic_process = mock.MagicMock() prox_traffic_gen._traffic_process.terminate = mock.Mock() diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_rfc2544_ixia.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_rfc2544_ixia.py index ab7a6a88e..a8f697d4d 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_rfc2544_ixia.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_rfc2544_ixia.py @@ -1,4 +1,4 @@ -# Copyright (c) 2016-2017 Intel Corporation +# Copyright (c) 2016-2019 Intel Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -18,6 +18,7 @@ import mock import six import unittest import ipaddress +import time from collections import OrderedDict from yardstick.common import utils @@ -108,6 +109,29 @@ class TestIxiaResourceHelper(unittest.TestCase): self.assertEqual('fake_samples', ixia_rhelper._queue.get()) mock_tprofile.update_traffic_profile.assert_called_once() + def test_run_test(self): + mock_tprofile = mock.Mock() + mock_tprofile.config.duration = 10 + mock_tprofile.get_drop_percentage.return_value = True, 'fake_samples' + ixia_rhelper = tg_rfc2544_ixia.IxiaResourceHelper(mock.Mock()) + tasks_queue = mock.Mock() + tasks_queue.get.return_value = 'RUN_TRAFFIC' + results_queue = mock.Mock() + ixia_rhelper.rfc_helper = mock.Mock() + ixia_rhelper.vnfd_helper = mock.Mock() + ixia_rhelper._ix_scenario = mock.Mock() + ixia_rhelper.vnfd_helper.port_pairs.all_ports = [] + with mock.patch.object(ixia_rhelper, 'generate_samples'), \ + mock.patch.object(ixia_rhelper, '_build_ports'), \ + mock.patch.object(ixia_rhelper, '_initialize_client'), \ + mock.patch.object(utils, 'wait_until_true'): + ixia_rhelper.run_test(mock_tprofile, tasks_queue, results_queue) + + self.assertEqual('fake_samples', ixia_rhelper._queue.get()) + mock_tprofile.update_traffic_profile.assert_called_once() + tasks_queue.task_done.assert_called_once() + results_queue.put.assert_called_once_with('COMPLETE') + @mock.patch.object(tg_rfc2544_ixia, 'ixnet_api') class TestIXIATrafficGen(unittest.TestCase): @@ -216,7 +240,7 @@ class TestIXIATrafficGen(unittest.TestCase): ssh.from_node.return_value = ssh_mock vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] # NOTE(ralonsoh): check the object returned. - tg_rfc2544_ixia.IxiaTrafficGen(NAME, vnfd, 'task_id') + tg_rfc2544_ixia.IxiaTrafficGen(NAME, vnfd) def test_listen_traffic(self, *args): with mock.patch("yardstick.ssh.SSH") as ssh: @@ -225,8 +249,7 @@ class TestIXIATrafficGen(unittest.TestCase): mock.Mock(return_value=(0, "", "")) ssh.from_node.return_value = ssh_mock vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - ixnet_traffic_gen = tg_rfc2544_ixia.IxiaTrafficGen(NAME, vnfd, - 'task_id') + ixnet_traffic_gen = tg_rfc2544_ixia.IxiaTrafficGen(NAME, vnfd) self.assertIsNone(ixnet_traffic_gen.listen_traffic({})) @mock.patch.object(ctx_base.Context, 'get_context_from_server', return_value='fake_context') @@ -239,8 +262,7 @@ class TestIXIATrafficGen(unittest.TestCase): mock.Mock(return_value=(0, "", "")) ssh.from_node.return_value = ssh_mock vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - ixnet_traffic_gen = tg_rfc2544_ixia.IxiaTrafficGen(NAME, vnfd, - 'task_id') + ixnet_traffic_gen = tg_rfc2544_ixia.IxiaTrafficGen(NAME, vnfd) scenario_cfg = {'tc': "nsb_test_case", "topology": ""} scenario_cfg.update( @@ -277,8 +299,7 @@ class TestIXIATrafficGen(unittest.TestCase): ssh.from_node.return_value = ssh_mock vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - ixnet_traffic_gen = tg_rfc2544_ixia.IxiaTrafficGen(NAME, vnfd, - 'task_id') + ixnet_traffic_gen = tg_rfc2544_ixia.IxiaTrafficGen(NAME, vnfd) ixnet_traffic_gen.scenario_helper.scenario_cfg = { 'nodes': {ixnet_traffic_gen.name: "mock"} } @@ -298,7 +319,7 @@ class TestIXIATrafficGen(unittest.TestCase): mock.Mock(return_value=(0, "", "")) ssh.from_node.return_value = ssh_mock ixnet_traffic_gen = tg_rfc2544_ixia.IxiaTrafficGen( - NAME, vnfd, 'task_id', resource_helper_type=mock.Mock()) + NAME, vnfd, resource_helper_type=mock.Mock()) ixnet_traffic_gen._terminated = mock.MagicMock() ixnet_traffic_gen._terminated.value = 0 ixnet_traffic_gen._ixia_traffic_gen = mock.MagicMock() @@ -314,7 +335,7 @@ class TestIXIATrafficGen(unittest.TestCase): def test__check_status(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - sut = tg_rfc2544_ixia.IxiaTrafficGen('vnf1', vnfd, 'task_id') + sut = tg_rfc2544_ixia.IxiaTrafficGen('vnf1', vnfd) sut._check_status() @mock.patch("yardstick.ssh.SSH") @@ -380,7 +401,7 @@ class TestIXIATrafficGen(unittest.TestCase): mock_traffic_profile.get_drop_percentage.return_value = [ 'Completed', samples] - sut = tg_rfc2544_ixia.IxiaTrafficGen(name, vnfd, 'task_id') + sut = tg_rfc2544_ixia.IxiaTrafficGen(name, vnfd) sut.vnf_port_pairs = [[[0], [1]]] sut.tc_file_name = self._get_file_abspath(TEST_FILE_YAML) sut.topology = "" @@ -424,12 +445,50 @@ class TestIXIATrafficGen(unittest.TestCase): mock.mock_open(), create=True) @mock.patch('yardstick.network_services.vnf_generic.vnf.tg_rfc2544_ixia.LOG.exception') def _traffic_runner(*args): - sut._setup_mq_producer = mock.Mock(return_value='mq_producer') - result = sut._traffic_runner(mock_traffic_profile, mock.ANY) + result = sut._traffic_runner(mock_traffic_profile) self.assertIsNone(result) _traffic_runner() + def test_run_traffic_once(self, *args): + vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] + sut = tg_rfc2544_ixia.IxiaTrafficGen('vnf1', vnfd) + sut._init_traffic_process = mock.Mock() + sut._tasks_queue.put = mock.Mock() + sut.resource_helper.client_started.value = 0 + sut.run_traffic_once(self.TRAFFIC_PROFILE) + sut._tasks_queue.put.assert_called_once_with("RUN_TRAFFIC") + sut._init_traffic_process.assert_called_once_with(self.TRAFFIC_PROFILE) + + def test__test_runner(self, *args): + vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] + sut = tg_rfc2544_ixia.IxiaTrafficGen('vnf1', vnfd) + tasks = 'tasks' + results = 'results' + sut.resource_helper = mock.Mock() + sut._test_runner(self.TRAFFIC_PROFILE, tasks, results) + sut.resource_helper.run_test.assert_called_once_with(self.TRAFFIC_PROFILE, + tasks, results) + + @mock.patch.object(time, 'sleep', return_value=0) + def test__init_traffic_process(self, *args): + vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] + sut = tg_rfc2544_ixia.IxiaTrafficGen('vnf1', vnfd) + sut._test_runner = mock.Mock(return_value=0) + sut.resource_helper = mock.Mock() + sut.resource_helper.client_started.value = 0 + sut._init_traffic_process(self.TRAFFIC_PROFILE) + + def test_wait_on_traffic(self, *args): + vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] + sut = tg_rfc2544_ixia.IxiaTrafficGen('vnf1', vnfd) + sut._tasks_queue.join = mock.Mock(return_value=0) + sut._result_queue.get = mock.Mock(return_value='COMPLETE') + result = sut.wait_on_traffic() + sut._tasks_queue.join.assert_called_once() + sut._result_queue.get.assert_called_once() + self.assertEqual(result, 'COMPLETE') + class TestIxiaBasicScenario(unittest.TestCase): def setUp(self): diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_rfc2544_trex.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_rfc2544_trex.py index a5b9f258e..a9fa5f3c1 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_rfc2544_trex.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_rfc2544_trex.py @@ -224,14 +224,12 @@ class TestTrexTrafficGenRFC(unittest.TestCase): self._mock_ssh_helper.stop() def test___init__(self): - trex_traffic_gen = tg_rfc2544_trex.TrexTrafficGenRFC( - 'vnf1', self.VNFD_0, 'task_id') + trex_traffic_gen = tg_rfc2544_trex.TrexTrafficGenRFC('vnf1', self.VNFD_0) self.assertIsNotNone(trex_traffic_gen.resource_helper._terminated.value) @mock.patch.object(ctx_base.Context, 'get_physical_node_from_server', return_value='mock_node') def test_collect_kpi(self, *args): - trex_traffic_gen = tg_rfc2544_trex.TrexTrafficGenRFC( - 'vnf1', self.VNFD_0, 'task_id') + trex_traffic_gen = tg_rfc2544_trex.TrexTrafficGenRFC('vnf1', self.VNFD_0) trex_traffic_gen.scenario_helper.scenario_cfg = { 'nodes': {trex_traffic_gen.name: "mock"} } @@ -247,8 +245,7 @@ class TestTrexTrafficGenRFC(unittest.TestCase): mock_traffic_profile.get_traffic_definition.return_value = "64" mock_traffic_profile.params = self.TRAFFIC_PROFILE - trex_traffic_gen = tg_rfc2544_trex.TrexTrafficGenRFC( - 'vnf1', self.VNFD_0, 'task_id') + trex_traffic_gen = tg_rfc2544_trex.TrexTrafficGenRFC('vnf1', self.VNFD_0) trex_traffic_gen._start_server = mock.Mock(return_value=0) trex_traffic_gen.resource_helper = mock.MagicMock() trex_traffic_gen.setup_helper.setup_vnf_environment = mock.MagicMock() @@ -283,8 +280,7 @@ class TestTrexTrafficGenRFC(unittest.TestCase): mock_traffic_profile.get_traffic_definition.return_value = "64" mock_traffic_profile.params = self.TRAFFIC_PROFILE - trex_traffic_gen = tg_rfc2544_trex.TrexTrafficGenRFC( - 'vnf1', self.VNFD_0, 'task_id') + trex_traffic_gen = tg_rfc2544_trex.TrexTrafficGenRFC('vnf1', self.VNFD_0) trex_traffic_gen.resource_helper = mock.MagicMock() trex_traffic_gen.setup_helper.setup_vnf_environment = mock.MagicMock() scenario_cfg = { diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_trex.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_trex.py index 9ed2abbb9..350ba8448 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_trex.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_trex.py @@ -300,14 +300,14 @@ class TestTrexTrafficGen(unittest.TestCase): def test___init__(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd, 'task_id') + trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd) self.assertIsInstance(trex_traffic_gen.resource_helper, tg_trex.TrexResourceHelper) @mock.patch.object(ctx_base.Context, 'get_physical_node_from_server', return_value='mock_node') def test_collect_kpi(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd, 'task_id') + trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd) trex_traffic_gen.scenario_helper.scenario_cfg = { 'nodes': {trex_traffic_gen.name: "mock"} } @@ -321,13 +321,13 @@ class TestTrexTrafficGen(unittest.TestCase): def test_listen_traffic(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd, 'task_id') + trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd) self.assertIsNone(trex_traffic_gen.listen_traffic({})) @mock.patch.object(ctx_base.Context, 'get_context_from_server', return_value='fake_context') def test_instantiate(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd, 'task_id') + trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd) trex_traffic_gen._start_server = mock.Mock(return_value=0) trex_traffic_gen._tg_process = mock.MagicMock() trex_traffic_gen._tg_process.start = mock.Mock() @@ -342,7 +342,7 @@ class TestTrexTrafficGen(unittest.TestCase): @mock.patch.object(ctx_base.Context, 'get_context_from_server', return_value='fake_context') def test_instantiate_error(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd, 'task_id') + trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd) trex_traffic_gen._start_server = mock.Mock(return_value=0) trex_traffic_gen._tg_process = mock.MagicMock() trex_traffic_gen._tg_process.start = mock.Mock() @@ -355,7 +355,7 @@ class TestTrexTrafficGen(unittest.TestCase): def test__start_server(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd, 'task_id') + trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd) trex_traffic_gen.ssh_helper = mock.MagicMock() trex_traffic_gen.resource_helper.ssh_helper = mock.MagicMock() trex_traffic_gen.scenario_helper.scenario_cfg = {} @@ -363,7 +363,7 @@ class TestTrexTrafficGen(unittest.TestCase): def test__start_server_multiple_queues(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd, 'task_id') + trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd) trex_traffic_gen.ssh_helper = mock.MagicMock() trex_traffic_gen.resource_helper.ssh_helper = mock.MagicMock() trex_traffic_gen.scenario_helper.scenario_cfg = { @@ -377,7 +377,7 @@ class TestTrexTrafficGen(unittest.TestCase): mock_traffic_profile.params = self.TRAFFIC_PROFILE vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - self.sut = tg_trex.TrexTrafficGen(NAME, vnfd, 'task_id') + self.sut = tg_trex.TrexTrafficGen(NAME, vnfd) self.sut.ssh_helper = mock.Mock() self.sut.ssh_helper.run = mock.Mock() self.sut._connect_client = mock.Mock() @@ -387,13 +387,12 @@ class TestTrexTrafficGen(unittest.TestCase): # must generate cfg before we can run traffic so Trex port mapping is # created self.sut.resource_helper.generate_cfg() - self.sut._setup_mq_producer = mock.Mock() with mock.patch.object(self.sut.resource_helper, 'run_traffic'): - self.sut._traffic_runner(mock_traffic_profile, mock.ANY) + self.sut._traffic_runner(mock_traffic_profile) def test__generate_trex_cfg(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd, 'task_id') + trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd) trex_traffic_gen.resource_helper.ssh_helper = mock.MagicMock() self.assertIsNone(trex_traffic_gen.resource_helper.generate_cfg()) @@ -432,7 +431,7 @@ class TestTrexTrafficGen(unittest.TestCase): 'local_mac': '00:00:00:00:00:01'}, 'vnfd-connection-point-ref': 'xe1', 'name': 'xe1'}] - trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd, 'task_id') + trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd) trex_traffic_gen.resource_helper.ssh_helper = mock.MagicMock() trex_traffic_gen.resource_helper.generate_cfg() trex_traffic_gen.resource_helper._build_ports() @@ -449,24 +448,25 @@ class TestTrexTrafficGen(unittest.TestCase): mock_traffic_profile.params = self.TRAFFIC_PROFILE vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - self.sut = tg_trex.TrexTrafficGen(NAME, vnfd, 'task_id') + self.sut = tg_trex.TrexTrafficGen(NAME, vnfd) self.sut.ssh_helper = mock.Mock() self.sut.ssh_helper.run = mock.Mock() self.sut._traffic_runner = mock.Mock(return_value=0) self.sut.resource_helper.client_started.value = 1 - self.sut.run_traffic(mock_traffic_profile) + result = self.sut.run_traffic(mock_traffic_profile) self.sut._traffic_process.terminate() + self.assertIsNotNone(result) def test_terminate(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd, 'task_id') + trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd) trex_traffic_gen.ssh_helper = mock.MagicMock() trex_traffic_gen.resource_helper.ssh_helper = mock.MagicMock() self.assertIsNone(trex_traffic_gen.terminate()) def test__connect_client(self): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd, 'task_id') + trex_traffic_gen = tg_trex.TrexTrafficGen(NAME, vnfd) client = mock.Mock() client.connect = mock.Mock(return_value=0) self.assertIsNotNone(trex_traffic_gen.resource_helper._connect(client)) diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_udp_replay.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_udp_replay.py index 56c971da6..60f739543 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_udp_replay.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_udp_replay.py @@ -317,8 +317,7 @@ class TestUdpReplayApproxVnf(unittest.TestCase): } def test___init__(self, *args): - udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0, - 'task_id') + udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0) self.assertIsNone(udp_replay_approx_vnf._vnf_process) @mock.patch("yardstick.network_services.vnf_generic.vnf.sample_vnf.time") @@ -333,7 +332,7 @@ class TestUdpReplayApproxVnf(unittest.TestCase): "Port\t\tRx Packet\t\tTx Packet\t\tRx Pkt Drop\t\tTx Pkt Drop \r\n"\ "0\t\t7374156\t\t7374136\t\t\t0\t\t\t0\r\n" \ "1\t\t7374316\t\t7374315\t\t\t0\t\t\t0\r\n\r\nReplay>\r\r\nReplay>" - udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, vnfd, 'task_id') + udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, vnfd) udp_replay_approx_vnf.scenario_helper.scenario_cfg = { 'nodes': {udp_replay_approx_vnf.name: "mock"} } @@ -355,8 +354,7 @@ class TestUdpReplayApproxVnf(unittest.TestCase): def test_get_stats(self, ssh, *args): mock_ssh(ssh) - udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0, - 'task_id') + udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0) udp_replay_approx_vnf.q_in = mock.MagicMock() udp_replay_approx_vnf.q_out = mock.MagicMock() udp_replay_approx_vnf.q_out.qsize = mock.Mock(return_value=0) @@ -382,8 +380,7 @@ class TestUdpReplayApproxVnf(unittest.TestCase): nfvi_context.attrs = {'nfvi_type': 'baremetal'} mock_get_ctx.return_value = nfvi_context - udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0, - 'task_id') + udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0) udp_replay_approx_vnf.queue_wrapper = mock.MagicMock() udp_replay_approx_vnf.nfvi_context = mock_get_ctx udp_replay_approx_vnf.nfvi_context.attrs = {'nfvi_type': 'baremetal'} @@ -408,8 +405,7 @@ class TestUdpReplayApproxVnf(unittest.TestCase): nfvi_context.attrs = {'nfvi_type': "baremetal"} mock_get_ctx.return_value = nfvi_context - udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0, - 'task_id') + udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0) udp_replay_approx_vnf.setup_helper.bound_pci = ['0000:00:0.1', '0000:00:0.3'] udp_replay_approx_vnf.all_ports = ["xe0", "xe1"] udp_replay_approx_vnf.ssh_helper.provision_tool = mock.MagicMock(return_value="tool_path") @@ -431,8 +427,7 @@ class TestUdpReplayApproxVnf(unittest.TestCase): def test_run_udp_replay(self, ssh, *args): mock_ssh(ssh) - udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0, - 'task_id') + udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0) udp_replay_approx_vnf._build_config = mock.MagicMock() udp_replay_approx_vnf.queue_wrapper = mock.MagicMock() udp_replay_approx_vnf.scenario_helper = mock.MagicMock() @@ -446,8 +441,7 @@ class TestUdpReplayApproxVnf(unittest.TestCase): def test_instantiate(self, ssh, *args): mock_ssh(ssh) - udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0, - 'task_id') + udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0) udp_replay_approx_vnf.q_out.put("Replay>") udp_replay_approx_vnf.WAIT_TIME = 0 udp_replay_approx_vnf.setup_helper.setup_vnf_environment = mock.Mock() @@ -465,8 +459,7 @@ class TestUdpReplayApproxVnf(unittest.TestCase): @mock.patch('yardstick.ssh.SSH') @mock.patch(SSH_HELPER) def test_instantiate_panic(self, *args): - udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0, - 'task_id') + udp_replay_approx_vnf = UdpReplayApproxVnf(NAME, self.VNFD_0) udp_replay_approx_vnf.WAIT_TIME = 0 udp_replay_approx_vnf.q_out.put("some text PANIC some text") udp_replay_approx_vnf.setup_helper.setup_vnf_environment = mock.Mock() diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_vfw_vnf.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_vfw_vnf.py index efbb7a856..5911948a3 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_vfw_vnf.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_vfw_vnf.py @@ -232,7 +232,7 @@ class TestFWApproxVnf(unittest.TestCase): def test___init__(self, *args): vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - vfw_approx_vnf = FWApproxVnf(name, vnfd, 'task_id') + vfw_approx_vnf = FWApproxVnf(name, vnfd) self.assertIsNone(vfw_approx_vnf._vnf_process) STATS = """\ @@ -255,7 +255,7 @@ pipeline> def test_collect_kpi(self, ssh, *args): mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - vfw_approx_vnf = FWApproxVnf(name, vnfd, 'task_id') + vfw_approx_vnf = FWApproxVnf(name, vnfd) vfw_approx_vnf.scenario_helper.scenario_cfg = { 'nodes': {vfw_approx_vnf.name: "mock"} } @@ -281,7 +281,7 @@ pipeline> mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - vfw_approx_vnf = FWApproxVnf(name, vnfd, 'task_id') + vfw_approx_vnf = FWApproxVnf(name, vnfd) vfw_approx_vnf.q_in = mock.MagicMock() vfw_approx_vnf.q_out = mock.MagicMock() vfw_approx_vnf.q_out.qsize = mock.Mock(return_value=0) @@ -293,7 +293,7 @@ pipeline> mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - vfw_approx_vnf = FWApproxVnf(name, vnfd, 'task_id') + vfw_approx_vnf = FWApproxVnf(name, vnfd) vfw_approx_vnf.q_in = mock.MagicMock() vfw_approx_vnf.q_out = mock.MagicMock() vfw_approx_vnf.q_out.qsize = mock.Mock(return_value=0) @@ -313,7 +313,7 @@ pipeline> mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - vfw_approx_vnf = FWApproxVnf(name, vnfd, 'task_id') + vfw_approx_vnf = FWApproxVnf(name, vnfd) vfw_approx_vnf._build_config = mock.MagicMock() vfw_approx_vnf.queue_wrapper = mock.MagicMock() vfw_approx_vnf.ssh_helper = mock.MagicMock() @@ -335,7 +335,7 @@ pipeline> mock_ssh(ssh) vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0] - vfw_approx_vnf = FWApproxVnf(name, vnfd, 'task_id') + vfw_approx_vnf = FWApproxVnf(name, vnfd) vfw_approx_vnf.ssh_helper = ssh vfw_approx_vnf.deploy_helper = mock.MagicMock() vfw_approx_vnf.resource_helper = mock.MagicMock() diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_vpe_vnf.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_vpe_vnf.py index 8d49cb3f4..7b67ecc37 100644 --- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_vpe_vnf.py +++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_vpe_vnf.py @@ -476,7 +476,7 @@ class TestVpeApproxVnf(unittest.TestCase): self._mock_time_sleep.stop() def test___init__(self): - vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0, 'task_id') + vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0) self.assertIsNone(vpe_approx_vnf._vnf_process) @mock.patch.object(ctx_base.Context, 'get_physical_node_from_server', @@ -490,7 +490,7 @@ class TestVpeApproxVnf(unittest.TestCase): resource.amqp_collect_nfvi_kpi.return_value = {'foo': 234} resource.check_if_system_agent_running.return_value = (1, None) - vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0, 'task_id') + vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0) vpe_approx_vnf.scenario_helper.scenario_cfg = { 'nodes': {vpe_approx_vnf.name: "mock"} } @@ -519,7 +519,7 @@ class TestVpeApproxVnf(unittest.TestCase): resource.check_if_system_agent_running.return_value = 0, '1234' resource.amqp_collect_nfvi_kpi.return_value = {'foo': 234} - vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0, 'task_id') + vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0) vpe_approx_vnf.scenario_helper.scenario_cfg = { 'nodes': {vpe_approx_vnf.name: "mock"} } @@ -541,7 +541,7 @@ class TestVpeApproxVnf(unittest.TestCase): @mock.patch.object(sample_vnf, 'VnfSshHelper') def test_vnf_execute(self, ssh): test_base.mock_ssh(ssh) - vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0, 'task_id') + vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0) vpe_approx_vnf.q_in = mock.MagicMock() vpe_approx_vnf.q_out = mock.MagicMock() vpe_approx_vnf.q_out.qsize = mock.Mock(return_value=0) @@ -551,7 +551,7 @@ class TestVpeApproxVnf(unittest.TestCase): def test_run_vpe(self, ssh): test_base.mock_ssh(ssh) - vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0, 'task_id') + vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0) vpe_approx_vnf.tc_file_name = get_file_abspath(TEST_FILE_YAML) vpe_approx_vnf.vnf_cfg = { 'lb_config': 'SW', @@ -634,7 +634,7 @@ class TestVpeApproxVnf(unittest.TestCase): mock_resource = mock.MagicMock() - vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0, 'task_id') + vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0) vpe_approx_vnf._vnf_process = mock_process vpe_approx_vnf.q_out = mock_q_out vpe_approx_vnf.queue_wrapper = mock.Mock( @@ -659,7 +659,7 @@ class TestVpeApproxVnf(unittest.TestCase): mock_resource = mock.MagicMock() - vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0, 'task_id') + vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0) vpe_approx_vnf._vnf_process = mock_process vpe_approx_vnf.q_out = mock_q_out vpe_approx_vnf.queue_wrapper = mock.Mock( @@ -678,7 +678,7 @@ class TestVpeApproxVnf(unittest.TestCase): mock_resource = mock.MagicMock() - vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0, 'task_id') + vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0) vpe_approx_vnf._vnf_process = mock_process vpe_approx_vnf.resource_helper.resource = mock_resource @@ -697,7 +697,7 @@ class TestVpeApproxVnf(unittest.TestCase): mock_resource = mock.MagicMock() - vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0, 'task_id') + vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0) vpe_approx_vnf._vnf_process = mock_process vpe_approx_vnf.resource_helper.resource = mock_resource @@ -722,7 +722,7 @@ class TestVpeApproxVnf(unittest.TestCase): mock_resource = mock.MagicMock() - vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0, 'task_id') + vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0) vpe_approx_vnf._vnf_process = mock_process vpe_approx_vnf.q_out = mock_q_out vpe_approx_vnf.resource_helper.resource = mock_resource @@ -736,7 +736,7 @@ class TestVpeApproxVnf(unittest.TestCase): def test_terminate(self, ssh): test_base.mock_ssh(ssh) - vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0, 'task_id') + vpe_approx_vnf = vpe_vnf.VpeApproxVnf(NAME, self.VNFD_0) vpe_approx_vnf._vnf_process = mock.MagicMock() vpe_approx_vnf._resource_collect_stop = mock.Mock() vpe_approx_vnf.resource_helper = mock.MagicMock() |