Packet drops happening again

Just got the news about the 5/8 rolling release fixing a bunch of issues, but it did not fix this TX drop issue. Still occuring on 1.3-rolling-202005082150

3.75% packetloss of packets under 214 bytes thru vyos router on xen hypervisor

Just tested on 1.2.5 and cannot reproduce

I can reproduce with the steps mentioned by sonicbx on xcp-ng 8.x and recent rolling versions. I am happy to provide access to some VMs in order to help solving the issue.

1 Like

Glad to hear it’s not just me!

I created my first phabricator task!

https://phabricator.vyos.net/T2505

Hi @sonicbx, Can you check this behavior behind on Debian or similar distributives on this hypervisor?

I did try making a Debian 10 VM and enabled up forwarding and it doesn’t have any problem.

It´s happens in HVM mode or in PV or both?

Both HVM and PV …

Worth noting that as HVM it still uses PV NIC drivers because they’re preinstalled.

I don’t know how to force it to use HVM drivers.

I confirm TX-DROP on rolling.
R1 and R3 - LTS
R2 - rolling

R1_eth1 == eth1_R2_eth2 == eth1_R3

Ping:
R1= R2_eth1 without problems
R1 = R2_eth2 without problems
R1 = R3 - 7% loss

I’ll try to figure it out.

1 Like

Thank you for trying to resolve this!

1 Like

Presumably, this problem can be solved by this patch. ref. [net-next] xen-netfront: avoid packet loss when ethernet header crosses page boundary - Patchwork
Need to check it out.

I would be happy to do some tests with this patch. Is there any easy way to cross-compile the vyos kernel?

Hi,
Did anyone find a working fix? Am currently running 1.4-rolling-202101300218 on XCP-NG with around 1-2% packets dropped on TX.

Iface      MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0      1500 55393733      0     71 0      93398166      0 1094371      0 BMRU
eth1      1500 94974007      0      0 0      98273116      0 885979      0 BMRU
eth2      1500 22236780      0      0 0      60714591      0 212657      0 BMRU
eth3      1500        0      0      0 0             7      0      0      0 BMRU
eth4      1500 17282995      0      0 0      43214192      0 262450      0 BMRU
eth5      1500        3      0      0 0           220      0      0      0 BMRU
eth6      1500  6829409      0      0 0       4785681      0 184062      0 BMRU

Just upgraded from 1.3 LTS to 1.5 rolling on XCP-NG 8.2, I did not run to the packet drop issue at the first boot. But after some configuration change, it happens.
I compared the running config with the migrated config from 1.3, this is the change:

[interfaces ethernet eth0]
+ offload {
+     gro
+     gso
+     sg
+     tso
+ }

After few tests with enabled and disable offload settings, I confirm I have no issue with packet drop anymore.

No offload settings:

100 packets transmitted, 85 received, 15% packet loss, time 9997ms
rtt min/avg/max/mdev = 3.959/4.347/4.962/0.161 ms

With offload enabled:

100 packets transmitted, 100 received, 0% packet loss, time 9950ms
rtt min/avg/max/mdev = 3.890/4.233/4.669/0.162 ms

Update 1: Uptime for 1 hour, no drop packet so far…

# sudo netstat -i
Kernel Interface table
Iface             MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0             1500 35217119      0      0 0      47110874      0      0      0 BMRU
eth1             1500 28711516      0   1286 0      28337596      0      0      0 BMRU
eth2             1500 12623514      0      0 0      14104396      0      0      0 BMRU
eth3             1500        7      0      0 0            28      0      0      0 BMRU
eth4             1500    67151      0      0 0         67636      0      0      0 BMRU
eth5             1500        0      0      0 0             8      0      0      0 BMRU
eth6             1500   483145      0      0 0       1154857      0      0      0 BMRU
eth7             1500  7830774      0      0 0      18507884      0      0      0 BMRU
eth8             1500     2589      0      0 0          2850      0      0      0 BMRU
lo              65536       27      0      0 0            27      0      0      0 LRU
pim6reg          1452        0      0      0 0             0      0      0      0 ORU

Hope this help.

1 Like