この 1 つの Linux 設定により、Wi-Fi 速度がルーターの定格よりもはるかに低く制限されています。
Wi-Fi ルーターは数百 MB をアドバタイズできますが、Linux ラップトップはその速度のほんの一部を提供する可能性があります。ルーターを交換したり、チャネルを変更したり、ワイヤレスアダプターのせいにする前に、確認する価値のある Linux 設定が 1 つあります。
Linux は、バッテリー寿命を最適化するためにワイヤレス インターフェイスを省電力モードにします。ラップトップでは、ネットワークの最大パフォーマンスよりもバッテリー寿命の方が重要である場合、これは理にかなっています。問題は、省電力動作により遅延が発生し、応答性が低下し、一部のワイヤレス ハードウェアやドライバーによっては最高のスループットの達成が妨げられる可能性があることです。
まず実際の Wi-Fi 設定を確認してください
ルーターの評価とネゴシエートされたリンク速度を混同しないでください
何かを変更する前に、接続自体を検査してください。これは以下を使用して実行できます。
iw dev
次に、ネゴシエートされた接続を確認します。
iw dev wlp3s0 link
出力には、信号強度、周波数、チャネル幅、ネゴシエートされた RX および TX レートなどの詳細が表示されます。
たとえば、接続では次のことがレポートされる場合があります。
Frequency: 5200 MHz
Channel: 36
Width: 80 MHz
Signal: -35 dBm
RX bitrate: 866.7 Mbit/s
TX bitrate: 390.0 Mbit/s
この数値は PHY リンク レートであり、ブラウザのダウンロードや速度テストで必ず表示される速度ではありません。 Wi-Fi ではプロトコル オーバーヘッド、再送信、暗号化オーバーヘッド、その他の非効率性が生じるため、これは重要です。 866.7 Mbit/s の PHY レートを報告する接続は、通常、使用可能なアプリケーション スループットとしてその正確な数値を提供できません。同じコマンドは、使用されているチャネル幅と周波数も表示します。これは、ワイヤレス接続が実際にどのように構成されているかを確立するのに役立ちます。
私の場合、Intel Wireless-AC 8265 は、80MHz チャネルを使用して、5GHz 帯域の 5200MHz のファイバー ネットワークに接続しています。信号は -35 dBm で強力ですが、ネゴシエートされた RX および TX レートはそれぞれ 866.7 Mbit/s と 390.0 Mbit/s です。これらの数値により、別の構成が実際の速度の低下の原因であるかどうかを調査する前に、実際の Wi-Fi 接続をより明確に把握できます。
Wi-Fi 省電力が有効になっているかどうかを確認する
iw すぐに答えをくれる
Wi-Fi 省電力がオンになっているかどうかを確認するには、次のコマンドを使用するのが非常に簡単です。
iw dev wlp3s0 get power_save
有効な構成は次のようにレポートします。
Power save: on
簡単なテストを実行するには、一時的に無効にします。
sudo iw dev wlp3s0 set power_save off
次に、次のことを確認します。
iw dev wlp3s0 get power_save
次の内容が表示されるはずです。
Power save: off
このテストを実行するために再起動する必要はありません。省電力を無効にしたら、以前に使用したのと同じ速度テストを実行します。理想的には、単一の測定値に依存するのではなく、同じサーバーまたはサービスに対して複数のテストを実行し、結果を比較します。ベンチマークには iperf3 を使用しました。
私のテストでは、Wi-Fi 省電力を有効にすると持続スループットが約 159 Mbps から 138 Mbps に減少し、約 13% 低下しました。これは 802.11ac 接続では十分考えられますが、正確な影響はアダプター、ドライバー、アクセス ポイント、トラフィック パターンによって大きく異なります。
省電力を無効にした場合の 159 Mbps という結果は、アプリケーションのスループットが理論上の PHY レートを大幅に下回る実際の条件下で動作する 2×2 Wi-Fi 5 接続にとっても妥当です。さらに興味深いのは、有効なテストでは 283 回の TCP 再送信が記録されたのに対し、無効なテストでは 0 回の TCP 再送信が記録されたことです。これは、この特定の設定では、省電力動作が追加のバッファリングや送信の遅延に寄与していることを示唆しています。
ただし、すべての Linux システムが同じように動作するという意味ではありません。ラップトップによっては、スループットの違いがほとんど見られない場合もありますが、レイテンシ、再送信、または持続的な転送パフォーマンスに顕著な変化が見られるラップトップもあります。したがって、実際には、省電力を無効にする最大の利点は、ピーク ダウンロード速度の劇的な向上ではなく、ネットワーク動作の一貫性と遅延の短縮である可能性があります。
NetworkManager を使用して変更を永続化する
接続プロファイルを更新する
の iw コマンドは現在のワイヤレス インターフェイスの状態を変更します。 NetworkManager が後でインターフェイスに再接続すると、その設定は接続プロファイルまたはグローバルデフォルトに従って復元される可能性があります。 NetworkManager は、独自の Wi-Fi 省電力プロパティを提供します。
802-11-wireless.powersave
まず接続名を見つけます。
nmcli connection show
次に、そのプロファイルの省電力を無効にします。
nmcli connection modify "Your UUID" 802-11-wireless.powersave 2
再接続します:
nmcli connection down "Your UUID"
nmcli connection up "Your UUID"
最後に、次のことを確認します。
iw dev wlp3s0 get power_save
インターフェイスは次のことを報告する必要があります。
Power save: off
ハードウェアを変更する前にテストする
新しいワイヤレス カードやルーターにお金を費やす前に、問題が実際にソフトウェア スタックから生じているかどうかを確認する価値があります。 Linux を使用すると、ワイヤレス インターフェイスを十分に把握できるため、これらの問題を自分で調査できます。
多くの人にとって、この種のトラブルシューティングは価値のある最初のステップにもなります。オペレーティング システムに埋め込まれた設定は数秒で変更でき、通常のワークロードでテストし、元に戻すのも同様に簡単です。これは、ハードウェアを交換した後で元の問題が別の場所にあったことが判明するよりもはるかに簡単です。
関連情報は以下のリンクからご確認いただけます