;;
;; Copyright (c) 2010-2017 Intel Corporation
;;
;; Licensed under the Apache License, Version 2.0 (the "License");
;; you may not use this file except in compliance with the License.
;; You may obtain a copy of the License at
;;
;;     http://www.apache.org/licenses/LICENSE-2.0
;;
;; Unless required by applicable law or agreed to in writing, software
;; distributed under the License is distributed on an "AS IS" BASIS,
;; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
;; See the License for the specific language governing permissions and
;; limitations under the License.
;;

[eal options]
-n=4 ; force number of memory channels
no-output=no ; disable DPDK debug output

[port 2]
name=port_a
mac=00:00:00:00:00:03
rx desc=512
tx desc=1024
[port 3]
name=port_b
mac=00:00:00:00:00:04
rx desc=512
tx desc=1024

[port 4]
name=port_c
mac=00:00:00:00:00:01
rx desc=512
tx desc=1024
[port 5]
name=port_d
mac=00:00:00:00:00:02
rx desc=512
tx desc=1024

[lua]
dofile("flow_gen_4ports.lua")
[variables]
$drop=no

[defaults]
mempool size=$mempool_size

[global]
start time=5
name=L4 Gen

[core 0s0]
mode=master

[core 1s0]
task=0
mode=lbpos
tx cores=$port_a_clients
rx port=port_a
mempool size=32K
mbuf size=2560
byte offset=26
drop=$drop
ring size=16384

[core 1s0h]
task=0
mode=lbpos
tx cores=$port_b_servers
rx port=port_b
mbuf size=2560
byte offset=26
drop=$drop
ring size=16384

;;;------------------------------

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[core $port_a_clients]
name=p0
task=0
mode=genl4
tx port=port_a
rx ring=yes
bps=$bps
streams=c_${self}
concur conn=$conn
max setup rate=$msr

[core $port_b_servers]
name=p0
task=0
mode=genl4
sub mode=server
rx ring=yes
tx port=port_b
bps=$bps
streams=s_${self}
concur conn=$conn

;;;;;;; socket 1 ;;;;;;;;;;;;;;;;;;;;;;;

[core 1s1]
name=ld
task=0
mode=lbpos
tx cores=$port_c_clients
rx port=port_c
mempool size=32K
mbuf size=2560
byte offset=26
drop=$drop
ring size=16384

[core 1s1h]
name=ld
task=0
mode=lbpos
tx cores=$port_d_servers
rx port=port_d
mbuf size=2560
byte offset=26
drop=$drop
ring size=16384

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[core $port_c_clients]
name=p0
task=0
mode=genl4
tx port=port_c
rx ring=yes
bps=$bps
streams=c_${self}
concur conn=$conn
max setup rate=$msr

[core $port_d_servers]
name=p0
task=0
mode=genl4
sub mode=server
rx ring=yes
tx port=port_d
bps=$bps
streams=s_${self}
concur conn=$conn