Перейти до вмісту

Життєвий цикл TCP-з'єднання в 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 про необхідність фрагментації не доходять до відправника. Механізм допомагає працювати з таким проблемним маршрутом і може збільшити кількість повторних передач. Справну мережу він не прискорює.

Корисність і обмеження

Section titled “Корисність і обмеження”

Параметри корисні для серверів і клієнтів із великою кількістю коротких 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, тому в розробника є прямий інтерес до результатів. Методика і межі застосовності описані вище, а висновки можна перевірити за відкритими даними і переліченими публічними джерелами.

Публічні джерела перевірені: 2026-09-02.

  • 2026-09-20: додано дисклеймер про конфлікт інтересів і посилання на самостійну перевірку динамічних спостережень у методиці.
  • 2026-09-02: перша публікація; підтверджено readers, defaults і live reload, додано межі практичного ефекту.