Ubuntu 22.04 自带 mptcp 了,有什么好的应用方法吗?

2022-04-19 20:41:42 +08:00
 seakingii
sysctl -a | grep mptcp
net.ipv4.tcp_available_ulp = espintcp mptcp
net.mptcp.add_addr_timeout = 120
net.mptcp.allow_join_initial_addr_port = 1
net.mptcp.checksum_enabled = 0
net.mptcp.enabled = 1
net.mptcp.stale_loss_cnt = 4

uname -r
5.15.0-25-generic

4253 次点击
所在节点    Linux
15 条回复
codefever
2022-04-19 20:49:48 +08:00
这是干啥用的
seakingii
2022-04-19 20:54:07 +08:00
多路聚合 TCP 链接

最新的苹果手机,三星手机就有带这个功能. 手机上,在不同的线路切换时更流畅(比如从 WIFI 切换到 流量时)
seakingii
2022-04-19 20:54:41 +08:00
@codefever 有些提供第三方 PROXY 服务的商家 也开始应用了...
whileFalse
2022-04-19 22:42:32 +08:00
没明白,那对端要怎么支持?
seakingii
2022-04-19 23:23:20 +08:00
@whileFalse 就是你的苹果手机可以同时联接 WIFI 和 移动网 5G,当你离开家里的时候,不会因为没有 WIFI 让你一直在看的直播中断--因为你还有另一条线路连接在移动网络 5G

另外就是如果你的电脑有三个网卡,一个连电信一个连移动 一个联通, 可以用这种 同时利用三条线路...
kongkongyzt
2022-04-19 23:53:24 +08:00
喔,没想到 ubuntu 也用上和我 manjaro 一样的内核版本了
whileFalse
2022-04-20 01:14:40 +08:00
@seakingii 我手机是可以同时连接 Wi-Fi 和蜂窝,但单条 tcp 连接能从 Wi-Fi 不间断地迁移到蜂窝吗?
whileFalse
2022-04-20 01:20:31 +08:00
@seakingii 搜了一下果然,这个玩意不仅需要服务器端支持,还需要中间的网络层支持,那就等于没卵用。

目前看来 speedify 还是最优选择。
cz5424
2022-04-20 01:42:20 +08:00
ZeroClover
2022-04-20 02:53:45 +08:00
需要全链路支持,而且没有明显的好处的东西,一般很难推广起来

比如 TCP Fast Open

两端都是你自己的设备的情况下会有一些作用
ysc3839
2022-04-20 09:06:06 +08:00
这种特性,好像 SCTP 就支持吧? SCTP 有用户模式的实现,不需要内核支持,还可以走 UDP 传输,兼容性更好。
iqfEmhuNidBhDfWo
2022-04-20 11:12:10 +08:00
第一反应还以为是速蛙云家地那玩意儿
zzhzero
2022-04-20 23:52:46 +08:00
@seakingii 实际情况是你用的 app 会主动断开播放然后告诉你 WiFi 断了问你要不要继续播放
seakingii
2022-04-21 00:17:13 +08:00
@zzhzero 这个是软件的开发设置,我没有实际使用过,不过理论上开发者可以不警告自动切换,至少可以在 APP 里做个开关关闭警告,技术上是可以切换的.

苹果目前用来给 SIRI 用,在 WIFI 和流量切换时更顺畅


==============

iPhone 或 iPad 上的 Multipath TCP
iPhone 和 iPad 在具有有效的蜂窝数据连接的情况下使用 MPTCP 来建立两个连接:

通过 Wi-Fi 的主要 TCP 连接
通过蜂窝数据的备用连接
如果 Wi-Fi 不可用或无响应,iOS 会使用蜂窝数据连接。

MPTCP 使用 TCP 选项域 30 ,这是互联网编号分配机构 (IANA) 专为此用途而保留的。如果 iOS 设备与服务器之间的任何中间盒(如路由器或交换机)都不支持 MPTCP ,则 iOS 会建立标准的 TCP 连接。

例如,当您向 Siri 提问时,Siri 会尝试通过 Wi-Fi 建立 MPTCP 连接。如果连接成功,Siri 会通过蜂窝数据建立备用连接。如果 Wi-Fi 不可用或不可靠,则 MPTCP 会立即在后台切换到蜂窝数据。
huangya
2023-01-13 11:24:06 +08:00
@whileFalse
@ZeroClover
挖个坟,应该是不需要全链路的支持。这里有个例子 https://www.tessares.net/mptcp-proxy-setup-at-home-easier-now/。 只要双方支持就可以了,我不明白为什么要全链路支持。

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

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

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

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

© 2021 V2EX