【测试】Gost隧道性能测试 - 各个传输协议速度对比

【测试】Gost隧道性能测试 - 各个传输协议速度对比

Do Do
2023-03-03 / 13 评论 / 493 阅读 / 正在检测是否收录...

转载自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协议模式。

测试结果汇总表

基本测试

测试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。

0

评论 (13)

取消
  1. 头像
    1
    Windows 10 · Google Chrome

    1

    回复
  2. 头像
    ggg
    Windows 10 · Google Chrome

    gggg

    回复
  3. 头像
    靓仔
    Windows 10 · Google Chrome

    幸苦了!

    回复
  4. 头像
    滴滴
    Android · Google Chrome

    想看结果

    回复
  5. 头像
    6
    Windows 10 · Google Chrome

    6

    回复
  6. 头像
    Naochen
    Windows 10 · Google Chrome

    想看结果

    回复
  7. 头像
    locet
    Windows 10 · Google Chrome

    辛苦了!

    回复
  8. 头像
    locet
    Windows 10 · Google Chrome

    想看结果

    回复
  9. 头像
    gggg
    Windows 10 · Google Chrome

    gggg

    回复
  10. 头像
    夸克
    Windows 10 · Google Chrome

    牛逼

    回复
  11. 头像
    y
    Android · Google Chrome

    h

    回复
  12. 头像
    13131
    Windows 10 · Google Chrome

    1

    回复
  13. 头像
    Windows 10 · Google Chrome

    幸苦了!

    回复