From 32a2593e6b7735bcbd0e6e28cd57e93fb7dccb34 Mon Sep 17 00:00:00 2001 From: Martin Klozik Date: Thu, 10 Nov 2016 15:29:45 +0000 Subject: yardstick: CLI params support for yardstick TCs Vswitchperf specific class in yardstick was updated to reflect new functionality of --test-params. These changes have impact on vsperf documentation and yardstick samples. As part of this fix following changes were made: * trafficgen mode can be executed with default configuration * yardstick specific TC samples were updated * dummy traffic generator was enhanced to support back2back * dummy traffic generator was enhanced to accept traffic results from configuration JIRA: VSPERF-422 JIRA: VSPERF-205 Change-Id: Ibeaa6ef46bde453e3ca5dee6e4568fc8c3853521 Signed-off-by: Martin Klozik Reviewed-by: Al Morton Reviewed-by: Christian Trautman Reviewed-by: Bill Michalowski Reviewed-by: Antonio Fischetti Reviewed-by: --- yardstick/tests/p2p_back2back.yaml | 74 ------------------- yardstick/tests/p2p_cont.yaml | 74 ------------------- yardstick/tests/p2p_rfc2544_throughput_sample.yaml | 78 ++++++++++++++++++++ yardstick/tests/p2p_tput.yaml | 74 ------------------- yardstick/tests/rfc2544_back2back_dummy.yaml | 79 ++++++++++++++++++++ yardstick/tests/rfc2544_continuous_dummy.yaml | 86 ++++++++++++++++++++++ yardstick/tests/rfc2544_throughput_dummy.yaml | 86 ++++++++++++++++++++++ 7 files changed, 329 insertions(+), 222 deletions(-) delete mode 100644 yardstick/tests/p2p_back2back.yaml delete mode 100644 yardstick/tests/p2p_cont.yaml create mode 100644 yardstick/tests/p2p_rfc2544_throughput_sample.yaml delete mode 100644 yardstick/tests/p2p_tput.yaml create mode 100644 yardstick/tests/rfc2544_back2back_dummy.yaml create mode 100644 yardstick/tests/rfc2544_continuous_dummy.yaml create mode 100644 yardstick/tests/rfc2544_throughput_dummy.yaml (limited to 'yardstick') diff --git a/yardstick/tests/p2p_back2back.yaml b/yardstick/tests/p2p_back2back.yaml deleted file mode 100644 index 39ab03e1..00000000 --- a/yardstick/tests/p2p_back2back.yaml +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 2016 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. - -# VSPERF specific configuration file for execution of back2back traffic. -# Traffic executed by traffic generator is forwarded directly between -# interfaces connected to the traffic generator. So test will only -# benchmark the performance of OVS external bridge at controller node. -# For details about supported test options see following file from -# the yardstick repository: -# -# yardstick/benchmark/scenarios/networking/vsperf.py - -schema: "yardstick:task:0.1" - -scenarios: -- - type: Vsperf - options: - testname: 'rfc2544_p2p_back2back' - traffic_type: 'back2back' - pkt_sizes: '64' - bidirectional: 'True' - iload: 100 - duration: 30 - trafficgen_port1: 'eth1' - trafficgen_port2: 'eth3' - external_bridge: 'br-ex' - conf-file: '~/vsperf-yardstick.conf' - - host: vsperf.demo - - runner: - type: Sequence - scenario_option_name: pkt_sizes - sequence: - - 64 - - 128 - - 512 - - 1024 - - 1518 - sla: - metrics: 'b2b_frames' - b2b_frames: 1 - action: monitor - -context: - name: demo - image: vsperf - flavor: vsperf-flavor - user: ubuntu - - placement_groups: - pgrp1: - policy: "availability" - - servers: - vsperf: - floating_ip: true - placement: "pgrp1" - - networks: - test: - cidr: '10.0.0.0/24' diff --git a/yardstick/tests/p2p_cont.yaml b/yardstick/tests/p2p_cont.yaml deleted file mode 100644 index 5cd63793..00000000 --- a/yardstick/tests/p2p_cont.yaml +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 2016 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. - -# VSPERF specific configuration file for execution of continuous traffic. -# Traffic executed by traffic generator is forwarded directly between -# interfaces connected to the traffic generator. So test will only -# benchmark the performance of OVS external bridge at controller node. -# For details about supported test options see following file from -# the yardstick repository: -# -# yardstick/benchmark/scenarios/networking/vsperf.py - -schema: "yardstick:task:0.1" - -scenarios: -- - type: Vsperf - options: - testname: 'rfc2544_p2p_continuous' - traffic_type: 'continuous' - pkt_sizes: '64' - bidirectional: 'True' - iload: 100 - duration: 30 - trafficgen_port1: 'eth1' - trafficgen_port2: 'eth3' - external_bridge: 'br-ex' - conf-file: '~/vsperf-yardstick.conf' - - host: vsperf.demo - - runner: - type: Sequence - scenario_option_name: pkt_sizes - sequence: - - 64 - - 128 - - 512 - - 1024 - - 1518 - sla: - metrics: 'throughput_rx_fps' - throughput_rx_fps: 500000 - action: monitor - -context: - name: demo - image: vsperf - flavor: vsperf-flavor - user: ubuntu - - placement_groups: - pgrp1: - policy: "availability" - - servers: - vsperf: - floating_ip: true - placement: "pgrp1" - - networks: - test: - cidr: '10.0.0.0/24' diff --git a/yardstick/tests/p2p_rfc2544_throughput_sample.yaml b/yardstick/tests/p2p_rfc2544_throughput_sample.yaml new file mode 100644 index 00000000..b633732b --- /dev/null +++ b/yardstick/tests/p2p_rfc2544_throughput_sample.yaml @@ -0,0 +1,78 @@ +# Copyright 2016 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. + +# VSPERF specific configuration file for execution of RFC2544 throughput +# traffic. Traffic executed by traffic generator is forwarded directly +# between interfaces connected to the traffic generator. So test will only +# benchmark the performance of OVS external bridge at controller node. +# Details about supported test options and test case execution can be +# found in VSPERF documentation: +# +# http://artifacts.opnfv.org/vswitchperf/docs/userguide/yardstick.html + +schema: "yardstick:task:0.1" + +scenarios: +- + type: Vsperf + options: + testname: 'p2p_rfc2544_throughput' + traffic_type: 'rfc2544' + frame_size: '64' + bidirectional: 'True' + iload: 100 + test_params: 'TRAFFICGEN_DURATION=30;' + trafficgen_port1: 'eth1' + trafficgen_port2: 'eth3' + external_bridge: 'br-ex' + conf_file: '~/vsperf-yardstick.conf' + + host: vsperf.demo + + runner: + type: Sequence + scenario_option_name: frame_size + sequence: + - 64 + - 128 + - 512 + - 1024 + - 1518 + sla: + # The throughput SLA (or any other SLA) cannot be set to a meaningful + # value without knowledge of the server and networking environment, + # possibly including prior testing in that environment to establish + # a baseline SLA level under well-understood circumstances. + metrics: 'throughput_rx_fps' + throughput_rx_fps: 500000 + action: monitor + +context: + name: demo + image: vsperf + flavor: vsperf-flavor + user: ubuntu + + placement_groups: + pgrp1: + policy: "availability" + + servers: + vsperf: + floating_ip: true + placement: "pgrp1" + + networks: + test: + cidr: '10.0.0.0/24' diff --git a/yardstick/tests/p2p_tput.yaml b/yardstick/tests/p2p_tput.yaml deleted file mode 100644 index 7a172450..00000000 --- a/yardstick/tests/p2p_tput.yaml +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright 2016 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. - -# VSPERF specific configuration file for execution of RFC2544 throughput -# traffic. Traffic executed by traffic generator is forwarded directly -# between interfaces connected to the traffic generator. So test will only -# benchmark the performance of OVS external bridge at controller node. -# For details about supported test options see following file from -# the yardstick repository: -# -# yardstick/benchmark/scenarios/networking/vsperf.py - -schema: "yardstick:task:0.1" - -scenarios: -- - type: Vsperf - options: - testname: 'rfc2544_p2p_tput' - traffic_type: 'rfc2544' - pkt_sizes: '64' - bidirectional: 'True' - iload: 100 - duration: 30 - trafficgen_port1: 'eth1' - trafficgen_port2: 'eth3' - external_bridge: 'br-ex' - conf-file: '~/vsperf-yardstick.conf' - - host: vsperf.demo - - runner: - type: Sequence - scenario_option_name: pkt_sizes - sequence: - - 64 - - 128 - - 512 - - 1024 - - 1518 - sla: - metrics: 'throughput_rx_fps' - throughput_rx_fps: 500000 - action: monitor - -context: - name: demo - image: vsperf - flavor: vsperf-flavor - user: ubuntu - - placement_groups: - pgrp1: - policy: "availability" - - servers: - vsperf: - floating_ip: true - placement: "pgrp1" - - networks: - test: - cidr: '10.0.0.0/24' diff --git a/yardstick/tests/rfc2544_back2back_dummy.yaml b/yardstick/tests/rfc2544_back2back_dummy.yaml new file mode 100644 index 00000000..a3265c52 --- /dev/null +++ b/yardstick/tests/rfc2544_back2back_dummy.yaml @@ -0,0 +1,79 @@ +# Copyright 2016 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. + +# VSPERF specific configuration file for execution of RFC2544 back2back +# traffic. +# This test uses a dummy traffic generator, which does not execute a real +# traffic. The purpose of this test is to demonstrate vsperf execution +# by yardstick environment. Provided 'test_params' option can modified +# to use a real traffic generator. +# Details about supported test options and test case execution can be +# found in VSPERF documentation: +# +# http://artifacts.opnfv.org/vswitchperf/docs/userguide/yardstick.html + +schema: "yardstick:task:0.1" + +scenarios: +- + type: Vsperf + options: + testname: 'rfc2544_back2back' + traffic_type: 'back2back' + frame_size: '64' + bidirectional: 'True' + iload: 100 + test_params: 'TRAFFICGEN="Dummy"; + TRAFFICGEN_DUMMY_RESULTS={ + "b2b frames":"10000", + "b2b frame loss %":"0.0"}' + + host: vsperf.demo + + runner: + type: Sequence + scenario_option_name: frame_size + sequence: + - 64 + - 128 + - 512 + - 1024 + - 1518 + sla: + # The throughput SLA (or any other SLA) cannot be set to a meaningful + # value without knowledge of the server and networking environment, + # possibly including prior testing in that environment to establish + # a baseline SLA level under well-understood circumstances. + metrics: 'b2b_frames' + b2b_frames: 1 + action: monitor + +context: + name: demo + image: vsperf + flavor: vsperf-flavor + user: ubuntu + + placement_groups: + pgrp1: + policy: "availability" + + servers: + vsperf: + floating_ip: true + placement: "pgrp1" + + networks: + test: + cidr: '10.0.0.0/24' diff --git a/yardstick/tests/rfc2544_continuous_dummy.yaml b/yardstick/tests/rfc2544_continuous_dummy.yaml new file mode 100644 index 00000000..fea0af3f --- /dev/null +++ b/yardstick/tests/rfc2544_continuous_dummy.yaml @@ -0,0 +1,86 @@ +# Copyright 2016 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. + +# VSPERF specific configuration file for execution of RFC2544 continuous +# traffic. +# This test uses a dummy traffic generator, which does not execute a real +# traffic. The purpose of this test is to demonstrate vsperf execution +# by yardstick environment. Provided 'test_params' option can modified +# to use a real traffic generator. +# Details about supported test options and test case execution can be +# found in VSPERF documentation: +# +# http://artifacts.opnfv.org/vswitchperf/docs/userguide/yardstick.html + +schema: "yardstick:task:0.1" + +scenarios: +- + type: Vsperf + options: + testname: 'rfc2544_continuous' + traffic_type: 'continuous' + frame_size: '64' + bidirectional: 'True' + iload: 100 + test_params: 'TRAFFICGEN_DURATION=30; + TRAFFICGEN="Dummy"; + TRAFFICGEN_DUMMY_RESULTS={ + "frames tx":15000000, + "frames rx":15000000, + "tx rate %":100, + "rx rate %":100, + "min latency":1, + "max latency":15, + "avg latency":2.5, + "frameloss %":0,}' + + host: vsperf.demo + + runner: + type: Sequence + scenario_option_name: frame_size + sequence: + - 64 + - 128 + - 512 + - 1024 + - 1518 + sla: + # The throughput SLA (or any other SLA) cannot be set to a meaningful + # value without knowledge of the server and networking environment, + # possibly including prior testing in that environment to establish + # a baseline SLA level under well-understood circumstances. + metrics: 'throughput_rx_fps' + throughput_rx_fps: 500000 + action: monitor + +context: + name: demo + image: vsperf + flavor: vsperf-flavor + user: ubuntu + + placement_groups: + pgrp1: + policy: "availability" + + servers: + vsperf: + floating_ip: true + placement: "pgrp1" + + networks: + test: + cidr: '10.0.0.0/24' diff --git a/yardstick/tests/rfc2544_throughput_dummy.yaml b/yardstick/tests/rfc2544_throughput_dummy.yaml new file mode 100644 index 00000000..81755c50 --- /dev/null +++ b/yardstick/tests/rfc2544_throughput_dummy.yaml @@ -0,0 +1,86 @@ +# Copyright 2016 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. + +# VSPERF specific configuration file for execution of RFC2544 throughput +# traffic. +# This test uses a dummy traffic generator, which does not execute a real +# traffic. The purpose of this test is to demonstrate vsperf execution +# by yardstick environment. Provided 'test_params' option can modified +# to use a real traffic generator. +# Details about supported test options and test case execution can be +# found in VSPERF documentation: +# +# http://artifacts.opnfv.org/vswitchperf/docs/userguide/yardstick.html + +schema: "yardstick:task:0.1" + +scenarios: +- + type: Vsperf + options: + testname: 'rfc2544_throughput' + traffic_type: 'rfc2544' + frame_size: '64' + bidirectional: 'True' + iload: 100 + test_params: 'TRAFFICGEN_DURATION=30; + TRAFFICGEN="Dummy"; + TRAFFICGEN_DUMMY_RESULTS={ + "frames tx":15000000, + "frames rx":15000000, + "tx rate %":100, + "rx rate %":100, + "min latency":1, + "max latency":15, + "avg latency":2.5, + "frameloss %":0,}' + + host: vsperf.demo + + runner: + type: Sequence + scenario_option_name: frame_size + sequence: + - 64 + - 128 + - 512 + - 1024 + - 1518 + sla: + # The throughput SLA (or any other SLA) cannot be set to a meaningful + # value without knowledge of the server and networking environment, + # possibly including prior testing in that environment to establish + # a baseline SLA level under well-understood circumstances. + metrics: 'throughput_rx_fps' + throughput_rx_fps: 500000 + action: monitor + +context: + name: demo + image: vsperf + flavor: vsperf-flavor + user: ubuntu + + placement_groups: + pgrp1: + policy: "availability" + + servers: + vsperf: + floating_ip: true + placement: "pgrp1" + + networks: + test: + cidr: '10.0.0.0/24' -- cgit 1.2.3-korg