From 22d17129d2dfe6a59c28466dbfae637546b3dc1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=A3=8E=E6=89=87=E6=BB=91=E7=BF=94=E7=BF=BC?= Date: Wed, 31 Dec 2025 21:41:33 +0800 Subject: [PATCH] Outbound: Correct mux concurrency desc and & add simple scheduling mechanism --- docs/config/outbound.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/config/outbound.md b/docs/config/outbound.md index e8ba3f86..95696316 100644 --- a/docs/config/outbound.md +++ b/docs/config/outbound.md @@ -128,11 +128,11 @@ Mux 功能是在一条 TCP 连接上分发多个 TCP 连接的数据。实现细 > `concurrency`: number -最大并发连接数。最小值 `1`,最大值 `128`。省略或者填 `0` 时都等于 `8`, 大于 `128` 的值都将视为 128。 +最大并发连接数。最小值 `1`,最大值 `128`。省略或者填 `0` 时都等于 `8`, 大于 `128` 的值都将视为 128, 因为当一个连接达到最大复用次数 128 后其将不会再被分配任何新的子连接。 这个数值表示了一个 TCP 连接上最多承载的子连接数量。比如设置 `concurrency=8` 时,当客户端发出了 8 个 TCP 请求,Xray 只会发出一条实际的 TCP 连接,客户端的 8 个请求全部由这个 TCP 连接传输。 -核心并不会回收关闭子连接 id, 这意味着这其实是一个连接最大可以被复用的次数,比方说如果设置为 16, 如果该连接已经被复用了 16 次,其中 10 条已经关闭了,这并不会为该连接“腾出”十个位置,核心仍会认为该连接复用次数已满并打开新的连接 +当全部 Mux 连接的最大子连接连接都已被占满,核心将发出新的连接承载子连接。如果短时间内并发大量子连接后续逐渐减少,核心内部调度器将倾向于将请求分配至 2 个连接交替使用并闲置其他连接等待它们的所有子连接自然结束后将其关闭以节约资源。如果总子连接数继续长时间低于 `concurrency` 则在其中一条达到最大复用次数后核心将回到单连接状态。 ::: tip 填负数时,如 `-1`,不使用 Mux 模块承载 TCP 流量。