aboutsummaryrefslogtreecommitdiffstats
path: root/samples/vnf_samples/nsut/prox/configs/handle_lw_aftr-4.cfg
diff options
context:
space:
mode:
authorDanielMartinBuckley <daniel.m.buckley@intel.com>2017-10-11 12:05:54 +0100
committerRoss Brattain <ross.b.brattain@intel.com>2017-12-14 04:15:16 +0000
commit75a59e199f7576511de81800c42c241f092a8271 (patch)
treea782812539183716801fb18ce0460ecf3fc8e483 /samples/vnf_samples/nsut/prox/configs/handle_lw_aftr-4.cfg
parentaf65e938889ba7d6f68176864fed3f1a41f8f7e8 (diff)
NSB Prox LW_AFTR Test
JIRA: YARDSTICK-802 Addition of PROX LW_AFTR basked on PROX/DATS v037 test_104_lw_aftr.py - This support BM and Openstack Heat - This supports 4 Ports ONLY - Grafana Dashboards included - Code Coverage / Unit testing Change-Id: If2170ab458bf687256d5f1a1e840a3b9d2788ef7 Signed-off-by: Daniel MArtin Buckley <daniel.m.buckley@intel.com> Signed-off-by: Abhijit Sinha <abhijit.sinha@intel.com> (cherry picked from commit b9e394b2f0955c76f883021c4f65c136b80d9261)
Diffstat (limited to 'samples/vnf_samples/nsut/prox/configs/handle_lw_aftr-4.cfg')
-rw-r--r--samples/vnf_samples/nsut/prox/configs/handle_lw_aftr-4.cfg175
1 files changed, 175 insertions, 0 deletions
diff --git a/samples/vnf_samples/nsut/prox/configs/handle_lw_aftr-4.cfg b/samples/vnf_samples/nsut/prox/configs/handle_lw_aftr-4.cfg
new file mode 100644
index 000000000..60b5dc7ca
--- /dev/null
+++ b/samples/vnf_samples/nsut/prox/configs/handle_lw_aftr-4.cfg
@@ -0,0 +1,175 @@
+# 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.
+#
+#
+# This configuration creates the functionality of a lwAFTR component of the
+# lw4over6 architecture as described in IETF draft available at:
+# http://tools.ietf.org/id/draft-ietf-softwire-lw4over6-13.txt
+# The lwAFTR simply terminates IPv6 tunnels that carry IPv4 traffic for many
+# customers (one tunnel per customer). It consists of two tasks:
+# 1) ipv6_encap that encapsulates IPv4 packets into IPv6 and sends those tunnel
+# packets towards the customer tunnel endpoint. For this, it must use a
+# binding table that associates with each tunnel, a public IPv4 address and a
+# set of ports.
+# 2) ipv6_decap which handles packets arriving from the tunnel, checks they use
+# a source IPv4 address and port combination that matches their originating
+# tunnel (based on the same binding table as used by ipv6_encap), removes the
+# IPv6 encapsulation and sends them out its "internet" interface.
+# The binding table must be loaded in the [lua] section and assigned to the
+# tasks using the "tun_bindings" parameter. This configuration loads its binding
+# table from the provided ip6_tun_bind_65k.lua.
+#
+
+[lua]
+bindings = dofile("ip6_tun_bind_65k.lua")
+
+[variables]
+$tun_hop_limit=5
+$local_ipv6=fe80:0000:0000:0000:0100:00ff:fe00:0000
+$lookup_port_mask=0xffc0
+$master =0
+$core_inet_0 =1
+$core_inet_1 =2
+$core_lwb4_0 =3
+$core_lwb4_1 =4
+
+[eal options]
+-n=4
+no-output=no ; disable DPDK debug output
+
+[port 0]
+name=inet_0
+mac=hardware
+rx desc=2048
+tx desc=2048
+promiscuous=yes
+
+[port 1]
+name=lwB4_0
+mac=hardware
+rx desc=2048
+tx desc=2048
+promiscuous=yes
+
+[port 2]
+name=inet_1
+mac=hardware
+rx desc=2048
+tx desc=2048
+promiscuous=yes
+
+[port 3]
+name=lwB4_1
+mac=hardware
+rx desc=2048
+tx desc=2048
+promiscuous=yes
+
+[defaults]
+mempool size=32K
+memcache size=512
+
+[global]
+start time=20
+name=lwAFTR
+
+[core $master]
+mode=master
+
+;*****************************************************************************************
+;##### Send Internet IPv4 traffic into IPv6 tunnels, according to binding table ####
+[core $core_inet_0]
+name=v6_encap
+task=0
+mode=ipv6_encap
+rx port=inet_0
+tx cores=${self}t1
+drop=no
+local ipv6=$local_ipv6
+tunnel hop limit=$tun_hop_limit
+lookup port mask=$lookup_port_mask
+tun_bindings=bindings
+
+name=tx_lwb4_0
+task=1
+mode=l2fwd
+dst mac=@@tester_p1
+rx ring=yes
+tx port=lwB4_0
+drop=no
+
+[core $core_inet_1]
+name=v6_encap
+task=0
+mode=ipv6_encap
+rx port=inet_1
+tx cores=${self}t1
+drop=no
+local ipv6=$local_ipv6
+tunnel hop limit=$tun_hop_limit
+lookup port mask=$lookup_port_mask
+tun_bindings=bindings
+
+name=tx_lwb4_1
+task=1
+mode=l2fwd
+dst mac=@@tester_p3
+rx ring=yes
+tx port=lwB4_1
+drop=no
+
+;*****************************************************************************************
+;##### Terminate IPv6 tunnels and transmit IPv4 out to Internet ####
+;# Binding table is checked to ensure src IPv4 address and port combo is allocated to the originating tunnel
+[core $core_lwb4_0]
+name=v6_decap
+task=0
+mode=ipv6_decap
+rx port=lwB4_0
+tx cores=${self}t1
+drop=no
+local ipv6=$local_ipv6
+tunnel hop limit=$tun_hop_limit
+lookup port mask=$lookup_port_mask
+tun_bindings=bindings
+
+name=tx_inet_0
+task=1
+mode=l2fwd
+dst mac=@@tester_p0
+rx ring=yes
+tx port=inet_0
+drop=no
+
+[core $core_lwb4_1]
+name=v6_decap
+task=0
+mode=ipv6_decap
+rx port=lwB4_1
+tx cores=${self}t1
+drop=no
+local ipv6=$local_ipv6
+tunnel hop limit=$tun_hop_limit
+lookup port mask=$lookup_port_mask
+tun_bindings=bindings
+
+name=tx_inet_1
+task=1
+mode=l2fwd
+dst mac=@@tester_p2
+rx ring=yes
+tx port=inet_1
+drop=no
+
+