【Windows】「Receive Side Scaling(RSS)」を有効にして複数CPUコアで通信処理を分散する手順

【Windows】「Receive Side Scaling(RSS)」を有効にして複数CPUコアで通信処理を分散する手順
🛡️ 超解決

ネットワーク通信が遅いと感じる場合や、高いネットワーク負荷時にCPU使用率が特定のコアに集中している場合、Receive Side Scaling(RSS)が役立ちます。

RSSは受信したネットワークパケットの処理を複数のCPUコアに分散させ、全体のパフォーマンスを向上させる技術です。

この記事では、Windows 11でRSSを有効化し、ネットワーク処理を最適化するための具体的な手順と注意点を解説します。

【要点】Receive Side Scaling(RSS)の設定でネットワーク性能を改善

  • 現在のRSS状態の確認: netshコマンドでRSSの有効・無効状態を確認します。
  • RSSの有効化: netshコマンドを実行し、ネットワーク通信処理を複数CPUコアに分散させます。
  • デバイスマネージャーでの設定確認: ネットワークアダプターのプロパティからRSSの設定状態を視覚的に確認します。

ADVERTISEMENT

Receive Side Scaling(RSS)とは?ネットワーク通信を高速化する仕組み

Receive Side Scaling、通称RSSは、受信側スケーリングと訳されます。これは、ネットワークアダプターが受信したパケットの処理を、コンピューターの複数のCPUコアに効率良く分散させる技術です。

通常、ネットワークからのデータ受信処理は特定のCPUコアに集中しがちです。これにより、そのコアがボトルネックとなり、たとえ他のCPUコアに余裕があっても全体のネットワークスループットが低下することがあります。

RSSを有効にすると、ネットワークアダプターは受信したパケットをハッシュ関数で解析し、その結果に基づいて異なるCPUコアの処理キューに割り当てます。これにより、ネットワーク処理の負荷が複数のCPUコアに分散され、単一のCPUコアへの過度な集中が解消されます。

結果として、特に高負荷なネットワーク環境において、データ転送速度の向上やCPU使用率の最適化が期待できます。この機能は、サーバー環境や大量のデータ通信を行うビジネス用途で特に有効です。RSSが正しく機能するためには、使用しているネットワークアダプターとそのドライバーがRSSに対応している必要があります。

RSSのメリットと動作原理

RSSの最大のメリットは、ネットワークスループットの向上とCPUボトルネックの解消です。複数のCPUコアが同時にネットワークパケットを処理することで、データ処理能力全体が高まります。

動作原理としては、ネットワークアダプターが受信データに対してハッシュ計算を行い、そのハッシュ値に基づいてどのCPUコアに処理を割り当てるかを決定します。これにより、TCP接続などの関連するパケットが同じCPUコアで処理されるように調整され、順序の乱れを防ぎながら効率的な並列処理を実現します。

WindowsでRSSを有効にする具体的な手順

WindowsでReceive Side Scaling RSSを有効にするには、コマンドプロンプトまたはPowerShellを使用します。ここでは、現在の設定を確認し、必要に応じてRSSを有効にする手順を解説します。

  1. コマンドプロンプトまたはPowerShellを管理者として開く
    スタートボタンを右クリックし、「ターミナル 管理者」または「Windows PowerShell 管理者」を選択します。ユーザーアカウント制御のダイアログが表示されたら「はい」をクリックして許可します。
  2. 現在のRSS状態を確認する
    以下のコマンドを入力し、Enterキーを押します。
    netsh interface tcp show global
    表示される項目の中から「Receive Side Scaling 状態」を確認します。「Enabled」と表示されていればRSSは有効です。「Disabled」と表示されていれば無効です。
  3. RSSを有効にする
    RSSが無効だった場合は、以下のコマンドを入力し、Enterキーを押します。
    netsh interface tcp set global rss=enabled
    「OK.」と表示されれば、RSSの有効化は完了です。
  4. RSSが有効になったことを再確認する
    再度、以下のコマンドを入力し、Enterキーを押します。
    netsh interface tcp show global
    「Receive Side Scaling 状態」が「Enabled」になっていることを確認します。
  5. ネットワークアダプターごとの設定を確認する
    多くのネットワークアダプターでは、RSSがシステム全体で有効になっていれば自動的に適用されます。しかし、特定のアダプターで詳細設定を確認することも可能です。
    デバイスマネージャーを開き、「ネットワークアダプター」を展開します。使用しているネットワークアダプターを右クリックし、「プロパティ」を選択します。「詳細設定」タブをクリックし、「Receive Side Scaling」または「RSS」という項目を探します。その値が「Enabled」または「有効」になっていることを確認します。
  6. PCを再起動する
    設定変更がシステム全体に確実に適用されるよう、PCを再起動することをおすすめします。

RSS設定時の注意点と確認事項

RSSの設定はネットワークパフォーマンスの向上に役立ちますが、いくつかの注意点や確認すべき事項があります。これらを理解しておくことで、トラブルを未然に防ぎ、より効果的にRSSを活用できます。

RSSが有効にならない、または効果がない場合

コマンドでRSSを有効にしても状態が「Disabled」のままだったり、有効にしてもパフォーマンスが改善しない場合があります。主な原因は以下の通りです。

原因: ネットワークアダプターがRSSに対応していない、またはドライバーが古い可能性があります。また、仮想マシン環境ではホストOSや仮想化ソフトウェアの設定が影響することがあります。

対処法:

  1. ネットワークアダプターの確認: 使用しているネットワークアダプターの仕様を確認し、RSSに対応しているか調べます。
  2. ドライバーの更新: デバイスマネージャーからネットワークアダプターのドライバーを最新版に更新します。メーカーのウェブサイトから直接ダウンロードすることも有効です。
  3. 他のネットワーク最適化設定との競合: ネットワークアダプターの詳細設定に「Jumbo Frame」や「Flow Control」など、他の最適化設定がある場合、RSSと競合する可能性がないか確認します。
  4. 仮想環境での設定: 仮想マシンを使用している場合は、仮想スイッチの設定や仮想ネットワークアダプターの設定も確認します。

パフォーマンスが期待通りに改善しない場合

RSSを有効にしても、期待したほどネットワークパフォーマンスが改善しないことがあります。この場合、ボトルネックがCPU以外の場所にある可能性があります。

原因: ネットワークケーブルの品質、ルーターやスイッチの性能、ストレージのI/O速度、アプリケーション自体の処理能力などがボトルネックになっていることが考えられます。

対処法:

  1. ネットワーク環境の確認: ネットワークケーブルがカテゴリ5e以上か、ルーターやスイッチがギガビットイーサネットに対応しているか確認します。
  2. ストレージのI/O性能: 大容量ファイルを転送する際は、送受信側のストレージの読み書き速度がボトルネックになることがあります。SSDへの交換などを検討します。
  3. アプリケーションの最適化: 使用しているアプリケーションがネットワークを効率的に利用しているか、設定を見直します。
  4. CPU使用率の監視: タスクマネージャーでCPU使用率の推移を詳細に監視し、特定のCPUコアだけでなく、全体的なCPU負荷や他のリソースの使用状況を確認します。

設定変更後に再起動が必要な場合がある

RSSの設定変更は、通常コマンド実行後すぐに適用されます。しかし、一部のシステムやネットワークアダプターのドライバーによっては、変更が完全に反映されるまでにPCの再起動が必要な場合があります。

対処法: RSSを有効にした後、ネットワークパフォーマンスに変化が見られない場合は、一度PCを再起動してから再度確認することをおすすめします。

ADVERTISEMENT

Windows 11とWindows 10でのRSS設定の違い

Receive Side Scaling RSSの設定において、Windows 11とWindows 10の間で基本的な操作方法に大きな違いはありません。しかし、ユーザーインターフェースやデフォルト設定の一部でわずかな差異が見られます。

項目 Windows 11 Windows 10
コマンドライン操作 netshコマンドは同じように使用可能 netshコマンドは同じように使用可能
デバイスマネージャーのUI 「詳細設定」タブの表示が一部異なる場合がある 「詳細設定」タブの表示が一部異なる場合がある
デフォルト設定 多くの環境でデフォルトで有効化されていることが多い 多くの環境でデフォルトで有効化されていることが多い
PowerShellでの操作 「ターミナル 管理者」からPowerShellを使用可能 「Windows PowerShell 管理者」からPowerShellを使用可能
適用されるOSバージョン Windows 11 Home/Pro/Enterpriseなど Windows 10 Home/Pro/Enterpriseなど

上記のように、RSSの有効化や確認に用いるnetshコマンドは両OSで共通です。デバイスマネージャーの表示については、OSのバージョンアップデートによって細かなデザインや用語の変更がある場合がありますが、機能的な設定項目はほとんど同じです。

どちらのOSでも、RSSはデフォルトで有効になっていることが多いですが、環境によっては無効になっている場合もあります。そのため、手順に従って現在の状態を確認し、必要に応じて有効化することが重要です。

まとめ

この記事では、Windows 11でReceive Side Scaling RSSを有効にし、ネットワーク通信処理を複数CPUコアに分散させる手順を解説しました。

RSSを適切に設定することで、ネットワークスループットの向上とCPU負荷の最適化を実現し、高負荷なネットワーク環境での業務効率改善に貢献します。

今回紹介したnetshコマンドを使った設定とデバイスマネージャーでの確認方法を活用し、お使いのWindows環境のネットワークパフォーマンスを最大限に引き出してください。

ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。