Merge "Extend IXIA RFC2544 test case collected stats"
[yardstick.git] / samples / vnf_samples / nsut / prox / tc_prox_ovs-dpdk_acl-scale-up.yaml
1 # Copyright (c) 2019 Intel Corporation
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #      http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 {% set vports = vports or 2 %}
16 {% set duration = duration or 300 %}
17 ---
18 schema: "yardstick:task:0.1"
19
20 scenarios:
21 -
22   type: NSPerf
23   #
24   # In case where we know that all the packets generated by the generator
25   # will bw received. Then use prox_binsearch.
26   #
27   # In the case where some or all the packets generated by the generator may
28   # not be received. Please use prox_acl .. (This generates packets at
29   # a specific rate and does not change rate.
30   #
31   traffic_profile: ../../traffic_profiles/prox_acl.yaml
32   extra_args:
33     vports: {{ vports }}
34   topology: prox-tg-topology-scale-up.yaml
35
36   nodes:
37     tg__0: trafficgen_0.yardstick
38     vnf__0: vnf_0.yardstick
39
40   options:
41     vnf__0:
42       prox_path: /opt/nsb_bin/prox
43       prox_config: "configs/handle_acl-{{ vports }}.cfg"
44       prox_args:
45         "-t": ""
46       prox_files:
47         "configs/acl_rules-2.lua": ""
48
49     tg__0:
50       prox_path: /opt/nsb_bin/prox
51       prox_config: "configs/gen_acl-{{ vports }}.cfg"
52       prox_args:
53         "-e": ""
54         "-t": ""
55
56   runner:
57     type: Duration
58     # we kill after duration, independent of test duration, so set this high
59     duration: {{ duration }}
60
61 contexts:
62    - name: yardstick
63      type: Node
64      file: prox_tg_bm.yaml
65    - name: yardstick
66      type: StandaloneOvsDpdk
67      file: /etc/yardstick/nodes/standalone/host_ovs.yaml
68      vm_deploy: True
69      ovs_properties:
70        version:
71          ovs: 2.8.0
72          dpdk: 17.05.2
73        pmd_threads: 2
74        ram:
75          socket_0: 2048
76          socket_1: 2048
77        queues: 4
78        vpath: "/usr/local"
79      flavor:
80        images: "/var/lib/libvirt/images/yardstick-nsb-image.img"
81        ram: 16384
82        extra_specs:
83          hw:cpu_sockets: 1
84          hw:cpu_cores: 10
85          hw:cpu_threads: 2
86      servers:
87        vnf__0:
88          network_ports:
89            mgmt:
90              cidr: '1.1.1.62/24'
91 {% for port_num in range((vports/2)|int) %}
92            xe{{ port_num * 2 }}:
93              - uplink_{{ port_num }}
94            xe{{ (port_num * 2) + 1 }}:
95              - downlink_{{ port_num }}
96 {% endfor %}
97      networks:
98 {% for port_num in range((vports/2)|int) %}
99        uplink_{{ port_num }}:
100          port_num: {{ networks.uplink[port_num].port_num }}
101          phy_port: "{{ networks.uplink[port_num].phy_port }}"
102          vpci: "{{ networks.uplink[port_num].vpci }}"
103          cidr: "{{ networks.uplink[port_num].cidr }}"
104          gateway_ip: "{{ networks.uplink[port_num].gateway_ip }}"
105        downlink_{{ port_num }}:
106          port_num: {{ networks.downlink[port_num].port_num }}
107          phy_port: "{{ networks.downlink[port_num].phy_port }}"
108          vpci: "{{ networks.downlink[port_num].vpci }}"
109          cidr: "{{ networks.downlink[port_num].cidr }}"
110          gateway_ip: "{{ networks.downlink[port_num].gateway_ip }}"
111 {% endfor %}