↓ 跳过正文

多路复用科普:Mux 和并发连接数是什么意思

·1239 字·3 分钟
作者
吾便宜
多路复用 Mux 原理示意

插图来源:Storyset

一句话
#

Mux(多路复用)= 让多个网络请求挤在一条加密连接里走,而不是每个请求单独建一条连接。

打个比方
#

不开 Mux:你每打开一个网页,手机都要和服务器"打个招呼"建条新通道,网页元素多,招呼就打得多,又慢又费。

开了 Mux:只建一条通道,所有请求排队走这一条,省掉了反复握手的开销,网页打开更快。

并发连接数是什么
#

就是"这条通道里同时能挤多少个请求"。设得太小,请求要排队;设得太大,服务器可能觉得你异常。客户端默认值一般就够用,不用调。

开还是不开
#

  • 开:浏览网页、刷 App,体验更好,延迟更低。大多数客户端默认开着。
  • 关:极少数场景,比如某些流媒体检测到多路复用会限流,或者排查问题时,用来排除变量。

哪些协议支持 Mux
#

VMess、VLESS 生态对 Mux 支持最成熟,客户端里一般有个开关,打开就行。Trojan、Shadowsocks 这类协议本身没有 Mux 的概念,不用找这个设置。Hysteria2、TUIC 基于 QUIC,QUIC 原生就有多路复用,相当于"自带 Mux",不用额外开。

开了 Mux 会更耗流量吗
#

基本不会。Mux 省的是"建连接"的握手开销,传输的数据量是一样的。相反,因为握手少了,总流量还可能略降一点。电量也一样:频繁建连接比维持一条连接更耗电。

什么时候要关掉它排查
#

如果你遇到"大部分网站正常、个别网站打不开"的怪问题,可以试试关掉 Mux 再测。极少数网站的服务端对多路复用的兼容不好,关掉就能恢复——这是个实用的排除法,记住它。

要注意的
#

Mux 是客户端和服务端之间的约定,两边都要支持才行。机场没开的话,你客户端开了也没用——不过主流机场和客户端(如 VLESS/VMess 生态)基本都支持,不用操心。

一句话总结
#

Mux 就是"拼车":多个请求拼一辆车走,又快又省。默认开着别动,出怪问题时记得它是个排查选项。

相关阅读:VMess 协议详解、VLESS 协议详解、gRPC 传输方式科普。

为什么手机上开 Mux 感觉更明显
#

手机网络延迟本来就高,每次握手都要多等几十到上百毫秒。不开 Mux 时刷一个信息流页面,可能要握手几十次,延迟全叠加上去;开了 Mux,握手只做一次,后面的请求直接复用。延迟越高,Mux 省下的时间越可观——这就是为什么 WiFi 下感觉不明显、移动网络下区别很大的原因。

机场不支持 Mux 会发生什么
#

什么都不会发生,顶多是"没效果"。Mux 是协商出来的:客户端说"我想复用",服务端说"我不支持",那就老老实实每条请求单独建连接,不会报错、不会断连。所以你大可放心开着,不用担心和机场不兼容。

一个冷知识:QUIC 自带多路复用
#

前面提到 Hysteria2、TUIC 基于 QUIC,相当于自带 Mux。原理见 QUIC 科普。所以如果你用的是这类协议,客户端里找不到 Mux 开关是正常的——不是缺功能,是不需要。

想对比两个 QUIC 协议的取舍,看 Hysteria2 对比 TUIC。