提高跨地区跨运营商家宽 VPN 连接性能
最近在折腾家里的群晖通过 rsync 异地同步到老家的黑群上,虽然能够成功但是同步速度远远低于预期,两端网络情况如下
A (家)联通公网 ip 100M 下 20M 上 B (老家)移动大内网 100M 下 30M 上 两个宽带的上下行测试都是达标的 B(172.16.1.3) 通过 OpenVPN 连接到 A(172.16.1.1)后,ping 不高而且基本不丢包
A> ping 172.16.1.3 PING 172.16.1.3 (172.16.1.3) 56(84) bytes of data. 64 bytes from 172.16.1.3: icmp_seq=1 ttl=63 time=30.2 ms 64 bytes from 172.16.1.3: icmp_seq=2 ttl=63 time=31.7 ms 64 bytes from 172.16.1.3: icmp_seq=3 ttl=63 time=30.3 ms 64 bytes from 172.16.1.3: icmp_seq=4 ttl=63 time=29.4 ms 64 bytes from 172.16.1.3: icmp_seq=5 ttl=63 time=30.5 ms 64 bytes from 172.16.1.3: icmp_seq=6 ttl=63 time=30.2 ms 64 bytes from 172.16.1.3: icmp_seq=7 ttl=63 time=29.9 ms 64 bytes from 172.16.1.3: icmp_seq=8 ttl=63 time=29.4 ms 64 bytes from 172.16.1.3: icmp_seq=9 ttl=63 time=30.1 ms 64 bytes from 172.16.1.3: icmp_seq=10 ttl=63 time=30.0 ms ^C --- 172.16.1.3 ping statistics --- 10 packets transmitted, 10 received, 0% packet loss, time 9010ms rtt min/avg/max/mdev = 29.412/30.224/31.747/0.646 ms B>ping 172.16.1.1 PING 172.16.1.1 (172.16.1.1): 56 data bytes 64 bytes from 172.16.1.1: seq=0 ttl=64 time=32.672 ms 64 bytes from 172.16.1.1: seq=1 ttl=64 time=29.839 ms 64 bytes from 172.16.1.1: seq=2 ttl=64 time=29.824 ms 64 bytes from 172.16.1.1: seq=3 ttl=64 time=29.121 ms 64 bytes from 172.16.1.1: seq=4 ttl=64 time=29.644 ms 64 bytes from 172.16.1.1: seq=5 ttl=64 time=29.504 ms 64 bytes from 172.16.1.1: seq=6 ttl=64 time=29.165 ms 64 bytes from 172.16.1.1: seq=7 ttl=64 time=29.260 ms 64 bytes from 172.16.1.1: seq=8 ttl=64 time=28.944 ms 64 bytes from 172.16.1.1: seq=9 ttl=64 time=29.414 ms 64 bytes from 172.16.1.1: seq=10 ttl=64 time=29.071 ms ^C --- 172.16.1.1 ping statistics --- 11 packets transmitted, 11 packets received, 0% packet loss round-trip min/avg/max = 28.944/29.678/32.672 ms
但是 iperf 的数字实在是太低了。
iperf -c 172.16.1.1 -t 60 ------------------------------------------------------------ Client connecting to 172.16.1.1, TCP port 5001 TCP window size: 18.4 KByte (default) ------------------------------------------------------------ [ 3] local 172.16.1.3 port 33652 connected with 172.16.1.1 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-60.1 sec 10.6 MBytes 1.48 Mbits/sec
互换角色 iperf 结果如下
iperf -c 172.16.1.3 -t 60 ------------------------------------------------------------ Client connecting to 172.16.1.3, TCP port 5001 TCP window size: 512 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.88.88 port 9946 connected with 172.16.1.3 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-78.8 sec 384 KBytes 39.9 Kbits/sec
可能的原因是什么呢? 难道 A->B 的 OpenVPN UDP 包被移动 QoS 了? 各位老铁有啥建议?
- 换 OpenVPN TCP ?
- 加上 kcptun ?
- 换 wireguard ?如果是 udp 被移动 qos 估计差别不大
- 换 v2ray ?