Closed chenx-dust closed 10 months ago
Go程序从1.21开始可以通过环境变量GODEBUG=multipathtcp=1
来直接开启MPTCP的支持而不需要修改代码,GOST服务端也可以通过mptcp=true
选项来开启MPTCP的支持
gost -L :8080?mptcp=true
Go程序从1.21开始可以通过环境变量
GODEBUG=multipathtcp=1
来直接开启MPTCP的支持而不需要修改代码,GOST服务端也可以通过mptcp=true
选项来开启MPTCP的支持gost -L :8080?mptcp=true
感谢解答
go 1.21 对 mptcp 提供了支持。mptcp 的最大作用是可以对 tcp 单连接进行负载均衡,这对于保证连接可用性和提高带宽具有显著意义。与 mptcp 相比,现有的负载均衡模式是在连接之上进行的,如果服务仅使用单个 tcp 连接,则无法实现负载均衡。
但是 mptcp 的缺点也是显著的,尽管它允许我们从不同的 ip 端口发起连接,但它要求这个连接有同一个对端,并且 go 似乎没有对 mptcp 的路由策略控制没有很好的实现(?存疑,我对 go 的了解有限,抱歉)。但无论如何,仅仅实现 mptcp 应该是容易且有意义的。