diff options
Diffstat (limited to 'samples/vnf_samples')
71 files changed, 3434 insertions, 58 deletions
diff --git a/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_64B_ixia_scale_up.yaml b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_64B_ixia_scale_up.yaml new file mode 100644 index 000000000..d1b0fab2a --- /dev/null +++ b/samples/vnf_samples/nsut/cgnapt/tc_baremetal_rfc2544_ipv4_1flow_64B_ixia_scale_up.yaml @@ -0,0 +1,49 @@ +# 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. + +--- +schema: yardstick:task:0.1 +scenarios: +{% for worker_thread in [1, 2 ,3] %} +- type: NSPerf + traffic_profile: "../../traffic_profiles/ixia_ipv4_latency.yaml" + topology: cgnapt_vnf_topology_ixia.yaml + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + options: + framesize: + private: {64B: 100} + public: {64B: 100} + flow: + src_ip: [{'tg__1': 'xe0'}] + dst_ip: [{'tg__1': 'xe1'}] + publicip: ["152.16.40.10"] + count: 1000 + traffic_type: 4 + rfc2544: + allowed_drop_rate: 0.0001 - 0.0001 + vnf__1: + vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: {{worker_thread}}} + runner: + type: Iteration + iterations: 10 + interval: 35 + ixia_profile: ../../traffic_profiles/cgnapt/cgnat_ipv4_profile_1flows.ixncfg +{% endfor %} +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: /etc/yardstick/nodes/pod_ixia.yaml diff --git a/samples/vnf_samples/nsut/prox/configs/gen_buffering-1.cfg b/samples/vnf_samples/nsut/prox/configs/gen_buffering-1.cfg new file mode 100644 index 000000000..6deefa82f --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_buffering-1.cfg @@ -0,0 +1,53 @@ +# 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=p0 +mac=hardware + +[defaults] +mempool size=4K + +[variables] +$sut_mac0=@@dst_mac0 + +[global] +start time=5 +name=Buffering gen + +[core 0] +mode=master + +[core 1] +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 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 08 55 7b + +[core 2] +name=P1 +task=0 +mode=lat +rx port=p0 +lat pos=42 + diff --git a/samples/vnf_samples/nsut/prox/configs/gen_l2fwd-2.cfg b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd-2.cfg new file mode 100644 index 000000000..e7fad98bf --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd-2.cfg @@ -0,0 +1,76 @@ +# 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 + +[port 0] +name=p0 +mac=hardware +promiscuous=yes + +[port 1] +name=p1 +mac=hardware +promiscuous=yes + +[defaults] +mempool size=4K + +[variables] +$sut_mac0=@@dst_mac0 +$sut_mac1=@@dst_mac1 + +[global] +start time=5 +name=Basic Gen + +[core 0] +mode=master + +[core 1] +name=gen 0 +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 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 + +[core 2] +name=gen 1 +task=0 +mode=gen +tx port=p1 +bps=1250000000 +; Ethernet + IP + UDP +pkt inline=${sut_mac1} 70 00 00 00 00 02 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d 00 00 00 01 00 00 00 03 13 88 13 88 00 08 55 7b + +[core 3] +name=rec 0 +task=0 +mode=lat +rx port=p0 +lat pos=42 + +[core 4] +name=rec 0 +task=0 +mode=lat +rx port=p1 +lat pos=42 + diff --git a/samples/vnf_samples/nsut/prox/configs/gen_l2fwd-4.cfg b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd-4.cfg new file mode 100644 index 000000000..5b79185a7 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd-4.cfg @@ -0,0 +1,115 @@ +# 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 + +[port 0] +name=p0 +mac=hardware +promiscuous=yes + +[port 1] +name=p1 +mac=hardware +promiscuous=yes + +[port 2] +name=p2 +mac=hardware +promiscuous=yes + +[port 3] +name=p3 +mac=hardware +promiscuous=yes + +[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=Basic Gen x4 + +[core 0] +mode=master + +[core 1] +name=gen 0 +task=0 +mode=gen +tx port=p0 +bps=1250000000 +; Ethernet + IP + UDP +pkt inline=${sut_mac0} 3c fd fe 9f a3 a0 08 a0 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 08 55 7b + +[core 2] +name=gen 1 +task=0 +mode=gen +tx port=p1 +bps=1250000000 +; Ethernet + IP + UDP +pkt inline=${sut_mac1} 3c fd fe 9f a5 50 08 a0 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 08 55 7b + +[core 3] +name=gen 2 +task=0 +mode=gen +tx port=p2 +bps=1250000000 +; Ethernet + IP + UDP +pkt inline=${sut_mac2} 3c fd fe 9f a5 50 08 a0 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 08 55 7b + +[core 4] +name=gen 3 +task=0 +mode=gen +tx port=p3 +bps=1250000000 +; Ethernet + IP + UDP +pkt inline=${sut_mac3} 3c fd fe 9f a5 50 08 a0 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 08 55 7b + +[core 5] +name=rec 0 +task=0 +mode=lat +rx port=p0 + +[core 6] +name=rec 1 +task=0 +mode=lat +rx port=p1 + +[core 7] +name=rec 2 +task=0 +mode=lat +rx port=p2 + +[core 8] +name=rec 3 +task=0 +mode=lat +rx port=p3 diff --git a/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_pktTouch-2.cfg b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_pktTouch-2.cfg new file mode 100644 index 000000000..016a6b29c --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_pktTouch-2.cfg @@ -0,0 +1,70 @@ +# 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 + +[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=Basic Gen + +[core 0] +mode=master + +[core 1] +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 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 08 55 7b + +[core 2] +name=p1 +task=0 +mode=gen +tx port=p1 +bps=1250000000 +; Ethernet + IP + UDP +pkt inline=${sut_mac1} 70 00 00 00 00 02 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 08 55 7b + +[core 3] +task=0 +mode=lat +rx port=p0 +lat pos=42 + +[core 4] +task=0 +mode=lat +rx port=p1 +lat pos=42 diff --git a/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_pktTouch-4.cfg b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_pktTouch-4.cfg new file mode 100644 index 000000000..cb52d6c87 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_pktTouch-4.cfg @@ -0,0 +1,108 @@ +# 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 + +[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=Basic Gen + +[core 0] +mode=master + +[core 1] +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 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 08 55 7b + +[core 2] +name=p1 +task=0 +mode=gen +tx port=p1 +bps=1250000000 +; Ethernet + IP + UDP +pkt inline=${sut_mac1} 70 00 00 00 00 02 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 08 55 7b + +[core 3] +name=p2 +task=0 +mode=gen +tx port=p2 +bps=1250000000 +; Ethernet + IP + UDP +pkt inline=${sut_mac2} 70 00 00 00 00 03 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 08 55 7b + +[core 4] +name=p3 +task=0 +mode=gen +tx port=p3 +bps=1250000000 +; Ethernet + IP + UDP +pkt inline=${sut_mac3} 70 00 00 00 00 04 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 13 88 13 88 00 08 55 7b + +[core 5] +task=0 +mode=lat +rx port=p0 +lat pos=42 + +[core 6] +task=0 +mode=lat +rx port=p1 +lat pos=42 + +[core 7] +task=0 +mode=lat +rx port=p2 +lat pos=42 + +[core 8] +task=0 +mode=lat +rx port=p3 +lat pos=42 diff --git a/samples/vnf_samples/nsut/prox/configs/gen_l3fwd-2.cfg b/samples/vnf_samples/nsut/prox/configs/gen_l3fwd-2.cfg new file mode 100644 index 000000000..efdc3ef17 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_l3fwd-2.cfg @@ -0,0 +1,73 @@ +# 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 + +[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=Routing Gen + +[core 0] +mode=master + +[core 1] +name=p0 +task=0 +mode=gen +tx port=p0 +bps=1250000000 +pkt inline=00 00 01 00 00 01 00 00 02 00 00 02 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 0a 00 00 00 13 88 13 88 00 08 55 7b +random=0000101XXXXXXXXXXXXX0000XXXXXXXX +rand_offset=30 + +[core 2] +name=p1 +task=0 +mode=gen +tx port=p1 +bps=1250000000 +pkt inline=00 00 01 00 00 01 00 00 02 00 00 02 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 0a 00 00 00 13 88 13 88 00 08 55 7b +random=0000101XXXXXXXXXXXXX0000XXXXXXXX +rand_offset=30 + +[core 3] +task=0 +mode=lat +rx port=p0 +lat pos=42 + +[core 4] +task=0 +mode=lat +rx port=p1 +lat pos=42 + diff --git a/samples/vnf_samples/nsut/prox/configs/gen_l3fwd-4.cfg b/samples/vnf_samples/nsut/prox/configs/gen_l3fwd-4.cfg new file mode 100644 index 000000000..bf226f822 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_l3fwd-4.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 + +[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=Routing Gen + +[core 0] +mode=master + +[core 1] +name=p0 +task=0 +mode=gen +tx port=p0 +bps=1250000000 +pkt inline=00 00 01 00 00 01 00 00 02 00 00 02 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 0a 00 00 00 13 88 13 88 00 08 55 7b +random=0000101XXXXXXXXXXXXX0000XXXXXXXX +rand_offset=30 + +[core 2] +name=p1 +task=0 +mode=gen +tx port=p1 +bps=1250000000 +pkt inline=00 00 01 00 00 01 00 00 02 00 00 02 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 0a 00 00 00 13 88 13 88 00 08 55 7b +random=0000101XXXXXXXXXXXXX0000XXXXXXXX +rand_offset=30 + +[core 3] +name=p2 +task=0 +mode=gen +tx port=p2 +bps=1250000000 +pkt inline=00 00 01 00 00 01 00 00 02 00 00 02 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 0a 00 00 00 13 88 13 88 00 08 55 7b +random=0000101XXXXXXXXXXXXX0000XXXXXXXX +rand_offset=30 + +[core 4] +name=p3 +task=0 +mode=gen +tx port=p3 +bps=1250000000 +pkt inline=00 00 01 00 00 01 00 00 02 00 00 02 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 0a 00 00 00 13 88 13 88 00 08 55 7b +random=0000101XXXXXXXXXXXXX0000XXXXXXXX +rand_offset=30 + + +[core 5] +task=0 +mode=lat +rx port=p0 +lat pos=42 + +[core 6] +task=0 +mode=lat +rx port=p1 +lat pos=42 + + +[core 7] +task=0 +mode=lat +rx port=p2 +lat pos=42 + +[core 8] +task=0 +mode=lat +rx port=p3 +lat pos=42
\ No newline at end of file diff --git a/samples/vnf_samples/nsut/prox/configs/gen_mpls_tag_untag-2.cfg b/samples/vnf_samples/nsut/prox/configs/gen_mpls_tag_untag-2.cfg new file mode 100644 index 000000000..d9c742983 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_mpls_tag_untag-2.cfg @@ -0,0 +1,71 @@ +# 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 + +[port 0] +name=taggd1 +mac=hardware +[port 1] +name=plain1 +mac=hardware + +[defaults] +mempool size=4K + +[variables] +$sut_mac0=@@dst_mac0 +$sut_mac1=@@dst_mac1 + +[global] +start time=5 +name=MPLS tag/untag +shuffle=yes + +[core 0] +mode=master + +[core 1] +name=tag1 +task=0 +mode=gen +tx port=taggd1 +bps=1250000000 +; Ethernet + MPLS + IP + UDP +pkt inline=${sut_mac0} 70 00 00 00 00 01 88 47 00 00 31 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 08 7c 21 FFFFFFFF + +[core 2] +name=udp1 +task=0 +mode=gen +tx port=plain1 +bps=1250000000 +; Ethernet + IP + UDP +pkt inline=${sut_mac1} 70 00 00 00 00 02 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 08 7c 21 FFFFFFFF + +[core 3] +task=0 +mode=lat +rx port=taggd1 +lat pos=46 + +[core 4] +task=0 +mode=lat +rx port=plain1 +lat pos=42 diff --git a/samples/vnf_samples/nsut/prox/configs/gen_mpls_tag_untag-4.cfg b/samples/vnf_samples/nsut/prox/configs/gen_mpls_tag_untag-4.cfg new file mode 100644 index 000000000..20b373882 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_mpls_tag_untag-4.cfg @@ -0,0 +1,109 @@ +# 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 + +[port 0] +name=taggd1 +mac=hardware +[port 1] +name=plain1 +mac=hardware +[port 2] +name=plain2 +mac=hardware +[port 3] +name=taggd2 +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=MPLS tag/untag +shuffle=yes + +[core 0] +mode=master + +[core 1] +name=tag1 +task=0 +mode=gen +tx port=taggd1 +bps=1250000000 +; Ethernet + MPLS + IP + UDP +pkt inline=${sut_mac0} 70 00 00 00 00 01 88 47 00 00 31 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 08 7c 21 FFFFFFFF + +[core 2] +name=udp1 +task=0 +mode=gen +tx port=plain1 +bps=1250000000 +; Ethernet + IP + UDP +pkt inline=${sut_mac1} 70 00 00 00 00 02 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 08 7c 21 FFFFFFFF + +[core 3] +name=udp2 +task=0 +mode=gen +tx port=plain2 +bps=1250000000 +; Ethernet + IP + UDP +pkt inline=${sut_mac2} 70 00 00 00 00 03 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 08 7c 21 FFFFFFFF + +[core 4] +name=tag2 +task=0 +mode=gen +tx port=taggd2 +bps=1250000000 +; Ethernet + MPLS + IP + UDP +pkt inline=${sut_mac3} 70 00 00 00 00 04 88 47 00 00 31 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 08 7c 21 FFFFFFFF + +[core 5] +task=0 +mode=lat +rx port=taggd1 +lat pos=46 + +[core 6] +task=0 +mode=lat +rx port=plain1 +lat pos=42 + +[core 7] +task=0 +mode=lat +rx port=plain2 +lat pos=42 + +[core 8] +task=0 +mode=lat +rx port=taggd2 +lat pos=46 diff --git a/samples/vnf_samples/nsut/prox/configs/handle_buffering-1.cfg b/samples/vnf_samples/nsut/prox/configs/handle_buffering-1.cfg new file mode 100644 index 000000000..80d7d0734 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_buffering-1.cfg @@ -0,0 +1,52 @@ +# 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 + +[defaults] +mempool size=1879K +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 diff --git a/samples/vnf_samples/nsut/prox/configs/handle_l2fwd-2.cfg b/samples/vnf_samples/nsut/prox/configs/handle_l2fwd-2.cfg new file mode 100644 index 000000000..f78820ce4 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_l2fwd-2.cfg @@ -0,0 +1,60 @@ +# 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 + +[port 0] +name=if0 +mac=hardware +rx desc=2048 +tx desc=2048 +promiscuous=yes + +[port 1] +name=if1 +mac=hardware +rx desc=2048 +tx desc=2048 +promiscuous=yes + +[defaults] +mempool size=8K +memcache size=512 + +[global] +start time=5 +name=Handle None (2x) + +[core 0] +mode=master + +[core 1] +name=none +task=0 +mode=l2fwd +rx port=if0 +tx port=if1 +drop=no + +[core 2] +name=none +task=0 +mode=l2fwd +rx port=if1 +tx port=if0 +drop=no diff --git a/samples/vnf_samples/nsut/prox/configs/handle_l2fwd-4.cfg b/samples/vnf_samples/nsut/prox/configs/handle_l2fwd-4.cfg new file mode 100644 index 000000000..dd9d36697 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_l2fwd-4.cfg @@ -0,0 +1,90 @@ +# 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 + +[port 0] +name=if0 +mac=hardware +rx desc=2048 +tx desc=2048 +promiscuous=yes + +[port 1] +name=if1 +mac=hardware +rx desc=2048 +tx desc=2048 +promiscuous=yes + +[port 2] +name=if2 +mac=hardware +rx desc=2048 +tx desc=2048 +promiscuous=yes + +[port 3] +name=if3 +mac=hardware +rx desc=2048 +tx desc=2048 +promiscuous=yes + +[defaults] +mempool size=8K +memcache size=512 + +[global] +start time=5 +name=Handle None (4x) + +[core 0] +mode=master + +[core 1] +name=none +task=0 +mode=l2fwd +rx port=if0 +tx port=if1 +drop=no + +[core 2] +name=none +task=0 +mode=l2fwd +rx port=if1 +tx port=if0 +drop=no + +[core 3] +name=none +task=0 +mode=l2fwd +rx port=if2 +tx port=if3 +drop=no + +[core 4] +name=none +task=0 +mode=l2fwd +rx port=if3 +tx port=if2 +drop=no diff --git a/samples/vnf_samples/nsut/prox/configs/handle_l2fwd_pktTouch-2.cfg b/samples/vnf_samples/nsut/prox/configs/handle_l2fwd_pktTouch-2.cfg new file mode 100644 index 000000000..153e81413 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_l2fwd_pktTouch-2.cfg @@ -0,0 +1,59 @@ +# 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 + +[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=8K +memcache size=512 + +[global] +start time=5 +name=Touch (22x) + +[core 0] +mode=master + +[core 1] +name=none +task=0 +mode=l2fwd +dst mac=@@tester_p1 +rx port=if0 +tx port=if1 +drop=no + +[core 2] +name=none +task=0 +mode=l2fwd +dst mac=@@tester_p0 +rx port=if1 +tx port=if0 +drop=no diff --git a/samples/vnf_samples/nsut/prox/configs/handle_l2fwd_pktTouch-4.cfg b/samples/vnf_samples/nsut/prox/configs/handle_l2fwd_pktTouch-4.cfg new file mode 100644 index 000000000..59a55845e --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_l2fwd_pktTouch-4.cfg @@ -0,0 +1,88 @@ +# 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 + +[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=8K +memcache size=512 + +[global] +start time=5 +name=Touch (4x) + +[core 0] +mode=master + +[core 1] +name=none +task=0 +mode=l2fwd +dst mac=@@tester_p1 +rx port=if0 +tx port=if1 +drop=no + +[core 2] +name=none +task=0 +mode=l2fwd +dst mac=@@tester_p0 +rx port=if1 +tx port=if0 +drop=no + +[core 3] +name=none +task=0 +mode=l2fwd +dst mac=@@tester_p3 +rx port=if2 +tx port=if3 +drop=no + +[core 4] +name=none +task=0 +mode=l2fwd +dst mac=@@tester_p2 +rx port=if3 +tx port=if2 +drop=no + diff --git a/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-2.cfg b/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-2.cfg new file mode 100644 index 000000000..f7d4376f4 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-2.cfg @@ -0,0 +1,62 @@ +# 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. +# +#; + +[lua] +lpm4 = dofile("ipv4.lua") + +[eal options] +-n=4 ; force 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=4K + +[global] +start time=5 +name=Routing (2x) + +[core 0] +mode=master + +[core 1] +name=Routing +task=0 +mode=routing +route table=lpm4 +rx port=if0 +tx port=if0,if1 +drop=no + +[core 2] +name=Routing +task=0 +mode=routing +route table=lpm4 +rx port=if1 +tx port=if0,if1 +drop=no
\ No newline at end of file diff --git a/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-4.cfg b/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-4.cfg new file mode 100644 index 000000000..d5822225f --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-4.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. +# +#; + +[lua] +lpm4 = dofile("ipv4.lua") + +[eal options] +-n=4 ; force number of memory channels +no-output=no ; disable DPDK debug output + +[port 0] +name=if0 +mac=hardware +[port 1] +name=if1 +mac=hardware +[port 2] +name=if2 +mac=hardware +[port 3] +name=if3 +mac=hardware + +[defaults] +mempool size=4K + +[global] +start time=5 +name=Routing (4x) + +[core 0] +mode=master + +[core 1] +name=Routing +task=0 +mode=routing +route table=lpm4 +rx port=if0 +tx port=if0,if1 +drop=no + +[core 2] +name=Routing +task=0 +mode=routing +route table=lpm4 +rx port=if1 +tx port=if0,if1 +drop=no + +[core 3] +name=Routing +task=0 +mode=routing +route table=lpm4 +rx port=if2 +tx port=if2,if3 +drop=no + +[core 4] +name=Routing +task=0 +mode=routing +route table=lpm4 +rx port=if3 +tx port=if2,if3 +drop=no diff --git a/samples/vnf_samples/nsut/prox/configs/handle_mpls_tag_untag-2.cfg b/samples/vnf_samples/nsut/prox/configs/handle_mpls_tag_untag-2.cfg new file mode 100644 index 000000000..9e4a7f173 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_mpls_tag_untag-2.cfg @@ -0,0 +1,72 @@ +# 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 + +[port 0] +name=taggd1 +mac=hardware +rx desc=2048 +tx desc=2048 +[port 1] +name=plain1 +mac=hardware +rx desc=2048 +tx desc=2048 + +[defaults] +mempool size=8K +memcache size=512 + +[global] +start time=5 +name=tag/untag + +[core 0] +mode=master + +[core 1] +name=untag1 +task=0 +mode=unmpls +rx port=taggd1 +tx cores=1t1 +drop=no + +task=1 +mode=l2fwd +dst mac=@@tester_p1 +rx ring=yes +tx port=plain1 +drop=no + +[core 2] +name=tag1 +task=0 +mode=tagmpls +rx port=plain1 +tx cores=2t1 +drop=no + +task=1 +mode=l2fwd +dst mac=@@tester_p0 +rx ring=yes +tx port=taggd1 +drop=no + diff --git a/samples/vnf_samples/nsut/prox/configs/handle_mpls_tag_untag-4.cfg b/samples/vnf_samples/nsut/prox/configs/handle_mpls_tag_untag-4.cfg new file mode 100644 index 000000000..9ae5bf937 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_mpls_tag_untag-4.cfg @@ -0,0 +1,112 @@ +# 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 + +[port 0] +name=taggd1 +mac=hardware +rx desc=2048 +tx desc=2048 +[port 1] +name=plain1 +mac=hardware +rx desc=2048 +tx desc=2048 +[port 2] +name=plain2 +mac=hardware +rx desc=2048 +tx desc=2048 +[port 3] +name=taggd2 +mac=hardware +rx desc=2048 +tx desc=2048 + +[defaults] +mempool size=8K +memcache size=512 + +[global] +start time=5 +name=tag/untag + +[core 0] +mode=master + +[core 1] +name=untag1 +task=0 +mode=unmpls +rx port=taggd1 +tx cores=1t1 +drop=no + +task=1 +mode=l2fwd +dst mac=@@tester_p1 +rx ring=yes +tx port=plain1 +drop=no + +[core 2] +name=tag1 +task=0 +mode=tagmpls +rx port=plain1 +tx cores=2t1 +drop=no + +task=1 +mode=l2fwd +dst mac=@@tester_p0 +rx ring=yes +tx port=taggd1 +drop=no + +[core 3] +name=tag2 +task=0 +mode=tagmpls +rx port=plain2 +tx cores=3t1 +drop=no + +task=1 +mode=l2fwd +dst mac=@@tester_p3 +rx ring=yes +tx port=taggd2 +drop=no + +[core 4] +name=untag2 +task=0 +mode=unmpls +rx port=taggd2 +tx cores=4t1 +drop=no + +task=1 +mode=l2fwd +dst mac=@@tester_p2 +rx ring=yes +tx port=plain2 +drop=no + diff --git a/samples/vnf_samples/nsut/prox/configs/ipv4.lua b/samples/vnf_samples/nsut/prox/configs/ipv4.lua new file mode 100644 index 000000000..6a8fbe183 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/ipv4.lua @@ -0,0 +1,97 @@ +-- 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. +-- + +local lpm4 = {} +lpm4.next_hops = { + {id = 0, port_id = 0, ip = ip("1.1.1.1"), mac = mac("00:00:00:00:00:01"), mpls = 0x112}, + {id = 1, port_id = 1, ip = ip("2.1.1.1"), mac = mac("00:00:00:00:00:02"), mpls = 0x212}, + {id = 2, port_id = 0, ip = ip("3.1.1.1"), mac = mac("00:00:00:00:00:03"), mpls = 0x312}, + {id = 3, port_id = 1, ip = ip("4.1.1.1"), mac = mac("00:00:00:00:00:04"), mpls = 0x412}, + {id = 4, port_id = 0, ip = ip("5.1.1.1"), mac = mac("00:00:00:00:00:05"), mpls = 0x512}, + {id = 5, port_id = 1, ip = ip("6.1.1.1"), mac = mac("00:00:00:00:00:06"), mpls = 0x612}, + {id = 6, port_id = 0, ip = ip("7.1.1.1"), mac = mac("00:00:00:00:00:07"), mpls = 0x712}, + {id = 7, port_id = 1, ip = ip("8.1.1.1"), mac = mac("00:00:00:00:00:08"), mpls = 0x812}, + {id = 8, port_id = 0, ip = ip("9.1.1.1"), mac = mac("00:00:00:00:00:09"), mpls = 0x912}, + {id = 9, port_id = 1, ip = ip("10.1.1.1"), mac = mac("00:00:00:00:00:10"), mpls = 0x1012}, + {id = 10, port_id = 0, ip = ip("11.1.1.1"), mac = mac("00:00:00:00:00:11"), mpls = 0x1112}, + {id = 11, port_id = 1, ip = ip("12.1.1.1"), mac = mac("00:00:00:00:00:12"), mpls = 0x1212}, + {id = 12, port_id = 0, ip = ip("13.1.1.1"), mac = mac("00:00:00:00:00:13"), mpls = 0x1312}, + {id = 13, port_id = 1, ip = ip("14.1.1.1"), mac = mac("00:00:00:00:00:14"), mpls = 0x1412}, + {id = 14, port_id = 0, ip = ip("15.1.1.1"), mac = mac("00:00:00:00:00:15"), mpls = 0x1512}, + {id = 15, port_id = 1, ip = ip("16.1.1.1"), mac = mac("00:00:00:00:00:16"), mpls = 0x1612}, + {id = 16, port_id = 0, ip = ip("17.1.1.1"), mac = mac("00:00:00:00:00:17"), mpls = 0x1712}, + {id = 17, port_id = 1, ip = ip("18.1.1.1"), mac = mac("00:00:00:00:00:18"), mpls = 0x1812}, + {id = 18, port_id = 0, ip = ip("19.1.1.1"), mac = mac("00:00:00:00:00:19"), mpls = 0x1912}, + {id = 19, port_id = 1, ip = ip("20.1.1.1"), mac = mac("00:00:00:00:00:20"), mpls = 0x2012}, + {id = 20, port_id = 0, ip = ip("21.1.1.1"), mac = mac("00:00:00:00:00:21"), mpls = 0x2112}, + {id = 21, port_id = 1, ip = ip("22.1.1.1"), mac = mac("00:00:00:00:00:22"), mpls = 0x2212}, + {id = 22, port_id = 0, ip = ip("23.1.1.1"), mac = mac("00:00:00:00:00:23"), mpls = 0x2312}, + {id = 23, port_id = 1, ip = ip("24.1.1.1"), mac = mac("00:00:00:00:00:24"), mpls = 0x2412}, + {id = 24, port_id = 0, ip = ip("25.1.1.1"), mac = mac("00:00:00:00:00:25"), mpls = 0x2512}, + {id = 25, port_id = 1, ip = ip("26.1.1.1"), mac = mac("00:00:00:00:00:26"), mpls = 0x2612}, + {id = 26, port_id = 0, ip = ip("27.1.1.1"), mac = mac("00:00:00:00:00:27"), mpls = 0x2712}, + {id = 27, port_id = 1, ip = ip("28.1.1.1"), mac = mac("00:00:00:00:00:28"), mpls = 0x2812}, + {id = 28, port_id = 0, ip = ip("29.1.1.1"), mac = mac("00:00:00:00:00:29"), mpls = 0x2912}, + {id = 29, port_id = 1, ip = ip("30.1.1.1"), mac = mac("00:00:00:00:00:30"), mpls = 0x3012}, + {id = 30, port_id = 0, ip = ip("31.1.1.1"), mac = mac("00:00:00:00:00:31"), mpls = 0x3112}, + {id = 31, port_id = 1, ip = ip("32.1.1.1"), mac = mac("00:00:00:00:00:32"), mpls = 0x3212}, + {id = 32, port_id = 0, ip = ip("33.1.1.1"), mac = mac("00:00:00:00:00:33"), mpls = 0x3312}, + {id = 33, port_id = 1, ip = ip("34.1.1.1"), mac = mac("00:00:00:00:00:34"), mpls = 0x3412}, + {id = 34, port_id = 0, ip = ip("35.1.1.1"), mac = mac("00:00:00:00:00:35"), mpls = 0x3512}, + {id = 35, port_id = 1, ip = ip("36.1.1.1"), mac = mac("00:00:00:00:00:36"), mpls = 0x3612}, + {id = 36, port_id = 0, ip = ip("37.1.1.1"), mac = mac("00:00:00:00:00:37"), mpls = 0x3712}, + {id = 37, port_id = 1, ip = ip("38.1.1.1"), mac = mac("00:00:00:00:00:38"), mpls = 0x3812}, + {id = 38, port_id = 0, ip = ip("39.1.1.1"), mac = mac("00:00:00:00:00:39"), mpls = 0x3912}, + {id = 39, port_id = 1, ip = ip("40.1.1.1"), mac = mac("00:00:00:00:00:40"), mpls = 0x4012}, + {id = 40, port_id = 0, ip = ip("41.1.1.1"), mac = mac("00:00:00:00:00:41"), mpls = 0x4112}, + {id = 41, port_id = 1, ip = ip("42.1.1.1"), mac = mac("00:00:00:00:00:42"), mpls = 0x4212}, + {id = 42, port_id = 0, ip = ip("43.1.1.1"), mac = mac("00:00:00:00:00:43"), mpls = 0x4312}, + {id = 43, port_id = 1, ip = ip("44.1.1.1"), mac = mac("00:00:00:00:00:44"), mpls = 0x4412}, + {id = 44, port_id = 0, ip = ip("45.1.1.1"), mac = mac("00:00:00:00:00:45"), mpls = 0x4512}, + {id = 45, port_id = 1, ip = ip("46.1.1.1"), mac = mac("00:00:00:00:00:46"), mpls = 0x4612}, + {id = 46, port_id = 0, ip = ip("47.1.1.1"), mac = mac("00:00:00:00:00:47"), mpls = 0x4712}, + {id = 47, port_id = 1, ip = ip("48.1.1.1"), mac = mac("00:00:00:00:00:48"), mpls = 0x4812}, + {id = 48, port_id = 0, ip = ip("49.1.1.1"), mac = mac("00:00:00:00:00:49"), mpls = 0x4912}, + {id = 49, port_id = 1, ip = ip("50.1.1.1"), mac = mac("00:00:00:00:00:50"), mpls = 0x5012}, + {id = 50, port_id = 0, ip = ip("51.1.1.1"), mac = mac("00:00:00:00:00:51"), mpls = 0x5112}, + {id = 51, port_id = 1, ip = ip("52.1.1.1"), mac = mac("00:00:00:00:00:52"), mpls = 0x5212}, + {id = 52, port_id = 0, ip = ip("53.1.1.1"), mac = mac("00:00:00:00:00:53"), mpls = 0x5312}, + {id = 53, port_id = 1, ip = ip("54.1.1.1"), mac = mac("00:00:00:00:00:54"), mpls = 0x5412}, + {id = 54, port_id = 0, ip = ip("55.1.1.1"), mac = mac("00:00:00:00:00:55"), mpls = 0x5512}, + {id = 55, port_id = 1, ip = ip("56.1.1.1"), mac = mac("00:00:00:00:00:56"), mpls = 0x5612}, + {id = 56, port_id = 0, ip = ip("57.1.1.1"), mac = mac("00:00:00:00:00:57"), mpls = 0x5712}, + {id = 57, port_id = 1, ip = ip("58.1.1.1"), mac = mac("00:00:00:00:00:58"), mpls = 0x5812}, + {id = 58, port_id = 0, ip = ip("59.1.1.1"), mac = mac("00:00:00:00:00:59"), mpls = 0x5912}, + {id = 59, port_id = 1, ip = ip("60.1.1.1"), mac = mac("00:00:00:00:00:60"), mpls = 0x6012}, + {id = 60, port_id = 0, ip = ip("61.1.1.1"), mac = mac("00:00:00:00:00:61"), mpls = 0x6112}, + {id = 61, port_id = 1, ip = ip("62.1.1.1"), mac = mac("00:00:00:00:00:62"), mpls = 0x6212}, + {id = 62, port_id = 0, ip = ip("63.1.1.1"), mac = mac("00:00:00:00:00:63"), mpls = 0x6312}, + {id = 63, port_id = 1, ip = ip("64.1.1.1"), mac = mac("00:00:00:00:00:64"), mpls = 0x6412}, +} + +lpm4.routes = {}; + +base_ip = 10 * 2^24; + +for i = 1,2^13 do + res = ip(base_ip + (1 * 2^12) * (i - 1)); + + lpm4.routes[i] = { + cidr = {ip = res, depth = 24}, + next_hop_id = (i - 1) % 64, + } +end + +return lpm4 diff --git a/samples/vnf_samples/nsut/prox/ovs-dpdk/http_tests/tc_FileSize-1K_Requests-1M_Concurrency-100.yaml b/samples/vnf_samples/nsut/prox/ovs-dpdk/http_tests/tc_FileSize-1K_Requests-1M_Concurrency-100.yaml index c720cacba..4695f0bfe 100644 --- a/samples/vnf_samples/nsut/prox/ovs-dpdk/http_tests/tc_FileSize-1K_Requests-1M_Concurrency-100.yaml +++ b/samples/vnf_samples/nsut/prox/ovs-dpdk/http_tests/tc_FileSize-1K_Requests-1M_Concurrency-100.yaml @@ -26,7 +26,7 @@ scenarios: tg__1: trafficgen_1.yardstick tg__2: trafficgen_2.yardstick - vnf_options: + options: acl: rules: ../../acl_rules.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_1518B_packetsize.yaml b/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_1518B_packetsize.yaml index 051b8dc26..f08289de9 100644 --- a/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_1518B_packetsize.yaml +++ b/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_1518B_packetsize.yaml @@ -25,7 +25,7 @@ scenarios: tc_options: rfc2544: allowed_drop_rate: 0.8 - 1 - vnf_options: + options: acl: rules: ../../acl_1rule.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_64B_packetsize.yaml b/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_64B_packetsize.yaml index 509fc9e1d..92f367855 100644 --- a/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_64B_packetsize.yaml +++ b/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_64B_packetsize.yaml @@ -25,7 +25,7 @@ scenarios: tc_options: rfc2544: allowed_drop_rate: 0.8 - 1 - vnf_options: + options: acl: rules: ../../acl_1rule.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_IMIX_packetsize.yaml b/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_IMIX_packetsize.yaml index bb593d014..bc6ea4d2b 100644 --- a/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_IMIX_packetsize.yaml +++ b/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_1rule_1flow_IMIX_packetsize.yaml @@ -25,7 +25,7 @@ scenarios: tc_options: rfc2544: allowed_drop_rate: 0.8 - 1 - vnf_options: + options: acl: rules: ../../acl_1rule.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_1518B_packetsize.yaml b/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_1518B_packetsize.yaml index 73db738ff..05bf56fb7 100644 --- a/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_1518B_packetsize.yaml +++ b/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_1518B_packetsize.yaml @@ -25,7 +25,7 @@ scenarios: tc_options: rfc2544: allowed_drop_rate: 0.8 - 1 - vnf_options: + options: acl: rules: ../../acl_worstcaserules.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_64B_packetsize.yaml b/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_64B_packetsize.yaml index 3d13bf4bc..d560f56cf 100644 --- a/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_64B_packetsize.yaml +++ b/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_64B_packetsize.yaml @@ -25,7 +25,7 @@ scenarios: tc_options: rfc2544: allowed_drop_rate: 0.8 - 1 - vnf_options: + options: acl: rules: ../../acl_worstcaserules.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_IMIX_packetsize.yaml b/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_IMIX_packetsize.yaml index e7a7146ab..68fdf96e4 100644 --- a/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_IMIX_packetsize.yaml +++ b/samples/vnf_samples/nsut/prox/ovs-dpdk/throughput/tc_ipv4_worstcaserules_1flow_IMIX_packetsize.yaml @@ -25,7 +25,7 @@ scenarios: tc_options: rfc2544: allowed_drop_rate: 0.8 - 1 - vnf_options: + options: acl: rules: ../../acl_worstcaserules.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/prox-baremetal-1.yaml b/samples/vnf_samples/nsut/prox/prox-baremetal-1.yaml new file mode 100644 index 000000000..a6c286242 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/prox-baremetal-1.yaml @@ -0,0 +1,57 @@ +# 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. +# +#; + +nodes: +- + name: "trafficgen_1" + role: TrafficGen + ip: 1.1.1.1 + user: "root" + ssh_port: "22" + password: "r00t" + interfaces: + xe0: + vpci: "0000:05:00.0" + local_mac: "00:00:00:00:00:01" + driver: "i40e" + local_ip: "152.16.100.19" + netmask: "255.255.255.0" + dpdk_port_num: 0 +- + name: "vnf" + role: VNF + ip: 1.1.1.2 + user: "root" + ssh_port: "22" + password: "r00t" + interfaces: + xe0: + vpci: "0000:05:00.0" + local_mac: "00:00:00:00:00:02" + driver: "i40e" + local_ip: "152.16.100.21" + netmask: "255.255.255.0" + dpdk_port_num: 0 + routing_table: + - network: "152.16.100.20" + netmask: "255.255.255.0" + gateway: "152.16.100.20" + if: "xe0" + nd_route_tbl: + - network: "0064:ff9b:0:0:0:0:9810:6414" + netmask: "112" + gateway: "0064:ff9b:0:0:0:0:9810:6414" + if: "xe0" diff --git a/samples/vnf_samples/nsut/prox/prox-tg-topology-1.yaml b/samples/vnf_samples/nsut/prox/prox-tg-topology-1.yaml new file mode 100644 index 000000000..b65d9d94b --- /dev/null +++ b/samples/vnf_samples/nsut/prox/prox-tg-topology-1.yaml @@ -0,0 +1,49 @@ +# Copyright (c) 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. + +nsd:nsd-catalog: + nsd: + - id: prox-tg-topology + name: prox-tg-topology + short-name: prox-tg-topology + description: prox-tg-topology + constituent-vnfd: + - member-vnf-index: '1' + vnfd-id-ref: tg__1 + VNF model: ../../vnf_descriptors/tg_prox_tpl-1.yaml + - member-vnf-index: '2' + vnfd-id-ref: vnf__1 + VNF model: ../../vnf_descriptors/prox_vnf-1.yaml + vld: + - id: private + name: tg__1 to vnf__1 link 1 + type: ELAN + vnfd-connection-point-ref: + - member-vnf-index-ref: '1' + vnfd-connection-point-ref: xe0 + vnfd-id-ref: tg__1 + - member-vnf-index-ref: '2' + vnfd-connection-point-ref: xe0 + vnfd-id-ref: vnf__1 + + - id: public + name: vnf__1 to tg__1 link 2 + type: ELAN + vnfd-connection-point-ref: + - member-vnf-index-ref: '1' + vnfd-connection-point-ref: xe0 + vnfd-id-ref: vnf__1 + - member-vnf-index-ref: '2' + vnfd-connection-point-ref: xe0 + vnfd-id-ref: tg__1 diff --git a/samples/vnf_samples/nsut/prox/sriov/http_tests/tc_FileSize-1K_Requests-1M_Concurrency-100.yaml b/samples/vnf_samples/nsut/prox/sriov/http_tests/tc_FileSize-1K_Requests-1M_Concurrency-100.yaml index 843d3edab..b98ffc51c 100644 --- a/samples/vnf_samples/nsut/prox/sriov/http_tests/tc_FileSize-1K_Requests-1M_Concurrency-100.yaml +++ b/samples/vnf_samples/nsut/prox/sriov/http_tests/tc_FileSize-1K_Requests-1M_Concurrency-100.yaml @@ -21,7 +21,7 @@ scenarios: vnf__1: vnf.yardstick tg__2: trafficgen_2.yardstick - vnf_options: + options: acl: rules: ../../acl_rules.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_1518B_packetsize.yaml b/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_1518B_packetsize.yaml index 1a0eb27ed..bc7891e80 100644 --- a/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_1518B_packetsize.yaml +++ b/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_1518B_packetsize.yaml @@ -20,7 +20,7 @@ scenarios: tc_options: rfc2544: allowed_drop_rate: 0.8 - 1 - vnf_options: + options: acl: rules: ../../acl_1rule.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_64B_packetsize.yaml b/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_64B_packetsize.yaml index d9608e3de..e3a105b0f 100644 --- a/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_64B_packetsize.yaml +++ b/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_64B_packetsize.yaml @@ -20,7 +20,7 @@ scenarios: tc_options: rfc2544: allowed_drop_rate: 0.8 - 1 - vnf_options: + options: acl: rules: ../../acl_1rule.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_IMIX_packetsize.yaml b/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_IMIX_packetsize.yaml index 37b34c7ae..6d89feea0 100644 --- a/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_IMIX_packetsize.yaml +++ b/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_1rule_1flow_IMIX_packetsize.yaml @@ -20,7 +20,7 @@ scenarios: tc_options: rfc2544: allowed_drop_rate: 0.8 - 1 - vnf_options: + options: acl: rules: ../../acl_1rule.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_1518B_packetsize.yaml b/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_1518B_packetsize.yaml index 61f7f23f5..571f4f47b 100644 --- a/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_1518B_packetsize.yaml +++ b/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_1518B_packetsize.yaml @@ -20,7 +20,7 @@ scenarios: tc_options: rfc2544: allowed_drop_rate: 0.8 - 1 - vnf_options: + options: acl: rules: ../../acl_worstcaserules.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_64B_packetsize.yaml b/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_64B_packetsize.yaml index ce5644141..c70846566 100644 --- a/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_64B_packetsize.yaml +++ b/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_64B_packetsize.yaml @@ -20,7 +20,7 @@ scenarios: tc_options: rfc2544: allowed_drop_rate: 0.8 - 1 - vnf_options: + options: acl: rules: ../../acl_worstcaserules.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_IMIX_packetsize.yaml b/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_IMIX_packetsize.yaml index ddc6219cf..026719799 100644 --- a/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_IMIX_packetsize.yaml +++ b/samples/vnf_samples/nsut/prox/sriov/throughput/tc_ipv4_worstcaserules_1flow_IMIX_packetsize.yaml @@ -20,7 +20,7 @@ scenarios: tc_options: rfc2544: allowed_drop_rate: 0.8 - 1 - vnf_options: + options: acl: rules: ../../acl_worstcaserules.yaml cfg: "../../acl_config" diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_acl-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_acl-2.yaml index c06090aaf..7ced79c7b 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_acl-2.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_acl-2.yaml @@ -25,7 +25,7 @@ scenarios: tg__1: trafficgen_1.yardstick vnf__1: vnf.yardstick - vnf_options: + options: vnf__1: prox_path: /root/dppd-PROX-v037/build/prox prox_config: "configs/handle_acl-2.cfg" diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_acl-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_acl-4.yaml index 4bfde75ee..e9def4cc7 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_acl-4.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_acl-4.yaml @@ -25,7 +25,7 @@ scenarios: tg__1: trafficgen_1.yardstick vnf__1: vnf.yardstick - vnf_options: + options: vnf__1: prox_path: /root/dppd-PROX-v037/build/prox prox_config: "configs/handle_acl-4.cfg" diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_binsearch.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_binsearch.yaml index 98a9737c1..0173fdc3e 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_binsearch.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_binsearch.yaml @@ -25,7 +25,7 @@ scenarios: tg__1: trafficgen_1.yardstick vnf__1: vnf.yardstick - vnf_options: + options: vnf__1: prox_path: /root/dppd-PROX-v035/build/prox prox_config: "configs/handle_none-2.cfg" @@ -41,7 +41,6 @@ scenarios: runner: type: Search - # we kill after timeout, independent of test duration, so set this high interval: 5 timeout: 1200 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 new file mode 100644 index 000000000..6344b415f --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_buffering-1.yaml @@ -0,0 +1,51 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-1.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_buffering-1.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_buffering-1.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 300 + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: /etc/yardstick/nodes/prox-baremetal-1.yml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd-2.yaml new file mode 100644 index 000000000..d4672e839 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd-2.yaml @@ -0,0 +1,51 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l2fwd-2.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l2fwd-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 300 + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: /etc/yardstick/nodes/prox-baremetal-2.yml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd-4.yaml new file mode 100644 index 000000000..e6bcac40b --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd-4.yaml @@ -0,0 +1,51 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-4.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l2fwd-4.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l2fwd-4.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 100 + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: /etc/yardstick/nodes/prox-baremetal-4.yml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_pktTouch-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_pktTouch-2.yaml new file mode 100644 index 000000000..9ebfceb73 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_pktTouch-2.yaml @@ -0,0 +1,51 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l2fwd_pktTouch-2.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l2fwd_pktTouch-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 100 + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: /etc/yardstick/nodes/prox-baremetal-2.yml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_pktTouch-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_pktTouch-4.yaml new file mode 100644 index 000000000..e8ba5ef9a --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_pktTouch-4.yaml @@ -0,0 +1,51 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-4.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l2fwd_pktTouch-4.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l2fwd_pktTouch-4.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 300 + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: /etc/yardstick/nodes/prox-baremetal-4.yml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l3fwd-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l3fwd-2.yaml new file mode 100644 index 000000000..f6dc7310e --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l3fwd-2.yaml @@ -0,0 +1,53 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l3fwd-2.cfg" + prox_args: + "-t": "" + prox_files: + "configs/ipv4.lua" : "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l3fwd-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 100 + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: /etc/yardstick/nodes/prox-baremetal-2.yml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l3fwd-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l3fwd-4.yaml new file mode 100644 index 000000000..4d37f391f --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l3fwd-4.yaml @@ -0,0 +1,53 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-4.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l3fwd-4.cfg" + prox_args: + "-t": "" + prox_files: + "configs/ipv4.lua" : "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l3fwd-4.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 100 + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: /etc/yardstick/nodes/prox-baremetal-4.yml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_mpls_tagging-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_mpls_tagging-2.yaml new file mode 100644 index 000000000..59f279529 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_mpls_tagging-2.yaml @@ -0,0 +1,51 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_mpls_tag_untag.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_mpls_tag_untag-2.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_mpls_tag_untag-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 400 + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: /etc/yardstick/nodes/prox-baremetal-2.yml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_mpls_tagging-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_mpls_tagging-4.yaml new file mode 100644 index 000000000..11db293b7 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_mpls_tagging-4.yaml @@ -0,0 +1,51 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_mpls_tag_untag.yaml + topology: prox-tg-topology-4.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_mpls_tag_untag-4.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_mpls_tag_untag-4.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 400 + +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: /etc/yardstick/nodes/prox-baremetal-4.yml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_ramp.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_ramp.yaml index 29bf87b43..c21266cef 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_ramp.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_ramp.yaml @@ -25,7 +25,7 @@ scenarios: tg__1: trafficgen_1.yardstick vnf__1: vnf.yardstick - vnf_options: + options: vnf__1: prox_path: /root/dppd-PROX-v035/build/prox prox_config: "configs/handle_none-2.cfg" diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context.yaml index 8ae58dd75..67552ec88 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_heat_context.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context.yaml @@ -25,7 +25,7 @@ scenarios: tg__1: trafficgen_1.yardstick vnf__1: vnf.yardstick - vnf_options: + options: vnf__1: prox_path: /root/dppd-PROX-v035/build/prox prox_config: "configs/l3-swap-2.cfg" diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_acl-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_acl-2.yaml index 44a086e0f..5310a5c8a 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_acl-2.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_acl-2.yaml @@ -25,7 +25,7 @@ scenarios: tg__1: trafficgen_1.yardstick vnf__1: vnf.yardstick - vnf_options: + options: vnf__1: prox_path: /root/dppd-PROX-v037/build/prox prox_config: "configs/handle_acl-2.cfg" diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_acl-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_acl-4.yaml index 92765d9ac..5ed96736c 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_acl-4.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_acl-4.yaml @@ -25,7 +25,7 @@ scenarios: tg__1: trafficgen_1.yardstick vnf__1: vnf.yardstick - vnf_options: + options: vnf__1: prox_path: /root/dppd-PROX-v037/build/prox prox_config: "configs/handle_acl-4.cfg" 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 new file mode 100644 index 000000000..43742c383 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-1.yaml @@ -0,0 +1,80 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-1.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_buffering-1.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_buffering-1.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 200 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: 5 + ram: 20480 + disk: 4 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 5 + hw:cpu_threads: 1 + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf: + floating_ip: true + placement: "pgrp1" + trafficgen_1: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + external_network: "yardstick-public" + xe0: + cidr: '10.0.2.0/24' + vld_id: public + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-2.yaml new file mode 100644 index 000000000..270ff0411 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-2.yaml @@ -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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l2fwd-2.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l2fwd-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Search + interval: 5 + timeout: 1200 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: 10 + ram: 20480 + disk: 6 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 10 + hw:cpu_threads: 1 + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf: + floating_ip: true + placement: "pgrp1" + trafficgen_1: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + xe0: + cidr: '10.1.1.0/24' + gateway_ip: 'null' + port_security_enabled: False + xe1: + cidr: '10.1.1.0/24' + gateway_ip: 'null' + port_security_enabled: False diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-4.yaml new file mode 100644 index 000000000..0650a0966 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-4.yaml @@ -0,0 +1,97 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-4.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l2fwd-4.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l2fwd-4.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 100 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: 10 + ram: 20480 + disk: 4 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 10 + hw:cpu_threads: 1 + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf: + floating_ip: true + placement: "pgrp1" + trafficgen_1: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + xe0: + cidr: '10.0.2.0/24' + vld_id: public + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe1: + cidr: '10.0.3.0/24' + vld_id: private + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe2: + cidr: '10.0.4.0/24' + vld_id: public + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe3: + cidr: '10.0.5.0/24' + vld_id: private + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_pktTouch-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_pktTouch-2.yaml new file mode 100644 index 000000000..20cf43d70 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_pktTouch-2.yaml @@ -0,0 +1,85 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l2fwd_pktTouch-2.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l2fwd_pktTouch-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 100 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: 10 + ram: 20480 + disk: 4 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 10 + hw:cpu_threads: 1 + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf: + floating_ip: true + placement: "pgrp1" + trafficgen_1: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + xe0: + cidr: '10.0.2.0/24' + vld_id: public + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe1: + cidr: '10.0.3.0/24' + vld_id: private + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_pktTouch-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_pktTouch-4.yaml new file mode 100644 index 000000000..570bdd0fb --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_pktTouch-4.yaml @@ -0,0 +1,98 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-4.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l2fwd_pktTouch-4.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l2fwd_pktTouch-4.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 100 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: 10 + ram: 20480 + disk: 4 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 10 + hw:cpu_threads: 1 + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf: + floating_ip: true + placement: "pgrp1" + trafficgen_1: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + xe0: + cidr: '10.0.2.0/24' + vld_id: public + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe1: + cidr: '10.0.3.0/24' + vld_id: private + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe2: + cidr: '10.0.4.0/24' + vld_id: public + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe3: + cidr: '10.0.5.0/24' + vld_id: private + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l3fwd-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l3fwd-2.yaml new file mode 100644 index 000000000..068f0a2da --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l3fwd-2.yaml @@ -0,0 +1,89 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037.1/build/prox + prox_config: "configs/handle_l3fwd-2.cfg" + prox_args: + "-t": "" + prox_files: + "configs/ipv4.lua" : "" + + tg__1: + prox_path: /root/dppd-PROX-v037.1/build/prox + prox_config: "configs/gen_l3fwd-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 200 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: 10 + ram: 20480 + disk: 4 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 10 + hw:cpu_threads: 1 + + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf: + floating_ip: true + placement: "pgrp1" + trafficgen_1: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + external_network: "yardstick-public" + xe0: + cidr: '10.0.2.0/24' + vld_id: public + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe1: + cidr: '10.0.3.0/24' + vld_id: private + allowed_address_pairs: + - ip_address: + '0.0.0.0/0'
\ No newline at end of file diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l3fwd-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l3fwd-4.yaml new file mode 100644 index 000000000..d51cd31a7 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l3fwd-4.yaml @@ -0,0 +1,101 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-4.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037.1/build/prox + prox_config: "configs/handle_l3fwd-4.cfg" + prox_args: + "-t": "" + prox_files: + "configs/ipv4.lua" : "" + + tg__1: + prox_path: /root/dppd-PROX-v037.1/build/prox + prox_config: "configs/gen_l3fwd-4.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 200 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: 10 + ram: 20480 + disk: 4 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 10 + hw:cpu_threads: 1 + + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf: + floating_ip: true + placement: "pgrp1" + trafficgen_1: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + external_network: "yardstick-public" + xe0: + cidr: '10.0.2.0/24' + vld_id: public + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe1: + cidr: '10.0.3.0/24' + vld_id: private + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe2: + cidr: '10.0.4.0/24' + vld_id: public + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe3: + cidr: '10.0.5.0/24' + vld_id: private + allowed_address_pairs: + - ip_address: + '0.0.0.0/0'
\ No newline at end of file diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_mpls_tagging-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_mpls_tagging-2.yaml new file mode 100644 index 000000000..0f7119514 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_mpls_tagging-2.yaml @@ -0,0 +1,87 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_mpls_tag_untag.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_mpls_tag_untag-2.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_mpls_tag_untag-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 300 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: 10 + ram: 20480 + disk: 4 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 10 + hw:cpu_threads: 1 +# hw:mem_page_size: large + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf: + floating_ip: true + placement: "pgrp1" + trafficgen_1: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + external_network: "yardstick-public" + xe0: + cidr: '10.0.2.0/24' + vld_id: public + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe1: + cidr: '10.0.3.0/24' + vld_id: private + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_mpls_tagging-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_mpls_tagging-4.yaml new file mode 100644 index 000000000..4b3bd789a --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_mpls_tagging-4.yaml @@ -0,0 +1,100 @@ +# 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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_mpls_tag_untag.yaml + topology: prox-tg-topology-4.yaml + + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + + options: + vnf__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_mpls_tag_untag-4.cfg" + prox_args: + "-t": "" + + tg__1: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_mpls_tag_untag-4.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Duration + # we kill after duration, independent of test duration, so set this high + duration: 300 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: + vcpus: 10 + ram: 20480 + disk: 4 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 10 + hw:cpu_threads: 1 +# hw:mem_page_size: large + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf: + floating_ip: true + placement: "pgrp1" + trafficgen_1: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + external_network: "yardstick-public" + xe0: + cidr: '10.0.2.0/24' + vld_id: public + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe1: + cidr: '10.0.3.0/24' + vld_id: private + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe2: + cidr: '10.0.4.0/24' + vld_id: public + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe3: + cidr: '10.0.5.0/24' + vld_id: private + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + diff --git a/samples/vnf_samples/nsut/udp_replay/tc_heat_rfc2544_ipv4_1flow_64B_trex.yaml b/samples/vnf_samples/nsut/udp_replay/tc_heat_rfc2544_ipv4_1flow_64B_trex.yaml new file mode 100644 index 000000000..09a20c33d --- /dev/null +++ b/samples/vnf_samples/nsut/udp_replay/tc_heat_rfc2544_ipv4_1flow_64B_trex.yaml @@ -0,0 +1,79 @@ +# Copyright (c) 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. + +--- +schema: yardstick:task:0.1 +scenarios: +- type: NSPerf + traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml + topology: udp_replay-vnf-topology.yaml + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + options: + packetsize: 64 + traffic_type: 4 + vnf__1: + hw_csum: false + tg__1: + hw_csum: false + rfc2544: + allowed_drop_rate: 0.0001 - 0.0001 + runner: + type: Iteration + iterations: 10 + interval: 35 + traffic_options: + flow: ../../traffic_profiles/ipv4_1flow_Packets.yaml + imix: ../../traffic_profiles/imix_voice.yaml +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + nfvi_type: heat + flavor: + vcpus: 10 + ram: 20480 + disk: 4 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 10 + hw:cpu_threads: 1 + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf: + floating_ip: true + placement: "pgrp1" + trafficgen_1: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + xe0: + cidr: '10.0.2.0/24' + vld_id: public + enable_dhcp: False + gateway_ip: null + port_security_enabled: False + xe1: + cidr: '10.0.3.0/24' + vld_id: private + enable_dhcp: False + gateway_ip: null + port_security_enabled: False diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml index e07f5f9e9..9808398f2 100644 --- a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml +++ b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml @@ -35,6 +35,7 @@ scenarios: vnf__1: rules: acl_1rule.yaml vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1} + nfvi_enable: True runner: type: Iteration iterations: 10 diff --git a/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia_scale_up.yaml b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia_scale_up.yaml new file mode 100644 index 000000000..b5c7df996 --- /dev/null +++ b/samples/vnf_samples/nsut/vfw/tc_baremetal_rfc2544_ipv4_1rule_1flow_64B_ixia_scale_up.yaml @@ -0,0 +1,49 @@ +# 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. + +--- +schema: yardstick:task:0.1 +scenarios: +{% for worker_thread in [1, 2 ,3] %} +- type: NSPerf + traffic_profile: "../../traffic_profiles/ixia_ipv4_latency.yaml" + topology: vfw_vnf_topology_ixia.yaml + nodes: + tg__1: trafficgen_1.yardstick + vnf__1: vnf.yardstick + options: + framesize: + private: {64B: 100} + public: {64B: 100} + flow: + src_ip: [{'tg__1': 'xe0'}] + dst_ip: [{'tg__1': 'xe1'}] + count: 1000 + traffic_type: 4 + rfc2544: + allowed_drop_rate: 0.0001 - 0.0001 + vnf__1: + rules: acl_1rule.yaml + vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: {{worker_thread}}} + runner: + type: Iteration + iterations: 10 + interval: 35 + ixia_profile: ../../traffic_profiles/vfw/vfw_ipv4_profile_1flows.ixncfg +{% endfor %} +context: + type: Node + name: yardstick + nfvi_type: baremetal + file: /etc/yardstick/nodes/pod_ixia.yaml diff --git a/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml new file mode 100644 index 000000000..06b19ebad --- /dev/null +++ b/samples/vnf_samples/nsut/vfw/tc_heat_external_rfc2544_ipv4_1rule_1flow_64B_ixia.yaml @@ -0,0 +1,82 @@ +# Copyright (c) 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. + +--- +schema: yardstick:task:0.1 +scenarios: +- type: NSPerf + traffic_profile: ../../traffic_profiles/ixia_ipv4_latency.yaml + topology: vfw_vnf_topology_ixia.yaml + nodes: + tg__1: trafficgen_1.yardstick1 + vnf__1: vnf.yardstick + options: + framesize: + private: {64B: 100} + public: {64B: 100} + flow: + src_ip: [{'tg__1': 'xe0'}] + dst_ip: [{'tg__1': 'xe1'}] + count: 1 + traffic_type: 4 + rfc2544: + allowed_drop_rate: 0.0001 - 0.0001 + vnf__1: + rules: acl_1rule.yaml + vnf_config: {lb_config: 'SW', lb_count: 1, worker_config: '1C/1T', worker_threads: 1} + runner: + type: Iteration + iterations: 10 + interval: 35 + ixia_profile: ../../traffic_profiles/vfw/vfw_ipv4_profile_1flows.ixncfg +contexts: + # put node context first, so we don't HEAT deploy if node has errors + - name: yardstick1 + type: Node + file: ixia.yml + - name: yardstick + image: yardstick-samplevnfs + flavor: + vcpus: 10 + ram: 20480 + disk: 4 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 10 + hw:cpu_threads: 1 + user: ubuntu + placement_groups: + pgrp1: + policy: "availability" + servers: + vnf: + floating_ip: true + placement: "pgrp1" + networks: + mgmt: + cidr: '10.0.1.0/24' + xe0: + cidr: '10.0.2.0/24' + vld_id: public_1 + gateway_ip: 'null' + provider: true + physical_network: phystenant1 + port_security_enabled: False + xe1: + cidr: '10.0.3.0/24' + vld_id: private_1 + gateway_ip: 'null' + provider: true + physical_network: phystenant2 + port_security_enabled: False diff --git a/samples/vnf_samples/traffic_profiles/ipv4_throughput_cgnapt.yaml b/samples/vnf_samples/traffic_profiles/ipv4_throughput_cgnapt.yaml index 7283b6377..0758cf3a8 100644 --- a/samples/vnf_samples/traffic_profiles/ipv4_throughput_cgnapt.yaml +++ b/samples/vnf_samples/traffic_profiles/ipv4_throughput_cgnapt.yaml @@ -49,11 +49,11 @@ private_1: ipv4: outer_l2: framesize: - 64B: "{{ get(imix, 'imix.private.64B', '0') }}" - 128B: "{{ get(imix, 'imix.private.128B', '0') }}" - 256B: "{{ get(imix, 'imix.private.256B', '0') }}" - 373b: "{{ get(imix, 'imix.private.373B', '0') }}" - 512B: "{{ get(imix, 'imix.private.512B', '0') }}" + 64B: "{{get(imix, 'imix.private.64B', '0') }}" + 128B: "{{get(imix, 'imix.private.128B', '0') }}" + 256B: "{{get(imix, 'imix.private.256B', '0') }}" + 373B: "{{get(imix, 'imix.private.373B', '0') }}" + 512B: "{{get(imix, 'imix.private.512B', '0') }}" 570B: "{{get(imix, 'imix.private.570B', '0') }}" 1400B: "{{get(imix, 'imix.private.1400B', '0') }}" 1500B: "{{get(imix, 'imix.private.1500B', '0') }}" diff --git a/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency.yaml b/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency.yaml index d7531fcdb..c53b4fad4 100644 --- a/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency.yaml +++ b/samples/vnf_samples/traffic_profiles/ixia_ipv4_latency.yaml @@ -35,13 +35,15 @@ private_1: ipv4: outer_l2: framesize: - 64B: "{{ get(imix, 'imix.private.imix_small', '0') }}" - 128B: "{{ get(imix, 'imix.private.imix_128B', '0') }}" - 256B: "{{ get(imix, 'imix.private.imix_256B', '0') }}" - 373b: "{{ get(imix, 'imix.private.imix_373B', '0') }}" - 570B: "{{get(imix, 'imix.private.imix_570B', '0') }}" - 1400B: "{{get(imix, 'imix.private.imix_1400B', '0') }}" - 1518B: "{{get(imix, 'imix.private.imix_1500B', '0') }}" + 64B: "{{get(imix, 'imix.private.64B', '0') }}" + 128B: "{{get(imix, 'imix.private.128B', '0') }}" + 256B: "{{get(imix, 'imix.private.256B', '0') }}" + 373b: "{{get(imix, 'imix.private.373B', '0') }}" + 512B: "{{get(imix, 'imix.private.512B', '0') }}" + 570B: "{{get(imix, 'imix.private.570B', '0') }}" + 1400B: "{{get(imix, 'imix.private.1400B', '0') }}" + 1500B: "{{get(imix, 'imix.private.1500B', '0') }}" + 1518B: "{{get(imix, 'imix.private.1518B', '0') }}" outer_l3v4: proto: "udp" @@ -58,13 +60,15 @@ public_1: ipv4: outer_l2: framesize: - 64B: "{{ get(imix, 'imix.private.imix_small', '0') }}" - 128B: "{{ get(imix, 'imix.private.imix_128B', '0') }}" - 256B: "{{ get(imix, 'imix.private.imix_256B', '0') }}" - 373b: "{{ get(imix, 'imix.private.imix_373B', '0') }}" - 570B: "{{get(imix, 'imix.private.imix_570B', '0') }}" - 1400B: "{{get(imix, 'imix.private.imix_1400B', '0') }}" - 1518B: "{{get(imix, 'imix.private.imix_1500B', '0') }}" + 64B: "{{get(imix, 'imix.public.64B', '0') }}" + 128B: "{{get(imix, 'imix.public.128B', '0') }}" + 256B: "{{get(imix, 'imix.public.256B', '0') }}" + 373b: "{{get(imix, 'imix.public.373B', '0') }}" + 512B: "{{get(imix, 'imix.public.512B', '0') }}" + 570B: "{{get(imix, 'imix.public.570B', '0') }}" + 1400B: "{{get(imix, 'imix.public.1400B', '0') }}" + 1500B: "{{get(imix, 'imix.public.1500B', '0') }}" + 1518B: "{{get(imix, 'imix.public.1518B', '0') }}" outer_l3v4: proto: "udp" @@ -81,13 +85,15 @@ private_2: ipv4: outer_l2: framesize: - 64B: "{{ get(imix, 'imix.private.imix_small', '0') }}" - 128B: "{{ get(imix, 'imix.private.imix_128B', '0') }}" - 256B: "{{ get(imix, 'imix.private.imix_256B', '0') }}" - 373b: "{{ get(imix, 'imix.private.imix_373B', '0') }}" - 570B: "{{get(imix, 'imix.private.imix_570B', '0') }}" - 1400B: "{{get(imix, 'imix.private.imix_1400B', '0') }}" - 1518B: "{{get(imix, 'imix.private.imix_1500B', '0') }}" + 64B: "{{get(imix, 'imix.private.64B', '0') }}" + 128B: "{{get(imix, 'imix.private.128B', '0') }}" + 256B: "{{get(imix, 'imix.private.256B', '0') }}" + 373b: "{{get(imix, 'imix.private.373B', '0') }}" + 512B: "{{get(imix, 'imix.private.512B', '0') }}" + 570B: "{{get(imix, 'imix.private.570B', '0') }}" + 1400B: "{{get(imix, 'imix.private.1400B', '0') }}" + 1500B: "{{get(imix, 'imix.private.1500B', '0') }}" + 1518B: "{{get(imix, 'imix.private.1518B', '0') }}" outer_l3v4: proto: "udp" @@ -104,13 +110,15 @@ public_2: ipv4: outer_l2: framesize: - 64B: "{{ get(imix, 'imix.private.imix_small', '0') }}" - 128B: "{{ get(imix, 'imix.private.imix_128B', '0') }}" - 256B: "{{ get(imix, 'imix.private.imix_256B', '0') }}" - 373b: "{{ get(imix, 'imix.private.imix_373B', '0') }}" - 570B: "{{get(imix, 'imix.private.imix_570B', '0') }}" - 1400B: "{{get(imix, 'imix.private.imix_1400B', '0') }}" - 1518B: "{{get(imix, 'imix.private.imix_1500B', '0') }}" + 64B: "{{get(imix, 'imix.public.64B', '0') }}" + 128B: "{{get(imix, 'imix.public.128B', '0') }}" + 256B: "{{get(imix, 'imix.public.256B', '0') }}" + 373b: "{{get(imix, 'imix.public.373B', '0') }}" + 512B: "{{get(imix, 'imix.public.512B', '0') }}" + 570B: "{{get(imix, 'imix.public.570B', '0') }}" + 1400B: "{{get(imix, 'imix.public.1400B', '0') }}" + 1500B: "{{get(imix, 'imix.public.1500B', '0') }}" + 1518B: "{{get(imix, 'imix.public.1518B', '0') }}" outer_l3v4: proto: "udp" diff --git a/samples/vnf_samples/traffic_profiles/prox_binsearch.yaml b/samples/vnf_samples/traffic_profiles/prox_binsearch.yaml index 1a768f3be..80f4dd335 100644 --- a/samples/vnf_samples/traffic_profiles/prox_binsearch.yaml +++ b/samples/vnf_samples/traffic_profiles/prox_binsearch.yaml @@ -19,11 +19,11 @@ description: Binary search for max no-drop throughput over given packet size traffic_profile: traffic_type: ProxBinSearchProfile - tolerated_loss: 0.0 - test_precision: 1.0 + tolerated_loss: 0.001 + test_precision: 0.1 # packet_sizes: [64, 128, 256, 512, 1024, 1280, 1518] packet_sizes: [64, 65] - duration: 5 + duration: 10 lower_bound: 0.0 upper_bound: 100.0 diff --git a/samples/vnf_samples/traffic_profiles/prox_mpls_tag_untag.yaml b/samples/vnf_samples/traffic_profiles/prox_mpls_tag_untag.yaml new file mode 100644 index 000000000..9ac6e6ecf --- /dev/null +++ b/samples/vnf_samples/traffic_profiles/prox_mpls_tag_untag.yaml @@ -0,0 +1,30 @@ +# 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. + +schema: "nsb:traffic_profile:0.1" + +name: prox_mpls_tag_untag +description: MPLS tag/untag for max no-drop throughput over given packet sizes + +traffic_profile: + traffic_type: ProxMplsTagUntagProfile + tolerated_loss: 0.001 + test_precision: 0.1 +# packet_sizes: [64, 128, 256, 512, 1024, 1280, 1518] +# The minimum size of the Ethernet frame with 802.1Q tagging is 68 bytes. + packet_sizes: [68] + duration: 10 + lower_bound: 0.0 + upper_bound: 100.0 + diff --git a/samples/vnf_samples/vnf_descriptors/prox_vnf-1.yaml b/samples/vnf_samples/vnf_descriptors/prox_vnf-1.yaml new file mode 100644 index 000000000..76eaad8e1 --- /dev/null +++ b/samples/vnf_samples/vnf_descriptors/prox_vnf-1.yaml @@ -0,0 +1,67 @@ +# Copyright (c) 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. + +vnfd:vnfd-catalog: + vnfd: + - id: ProxApproxVnf + name: ProxVnf + short-name: ProxVnf + description: PROX approximation using DPDK + mgmt-interface: + vdu-id: prox-baremetal + {% if user is defined %} + user: '{{user}}' # Value filled by vnfdgen + {% endif %} + {% if password is defined %} + password: '{{password}}' # Value filled by vnfdgen + {% endif %} + {% if ip is defined %} + ip: '{{ip}}' # Value filled by vnfdgen + {% endif %} + {% if key_filename is defined %} + key_filename: '{{key_filename}}' # Value filled by vnfdgen + {% endif %} + connection-point: + - name: xe0 + type: VPORT + vdu: + - id: proxvnf-baremetal + name: proxvnf-baremetal + description: PROX approximation using DPDK + vm-flavor: + vcpu-count: '4' + memory-mb: '4096' + external-interface: + - name: xe0 + virtual-interface: + type: PCI-PASSTHROUGH + # Substitution variables MUST be quoted. Otherwise Python can misinterpet them. + vpci: '{{ interfaces.xe0.vpci }}' # Value filled by vnfdgen + dpdk_port_num: '{{ interfaces.xe0.dpdk_port_num }}' # Value filled by vnfdgen + local_ip: '{{ interfaces.xe0.local_ip }}' # Value filled by vnfdgen + driver: '{{ interfaces.xe0.driver}}' # Value filled by vnfdgen + dst_ip: '{{ interfaces.xe0.dst_ip }}' # Value filled by vnfdgen + local_mac: '{{ interfaces.xe0.local_mac }}' # Value filled by vnfdgen + netmask: '{{ interfaces.xe0.netmask }}' # Value filled by vnfdgen + dst_mac: '{{ interfaces.xe0.dst_mac }}' # Value filled by vnfdgen + vld_id: '{{ interfaces.xe0.vld_id }}' # Value filled by vnfdgen + bandwidth: 10 Gbps + vnfd-connection-point-ref: xe0 + routing_table: {{ routing_table }} + nd_route_tbl: {{ nd_route_tbl }} + benchmark: + kpi: + - packets_in + - packets_fwd + - packets_dropped diff --git a/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-1.yaml b/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-1.yaml new file mode 100644 index 000000000..b186b4cb0 --- /dev/null +++ b/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-1.yaml @@ -0,0 +1,63 @@ +# Copyright (c) 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. + +vnfd:vnfd-catalog: + vnfd: + - id: ProxTrafficGen # nsb class mapping + name: proxverifier + short-name: proxverifier + description: prox stateless traffic verifier + mgmt-interface: + vdu-id: proxgen-baremetal + {% if user is defined %} + user: '{{user}}' # Value filled by vnfdgen + {% endif %} + {% if password is defined %} + password: '{{password}}' # Value filled by vnfdgen + {% endif %} + {% if ip is defined %} + ip: '{{ip}}' # Value filled by vnfdgen + {% endif %} + {% if key_filename is defined %} + key_filename: '{{key_filename}}' # Value filled by vnfdgen + {% endif %} + connection-point: + - name: xe0 + type: VPORT + vdu: + - id: proxgen-baremetal + name: proxgen-baremetal + description: prox stateless traffic verifier + external-interface: + - name: xe0 + virtual-interface: + type: PCI-PASSTHROUGH + # Substitution variables MUST be quoted. Otherwise Python can misinterpet them. + vpci: '{{ interfaces.xe0.vpci }}' # Value filled by vnfdgen + local_iface_name: '{{ interfaces.xe0.local_iface_name }}' # Value filled by vnfdgen + local_ip: '{{ interfaces.xe0.local_ip }}' # Value filled by vnfdgen + driver: '{{ interfaces.xe0.driver}}' # Value filled by vnfdgen + dst_ip: '{{ interfaces.xe0.dst_ip }}' # Value filled by vnfdgen + local_mac: '{{ interfaces.xe0.local_mac }}' # Value filled by vnfdgen + dst_mac: '{{ interfaces.xe0.dst_mac }}' # Value filled by vnfdgen + bandwidth: 10 Gbps + vnfd-connection-point-ref: xe0 + benchmark: + kpi: + - rx_throughput_fps + - tx_throughput_fps + - tx_throughput_mbps + - rx_throughput_mbps + - in_packets + - out_packets |