diff options
Diffstat (limited to 'samples/vnf_samples/nsut/prox')
6 files changed, 331 insertions, 46 deletions
diff --git a/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_multiflow-2.cfg b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_multiflow-2.cfg index c1939c06c..fb2584e91 100644 --- a/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_multiflow-2.cfg +++ b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_multiflow-2.cfg @@ -53,15 +53,19 @@ mode=gen tx port=p0 bps=1250000000 ; Ethernet + IP + UDP -pkt inline=${sut_mac0} 70 00 00 00 00 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 08 55 7b -; src_ip: 152.16.100.0/8 +pkt inline=${sut_mac0} 70 00 00 00 00 01 08 00 45 00 00 24 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 10 55 7b 00 01 02 03 04 05 06 07 +; src_ip: 152.16.100.0/28 random=0000XXX1 rand_offset=29 -; dst_ip: 152.16.100.0/8 +; dst_ip: 152.16.100.0/28 random=0000XXX0 rand_offset=33 +; src_port: 5000-5007, dst_port: 5000-5007 random=0001001110001XXX0001001110001XXX rand_offset=34 +lat pos=42 +signature pos=46 +signature=0xcafedeca [core 2] name=p1 @@ -70,16 +74,19 @@ mode=gen tx port=p1 bps=1250000000 ; Ethernet + IP + UDP -pkt inline=${sut_mac1} 70 00 00 00 00 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d 98 10 28 01 98 10 28 02 13 88 13 88 00 08 55 7b -; src_ip: 152.16.40.0/8 -random=1001100000010000001010000000XXXX -rand_offset=26 -; dst_ip: 152.16.40.0/8 -random=1001100000010000001010000000XXXX -rand_offset=30 +pkt inline=${sut_mac1} 70 00 00 00 00 02 08 00 45 00 00 24 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 10 55 7b 00 01 02 03 04 05 06 07 +; src_ip: 152.16.100.0/28 +random=0000XXX1 +rand_offset=29 +; dst_ip: 152.16.100.0/28 +random=0000XXX0 +rand_offset=33 +; src_port: 5000-5007, dst_port: 5000-5007 random=0001001110001XXX0001001110001XXX rand_offset=34 - +lat pos=42 +signature pos=46 +signature=0xcafedeca [core 3] name=rec 0 @@ -87,6 +94,8 @@ task=0 mode=lat rx port=p0 lat pos=42 +signature pos=46 +signature=0xcafedeca [core 4] name=rec 1 @@ -94,3 +103,5 @@ task=0 mode=lat rx port=p1 lat pos=42 +signature pos=46 +signature=0xcafedeca
\ No newline at end of file diff --git a/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_multiflow-4.cfg b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_multiflow-4.cfg index f1e158414..c3c7c25d7 100644 --- a/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_multiflow-4.cfg +++ b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_multiflow-4.cfg @@ -27,21 +27,29 @@ $sut_mac3=@@dst_mac3 [port 0] name=p0 mac=hardware +rx desc=2048 +tx desc=2048 promiscuous=yes [port 1] name=p1 mac=hardware +rx desc=2048 +tx desc=2048 promiscuous=yes [port 2] name=p2 mac=hardware +rx desc=2048 +tx desc=2048 promiscuous=yes [port 3] name=p3 mac=hardware +rx desc=2048 +tx desc=2048 promiscuous=yes [defaults] @@ -61,15 +69,19 @@ mode=gen tx port=p0 bps=1250000000 ; Ethernet + IP + UDP -pkt inline=${sut_mac0} 70 00 00 00 00 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 08 55 7b -; src_ip: 152.16.100.0/8 +pkt inline=${sut_mac0} 70 00 00 00 00 01 08 00 45 00 00 24 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 10 55 7b 00 01 02 03 04 05 06 07 +; src_ip: 152.16.100.0/28 random=0000XXX1 rand_offset=29 -; dst_ip: 152.16.100.0/8 +; dst_ip: 152.16.100.0/28 random=0000XXX0 rand_offset=33 +; src_port: 5000-5007, dst_port: 5000-5007 random=0001001110001XXX0001001110001XXX rand_offset=34 +lat pos=42 +signature pos=46 +signature=0xcafedeca [core 2] name=p1 @@ -78,15 +90,19 @@ mode=gen tx port=p1 bps=1250000000 ; Ethernet + IP + UDP -pkt inline=${sut_mac1} 70 00 00 00 00 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 08 55 7b -; src_ip: 152.16.100.0/8 +pkt inline=${sut_mac1} 70 00 00 00 00 02 08 00 45 00 00 24 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 10 55 7b 00 01 02 03 04 05 06 07 +; src_ip: 152.16.100.0/28 random=0000XXX1 rand_offset=29 -; dst_ip: 152.16.100.0/8 +; dst_ip: 152.16.100.0/28 random=0000XXX0 rand_offset=33 +; src_port: 5000-5007, dst_port: 5000-5007 random=0001001110001XXX0001001110001XXX rand_offset=34 +lat pos=42 +signature pos=46 +signature=0xcafedeca [core 3] name=p2 @@ -95,15 +111,19 @@ mode=gen tx port=p2 bps=1250000000 ; Ethernet + IP + UDP -pkt inline=${sut_mac2} 70 00 00 00 00 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 08 55 7b -; src_ip: 152.16.100.0/8 +pkt inline=${sut_mac2} 70 00 00 00 00 03 08 00 45 00 00 24 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 10 55 7b 00 01 02 03 04 05 06 07 +; src_ip: 152.16.100.0/28 random=0000XXX1 rand_offset=29 -; dst_ip: 152.16.100.0/8 +; dst_ip: 152.16.100.0/28 random=0000XXX0 rand_offset=33 +; src_port: 5000-5007, dst_port: 5000-5007 random=0001001110001XXX0001001110001XXX rand_offset=34 +lat pos=42 +signature pos=46 +signature=0xcafedeca [core 4] name=p3 @@ -112,36 +132,52 @@ mode=gen tx port=p3 bps=1250000000 ; Ethernet + IP + UDP -pkt inline=${sut_mac3} 70 00 00 00 00 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 08 55 7b -; src_ip: 152.16.100.0/8 +pkt inline=${sut_mac3} 70 00 00 00 00 04 08 00 45 00 00 24 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 10 55 7b 00 01 02 03 04 05 06 07 +; src_ip: 152.16.100.0/28 random=0000XXX1 rand_offset=29 -; dst_ip: 152.16.100.0/8 +; dst_ip: 152.16.100.0/28 random=0000XXX0 rand_offset=33 +; src_port: 5000-5007, dst_port: 5000-5007 random=0001001110001XXX0001001110001XXX rand_offset=34 +lat pos=42 +signature pos=46 +signature=0xcafedeca [core 5] name=rec 0 task=0 mode=lat rx port=p0 +lat pos=42 +signature pos=46 +signature=0xcafedeca [core 6] name=rec 1 task=0 mode=lat rx port=p1 +lat pos=42 +signature pos=46 +signature=0xcafedeca [core 7] name=rec 2 task=0 mode=lat rx port=p2 +lat pos=42 +signature pos=46 +signature=0xcafedeca [core 8] name=rec 3 task=0 mode=lat rx port=p3 +lat pos=42 +signature pos=46 +signature=0xcafedeca diff --git a/samples/vnf_samples/nsut/prox/prox-tg-topology-scale-up.yaml b/samples/vnf_samples/nsut/prox/prox-tg-topology-scale-up.yaml index 74c48bac2..87db3702f 100644 --- a/samples/vnf_samples/nsut/prox/prox-tg-topology-scale-up.yaml +++ b/samples/vnf_samples/nsut/prox/prox-tg-topology-scale-up.yaml @@ -11,8 +11,9 @@ # WITHOUT 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) %} + nsd:nsd-catalog: nsd: - id: prox-tg-topology @@ -27,36 +28,25 @@ nsd:nsd-catalog: vnfd-id-ref: vnf__0 VNF model: ../../vnf_descriptors/prox_vnf.yaml vld: - - id: uplink_0 - name: tg__0 to vnf__0 link 1 +{% for vport in range(0,vports,2|int) %} + - id: uplink_{{loop.index0}} + name: tg__0 to vnf__0 link {{ vport + 1 }} type: ELAN vnfd-connection-point-ref: - member-vnf-index-ref: '1' - vnfd-connection-point-ref: xe0 + vnfd-connection-point-ref: xe{{ vport }} vnfd-id-ref: tg__0 - member-vnf-index-ref: '2' - vnfd-connection-point-ref: xe0 + vnfd-connection-point-ref: xe{{ vport }} vnfd-id-ref: vnf__0 -{% for vport in range(vports-1|int) %} - - id: downlink_{{ vport }} - name: vnf__0 to tg__0 link {{ vport+2 }} + - id: downlink_{{loop.index0}} + name: vnf__0 to tg__0 link {{ vport + 2 }} type: ELAN vnfd-connection-point-ref: - - member-vnf-index-ref: '1' - vnfd-connection-point-ref: xe{{ vport+1 }} - vnfd-id-ref: vnf__0 - member-vnf-index-ref: '2' - vnfd-connection-point-ref: xe{{ vport+1 }} - vnfd-id-ref: tg__0 -{% else %} - - id: downlink_0 - name: vnf__0 to tg__0 link 1 - type: ELAN - vnfd-connection-point-ref: - - member-vnf-index-ref: '1' - vnfd-connection-point-ref: xe0 + vnfd-connection-point-ref: xe{{ vport + 1 }} vnfd-id-ref: vnf__0 - - member-vnf-index-ref: '2' - vnfd-connection-point-ref: xe0 + - member-vnf-index-ref: '1' + vnfd-connection-point-ref: xe{{ vport + 1 }} vnfd-id-ref: tg__0 -{% endfor %}
\ No newline at end of file +{% endfor %} diff --git a/samples/vnf_samples/nsut/prox/standalone-args.yaml b/samples/vnf_samples/nsut/prox/standalone-args.yaml new file mode 100644 index 000000000..7f45112e3 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/standalone-args.yaml @@ -0,0 +1,46 @@ +# 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. + +--- + +networks: + uplink: + - + port_num: 0 + phy_port: "0000:05:00.0" + vpci: "0000:00:0a.0" + cidr: '152.16.100.10/24' + gateway_ip: '152.16.100.20' + - + port_num: 2 + phy_port: "0000:05:00.2" + vpci: "0000:00:0c.0" + cidr: '152.16.50.10/24' + gateway_ip: '152.16.100.20' + + downlink: + - + port_num: 1 + phy_port: "0000:05:00.1" + vpci: "0000:00:0b.0" + cidr: '152.16.40.10/24' + gateway_ip: '152.16.100.20' + + - + port_num: 3 + phy_port: "0000:05:00.3" + vpci: "0000:00:0d.0" + cidr: '152.16.30.10/24' + gateway_ip: '152.16.100.20' + 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 new file mode 100644 index 000000000..450775805 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l3fwd-scale-up.yaml @@ -0,0 +1,107 @@ +# Copyright (c) 2016-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/prox_binsearch.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_l3fwd-{{ vports }}.cfg" + prox_args: + "-t": "" + prox_files: +{% if vports == 2 %} + "configs/ipv4-2port.lua" : "" +{% else %} + "configs/ipv4.lua" : "" +{% endif %} + prox_generate_parameter: True + + tg__0: + prox_path: /opt/nsb_bin/prox + prox_config: "configs/gen_l3fwd-{{ vports }}.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 600 + +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(1,vports,2|int) %} + xe{{ loop.index0 * 2 }}: + - uplink_{{ loop.index0 }} + xe{{ (loop.index0 * 2) + 1 }}: + - downlink_{{ loop.index0 }} +{% 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 }}" +{% endfor %} diff --git a/samples/vnf_samples/nsut/prox/tc_prox_sriov_l3fwd-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_sriov_l3fwd-scale-up.yaml new file mode 100644 index 000000000..a824ef940 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_sriov_l3fwd-scale-up.yaml @@ -0,0 +1,95 @@ +# 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/prox_binsearch.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_l3fwd-{{ vports }}.cfg" + prox_args: + "-t": "" + prox_files: +{% if vports == 2 %} + "configs/ipv4-2port.lua" : "" +{% else %} + "configs/ipv4.lua" : "" +{% endif %} + prox_generate_parameter: True + + tg__0: + prox_path: /opt/nsb_bin/prox + prox_config: "configs/gen_l3fwd-{{ vports }}.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 1800 + +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 + 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 %} |