diff options
Diffstat (limited to 'samples')
44 files changed, 1688 insertions, 346 deletions
diff --git a/samples/vnf_samples/nsut/prox/configs/gen_acl-2.cfg b/samples/vnf_samples/nsut/prox/configs/gen_acl-2.cfg index d612e4f56..816bb3297 100644 --- a/samples/vnf_samples/nsut/prox/configs/gen_acl-2.cfg +++ b/samples/vnf_samples/nsut/prox/configs/gen_acl-2.cfg @@ -1,35 +1,45 @@ -; 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. +# 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 +-n=4 no-output=no ; disable DPDK debug output [port 0] name=p0 -mac=00:00:00:00:00:01 +mac=hardware +promiscuous=yes + [port 1] name=p1 -mac=00:00:00:00:00:02 - +mac=hardware +promiscuous=yes [defaults] mempool size=4K +[variables] +$sut_mac0=@@dst_mac0 +$sut_mac1=@@dst_mac1 +$qinq_tag_inline="88 a8" + [global] start time=5 -name=ACL gen +name=Basic Gen + [core 0] mode=master @@ -40,7 +50,7 @@ mode=gen tx port=p0 bps=625000000 ; Ethernet + QinQ + IP + UDP -pkt inline= 00 00 00 00 00 01 70 00 00 00 00 01 88 a8 00 01 81 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 00 35 00 35 00 08 7c 21 FFFFFFFF +pkt inline=${sut_mac0} 70 00 00 00 00 01 ${qinq_tag_inline} 00 01 81 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 00 35 00 35 00 08 7c 21 FFFFFFFF ; svlan: [0,1] random=000000000000000X rand_offset=14 @@ -62,6 +72,7 @@ random=000000000000XXX00000000XXXXXXXXX rand_offset=42 lat pos=50 + [core 2] name=p1 task=0 @@ -69,7 +80,7 @@ mode=gen tx port=p1 bps=625000000 ; Ethernet + QinQ + IP + UDP -pkt inline=00 00 00 00 00 02 70 00 00 00 00 02 88 a8 00 01 81 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 00 35 00 35 00 08 7c 21 FFFFFFFF +pkt inline=${sut_mac1} 70 00 00 00 00 02 ${qinq_tag_inline} 00 01 81 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 00 35 00 35 00 08 7c 21 FFFFFFFF ; svlan: [0,1] random=000000000000000X rand_offset=14 @@ -90,3 +101,16 @@ rand_offset=23 random=000000000000XXX00000000XXXXXXXXX rand_offset=42 lat pos=50 + +[core 3] +name=rec 0 +task=0 +mode=lat +rx port=p0 + +[core 4] +name=rec 1 +task=0 +mode=lat +rx port=p1 + diff --git a/samples/vnf_samples/nsut/prox/configs/gen_acl-4.cfg b/samples/vnf_samples/nsut/prox/configs/gen_acl-4.cfg index 4d7fd1c24..49cf29ca5 100644 --- a/samples/vnf_samples/nsut/prox/configs/gen_acl-4.cfg +++ b/samples/vnf_samples/nsut/prox/configs/gen_acl-4.cfg @@ -1,40 +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. +# 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 +-n=4 no-output=no ; disable DPDK debug output [port 0] name=p0 -mac=00:00:00:00:00:01 +mac=hardware +promiscuous=yes + [port 1] name=p1 -mac=00:00:00:00:00:02 +mac=hardware +promiscuous=yes + [port 2] name=p2 -mac=00:00:00:00:00:03 +mac=hardware +promiscuous=yes + [port 3] name=p3 -mac=00:00:00:00:00:04 +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 +$qinq_tag_inline="88 a8" + [global] start time=5 -name=ACL gen +name=Basic ACL Gen x4 + [core 0] mode=master @@ -45,7 +62,7 @@ mode=gen tx port=p0 bps=625000000 ; Ethernet + QinQ + IP + UDP -pkt inline= 00 00 00 00 00 01 70 00 00 00 00 01 88 a8 00 01 81 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 00 35 00 35 00 08 7c 21 FFFFFFFF +pkt inline=${sut_mac0} 70 00 00 00 00 01 ${qinq_tag_inline} 00 01 81 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 00 35 00 35 00 08 7c 21 FFFFFFFF ; svlan: [0,1] random=000000000000000X rand_offset=14 @@ -65,7 +82,6 @@ rand_offset=23 ; dport: [0..511] random=000000000000XXX00000000XXXXXXXXX rand_offset=42 -lat pos=50 [core 2] name=p1 @@ -74,7 +90,7 @@ mode=gen tx port=p1 bps=625000000 ; Ethernet + QinQ + IP + UDP -pkt inline=00 00 00 00 00 02 70 00 00 00 00 02 88 a8 00 01 81 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 00 35 00 35 00 08 7c 21 FFFFFFFF +pkt inline=${sut_mac1} 70 00 00 00 00 02 ${qinq_tag_inline} 00 01 81 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 00 35 00 35 00 08 7c 21 FFFFFFFF ; svlan: [0,1] random=000000000000000X rand_offset=14 @@ -94,16 +110,15 @@ rand_offset=23 ; dport: [0..511] random=000000000000XXX00000000XXXXXXXXX rand_offset=42 -lat pos=50 [core 3] name=p2 task=0 mode=gen -tx port=p2 +tx port=p1 bps=625000000 ; Ethernet + QinQ + IP + UDP -pkt inline=00 00 00 00 00 03 70 00 00 00 00 03 88 a8 00 01 81 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 00 35 00 35 00 08 7c 21 FFFFFFFF +pkt inline=${sut_mac2} 70 00 00 00 00 02 ${qinq_tag_inline} 00 01 81 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 00 35 00 35 00 08 7c 21 FFFFFFFF ; svlan: [0,1] random=000000000000000X rand_offset=14 @@ -123,7 +138,6 @@ rand_offset=23 ; dport: [0..511] random=000000000000XXX00000000XXXXXXXXX rand_offset=42 -lat pos=50 [core 4] name=p3 @@ -132,7 +146,7 @@ mode=gen tx port=p3 bps=625000000 ; Ethernet + QinQ + IP + UDP -pkt inline=00 00 00 00 00 04 70 00 00 00 00 04 88 a8 00 01 81 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 00 35 00 35 00 08 7c 21 FFFFFFFF +pkt inline=${sut_mac3} 70 00 00 00 00 04 ${qinq_tag_inline} 00 01 81 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 00 35 00 35 00 08 7c 21 FFFFFFFF ; svlan: [0,1] random=000000000000000X rand_offset=14 @@ -152,4 +166,27 @@ rand_offset=23 ; dport: [0..511] random=000000000000XXX00000000XXXXXXXXX rand_offset=42 -lat pos=50 + +[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_multiflow-2.cfg b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_multiflow-2.cfg new file mode 100644 index 000000000..c1939c06c --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_multiflow-2.cfg @@ -0,0 +1,96 @@ +# Copyright (c) 2016-2017 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +#; + +[eal options] +-n=4 ; force number of memory channels +no-output=no ; disable DPDK debug output + +[variables] +$sut_mac0=@@dst_mac0 +$sut_mac1=@@dst_mac1 + +[port 0] +name=p0 +mac=hardware +rx desc=2048 +tx desc=2048 +promiscuous=yes + +[port 1] +name=p1 +mac=hardware +rx desc=2048 +tx desc=2048 +promiscuous=yes + +[defaults] +mempool size=4K + +[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 98 10 64 01 98 10 64 02 13 88 13 88 00 08 55 7b +; src_ip: 152.16.100.0/8 +random=0000XXX1 +rand_offset=29 +; dst_ip: 152.16.100.0/8 +random=0000XXX0 +rand_offset=33 +random=0001001110001XXX0001001110001XXX +rand_offset=34 + +[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 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d 98 10 28 01 98 10 28 02 13 88 13 88 00 08 55 7b +; src_ip: 152.16.40.0/8 +random=1001100000010000001010000000XXXX +rand_offset=26 +; dst_ip: 152.16.40.0/8 +random=1001100000010000001010000000XXXX +rand_offset=30 +random=0001001110001XXX0001001110001XXX +rand_offset=34 + + +[core 3] +name=rec 0 +task=0 +mode=lat +rx port=p0 +lat pos=42 + +[core 4] +name=rec 1 +task=0 +mode=lat +rx port=p1 +lat pos=42 diff --git a/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_multiflow-4.cfg b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_multiflow-4.cfg new file mode 100644 index 000000000..f1e158414 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_l2fwd_multiflow-4.cfg @@ -0,0 +1,147 @@ +# Copyright (c) 2016-2017 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +#; + +[eal options] +-n=4 ; force number of memory channels +no-output=no ; disable DPDK debug output + +[variables] +$sut_mac0=@@dst_mac0 +$sut_mac1=@@dst_mac1 +$sut_mac2=@@dst_mac2 +$sut_mac3=@@dst_mac3 + +[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 + +[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 98 10 64 01 98 10 64 02 13 88 13 88 00 08 55 7b +; src_ip: 152.16.100.0/8 +random=0000XXX1 +rand_offset=29 +; dst_ip: 152.16.100.0/8 +random=0000XXX0 +rand_offset=33 +random=0001001110001XXX0001001110001XXX +rand_offset=34 + +[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 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 08 55 7b +; src_ip: 152.16.100.0/8 +random=0000XXX1 +rand_offset=29 +; dst_ip: 152.16.100.0/8 +random=0000XXX0 +rand_offset=33 +random=0001001110001XXX0001001110001XXX +rand_offset=34 + +[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 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 08 55 7b +; src_ip: 152.16.100.0/8 +random=0000XXX1 +rand_offset=29 +; dst_ip: 152.16.100.0/8 +random=0000XXX0 +rand_offset=33 +random=0001001110001XXX0001001110001XXX +rand_offset=34 + +[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 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d 98 10 64 01 98 10 64 02 13 88 13 88 00 08 55 7b +; src_ip: 152.16.100.0/8 +random=0000XXX1 +rand_offset=29 +; dst_ip: 152.16.100.0/8 +random=0000XXX0 +rand_offset=33 +random=0001001110001XXX0001001110001XXX +rand_offset=34 + +[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_lb-4.cfg b/samples/vnf_samples/nsut/prox/configs/gen_lb-4.cfg new file mode 100644 index 000000000..4ac4f94d7 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/gen_lb-4.cfg @@ -0,0 +1,105 @@ +# Copyright (c) 2016-2017 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +#; + +[eal options] +-n=4 ; force number of memory channels +no-output=no ; disable DPDK debug output + +[variables] +$sut_mac0=@@dst_mac0 + +[port 0] +name=p0 +mac=hardware +rx desc=4096 +tx desc=4096 +promiscuous=yes + +[port 1] +name=p1 +mac=hardware +rx desc=4096 +tx desc=1024 +promiscuous=yes + +[port 2] +name=p2 +mac=hardware +rx desc=4096 +tx desc=1024 +promiscuous=yes + +[port 3] +name=p3 +mac=hardware +rx desc=4096 +tx desc=1024 +promiscuous=yes + +[defaults] +mempool size=16K + +[global] +start time=5 +name=Gen Load Balancing + +[core 0] +mode=master + +[core 1] +name=p0 +task=0 +mode=gen +tx port=p0 +bps=1250000000 +; Ethernet + IP + pseudo-UDP +pkt inline=${sut_mac0} 70 00 00 00 00 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d 00 00 00 01 00 00 00 02 13 88 13 88 00 08 55 7b +; src_ip: 10.x.x.x +random=101000000000XXXX0000XXXX000XXXXX +rand_offset=26 +; dst_ip: 10.x.x.x +random=101000000000XXXX0000XXXX000XXXXX +rand_offset=30 +; sport: [0..31] +; dport: [0..31] +random=00000000000XXXXX00000000000XXXXX +rand_offset=34 + +[core 2] +name=p0 +task=0 +mode=nop +rx port=p0 + +[core 3] +name=p1 +task=0 +mode=nop +rx port=p1 + +[core 4] +name=p2 +task=0 +mode=nop +rx port=p2 + +[core 5] +name=p3 +task=0 +mode=nop +rx port=p3 + + diff --git a/samples/vnf_samples/nsut/prox/configs/handle_acl-2.cfg b/samples/vnf_samples/nsut/prox/configs/handle_acl-2.cfg index 7213a6073..3b58bcf2c 100644 --- a/samples/vnf_samples/nsut/prox/configs/handle_acl-2.cfg +++ b/samples/vnf_samples/nsut/prox/configs/handle_acl-2.cfg @@ -1,17 +1,18 @@ -; 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. - +# 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] acl_table = dofile("acl_rules-2.lua") @@ -25,20 +26,24 @@ 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=65K memcache size=512 -qinq tag=0xa888 +qinq tag="0xa888" [global] start time=5 -name=ACL handle +name=ACL handle x2 [core 0] task=0 @@ -54,10 +59,11 @@ rx port=if0 tx cores=1t1 drop=no +name=l2fwd_if0 task=1 mode=l2fwd -dst mac=00:00:00:00:00:01 rx ring=yes +dst mac=@@tester_p0 tx port=if0 drop=no @@ -71,10 +77,11 @@ rx port=if1 tx cores=2t1 drop=no +name=l2fwd_if1 task=1 mode=l2fwd -dst mac=00:00:00:00:00:02 rx ring=yes +dst mac=@@tester_p1 tx port=if1 drop=no diff --git a/samples/vnf_samples/nsut/prox/configs/handle_acl-4.cfg b/samples/vnf_samples/nsut/prox/configs/handle_acl-4.cfg index 51a1f8f2e..88551b29f 100644 --- a/samples/vnf_samples/nsut/prox/configs/handle_acl-4.cfg +++ b/samples/vnf_samples/nsut/prox/configs/handle_acl-4.cfg @@ -43,11 +43,11 @@ tx desc=2048 [defaults] mempool size=65K memcache size=512 -qinq tag=0xa888 +qinq tag="0xa888" [global] start time=5 -name=ACL handle +name=ACL handle x4 [core 0] task=0 @@ -63,10 +63,11 @@ rx port=if0 tx cores=1t1 drop=no +name=l2fwd_if0 task=1 mode=l2fwd -dst mac=00:00:00:00:00:01 rx ring=yes +dst mac=@@tester_p0 tx port=if0 drop=no @@ -80,10 +81,11 @@ rx port=if1 tx cores=2t1 drop=no +name=l2fwd_if1 task=1 mode=l2fwd -dst mac=00:00:00:00:00:02 rx ring=yes +dst mac=@@tester_p1 tx port=if1 drop=no @@ -97,10 +99,11 @@ rx port=if2 tx cores=3t1 drop=no +name=l2fwd_if2 task=1 mode=l2fwd -dst mac=00:00:00:00:00:03 rx ring=yes +dst mac=@@tester_p2 tx port=if2 drop=no @@ -114,9 +117,10 @@ rx port=if3 tx cores=4t1 drop=no +name=l2fwd_if3 task=1 mode=l2fwd -dst mac=00:00:00:00:00:04 rx ring=yes +dst mac=@@tester_p3 tx port=if3 drop=no diff --git a/samples/vnf_samples/nsut/prox/configs/handle_l2fwd_multiflow-2.cfg b/samples/vnf_samples/nsut/prox/configs/handle_l2fwd_multiflow-2.cfg new file mode 100644 index 000000000..d4a4c89e4 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_l2fwd_multiflow-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. +# +#; + +[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 L2FWD Multiflow (2x) + +[core 0] +mode=master + +[core 1] +name=none +task=0 +mode=l2fwd +dst mac=@@tester_mac1 +rx port=if0 +tx port=if1 +drop=no + +[core 2] +name=none +task=0 +mode=l2fwd +dst mac=@@tester_mac0 +rx port=if1 +tx port=if0 +drop=no diff --git a/samples/vnf_samples/nsut/prox/configs/handle_l2fwd_multiflow-4.cfg b/samples/vnf_samples/nsut/prox/configs/handle_l2fwd_multiflow-4.cfg new file mode 100644 index 000000000..39dbda4cf --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_l2fwd_multiflow-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=Handle L2FWD Multiflow (4x) + +[core 0] +mode=master + +[core 1] +name=none +task=0 +mode=l2fwd +dst mac=@@tester_mac0 +rx port=if0 +tx port=if1 +drop=no + +[core 2] +name=none +task=0 +mode=l2fwd +dst mac=@@tester_mac1 +rx port=if1 +tx port=if0 +drop=no + +[core 3] +name=none +task=0 +mode=l2fwd +dst mac=@@tester_mac2 +rx port=if2 +tx port=if3 +drop=no + +[core 4] +name=none +task=0 +mode=l2fwd +dst mac=@@tester_mac3 +rx port=if3 +tx port=if2 +drop=no + diff --git a/samples/vnf_samples/nsut/prox/configs/handle_lb-4.cfg b/samples/vnf_samples/nsut/prox/configs/handle_lb-4.cfg new file mode 100644 index 000000000..b85e00b5c --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/handle_lb-4.cfg @@ -0,0 +1,107 @@ +# Copyright (c) 2016-2017 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +#; + +[eal options] +-n=4 +no-output=no ; disable DPDK debug output + +[lua] +dofile("tuples.lua") + +[port 0] +name=if0 +mac=hardware +rx desc=4096 +tx desc=2048 +promiscuous=yes + +[port 1] +name=if1 +mac=hardware +rx desc=2048 +tx desc=2048 +promiscuous=yes + +[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=13K +memcache size=512 +mempool size=16K + +[global] +start time=5 +name=Handle 5 Tuple Load Balance 1-to-4 + +[core 0] +mode=master + +[core 1] +name=Handle_LB +task=0 +mode=lb5tuple +rx port=if0 +tx cores=2,3,4,5 +drop=no + +[core 2] +name=TX_p0 +task=0 +mode=l2fwd +dst mac=@@p0 +rx ring=yes +tx port=if0 +drop=no + +[core 3] +name=TX_p1 +task=0 +mode=l2fwd +dst mac=@@p1 +rx ring=yes +tx port=if1 +drop=no + +[core 4] +name=TX_p2 +task=0 +mode=l2fwd +dst mac=@@p2 +rx ring=yes +tx port=if2 +drop=no + +[core 5] +name=TX_p3 +task=0 +mode=l2fwd +dst mac=@@p3 +rx ring=yes +tx port=if3 +drop=no + diff --git a/samples/vnf_samples/nsut/prox/configs/tuples.lua b/samples/vnf_samples/nsut/prox/configs/tuples.lua new file mode 100644 index 000000000..431125082 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/configs/tuples.lua @@ -0,0 +1,45 @@ +-- +-- Dataplane Automated Testing System +-- +-- Copyright (c) 2015-2017, Intel Corporation. +-- All rights reserved. +-- +-- Redistribution and use in source and binary forms, with or without +-- modification, are permitted provided that the following conditions +-- are met: +-- +-- * Redistributions of source code must retain the above copyright +-- notice, this list of conditions and the following disclaimer. +-- * Redistributions in binary form must reproduce the above copyright +-- notice, this list of conditions and the following disclaimer in +-- the documentation and/or other materials provided with the +-- distribution. +-- * Neither the name of Intel Corporation nor the names of its +-- contributors may be used to endorse or promote products derived +-- from this software without specific prior written permission. +-- +-- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +-- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +-- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +-- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +-- OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +-- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +-- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +-- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +-- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +-- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +-- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +-- + +tuples = {}; + +for i = 0,2^23-1 do + tuples[i] = {if_out = i%4, + ip_src = i%2^5, + ip_dst = ((i-i%2^5)/2^5)%2^5, + port_src = ((i-i%2^10)/2^10)%2^5, + port_dst = ((i-i%2^15)/2^15)%2^5, + proto = ((i-i%2^20)/2^20)%2^3 * 2^5, + } +end + diff --git a/samples/vnf_samples/nsut/prox/prox-tg-topology-1.yaml b/samples/vnf_samples/nsut/prox/prox-tg-topology-1.yaml index ee7909b3b..10902a7b8 100644 --- a/samples/vnf_samples/nsut/prox/prox-tg-topology-1.yaml +++ b/samples/vnf_samples/nsut/prox/prox-tg-topology-1.yaml @@ -26,7 +26,7 @@ nsd:nsd-catalog: vnfd-id-ref: vnf__0 VNF model: ../../vnf_descriptors/prox_vnf-1.yaml vld: - - id: uplink + - id: uplink_0 name: tg__0 to vnf__0 link 1 type: ELAN vnfd-connection-point-ref: @@ -37,7 +37,7 @@ nsd:nsd-catalog: vnfd-connection-point-ref: xe0 vnfd-id-ref: vnf__0 - - id: downlink + - id: downlink_0 name: vnf__0 to tg__0 link 2 type: ELAN vnfd-connection-point-ref: diff --git a/samples/vnf_samples/nsut/prox/prox-tg-topology-2.yaml b/samples/vnf_samples/nsut/prox/prox-tg-topology-2.yaml index 9421935a9..11eed52fc 100644 --- a/samples/vnf_samples/nsut/prox/prox-tg-topology-2.yaml +++ b/samples/vnf_samples/nsut/prox/prox-tg-topology-2.yaml @@ -26,7 +26,7 @@ nsd:nsd-catalog: vnfd-id-ref: vnf__0 VNF model: ../../vnf_descriptors/prox_vnf-2.yaml vld: - - id: uplink + - id: uplink_0 name: tg__0 to vnf__0 link 1 type: ELAN vnfd-connection-point-ref: @@ -37,7 +37,7 @@ nsd:nsd-catalog: vnfd-connection-point-ref: xe0 vnfd-id-ref: vnf__0 - - id: downlink + - id: downlink_0 name: vnf__0 to tg__0 link 2 type: ELAN vnfd-connection-point-ref: 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 4b51998f4..fe91f3d8e 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 @@ -18,7 +18,15 @@ schema: "yardstick:task:0.1" scenarios: - type: NSPerf - traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + # + # In case where we know that all the packets generated by the generator + # will bw received. Then use prox_binsearch. + # + # In the case where some or all the packets generated by the generator may + # not be received. Please use prox_acl .. (This generates packets at + # a specific rate and does not change rate. + # + traffic_profile: ../../traffic_profiles/prox_acl.yaml topology: prox-tg-topology-2.yaml nodes: @@ -31,7 +39,8 @@ scenarios: prox_config: "configs/handle_acl-2.cfg" prox_args: "-t": "" - prox_files: "configs/acl_rules-2.lua" + prox_files: + "configs/acl_rules-2.lua": "" tg__0: prox_path: /root/dppd-PROX-v037/build/prox @@ -43,10 +52,10 @@ scenarios: runner: type: Duration # we kill after duration, independent of test duration, so set this high - duration: 100 + duration: 500 context: type: Node name: yardstick nfvi_type: baremetal - file: prox-baremetal-2.yml + file: /etc/prox-baremetal-2.yml 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 ef9eaf79b..e908dd93f 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 @@ -18,7 +18,15 @@ schema: "yardstick:task:0.1" scenarios: - type: NSPerf - traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + # + # In case where we know that all the packets generated by the generator + # will bw received. Then use prox_binsearch. + # + # In the case where some or all the packets generated by the generator may + # not be received. Please use prox_acl .. (This generates packets at + # a specific rate and does not change rate. + # + traffic_profile: ../../traffic_profiles/prox_acl.yaml topology: prox-tg-topology-4.yaml nodes: @@ -31,7 +39,8 @@ scenarios: prox_config: "configs/handle_acl-4.cfg" prox_args: "-t": "" - prox_files: "configs/acl_rules-2.lua" + prox_files: + "configs/acl_rules-2.lua": "" tg__0: prox_path: /root/dppd-PROX-v037/build/prox @@ -43,10 +52,10 @@ scenarios: runner: type: Duration # we kill after duration, independent of test duration, so set this high - duration: 100 + duration: 300 context: type: Node name: yardstick nfvi_type: baremetal - file: prox-baremetal-4.yml + file: /etc/prox-baremetal-4.yml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_multiflow-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_multiflow-2.yaml new file mode 100644 index 000000000..0626c070f --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_multiflow-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__0: trafficgen_1.yardstick + vnf__0: vnf.yardstick + + options: + vnf__0: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l2fwd_multiflow-2.cfg" + prox_args: + "-t": "" + + tg__0: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l2fwd_multiflow-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/prox-baremetal-2.yml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_multiflow-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_multiflow-4.yaml new file mode 100644 index 000000000..c429a4432 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_l2fwd_multiflow-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__0: trafficgen_1.yardstick + vnf__0: vnf.yardstick + + options: + vnf__0: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l2fwd_multiflow-4.cfg" + prox_args: + "-t": "" + + tg__0: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l2fwd_multiflow-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/prox-baremetal-4.yml diff --git a/samples/vnf_samples/nsut/prox/tc_prox_baremetal_lb-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_lb-4.yaml new file mode 100644 index 000000000..9852fd8e0 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_baremetal_lb-4.yaml @@ -0,0 +1,58 @@ +# 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 + + # This is a special traffic profile for Load Balancer + # Because what is transmitted for 1 port is distributed to the other ports evenly + # Only 1/4 of the transmiited packets is expected back. So this tolerates a much + # packet loss. + traffic_profile: ../../traffic_profiles/prox_lb.yaml + topology: prox-tg-topology-4.yaml + + nodes: + tg__0: trafficgen_1.yardstick + vnf__0: vnf.yardstick + + options: + vnf__0: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_lb-4.cfg" + prox_args: + "-t": "" + prox_files: + "configs/tuples.lua": "" + + tg__0: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_lb-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/prox-baremetal-4.yml 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 7834a5c9b..1307b6870 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_heat_context.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context.yaml @@ -22,8 +22,8 @@ scenarios: topology: prox-tg-topology-2.yaml nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick options: vnf__0: @@ -46,7 +46,7 @@ scenarios: context: name: yardstick - image: yardstick-image-prox-dpdk1702 + image: yardstick-samplevnfs user: ubuntu flavor: # name: yardstick-dpdk-flavor @@ -63,20 +63,17 @@ context: policy: "availability" servers: - vnf: + vnf_0: floating_ip: true placement: "pgrp1" - trafficgen_1: + tg_0: floating_ip: true placement: "pgrp1" networks: mgmt: cidr: '10.0.1.0/24' - external_network: "yardstick-public" - xe0: + uplink_0: cidr: '10.0.2.0/24' - vld_id: downlink - xe1: + downlink_0: cidr: '10.0.3.0/24' - vld_id: uplink 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 123cec976..52ebe8cf9 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 @@ -18,23 +18,32 @@ schema: "yardstick:task:0.1" scenarios: - type: NSPerf - traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + # + # In case where we know that all the packets generated by the generator + # will bw received. Then use prox_binsearch. + # + # In the case where some or all the packets generated by the generator may + # not be received. Please use prox_heat_acl .. (This generates packets at + # a specific rate and does not change rate. + # + traffic_profile: ../../traffic_profiles/prox_heat_acl.yaml topology: prox-tg-topology-2.yaml nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick options: vnf__0: - prox_path: /root/dppd-PROX-v037/build/prox + prox_path: /root/dppd-PROX-v037.1/build/prox prox_config: "configs/handle_acl-2.cfg" prox_args: "-t": "" - prox_files: "configs/acl_rules-2.lua" + prox_files: + "configs/acl_rules-2.lua" : "" tg__0: - prox_path: /root/dppd-PROX-v037/build/prox + prox_path: /root/dppd-PROX-v037.1/build/prox prox_config: "configs/gen_acl-2.cfg" prox_args: "-e": "" @@ -43,20 +52,19 @@ scenarios: runner: type: Duration # we kill after duration, independent of test duration, so set this high - duration: 100 + duration: 300 context: name: yardstick - image: yardstick-image-prox-dpdk1702 + image: yardstick-samplevnfs user: ubuntu flavor: - name: yardstick-dpdk-flavor - vcpus: 3 + vcpus: 10 ram: 20480 - disk: 4 + disk: 6 extra_specs: hw:cpu_sockets: 1 - hw:cpu_cores: 3 + hw:cpu_cores: 10 hw:cpu_threads: 1 # hw:mem_page_size: large placement_groups: @@ -64,27 +72,24 @@ context: policy: "availability" servers: - vnf: + vnf_0: floating_ip: true placement: "pgrp1" - trafficgen_1: + tg_0: floating_ip: true placement: "pgrp1" networks: mgmt: cidr: '10.0.1.0/24' - external_network: "yardstick-public" - xe0: + uplink_0: cidr: '10.0.2.0/24' - vld_id: downlink - allowed_address_pairs: - - ip_address: - '0.0.0.0/0' - xe1: + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' + downlink_0: cidr: '10.0.3.0/24' - vld_id: uplink - allowed_address_pairs: - - ip_address: - '0.0.0.0/0' + gateway_ip: 'null' + port_security_enabled: False + enable_dhcp: 'false' 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 9ede5a060..06afa35f5 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 @@ -18,12 +18,20 @@ schema: "yardstick:task:0.1" scenarios: - type: NSPerf - traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + # + # In case where we know that all the packets generated by the generator + # will bw received. Then use prox_binsearch. + # + # In the case where some or all the packets generated by the generator may + # not be received. Please use prox_heat_acl .. (This generates packets at + # a specific rate and does not change rate. + # + traffic_profile: ../../traffic_profiles/prox_heat_acl.yaml topology: prox-tg-topology-4.yaml nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick options: vnf__0: @@ -43,20 +51,19 @@ scenarios: runner: type: Duration # we kill after duration, independent of test duration, so set this high - duration: 100 + duration: 300 context: name: yardstick - image: yardstick-image-prox-dpdk1702 + image: yardstick-samplevnfs user: ubuntu flavor: - name: yardstick-dpdk-flavor - vcpus: 5 + vcpus: 10 ram: 20480 disk: 4 extra_specs: hw:cpu_sockets: 1 - hw:cpu_cores: 5 + hw:cpu_cores: 10 hw:cpu_threads: 1 # hw:mem_page_size: large placement_groups: @@ -64,38 +71,33 @@ context: policy: "availability" servers: - vnf: + vnf_0: floating_ip: true placement: "pgrp1" - trafficgen_1: + tg_0: floating_ip: true placement: "pgrp1" networks: mgmt: cidr: '10.0.1.0/24' - external_network: "yardstick-public" - xe0: + uplink_0: cidr: '10.0.2.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe1: + downlink_0: cidr: '10.0.3.0/24' - vld_id: uplink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe2: + uplink_1: cidr: '10.0.4.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe3: + downlink_1: cidr: '10.0.5.0/24' - vld_id: uplink allowed_address_pairs: - ip_address: '0.0.0.0/0' diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-1.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-1.yaml index a62fa5f2c..ab4c3a913 100644 --- a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-1.yaml +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_buffering-1.yaml @@ -22,8 +22,8 @@ scenarios: topology: prox-tg-topology-1.yaml nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick options: vnf__0: @@ -61,20 +61,18 @@ context: policy: "availability" servers: - vnf: + vnf_0: floating_ip: true placement: "pgrp1" - trafficgen_1: + tg_0: floating_ip: true placement: "pgrp1" networks: mgmt: cidr: '10.0.1.0/24' - external_network: "yardstick-public" - xe0: + uplink_0: cidr: '10.0.2.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-2-l3fwd-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-2-l3fwd-2.yaml new file mode 100644 index 000000000..af98984b6 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-2-l3fwd-2.yaml @@ -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. + +--- +schema: "yardstick:task:0.1" + +scenarios: +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick + + options: + vnf__0: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l2fwd-2.cfg" + prox_args: + "-t": "" + + tg__0: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l2fwd-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Search + # we kill after duration, independent of test duration, so set this high + interval: 5 + timeout: 300 +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-2.yaml + + nodes: + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick + + options: + vnf__0: + prox_path: /root/dppd-PROX-v037.1/build/prox + prox_config: "configs/handle_l3fwd-2.cfg" + prox_args: + "-t": "" + prox_files: + "configs/ipv4-2.lua" : "" + + tg__0: + prox_path: /root/dppd-PROX-v037.1/build/prox + prox_config: "configs/gen_l3fwd-2.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Search + # we kill after duration, independent of test duration, so set this high + interval: 5 + timeout: 300 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: yardstick-dpdk-flavor +# flavor: +# vcpus: 10 +# ram: 12288 +# disk: 6 +# extra_specs: +# hw:cpu_sockets: 1 +# hw:cpu_cores: 10 +# hw:cpu_threads: 1 + placement_groups: + pgrp1: + policy: "availability" + + servers: + vnf_0: + floating_ip: true + placement: "pgrp1" + tg_0: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + uplink_0: + cidr: '10.1.1.0/24' + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + downlink_0: + cidr: '10.1.1.0/24' + 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 index 6193fd3fb..2080935de 100644 --- 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 @@ -22,8 +22,8 @@ scenarios: topology: prox-tg-topology-2.yaml nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick options: vnf__0: @@ -61,21 +61,24 @@ context: policy: "availability" servers: - vnf: + vnf_0: floating_ip: true placement: "pgrp1" - trafficgen_1: + tg_0: floating_ip: true placement: "pgrp1" networks: mgmt: cidr: '10.0.1.0/24' - xe0: + uplink_0: cidr: '10.1.1.0/24' gateway_ip: 'null' port_security_enabled: False - xe1: + enable_dhcp: 'false' + downlink_0: cidr: '10.1.1.0/24' gateway_ip: 'null' port_security_enabled: False + enable_dhcp: 'false' + diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-4-l3fwd-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-4-l3fwd-4.yaml new file mode 100644 index 000000000..b5b98eae0 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd-4-l3fwd-4.yaml @@ -0,0 +1,124 @@ +# 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__0: tg_0.yardstick + vnf__0: vnf_0.yardstick + + options: + vnf__0: + 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__0: + prox_path: /root/dppd-PROX-v037.1/build/prox + prox_config: "configs/gen_l3fwd-4.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Search + interval: 5 + timeout: 300 + +- + type: NSPerf + traffic_profile: ../../traffic_profiles/prox_binsearch.yaml + topology: prox-tg-topology-4.yaml + + nodes: + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick + + options: + vnf__0: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/handle_l2fwd-4.cfg" + prox_args: + "-t": "" + + tg__0: + prox_path: /root/dppd-PROX-v037/build/prox + prox_config: "configs/gen_l2fwd-4.cfg" + prox_args: + "-e": "" + "-t": "" + + runner: + type: Search + interval: 5 + timeout: 300 + +context: + name: yardstick + image: yardstick-samplevnfs + user: ubuntu + flavor: yardstick-dpdk-flavor +# 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_0: + floating_ip: true + placement: "pgrp1" + tg_0: + floating_ip: true + placement: "pgrp1" + + networks: + mgmt: + cidr: '10.0.1.0/24' + uplink_0: + cidr: '10.0.2.0/24' + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + downlink_0: + cidr: '10.0.3.0/24' + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + uplink_1: + cidr: '10.0.4.0/24' + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + downlink_1: + cidr: '10.0.5.0/24' + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' 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 index 881bcfb0e..43006175e 100644 --- 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 @@ -22,8 +22,8 @@ scenarios: topology: prox-tg-topology-4.yaml nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick options: vnf__0: @@ -61,37 +61,33 @@ context: policy: "availability" servers: - vnf: + vnf_0: floating_ip: true placement: "pgrp1" - trafficgen_1: + tg_0: floating_ip: true placement: "pgrp1" networks: mgmt: cidr: '10.0.1.0/24' - xe0: + uplink_0: cidr: '10.0.2.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe1: + downlink_0: cidr: '10.0.3.0/24' - vld_id: uplink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe2: + uplink_1: cidr: '10.0.4.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe3: + downlink_1: cidr: '10.0.5.0/24' - vld_id: uplink allowed_address_pairs: - ip_address: '0.0.0.0/0' diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_multiflow-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_multiflow-2.yaml new file mode 100644 index 000000000..f7f962fd4 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_multiflow-2.yaml @@ -0,0 +1,86 @@ +# 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__0: trafficgen_1.yardstick + vnf__0: vnf.yardstick + + options: + vnf__0: + prox_path: /root/dppd-PROX-v037.1/build/prox + prox_config: "configs/handle_l2fwd_multiflow-2.cfg" + prox_args: + "-t": "" + + tg__0: + prox_path: /root/dppd-PROX-v037.1/build/prox + prox_config: "configs/gen_l2fwd_multiflow-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: 8 + ram: 20480 + disk: 10 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 8 + 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: '152.16.100.0/24' + vld_id: downlink + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe1: + cidr: '152.16.40.0/24' + vld_id: uplink + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' diff --git a/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_multiflow-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_multiflow-4.yaml new file mode 100644 index 000000000..798b10317 --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_l2fwd_multiflow-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__0: trafficgen_1.yardstick + vnf__0: vnf.yardstick + + options: + vnf__0: + prox_path: /root/dppd-PROX-v037.1/build/prox + prox_config: "configs/handle_l2fwd_multiflow-4.cfg" + prox_args: + "-t": "" + + tg__0: + prox_path: /root/dppd-PROX-v037.1/build/prox + prox_config: "configs/gen_l2fwd_multiflow-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: 12 + ram: 20480 + disk: 10 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 12 + 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: '152.16.100.0/24' + vld_id: downlink + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe1: + cidr: '152.16.40.0/24' + vld_id: uplink + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe2: + cidr: '152.16.101.0/24' + vld_id: downlink + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe3: + cidr: '152.16.41.0/24' + vld_id: uplink + 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 index 48a85d4f3..2ed7eeb77 100644 --- 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 @@ -22,8 +22,8 @@ scenarios: topology: prox-tg-topology-2.yaml nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick options: vnf__0: @@ -61,25 +61,23 @@ context: policy: "availability" servers: - vnf: + vnf_0: floating_ip: true placement: "pgrp1" - trafficgen_1: + tg_0: floating_ip: true placement: "pgrp1" networks: mgmt: cidr: '10.0.1.0/24' - xe0: + uplink_0: cidr: '10.0.2.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe1: + downlink_0: cidr: '10.0.3.0/24' - vld_id: uplink 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 index 5bc06e8c2..e85a4111a 100644 --- 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 @@ -22,8 +22,8 @@ scenarios: topology: prox-tg-topology-4.yaml nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick options: vnf__0: @@ -61,37 +61,33 @@ context: policy: "availability" servers: - vnf: + vnf_0: floating_ip: true placement: "pgrp1" - trafficgen_1: + tg_0: floating_ip: true placement: "pgrp1" networks: mgmt: cidr: '10.0.1.0/24' - xe0: + uplink_0: cidr: '10.0.2.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe1: + downlink_0: cidr: '10.0.3.0/24' - vld_id: uplink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe2: + uplink_1: cidr: '10.0.4.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe3: + downlink_1: cidr: '10.0.5.0/24' - vld_id: uplink 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 index c7a7aa881..0731be5da 100644 --- 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 @@ -22,8 +22,8 @@ scenarios: topology: prox-tg-topology-2.yaml nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick options: vnf__0: @@ -64,26 +64,23 @@ context: policy: "availability" servers: - vnf: + vnf_0: floating_ip: true placement: "pgrp1" - trafficgen_1: + tg_0: floating_ip: true placement: "pgrp1" networks: mgmt: cidr: '10.0.1.0/24' - external_network: "yardstick-public" - xe0: + uplink_0: cidr: '10.0.2.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe1: + downlink_0: cidr: '10.0.3.0/24' - vld_id: uplink 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 index f5172d545..fc24db517 100644 --- 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 @@ -22,8 +22,8 @@ scenarios: topology: prox-tg-topology-4.yaml nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick options: vnf__0: @@ -64,38 +64,33 @@ context: policy: "availability" servers: - vnf: + vnf_0: floating_ip: true placement: "pgrp1" - trafficgen_1: + tg_0: floating_ip: true placement: "pgrp1" networks: mgmt: cidr: '10.0.1.0/24' - external_network: "yardstick-public" - xe0: + uplink_0: cidr: '10.0.2.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe1: + downlink_0: cidr: '10.0.3.0/24' - vld_id: uplink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe2: + uplink_1: cidr: '10.0.4.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe3: + downlink_1: cidr: '10.0.5.0/24' - vld_id: uplink 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_lb-4.yaml b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_lb-4.yaml new file mode 100644 index 000000000..95232f6ce --- /dev/null +++ b/samples/vnf_samples/nsut/prox/tc_prox_heat_context_lb-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_lb.yaml + topology: prox-tg-topology-4.yaml + + nodes: + tg__0: trafficgen_1.yardstick + vnf__0: vnf.yardstick + + options: + vnf__0: + prox_path: /root/dppd-PROX-v037.1/build/prox + prox_config: "configs/handle_lb-4.cfg" + prox_args: + "-t": "" + prox_files: + "configs/tuples.lua": "" + + tg__0: + prox_path: /root/dppd-PROX-v037.1/build/prox + prox_config: "configs/gen_lb-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: 12 + ram: 40960 + disk: 4 + extra_specs: + hw:cpu_sockets: 1 + hw:cpu_cores: 12 + 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.1.1.0/24' + xe0: + cidr: '10.2.1.0/24' + vld_id: downlink + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe1: + cidr: '10.2.1.0/24' + vld_id: uplink + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe2: + cidr: '10.2.1.0/24' + vld_id: downlink + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + xe3: + cidr: '10.2.1.0/24' + vld_id: uplink + allowed_address_pairs: + - ip_address: + '0.0.0.0/0' + 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 index 10d0984c0..fe8237e2b 100644 --- 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 @@ -22,8 +22,8 @@ scenarios: topology: prox-tg-topology-2.yaml nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick options: vnf__0: @@ -62,26 +62,23 @@ context: policy: "availability" servers: - vnf: + vnf_0: floating_ip: true placement: "pgrp1" - trafficgen_1: + tg_0: floating_ip: true placement: "pgrp1" networks: mgmt: cidr: '10.0.1.0/24' - external_network: "yardstick-public" - xe0: + uplink_0: cidr: '10.0.2.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe1: + downlink_0: cidr: '10.0.3.0/24' - vld_id: uplink 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 index 75555ccc6..ca1b65cf2 100644 --- 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 @@ -22,8 +22,8 @@ scenarios: topology: prox-tg-topology-4.yaml nodes: - tg__0: trafficgen_1.yardstick - vnf__0: vnf.yardstick + tg__0: tg_0.yardstick + vnf__0: vnf_0.yardstick options: vnf__0: @@ -62,38 +62,33 @@ context: policy: "availability" servers: - vnf: + vnf_0: floating_ip: true placement: "pgrp1" - trafficgen_1: + tg_0: floating_ip: true placement: "pgrp1" networks: mgmt: cidr: '10.0.1.0/24' - external_network: "yardstick-public" - xe0: + uplink_0: cidr: '10.0.2.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe1: + downlink_0: cidr: '10.0.3.0/24' - vld_id: uplink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe2: + uplink_1: cidr: '10.0.4.0/24' - vld_id: downlink allowed_address_pairs: - ip_address: '0.0.0.0/0' - xe3: + downlink_1: cidr: '10.0.5.0/24' - vld_id: uplink allowed_address_pairs: - ip_address: '0.0.0.0/0' diff --git a/samples/vnf_samples/traffic_profiles/prox_acl.yaml b/samples/vnf_samples/traffic_profiles/prox_acl.yaml index b306739bc..1d1752b80 100644 --- a/samples/vnf_samples/traffic_profiles/prox_acl.yaml +++ b/samples/vnf_samples/traffic_profiles/prox_acl.yaml @@ -15,14 +15,14 @@ schema: "nsb:traffic_profile:0.1" name: prox_acl -description: ACL max no-drop throughput over given packet sizes +description: ACL throughput over given packet sizes traffic_profile: traffic_type: ProxACLProfile tolerated_loss: 100.0 - test_precision: 1.0 + test_precision: 0.001 packet_sizes: [64] duration: 5 lower_bound: 0.0 upper_bound: 100.0 - + attempts: 20 diff --git a/samples/vnf_samples/traffic_profiles/prox_heat_acl.yaml b/samples/vnf_samples/traffic_profiles/prox_heat_acl.yaml new file mode 100644 index 000000000..0dc19ee49 --- /dev/null +++ b/samples/vnf_samples/traffic_profiles/prox_heat_acl.yaml @@ -0,0 +1,28 @@ +# 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_heat_acl +description: ACL throughput over given packet sizes + +traffic_profile: + traffic_type: ProxACLProfile + tolerated_loss: 100.0 + test_precision: 0.001 + packet_sizes: [64] + duration: 5 + lower_bound: 0.0 + upper_bound: 0.5 + attempts: 20
\ No newline at end of file diff --git a/samples/vnf_samples/traffic_profiles/prox_lb.yaml b/samples/vnf_samples/traffic_profiles/prox_lb.yaml new file mode 100644 index 000000000..1461bc399 --- /dev/null +++ b/samples/vnf_samples/traffic_profiles/prox_lb.yaml @@ -0,0 +1,27 @@ +# 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_lb +description: Load Balancer 1-to-4 port + +traffic_profile: + traffic_type: ProxBinSearchProfile + tolerated_loss: 80.0 + test_precision: 0.01 + packet_sizes: [64] + duration: 5 + 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 index 3b3739fc5..13c4e9db7 100644 --- a/samples/vnf_samples/vnf_descriptors/prox_vnf-1.yaml +++ b/samples/vnf_samples/vnf_descriptors/prox_vnf-1.yaml @@ -32,9 +32,6 @@ vnfd:vnfd-catalog: {% 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 diff --git a/samples/vnf_samples/vnf_descriptors/prox_vnf-2.yaml b/samples/vnf_samples/vnf_descriptors/prox_vnf-2.yaml index 75c16ba5a..13c4e9db7 100644 --- a/samples/vnf_samples/vnf_descriptors/prox_vnf-2.yaml +++ b/samples/vnf_samples/vnf_descriptors/prox_vnf-2.yaml @@ -32,11 +32,6 @@ vnfd:vnfd-catalog: {% if key_filename is defined %} key_filename: '{{key_filename}}' # Value filled by vnfdgen {% endif %} - connection-point: - - name: xe0 - type: VPORT - - name: xe1 - type: VPORT vdu: - id: proxvnf-baremetal name: proxvnf-baremetal diff --git a/samples/vnf_samples/vnf_descriptors/prox_vnf-4.yaml b/samples/vnf_samples/vnf_descriptors/prox_vnf-4.yaml index 75c16ba5a..13c4e9db7 100644 --- a/samples/vnf_samples/vnf_descriptors/prox_vnf-4.yaml +++ b/samples/vnf_samples/vnf_descriptors/prox_vnf-4.yaml @@ -32,11 +32,6 @@ vnfd:vnfd-catalog: {% if key_filename is defined %} key_filename: '{{key_filename}}' # Value filled by vnfdgen {% endif %} - connection-point: - - name: xe0 - type: VPORT - - name: xe1 - type: VPORT vdu: - id: proxvnf-baremetal name: proxvnf-baremetal diff --git a/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-1.yaml b/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-1.yaml index b186b4cb0..730143972 100644 --- a/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-1.yaml +++ b/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-1.yaml @@ -32,27 +32,10 @@ vnfd:vnfd-catalog: {% 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 diff --git a/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-2.yaml b/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-2.yaml index e90a8d684..20bd12ca2 100644 --- a/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-2.yaml +++ b/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-2.yaml @@ -32,41 +32,10 @@ vnfd:vnfd-catalog: {% if key_filename is defined %} key_filename: '{{key_filename}}' # Value filled by vnfdgen {% endif %} - connection-point: - - name: xe0 - type: VPORT - - name: xe1 - 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 - - name: xe1 - virtual-interface: - type: PCI-PASSTHROUGH - vpci: '{{ interfaces.xe1.vpci }}' # Value filled by vnfdgen - local_iface_name: '{{ interfaces.xe1.local_iface_name }}' # Value filled by vnfdgen - local_ip: '{{ interfaces.xe1.local_ip }}' # Value filled by vnfdgen - driver: '{{ interfaces.xe1.driver}}' # Value filled by vnfdgen - dst_ip: '{{ interfaces.xe1.dst_ip }}' # Value filled by vnfdgen - local_mac: '{{ interfaces.xe1.local_mac }}' # Value filled by vnfdgen - dst_mac: '{{ interfaces.xe1.dst_mac }}' # Value filled by vnfdgen - bandwidth: 10 Gbps - vnfd-connection-point-ref: xe1 benchmark: kpi: diff --git a/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-4.yaml b/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-4.yaml index afea337af..20bd12ca2 100644 --- a/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-4.yaml +++ b/samples/vnf_samples/vnf_descriptors/tg_prox_tpl-4.yaml @@ -32,65 +32,10 @@ vnfd:vnfd-catalog: {% if key_filename is defined %} key_filename: '{{key_filename}}' # Value filled by vnfdgen {% endif %} - connection-point: - - name: xe0 - type: VPORT - - name: xe1 - 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 - - name: xe1 - virtual-interface: - type: PCI-PASSTHROUGH - vpci: '{{ interfaces.xe1.vpci }}' # Value filled by vnfdgen - local_iface_name: '{{ interfaces.xe1.local_iface_name }}' # Value filled by vnfdgen - local_ip: '{{ interfaces.xe1.local_ip }}' # Value filled by vnfdgen - driver: '{{ interfaces.xe1.driver}}' # Value filled by vnfdgen - dst_ip: '{{ interfaces.xe1.dst_ip }}' # Value filled by vnfdgen - local_mac: '{{ interfaces.xe1.local_mac }}' # Value filled by vnfdgen - dst_mac: '{{ interfaces.xe1.dst_mac }}' # Value filled by vnfdgen - bandwidth: 10 Gbps - vnfd-connection-point-ref: xe1 - - name: xe2 - virtual-interface: - type: PCI-PASSTHROUGH - vpci: '{{ interfaces.xe2.vpci }}' # Value filled by vnfdgen - local_iface_name: '{{ interfaces.xe2.local_iface_name }}' # Value filled by vnfdgen - local_ip: '{{ interfaces.xe2.local_ip }}' # Value filled by vnfdgen - driver: '{{ interfaces.xe2.driver}}' # Value filled by vnfdgen - dst_ip: '{{ interfaces.xe2.dst_ip }}' # Value filled by vnfdgen - local_mac: '{{ interfaces.xe2.local_mac }}' # Value filled by vnfdgen - dst_mac: '{{ interfaces.xe2.dst_mac }}' # Value filled by vnfdgen - bandwidth: 10 Gbps - vnfd-connection-point-ref: xe2 - - name: xe3 - virtual-interface: - type: PCI-PASSTHROUGH - vpci: '{{ interfaces.xe3.vpci }}' # Value filled by vnfdgen - local_iface_name: '{{ interfaces.xe3.local_iface_name }}' # Value filled by vnfdgen - local_ip: '{{ interfaces.xe3.local_ip }}' # Value filled by vnfdgen - driver: '{{ interfaces.xe3.driver}}' # Value filled by vnfdgen - dst_ip: '{{ interfaces.xe3.dst_ip }}' # Value filled by vnfdgen - local_mac: '{{ interfaces.xe3.local_mac }}' # Value filled by vnfdgen - dst_mac: '{{ interfaces.xe3.dst_mac }}' # Value filled by vnfdgen - bandwidth: 10 Gbps - vnfd-connection-point-ref: xe3 benchmark: kpi: |