[游戏加速方案] sstap-ss-kcptun-udpspeeder-udp2raw

2019-05-23 10:46:25 +08:00
 eastlhu

这两个方案都是为了游戏加速( pubg ),有一个 hk 的 vps,10ms 的延迟,普通电信线路几乎不丢包,方案 1 不能成功连接,方案 2 可以正常连接。麻烦大家帮忙看下方案 1 哪里有问题,两个方案如下:
注:两个方案中,xx.xx.xx.xx 表示 vps 的 ip 地址

方案 1:sstap-ss-kcptun-udpspeeder-udp2raw

请问我这个配置有问题吗?
客户端:

tinymapper_wepoll.exe -l0.0.0.0:8089 -r127.0.0.1:5001 -u
speederv2.exe -c -l0.0.0.0:5001 -r127.0.0.1:6001 -f2:4 -k "pwd" --mode 0 --timeout 1
udp2raw_mp_nolibnet.exe -c -l0.0.0.0:6001 -rxx.xx.xx.xx:554 -k "pwd" --raw-mode easy-faketcp  

本地 ss 的服务器地址是 127.0.0.1:8089
本地 kcptun 的服务器地址是 127.0.0.1:5001,监听端口是 8089
kcptun 的参数大概是如此

{
    "listen":"0.0.0.0:9001",
    "target":"xx.xx.xx.xx:9090",
    "key":"password",
    "crypt":"aes-128",
    "conn":1,
    "sndwnd":8192,
    "rcvwnd":8192,
    "mtu":1350,
    "mode":"manual",
    "nocomp":true,
    "datashard":0,
    "parityshard":0,
    "dscp":46,
    "acknodelay":false,
    "nodelay":0,
    "resend":0,
    "nc":1,
    "interval":20,
    "autoexpire":60,
    "sockbuf":4194304,
    "keepalive":10
}

服务端:

sudo ./udp2raw_amd64 -s -l0.0.0.0:554 -r127.0.0.1:9000 -a -k "pwd" --raw-mode faketcp
sudo ./speederv2_amd64 -s -l0.0.0.0:9000 -r127.0.0.1:9001 -f2:4 -k "pwd" --mode 0 -q1

服务端 kcptun 的 listen 端口是 9001,原来如果只用 ss+kcptun 是能正常上网的。

整体思路是: 客户端通过 tinymapper 转发 ss 的 udp 流量到 speederv2 客户端通过 kcptun 将 tcp 流量转换为 udp 流量,再通过 kcptun 转发流量(tcp->udp)udp 流量到 speederv2 (加速)。
现在出现的问题是,sstap 测试,tcp 转发成功,udp 失败,在服务器的 kcptun 日志里面,看到

2019/05/21 09:25:22 stream opened 3
2019/05/21 09:25:49 stream closed 3
2019/05/21 09:25:50 io: read/write on closed pipe

猜测是连接被马上关闭了。请问我哪里有问题?
另外看到 udpspeeder 运行起来,控制台有一串参数如下:

jitter_min=0 jitter_max=0 output_interval_min=0 output_interval_max=0 fec_timeout=8 fec_mtu=1250 fec_queue_len=1 fec_mode=0

fec_mtu=1250,跟我 kcptun 中设置的 mtu=1350 不一致,是否这个会有影响?


方案 2:sstap-ss-udpspeeder-udp2raw 方案

如果我去掉 kcptun 这一层,是可以实现的。
本地 ss 服务器地址填 127.0.0.1:8089,监听端口 1080,其他参数和服务端 ss 一致 本地 sstap 增加 socks5 代理,地址填 127.0.0.1:1080,其他参数不用填

客户端:

将本地 ss 的 tcp 流量转发到远端服务器上的 ss 端口 9090
tinymapper_wepoll.exe -l0.0.0.0:8089 -rxx.xx.xx.xx:9090 -t

监听 ss 访问的 127.0.0.1:8089 服务器,将 ss 的 udp 流量转发到本地 6001 端口
speederv2.exe -c -l0.0.0.0:8089 -r127.0.0.1:6001 -f2:4 -k "password" --mode 0 --timeout 1
将本地 6001 端口的 udp 流量转发到远端服务器 554 端口,这个终端需要管理员命令启动
udp2raw_mp_nolibnet.exe -c -l0.0.0.0:6001  -rxx.xx.xx.xx:554 -k "password" --raw-mode easy-faketcp

服务端:

udp2raw --> udpspeeder:
sudo soft/udp/udp2raw/udp2raw_amd64 -s -l0.0.0.0:554 -r127.0.0.1:9000  -a -k "password" --raw-mode faketcp

udpspeeder --> ss
sudo soft/udp/udpspeeder/speederv2_amd64 -s -l0.0.0.0:9000 -rxx.xx.xx.xx:9090 -k "password" --mode 0 -f2:4 -q1

有一个疑问,kcptun+udpspeeder 有加速作用?是否需要加这一层 kcptun ?

1678 次点击
所在节点    宽带症候群
30 条回复
hlz0812
2019-05-23 10:52:00 +08:00
真要加速租个专线( nat 的也行)啥加速不用也比这个好,现在那么多不怕死把专线扔公网上来卖的
eastlhu
2019-05-23 10:56:30 +08:00
@hlz0812 嗯,专线肯定是更优的选择。主要是想探讨一下技术方案哪里有问题
trys1
2019-05-23 11:00:40 +08:00
请问楼主 10ms 的 vps 哪家买的?
hlz0812
2019-05-23 11:03:28 +08:00
@eastlhu 反正我觉得 udpspeeder 之类的东西加速作用不大,尤其是线路已经比较好的情况下,对差的线路有用,线路越好的时候想要更好花的钱就越多
eastlhu
2019-05-23 11:07:20 +08:00
@trys1 广东地区到 hk,gcp 就行了。
QQ2171775959
2019-05-23 18:20:44 +08:00
现在很多运营有障蔽一些端口的。
eastlhu
2019-05-23 19:48:10 +08:00
@QQ2171775959 我单独的 kcptun 用相同的端口,或者方案 2 都是可以正常使用的,应该不是端口问题吧。
justs0o
2019-05-24 08:42:34 +08:00
还不如买个机场的阿里 BUG 专线来的方便
eastlhu
2019-05-24 10:21:36 +08:00
@justs0o 阿里专线多少一个月啊。。为啥我收不到你的回复提醒?是我被降权了还是你被降权了?
kevincai100
2019-05-24 11:03:37 +08:00
eastlhu
2019-05-24 11:07:54 +08:00
@kevincai100 之前看了这个项目,应该也是可以。目前就是想试试 kcptun 在游戏加速的效果。
eastlhu
2019-05-24 11:10:33 +08:00
目前有一个方案 3,两条路线:
客户端:sstap-ss(tcp)-kcptun(tcp->kcp) ------- 服务端:kcptun-ss
客户端:sstap-ss(udp)-udpspeeder-udp2raw ------------服务端:udp2raw-udpspeeder-ss
这个方案目前也是可以通过的,回去开游戏试试这几个效果哪个更好。
lcy630409
2019-05-24 17:03:51 +08:00
我曾经也是用自己的香港 vps 加速 只是用 sstap 加普通的服务端
有个问题 就是白天不掉包 延迟低
但是到晚上玩游戏的时候 会掉包,游戏延迟会加大 10 几 ms,虽然只是 10 几 ms 但是很卡,开门都要 1 秒的时间
后来 花钱买了雷神 看中了可以暂停时间,开门就没问题了
lcy630409
2019-05-24 17:04:39 +08:00
只能说 自己的线路 还是比不上别人备案过的专线
别人优先级别高 审查少

自己的线路 优先低 还会被是不是审查 断 udp
CernetBoom
2019-05-24 19:05:17 +08:00
@lcy630409 专线不在公网上没优先级
hlz0812
2019-05-25 15:09:41 +08:00
@eastlhu 1G 流量 1 块钱那样子,如果你要批发大量资源的话找人私下买均价会低一些
hlz0812
2019-05-25 15:11:09 +08:00
目前我的方案是阿里的专线直接走 anyconnect,玩游戏跟国服没啥两样
ttvast
2019-05-29 10:42:18 +08:00
@CernetBoom 所谓的专线一样走公网,又不是真的虚电路,那个谁玩得起啊
CernetBoom
2019-05-29 10:53:33 +08:00
@ttvast 我指的是跨境端对端的,不是电信移动推销的那种"上网专线"
CernetBoom
2019-05-29 10:55:39 +08:00
@ttvast 稍微正常点的游戏加速器都是用的跨境专线

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/566862

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX