diff options
Diffstat (limited to 'samples/vnf_samples')
26 files changed, 1662 insertions, 179 deletions
diff --git a/samples/vnf_samples/nsut/bng/tc_bng_pppoe_rfc2544_ixia_8ports_1port_congested_IMIX.yaml b/samples/vnf_samples/nsut/bng/tc_bng_pppoe_rfc2544_ixia_8ports_1port_congested_IMIX.yaml index 2c2010a11..441886224 100644 --- a/samples/vnf_samples/nsut/bng/tc_bng_pppoe_rfc2544_ixia_8ports_1port_congested_IMIX.yaml +++ b/samples/vnf_samples/nsut/bng/tc_bng_pppoe_rfc2544_ixia_8ports_1port_congested_IMIX.yaml @@ -15,6 +15,9 @@ --- {% set sessions_per_port = sessions_per_port or 4000 %} {% set sessions_per_svlan = sessions_per_svlan or 1000 %} +{% set duration = duration or 60 %} +{% set tolerance_low = tolerance_low or 0.0001 %} +{% set tolerance_high = tolerance_high or 0.0001 %} schema: yardstick:task:0.1 description: > vBNG RFC2544 test case with QoS base line with link congestion. @@ -31,10 +34,11 @@ scenarios: tg__0: tg_0.yardstick vnf__0: vnf_0.yardstick options: + duration: {{ duration }} pppoe_client: # access network sessions_per_port: {{ sessions_per_port }} sessions_per_svlan: {{ sessions_per_svlan }} - pap_user: 'wfnos' + pap_user: 'pppoe_user' pap_password: '' ip: [{'tg__0': 'xe0'}, {'tg__0': 'xe2'}, {'tg__0': 'xe4'}, {'tg__0': 'xe6'}] s_vlan: 100 # s-vlan applies per device group @@ -52,17 +56,27 @@ scenarios: framesize: uplink: {70B: 33, 940B: 33, 1470B: 34} downlink: {68B: 3, 932B: 1, 1470B: 96} + priority: + # 0 - (000) Routine + # 1 - (001) Priority + # 2 - (010) Immediate + # 3 - (011) Flash + # 4 - (100) Flash Override + # 5 - (101) CRITIC/ECP + # 6 - (110) Internetwork Control + # 7 - (111) Network Control + tos: {precedence: [0, 4, 7]} flow: src_ip: [{'tg__0': 'xe0'}, {'tg__0': 'xe2'}, {'tg__0': 'xe4'}, {'tg__0': 'xe6'}] dst_ip: [{'tg__0': 'xe1'}, {'tg__0': 'xe3'}, {'tg__0': 'xe5'}, {'tg__0': 'xe7'}] count: 1 traffic_type: 4 rfc2544: - allowed_drop_rate: 0.0001 - 0.0001 + allowed_drop_rate: "{{ tolerance_low }} - {{ tolerance_high }}" runner: type: Iteration - iterations: 10 - interval: 75 + iterations: 1 + interval: {{ duration + 15 }} context: type: Node name: yardstick diff --git a/samples/vnf_samples/nsut/bng/tc_bng_pppoe_rfc2544_ixia_IMIX_scale_up.yaml b/samples/vnf_samples/nsut/bng/tc_bng_pppoe_rfc2544_ixia_IMIX_scale_up.yaml index f0696ab24..afd60cc69 100644 --- a/samples/vnf_samples/nsut/bng/tc_bng_pppoe_rfc2544_ixia_IMIX_scale_up.yaml +++ b/samples/vnf_samples/nsut/bng/tc_bng_pppoe_rfc2544_ixia_IMIX_scale_up.yaml @@ -15,8 +15,10 @@ --- {% set sessions_per_port = sessions_per_port or 4000 %} {% set sessions_per_svlan = sessions_per_svlan or 1000 %} +{% set duration = duration or 60 %} {% set vports = vports or 2 %} -{% set svlans_per_port = sessions_per_port / sessions_per_svlan %} +{% set tolerance_low = tolerance_low or 0.0001 %} +{% set tolerance_high = tolerance_high or 0.0001 %} schema: yardstick:task:0.1 description: > vBNG RFC2544 test case with QoS base line without link congestion. @@ -28,16 +30,16 @@ scenarios: topology: "../agnostic/agnostic_vnf_topology_ixia_{{ vports }}ports.yaml" ixia_config: IxiaPppoeClient extra_args: - svlans_per_port: {{ svlans_per_port|int }} access_vports_num: {{ vports|int / 2 }} nodes: tg__0: tg_0.yardstick vnf__0: vnf_0.yardstick options: + duration: {{ duration }} pppoe_client: # access network sessions_per_port: {{ sessions_per_port }} sessions_per_svlan: {{ sessions_per_svlan }} - pap_user: 'wfnos' + pap_user: 'pppoe_user' pap_password: '' ip: {% for vnf_num in range(0, vports|int, 2) %} @@ -64,6 +66,16 @@ scenarios: framesize: uplink: {70B: 33, 940B: 33, 1470B: 34} downlink: {68B: 3, 932B: 1, 1470B: 96} + priority: + # 0 - (000) Routine + # 1 - (001) Priority + # 2 - (010) Immediate + # 3 - (011) Flash + # 4 - (100) Flash Override + # 5 - (101) CRITIC/ECP + # 6 - (110) Internetwork Control + # 7 - (111) Network Control + tos: {precedence: [0, 4, 7]} flow: src_ip: {% for vnf_num in range(0, vports|int, 2) %} @@ -76,11 +88,11 @@ scenarios: count: 1 traffic_type: 4 rfc2544: - allowed_drop_rate: 0.0001 - 0.0001 + allowed_drop_rate: "{{ tolerance_low }} - {{ tolerance_high }}" runner: type: Iteration iterations: 10 - interval: 75 + interval: {{ duration + 15 }} context: type: Node name: yardstick diff --git a/samples/vnf_samples/nsut/prox/configs/gen_buffering-2.cfg b/samples/vnf_samples/nsut/prox/configs/gen_buffering-2.cfg new file mode 100644 index 000000000..962f34a17 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_buffering-2.cfg @@ -0,0 +1,75 @@ +# 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. +# 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. +# +#; + +[eal options] +-n=4 ; number of memory channels +no-output=no ; disable DPDK debug output + +[port 0] +name=p0 +mac=hardware + +[port 1] +name=p1 +mac=hardware + +[defaults] +mempool size=4K + +[variables] +$sut_mac0=@@dst_mac0 +$sut_mac1=@@dst_mac1 + +[global] +start time=5 +name=Buffering gen + +[core 0] +mode=master + +[core 1-4] +name=p0 +task=0 +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 20 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 0c 55 7b 42 43 44 45 +lat pos=42 + +[core 5-8] +name=p1 +task=0 +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 20 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 0c 55 7b 42 43 44 45 +lat pos=42 + +[core 28] +name=P0 +task=0 +mode=lat +rx port=p0 +lat pos=42 + +[core 29] +name=P1 +task=0 +mode=lat +rx port=p1 +lat pos=42 diff --git a/samples/vnf_samples/nsut/prox/configs/gen_buffering-4.cfg b/samples/vnf_samples/nsut/prox/configs/gen_buffering-4.cfg new file mode 100644 index 000000000..9be6297a8 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_buffering-4.cfg @@ -0,0 +1,122 @@ +# 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. +# 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. +# +#; + +[eal options] +-n=4 ; number of memory channels +no-output=no ; disable DPDK debug output + +[port 0] +name=p0 +mac=hardware + +[port 1] +name=p1 +mac=hardware + +[port 2] +name=p2 +mac=hardware + +[port 3] +name=p3 +mac=hardware + + +[defaults] +mempool size=4K + +[variables] +$sut_mac0=@@dst_mac0 +$sut_mac1=@@dst_mac1 +$sut_mac2=@@dst_mac2 +$sut_mac3=@@dst_mac3 + +[global] +start time=5 +name=Buffering gen + +[core 0] +mode=master + +[core 1-4] +name=p0 +task=0 +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 20 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 0c 55 7b 42 43 44 45 +lat pos=42 + +[core 5-8] +name=p1 +task=0 +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 20 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 0c 55 7b 42 43 44 45 +lat pos=42 + + +[core 9-12] +name=p2 +task=0 +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 20 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 0c 55 7b 42 43 44 45 +lat pos=42 + + +[core 13-16] +name=p3 +task=0 +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 20 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 0c 55 7b 42 43 44 45 +lat pos=42 + +[core 28] +name=P0 +task=0 +mode=lat +rx port=p0 +lat pos=42 + +[core 29] +name=P1 +task=0 +mode=lat +rx port=p1 +lat pos=42 + +[core 30] +name=P2 +task=0 +mode=lat +rx port=p2 +lat pos=42 + +[core 31] +name=P3 +task=0 +mode=lat +rx port=p3 +lat pos=42 diff --git a/samples/vnf_samples/nsut/prox/configs/gen_lb-2.cfg b/samples/vnf_samples/nsut/prox/configs/gen_lb-2.cfg new file mode 100644 index 000000000..c86b5f063 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_lb-2.cfg @@ -0,0 +1,114 @@ +# 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. +# +#; + +[eal options] +-n=4 ; force number of memory channels +no-output=no ; disable DPDK debug output + +[variables] +$sut_mac0=@@dst_mac0 +$sut_mac1=@@dst_mac1 + +[port 0] +name=p0 +mac=hardware +rx desc=4096 +tx desc=4096 +promiscuous=yes + +[port 1] +name=p1 +mac=hardware +rx desc=4096 +tx desc=1024 +promiscuous=yes + + +[defaults] +mempool size=16K + +[global] +start time=5 +name=Gen Load Balancing + +[core 0] +mode=master + +[core 1-4] +name=p0 +task=0 +mode=gen +tx port=p0 +bps=1250000000 +; Ethernet + IP + pseudo-UDP +pkt inline=${sut_mac0} 3c fd fe 9f a3 08 08 00 45 00 00 24 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 10 55 7b 00 01 02 03 04 05 06 07 +; src_ip: 10.x.x.x +random=101000000000XXXX0000XXXX000XXXXX +rand_offset=26 +; dst_ip: 10.x.x.x +random=101000000000XXXX0000XXXX000XXXXX +rand_offset=30 +; sport: [0..31] +; dport: [0..31] +random=00000000000XXXXX00000000000XXXXX +rand_offset=34 +lat pos=42 +signature pos=46 +signature=0xcafedeca + +[core 5-8] +name=p1 +task=0 +mode=gen +tx port=p1 +bps=1250000000 +; Ethernet + IP + pseudo-UDP +pkt inline=${sut_mac1} 3c fd fe 9f a3 08 08 00 45 00 00 24 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 10 55 7b 00 01 02 03 04 05 06 07 +; src_ip: 10.x.x.x +random=101000000000XXXX0000XXXX000XXXXX +rand_offset=26 +; dst_ip: 10.x.x.x +random=101000000000XXXX0000XXXX000XXXXX +rand_offset=30 +; sport: [0..31] +; dport: [0..31] +random=00000000000XXXXX00000000000XXXXX +rand_offset=34 +lat pos=42 +signature pos=46 +signature=0xcafedeca + +[core 28] +name=rec_0 +task=0 +mode=lat +rx port=p0 +lat pos=42 +signature pos=46 +signature=0xcafedeca + +[core 29] +name=rec_1 +task=0 +mode=lat +rx port=p1 +lat pos=42 +signature pos=46 +signature=0xcafedeca + + + + diff --git a/samples/vnf_samples/nsut/prox/configs/gen_lb-4.cfg b/samples/vnf_samples/nsut/prox/configs/gen_lb-4.cfg index 4ac4f94d7..6a2d3f95a 100644 --- a/samples/vnf_samples/nsut/prox/configs/gen_lb-4.cfg +++ b/samples/vnf_samples/nsut/prox/configs/gen_lb-4.cfg @@ -20,6 +20,9 @@ no-output=no ; disable DPDK debug output [variables] $sut_mac0=@@dst_mac0 +$sut_mac1=@@dst_mac1 +$sut_mac2=@@dst_mac2 +$sut_mac3=@@dst_mac3 [port 0] name=p0 @@ -59,14 +62,14 @@ name=Gen Load Balancing [core 0] mode=master -[core 1] +[core 1-4] name=p0 task=0 mode=gen tx port=p0 bps=1250000000 ; Ethernet + IP + pseudo-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 00 00 00 01 00 00 00 02 13 88 13 88 00 08 55 7b +pkt inline=${sut_mac0} 3c fd fe 9f a3 08 08 00 45 00 00 24 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 10 55 7b 00 01 02 03 04 05 06 07 ; src_ip: 10.x.x.x random=101000000000XXXX0000XXXX000XXXXX rand_offset=26 @@ -77,29 +80,111 @@ rand_offset=30 ; dport: [0..31] random=00000000000XXXXX00000000000XXXXX rand_offset=34 +lat pos=42 +signature pos=46 +signature=0xcafedeca -[core 2] -name=p0 +[core 5-8] +name=p1 task=0 -mode=nop +mode=gen +tx port=p1 +bps=1250000000 +; Ethernet + IP + pseudo-UDP +pkt inline=${sut_mac1} 3c fd fe 9f a3 08 08 00 45 00 00 24 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 10 55 7b 00 01 02 03 04 05 06 07 +; src_ip: 10.x.x.x +random=101000000000XXXX0000XXXX000XXXXX +rand_offset=26 +; dst_ip: 10.x.x.x +random=101000000000XXXX0000XXXX000XXXXX +rand_offset=30 +; sport: [0..31] +; dport: [0..31] +random=00000000000XXXXX00000000000XXXXX +rand_offset=34 +lat pos=42 +signature pos=46 +signature=0xcafedeca + +[core 9-12] +name=p2 +task=0 +mode=gen +tx port=p2 +bps=1250000000 +; Ethernet + IP + pseudo-UDP +pkt inline=${sut_mac1} 3c fd fe 9f a3 08 08 00 45 00 00 24 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 10 55 7b 00 01 02 03 04 05 06 07 +; src_ip: 10.x.x.x +random=101000000000XXXX0000XXXX000XXXXX +rand_offset=26 +; dst_ip: 10.x.x.x +random=101000000000XXXX0000XXXX000XXXXX +rand_offset=30 +; sport: [0..31] +; dport: [0..31] +random=00000000000XXXXX00000000000XXXXX +rand_offset=34 +lat pos=42 +signature pos=46 +signature=0xcafedeca + +[core 13-16] +name=p3 +task=0 +mode=gen +tx port=p3 +bps=1250000000 +; Ethernet + IP + pseudo-UDP +pkt inline=${sut_mac1} 3c fd fe 9f a3 08 08 00 45 00 00 24 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 10 55 7b 00 01 02 03 04 05 06 07 +; src_ip: 10.x.x.x +random=101000000000XXXX0000XXXX000XXXXX +rand_offset=26 +; dst_ip: 10.x.x.x +random=101000000000XXXX0000XXXX000XXXXX +rand_offset=30 +; sport: [0..31] +; dport: [0..31] +random=00000000000XXXXX00000000000XXXXX +rand_offset=34 +lat pos=42 +signature pos=46 +signature=0xcafedeca + +[core 28] +name=rec_0 +task=0 +mode=lat rx port=p0 +lat pos=42 +signature pos=46 +signature=0xcafedeca -[core 3] -name=p1 +[core 29] +name=rec_1 task=0 -mode=nop +mode=lat rx port=p1 +lat pos=42 +signature pos=46 +signature=0xcafedeca -[core 4] -name=p2 +[core 30] +name=rec_2 task=0 -mode=nop +mode=lat rx port=p2 +lat pos=42 +signature pos=46 +signature=0xcafedeca -[core 5] -name=p3 +[core 31] +name=rec_3 task=0 -mode=nop +mode=lat rx port=p3 +lat pos=42 +signature pos=46 +signature=0xcafedeca + diff --git a/samples/vnf_samples/nsut/prox/configs/handle_buffering-2.cfg b/samples/vnf_samples/nsut/prox/configs/handle_buffering-2.cfg new file mode 100644 index 000000000..14763c336 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_buffering-2.cfg @@ -0,0 +1,74 @@ +# 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. +# +#; + +[eal options] +-n=4 ; number of memory channels +no-output=no ; disable DPDK debug output + +[port 0] +name=if0 +mac=hardware +rx desc=2048 +tx desc=2048 + +[port 1] +name=if1 +mac=hardware +rx desc=2048 +tx desc=2048 + +[defaults] +mempool size=1408K +memcache size=512 + +[global] +start time=5 +name=Handle Buffering (1x) + +[core 0] +mode=master + +[core 1] +name=none +task=0 +mode=impair +delay ms=125 +rx port=if0 +tx cores=1t1 +drop=no + +task=1 +mode=l2fwd +dst mac=@@tester_p0 +rx ring=yes +tx port=if0 +drop=no + +[core 2] +name=none +task=0 +mode=impair +delay ms=125 +rx port=if1 +tx cores=2t1 +drop=no + +task=1 +mode=l2fwd +dst mac=@@tester_p1 +rx ring=yes +tx port=if1 +drop=no
\ No newline at end of file diff --git a/samples/vnf_samples/nsut/prox/configs/handle_buffering-4.cfg b/samples/vnf_samples/nsut/prox/configs/handle_buffering-4.cfg new file mode 100644 index 000000000..c4fa46f89 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_buffering-4.cfg @@ -0,0 +1,118 @@ +# 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. +# 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. +# +#; + +[eal options] +-n=4 ; number of memory channels +no-output=no ; disable DPDK debug output + +[port 0] +name=if0 +mac=hardware +rx desc=2048 +tx desc=2048 + +[port 1] +name=if1 +mac=hardware +rx desc=2048 +tx desc=2048 + +[port 2] +name=if2 +mac=hardware +rx desc=2048 +tx desc=2048 + +[port 3] +name=if3 +mac=hardware +rx desc=2048 +tx desc=2048 + +[defaults] +mempool size=640K +memcache size=512 + +[global] +start time=5 +name=Handle Buffering (1x) + +[core 0] +mode=master + +[core 1] +name=none +task=0 +mode=impair +delay ms=125 +rx port=if0 +tx cores=1t1 +drop=no + +task=1 +mode=l2fwd +dst mac=@@tester_p0 +rx ring=yes +tx port=if0 +drop=no + +[core 2] +name=none +task=0 +mode=impair +delay ms=125 +rx port=if1 +tx cores=2t1 +drop=no + +task=1 +mode=l2fwd +dst mac=@@tester_p1 +rx ring=yes +tx port=if1 +drop=no + +[core 3] +name=none +task=0 +mode=impair +delay ms=125 +rx port=if2 +tx cores=3t1 +drop=no + +task=1 +mode=l2fwd +dst mac=@@tester_p2 +rx ring=yes +tx port=if2 +drop=no + +[core 4] +name=none +task=0 +mode=impair +delay ms=125 +rx port=if3 +tx cores=4t1 +drop=no + +task=1 +mode=l2fwd +dst mac=@@tester_p3 +rx ring=yes +tx port=if3 +drop=no
\ No newline at end of file diff --git a/samples/vnf_samples/nsut/prox/configs/handle_lb-2.cfg b/samples/vnf_samples/nsut/prox/configs/handle_lb-2.cfg new file mode 100644 index 000000000..18ae9f4f9 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_lb-2.cfg @@ -0,0 +1,81 @@ +# 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. +# +#; + +[eal options] +-n=4 +no-output=no ; disable DPDK debug output + +[lua] +dofile("tuples.lua") + +[port 0] +name=if0 +mac=hardware +rx desc=4096 +tx desc=2048 +promiscuous=yes + +[port 1] +name=if1 +mac=hardware +rx desc=2048 +tx desc=2048 +promiscuous=yes + +[defaults] +memcache size=512 +mempool size=16K + +[global] +start time=5 +name=Handle 5 Tuple Load Balance + +[core 0] +mode=master + +[core 1] +name=Handle_LB +task=0 +mode=lb5tuple +rx port=if0 +tx cores=3,4,3,4 +drop=no + +[core 2] +name=Handle_LB +task=0 +mode=lb5tuple +rx port=if1 +tx cores=3,4,3,4 +drop=no + +[core 3] +name=TX_p0 +task=0 +mode=l2fwd +dst mac=@@p0 +rx ring=yes +tx port=if0 +drop=no + +[core 4] +name=TX_p1 +task=0 +mode=l2fwd +dst mac=@@p1 +rx ring=yes +tx port=if1 +drop=no diff --git a/samples/vnf_samples/nsut/prox/configs/handle_lb-4.cfg b/samples/vnf_samples/nsut/prox/configs/handle_lb-4.cfg index b85e00b5c..233a88522 100644 --- a/samples/vnf_samples/nsut/prox/configs/handle_lb-4.cfg +++ b/samples/vnf_samples/nsut/prox/configs/handle_lb-4.cfg @@ -50,13 +50,12 @@ tx desc=2048 promiscuous=yes [defaults] -mempool size=13K memcache size=512 mempool size=16K [global] start time=5 -name=Handle 5 Tuple Load Balance 1-to-4 +name=Handle 5 Tuple Load Balance [core 0] mode=master @@ -66,10 +65,34 @@ name=Handle_LB task=0 mode=lb5tuple rx port=if0 -tx cores=2,3,4,5 +tx cores=5,6,7,8 drop=no [core 2] +name=Handle_LB +task=0 +mode=lb5tuple +rx port=if1 +tx cores=5,6,7,8 +drop=no + +[core 3] +name=Handle_LB +task=0 +mode=lb5tuple +rx port=if2 +tx cores=5,6,7,8 +drop=no + +[core 4] +name=Handle_LB +task=0 +mode=lb5tuple +rx port=if3 +tx cores=5,6,7,8 +drop=no + +[core 5] name=TX_p0 task=0 mode=l2fwd @@ -78,7 +101,7 @@ rx ring=yes tx port=if0 drop=no -[core 3] +[core 6] name=TX_p1 task=0 mode=l2fwd @@ -87,7 +110,7 @@ rx ring=yes tx port=if1 drop=no -[core 4] +[core 7] name=TX_p2 task=0 mode=l2fwd @@ -96,7 +119,7 @@ rx ring=yes tx port=if2 drop=no -[core 5] +[core 8] name=TX_p3 task=0 mode=l2fwd diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-1.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-1.yaml index 2f253b711..f06df8c6a 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-1.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-1.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. diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-2.yaml new file mode 100644 index 000000000..077a29d28 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-2.yaml @@ -0,0 +1,55 @@ +# 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. +# 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/prox_binsearch.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick + + options: + vnf__0: + collectd: + interval: 1 + prox_path: /opt/nsb_bin/prox + prox_config: "configs/handle_buffering-2.cfg" + prox_args: + "-t": "" + + tg__0: + collectd: + interval: 1 + prox_path: /opt/nsb_bin/prox + prox_config: "configs/gen_buffering-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 4000 + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: prox-baremetal-2.yaml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-4.yaml new file mode 100644 index 000000000..86e8f9d89 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-4.yaml @@ -0,0 +1,55 @@ +# 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. +# 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/prox_binsearch.yaml + topology: prox-tg-topology-4.yaml + + nodes: + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick + + options: + vnf__0: + collectd: + interval: 1 + prox_path: /opt/nsb_bin/prox + prox_config: "configs/handle_buffering-4.cfg" + prox_args: + "-t": "" + + tg__0: + collectd: + interval: 1 + prox_path: /opt/nsb_bin/prox + prox_config: "configs/gen_buffering-4.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 4000 + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: prox-baremetal-4.yaml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-scale-up.yaml new file mode 100644 index 000000000..c38e1c9e7 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-scale-up.yaml @@ -0,0 +1,55 @@ +# 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. +# 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 300 %} +--- +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_buffering-{{ vports }}.cfg" + prox_args: + "-t": "" + + tg__0: + prox_path: /opt/nsb_bin/prox + prox_config: "configs/gen_buffering-{{ vports }}.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: {{ duration }} + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: prox-baremetal-{{ vports }}.yaml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_lb-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_lb-2.yaml new file mode 100644 index 000000000..2843055e5 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_lb-2.yaml @@ -0,0 +1,64 @@ +# 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. +# 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/prox_binsearch.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick + + options: + vnf__0: + collectd: + interval: 1 + prox_path: /opt/nsb_bin/prox + prox_config: "configs/handle_lb-2.cfg" + prox_args: + "-t": "" + prox_files: + "configs/tuples.lua": "" + + tg__0: + collectd: + interval: 1 + prox_path: /opt/nsb_bin/prox + prox_config: "configs/gen_lb-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: ProxDuration + # sampling interval + interval: 1 + # sampled : yes OR sampled: no (DEFAULT yes) + sampled: yes + # we kill after duration, independent of test duration, so set this high + duration: 4000 + # Confirmation attempts + confirmation: 1 + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: prox-baremetal-2.yaml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_lb-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_lb-4.yaml index 5af76e085..e000d431a 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_lb-4.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_lb-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. @@ -19,11 +19,7 @@ scenarios: - type: NSPerf - # This is a special traffic profile for Load Balancer - # Because what is transmitted for 1 port is distributed to the other ports evenly - # Only 1/4 of the transmiited packets is expected back. So this tolerates a much - # packet loss. - traffic_profile: ../../traffic_profiles/prox_lb.yaml + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml topology: prox-tg-topology-4.yaml nodes: @@ -51,9 +47,15 @@ scenarios: "-t": "" runner: - type: Duration + type: ProxDuration + # sampling interval + interval: 1 + # sampled : yes OR sampled: no (DEFAULT yes) + sampled: yes # we kill after duration, independent of test duration, so set this high - duration: 300 + duration: 4000 + # Confirmation attempts + confirmation: 1 context: type: Node diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_lb-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_lb-scale-up.yaml new file mode 100644 index 000000000..7b4e4d0a8 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_lb-scale-up.yaml @@ -0,0 +1,57 @@ +# 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. +# 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 300 %} +--- +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_lb-{{ vports }}.cfg" + prox_args: + "-t": "" + prox_files: + "configs/tuples.lua": "" + + tg__0: + prox_path: /opt/nsb_bin/prox + prox_config: "configs/gen_lb-{{ vports }}.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: {{ duration }} + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: prox-baremetal-{{ vports }}.yaml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-1.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-1.yaml index 52a044913..a59011f73 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-1.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-1.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. diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-2.yaml new file mode 100644 index 000000000..98a139641 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-2.yaml @@ -0,0 +1,88 @@ +# 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. +# 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/prox_binsearch.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick + + options: + vnf__0: + collectd: + interval: 1 + prox_path: /opt/nsb_bin/prox + prox_config: "configs/handle_buffering-2.cfg" + prox_args: + "-t": "" + + tg__0: + collectd: + interval: 1 + prox_path: /opt/nsb_bin/prox + prox_config: "configs/gen_buffering-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 1800 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: 32 + ram: 40960 + disk: 6 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 32 + hw:cpu_threads: 1 + + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf_0: + floating_ip: true + placement: "pgrp1" + tg_0: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + uplink_0: + cidr: '10.0.2.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' + downlink_0: + cidr: '10.0.3.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-4.yaml new file mode 100644 index 000000000..a88299496 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-4.yaml @@ -0,0 +1,110 @@ +# 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. +# 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/prox_binsearch.yaml + topology: prox-tg-topology-4.yaml + + nodes: + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick + + options: + interface_speed_gbps: 10 + + traffic_config: + tolerated_loss: 0.1 + test_precision: 0.01 + + vnf__0: + collectd: + interval: 1 + prox_path: /opt/nsb_bin/prox + prox_config: "configs/handle_buffering-4.cfg" + prox_args: + "-t": "" + + tg__0: + collectd: + interval: 1 + prox_path: /opt/nsb_bin/prox + prox_config: "configs/gen_buffering-4.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: ProxDuration + # sampling interval + interval: 1 + # sampled : yes OR sampled: no (DEFAULT yes) + sampled: yes + # we kill after duration, independent of test duration, so set this high + duration: 4000 + # Confirmation attempts + confirmation: 1 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: 32 + ram: 20480 + disk: 6 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 32 + hw:cpu_threads: 1 + + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf_0: + floating_ip: true + placement: "pgrp1" + tg_0: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + uplink_0: + cidr: '10.0.2.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' + downlink_0: + cidr: '10.0.3.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' + uplink_1: + cidr: '10.0.4.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' + downlink_1: + cidr: '10.0.5.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-scale-up.yaml new file mode 100644 index 000000000..f9f13e85c --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-scale-up.yaml @@ -0,0 +1,95 @@ +# 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. +# 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 mem = mem or 20480 %} +{% set vcpus = vcpus or 32 %} +{% set disk = disk or 10 %} +{% set duration = duration or 4000 %} +--- +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_buffering-{{ vports }}.cfg" + prox_args: + "-t": "" + + tg__0: + prox_path: /opt/nsb_bin/prox + prox_config: "configs/gen_buffering-{{ vports }}.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: {{ duration }} + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: {{ vcpus }} + ram: {{ mem }} + disk: {{ disk }} + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: {{ vcpus }} + hw:cpu_threads: 1 + + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf_0: + floating_ip: true + placement: "pgrp1" + tg_0: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' +{% for vport in range(1,vports,2|int) %} + uplink_{{ loop.index0 }}: + cidr: '10.0.{{ vport+1 }}.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' + + downlink_{{ loop.index0 }}: + cidr: '10.0.{{ vport+2 }}.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' +{% endfor %} + diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_lb-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_lb-2.yaml new file mode 100644 index 000000000..a7f6fb7b8 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_lb-2.yaml @@ -0,0 +1,100 @@ +# 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. +# 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/prox_binsearch.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick + + options: + vnf__0: + collectd: + interval: 1 + prox_path: /opt/nsb_bin/prox + prox_config: "configs/handle_lb-2.cfg" + prox_args: + "-t": "" + prox_files: + "configs/tuples.lua": "" + + tg__0: + collectd: + interval: 1 + prox_path: /opt/nsb_bin/prox + prox_config: "configs/gen_lb-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 4300 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: 32 + ram: 40960 + disk: 6 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 32 + hw:cpu_threads: 1 + + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf_0: + floating_ip: true + placement: "pgrp1" + tg_0: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + uplink_0: + cidr: '10.0.2.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' + downlink_0: + cidr: '10.0.3.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' + uplink_1: + cidr: '10.0.4.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' + downlink_1: + cidr: '10.0.5.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_lb-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_lb-4.yaml index b00c79230..e3b22b5cb 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_lb-4.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_lb-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. @@ -18,7 +18,7 @@ schema: "yardstick:task:0.1" scenarios: - type: NSPerf - traffic_profile: ../../traffic_profiles/prox_lb.yaml + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml topology: prox-tg-topology-4.yaml nodes: @@ -48,19 +48,19 @@ scenarios: runner: type: Duration # we kill after duration, independent of test duration, so set this high - duration: 300 + duration: 4300 context: name: yardstick image: yardstick-samplevnfs user: ubuntu flavor: - vcpus: 12 + vcpus: 32 ram: 40960 disk: 6 extra_specs: hw:cpu_sockets: 1 - hw:cpu_cores: 12 + hw:cpu_cores: 32 hw:cpu_threads: 1 placement_groups: diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_lb-scale-up.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_lb-scale-up.yaml new file mode 100644 index 000000000..feca71d61 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_lb-scale-up.yaml @@ -0,0 +1,97 @@ +# 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. +# 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 mem = mem or 20480 %} +{% set vcpus = vcpus or 32 %} +{% set disk = disk or 10 %} +{% set duration = duration or 4000 %} +--- +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_lb-{{ vports }}.cfg" + prox_args: + "-t": "" + prox_files: + "configs/tuples.lua": "" + + tg__0: + prox_path: /opt/nsb_bin/prox + prox_config: "configs/gen_lb-{{ vports }}.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: {{ duration }} + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: {{ vcpus }} + ram: {{ mem }} + disk: {{ disk }} + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: {{ vcpus }} + hw:cpu_threads: 1 + + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf_0: + floating_ip: true + placement: "pgrp1" + tg_0: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' +{% for vport in range(1,vports,2|int) %} + uplink_{{ loop.index0 }}: + cidr: '10.0.{{ vport+1 }}.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' + + downlink_{{ loop.index0 }}: + cidr: '10.0.{{ vport+2 }}.0/24' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' +{% endfor %} + diff --git a/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_vbng_1port_congested-8.yaml b/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_vbng_1port_congested-8.yaml index a3170048a..77bc55751 100644 --- a/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_vbng_1port_congested-8.yaml +++ b/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_vbng_1port_congested-8.yaml @@ -25,9 +25,10 @@ traffic_profile: duration: {{ duration }} enable_latency: True -uplink_0: +uplink_0: # traffic flow from xe0 to xe1 ipv4: id: 1 + frame_rate: 25% port: xe0 outer_l2: framesize: &uplink_framesize @@ -49,12 +50,17 @@ uplink_0: 1518B: "{{get(imix, 'imix.uplink.1518B', '0') }}" outer_l3v4: - priority: + priority: &uplink_precedence + {% if priority %} + {{ priority }} + {% else %} tos: - precedence: &uplink_precedence [0, 4, 7] -downlink_0: + precedence: [0, 4, 7] + {% endif %} +downlink_0: # traffic flow from xe1 to xe0 ipv4: id: 2 + frame_rate: 50% port: xe1 outer_l2: framesize: &downlink_framesize @@ -76,337 +82,311 @@ downlink_0: 1518B: "{{get(imix, 'imix.downlink.1518B', '0') }}" outer_l3v4: - priority: + priority: &downlink_precedence + {% if priority %} + {{ priority }} + {% else %} tos: - precedence: &downlink_precedence [0, 4, 7] -uplink_1: + precedence: [0, 4, 7] + {% endif %} +uplink_1: # traffic flow from xe0 to xe1 ipv4: id: 3 + frame_rate: 25% port: xe0 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_1: + priority: *uplink_precedence +downlink_1: # traffic flow from xe1 to xe0 ipv4: id: 4 + frame_rate: 50% port: xe1 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence -uplink_2: + priority: *downlink_precedence +uplink_2: # traffic flow from xe0 to xe3 ipv4: id: 5 + frame_rate: 25% port: xe0 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_2: + priority: *uplink_precedence +downlink_2: # traffic flow from xe3 to xe0 ipv4: id: 6 + frame_rate: 50% port: xe3 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence -uplink_3: + priority: *downlink_precedence +uplink_3: # traffic flow from xe0 to xe3 ipv4: id: 7 + frame_rate: 25% port: xe0 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_3: + priority: *uplink_precedence +downlink_3: # traffic flow from xe3 to xe0 ipv4: id: 8 + frame_rate: 50% port: xe3 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence -uplink_4: + priority: *downlink_precedence +uplink_4: # traffic flow from xe2 to xe5 ipv4: id: 9 + frame_rate: 25% port: xe2 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_4: + priority: *uplink_precedence +downlink_4: # traffic flow from xe5 to xe2 ipv4: id: 10 + frame_rate: 7% port: xe5 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence -uplink_5: + priority: *downlink_precedence +uplink_5: # traffic flow from xe2 to xe5 ipv4: id: 11 + frame_rate: 25% port: xe2 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_5: + priority: *uplink_precedence +downlink_5: # traffic flow from xe5 to xe2 ipv4: id: 12 + frame_rate: 7% port: xe5 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence -uplink_6: + priority: *downlink_precedence +uplink_6: # traffic flow from xe2 to xe5 ipv4: id: 13 + frame_rate: 25% port: xe2 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_6: + priority: *uplink_precedence +downlink_6: # traffic flow from xe5 to xe2 ipv4: id: 14 + frame_rate: 7% port: xe5 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence -uplink_7: + priority: *downlink_precedence +uplink_7: # traffic flow from xe2 to xe5 ipv4: id: 15 + frame_rate: 25% port: xe2 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_7: + priority: *uplink_precedence +downlink_7: # traffic flow from xe5 to xe2 ipv4: id: 16 + frame_rate: 7% port: xe5 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence -uplink_8: + priority: *downlink_precedence +uplink_8: # traffic flow from xe4 to xe5 ipv4: id: 17 + frame_rate: 25% port: xe4 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_8: + priority: *uplink_precedence +downlink_8: # traffic flow from xe5 to xe4 ipv4: id: 18 + frame_rate: 7% port: xe5 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence -uplink_9: + priority: *downlink_precedence +uplink_9: # traffic flow from xe4 to xe5 ipv4: id: 19 + frame_rate: 25% port: xe4 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_9: + priority: *uplink_precedence +downlink_9: # traffic flow from xe5 to xe4 ipv4: id: 20 + frame_rate: 7% port: xe5 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence -uplink_10: + priority: *downlink_precedence +uplink_10: # traffic flow from xe4 to xe7 ipv4: id: 21 + frame_rate: 25% port: xe4 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_10: + priority: *uplink_precedence +downlink_10: # traffic flow from xe7 to xe4 ipv4: id: 22 + frame_rate: 7% port: xe7 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence -uplink_11: + priority: *downlink_precedence +uplink_11: # traffic flow from xe4 to xe7 ipv4: id: 23 + frame_rate: 25% port: xe4 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_11: + priority: *uplink_precedence +downlink_11: # traffic flow from xe7 to xe4 ipv4: id: 24 + frame_rate: 7% port: xe7 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence + priority: *downlink_precedence -uplink_12: +uplink_12: # traffic flow from xe6 to xe7 ipv4: id: 25 + frame_rate: 25% port: xe6 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_12: + priority: *uplink_precedence +downlink_12: # traffic flow from xe7 to xe6 ipv4: id: 26 + frame_rate: 7% port: xe7 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence -uplink_13: + priority: *downlink_precedence +uplink_13: # traffic flow from xe6 to xe7 ipv4: id: 27 + frame_rate: 25% port: xe6 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_13: + priority: *uplink_precedence +downlink_13: # traffic flow from xe7 to xe6 ipv4: id: 28 + frame_rate: 7% port: xe7 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence -uplink_14: + priority: *downlink_precedence +uplink_14: # traffic flow from xe6 to xe7 ipv4: id: 29 + frame_rate: 25% port: xe6 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_14: + priority: *uplink_precedence +downlink_14: # traffic flow from xe7 to xe6 ipv4: id: 30 + frame_rate: 7% port: xe7 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence -uplink_15: + priority: *downlink_precedence +uplink_15: # traffic flow from xe6 to xe7 ipv4: id: 31 + frame_rate: 25% port: xe6 outer_l2: framesize: *uplink_framesize outer_l3v4: - priority: - tos: - precedence: *uplink_precedence -downlink_15: + priority: *uplink_precedence +downlink_15: # traffic flow from xe7 to xe6 ipv4: id: 32 + frame_rate: 7% port: xe7 outer_l2: framesize: *downlink_framesize outer_l3v4: - priority: - tos: - precedence: *downlink_precedence + priority: *downlink_precedence diff --git a/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_vbng_scale_up.yaml b/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_vbng_scale_up.yaml index 4f427b76a..91658a586 100644 --- a/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_vbng_scale_up.yaml +++ b/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency_vbng_scale_up.yaml @@ -13,7 +13,6 @@ # limitations under the License. --- -{% set svlan_per_port = get(extra_args, 'svlans_per_port') %} {% set ports = get(extra_args, 'access_vports_num')|int %} schema: "nsb:traffic_profile:0.1" @@ -23,11 +22,11 @@ name: rfc2544 description: Traffic profile to run RFC2544 latency traffic_profile: traffic_type : IXIARFC2544PppoeScenarioProfile # defines traffic behavior - constant or look for highest possible throughput - frame_rate : 12.5% # pc of linerate + frame_rate : 100% # pc of linerate duration: {{ duration }} enable_latency: True -{% for i in range(svlan_per_port|int * ports|int) %} +{% for i in range(ports|int) %} uplink_{{ i }}: ipv4: id: {{ (i * 2) + 1 }} @@ -51,9 +50,13 @@ uplink_{{ i }}: 1518B: "{{get(imix, 'imix.uplink.1518B', '0') }}" outer_l3v4: - priority: - tos: - precedence: [0, 4, 7] + priority: + {% if priority %} + {{ priority }} + {% else %} + tos: + precedence: [0, 4, 7] + {% endif %} downlink_{{ i }}: ipv4: id: {{ (i * 2) + 2 }} @@ -77,7 +80,11 @@ downlink_{{ i }}: 1518B: "{{get(imix, 'imix.downlink.1518B', '0') }}" outer_l3v4: - priority: - tos: - precedence: [0, 4, 7] + priority: + {% if priority %} + {{ priority }} + {% else %} + tos: + precedence: [0, 4, 7] + {% endif %} {% endfor %} |