Transport: Refine Hysteria & quicParams

This commit is contained in:
Fangliding
2026-04-03 03:51:13 +08:00
parent 061d9462de
commit 7999f7eae6
6 changed files with 42 additions and 30 deletions
+11 -1
View File
@@ -1236,8 +1236,18 @@ FinalMask 在核心处理完包括 TLS/REALITY 在内的传输层加密后,对
}
```
用于 XHTTP H3 以及 hysteria 的 QUIC 配置调整。其中 XHTTP
> `congestion`: reno | bbr | brutal | force-brutal
拥塞控制算法,Hysteria 默认为 `brutal`,XHTTP H3 默认使用 `bbr`。
`reno`/`bbr`: 知名算法。
`brutal`: 与对端协商固定发包速率或降级到 BBR,只支持 Hysteria 传输(因为 XHTTP 无协商机制)。
`force-brutal`: 同 `brutal`,但强制使上行使用 `brutalUp` 固定发包速率,无视对端协商。
> `debug`: false | true
启用 bbr/brutal congestion control 日志。
@@ -1250,7 +1260,7 @@ FinalMask 在核心处理完包括 TLS/REALITY 在内的传输层加密后,对
格式用户友好,支持各种常见的比特每秒写法,包括 `1000000` `100kb` `20 mb` `100 mbps` `1g` `1 tbps` 等等等,大小写不敏感,单位之间可以带或者不带空格,无单位时默认为 bps(比特每秒),不能低于 65535 bps。
协商行为和 Hysteria 原版一致:
协商行为和 Hysteria brutal 一致:
服务端的值将限制客户端可以选择的最大 Brutal 模式速率,为 0 表示不限制客户端。
+3 -9
View File
@@ -1,14 +1,6 @@
# Hysteria
::: tip
搭配 `hysteria protocol` 时默认启用 `quic native udp`
搭配 `hysteria inbound` 时 `auth` 将会被 `clients` 覆盖 (如果存在)
搭配其他 `protocol` 能否代理 `udp` 取决于该 `protocol` 是否具有 `uot` 能力
启用 `finalmask.udp` 后将会破坏 `masquerade` 的页面伪装
:::
Hysteria2 的底层 QUIC 传输的 Xray 实现,通常搭配 hysteria[出站](../outbounds/hysteria.md) 和 hysteria[入站](../inbounds/hysteria.md) 使用,此时兼容其官方实现。
## HysteriaObject
@@ -45,6 +37,8 @@ Hysteria 版本,必须为 2。
Hysteria 认证密码,服务端和客户端需要保持一致。
搭配 `hysteria inbound` 时将会被 `clients` 覆盖 (如果存在)
> `udpIdleTimeout`: number
单位秒,默认 60。
+11 -1
View File
@@ -1219,8 +1219,18 @@ Same as the TCP version.
}
```
Used for QUIC configuration tuning of XHTTP H3 and Hysteria.
> `congestion`: reno | bbr | brutal | force-brutal
Congestion control algorithm. Hysteria defaults to `brutal`, XHTTP H3 defaults to `bbr`.
`reno`/`bbr`: Well-known algorithms.
`brutal`: Negotiates a fixed packet sending rate with the peer or falls back to BBR. Only supported with Hysteria transport (since XHTTP has no negotiation mechanism).
`force-brutal`: Same as `brutal`, but forces upstream to use the `brutalUp` fixed packet sending rate, ignoring peer negotiation.
> `debug`: false | true
Enable bbr/brutal congestion control logging.
@@ -1233,7 +1243,7 @@ Upload/Download rate limits. Default is 0.
The format is user-friendly and supports various common bit-per-second notations, including `1000000`, `100kb`, `20 mb`, `100 mbps`, `1g`, `1 tbps`, etc. It is case-insensitive, and spaces between the number and unit are optional. If no unit is specified, it defaults to bps (bits per second). It cannot be lower than 65535 bps.
The negotiation behavior is consistent with the original Hysteria:
The negotiation behavior is consistent with Hysteria brutal:
The server's value limits the maximum Brutal mode rate that the client can choose. 0 means no limit on the client.
+3 -9
View File
@@ -1,14 +1,6 @@
# Hysteria
::: tip
When used with the `hysteria protocol`, `quic native udp` is enabled by default.
When used with `hysteria inbound`, `auth` will be overridden by `clients` (if it exists).
Whether other `protocols` can proxy `udp` depends on whether that `protocol` has `uot` capabilities.
Enabling `finalmask.udp` will break the `masquerade` page masquerading.
:::
Xray implementation of the underlying QUIC transport for Hysteria2, typically used with hysteria [outbound](../outbounds/hysteria.md) and hysteria [inbound](../inbounds/hysteria.md), and is compatible with the official implementation in this case.
## HysteriaObject
@@ -45,6 +37,8 @@ Hysteria version, must be 2.
Hysteria authentication password. Must be consistent between the server and the client.
When used with `hysteria inbound`, it will be overridden by `clients` (if it exists).
> `udpIdleTimeout`: number
Unit: seconds, default 60.
+11 -1
View File
@@ -1250,8 +1250,18 @@ FinalMask применяет последний слой маскировки к
}
```
Используется для настройки параметров QUIC для XHTTP H3 и Hysteria.
> `congestion`: reno | bbr | brutal | force-brutal
Алгоритм управления перегрузкой. Hysteria по умолчанию использует `brutal`, XHTTP H3 по умолчанию использует `bbr`.
`reno`/`bbr`: Известные алгоритмы.
`brutal`: Согласовывает фиксированную скорость отправки пакетов с другой стороной или переключается на BBR. Поддерживается только в транспорте Hysteria (поскольку XHTTP не имеет механизма согласования).
`force-brutal`: Аналогично `brutal`, но принудительно использует фиксированную скорость отправки `brutalUp` для исходящего трафика, игнорируя согласование с другой стороной.
> `debug`: false | true
Включить логирование в режиме bbr/brutal congestal control.
@@ -1264,7 +1274,7 @@ FinalMask применяет последний слой маскировки к
Формат удобен для пользователя, поддерживает различные распространенные записи бит в секунду, включая `1000000`, `100kb`, `20 mb`, `100 mbps`, `1g`, `1 tbps` и т.д. Регистр не важен, пробелы между единицами необязательны. Без единиц измерения по умолчанию используется bps (бит в секунду), значение не может быть ниже 65535 bps.
Поведение согласования соответствует оригинальной Hysteria:
Поведение согласования соответствует Hysteria brutal:
Значение на сервере ограничивает максимальную скорость режима Brutal, которую может выбрать клиент; 0 означает отсутствие ограничений для клиента.
+3 -9
View File
@@ -1,14 +1,6 @@
# Hysteria
::: tip
При использовании с протоколом `hysteria`, `quic native udp` включен по умолчанию.
При использовании с `hysteria inbound`, `auth` будет переопределен `clients` (если он существует).
Возможность использования других `протоколов` в качестве прокси для `udp` зависит от наличия у этого `протокола` возможностей `uot`.
Включение `finalmask.udp` нарушит работу маскировки страниц `masquerade`.
:::
Реализация Xray базового QUIC-транспорта для Hysteria2, обычно используется с hysteria [исходящим](../outbounds/hysteria.md) и hysteria [входящим](../inbounds/hysteria.md), и в этом случае совместима с официальной реализацией.
## HysteriaObject
@@ -45,6 +37,8 @@
Пароль аутентификации Hysteria, должен совпадать на сервере и клиенте.
При использовании с `hysteria inbound` будет переопределён `clients` (если он существует).
> `udpIdleTimeout`: number
Единица измерения: секунды, по умолчанию 60.