Hello

I'm running several OpenVPN servers which are used by about 1000 users.
Specs: Debian 12, OpenVPN 2.6.11, AES-256-GCM, DCO enabled and TLS crypt v2. 3 instances on each server (UDP 1194, UDP 80, TCP 443).
Clients are my own developed Swift apps for Apple devices using openvpn3 libraries (v3.8.4).
The performance is very good, on my home 320 mbit/s connection I get about 310 using UDP and about 290 using TCP, even on very far servers.

I have a handful of users though which get extremely slow speeds (DL under 1 mbit/s, UL 40 mbit/s) and I can't figure out why.
I'm using MTU of 1400 for UDP and 1280 for TCP (set on both servers and clients), but even with lower MTU of 1100 the issue stays the same.
I also implemented the obfuscation XOR patch, which together with TCP port 443 and TLS crypt v2 should circumvent provider throttling (in China it works fine).
Still the issue is the same. If those users download a testfile from the same server though, the speed is fast.

What else could I try?

Code:
ca ca.crt
cert server.crt
crl-verify crl.pem
dh dh.pem
key server.key
tls-crypt-v2 tc2.key
cipher AES-256-GCM
data-ciphers AES-256-GCM
auth none
topology subnet
duplicate-cn
max-clients 250
dev tun1
port 1194
server 10.8.1.0 255.255.255.0
proto udp
push "redirect-gateway def1 bypass-dhcp"
explicit-exit-notify
tun-mtu 1400
push "explicit-exit-notify"
keepalive 10 60
reneg-sec 28800
user nobody
group nogroup
persist-key
persist-tun
fast-io
sndbuf 0
rcvbuf 0
txqueuelen 1000
verb 0
mute 1
log /dev/null
status /dev/null