Xray-core icon indicating copy to clipboard operation
Xray-core copied to clipboard

mux阻塞问题的一个解决方法

Open wenzhuning opened this issue 3 years ago • 2 comments

由于mux内的子连接不是并发的,只有当一个子连接请求结束了,才会执行下一个子连接,很容易导致阻塞,比如看b站视频时切换清晰度会卡住,要等一段时间才能切换过去,我尝试了很多方法,目前只找到一个可以大幅减少阻塞的办法:

将Policy 本地策略的connIdle设置为2,uplinkOnly和downlinkOnly设置为0,就可以减少阻塞,猜想:当connIdle设置为2后,之前阻塞的mux连接就会在2秒后中断,这样新的mux连接就会重新创建。

这个方法也会出现其他问题,比如当请求延迟大于2秒时,会出现连接失败,需要重新刷新请求,还有就是不能保持长连接等等问题。

这个mux导致阻塞问题希望作者能解决,如果mux内的子连接能并发请求的话,就不会出现这个问题了。

wenzhuning avatar Nov 25 '22 03:11 wenzhuning

你试试把网卡mtu改成<=1450看看。我PC Windows/Linux上用1.6.5上看youtube有个莫名奇妙的断流问题,现象是播放过程中断流转圈,同时浏览器啥别的网页也打不开,等个5分钟才自己恢复,这个问题折磨了好久,最后发现mtu改成1450就好了。

hrimfaxi avatar Dec 13 '22 02:12 hrimfaxi

你试试把网卡mtu改成<=1450看看。我PC Windows/Linux上用1.6.5上看youtube有个莫名奇妙的断流问题,现象是播放过程中断流转圈,同时浏览器啥别的网页也打不开,等个5分钟才自己恢复,这个问题折磨了好久,最后发现mtu改成1450就好了。

这个阻塞问题跟mtu没啥关系,核心原因就是mux不能并发请求子连接

wenzhuning avatar Dec 13 '22 06:12 wenzhuning