Preparation for packet mis-ordering stats
[samplevnf.git] / VNFs / DPPD-PROX / config / bng-8ports.cfg
1 ;;
2 ;; Copyright (c) 2010-2017 Intel Corporation
3 ;;
4 ;; Licensed under the Apache License, Version 2.0 (the "License");
5 ;; you may not use this file except in compliance with the License.
6 ;; You may obtain a copy of the License at
7 ;;
8 ;;     http://www.apache.org/licenses/LICENSE-2.0
9 ;;
10 ;; Unless required by applicable law or agreed to in writing, software
11 ;; distributed under the License is distributed on an "AS IS" BASIS,
12 ;; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 ;; See the License for the specific language governing permissions and
14 ;; limitations under the License.
15 ;;
16
17 ;;
18 ; This configuration sets up a system that handles the same workload as
19 ; config/bng-4ports.cfg, but on 8 ports instead of 4 and on CPU socket 1
20 ; instead of socket 0.
21 ;;
22
23 [eal options]
24 -n=4 ; force number of memory channels
25 no-output=no ; disable DPDK debug output
26
27 [variables]
28 ;uncomment one of the following to change the number of worker threads
29 $lb_drop=yes
30 $wk_drop=yes
31 $rxd=128
32 $txd=128
33 $promiscuous=yes
34 $mp=16K
35 $mcs=512
36 $rs=128
37
38 [port 0]
39 name=cpe0
40 mac=00:00:01:00:00:01
41 rx desc=$rxd
42 tx desc=$txd
43 promiscuous=$promiscuous
44
45 [port 1]
46 name=inet0
47 mac=00:00:01:00:00:02
48 rx desc=$rxd
49 tx desc=$txd
50 promiscuous=$promiscuous
51
52 [port 2]
53 name=cpe1
54 mac=00:00:01:00:00:03
55 rx desc=$rxd
56 tx desc=$txd
57 promiscuous=$promiscuous
58
59 [port 3]
60 name=inet1
61 mac=00:00:01:00:00:04
62 rx desc=$rxd
63 tx desc=$txd
64 promiscuous=$promiscuous
65
66 [port 4]
67 name=cpe2
68 mac=00:00:01:00:00:01
69 rx desc=$rxd
70 tx desc=$txd
71 promiscuous=$promiscuous
72
73 [port 5]
74 name=inet2
75 mac=00:00:01:00:00:02
76 rx desc=$rxd
77 tx desc=$txd
78 promiscuous=$promiscuous
79
80 [port 6]
81 name=cpe3
82 mac=00:00:01:00:00:03
83 rx desc=$rxd
84 tx desc=$txd
85 promiscuous=$promiscuous
86
87 [port 7]
88 name=inet3
89 mac=00:00:01:00:00:04
90 rx desc=$rxd
91 tx desc=$txd
92 promiscuous=$promiscuous
93 [lua]
94 lpm4 = dofile("ipv4-4ports.lua")
95 dscp_table = dofile("dscp.lua")
96 user_table = dofile("user_table-131K-bng.lua")
97
98 wk="5s1-9s1,5s1h-9s1h"
99 name="BNG (" .. task_count(wk) .. " workers)"
100
101 [defaults]
102 mempool size=$mp
103 qinq tag=0xa888
104
105 [global]
106 start time=10
107 duration time=0
108 name=$name
109 unique mempool per socket=yes
110 shuffle=yes
111
112 [core 0s1]
113 task=0
114 mode=master
115 tx cores=(${wk})t0m
116
117 ; IPv4
118 ;*****************************************************************************************
119 ;##### Load Balancing receiving from CPE and from Internet ####
120 [core 1s1]
121 name=LB-inet
122 task=0
123 mode=lbnetwork
124 rx port=inet0
125 untag mpls=yes
126 tx cores=(${wk})t1 proto=ipv4
127 drop=$lb_drop
128 memcache size=$mcs
129 ring size=$rs
130
131 [core 1s1h]
132 name=LB-inet
133 task=0
134 mode=lbnetwork
135 untag mpls=yes
136 rx port=inet1
137 tx cores=(${wk})t1 proto=ipv4
138 drop=$lb_drop
139 memcache size=$mcs
140 ring size=$rs
141
142 [core 2s1]
143 name=LB-inet
144 task=0
145 mode=lbnetwork
146 rx port=inet2
147 untag mpls=yes
148 tx cores=(${wk})t1 proto=ipv4
149 drop=$lb_drop
150 memcache size=$mcs
151 ring size=$rs
152
153 [core 2s1h]
154 name=LB-inet
155 task=0
156 mode=lbnetwork
157 untag mpls=yes
158 rx port=inet3
159 tx cores=(${wk})t1 proto=ipv4
160 drop=$lb_drop
161 memcache size=$mcs
162 ring size=$rs
163
164 [core 3s1]
165 name=LB-cpe
166 task=0
167 mode=lbqinq
168 rx port=cpe0
169 tx cores=(${wk})t0 proto=ipv4
170 tx cores=(${wk})t0p proto=arp
171 drop=$lb_drop
172 memcache size=$mcs
173 ring size=$rs
174
175 [core 3s1h]
176 name=LB-cpe
177 task=0
178 mode=lbqinq
179 rx port=cpe1
180 tx cores=(${wk})t0 proto=ipv4
181 tx cores=(${wk})t0p proto=arp
182 drop=$lb_drop
183 memcache size=$mcs
184 ring size=$rs
185
186 [core 4s1]
187 name=LB-cpe
188 task=0
189 mode=lbqinq
190 rx port=cpe2
191 tx cores=(${wk})t0 proto=ipv4
192 tx cores=(${wk})t0p proto=arp
193 drop=$lb_drop
194 memcache size=$mcs
195 ring size=$rs
196
197 [core 4s1h]
198 name=LB-cpe
199 task=0
200 mode=lbqinq
201 rx port=cpe3
202 tx cores=(${wk})t0 proto=ipv4
203 tx cores=(${wk})t0p proto=arp
204 drop=$lb_drop
205 memcache size=$mcs
206 ring size=$rs
207
208 ;*****************************************************************************************
209 ;#### Worker Threads receiving from LB
210 ;#### Task 0: QinQ decapsulation + gre encapsulation + routing
211 ;#### Task 1: ARP
212 ;#### Task 2: GRE depcapsulation + QinQ encapsulation + use learned mac
213 [core $wk]
214 name=WK
215 task=0
216 mode=qinqdecapv4
217 rx ring=yes
218 tx ports from routing table=inet0,inet1,inet2,inet3
219 route table=lpm4
220 local ipv4=21.22.23.24
221 drop=$wk_drop
222 handle arp=yes
223 cpe table timeout ms=15000
224 user table=user_table
225
226 task=1
227 mode=qinqencapv4
228 rx ring=yes ; gre received from internal queue
229 tx ports from cpe table=cpe0,cpe1,cpe2,cpe3
230 drop=$wk_drop
231 user table=user_table