TCP connection lifecycle в Windows 11 25H2
На этой странице
Короткий ответ
Заголовок раздела «Короткий ответ»Эти параметры управляют жизненным циклом TCP-соединения: расширениями протокола, TIME_WAIT, keep-alive и обнаружением проблем Path MTU. Они не задают ping и не ускоряют уже установленное соединение.
Что проверяли
Заголовок раздела «Что проверяли»Проверяли, как tcpipreg.sys и NSI читают параметры жизненного цикла TCP, какие значения по умолчанию и диапазоны действуют и обновляется ли конфигурация без перезагрузки.
Область исследования
Заголовок раздела «Область исследования»Windows 11 25H2 build 26200.9168, tcpipreg.sys и NSI. Контролируемый сбор сетевых трасс в разных сетях и приложениях не проводился.
Методика
Заголовок раздела «Методика»Статический разбор системных компонентов, анализ bootlog и наблюдение live-обновления конфигурации.
Канонические значения
Заголовок раздела «Канонические значения»| Registry path | Value | Type | Default/типичное состояние | Роль |
|---|---|---|---|---|
HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters |
Tcp1323Opts |
REG_DWORD |
3, если отсутствует |
legacy extensions policy |
| тот же путь | TcpTimedWaitDelay |
REG_DWORD |
120 секунд, 30..300 |
TIME_WAIT duration |
| тот же путь | KeepAliveTime |
REG_DWORD |
7200000 ms |
idle keep-alive interval |
| тот же путь | EnablePMTUBHDetect |
REG_DWORD |
0 |
PMTU black-hole detection |
Устаревшие параметры TCP читает tcpipreg.sys и передаёт через NSI компоненту tcpip.sys. Для части значений используется ZwNotifyChangeKey, что позволяет перечитывать конфигурацию без полной перезагрузки сетевого стека.
Значения
Заголовок раздела «Значения»Tcp1323Opts сохранён для совместимости. Его значения 0..3 исторически описывали масштабирование окна TCP и временные метки. В Windows 11 25H2 параметр читает tcpipreg.sys, причём значение 1 преобразуется перед передачей в NSI. Современная автоматическая настройка окна приёма управляется отдельной политикой. Поэтому старая таблица битов не определяет фактическое состояние каждого соединения.
TcpTimedWaitDelay задаёт время удержания управляющего блока TCP в TIME_WAIT после закрытия соединения. Документированный диапазон составляет 30..300 секунд, значение по умолчанию 120. Сокращение ожидания раньше освобождает временные порты, но оставляет меньше времени для защиты от запоздалых сегментов старого соединения.
KeepAliveTime задаёт интервал до проверочного пакета keep-alive для простаивающего соединения. По умолчанию он равен 7 200 000 мс. Приложение должно отдельно включить keep-alive для сокета, поэтому уменьшение глобального интервала не запускает фоновые проверки всех соединений.
EnablePMTUBHDetect=1 включает обнаружение «чёрных дыр» Path MTU, когда уведомления ICMP о необходимости фрагментации не доходят до отправителя. Механизм помогает работать с таким проблемным маршрутом и может увеличить число повторных передач. Исправную сеть он не ускоряет.
Полезность и ограничения
Заголовок раздела «Полезность и ограничения»Параметры полезны для серверов и клиентов с большим числом коротких TCP-соединений или нестабильным MTU. Универсального ускорения обычных приложений от изменения одного значения ожидать не стоит. Результат зависит от второй стороны соединения, NAT, маршрутизатора, драйвера сетевой карты, VPN и управления перегрузкой.
Исследование относится к Windows 11 25H2 build 26200.9168. Контролируемый сбор сетевых трасс в разных сетях и приложениях не проводился.
tcpipreg.sys отслеживает изменения ключа и может обновлять часть устаревших настроек без перезагрузки. Уже открытые TCP-соединения при этом не обязательно пересогласуют свои параметры. Для корректного сравнения исходного и изменённого состояния создавайте новые соединения.
Что подтверждено
Заголовок раздела «Что подтверждено»- Пути, типы, значения по умолчанию и диапазоны параметров в исследованной сборке.
- Чтение через
tcpipreg.sysи NSI; часть значений обновляется без полной перезагрузки стека. - Для
Tcp1323Optsзначение1преобразуется перед передачей в NSI. - Keep-alive требует отдельного включения для сокета.
Что не подтверждено
Заголовок раздела «Что не подтверждено»- Ускорение приложений от изменения отдельных значений.
- Поведение в конкретных сетях, за NAT, VPN и при потерях пакетов.
- Пересогласование параметров уже открытыми соединениями.
Практический вывод
Заголовок раздела «Практический вывод»Оставьте значения по умолчанию. Меняйте параметры только для серверов и клиентов с большим числом коротких соединений или нестабильным MTU и сравнивайте результат на новых соединениях.
Восстановление состояния
Заголовок раздела «Восстановление состояния»Верните штатные значения или удалите необязательные записи. Проверяйте результат на новых соединениях: уже открытые могут сохранять прежние параметры.
Источники
Заголовок раздела «Источники»Как повторить динамическую часть наблюдений — см. Как проверить самостоятельно.
Исследование и использованные инструменты принадлежат разработчику BoosterX, поэтому у разработчика есть прямой интерес к результатам. Методика и границы применимости описаны выше, а выводы можно проверить по открытым данным и перечисленным публичным источникам.
- TCP/IP registry values, Microsoft Learn, проверено 2026-09-01.
- TCP/IP performance tuning, Microsoft Learn, проверено 2026-09-01.
Публичные источники проверены: 2026-09-02.
История изменений
Заголовок раздела «История изменений»- 2026-09-20: добавлен дисклеймер о конфликте интересов и ссылка на самостоятельную проверку динамических наблюдений в методике.
- 2026-09-02: первая публикация; подтверждены readers, defaults и live reload, добавлены границы практического эффекта.
