转载自isir的密码花园 :https://www.isir.xyz/245

背景

一直有个疑问,Gost隧道的哪个协议的速度最快,延迟最低。今天群里的朋友讨论到协议的选择,当然每个人都有不同的看法。不过没有定论,经过在线查询也找不到测试的文章,所以这次做一个吃力不讨好的工作,做为日后协议选择参考。

Gost是什么,见官方文档:https://v2.gost.run

本次测试主要测试极速,不测试延迟。使用的测试软件为iperf3。

测试的协议包含常用加密和不加密协议,包含是否带relay,共需测12次:

  • [ws, wss, tls] + [relay]
  • [mws, mwss, mtls] + [relay]

为了让结果更具参考性,所以加上一个不采用gost中转的基准测试,和采用gost中转的tcp协议模式。

测试结果汇总表

{hide}

协议速度Gb/s
WS1.35
WSS1.10
TLS2.23
MWS1.43
MWSS1.10
MTLS1.41
RELAY + WS1.35
RELAY + WSS1.10
RELAY + TLS1.55
RELAY + MWS1.39
RELAY + MWSS1.10
RELAY + MTLS1.34
裸连速度25.00
GPST TCP12.00

{/hide}

基本测试

测试Iperf本地裸连速度

在本地debian服务器上开启一个iperf3服务[窗口1]:

root@debianbt:~# iperf3 -s -p 8888
-----------------------------------------------------------
Server listening on 8888
-----------------------------------------------------------

另开一个窗口[窗口2]运行数据传输命令:

root@debianbt:~# iperf3 -c 127.0.0.1 -p 8888 -t 3
Connecting to host 127.0.0.1, port 8888
[ 5] local 127.0.0.1 port 45934 connected to 127.0.0.1 port 8888
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 2.88 GBytes 24.7 Gbits/sec 0 2.50 MBytes 
[ 5] 1.00-2.00 sec 2.88 GBytes 24.8 Gbits/sec 0 2.50 MBytes 
[ 5] 2.00-3.00 sec 2.92 GBytes 25.1 Gbits/sec 0 2.50 MBytes 
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-3.00 sec 8.68 GBytes 24.9 Gbits/sec 0 sender
[ 5] 0.00-3.04 sec 8.67 GBytes 24.5 Gbits/sec receiver                 receiver

得到iperf3裸连传输速度为25G

测试iperf3经gost tcp协议直接中转后速度

再开一个窗口[窗口3],输入命令:

root@debianbt:~# ./gost -L "tcp://:1000/127.0.0.1:8888"
2022/04/21 20:27:03 route.go:679: tcp://:1000 on [::]:1000

在[窗口2]中通过gost中转测速:

root@debianbt:~# iperf3 -c 127.0.0.1 -p 1000 -t 3
Connecting to host 127.0.0.1, port 1000
[  5] local 127.0.0.1 port 54386 connected to 127.0.0.1 port 1000
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  1.39 GBytes  11.9 Gbits/sec    0   2.50 MBytes       
[  5]   1.00-2.00   sec  1.39 GBytes  11.9 Gbits/sec    0   2.50 MBytes       
[  5]   2.00-3.00   sec  1.45 GBytes  12.5 Gbits/sec    0   2.50 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-3.00   sec  4.22 GBytes  12.1 Gbits/sec    0             sender
[  5]   0.00-3.04   sec  4.22 GBytes  11.9 Gbits/sec                  receiver

得到通过gost直接tcp中转速度为12G【分析原因为本地测速,所以速度约为极速一半】

测试ws协议

新开一个[窗口4]模拟落地机,输入命令:

root@debianbt:~# ./gost -L "ws://:2000"
2022/04/21 20:36:11 route.go:679: ws://:2000 on [::]:2000

用[窗口3]模拟中转机,命令修改为:

root@debianbt:~# ./gost -L "tcp://:1000/127.0.0.1:8888" -F "ws://127.0.0.1:2000"
2022/04/21 20:39:32 route.go:679: tcp://:1000 on [::]:10000

在[窗口2]中运行测速命令:

root@debianbt:~# iperf3 -c 127.0.0.1 -p 1000 -t 3
Connecting to host 127.0.0.1, port 1000
[  5] local 127.0.0.1 port 54458 connected to 127.0.0.1 port 1000
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec   170 MBytes  1.42 Gbits/sec    0   1.25 MBytes       
[  5]   1.00-2.00   sec   165 MBytes  1.38 Gbits/sec    0   1.25 MBytes       
[  5]   2.00-3.00   sec   164 MBytes  1.37 Gbits/sec    0   1.25 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-3.00   sec   498 MBytes  1.39 Gbits/sec    0             sender
[  5]   0.00-3.05   sec   487 MBytes  1.34 Gbits/sec                  receiver

得到的测速结果ws协议中转速度1.35G。

测试wss协议

修改[窗口4]命令为:

./gost -L "wss://:2000?cert=isir.crt&key=isir.key"
2022/04/21 20:47:42 route.go:679: wss://:2000 on [::]:2000

修改[窗口3]命令为:

root@debianbt:~# ./gost -L "tcp://:1000/127.0.0.1:8888" -F "wss://127.0.0.1:2000"
2022/04/21 20:44:12 route.go:679: tcp://:1000 on [::]:1000

在窗口2中运行测速命令:

root@debianbt:~# iperf3 -c 127.0.0.1 -p 1000 -t 3
Connecting to host 127.0.0.1, port 1000
[  5] local 127.0.0.1 port 54474 connected to 127.0.0.1 port 1000
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec   140 MBytes  1.17 Gbits/sec    0   2.50 MBytes       
[  5]   1.00-2.00   sec   135 MBytes  1.13 Gbits/sec    0   2.50 MBytes       
[  5]   2.00-3.00   sec   129 MBytes  1.08 Gbits/sec    1   2.50 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-3.00   sec   403 MBytes  1.13 Gbits/sec    1             sender
[  5]   0.00-3.05   sec   392 MBytes  1.08 Gbits/sec                  receiver

得到测速结果wss协议中转速度1.1G

测试tls协议

修改[窗口4]命令为:

root@debianbt:~# ./gost -L "tls://:2000?cert=isir.crt&key=isir.key"
2022/04/21 20:48:40 route.go:679: tls://:2000 on [::]:2000

修改[窗口3]命令为:

root@debianbt:~# ./gost -L "tcp://:1000/127.0.0.1:8888" -F "tls://127.0.0.1:2000"
2022/04/21 20:48:46 route.go:679: tcp://:1000 on [::]:1000

在窗口2中运行测速命令:

root@debianbt:~# iperf3 -c 127.0.0.1 -p 1000 -t 3
Connecting to host 127.0.0.1, port 1000
[  5] local 127.0.0.1 port 54498 connected to 127.0.0.1 port 1000
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec   289 MBytes  2.42 Gbits/sec    0   1.50 MBytes       
[  5]   1.00-2.00   sec   255 MBytes  2.14 Gbits/sec    0   1.50 MBytes       
[  5]   2.00-3.00   sec   266 MBytes  2.23 Gbits/sec    0   1.50 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-3.00   sec   809 MBytes  2.26 Gbits/sec    0             sender
[  5]   0.00-3.05   sec   798 MBytes  2.20 Gbits/sec                  receiver

得到测速结果`tls协议中转速度2.23G。

测试[ws, wss, tls] + [relay]协议

测试relay+ws协议

修改[窗口4]命令为:

root@debianbt:~# ./gost -L "relay+ws://:2000"
2022/04/21 20:50:07 route.go:679: relay+ws://:2000 on [::]:2000

修改[窗口3]命令为:

root@debianbt:~# ./gost -L "tcp://:1000/127.0.0.1:8888" -F "relay+ws://127.0.0.1:2000"
2022/04/21 20:50:28 route.go:679: tcp://:1000 on [::]:1000

在窗口2中运行测速命令:

root@debianbt:~# iperf3 -c 127.0.0.1 -p 1000 -t 3
Connecting to host 127.0.0.1, port 1000
[  5] local 127.0.0.1 port 54510 connected to 127.0.0.1 port 1000
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec   169 MBytes  1.42 Gbits/sec    0   1.25 MBytes       
[  5]   1.00-2.00   sec   160 MBytes  1.34 Gbits/sec    0   1.25 MBytes       
[  5]   2.00-3.00   sec   165 MBytes  1.38 Gbits/sec    0   1.25 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-3.00   sec   494 MBytes  1.38 Gbits/sec    0             sender
[  5]   0.00-3.04   sec   482 MBytes  1.33 Gbits/sec                  receiver

得到测速结果relay+ws协议中转速度1.35G

测试relay+wss协议

修改[窗口4]命令为:

root@debianbt:~# ./gost -L "relay+wss://:2000?cert=isir.crt&key=isir.key"
2022/04/21 20:53:05 route.go:679: relay+wss://:2000 on [::]:2000

修改[窗口3]命令为:

root@debianbt:~# ./gost -L "tcp://:1000/127.0.0.1:8888" -F "relay+wss://127.0.0.1:2000"
2022/04/21 20:53:32 route.go:679: tcp://:1000 on [::]:1000

在窗口2中运行测速命令:

root@debianbt:~# iperf3 -c 127.0.0.1 -p 1000 -t 3
Connecting to host 127.0.0.1, port 1000
[  5] local 127.0.0.1 port 54522 connected to 127.0.0.1 port 1000
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec   137 MBytes  1.15 Gbits/sec    0   1.31 MBytes       
[  5]   1.00-2.00   sec   134 MBytes  1.12 Gbits/sec    0   1.31 MBytes       
[  5]   2.00-3.00   sec   132 MBytes  1.11 Gbits/sec    0   1.31 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-3.00   sec   403 MBytes  1.13 Gbits/sec    0             sender
[  5]   0.00-3.05   sec   393 MBytes  1.08 Gbits/sec                  receiver

得到测速结果relay+wss协议中转速度1.1G

测试relay+tls协议

修改[窗口4]命令为:

root@debianbt:~# ./gost -L "relay+tls://:2000?cert=isir.crt&key=isir.key"
2022/04/21 20:54:42 route.go:679: relay+tls://:2000 on [::]:2000

修改[窗口3]命令为:

root@debianbt:~# ./gost -L "tcp://:1000/127.0.0.1:8888" -F "relay+tls://127.0.0.1:2000"
2022/04/21 20:54:49 route.go:679: tcp://:1000 on [::]:1000

在窗口2中运行测速命令:

root@debianbt:~# iperf3 -c 127.0.0.1 -p 1000 -t 3
Connecting to host 127.0.0.1, port 1000
[  5] local 127.0.0.1 port 54534 connected to 127.0.0.1 port 1000
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec   190 MBytes  1.59 Gbits/sec    0   1.44 MBytes       
[  5]   1.00-2.00   sec   185 MBytes  1.55 Gbits/sec    0   1.44 MBytes       
[  5]   2.00-3.00   sec   186 MBytes  1.56 Gbits/sec    0   1.44 MBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-3.00   sec   561 MBytes  1.57 Gbits/sec    0             sender
[  5]   0.00-3.06   sec   557 MBytes  1.53 Gbits/sec                  receiver

得到测速结果relay+tls协议中转速度1.55G

测试mws, mwss, mtls协议

同样方式测速:

得到测速结果mws协议中转速度1.43G

得到测速结果mwss协议中转速度1.1G。

得到测速结果mtls协议中转速度1.41G。

测试[mws, mwss, mtls] + [relay]协议

同样方式测速:

得到测速结果relay+mws协议中转速度1.39G

得到测速结果relay+mwss协议中转速度1.1G。

得到测速结果relay+mtls协议中转速度1.34G。

分类: 实用教程 标签: SpeedtestGOST测速iperf3

评论

全部评论 17

  1. 1
    1
    Google Chrome Windows 10
    1
  2. ggg
    ggg
    Google Chrome Windows 10
    gggg
  3. 靓仔
    靓仔
    Google Chrome Windows 10
    幸苦了!
  4. 滴滴
    滴滴
    Google Chrome Android
    想看结果
  5. 6
    6
    Google Chrome Windows 10
    6
  6. Naochen
    Naochen
    Google Chrome Windows 10
    想看结果
  7. locet
    locet
    Google Chrome Windows 10
    辛苦了!
  8. locet
    locet
    Google Chrome Windows 10
    想看结果
  9. gggg
    gggg
    Google Chrome Windows 10
    gggg
  10. 夸克
    夸克
    Google Chrome Windows 10
    牛逼
  11. y
    y
    Google Chrome Android
    h
  12. 13131
    13131
    Google Chrome Windows 10
    1
  13. 潮
    Google Chrome Windows 10
    幸苦了!
  14. crush
    crush
    Google Chrome Windows 10
    ::(乖)
  15. crush
    crush
    Google Chrome Windows 10
    ::(太开心)::(乖)
  16. 阿里cc
    阿里cc
    Google Chrome Windows 10
    看看,学习了
  17. maru
    maru
    Google Chrome Windows 10
    看看结果,辛苦

目录