コンテンツにスキップ

Windows 11 25H2におけるTCP接続ライフサイクル

目次

これらのパラメータは 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 は、フラグメンテーションが必要であるという ICMP 通知が送信者に届かない場合の Path MTU の「ブラックホール」検出を有効にします。このメカニズムはそのような問題のあるルートでの動作を助け、再送信の数を増やす可能性があります。正常なネットワークを高速化するものではありません。

これらのパラメータは、短い TCP 接続が多いサーバーやクライアント、または不安定な MTU を持つ場合に有用です。1 つの値を変更することで通常のアプリケーションが普遍的に高速化することを期待すべきではありません。結果は接続の相手側、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 を確認し、実用的な効果の範囲を追加。