diff --git a/sub/subJsonService.go b/sub/subJsonService.go index 508740e2..1a9d8a81 100644 --- a/sub/subJsonService.go +++ b/sub/subJsonService.go @@ -342,11 +342,7 @@ func (s *SubJsonService) genOutbound(inbound *model.Inbound, streamSettings map[ hyStream := streamSettings["hysteriaSettings"].(map[string]any) outHyStream := map[string]any{ "version": inboundSettings["version"], - } - if client.Auth != "" { - outHyStream["auth"] = client.Auth - } else { - outHyStream["auth"] = hyStream["auth"] + "auth": client.Auth, } if udpIdleTimeout, ok := hyStream["udpIdleTimeout"].(float64); ok { outHyStream["udpIdleTimeout"] = int(udpIdleTimeout) diff --git a/web/assets/js/model/inbound.js b/web/assets/js/model/inbound.js index d79775d0..9e305a79 100644 --- a/web/assets/js/model/inbound.js +++ b/web/assets/js/model/inbound.js @@ -323,18 +323,16 @@ class KcpStreamSettings extends XrayCommonClass { tti = 20, uplinkCapacity = 5, downlinkCapacity = 20, - congestion = false, - readBufferSize = 1, - writeBufferSize = 1, + cwndMultiplier = 1, + maxSendingWindow = 2 * 1024 * 1024, ) { super(); this.mtu = mtu; this.tti = tti; this.upCap = uplinkCapacity; this.downCap = downlinkCapacity; - this.congestion = congestion; - this.readBuffer = readBufferSize; - this.writeBuffer = writeBufferSize; + this.cwndMultiplier = cwndMultiplier; + this.maxSendingWindow = maxSendingWindow; } static fromJson(json = {}) { @@ -343,9 +341,8 @@ class KcpStreamSettings extends XrayCommonClass { json.tti, json.uplinkCapacity, json.downlinkCapacity, - json.congestion, - json.readBufferSize, - json.writeBufferSize, + json.cwndMultiplier, + json.maxSendingWindow, ); } @@ -355,9 +352,8 @@ class KcpStreamSettings extends XrayCommonClass { tti: this.tti, uplinkCapacity: this.upCap, downlinkCapacity: this.downCap, - congestion: this.congestion, - readBufferSize: this.readBuffer, - writeBufferSize: this.writeBuffer, + cwndMultiplier: this.cwndMultiplier, + maxSendingWindow: this.maxSendingWindow, }; } } @@ -1071,9 +1067,9 @@ class RealityStreamSettings extends XrayCommonClass { json.dest, json.serverNames, json.privateKey, - json.minClient, - json.maxClient, - json.maxTimediff, + json.minClientVer ?? json.minClient, + json.maxClientVer ?? json.maxClient, + json.maxTimeDiff ?? json.maxTimediff, json.shortIds, json.mldsa65Seed, settings, @@ -1089,9 +1085,9 @@ class RealityStreamSettings extends XrayCommonClass { dest: this.dest, serverNames: this.serverNames.split(","), privateKey: this.privateKey, - minClient: this.minClient, - maxClient: this.maxClient, - maxTimediff: this.maxTimediff, + minClientVer: this.minClient, + maxClientVer: this.maxClient, + maxTimeDiff: this.maxTimediff, shortIds: this.shortIds.split(","), mldsa65Seed: this.mldsa65Seed, settings: this.settings, diff --git a/web/assets/js/model/outbound.js b/web/assets/js/model/outbound.js index 445baecc..6fd9f1cd 100644 --- a/web/assets/js/model/outbound.js +++ b/web/assets/js/model/outbound.js @@ -219,18 +219,16 @@ class KcpStreamSettings extends CommonClass { tti = 20, uplinkCapacity = 5, downlinkCapacity = 20, - congestion = false, - readBufferSize = 1, - writeBufferSize = 1, + cwndMultiplier = 1, + maxSendingWindow = 2 * 1024 * 1024, ) { super(); this.mtu = mtu; this.tti = tti; this.upCap = uplinkCapacity; this.downCap = downlinkCapacity; - this.congestion = congestion; - this.readBuffer = readBufferSize; - this.writeBuffer = writeBufferSize; + this.cwndMultiplier = cwndMultiplier; + this.maxSendingWindow = maxSendingWindow; } static fromJson(json = {}) { @@ -239,9 +237,8 @@ class KcpStreamSettings extends CommonClass { json.tti, json.uplinkCapacity, json.downlinkCapacity, - json.congestion, - json.readBufferSize, - json.writeBufferSize, + json.cwndMultiplier, + json.maxSendingWindow, ); } @@ -251,9 +248,8 @@ class KcpStreamSettings extends CommonClass { tti: this.tti, uplinkCapacity: this.upCap, downlinkCapacity: this.downCap, - congestion: this.congestion, - readBufferSize: this.readBuffer, - writeBufferSize: this.writeBuffer, + cwndMultiplier: this.cwndMultiplier, + maxSendingWindow: this.maxSendingWindow, }; } } diff --git a/web/html/xui/form/outbound.html b/web/html/xui/form/outbound.html index 2cf412f9..17379325 100644 --- a/web/html/xui/form/outbound.html +++ b/web/html/xui/form/outbound.html @@ -395,14 +395,11 @@ - - + + - - - - - + + diff --git a/web/html/xui/form/stream/stream_kcp.html b/web/html/xui/form/stream/stream_kcp.html index 0cdc329d..59ceb7b1 100644 --- a/web/html/xui/form/stream/stream_kcp.html +++ b/web/html/xui/form/stream/stream_kcp.html @@ -17,16 +17,13 @@ - - + + - - - - - + + {{end}} diff --git a/web/translation/translate.en_US.toml b/web/translation/translate.en_US.toml index 3e13dac9..55a1780b 100644 --- a/web/translation/translate.en_US.toml +++ b/web/translation/translate.en_US.toml @@ -401,9 +401,9 @@ "tti" = "TTI (ms)" "uplinkMBps" = "Uplink (MB/s)" "downlinkMBps" = "Downlink (MB/s)" +"cwndMultiplier" = "Congestion Window Multiplier" +"maxSendingWindow" = "Max Sending Window (bytes)" "congestion" = "Congestion" -"readBuffer" = "Read Buffer (MB)" -"writeBuffer" = "Write Buffer (MB)" [pages.inbounds.stream.common] "proxyProtocol" = "PROXY Protocol" diff --git a/web/translation/translate.fa_IR.toml b/web/translation/translate.fa_IR.toml index 5ee181ec..7458df12 100644 --- a/web/translation/translate.fa_IR.toml +++ b/web/translation/translate.fa_IR.toml @@ -401,9 +401,9 @@ "tti" = "TTI (میلی‌ثانیه)" "uplinkMBps" = "آپلینک (MB/s)" "downlinkMBps" = "دانلینک (MB/s)" +"cwndMultiplier" = "ضریب پنجره ازدحام" +"maxSendingWindow" = "حداکثر پنجره ارسال (بایت)" "congestion" = "Congestion" -"readBuffer" = "بافر خواندن (MB)" -"writeBuffer" = "بافر نوشتن (MB)" [pages.inbounds.stream.common] "proxyProtocol" = "PROXY Protocol" diff --git a/web/translation/translate.ru_RU.toml b/web/translation/translate.ru_RU.toml index ccde47d9..001f2470 100644 --- a/web/translation/translate.ru_RU.toml +++ b/web/translation/translate.ru_RU.toml @@ -401,9 +401,9 @@ "tti" = "TTI (мс)" "uplinkMBps" = "Uplink (МБ/с)" "downlinkMBps" = "Downlink (МБ/с)" +"cwndMultiplier" = "Множитель окна перегрузки" +"maxSendingWindow" = "Макс. окно отправки (байт)" "congestion" = "Congestion" -"readBuffer" = "Буфер чтения (МБ)" -"writeBuffer" = "Буфер записи (МБ)" [pages.inbounds.stream.common] "proxyProtocol" = "PROXY Protocol" diff --git a/web/translation/translate.vi_VN.toml b/web/translation/translate.vi_VN.toml index 4049f152..e57983f4 100644 --- a/web/translation/translate.vi_VN.toml +++ b/web/translation/translate.vi_VN.toml @@ -401,9 +401,9 @@ "tti" = "TTI (ms)" "uplinkMBps" = "Uplink (MB/s)" "downlinkMBps" = "Downlink (MB/s)" +"cwndMultiplier" = "Hệ số cửa sổ tắc nghẽn" +"maxSendingWindow" = "Cửa sổ gửi tối đa (byte)" "congestion" = "Congestion" -"readBuffer" = "Read Buffer (MB)" -"writeBuffer" = "Write Buffer (MB)" [pages.inbounds.stream.common] "proxyProtocol" = "PROXY Protocol" diff --git a/web/translation/translate.zh_Hans.toml b/web/translation/translate.zh_Hans.toml index a3d180ce..91c83fc4 100644 --- a/web/translation/translate.zh_Hans.toml +++ b/web/translation/translate.zh_Hans.toml @@ -402,9 +402,9 @@ "tti" = "TTI (毫秒)" "uplinkMBps" = "上行 (MB/s)" "downlinkMBps" = "下行 (MB/s)" +"cwndMultiplier" = "拥塞窗口倍数" +"maxSendingWindow" = "最大发送窗口 (字节)" "congestion" = "拥塞控制" -"readBuffer" = "读取缓冲 (MB)" -"writeBuffer" = "写入缓冲 (MB)" [pages.inbounds.stream.common] "proxyProtocol" = "PROXY Protocol"