summaryrefslogtreecommitdiffstats
path: root/samples
diff options
context:
space:
mode:
Diffstat (limited to 'samples')
-rw-r--r--samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_latency_ipv4_64B_ixia_L3.yaml55
-rw-r--r--samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l3fwd-scale-up.yaml36
-rw-r--r--samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_mpls_tagging-scale-up.yaml101
-rw-r--r--samples/vnf_samples/nsut/prox/tc_prox_sriov_mpls_tagging-scale-up.yaml91
-rw-r--r--samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_L3.yaml64
5 files changed, 329 insertions, 18 deletions
diff --git a/samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_latency_ipv4_64B_ixia_L3.yaml b/samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_latency_ipv4_64B_ixia_L3.yaml
new file mode 100644
index 000000000..1610193d0
--- /dev/null
+++ b/samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_latency_ipv4_64B_ixia_L3.yaml
@@ -0,0 +1,55 @@
+# 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.
+
+{% set vports = vports or 2 %}
+---
+schema: yardstick:task:0.1
+scenarios:
+- type: NSPerf
+ traffic_profile: ../../traffic_profiles/ixia_ipv4_latency_L3.yaml
+ topology: agnostic_vnf_topology_ixia_{{ vports }}ports.yaml
+ ixia_config: IxiaL3
+ extra_args:
+ vports: {{ vports }}
+ nodes:
+ tg__0: tg_0.yardstick
+ vnf__0: vnf_0.yardstick
+ options:
+ framesize:
+ uplink: {64B: 100}
+ downlink: {64B: 100}
+ flow:
+ src_ip:
+{% for vport in range(0,vports,2|int) %}
+ - '152.{{ vport }}.0.1-152.{{ vport }}.0.50'
+{% endfor %}
+ dst_ip:
+{% for vport in range(1,vports,2|int) %}
+ - '152.{{ vport }}.1.1-152.{{ vport }}.1.150'
+{% endfor %}
+ count: 1
+ traffic_type: 4
+ rfc2544:
+ allowed_drop_rate: 0.0001 - 0.0001
+ vnf__0:
+ []
+ runner:
+ type: Iteration
+ iterations: 10
+ interval: 35
+context:
+ type: Node
+ name: yardstick
+ nfvi_type: baremetal
+ file: /etc/yardstick/nodes/pod_ixia.yaml
diff --git a/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l3fwd-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l3fwd-scale-up.yaml
index 450775805..f9d9b65a8 100644
--- a/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l3fwd-scale-up.yaml
+++ b/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l3fwd-scale-up.yaml
@@ -84,24 +84,24 @@ contexts:
network_ports:
mgmt:
cidr: '1.1.1.62/24'
-{% for port_num in range(1,vports,2|int) %}
- xe{{ loop.index0 * 2 }}:
- - uplink_{{ loop.index0 }}
- xe{{ (loop.index0 * 2) + 1 }}:
- - downlink_{{ loop.index0 }}
+{% for port_num in range((vports/2)|int) %}
+ xe{{ port_num * 2 }}:
+ - uplink_{{ port_num }}
+ xe{{ (port_num * 2) + 1 }}:
+ - downlink_{{ port_num }}
{% endfor %}
networks:
-{% for port_num in range(1,vports,2|int) %}
- uplink_{{ loop.index0 }}:
- port_num: {{ networks.uplink[loop.index0].port_num }}
- phy_port: "{{ networks.uplink[loop.index0].phy_port }}"
- vpci: "{{ networks.uplink[loop.index0].vpci }}"
- cidr: "{{ networks.uplink[loop.index0].cidr }}"
- gateway_ip: "{{ networks.uplink[loop.index0].gateway_ip }}"
- downlink_{{ loop.index0 }}:
- port_num: {{ networks.downlink[loop.index0].port_num }}
- phy_port: "{{ networks.downlink[loop.index0].phy_port }}"
- vpci: "{{ networks.downlink[loop.index0].vpci }}"
- cidr: "{{ networks.downlink[loop.index0].cidr }}"
- gateway_ip: "{{ networks.downlink[loop.index0].gateway_ip }}"
+{% for port_num in range((vports/2)|int) %}
+ uplink_{{ port_num }}:
+ port_num: {{ networks.uplink[port_num].port_num }}
+ phy_port: "{{ networks.uplink[port_num].phy_port }}"
+ vpci: "{{ networks.uplink[port_num].vpci }}"
+ cidr: "{{ networks.uplink[port_num].cidr }}"
+ gateway_ip: "{{ networks.uplink[port_num].gateway_ip }}"
+ downlink_{{ port_num }}:
+ port_num: {{ networks.downlink[port_num].port_num }}
+ phy_port: "{{ networks.downlink[port_num].phy_port }}"
+ vpci: "{{ networks.downlink[port_num].vpci }}"
+ cidr: "{{ networks.downlink[port_num].cidr }}"
+ gateway_ip: "{{ networks.downlink[port_num].gateway_ip }}"
{% endfor %}
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
new file mode 100644
index 000000000..6d6a3645d
--- /dev/null
+++ b/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_mpls_tagging-scale-up.yaml
@@ -0,0 +1,101 @@
+# 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.
+
+{% set vports = vports or 2 %}
+{% set duration = duration or 400 %}
+---
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+ type: NSPerf
+ traffic_profile: ../../traffic_profiles/prox_mpls_tag_untag.yaml
+ extra_args:
+ vports: {{ vports }}
+ topology: prox-tg-topology-scale-up.yaml
+
+ nodes:
+ tg__0: tg__0.yardstick
+ vnf__0: vnf__0.yardstick
+
+ options:
+ vnf__0:
+ prox_path: /opt/nsb_bin/prox
+ prox_config: "configs/handle_mpls_tag_untag-{{ vports }}.cfg"
+ prox_args:
+ "-t": ""
+
+ tg__0:
+ prox_path: /opt/nsb_bin/prox
+ prox_config: "configs/gen_mpls_tag_untag-{{ vports }}.cfg"
+ prox_args:
+ "-e": ""
+ "-t": ""
+
+ runner:
+ type: Duration
+ # we kill after duration, independent of test duration, so set this high
+ duration: {{ duration }}
+
+contexts:
+ - name: yardstick
+ type: Node
+ file: prox_tg_bm.yaml
+ - name: yardstick
+ type: StandaloneOvsDpdk
+ file: /etc/yardstick/nodes/standalone/host_ovs.yaml
+ vm_deploy: True
+ ovs_properties:
+ version:
+ ovs: 2.8.0
+ dpdk: 17.05.2
+ pmd_threads: 2
+ ram:
+ socket_0: 2048
+ socket_1: 2048
+ queues: 4
+ vpath: "/usr/local"
+ flavor:
+ images: "/var/lib/libvirt/images/yardstick-nsb-image.img"
+ ram: 16384
+ extra_specs:
+ hw:cpu_sockets: 1
+ hw:cpu_cores: 10
+ hw:cpu_threads: 2
+ servers:
+ vnf__0:
+ network_ports:
+ mgmt:
+ cidr: '1.1.1.62/24'
+{% for port_num in range((vports/2)|int) %}
+ xe{{ port_num * 2 }}:
+ - uplink_{{ port_num }}
+ xe{{ (port_num * 2) + 1 }}:
+ - downlink_{{ port_num }}
+{% endfor %}
+ networks:
+{% for port_num in range((vports/2)|int) %}
+ uplink_{{ port_num }}:
+ port_num: {{ networks.uplink[port_num].port_num }}
+ phy_port: "{{ networks.uplink[port_num].phy_port }}"
+ vpci: "{{ networks.uplink[port_num].vpci }}"
+ cidr: "{{ networks.uplink[port_num].cidr }}"
+ gateway_ip: "{{ networks.uplink[port_num].gateway_ip }}"
+ downlink_{{ port_num }}:
+ port_num: {{ networks.downlink[port_num].port_num }}
+ phy_port: "{{ networks.downlink[port_num].phy_port }}"
+ vpci: "{{ networks.downlink[port_num].vpci }}"
+ cidr: "{{ networks.downlink[port_num].cidr }}"
+ gateway_ip: "{{ networks.downlink[port_num].gateway_ip }}"
+{% endfor %}
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
new file mode 100644
index 000000000..fb9970e6b
--- /dev/null
+++ b/samples/vnf_samples/nsut/prox/tc_prox_sriov_mpls_tagging-scale-up.yaml
@@ -0,0 +1,91 @@
+# 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.
+
+{% set vports = vports or 2 %}
+{% set duration = duration or 400 %}
+---
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+ type: NSPerf
+ traffic_profile: ../../traffic_profiles/prox_mpls_tag_untag.yaml
+ extra_args:
+ vports: {{ vports }}
+ topology: prox-tg-topology-scale-up.yaml
+
+ nodes:
+ tg__0: tg__0.yardstick
+ vnf__0: vnf__0.yardstick
+
+ options:
+ vnf__0:
+ prox_path: /opt/nsb_bin/prox
+ prox_config: "configs/handle_mpls_tag_untag-{{ vports }}.cfg"
+ prox_args:
+ "-t": ""
+
+ tg__0:
+ prox_path: /opt/nsb_bin/prox
+ prox_config: "configs/gen_mpls_tag_untag-{{ vports }}.cfg"
+ prox_args:
+ "-e": ""
+ "-t": ""
+
+ runner:
+ type: Duration
+ # we kill after duration, independent of test duration, so set this high
+ duration: {{ duration }}
+
+contexts:
+ - name: yardstick
+ type: Node
+ file: prox_tg_bm.yaml
+ - name: yardstick
+ type: StandaloneSriov
+ file: /etc/yardstick/nodes/standalone/host_sriov.yaml
+ vm_deploy: True
+ flavor:
+ images: "/var/lib/libvirt/images/yardstick-nsb-image.img"
+ ram: 16384
+ extra_specs:
+ hw:cpu_sockets: 1
+ hw:cpu_cores: 10
+ hw:cpu_threads: 2
+ user: ""
+ password: ""
+ servers:
+ vnf__0:
+ network_ports:
+ mgmt:
+ cidr: '1.1.1.62/24'
+{% for port_num in range((vports/2)|int) %}
+ xe{{ port_num * 2 }}:
+ - uplink_{{ port_num }}
+ xe{{ (port_num * 2) + 1 }}:
+ - downlink_{{ port_num }}
+{% endfor %}
+ networks:
+{% for port_num in range((vports/2)|int) %}
+ uplink_{{ port_num }}:
+ phy_port: "{{ networks.uplink[port_num].phy_port }}"
+ vpci: "{{ networks.uplink[port_num].vpci }}"
+ cidr: "{{ networks.uplink[port_num].cidr }}"
+ gateway_ip: "{{ networks.uplink[port_num].gateway_ip }}"
+ downlink_{{ port_num }}:
+ phy_port: "{{ networks.downlink[port_num].phy_port }}"
+ vpci: "{{ networks.downlink[port_num].vpci }}"
+ cidr: "{{ networks.downlink[port_num].cidr }}"
+ gateway_ip: "{{ networks.downlink[port_num].gateway_ip }}"
+{% endfor %}
diff --git a/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_L3.yaml b/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_L3.yaml
new file mode 100644
index 000000000..d1abcaf48
--- /dev/null
+++ b/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_L3.yaml
@@ -0,0 +1,64 @@
+# 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.
+
+
+{% set vports = get(extra_args, 'vports', '2') %}
+---
+schema: "nsb:traffic_profile:0.1"
+
+# This file is a template, it will be filled with values from tc.yaml before passing to the traffic generator
+
+name: rfc2544
+description: Traffic profile to run RFC2544 latency with L3 support
+traffic_profile:
+ traffic_type : IXIARFC2544Profile # defines traffic behavior - constant or look for highest possible throughput
+ frame_rate : 100% # pc of linerate
+ duration: {{ duration }}
+ enable_latency: True
+
+{% for vport in range(vports|int) %}
+uplink_{{ vport }}:
+ ipv4:
+ id: {{ (vport * 2) + 1 }}
+ outer_l2:
+ framesize:
+ 64B: "{{get(imix, 'imix.uplink.64B', '0') }}"
+ 128B: "{{get(imix, 'imix.uplink.128B', '0') }}"
+ 256B: "{{get(imix, 'imix.uplink.256B', '0') }}"
+ 373b: "{{get(imix, 'imix.uplink.373B', '0') }}"
+ 512B: "{{get(imix, 'imix.uplink.512B', '0') }}"
+ 570B: "{{get(imix, 'imix.uplink.570B', '0') }}"
+ 1024B: "{{get(imix, 'imix.uplink.1024B', '0') }}"
+ 1280B: "{{get(imix, 'imix.uplink.1280B', '0') }}"
+ 1400B: "{{get(imix, 'imix.uplink.1400B', '0') }}"
+ 1500B: "{{get(imix, 'imix.uplink.1500B', '0') }}"
+ 1518B: "{{get(imix, 'imix.uplink.1518B', '0') }}"
+
+downlink_{{vport}}:
+ ipv4:
+ id: {{ (vport * 2) + 2 }}
+ outer_l2:
+ framesize:
+ 64B: "{{get(imix, 'imix.downlink.64B', '0') }}"
+ 128B: "{{get(imix, 'imix.downlink.128B', '0') }}"
+ 256B: "{{get(imix, 'imix.downlink.256B', '0') }}"
+ 373b: "{{get(imix, 'imix.downlink.373B', '0') }}"
+ 512B: "{{get(imix, 'imix.downlink.512B', '0') }}"
+ 570B: "{{get(imix, 'imix.downlink.570B', '0') }}"
+ 1024B: "{{get(imix, 'imix.downlink.1024B', '0') }}"
+ 1280B: "{{get(imix, 'imix.downlink.1280B', '0') }}"
+ 1400B: "{{get(imix, 'imix.downlink.1400B', '0') }}"
+ 1500B: "{{get(imix, 'imix.downlink.1500B', '0') }}"
+ 1518B: "{{get(imix, 'imix.downlink.1518B', '0') }}"
+{% endfor %}