DPDK Connection Error with Liteon FlexFi #1434
Replies: 1 comment
-
|
Hi, From your description it looks like the RU link comes up correctly (DPD, sync, DU Connected all good), but the UL user-plane traffic never reaches the VF. The key detail is in your ethtool -S output: vf000.tx_* increasing This means: The PF is receiving packets, but the packets are never forwarded down to the VF, so the DPDK process bound to VF0 never sees UL traffic. This usually points to one of three issues: Below are the most likely causes and fixes. 1️⃣ VLAN steering mismatch between PF/VF and FlexFi You said the RU traffic is on VLAN 564, and it only works when you manually assign: ip link set enp179s0f0 vf 0 vlan 564 This setting forces the NIC to: strip VLAN 564 on RX before delivering frames to the VF forward only VLAN 564 traffic to that VF The problem is: If the NIC is not stripping correctly, packets stay on the PF and never get forwarded to the VF. Try disabling VLAN insertion/stripping: Then in DPDK config, add the VLAN ID explicitly: ru_ofh: Many O-RU vendors expect the DU to accept tagged packets, not stripped ones. 2️⃣ PF switching disabled (default on newer Intel drivers) Newer i40e/ice drivers often disable the internal switch when SR-IOV is enabled. Try: echo 2 > /sys/class/net/enp179s0f0/bridge_mode Modes: 0 = VEB (default) 2 = VEPA (forces forwarding even in some SR-IOV setups) This fixes RX forwarding problems on VFs in a lot of ORAN setups. 3️⃣ Intel VFs drop packets when MTU or VLAN doesn’t match exactly FlexFi is using MTU 9000 (jumbo) and VLAN 564. ip link set enp179s0f0 mtu 9600 AND in DPDK config: dpdk: If the VF MTU is smaller than FlexFi's UL packets → the NIC silently drops them. 4️⃣ Try disabling hardware VLAN filtering on the PF VFs sometimes do not inherit the VLAN filter properly: ip link set enp179s0f0 vf 0 vlan 564 5️⃣ Confirm that the RU actually sends data toward the DU FlexFi should send UL U-plane to the DU MAC you configured: DU MAC Address = 003322330012 Check that this matches the MAC assigned to VF0 after binding to vfio-pci: dpdk-devbind.py -s DPDK changes the interface name and sometimes resets the MAC. ✔️ What I would test first (ordered) Disable VLAN stripping on the VF ip link set enp179s0f0 vf 0 vlan 0 Enable VEPA mode echo 2 > /sys/class/net/enp179s0f0/bridge_mode Set MTU on VF and DPDK ip link set enp179s0f0 vf 0 mtu 9000 Verify MAC address FlexFi → VF Enable promiscuous mode in DPDK dpdk: |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hello,
I need some help with dpdk connection to Liteon FlexFi:
System:
Software:
I have this setup working without dpdk using the following config files. To establish the connection to the RU I had to add a VLAN Interface (VLAN564) which is used for Data transmission to the RU. (enp179 is the XVV710 card)
Config Files:
gnb.yml.txt
srsran.cfg.txt
When I want to use DPDK I delete interface vlan564@enp179s0f0 and start the following script, what differs from the srsran manual is that I have to set VLAN for interface vf 0 to vlan 564 otherwise I don't get a connection to the RU.
https://docs.srsran.com/projects/project/en/latest/tutorials/source/oranRU/source/index.html
I changed the grub cmdline to the following and added huge pages:
BOOT_IMAGE=/vmlinuz-6.8.1-1015-realtime root=/dev/mapper/ubuntu--vg-ubuntu--lv ro quiet splash intel_iommu=on iommu=pt hugepagesz=1G hugepages=20 default_hugepagesz=1G nosoftlockup mitigations=off skew_tick=1 nmi_watchdog=0 softlockup_panic=0 enforcing=0 audit=0 intel_pstate=disable vt.handoff=7FlexFi is configured as following:
With these settings and the following gnb_dpdk.yml config I can establish a connection to the RU and the RU gives the status DU Connected.
gnb_dpdk.yml.txt
UEs can see the network if I trigger a network search but they cannot connect to the network. What I found is that there is probably an issue with the network forwarding. If I use eththool -S I can see that data is transmitted over Interface VF 0 but no traffic is received by VF 0. Instead the traffic only goes to to physical interface:
I tried the same with E810 Card to see if this is a Hardware error, but no same behavior. I also tried with setting vlan 0 on vf 0 and without the vlan settings inside the gnb.yml file, but with these changes a connection to the RU was not possible.
Any ideas what I am doing wrong here?
Beta Was this translation helpful? Give feedback.
All reactions