Windows Virtual Desktop #75 Zoom を使ってみる (Zoom VDI Client 有)

この記事のWVDは”Windows Virtual Desktop Spring 2020 Release”が対象です。

Windows Virtual Desktop から Zoom を使ってみる話です。 今回は、Zoom VDI Client をインストールした状態でマイクやカメラが利用できるかどうか、その時のCPUやネットワーク帯域の使用状況を紹介していきます。 前回の記事では Zoom VDI Client が無い状態をテストしていますが、Zoom VDI Client を利用することでネットワークトラフィックとCPUリソースを大幅に削減できることがわかりました。 Windows Virtual Desktop 環境で Zoom を利用する場合は必須のツールとなりそうです。

Zoom VDI Client の有り・無しの結果は以下。 ネットワーク帯域もCPUも大幅に削減出来ていることがわかると思います。

Zoom VDI Client
無し
Zoom VDI Client
有り
1920×1080相当ウィンドウ
画面転送ネットワーク帯域
6Mbps~200Kbps~
1920×1080相当ウィンドウ
CPU使用率
50%~10%
2560×1440相当ウィンドウ
画面転送ネットワーク帯域
11Mbps~600Kbps
2560×1440相当ウィンドウ
CPU使用率
80%~10%

Zoom VDI Client のインストール

Zoom VDI Client は Windows Virtual Desktop の仮想の Windows 10 にインストールするモジュールと物理端末側にインストールするモジュールの2つがあります。 それぞれ順番にインストールしていきます。

仮想の Windows 10 への Zoom VDI Client のインストール

モジュールのダウンロードはこちらから可能です。 仮想マシンと物理端末にどれをインストールすれば良いのか、わかりづらいのでご注意ください。

仮想の Windows 10 上にインストーラをダウンロードし、実行します。

インストーラを起動すると、特に何も聞かれることなくインストールは開始されます。

インストールは1分もかからず終了します。

物理端末への Zoom VDI Client のインストール

物理端末には Media Plugin をインストールします。 ダウンロードはこちら。 沢山の環境向けにそれぞれ準備されているので間違えず選びましょう。 Citrix や Horizon についても沢山のクライアント環境に対応していることがわかりますが、何気に Zoom は VDI の対応に力をいれていることが見て取れます。 Teams の最適化は Windows クライアントだけですし、 Google Meet は最適化ツールが無い状態です。 Zoom は Windows / Mac / Linux の汎用OSだけではなく、 eLux や HP ThinPro、Dell ThinOS などシンクライアント端末の専用OSにも対応している点もかなり凄いなと。

ダウンロードしたモジュールをインストールします。

Next をクリックします。

インストール先を確認(必要に応じて変更し)、Next をクリックします。

Next をクリックするとインストールが開始されます。

インストールは1分もかからず終了します。 Close をクリックします。

動作テスト

Windows Virtual Desktop にサインインし、Zoom の会議に参加します。 特に問題なくカメラも動作しています。

マイク、スピーカも確認していきます。正常動作を確認できました。

カメラも問題ありません。

1920×1080 相当のウィンドウサイズでのトラフィックとCPUリソースの確認

ネットワークのトラフィックですが、送信方向で 200Kbpsです。 Zoom VDI Client 無しの場合は 6Mbps 程でしたので大幅な削減の効果が確認出来ました。

CPU リソースは 10% です。Zoom VDI Client 無しの場合は 50% 程でしたので大幅な削減の効果が確認出来ました。

カメラをオフにします。 200Kbps 程度のトラフィックです。

CPUは 10% 程度です。

2560×1440 相当のウィンドウサイズでのトラフィックとCPUリソースの確認

仮想の Windows 10 をフル画面モードにし、Zoomのウィンドウも最大化し、2560×1440 相当のウィンドウサイズです。

以下がカメラONの時のキャプチャですが、送信は 600Kbps 程度です。 Zoom VDI Client 無しの場合は 11Mbps でしたのでこちらも大幅な削減効果を確認出来ました。

なお、以下のキャプチャではカメラ映像がブラックアウトしています。これは、Zoom VDI Client で画面の描画をクライアント側にオフロードしている結果となります。実際の Windows Virtual Desktop 上の画面ではカメラ画像は問題なく表示されます。

カメラONでのCPUリソースは10%未満です。Zoom VDI Client 無しの場合は 80% でしたのでこちらも大幅な削減効果を確認出来ました。

次にカメラOFFの場合です。 送信方向のトラフィックは 400-500 Kbps 位でした。

カメラOFF時のCPUリソースは 10% 以下でした。

Zoom VDI Client が有効となっていることの確認方法

Windows Virtual Desktop の仮想の Windows 10 上の Zoom の設定から Zoom VDI Client が有効となっているかどうか確認可能です。

1つ目の確認ポイントは以下の赤枠部分です。 ここには仮想の Windows 10 ではなく物理端末の CPU とメモリ情報が表示されます。 今回テストで利用している物理端末は 4coreのCPU、メモリは24GBなのですが、その情報がこちらに表示され、また、実際の物理端末側のリソースの利用状況がリアルタイムにこの画面で確認可能です。

2つ目の確認ポイントは以下の赤枠です。 VDIプラグインの情報VDI接続のステータスの2か所で機能の有効化を確認することが可能です。

まとめ

Zoom VDI Client を導入し、ネットワークトラフィックと仮想マシン側のCPUリソース消費を大幅に削減できることを確認出来ました。 これは Windows Virtual Desktop 環境で Zoom を利用する場合は最大限にインストールを推奨することになりそうです。

この Zoom VDI Client のオフロード処理がどのようなものかあまり触れずにここまで紹介してきましたが、詳しい内容は Zoom 社の公式ホームページに説明があります。

https://support.zoom.us/hc/en-us/articles/360031441671-VDI-client-features-comparison

以下の説明文がありますが、動画像の エンコードとデコードを物理端末にオフロードすること、また、通信も仮想マシンを経由せずに物理端末と Zoom のクラウド間で実施されることが説明されています。その際のすべての通信が物理端末と Zoom のクラウドだけとなるわけではなく、認証やウィンドウの位置などのコントロール系の情報は仮想マシン側で処理されているとのこと。

In the most optimal case, the media plugin will offload video encoding and decoding and communicate over the network directly to the Zoom cloud, bypassing the VDI infrastructure. Control information such as authentication and window location is always sent over the VDI channel.

同じページに、通信経路図もあります。 2つありますが、上の図は物理端末と Zoom Cloud が UDPで通信出来る場合、下の図はUDP通信が出来ない場合となります。 この辺の動作は、Teams 最適化と似ている部分もありますが、違うところは違うので注意が必要です。既存のネットワークで内部からInternetへどのポートを開けるかの考慮も必要となります。

あとは、今回試せていないのですが、トラブルシューティング用のログ取得のツールも提供されているようです。 こちらは機会を見てテストしたいと思います。

以上