neteroster
V2EX  ›  问与答

WireGuard 速度慢的可能原因有什么?

  •  
  •   neteroster · Apr 6, 2020 · 10154 views
    This topic created in 2407 days ago, the information mentioned may be changed or developed.

    本地是中国(深圳)电信,对端是阿里云香港的轻量服务器( 30M )。

    建了一个 WireGuard,iPerf3 测速(下行):

    $ iperf3 -c 10.200.200.1 -R
    Connecting to host 10.200.200.1, port 5201
    Reverse mode, remote host 10.200.200.1 is sending
    [  4] local 10.200.200.2 port 6872 connected to 10.200.200.1 port 5201
    [ ID] Interval           Transfer     Bandwidth
    [  4]   0.00-1.00   sec  1006 KBytes  8.24 Mbits/sec
    [  4]   1.00-2.00   sec   472 KBytes  3.86 Mbits/sec
    [  4]   2.00-3.00   sec   437 KBytes  3.58 Mbits/sec
    [  4]   3.00-4.00   sec   450 KBytes  3.69 Mbits/sec
    [  4]   4.00-5.00   sec   343 KBytes  2.81 Mbits/sec
    [  4]   5.00-6.00   sec   522 KBytes  4.28 Mbits/sec
    [  4]   6.00-7.00   sec   586 KBytes  4.81 Mbits/sec
    [  4]   7.00-8.00   sec   501 KBytes  4.10 Mbits/sec
    [  4]   8.00-9.00   sec   317 KBytes  2.59 Mbits/sec
    [  4]   9.00-10.00  sec   387 KBytes  3.18 Mbits/sec
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bandwidth       Retr
    [  4]   0.00-10.00  sec  5.12 MBytes  4.30 Mbits/sec  220             sender
    [  4]   0.00-10.00  sec  5.03 MBytes  4.22 Mbits/sec                  receiver
    

    作为对比,QUIC (同样也是 UDP ):

    $ iperf3 -c 127.0.0.1 -p 1080 -R
    Connecting to host 127.0.0.1, port 1080
    Reverse mode, remote host 127.0.0.1 is sending
    [  4] local 127.0.0.1 port 7608 connected to 127.0.0.1 port 1080
    [ ID] Interval           Transfer     Bandwidth
    [  4]   0.00-1.00   sec  7.51 MBytes  62.9 Mbits/sec
    [  4]   1.00-2.00   sec  3.76 MBytes  31.6 Mbits/sec
    [  4]   2.00-3.00   sec  3.80 MBytes  31.9 Mbits/sec
    [  4]   3.00-4.00   sec  3.83 MBytes  32.2 Mbits/sec
    [  4]   4.00-5.00   sec  3.80 MBytes  31.9 Mbits/sec
    [  4]   5.00-6.00   sec  3.80 MBytes  31.9 Mbits/sec
    [  4]   6.00-7.00   sec  3.79 MBytes  31.8 Mbits/sec
    [  4]   7.00-8.00   sec  3.79 MBytes  31.8 Mbits/sec
    [  4]   8.00-9.00   sec  3.80 MBytes  31.9 Mbits/sec
    [  4]   9.00-10.00  sec  3.81 MBytes  31.9 Mbits/sec
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bandwidth       Retr
    [  4]   0.00-10.00  sec  51.2 MBytes  43.0 Mbits/sec    0             sender
    [  4]   0.00-10.00  sec  41.8 MBytes  35.1 Mbits/sec                  receiver
    
    iperf Done.
    

    TLS:

    $ iperf3 -c 127.0.0.1 -p 1080 -R
    Connecting to host 127.0.0.1, port 1080
    Reverse mode, remote host 127.0.0.1 is sending
    [  4] local 127.0.0.1 port 7608 connected to 127.0.0.1 port 1080
    [ ID] Interval           Transfer     Bandwidth
    [  4]   0.00-1.00   sec  7.51 MBytes  62.9 Mbits/sec
    [  4]   1.00-2.00   sec  3.76 MBytes  31.6 Mbits/sec
    [  4]   2.00-3.00   sec  3.80 MBytes  31.9 Mbits/sec
    [  4]   3.00-4.00   sec  3.83 MBytes  32.2 Mbits/sec
    [  4]   4.00-5.00   sec  3.80 MBytes  31.9 Mbits/sec
    [  4]   5.00-6.00   sec  3.80 MBytes  31.9 Mbits/sec
    [  4]   6.00-7.00   sec  3.79 MBytes  31.8 Mbits/sec
    [  4]   7.00-8.00   sec  3.79 MBytes  31.8 Mbits/sec
    [  4]   8.00-9.00   sec  3.80 MBytes  31.9 Mbits/sec
    [  4]   9.00-10.00  sec  3.81 MBytes  31.9 Mbits/sec
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bandwidth       Retr
    [  4]   0.00-10.00  sec  51.2 MBytes  43.0 Mbits/sec    0             sender
    [  4]   0.00-10.00  sec  41.8 MBytes  35.1 Mbits/sec                  receiver
    
    iperf Done.
    

    其中 TLS 和 QUIC 是用 gost 建立隧道的。

    请问大家可能的原因有什么呢?

    另外一个信息是:WireGuard 测试本地到服务器的上传没有问题(能跑满 30Mbps )。

    15 replies  •  2020-04-06 17:07:58 +08:00
    neteroster
    neteroster
    OP
    Apr 6, 2020
    1
    @Livid 发帖的系统似乎有点问题。我只点了一下,但是出来两个帖子。昨天看到的 t/659578 和 t/659570 似乎也有这个问题。
    Livid
    Livid
    MOD
    PRO
    Apr 6, 2020
    2
    @neteroster 你看到的那个是有人故意重复发帖( Topic ID 有距离)。
    ZRS
    ZRS
    Apr 6, 2020 via iPhone
    3
    电信对 UDP 有比较强的 Qos 策略
    alect
    alect
    Apr 6, 2020
    4
    你不用轻量就没这个问题
    mason961125
    mason961125
    Apr 6, 2020 via iPhone
    5
    轻量只是简单的对电信不友好而已。
    nealwx
    nealwx
    Apr 6, 2020 via Android
    6
    轻量云啊,我联通晚高峰被 qos 严重,然后延时加倍
    zbttl
    zbttl
    Apr 6, 2020
    7
    同
    我猜不是 udp 的问题,我这边也是,无论是 ss 的 udp 还是裸 udp 测速还是 kcptun 都不会碰到限速
    但 wireguard 也是慢,套 udp2raw 也没用
    而且同样是走 udp 的 openvpn 更慢。。。
    neteroster
    neteroster
    OP
    Apr 6, 2020
    8
    @zbttl 没错。我在 DigitalOcean 新加坡和美国两个数据中心用 WireGuard (~40Mbps),也只有 QUIC (~100Mbps) 的一半,且远远不及 TCP (150Mbps+)。

    你那边是双向传输都这么慢,还是有一个方向明显更快呢?
    vk42
    vk42
    Apr 6, 2020
    9
    qiang 对 VPN 流量定向 QoS ?
    Tink
    Tink
    Apr 6, 2020 via iPhone
    10
    udp 啊
    billytom
    billytom
    Apr 6, 2020 via iPhone
    11
    蔷对 upd 下行有严重的 Qos,因为上行速率是正常的,换用 tcp 的方式吧
    lcdtyph
    lcdtyph
    Apr 6, 2020 via iPhone
    12
    上下行的 cpu 使用率是什么样的
    neteroster
    neteroster
    OP
    Apr 6, 2020
    13
    @lcdtyph 占用都在 2% 以内。

    现在这个点下行已经炸到只剩 200Kbps 了。
    lcdtyph
    lcdtyph
    Apr 6, 2020 via iPhone
    14
    难道是针对 quic 流量有单独的 qos 规则么
    zbttl
    zbttl
    Apr 6, 2020 via Android
    15
    @neteroster pc 端,无论是 tunsafe 还是 wireguard,上传速度下载速度都很慢( 4mbps )
    但在安卓端,上传速度正常( 25mpbs )了,下载依然慢
    不过我过 wireguard 测试用的 speedtest,没用 iperf3 测
    服务器 do 法兰克福
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   726 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 17:37 · PVG 01:37 · LAX 09:37 · JFK 12:37
    ♥ Do have faith in what you're doing.