Win11 でネットワークの瞬断に悩んでたけど RSC をオフにしたら治った(かも)

物理故障じゃなくて良かった~


いつからか発生するようになっていたネットワークの瞬断に悩まされていた。
タスクマネージャから見ているとインターフェイスごと消えるような切れ方で、これによってゲームのマルチプレイで落とされてしまったり普段使いにそこそこ支障が出ていた。

ローカルネットワークの他のマシンでは発生しないので、それより下流のスイッチか、Windows かマザーボードの物理故障のいずれかとは思っていた。

直近あまりにも頻発したので、腰を上げて調べた結果、物理故障ではなく Windows の RSC(Receive Segment Coalescing)設定が原因である可能性が出たので、オフにした。
オフにした後、タスクマネージャを数時間眺めてるが発生していないので恐らくのこの設定が原因であったと考えられる。

詳細

 sino@**** ~  systeminfo

ホスト名:                   ****
OS 名:                      Microsoft Windows 11 Pro
OS バージョン:              10.0.26200 N/A ビルド 26200


ホットフィックス:           7 ホットフィックスがインストールされています。
                            [01]: KB5066128
                            [02]: KB5050575
                            [03]: KB5054156
                            [04]: KB5054273
                            [05]: KB5059093
                            [06]: KB5077241
                            [07]: KB5077371

最初は PCIE、チップセット周りかと思い(使っている M/B の NVMe スロットが死んでいる)USB 接続のドングルで有線ネットワーク接続にしたが、それでも症状は発生した。

瞬断する瞬間の Windows のログを確認すると、以下のようなログが記録されていた。

ログの名前:         System
ソース:           Microsoft-Windows-Hyper-V-VmSwitch
日付:            2026/03/09 0:52:50
イベント ID:       291
タスクのカテゴリ:      なし
レベル:           情報
キーワード:         (128)
ユーザー:          N/A
コンピューター:       ****
説明:
NIC ****-F776E88C4FDC (フレンドリ名: ) の RSC オフロードが変更されました。前の IPv4: 有効、現在の IPv4: 有効、前の IPv6: 有効、現在の IPv6: 有効。理由: NIC 接続
イベント XML:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-Hyper-V-VmSwitch" Guid="{67dc0d66-3695-47c0-9642-33f76f7bd7ad}" />
    <EventID>291</EventID>
    <Version>0</Version>
    <Level>4</Level>
    <Task>0</Task>
    <Opcode>0</Opcode>
    <Keywords>0x8000000000000080</Keywords>
    <TimeCreated SystemTime="2026-03-08T15:52:50.7037930Z" />
    <EventRecordID>273440</EventRecordID>
    <Correlation />
    <Execution ProcessID="3344" ThreadID="37496" />
    <Channel>System</Channel>
    <Computer>****</Computer>
    <Security />
  </System>
  <EventData>
    <Data Name="NicName">****-F776E88C4FDC</Data>
    <Data Name="NicFName">
    </Data>
    <Data Name="OldNicIPv4RscEnabled">1</Data>
    <Data Name="OldNicIPv6RscEnabled">1</Data>
    <Data Name="NewNicIPv4RscEnabled">1</Data>
    <Data Name="NewNicIPv6RscEnabled">1</Data>
    <Data Name="RscStateModifiedReason">7</Data>
  </EventData>
</Event>

AI に聞いたり調べたりした結果、RSC がマイナスに働いている可能性が高そうだった。

Poor Network Performance on Hyper-V VMs in Windows Server 2019 – Stack IT News
Read performance degradation on VGs connected to VMs in Hyper-v 2019 clusters
Slow Network on Hyper-V Guests on Windows Server 2019

It is enabled by default on all vSwitches on Windows Server 2019. Of course it doesn’t work and just causes problems isn’t supported on some hardware configurations.

そういう訳なので、オフにする。

 sino@**** C:....\System32  Get-NetAdapterRsc | Disable-NetAdapterRsc
 sino@**** C:....\System32  netsh int tcp set global rsc=disabled
OK

 sino@**** C:\....\System32  netsh int tcp show global
アクティブ状態を照会しています...

TCP グローバル パラメーター
----------------------------------------------
Receive-Side Scaling 状態          : enabled
受信ウィンドウ自動チューニング レベル    : normal
アドオン輻輳制御プロバイダー  : default
ECN 機能                      : disabled
RFC 1323 タイムスタンプ                 : allowed
初期 RTO                         : 1000
Receive Segment Coalescing 状態    : disabled
非 Sack の Rtt 回復性             : disabled
SYN の最大再送信数             : 4
Fast Open                           : enabled
Fast Open フォールバック                  : enabled
HyStart                             : enabled
Proportional Rate Reduction         : enabled
ペーシング プロファイル                      : off

再起動してイベントログを再度確認する。

ログの名前:         System
ソース:           Microsoft-Windows-Hyper-V-VmSwitch
日付:            2026/03/09 3:31:29
イベント ID:       291
タスクのカテゴリ:      なし
レベル:           情報
キーワード:         (128)
ユーザー:          SYSTEM
コンピューター:       ****
説明:
NIC ****-0D995D328250 (フレンドリ名: ) の RSC オフロードが変更されました。前の IPv4: 有効、現在の IPv4: 有効、前の IPv6: 有効、現在の IPv6: 有効。理由: RSC OID
イベント XML:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-Hyper-V-VmSwitch" Guid="{67dc0d66-3695-47c0-9642-33f76f7bd7ad}" />
    <EventID>291</EventID>
    <Version>0</Version>
    <Level>4</Level>
    <Task>0</Task>
    <Opcode>0</Opcode>
    <Keywords>0x8000000000000080</Keywords>
    <TimeCreated SystemTime="2026-03-08T18:31:29.9138910Z" />
    <EventRecordID>275492</EventRecordID>
    <Correlation />
    <Execution ProcessID="4" ThreadID="9836" />
    <Channel>System</Channel>
    <Computer>****</Computer>
    <Security UserID="S-1-5-18" />
  </System>
  <EventData>
    <Data Name="NicName">****-0D995D328250</Data>
    <Data Name="NicFName">
    </Data>
    <Data Name="OldNicIPv4RscEnabled">1</Data>
    <Data Name="OldNicIPv6RscEnabled">1</Data>
    <Data Name="NewNicIPv4RscEnabled">1</Data>
    <Data Name="NewNicIPv6RscEnabled">1</Data>
    <Data Name="RscStateModifiedReason">6</Data>
  </EventData>
</Event>

同じイベント ID であるが、理由が NIC 接続 (Reason: 7) から RSC OID (Reason: 6) に変わっていることが確認できる。
最初のイベントログの NicName での ID 291 のログは出なくなっていた。
RSC を無効化して以降は再現しておらず、少なくとも関連している可能性は高いと言える。

ログ内では引き続き RSC が Enabled: 1 となっている箇所があるが、これは WSL2 側の仮想スイッチの設定を変えればこれも出なくなるらしいって AI が言ってた。


物理故障じゃなくて良かった~、PC パーツ今全部高いしね。