支持MPTCP
tqangxl opened this issue · 0 comments
tqangxl commented
详细描述建议的内容
sing-box 和 Xray-core 分别在1.4.0和1.8.6版本后支持了MultiPath TCP,希望可以加入配置
在服务器配置页面加入是否启用MultiPath TCP的选项
也可以干脆默认启用(该功能需要在服务器端也启用,在服务器端没有配置的话这一默认配置不会有任何正面或负面的效果)
sing-box 内核只需在配置文件的拨号字段加入 "tcp_multi_path": true,见 https://sing-box.sagernet.org/configuration/shared/dial/
Xray-core只需在配置文件的出站的 "sockopt" 字段加入 "tcpNoDelay": true 和 "tcpMptcp": true,见 XTLS/Xray-core#2520
工作原理说明:
MPTCP在发送端和接收端建立MPTCP连接,协商使用MPTCP。
MPTCP在发送端和接收端分别建立多个TCP子连接(子流)。
发送端可以将数据分片发送到不同的TCP子流。
接收端会将从不同子流接收的数据汇聚合并,交付给应用层。
子流之间可以传输不同的数据分片,以达到均衡负载和提高网络利用率的目的。
如果某个子连接断开,MPTCP可以快速切换traffic到其他子连接,提高可靠性。