-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Simple Multiplexing(SMUX) #168
Comments
绝对正确的选择! 2016-08-31 20:11 GMT+08:00 xtaci [email protected]:
|
kcptun smux分支 有能力的可以尝试自己编译 |
不知道smux有哪方面的优势? |
没有优势,主要是消除yamux的一大堆bug,做一个正确的实现。 |
嗯,alpha测试中。 |
没有严谨的测试过,不过可以很直观的感受到y2b缓冲条比原来的更加快速。赞。 |
最大的看点是: CPU , MEM 占用率优化了很多很多,说明系统的效率大大地进步了,几乎是两代不同的产品。 已经在树莓派上跑了一个下午,迄今都很稳定,速度很快很平稳,传输曲线很平坦,比ymux版本的速度又进一步提升了大约80%,真得大赞!佩服啊! |
https://github.com/xtaci/kcptun/releases/tag/smuxalpha 刚放了个测试版,有兴趣的同学可以试试。 |
稳定性大幅提升 |
很好,希望听到更多的声音。 |
反映一个问题 proxychians+wget下载大文件时会出问题
以下是kcptun
但是wget自动重试了之后还是可以下载。 |
@lizongzeshunshun 什么版本 |
@xtaci smux |
@xtaci 但是,0901会偶尔出现 |
嗯,已经观察到此问题 |
Alpha 版本smux |
@xtaci beta测试中问题已经得到解决。感谢! |
@xtaci 真勤快,赞一个。 beta版本没出现之前的“use of closed network connection 0”了。 另,我发现,不管是alpha还是beta,还是之前的版本,YouTube 1080P下网速比 4K或1440P都快... 我用的是fast3模式。之前尝试manual,但一直没找到比fast3快的参数,所以就没有折腾了。 |
@xtaci @lizongzeshunshun 其实alpha版本我在用wget下载1G文件时,本身wget并没有任何报错,只有sever/client的log里会有上述提示而已,但是我没有用proxychains. 另外,无论alpha还是beta版本, CPU / MEM 控制得相当好!目前Beta 版本,满负荷工作状态下,server端 MEM 在29M左右,client端MEM在60-68M, 系统也非常稳定。 |
@choicky |
@braveguywallce 重新下载一下beta,刚上传。 |
@braveguywallce 我测试过程中服务端/客户端均没有出现 |
@xtaci 最新的beta 0902版本已经OK! client 和 server再无上述提示出现!Beta版本CPU/MEM在我的树莓派上的情况如下(smux kcptun full load): |
很好,争取晚上发布release. |
@xtaci Highly appreciate your great work! Well done! |
@xtaci 我觉得真的很怪,这个特供版本,速率也不高(2000-3000),波动也大,但是体验要好很多,它基本不缓冲,点开就开始播放了,googleplay下载也不断流了,速度虽然慢点,但都在我接受的范围。太奇怪了。不纠结了,谢谢 |
@chk970222 高度怀疑vps极慢。CPU被同一台机器上的其它vps抢占了完, 这个问题不会做为正式fix,太极端了。当然在以后的优化过程中,会考虑这种极端情况。 |
@xtaci 好的,谢谢,不用考虑我这种极端情况。现在我看了将近一个小时y2b,居然能上万了,但是确实波动大。再次对你的付出表示感谢。 |
@chk970222 换稍微好点的vps,一个月出个10美刀也没啥,一年才120美刀,这种小钱就别省了。 |
@xtaci 你一看我就是拿个渣渣来试手,我完全是外行,慢慢稍微熟悉点了来,这点钱倒没事,主要是不会就浪费了。 |
20160904版本还会有session scavenged出现 |
各位,试一下0904。 若干小修正。 |
@xtaci 我的配置 ./client_linux_amd64 -r "xxxxx" -l "xxxxx" -key xxxxx -crypt salsa20 -sndwnd 256 -rcvwnd 1024 -autoexpire 600 -mode manual -conn 2 -nodelay 1 -resend 2 -nc 1 -interval 20 -nocomp -dscp 46 -mtu 1400 -datashard 70 -parityshard 30
./server_linux_amd64 -t "xxxxxx" -l "xxxxx" -key xxxx -crypt salsa20 -sndwnd 2048 -rcvwnd 2048 -mode manual -nodelay 1 -resend 2 -nc 1 -interval 20 -nocomp -dscp 46 -mtu 1400 -datashard 70 -parityshard 30 未使用KT加速情况下,Y2B可以跑到1W Client: KCP SNMP:&{BytesSent:298890 BytesReceived:35680920 MaxConn:2 ActiveOpens:2 PassiveOpens:0 CurrEstab:2 InErrs:0 InCsumErrors:13 InSegs:96872 OutSegs:4848 OutBytes:3946948 RetransSegs:100 FastRetransSegs:0 EarlyRetransSegs:1 LostSegs:99 RepeatSegs:14046 FECRecovered:1537 FECErrs:0 FECSegs:28530} Server: KCP SNMP:&{BytesSent:74732880 BytesReceived:31151 MaxConn:2 ActiveOpens:0 PassiveOpens:2 CurrEstab:2 InErrs:0 InCsumErrors:21 InSegs:6017 OutSegs:447195 OutBytes:593886977 RetransSegs:256024 FastRetransSegs:136843 EarlyRetransSegs:76874 LostSegs:42307 RepeatSegs:0 FECRecovered:54 FECErrs:0 FECSegs:1792} 是否参数有误,需要调整 |
@xiocode 建议在不是很精通网络通信技术的情况下还是不要采用manual模式。可以尝试默认的几种模式,选择适合自己网络环境的。manual模式下,不同参数的组合,对速度的影响差别明显。 |
@xtaci 0904 正式版已经测试,没有问题!手机端下载文件的问题也解决了,其它各方面都不错!曲线输出也很漂亮平稳。采用fast模式下,有效流量/消耗流量 >= 1 : 3 , 和某些VPS供应商做的测试结果一致。 |
0904应该也解决了Openwrt x64上客户端占用大量内存的问题,跑了20多个小时,目前还是25M左右,以前早暴到300M以上了,很好 |
@Cye3s 还是自己造的轮子更好用。。。哈 |
@xtaci 目前0904版本在稳定使用中,现在考虑的也是怎么尽量优化。有关根据SNMP的输出值来精细调整优化manual项下各项参数的专业知识,能否再进一步介绍?谢谢! |
@braveguywallce #137 参数调整在这里讨论,你可以先看下我之前的发言,了解基本困难在何处。 |
@xtaci 又来请教题外了,实在不好意思,自己实在搞不定,闲时麻烦指点下,谢谢。 |
怀疑SMUX后的版本存在流量过度浪费问题 刚刚更新0906版本的时候看了下vultr控制台 本月入站只有47.83GB 出站居然有553.62 GB十倍还多 这个VPS上只跑了SS和kcptun |
@Tmily 是的,0904早期版本有bug,0906已经修正。 |
@baggiogogo 不好意思,我不用redsocks/adbyby 的 |
@xtaci 没关系,我这小事,专心你的项目造福大家,感谢感谢。 |
@Cye3s 服务器端用GOGC调整吧 |
smux同样设置是比yamux快,但至今所有版本下载大文件还是会断线,当然一般会续传看不出来,我是下bigfile网盘是才发现的,客户端session scavenged服务端broken pipe,您说的是客户端设置了autoexpire就会有brokenpipe,但同样设置yamux版却不会有,参数还是前几天那贴老样子0 40 2 1 |
autoexpire会强制断线 ,之前的yamux不会强制断线,会占用不必要的带宽。正常行为。 |
@baggiogogo 试试吧 |
@cjjdaq,好的,我试试,感谢! |
https://github.com/xtaci/smux
yamux问题太多, 正在重新实现mux库, 希望感兴趣的同学提意见。
The text was updated successfully, but these errors were encountered: