I've rebuild the LX2160ARDB image using the SDK 21.08 flexbuild, including only the dpdk package and leaving all other default configurations.
Following the PoC Userguide and other manuals, I was able to run the dpdk-ipsec-secgw in both boards . However, I cant find how to generate the traffic to test the performance.
My setup is the following:
| GE0 | --- | EP0 | --- | EP1 | --- | GE1 |
GE are traffic generators, and EP are LX2160 ARDB baords. GE0 and GE1 are connected to EP0 and EP1 port 2 (10 Gbps, dpmac.4). EP0 and EP1 are connect through port 0 (40 Gbps, dpmac.2)
The script I'm using to setup EP0 and EP1 is the following (using the correct cfg file for ep0 and ep1):
sudo su
# Ubind eth0/dpni.1/dpmac.2 interface from fsl_dpaa2_eth network driver
echo dpni.1 > /sys/bus/fsl-mc/drivers/fsl_dpaa2_eth/unbind
restool dpni destroy dpni.1
# Bind dpmac.2,3,4,5,6 to dpni.1, dpni.2,3,4,5,6
chmod +x /usr/local/dpdk/dpaa2/dynamic_dpl.sh
source /usr/local/dpdk/dpaa2/dynamic_dpl.sh dpmac.2 dpmac.3 dpmac.4 dpmac.5 dpmac.6
dpdk-ipsec-secgw -c 0xFFFF -n 1 -- -p 0x5 -P -u 0x1 --config="(0,0,0),(0,1,1),(0,2,2),(0,3,3),(0,4,4),(0,5,5),(0,6,6),(0,7,7),(2,0,8),(2,1,9),(2,2,10),(2,3,11),(2,4,12),(2,5,13),(2,6,14),(2,7,15)" -f /usr/local/dpdk/ipsec/ep0_64X64_sha256_proto.cfg
The ipsec-secgw runs without errors on both endpoints, showing both interfaces as "UP".
I've set the IP 192.168.102.2/24 for GE0 and IP 192.168.2.2 for GE1. I've also set the corresponding MAC addresses in the ARP table (mapping GE1 in GE0 and vice-versa). Then, I run ipsec sending packets from GE1 to GE0. When I do that, EP1 ipsec-secgw crash with segmentation fault.
I know the packages are going from GE to EP because if I try to ping GE1 from GE0 without setting the MAC address, I see a message in EP0 ipsec-secgw saying the packet has an unsupported protocol (I believe it is the ARP messages).
I'm missing something? How can I debug this?