Windows 11 LEDBAT と Cubic を確認してみましょう

LEDBAT をご存じでしょうか。 Windows Server 2019 で利用できるようになったネットワークの最適化技術です。

この機能の詳細は以下に詳しく書かれていますが、ユーザーの操作による通信とバックグラウンドでの転送とを区別し、ユーザー操作の通信を有効化するための仕組みとなっています。

https://techcommunity.microsoft.com/t5/networking-blog/top-10-networking-features-in-windows-server-2019-9-ledbat-8211/ba-p/339745?WT.mc_id=WDIT-MVP-5002496

【バックグラウンドデータのスロットリングを利用する場合】

f:id:mohessu:20211230200212p:plain

【 LEDBAT を活用した場合】

f:id:mohessu:20211230200421p:plain

この仕組みは Cubic という名前のフロントエンドの仕組みと対になって動作することになるのですが、 Cubic および LEDBAT の動作は以下で説明されています。

https://techcommunity.microsoft.com/t5/networking-blog/windows-transport-converges-on-two-congestion-providers-cubic/ba-p/339819?WT.mc_id=WDIT-MVP-5002496

Cubic の仕組みとしては、データをいっぱいまでキューイングし、キューに入りきらなくなったらキューへの送信速度を半減させて最適な速度を図っていくという流れをとっています。

f:id:mohessu:20211230203217p:plain

LEDBAT はこの Cubic に追加し、キューの中での遅延をチェックする機能を持っています。キューの中に滞留するという状態になった場合、ほかのシステムでネットワークが使われていると判断し、速度を落としていくというわけですね。

f:id:mohessu:20211230195445p:plain

Windows 11 ではこの機能が最初から有効化されているのですが、以下の PowerShell コマンドレットを用いて確認することができます。

Get-NetTCPSetting | Select SettingName, CongestionProvider, AutomaticUseCustom

f:id:mohessu:20211230193014p:plain

上記のように結果の CongestionProvider に CUBIC が設定されていればこの機能が利用されているということになります。

Windows Server 2016 などはこの機能があとから追加されたため、利用したい場合は自動設定を行うことで更新されるとのこと。

Set-NetTCPSetting -SettingName InternetCustom -AutomaticUseCustom Enabled

クライアント OS 側ではあまり意識することはないのですが、こんな制御をしているということは覚えておくとよいでしょう。

音楽:My Love