diff options
author | Deepak S <deepak.s@linux.intel.com> | 2017-04-17 23:03:43 -0700 |
---|---|---|
committer | Deepak S <deepak.s@linux.intel.com> | 2017-04-19 03:13:12 -0700 |
commit | f0bfb2b0c8467154990b49beafb991b7515e37e3 (patch) | |
tree | f713c75bca8048cae1d73ddfc2ce874bac3cbb4f /VNFs/vCGNAPT/config | |
parent | 421bd97023e853a9e87d16e100b23bf3c60a9188 (diff) |
vCGNAPT VNF initial check-in
JIRA: SAMPLEVNF-5
The vCGNAPT implementation contains following features:
• Static and dynamic Network address translation.
• Static and dynamic Network address and port translation
• ARP (request, response, gratuitous)
• ICMP (terminal echo, echo response, pass-through)
• ICMPv6 and ND
• UDP, TCP and ICMP protocol pass-through
• Multithread support and Multiple physical port support
• Limiting max ports per client
• Limiting max clients per public IP address
• Live Session tracking to NAT flow
• NAT64 – connectivity between IPv6 access network to IPv4 data
• PCP - Port Control protocol
• SIP functionality
• FTP functionality
Change-Id: I5ebb44ae60e32dd6da5e793efd91a6831a4d30a7
Signed-off-by: Deepak S <deepak.s@linux.intel.com>
Diffstat (limited to 'VNFs/vCGNAPT/config')
28 files changed, 2392 insertions, 0 deletions
diff --git a/VNFs/vCGNAPT/config/arp_hwlb-2P-1T-ipv6.cfg b/VNFs/vCGNAPT/config/arp_hwlb-2P-1T-ipv6.cfg new file mode 100644 index 00000000..34691d4f --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb-2P-1T-ipv6.cfg @@ -0,0 +1,44 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = CGNAPT +core = 3 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = TXQ0.1 TXQ1.1 SWQ0 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) diff --git a/VNFs/vCGNAPT/config/arp_hwlb-2P-1T.cfg b/VNFs/vCGNAPT/config/arp_hwlb-2P-1T.cfg new file mode 100644 index 00000000..f0127584 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb-2P-1T.cfg @@ -0,0 +1,44 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = CGNAPT +core = 3 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = TXQ0.1 TXQ1.1 SWQ0 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) diff --git a/VNFs/vCGNAPT/config/arp_hwlb-2P-2T-ipv6.cfg b/VNFs/vCGNAPT/config/arp_hwlb-2P-2T-ipv6.cfg new file mode 100644 index 00000000..f9f9935f --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb-2P-2T-ipv6.cfg @@ -0,0 +1,61 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = CGNAPT +core = 3 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = TXQ0.1 TXQ1.1 SWQ0 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE4] +type = CGNAPT +core = 4 +pktq_in = RXQ0.1 RXQ1.1 +pktq_out = TXQ0.2 TXQ1.2 SWQ1 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) diff --git a/VNFs/vCGNAPT/config/arp_hwlb-2P-2T.cfg b/VNFs/vCGNAPT/config/arp_hwlb-2P-2T.cfg new file mode 100644 index 00000000..6dd7576b --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb-2P-2T.cfg @@ -0,0 +1,61 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = CGNAPT +core = 3 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = TXQ0.1 TXQ1.1 SWQ0 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE4] +type = CGNAPT +core = 4 +pktq_in = RXQ0.1 RXQ1.1 +pktq_out = TXQ0.2 TXQ1.2 SWQ1 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) diff --git a/VNFs/vCGNAPT/config/arp_hwlb-2P-3T-ipv6.cfg b/VNFs/vCGNAPT/config/arp_hwlb-2P-3T-ipv6.cfg new file mode 100644 index 00000000..d082d345 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb-2P-3T-ipv6.cfg @@ -0,0 +1,76 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 SWQ2 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = CGNAPT +core = 3 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = TXQ0.1 TXQ1.1 SWQ0 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE4] +type = CGNAPT +core = 4 +pktq_in = RXQ0.1 RXQ1.1 +pktq_out = TXQ0.2 TXQ1.2 SWQ1 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = RXQ0.2 RXQ1.2 +pktq_out = TXQ0.3 TXQ1.3 SWQ2 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) diff --git a/VNFs/vCGNAPT/config/arp_hwlb-2P-3T.cfg b/VNFs/vCGNAPT/config/arp_hwlb-2P-3T.cfg new file mode 100644 index 00000000..17623dfb --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb-2P-3T.cfg @@ -0,0 +1,76 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 SWQ2 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = CGNAPT +core = 3 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = TXQ0.1 TXQ1.1 SWQ0 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE4] +type = CGNAPT +core = 4 +pktq_in = RXQ0.1 RXQ1.1 +pktq_out = TXQ0.2 TXQ1.2 SWQ1 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = RXQ0.2 RXQ1.2 +pktq_out = TXQ0.3 TXQ1.3 SWQ2 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) diff --git a/VNFs/vCGNAPT/config/arp_hwlb-4P-1T-ipv6.cfg b/VNFs/vCGNAPT/config/arp_hwlb-4P-1T-ipv6.cfg new file mode 100644 index 00000000..685ec442 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb-4P-1T-ipv6.cfg @@ -0,0 +1,67 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 +pktq_out = TXQ0.0 TXQ1.0 TXQ2.0 TXQ3.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) +arp_route_tbl = (C0106414,FFFFFF00,2,C0106414) +arp_route_tbl = (C0102814,FFFFFF00,3,C0102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:6414,120,2,0064:ff9b:0:0:0:0:c010:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:2814,120,3,0064:ff9b:0:0:0:0:c010:2814) + + +pktq_in_prv = RXQ0.0 RXQ2.0 +prv_to_pub_map = (0, 1)(2, 3) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 00:00:00:00:00:08 00:00:00:00:00:09 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = CGNAPT +core = 3 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = TXQ0.1 TXQ1.1 SWQ0 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE4] +type = CGNAPT +core = 4 +pktq_in = RXQ2.0 RXQ3.0 +pktq_out = TXQ2.1 TXQ3.1 SWQ1 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103215:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) diff --git a/VNFs/vCGNAPT/config/arp_hwlb-4P-1T.cfg b/VNFs/vCGNAPT/config/arp_hwlb-4P-1T.cfg new file mode 100644 index 00000000..3687eb44 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb-4P-1T.cfg @@ -0,0 +1,67 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 +pktq_out = TXQ0.0 TXQ1.0 TXQ2.0 TXQ3.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) +arp_route_tbl = (C0106414,FFFFFF00,2,C0106414) +arp_route_tbl = (C0102814,FFFFFF00,3,C0102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:6414,120,2,0064:ff9b:0:0:0:0:c010:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:2814,120,3,0064:ff9b:0:0:0:0:c010:2814) + + +pktq_in_prv = RXQ0.0 RXQ2.0 +prv_to_pub_map = (0, 1)(2, 3) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 00:00:00:00:00:08 00:00:00:00:00:09 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = CGNAPT +core = 3 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = TXQ0.1 TXQ1.1 SWQ0 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE4] +type = CGNAPT +core = 4 +pktq_in = RXQ2.0 RXQ3.0 +pktq_out = TXQ2.1 TXQ3.1 SWQ1 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103215:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) diff --git a/VNFs/vCGNAPT/config/arp_hwlb-4P-2T-ipv6.cfg b/VNFs/vCGNAPT/config/arp_hwlb-4P-2T-ipv6.cfg new file mode 100644 index 00000000..7dcf92e3 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb-4P-2T-ipv6.cfg @@ -0,0 +1,101 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 SWQ2 SWQ3 +pktq_out = TXQ0.0 TXQ1.0 TXQ2.0 TXQ3.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) +arp_route_tbl = (C0106414,FFFFFF00,2,C0106414) +arp_route_tbl = (C0102814,FFFFFF00,3,C0102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:6414,120,2,0064:ff9b:0:0:0:0:c010:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:2814,120,3,0064:ff9b:0:0:0:0:c010:2814) + + +pktq_in_prv = RXQ0.0 RXQ2.0 +prv_to_pub_map = (0, 1)(2, 3) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 00:00:00:00:00:08 00:00:00:00:00:09 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = CGNAPT +core = 3 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = TXQ0.1 TXQ1.1 SWQ0 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE4] +type = CGNAPT +core = 4 +pktq_in = RXQ0.1 RXQ1.1 +pktq_out = TXQ0.2 TXQ1.2 SWQ1 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = RXQ2.0 RXQ3.0 +pktq_out = TXQ2.1 TXQ3.1 SWQ2 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103215:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = CGNAPT +core = 6 +pktq_in = RXQ2.1 RXQ3.1 +pktq_out = TXQ2.2 TXQ3.2 SWQ3 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) diff --git a/VNFs/vCGNAPT/config/arp_hwlb-4P-2T.cfg b/VNFs/vCGNAPT/config/arp_hwlb-4P-2T.cfg new file mode 100644 index 00000000..a7fa7e45 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb-4P-2T.cfg @@ -0,0 +1,101 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 SWQ2 SWQ3 +pktq_out = TXQ0.0 TXQ1.0 TXQ2.0 TXQ3.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) +arp_route_tbl = (C0106414,FFFFFF00,2,C0106414) +arp_route_tbl = (C0102814,FFFFFF00,3,C0102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:6414,120,2,0064:ff9b:0:0:0:0:c010:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:2814,120,3,0064:ff9b:0:0:0:0:c010:2814) + + +pktq_in_prv = RXQ0.0 RXQ2.0 +prv_to_pub_map = (0, 1)(2, 3) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 00:00:00:00:00:08 00:00:00:00:00:09 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = CGNAPT +core = 3 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = TXQ0.1 TXQ1.1 SWQ0 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE4] +type = CGNAPT +core = 4 +pktq_in = RXQ0.1 RXQ1.1 +pktq_out = TXQ0.2 TXQ1.2 SWQ1 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = RXQ2.0 RXQ3.0 +pktq_out = TXQ2.1 TXQ3.1 SWQ2 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103215:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = CGNAPT +core = 6 +pktq_in = RXQ2.1 RXQ3.1 +pktq_out = TXQ2.2 TXQ3.2 SWQ3 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) diff --git a/VNFs/vCGNAPT/config/arp_hwlb-4P-3T-ipv6.cfg b/VNFs/vCGNAPT/config/arp_hwlb-4P-3T-ipv6.cfg new file mode 100644 index 00000000..42ae5035 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb-4P-3T-ipv6.cfg @@ -0,0 +1,135 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 SWQ2 SWQ3 SWQ4 SWQ5 +pktq_out = TXQ0.0 TXQ1.0 TXQ2.0 TXQ3.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) +arp_route_tbl = (C0106414,FFFFFF00,2,C0106414) +arp_route_tbl = (C0102814,FFFFFF00,3,C0102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:6414,120,2,0064:ff9b:0:0:0:0:c010:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:2814,120,3,0064:ff9b:0:0:0:0:c010:2814) + + +pktq_in_prv = RXQ0.0 RXQ2.0 +prv_to_pub_map = (0, 1)(2, 3) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 00:00:00:00:00:08 00:00:00:00:00:09 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = CGNAPT +core = 3 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = TXQ0.1 TXQ1.1 SWQ0 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE4] +type = CGNAPT +core = 4 +pktq_in = RXQ0.1 RXQ1.1 +pktq_out = TXQ0.2 TXQ1.2 SWQ1 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = RXQ0.2 RXQ1.2 +pktq_out = TXQ0.3 TXQ1.3 SWQ2 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = CGNAPT +core = 6 +pktq_in = RXQ2.0 RXQ3.0 +pktq_out = TXQ2.1 TXQ3.1 SWQ3 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103215:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE7] +type = CGNAPT +core = 7 +pktq_in = RXQ2.1 RXQ3.1 +pktq_out = TXQ2.2 TXQ3.2 SWQ4 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE8] +type = CGNAPT +core = 8 +pktq_in = RXQ2.2 RXQ3.2 +pktq_out = TXQ2.3 TXQ3.3 SWQ5 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) diff --git a/VNFs/vCGNAPT/config/arp_hwlb-4P-3T.cfg b/VNFs/vCGNAPT/config/arp_hwlb-4P-3T.cfg new file mode 100644 index 00000000..4317dcef --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb-4P-3T.cfg @@ -0,0 +1,135 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 SWQ2 SWQ3 SWQ4 SWQ5 +pktq_out = TXQ0.0 TXQ1.0 TXQ2.0 TXQ3.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) +arp_route_tbl = (C0106414,FFFFFF00,2,C0106414) +arp_route_tbl = (C0102814,FFFFFF00,3,C0102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:6414,120,2,0064:ff9b:0:0:0:0:c010:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:2814,120,3,0064:ff9b:0:0:0:0:c010:2814) + + +pktq_in_prv = RXQ0.0 RXQ2.0 +prv_to_pub_map = (0, 1)(2, 3) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 00:00:00:00:00:08 00:00:00:00:00:09 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = CGNAPT +core = 3 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = TXQ0.1 TXQ1.1 SWQ0 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE4] +type = CGNAPT +core = 4 +pktq_in = RXQ0.1 RXQ1.1 +pktq_out = TXQ0.2 TXQ1.2 SWQ1 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = RXQ0.2 RXQ1.2 +pktq_out = TXQ0.3 TXQ1.3 SWQ2 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = CGNAPT +core = 6 +pktq_in = RXQ2.0 RXQ3.0 +pktq_out = TXQ2.1 TXQ3.1 SWQ3 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103215:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE7] +type = CGNAPT +core = 7 +pktq_in = RXQ2.1 RXQ3.1 +pktq_out = TXQ2.2 TXQ3.2 SWQ4 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE8] +type = CGNAPT +core = 8 +pktq_in = RXQ2.2 RXQ3.2 +pktq_out = TXQ2.3 TXQ3.3 SWQ5 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) diff --git a/VNFs/vCGNAPT/config/arp_hwlb_scriptfile_2P.cfg b/VNFs/vCGNAPT/config/arp_hwlb_scriptfile_2P.cfg new file mode 100644 index 00000000..c560ceb7 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb_scriptfile_2P.cfg @@ -0,0 +1,32 @@ + +link 0 down +link 0 config 152.16.100.21 24 +link 0 up +link 1 down +link 1 config 152.16.40.21 24 +link 1 up + + +; uncomment to enable static NAPT +;p <pipeline id> entry addm <prv_ipv4/6> prvport> <pub_ip> <pub_port> <phy_port> <ttl> <no_of_entries> <end_prv_port> <end_pub_port> +;p 3 entry addm 152.16.100.20 1234 152.16.40.10 1 0 500 65535 1234 65535 + +; uncomment below lines to enable static arp +;p 1 arpadd 0 152.16.100.20 00:00:00:00:00:01 +;p 1 arpadd 1 152.16.40.20 00:00:00:00:00:02 + + +; uncomment below lines to enable static arp +;p 1 arpadd 0 0064:ff9b:0:0:0:0:9810:6414 00:00:00:00:00:01 +;p 1 arpadd 1 0064:ff9b:0:0:0:0:9810:2814 00:00:00:00:00:02 + + +set fwd rxonly +set_sym_hash_ena_per_port 0 enable +set_hash_global_config 0 simple_xor ipv4-udp enable +set_sym_hash_ena_per_port 1 enable +set_hash_global_config 1 simple_xor ipv4-udp enable +set_hash_input_set 0 ipv4-udp src-ipv4 udp-src-port add +set_hash_input_set 1 ipv4-udp dst-ipv4 udp-dst-port add +set_hash_input_set 0 ipv4-udp src-ipv6 udp-src-port add +set_hash_input_set 1 ipv4-udp dst-ipv6 udp-dst-port add diff --git a/VNFs/vCGNAPT/config/arp_hwlb_scriptfile_4P.cfg b/VNFs/vCGNAPT/config/arp_hwlb_scriptfile_4P.cfg new file mode 100644 index 00000000..0dc60e1d --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_hwlb_scriptfile_4P.cfg @@ -0,0 +1,50 @@ + +link 0 down +link 0 config 152.16.100.21 24 +link 0 up +link 1 down +link 1 config 152.16.40.21 24 +link 1 up +link 2 down +link 2 config 192.16.100.25 24 +link 2 up +link 3 down +link 3 config 192.16.40.25 24 +link 3 up + +; uncomment to enable static NAPT +;p <pipeline id> entry addm <prv_ipv4/6> prvport> <pub_ip> <pub_port> <phy_port> <ttl> <no_of_entries> <end_prv_port> <end_pub_port> +;p 3 entry addm 152.16.100.20 1234 152.16.40.10 1 0 500 65535 1234 65535 + +; uncomment below lines to enable static arp +;p 1 arpadd 0 152.16.100.20 00:00:00:00:00:01 +;p 1 arpadd 1 152.16.40.20 00:00:00:00:00:02 +;p 1 arpadd 2 192.16.100.20 00:00:00:00:00:03 +;p 1 arpadd 3 192.16.40.20 00:00:00:00:00:04 + + +; uncomment below lines to enable static arp +;p 1 arpadd 0 0064:ff9b:0:0:0:0:9810:6414 00:00:00:00:00:01 +;p 1 arpadd 1 0064:ff9b:0:0:0:0:9810:2814 00:00:00:00:00:02 +;p 1 arpadd 2 0064:ff9b:0:0:0:0:c010:6414 00:00:00:00:00:03 +;p 1 arpadd 3 0064:ff9b:0:0:0:0:c010:2814 00:00:00:00:00:04 + + +set fwd rxonly +set_sym_hash_ena_per_port 0 enable +set_hash_global_config 0 simple_xor ipv4-udp enable +set_sym_hash_ena_per_port 1 enable +set_hash_global_config 1 simple_xor ipv4-udp enable +set_hash_input_set 0 ipv4-udp src-ipv4 udp-src-port add +set_hash_input_set 1 ipv4-udp dst-ipv4 udp-dst-port add +set_hash_input_set 0 ipv4-udp src-ipv6 udp-src-port add +set_hash_input_set 1 ipv4-udp dst-ipv6 udp-dst-port add + +set_sym_hash_ena_per_port 2 enable +set_hash_global_config 2 simple_xor ipv4-udp enable +set_sym_hash_ena_per_port 3 enable +set_hash_global_config 3 simple_xor ipv4-udp enable +set_hash_input_set 2 ipv4-udp src-ipv4 udp-src-port add +set_hash_input_set 3 ipv4-udp dst-ipv4 udp-dst-port add +set_hash_input_set 2 ipv4-udp src-ipv6 udp-src-port add +set_hash_input_set 3 ipv4-udp dst-ipv6 udp-dst-port add diff --git a/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-1T-ipv6.cfg b/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-1T-ipv6.cfg new file mode 100644 index 00000000..a81d9d43 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-1T-ipv6.cfg @@ -0,0 +1,69 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = TXRX +core = 3 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = SWQ1 SWQ2 SWQ0 + +[PIPELINE4] +type = LOADB +core = 4 +pktq_in = SWQ1 SWQ2 +pktq_out = SWQ3 SWQ4 +outport_offset = 136; 8 +n_vnf_threads = 1 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = SWQ3 SWQ4 +pktq_out = SWQ5 SWQ6 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = TXRX +core = 6 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ5 SWQ6 +pktq_out = TXQ0.1 TXQ1.1 diff --git a/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-1T.cfg b/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-1T.cfg new file mode 100644 index 00000000..785240d1 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-1T.cfg @@ -0,0 +1,69 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = TXRX +core = 3 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = SWQ1 SWQ2 SWQ0 + +[PIPELINE4] +type = LOADB +core = 4 +pktq_in = SWQ1 SWQ2 +pktq_out = SWQ3 SWQ4 +outport_offset = 136; 8 +n_vnf_threads = 1 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = SWQ3 SWQ4 +pktq_out = SWQ5 SWQ6 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = TXRX +core = 6 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ5 SWQ6 +pktq_out = TXQ0.1 TXQ1.1 diff --git a/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-2T-ipv6.cfg b/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-2T-ipv6.cfg new file mode 100644 index 00000000..48df0e62 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-2T-ipv6.cfg @@ -0,0 +1,86 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = TXRX +core = 3 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = SWQ1 SWQ2 SWQ0 + +[PIPELINE4] +type = LOADB +core = 4 +pktq_in = SWQ1 SWQ2 +pktq_out = SWQ3 SWQ4 SWQ5 SWQ6 +outport_offset = 136; 8 +n_vnf_threads = 2 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = SWQ3 SWQ4 +pktq_out = SWQ7 SWQ8 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = CGNAPT +core = 6 +pktq_in = SWQ5 SWQ6 +pktq_out = SWQ9 SWQ10 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE7] +type = TXRX +core = 7 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ7 SWQ8 SWQ9 SWQ10 +pktq_out = TXQ0.1 TXQ1.1 TXQ0.2 TXQ1.2 diff --git a/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-2T.cfg b/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-2T.cfg new file mode 100644 index 00000000..35eaa3bf --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-2T.cfg @@ -0,0 +1,86 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = TXRX +core = 3 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = SWQ1 SWQ2 SWQ0 + +[PIPELINE4] +type = LOADB +core = 4 +pktq_in = SWQ1 SWQ2 +pktq_out = SWQ3 SWQ4 SWQ5 SWQ6 +outport_offset = 136; 8 +n_vnf_threads = 2 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = SWQ3 SWQ4 +pktq_out = SWQ7 SWQ8 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = CGNAPT +core = 6 +pktq_in = SWQ5 SWQ6 +pktq_out = SWQ9 SWQ10 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE7] +type = TXRX +core = 7 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ7 SWQ8 SWQ9 SWQ10 +pktq_out = TXQ0.1 TXQ1.1 TXQ0.2 TXQ1.2 diff --git a/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-3T-ipv6.cfg b/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-3T-ipv6.cfg new file mode 100644 index 00000000..47747f60 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-3T-ipv6.cfg @@ -0,0 +1,103 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = TXRX +core = 3 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = SWQ1 SWQ2 SWQ0 + +[PIPELINE4] +type = LOADB +core = 4 +pktq_in = SWQ1 SWQ2 +pktq_out = SWQ3 SWQ4 SWQ5 SWQ6 SWQ7 SWQ8 +outport_offset = 136; 8 +n_vnf_threads = 3 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = SWQ3 SWQ4 +pktq_out = SWQ9 SWQ10 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = CGNAPT +core = 6 +pktq_in = SWQ5 SWQ6 +pktq_out = SWQ11 SWQ12 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE7] +type = CGNAPT +core = 7 +pktq_in = SWQ7 SWQ8 +pktq_out = SWQ13 SWQ14 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE8] +type = TXRX +core = 8 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ9 SWQ10 SWQ11 SWQ12 SWQ13 SWQ14 +pktq_out = TXQ0.1 TXQ1.1 TXQ0.2 TXQ1.2 TXQ0.3 TXQ1.3 diff --git a/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-3T.cfg b/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-3T.cfg new file mode 100644 index 00000000..413e1d8f --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx-1LB-2P-3T.cfg @@ -0,0 +1,103 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = TXRX +core = 3 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = SWQ1 SWQ2 SWQ0 + +[PIPELINE4] +type = LOADB +core = 4 +pktq_in = SWQ1 SWQ2 +pktq_out = SWQ3 SWQ4 SWQ5 SWQ6 SWQ7 SWQ8 +outport_offset = 136; 8 +n_vnf_threads = 3 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = SWQ3 SWQ4 +pktq_out = SWQ9 SWQ10 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = CGNAPT +core = 6 +pktq_in = SWQ5 SWQ6 +pktq_out = SWQ11 SWQ12 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE7] +type = CGNAPT +core = 7 +pktq_in = SWQ7 SWQ8 +pktq_out = SWQ13 SWQ14 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE8] +type = TXRX +core = 8 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ9 SWQ10 SWQ11 SWQ12 SWQ13 SWQ14 +pktq_out = TXQ0.1 TXQ1.1 TXQ0.2 TXQ1.2 TXQ0.3 TXQ1.3 diff --git a/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-1T-ipv6.cfg b/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-1T-ipv6.cfg new file mode 100644 index 00000000..f67d7461 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-1T-ipv6.cfg @@ -0,0 +1,117 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 +pktq_out = TXQ0.0 TXQ1.0 TXQ2.0 TXQ3.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) +arp_route_tbl = (C0106414,FFFFFF00,2,C0106414) +arp_route_tbl = (C0102814,FFFFFF00,3,C0102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:6414,120,2,0064:ff9b:0:0:0:0:c010:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:2814,120,3,0064:ff9b:0:0:0:0:c010:2814) + + +pktq_in_prv = RXQ0.0 RXQ2.0 +prv_to_pub_map = (0, 1)(2, 3) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 00:00:00:00:00:08 00:00:00:00:00:09 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = TXRX +core = 3 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = SWQ2 SWQ3 SWQ0 + +[PIPELINE4] +type = LOADB +core = 4 +pktq_in = SWQ2 SWQ3 +pktq_out = SWQ4 SWQ5 +outport_offset = 136; 8 +n_vnf_threads = 1 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = SWQ4 SWQ5 +pktq_out = SWQ6 SWQ7 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = TXRX +core = 6 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ6 SWQ7 +pktq_out = TXQ0.1 TXQ1.1 + +[PIPELINE7] +type = TXRX +core = 7 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ2.0 RXQ3.0 +pktq_out = SWQ8 SWQ9 SWQ1 + +[PIPELINE8] +type = LOADB +core = 8 +pktq_in = SWQ8 SWQ9 +pktq_out = SWQ10 SWQ11 +outport_offset = 136; 8 +n_vnf_threads = 1 +prv_que_handler = (0,) + +[PIPELINE9] +type = CGNAPT +core = 9 +pktq_in = SWQ10 SWQ11 +pktq_out = SWQ12 SWQ13 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103215:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE10] +type = TXRX +core = 10 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ12 SWQ13 +pktq_out = TXQ2.1 TXQ3.1 diff --git a/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-1T.cfg b/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-1T.cfg new file mode 100644 index 00000000..2e14aee4 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-1T.cfg @@ -0,0 +1,117 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 +pktq_out = TXQ0.0 TXQ1.0 TXQ2.0 TXQ3.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) +arp_route_tbl = (C0106414,FFFFFF00,2,C0106414) +arp_route_tbl = (C0102814,FFFFFF00,3,C0102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:6414,120,2,0064:ff9b:0:0:0:0:c010:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:2814,120,3,0064:ff9b:0:0:0:0:c010:2814) + + +pktq_in_prv = RXQ0.0 RXQ2.0 +prv_to_pub_map = (0, 1)(2, 3) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 00:00:00:00:00:08 00:00:00:00:00:09 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = TXRX +core = 3 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = SWQ2 SWQ3 SWQ0 + +[PIPELINE4] +type = LOADB +core = 4 +pktq_in = SWQ2 SWQ3 +pktq_out = SWQ4 SWQ5 +outport_offset = 136; 8 +n_vnf_threads = 1 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = SWQ4 SWQ5 +pktq_out = SWQ6 SWQ7 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = TXRX +core = 6 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ6 SWQ7 +pktq_out = TXQ0.1 TXQ1.1 + +[PIPELINE7] +type = TXRX +core = 7 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ2.0 RXQ3.0 +pktq_out = SWQ8 SWQ9 SWQ1 + +[PIPELINE8] +type = LOADB +core = 8 +pktq_in = SWQ8 SWQ9 +pktq_out = SWQ10 SWQ11 +outport_offset = 136; 8 +n_vnf_threads = 1 +prv_que_handler = (0,) + +[PIPELINE9] +type = CGNAPT +core = 9 +pktq_in = SWQ10 SWQ11 +pktq_out = SWQ12 SWQ13 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103215:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE10] +type = TXRX +core = 10 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ12 SWQ13 +pktq_out = TXQ2.1 TXQ3.1 diff --git a/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-2T-ipv6.cfg b/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-2T-ipv6.cfg new file mode 100644 index 00000000..48df0e62 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-2T-ipv6.cfg @@ -0,0 +1,86 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = TXRX +core = 3 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = SWQ1 SWQ2 SWQ0 + +[PIPELINE4] +type = LOADB +core = 4 +pktq_in = SWQ1 SWQ2 +pktq_out = SWQ3 SWQ4 SWQ5 SWQ6 +outport_offset = 136; 8 +n_vnf_threads = 2 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = SWQ3 SWQ4 +pktq_out = SWQ7 SWQ8 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = CGNAPT +core = 6 +pktq_in = SWQ5 SWQ6 +pktq_out = SWQ9 SWQ10 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE7] +type = TXRX +core = 7 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ7 SWQ8 SWQ9 SWQ10 +pktq_out = TXQ0.1 TXQ1.1 TXQ0.2 TXQ1.2 diff --git a/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-2T.cfg b/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-2T.cfg new file mode 100644 index 00000000..35eaa3bf --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-2T.cfg @@ -0,0 +1,86 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 +pktq_out = TXQ0.0 TXQ1.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) + + +pktq_in_prv = RXQ0.0 +prv_to_pub_map = (0, 1) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = TXRX +core = 3 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = SWQ1 SWQ2 SWQ0 + +[PIPELINE4] +type = LOADB +core = 4 +pktq_in = SWQ1 SWQ2 +pktq_out = SWQ3 SWQ4 SWQ5 SWQ6 +outport_offset = 136; 8 +n_vnf_threads = 2 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = SWQ3 SWQ4 +pktq_out = SWQ7 SWQ8 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = CGNAPT +core = 6 +pktq_in = SWQ5 SWQ6 +pktq_out = SWQ9 SWQ10 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE7] +type = TXRX +core = 7 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ7 SWQ8 SWQ9 SWQ10 +pktq_out = TXQ0.1 TXQ1.1 TXQ0.2 TXQ1.2 diff --git a/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-3T-ipv6.cfg b/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-3T-ipv6.cfg new file mode 100644 index 00000000..c98278f8 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-3T-ipv6.cfg @@ -0,0 +1,185 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 +pktq_out = TXQ0.0 TXQ1.0 TXQ2.0 TXQ3.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) +arp_route_tbl = (C0106414,FFFFFF00,2,C0106414) +arp_route_tbl = (C0102814,FFFFFF00,3,C0102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:6414,120,2,0064:ff9b:0:0:0:0:c010:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:2814,120,3,0064:ff9b:0:0:0:0:c010:2814) + + +pktq_in_prv = RXQ0.0 RXQ2.0 +prv_to_pub_map = (0, 1)(2, 3) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 00:00:00:00:00:08 00:00:00:00:00:09 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = TXRX +core = 3 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = SWQ2 SWQ3 SWQ0 + +[PIPELINE4] +type = LOADB +core = 4 +pktq_in = SWQ2 SWQ3 +pktq_out = SWQ4 SWQ5 SWQ6 SWQ7 SWQ8 SWQ9 +outport_offset = 136; 8 +n_vnf_threads = 3 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = SWQ4 SWQ5 +pktq_out = SWQ10 SWQ11 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = CGNAPT +core = 6 +pktq_in = SWQ6 SWQ7 +pktq_out = SWQ12 SWQ13 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE7] +type = CGNAPT +core = 7 +pktq_in = SWQ8 SWQ9 +pktq_out = SWQ14 SWQ15 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE8] +type = TXRX +core = 8 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ10 SWQ11 SWQ12 SWQ13 SWQ14 SWQ15 +pktq_out = TXQ0.1 TXQ1.1 TXQ0.2 TXQ1.2 TXQ0.3 TXQ1.3 + +[PIPELINE9] +type = TXRX +core = 9 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ2.0 RXQ3.0 +pktq_out = SWQ16 SWQ17 SWQ1 + +[PIPELINE10] +type = LOADB +core = 10 +pktq_in = SWQ16 SWQ17 +pktq_out = SWQ18 SWQ19 SWQ20 SWQ21 SWQ22 SWQ23 +outport_offset = 136; 8 +n_vnf_threads = 3 +prv_que_handler = (0,) + +[PIPELINE11] +type = CGNAPT +core = 11 +pktq_in = SWQ18 SWQ19 +pktq_out = SWQ24 SWQ25 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103215:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE12] +type = CGNAPT +core = 12 +pktq_in = SWQ20 SWQ21 +pktq_out = SWQ26 SWQ27 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE13] +type = CGNAPT +core = 13 +pktq_in = SWQ22 SWQ23 +pktq_out = SWQ28 SWQ29 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv6 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE14] +type = TXRX +core = 14 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ24 SWQ25 SWQ26 SWQ27 SWQ28 SWQ29 +pktq_out = TXQ2.1 TXQ3.1 TXQ2.2 TXQ3.2 TXQ2.3 TXQ3.3 diff --git a/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-3T.cfg b/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-3T.cfg new file mode 100644 index 00000000..19384731 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx-2LB-4P-3T.cfg @@ -0,0 +1,185 @@ +[PIPELINE0] +type = MASTER +core = 0 + +[PIPELINE1] +type = ARPICMP +core = 1 +pktq_in = SWQ0 SWQ1 +pktq_out = TXQ0.0 TXQ1.0 TXQ2.0 TXQ3.0 +arp_route_tbl = (98106414,FFFFFF00,0,98106414) +arp_route_tbl = (98102814,FFFFFF00,1,98102814) +arp_route_tbl = (C0106414,FFFFFF00,2,C0106414) +arp_route_tbl = (C0102814,FFFFFF00,3,C0102814) + + +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:6414,120,0,0064:ff9b:0:0:0:0:9810:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:9810:2814,120,1,0064:ff9b:0:0:0:0:9810:2814) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:6414,120,2,0064:ff9b:0:0:0:0:c010:6414) +nd_route_tbl = (0064:ff9b:0:0:0:0:c010:2814,120,3,0064:ff9b:0:0:0:0:c010:2814) + + +pktq_in_prv = RXQ0.0 RXQ2.0 +prv_to_pub_map = (0, 1)(2, 3) +ports_mac_list = 00:00:00:00:00:06 00:00:00:00:00:07 00:00:00:00:00:08 00:00:00:00:00:09 + +[PIPELINE2] +type = TIMER +core = 2 +n_flows = 1048576 + +[PIPELINE3] +type = TXRX +core = 3 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ0.0 RXQ1.0 +pktq_out = SWQ2 SWQ3 SWQ0 + +[PIPELINE4] +type = LOADB +core = 4 +pktq_in = SWQ2 SWQ3 +pktq_out = SWQ4 SWQ5 SWQ6 SWQ7 SWQ8 SWQ9 +outport_offset = 136; 8 +n_vnf_threads = 3 +prv_que_handler = (0,) + +[PIPELINE5] +type = CGNAPT +core = 5 +pktq_in = SWQ4 SWQ5 +pktq_out = SWQ10 SWQ11 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103214:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE6] +type = CGNAPT +core = 6 +pktq_in = SWQ6 SWQ7 +pktq_out = SWQ12 SWQ13 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE7] +type = CGNAPT +core = 7 +pktq_in = SWQ8 SWQ9 +pktq_out = SWQ14 SWQ15 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE8] +type = TXRX +core = 8 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ10 SWQ11 SWQ12 SWQ13 SWQ14 SWQ15 +pktq_out = TXQ0.1 TXQ1.1 TXQ0.2 TXQ1.2 TXQ0.3 TXQ1.3 + +[PIPELINE9] +type = TXRX +core = 9 +pipeline_txrx_type = RXRX +dest_if_offset = 176 +pktq_in = RXQ2.0 RXQ3.0 +pktq_out = SWQ16 SWQ17 SWQ1 + +[PIPELINE10] +type = LOADB +core = 10 +pktq_in = SWQ16 SWQ17 +pktq_out = SWQ18 SWQ19 SWQ20 SWQ21 SWQ22 SWQ23 +outport_offset = 136; 8 +n_vnf_threads = 3 +prv_que_handler = (0,) + +[PIPELINE11] +type = CGNAPT +core = 11 +pktq_in = SWQ18 SWQ19 +pktq_out = SWQ24 SWQ25 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +public_ip_port_range = 98103215:(1, 65535) +vnf_set = (3,4,5) +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE12] +type = CGNAPT +core = 12 +pktq_in = SWQ20 SWQ21 +pktq_out = SWQ26 SWQ27 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE13] +type = CGNAPT +core = 13 +pktq_in = SWQ22 SWQ23 +pktq_out = SWQ28 SWQ29 +phyport_offset = 204 +n_flows = 1048576 +key_offset = 192;64 +key_size = 8 +hash_offset = 200;72 +timer_period = 100 +max_clients_per_ip = 65535 +max_port_per_client = 10 +pkt_type = ipv4 +cgnapt_meta_offset = 128 +prv_que_handler = (0,) + +[PIPELINE14] +type = TXRX +core = 14 +pipeline_txrx_type = TXTX +dest_if_offset = 176 +pktq_in = SWQ24 SWQ25 SWQ26 SWQ27 SWQ28 SWQ29 +pktq_out = TXQ2.1 TXQ3.1 TXQ2.2 TXQ3.2 TXQ2.3 TXQ3.3 diff --git a/VNFs/vCGNAPT/config/arp_txrx_ScriptFile_2P.cfg b/VNFs/vCGNAPT/config/arp_txrx_ScriptFile_2P.cfg new file mode 100644 index 00000000..b04505c3 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx_ScriptFile_2P.cfg @@ -0,0 +1,20 @@ + +link 0 down +link 0 config 152.16.100.21 24 +link 0 up +link 1 down +link 1 config 152.16.40.21 24 +link 1 up + +; uncomment to enable static NAPT +;p <pipeline id> entry addm <prv_ipv4/6> prvport> <pub_ip> <pub_port> <phy_port> <ttl> <no_of_entries> <end_prv_port> <end_pub_port> +;p 3 entry addm 152.16.100.20 1234 152.16.40.10 1 0 500 65535 1234 65535 + +; uncomment below lines to enable static arp +;p 1 arpadd 0 152.16.100.20 00:00:00:00:00:01 +;p 1 arpadd 1 152.16.40.20 00:00:00:00:00:02 + + +; uncomment below lines to enable static arp +;p 1 arpadd 0 0064:ff9b:0:0:0:0:9810:6414 00:00:00:00:00:01 +;p 1 arpadd 1 0064:ff9b:0:0:0:0:9810:2814 00:00:00:00:00:02 diff --git a/VNFs/vCGNAPT/config/arp_txrx_ScriptFile_4P.cfg b/VNFs/vCGNAPT/config/arp_txrx_ScriptFile_4P.cfg new file mode 100644 index 00000000..ad4ee606 --- /dev/null +++ b/VNFs/vCGNAPT/config/arp_txrx_ScriptFile_4P.cfg @@ -0,0 +1,30 @@ + +link 0 down +link 0 config 152.16.100.21 24 +link 0 up +link 1 down +link 1 config 152.16.40.21 24 +link 1 up +link 2 down +link 2 config 192.16.100.25 24 +link 2 up +link 3 down +link 3 config 192.16.40.25 24 +link 3 up + +; uncomment to enable static NAPT +;p <pipeline id> entry addm <prv_ipv4/6> prvport> <pub_ip> <pub_port> <phy_port> <ttl> <no_of_entries> <end_prv_port> <end_pub_port> +;p 3 entry addm 152.16.100.20 1234 152.16.40.10 1 0 500 65535 1234 65535 + +; uncomment below lines to enable static arp +;p 1 arpadd 0 152.16.100.20 00:00:00:00:00:01 +;p 1 arpadd 1 152.16.40.20 00:00:00:00:00:02 +;p 1 arpadd 2 192.16.100.20 00:00:00:00:00:03 +;p 1 arpadd 3 192.16.40.20 00:00:00:00:00:04 + + +; uncomment below lines to enable static arp +;p 1 arpadd 0 0064:ff9b:0:0:0:0:9810:6414 00:00:00:00:00:01 +;p 1 arpadd 1 0064:ff9b:0:0:0:0:9810:2814 00:00:00:00:00:02 +;p 1 arpadd 2 0064:ff9b:0:0:0:0:c010:6414 00:00:00:00:00:03 +;p 1 arpadd 3 0064:ff9b:0:0:0:0:c010:2814 00:00:00:00:00:04 |