設計上の決定:HDXグラフィックスの概要

はじめに

異なるユーザー要件を満たすために、Citrix HDXプロトコルでは、さまざまなグラフィックモードを構成できます。この記事の目的は、さまざまなHDXモードとその構成方法を概説することです。これにより、ユーザーのニーズ、ワークロード、現在のネットワーク条件に最適な環境を構成できる開始点が提供されます。

注意すべき重要:この記事は、特に明記されていない限り、Citrix Virtual Apps and Desktops 1912に基づいています。7.15に基づく概要については、ブログ記事「 HDX Graphics Encoder構成の概要-本当に重要なこと」を参照してください。

免責事項: 結果は異なる場合があり、独自のテストを実行して、ユースケースに最適なものを確認することを強くお勧めします。

HDXグラフィックスの概要

特定のグラフィックポリシーを検討する前に、HDXセッション画面に表示される内容と、プレゼンテーションに使用される基盤となるテクノロジーをどのように分類するかを見ていきましょう。

HDXグラフィックエンコードエンジンであるThinwireは、アプリケーションやデスクトップ用のグラフィックコンテンツを配信すると、表示データを3つのタイプに動的に分類します。

  • テキスト、シンプルな画像、単色
  • 静止画像コンテンツ
  • 移動 (または流体) イメージ

HDXグラフィックス 1

上記の例では、テキストまたは単純な画像は青色、静止画像はオレンジ色、移動(または流体)画像は緑色で強調表示されます。

Citrix Virtual Apps and Desktopsでは、Thinwireはディスプレイ分析、圧縮、配信にさまざまなアプローチを取ることができます。Citrix は、業界をリードする標準であるH.264およびH.265を使用して、高品質のビデオコンテンツをフルスクリーンおよび「選択的」コーデック実装で効率的に配信します。

  • Thinwire でビデオコーデックを使用しないように設定するか 、または Thinwire を設定してアクティブに変更する領域に対してビデオコーデックを使用するように選択すると 、Thinwire は一時的なコンテンツ(流体画像またはビデオ)の領域を検出し、エンドポイント。Thinwire は、これらの「選択された」(または一時的な)リージョンをアダプティブ JPEG または H.264/H.265 としてエンコードします。Thinwire がコアテクノロジであるため、アダプティブ JPEG と「選択的」H.264/H.265 はサブ機能と見なされます。残りの非一時的な領域(JPEG およびランレングスエンコーディング(RLE)としてエンコード)が結合され、セッション中の表示が完了します。
  • 画面全体のコーデックを使用するように Thinwire を設定することを選択すると 、Thinwire は画面全体をテキスト以外の一時的なコンテンツとして処理し(デフォルト)、H.264 または H.265 ビデオコーデックを使用して表示データをエンコードします。テキストは画面上にオーバーレイされ、完全な画像になります。H.265は、品質を損なうことなく、H.264よりも高い圧縮を実現します。ただし、H.265は処理の点で高価であり、Virtual Delivery Agent(VDA) の一部のGPUで使用される場合にのみサポートされます 。H.265は、CPUエンコーディングが使用されている場合は使用できません。さらに、クライアントエンドポイントでの H.265 表示データのデコードには、GPU または専用シンクライアント形式の H.265 互換ハードウェアが必要です。ベンダーのマニュアルを参照して、エンドポイントハードウェアの H.265 のサポート性を確認します。

H.264 互換性はより広く、特に断りがない限り、この記事ではフルスクリーン H.264 と選択的 H.264 に焦点を当てています。

構成されている HDX モードに応じて、これらのカテゴリは異なる方法でエンコードされます。

  • テキストと単純な画像は 、ほとんどの場合、ランレングスエンコーディング (RLE) を使用して可逆形式でエンコードされます。バージョン7.17以降、MDRLEと呼ばれるCitrix 独自のRLEフレーバーが使用され、 CTX232041の圧縮率を向上させます[ 3D グラフィックスの最適化] ワークロードを有効にすると 、ロスレステキスト検出が無効になり、RLE ではなく H.264/H.265 を使用してコンテンツが転送されます。この記事の後半で、Visio の図を使用して、このポリシーを視覚化できます。
  • 選択的 H.264/H.265 とアダプティブ JPEG の両方の静止画像では 、JPEG がエンコードに使用され、グラフィックスモードとしてフルスクリーン H.264/H.265 が選択されている場合は、ビデオコーデック H.264/H.265 が使用されます。JPEG を使用する場合、その品質は [表示品質] の設定で設定できます。詳細については、この記事の後半で添付されている Visio グラフを参照してください。
  • 動画の場合 、フルスクリーン H.264/H.265 または Thinwire を選択的 H.264 に設定する場合は、ビデオコーデック H.264/H.265 が使用されます。アダプティブ JPEG を使用した Thinwire が設定されている場合、JPEG は、フレームレートや利用可能な帯域幅などの条件に自動的に適応する品質 (したがって名前) で使用されます。

要約すると、Thinwire は次のように構成されている場合、さまざまなテクノロジーを使用します。

ビデオコーデックを使用しないようにThinwireを設定する

  • テキスト:RLE
  • シンプルなイメージと無地:RLE
  • 静止画像:JPEG
  • 画像の移動:アダプティブ JPEG

アクティブに変更するリージョンにビデオコーデックを使用するように Thinwire を設定する

  • テキスト:RLE
  • シンプルなイメージと無地:RLE
  • 静止画像:JPEG
  • 動く画像:H.264/H.265

画面全体にコーデックを使用するように Thinwire を設定する

  • テキスト:RLE (3D グラフィックスワークロード用に最適化が有効になっている場合は H.264/H.265)
  • シンプルな画像とソリッドカラー:H.264/H.265
  • 静止画像:H.264/H.265
  • 動く画像:H.264/H.265

次のセクションでは、上記の動作を達成するためのポリシーについて説明します。

HDXグラフィックスモード

[ 圧縮にビデオコーデックを使用 ] ポリシーは、さまざまなユースケースに適した表示方法を構成することにより、エンドユーザーに最適なエクスペリエンスを提供するための中心的な機能です。以下では、Citrix Studio 内で構成可能なポリシー設定を使用して、上記のテクノロジーをマッピングします。

  • 積極的に変化する領域の場合 = 選択的な H.264/H.265 でシンワイヤー
  • ビデオコーデックを使用しない(デフォルトのフォールバック方式) = アダプティブ JPEG で Thinwire
  • 画面全体=Thinwireフルスクリーン H.264/H.265
  • [優先時に使用 ] (ポリシーのデフォルト) = [ 3D グラフィックスワークロードに最適化 ] も設定しない限り、[ 選択的 H.264]/[H.265] の [Thinwire ] が使用されます。[ Thinwire 全画面表示 H.264]/[H.265 ] が使用されます。

クライアントエンドポイントとVirtual Delivery Agent(VDA)の両方の機能は、セッションの起動時またはセッションの再接続時に評価されます。クライアントがH.264/H.265をサポートしていない場合、VDAに設定されているポリシーに関係なく、表示方法は、アダプティブJPEG付きThinwireです。

アクティブに変更するリージョンにビデオコーデックを使用するように Thinwire を設定する

アクティブに変更するリージョンのグラフィックモードは 、最もバランスの取れた設定です。そのため、環境内でポリシーのベースラインを開始するときは、このモードから開始することをお勧めします。このモードは幅広いユーザーベース (たとえば、時折ビデオ再生を行うオフィスワーカーなど) を対象としています。

このモードは、VDAによって静的であると決定される画面の領域のビットマップキャッシュに加えて、静止画像にはJPEG、テキスト、シンプル画像、および単色ブロック用のRLEを活用します。VDAは、マルチメディアなどの流体移動領域について画面を継続的に分析し、 H.264/H.265を選択して流体領域をエンコードします

下図に示すように、H.264/H.265 は、流体の移動領域が検出されるまで「非アクティブ」になります。その後、VDAはH.264/H.265に移行して、流体の移動中に選択した領域をエンコードし、選択した領域に流体含有量がなくなると「非アクティブ」状態に戻ります。

HDXグラフィックス2

H.264/H.265 は、CPU を犠牲にして、液体の動きの領域を圧縮するアダプティブ JPEG よりもはるかに豊富なエクスペリエンスを提供します。通常、ネットワーク帯域幅は、マルチメディアワークロードの適応型JPEGに比べて、H.264/H.265の方が小さくなります。特定のユースケースで独自のテストを実行することを強くお勧めします (以下の [ツール] セクションを確認してください)。

ビデオコーデックを使用しないようにThinwireを設定する

Do No Use Video Codec は、H.264 または H.265 グラフィックのデコードをサポートしないエンドポイントを含む、クライアントエンドポイントに最大限の互換性を提供します。

このグラフィックモードでは、Thinwire は、アクティブに変更する領域に対して設定されている場合と同様に動作します。VDAは、画面上で流体の動きの領域を分析します。ただし、Thinwire は H.264/H.265 でエンコードするのではなく、移動画像をアダプティブ JPEG としてエンコードし、高い互換性を提供、または H.264/H.265 が不要な場所を提供します。残りの領域は、静止画像の場合は JPEG、テキストとシンプルなグラフィックは RLE として表示され、高品質の画像を提供します。

アダプティブ JPEG を使用して移動画像をエンコードするための CPU 処理は、通常、フルスクリーンまたはアクティブに変更される領域用の H.264 の Thinwire を使用した場合よりも低くなります。このモードは、サーバのスケーラビリティが優先される場合に必要です。WAN シナリオでは、帯域幅の増加と移動イメージの忠実度の低下という点でトレードオフが見られます。このグラフィックスモードは、コールセンターやPOSシステムなど、移動画像が最小限である場合に推奨されます。この場合、このモードでの帯域幅使用率は、アクティブに変更されるリージョン用にビデオコーデックで設定された Thinwire と比較すると同様になります。

[ ビデオコーデックを使用しない ] ポリシー設定は、他の 2 つのグラフィックスモード (アクティブに変更する領域または画面全体に対して [ビデオコーデックを使用]) の既定のフォールバック方法です。

画面全体にコーデックを使用するように Thinwire を設定する

画面全体グラフィックモード ]設定では、テキストを除くすべての表示データをH.264/H.265を使用してエンコードするようにVDAを構成します。テキストは RLE を使用してエンコードされ、画面の残りの部分とオーバーレイされます。[ 3D グラフィックスワークロード用に最適化 ] を有効にすると、テキストを含む画面全体が H.264/H.265 としてエンコードされます。

画面全体にビデオコーデックを使用するように Thinwire を構成することは、画面の大きな領域が動いている重いマルチメディアユースケース向けに設計されています。より高い圧縮と品質を実現するには、CPU とサーバのスケーラビリティが犠牲になります。

このモードは、マルチメディア、3Dモデリング、CAD描画アプリケーションを使用しているときに優れたユーザーエクスペリエンスを提供します。CPU のサイズが小さくなると、すぐにボトルネックになり、マルチメディアが重い状況下ではパフォーマンスとユーザーエクスペリエンスが低下します。これらのアプリケーションタイプを使用している間、このグラフィックスモードを補完するために、GPU オフロード機能を検討してください。

デフォルトでは、 YUV420が色空間として使用されます 。フルスクリーン H.264 では、YUV420 または YUV444 のいずれかを選択できます。

HDXグラフィックス3

ご覧のとおり、YUV444は品質を向上しますが、帯域幅要件に大きな影響を与えます。YUV444 を使用すると、クライアント側でのハードウェアデコードも無効になります (したがって、利用可能な場合は H.265)。

フルスクリーン H.264 では、次の設定で YUV444 を有効にできます。

  • 視覚品質:常にロスレス/ロスレスに構築
  • 視覚的な可逆圧縮を許可:有効

詳細については、この記事の Visio のグラフを参照してください。

HDXグラフィックス構成

[ 圧縮にビデオコーデックを使用 ] ポリシーは、構成の基本となる開始点として、追加のポリシーを設定して、さまざまなワークロードに合わせて視覚的なポリシーをさらにカスタマイズすることができます。これらのサポートポリシー設定をカスタマイズすることにより、特定の領域の品質を下げて、リソースを再利用し、より高いスケーラビリティを実現し、帯域幅を節約することができます。また、ヘルスケア業界のように、正確な視覚化を必要とするユースケースをサポートするために、品質を向上することもできます。以下の図は、これらの設定の概要を示しています (画像をクリックするとフルサイズの PDF が表示されます)。

HDXグラフィックス2

さらに、以下の「 ユースケース 」セクションを参照して、これらの追加ポリシー(下記参照)によってリソースの消費量を削減できる方法をご確認ください。ただし、品質はわずかに低下します(場合によっては)。

CPUまたはGPU

デフォルトでは、グラフィックスのエンコード処理はすべてVDAのCPU内で行われます。AMD、Intel、NVIDIA グラフィックスカードは、現在、デコードのためにエンドポイントに送信する前に GPU へのエンコーディングオフロードがサポートされています。

グラフィックエンコードを GPU にオフロードすると、CPU 上のリソースが他のタスクのために解放され、エンドユーザーの全体的なエクスペリエンスが向上します。

サポートされるGPU機能はさまざまであるため、[ ビデオコーデックにハードウェアエンコーディングを使用する]ポリシー設定を有効にする場合は、CitrixDocsにアクセスして各ベンダーのGPUの機能のサポート性を確認してください

使用例

設定の詳細が分かると、次の明白な質問は、「私のユースケースに最適なHDXモードは何ですか?」または「構成に関する推奨事項はありますか?」いつものように、答えは:それは依存しています。ほとんどの場合、「ワンサイズですべてに合う」アプローチが最適なアプローチではなく、ユースケースごとに異なる設定になる可能性があります。だから、最初に自分自身に尋ねなければならない質問は、次のとおりです。私はどのような課題とユースケースを持っていますか?グラフィックスの負荷が激しいか、マルチメディアの要件を満たさなければならないものはありますか?ユーザーのネットワーク接続はどうですか?

ほとんどの場合、アクティブに変更するリージョンにビデオコーデックを使用するように Thinwire を設定するのが最適です。さらに、異なる設定を明示的に構成して、環境を更新した後でも同じ設定が適用されるようにすることをお勧めします。次のリンクからわかるように、使用されるデフォルトのHDXモードは、時間の経過とともに変化しました。 HDXグラフィックスエンコーダ構成の概要-本当に重要なこと。したがって、実行したいHDXモードを明示的に設定してください。一般的に、この設定は、実行しているOS、ハードウェア、およびVDAのバージョンに応じて、異なる効果をもたらす可能性があるため、「圧縮にビデオコーデックを使用:優先する場合に使用」の使用は避けます。また、従来のグラフィックモードにリンクされているCitrixポリシーも構成しないでください。これらの設定は、Windows Server 2008 R2 および Windows 7 でのみサポートされ、互換性のために残されています。

開始方法についてのアイデアを与えるために、以下のいくつかの一般的な使用例のために、いくつかのベースライン構成を作成しました。それでも、独自のテストを実行して、特定のニーズに最適なモードが設定されていることを確認することをお勧めします。

低帯域幅

このユースケースは、重大な帯域幅制約がある接続を介して接続しているユーザーについて説明します。次のベースラインは良いスタートになります。

  • 圧縮にビデオコーデックを使用する:ビデオコーデックを使用しない
  • 視覚品質:低
  • シンプルなグラフィックスの推奨色深度:8 ビット/ 16 ビット
  • 追加カラー圧縮:有効
  • ターゲットフレームレート:15
  • 目標最小フレームレート:10
  • 移動画像圧縮:有効
  • HDXアダプティブトランスポート:優先

ご覧のとおり、低帯域幅接続でも、色深度を8ビットに設定しませんが、16ビットにしておきます。8ビットは帯域幅要件を大幅に下げることができますが、それはまた、大幅に低下したユーザーエクスペリエンスが付属しています。したがって、8ビットは、アクセスできない最も極端な場合にのみ推奨されます。

コールセンター/POS

このユースケースでは、特別なマルチメディア要件のないコールセンターまたはPOSワークプレースについて説明します。目標は、ユーザーエクスペリエンスとユーザー密度の良好な組み合わせを見つけることです。

  • 圧縮にビデオコーデックを使用する:ビデオコーデックを使用しない
  • 表示品質:ミディアム。
  • シンプルなグラフィックスの推奨色深度:24 ビット
  • 追加色圧縮:無効
  • ターゲットフレームレート:20
  • 目標最小フレームレート:10
  • 移動画像圧縮:有効
  • HDXアダプティブトランスポート:優先

タスクワーカー

タスクワーカーのユースケースでは、基本的なオフィスアプリケーションセットを使用することに加えて、ビデオをオンラインで視聴するなど、いくつかのマルチメディア要件があります。

  • ビデオコーデックにハードウェアエンコーディングを使用する:有効 (利用可能な場合)
  • 表示品質:ミディアム。
  • シンプルなグラフィックスの推奨色深度:24 ビット
  • 追加色圧縮:無効
  • ターゲットフレームレート:30
  • 目標最小フレームレート:10
  • 移動画像圧縮:有効
  • HDXアダプティブトランスポート:優先
  • グラフィックのハードウェアアクセラレーション:有効(利用可能な場合はCitrix Workspaceアプリ用に構成)

3D ワークロード

CAD/CAE などの 3D ワークロードでは、ユーザーエクスペリエンスが重要であるため、次の設定が使用されます。

  • ビデオコーデックにハードウェアエンコーディングを使用する:有効 (利用可能な場合)
  • 視覚品質:ロスレスに構築
  • ターゲットフレームレート:30 (必要に応じて 60 に設定可能)
  • 目標最小フレームレート:10
  • HDXアダプティブトランスポート:優先
  • グラフィックのハードウェアアクセラレーション:有効(利用可能な場合はCitrix Workspaceアプリ用に構成)
  • H265グラフィックのデコード:有効(利用可能な場合はCitrix Workspaceアプリ用に構成)

エンドポイントデバイスの考慮事項

当社の目標は、あらゆるデバイスや場所へのCitrix Virtual Apps and Desktops の配信をサポートすることです。

表面上、これは魅力的に聞こえます。ただし、これは必ずしもすべての機能がすべてのエンドポイントに存在することを意味するわけではありません。たとえば、H.264/H.265 デコードサポートがないか、モニタの最大解像度やモニタの最大数などの特定の境界内でのみサポートされます。

選択したエンドポイントのベンダーのドキュメントを参照して、H.264/H.265 の全体的なサポート性を判断することをお勧めします。

シンクライアント

ほとんどのシンクライアントは、ハードウェアプラットフォーム用に最適化された特定のソフトウェア構成を使用して、対象を絞ったユースケース向けに構築されています。エンドポイントが組織のニーズを満たしていることを確認するために、購入前にベンダと協力して、お客様の環境内のシンクライアントテストユニットを評価することをお勧めします。

プロジェクトの調査段階でCitrix Ready のWebサイトにアクセスして 、検討中のハードウェアが評価に合格し、必要な機能と互換性があるかどうかを判断することを強くお勧めします。

Citrix Ready プログラムは、 認定されたユースケース機能に基づいてシンクライアントを分類します

  • HDX Ready — 基本的なオフィスアプリケーションやライトマルチメディアにアクセスするタスクワーカーをサポートします。
  • HDX Premium — HDX Ready エンドポイントと同様のワークロードをサポートします。さらに、HDX Premium エンドポイントは、Skype for Business などのユニファイドコミュニケーションをサポートします。
  • HDX 3D Pro — CAD、地理情報システム(GIS)、医療画像関連ソフトウェアなどのグラフィック処理負荷の高いアプリケーションにアクセスする際に、ハイエンドエンドポイントのパフォーマンスを必要とするパワーユーザーをサポートします。認定に合格するには、H.264/H.265 コーデックサポートが必要です。

各HDXレベルの機能の認定基準は、 こちらで確認できます

シッククライアント

環境内のシッククライアントエンドポイントを管理する場合は、コーデックのサポート(H.264/H.265)を決定する際に、次のコンポーネントを考慮してください。

  • オペレーティングシステム:Linux ディストリビューションによっては、追加のライブラリをインストールする必要があります。
  • ブラウザ:HTML5用のCitrix Workspace アプリ
  • Citrix Receiver/Workspaceアプリのバージョン:機能サポートマトリックスは、 こちらで確認できます
  • GPU オフロード機能

ツール

環境の設定に役立つツールはありますか。はい、あなたにぴったりの構成セットを見つけるために、あなたの旅に役立ついくつかのものがあります:

HDX Monitor

HDXグラフィックス4

HDX Monitorは、特定のセッションで実際に有効な設定を確認するのに役立ちます。 最新バージョンはこちら

グラフィックス状態インジケーター

[グラフィックステータスインジケータ]設定を有効にすると、[ ビルドイングラフィックスステータスインジケータ ]がCitrixポリシーで有効になり、Citrixセッションでの現在の設定が表示されます。

HDXグラフィックス 5

重要なポイント

圧縮にビデオコーデックを使用 ]ポリシーでは、上記のさまざまなHDXグラフィックモードを選択できます。各モードには、CPU またはネットワークの使用率にかかわらず、リソース消費の面で利点とトレードオフがあります。リソースの消費量(特に CPU)は、サーバのスケーラビリティに影響します。

表示品質、ターゲットフレームレートなどの追加のポリシーをカスタマイズして、わずかな視覚品質を犠牲にしてリソースの消費を相殺したり、最も必要な場所で品質を向上させることができます。お客様の環境内のユースケースに合わせて、これらのポリシーをカスタマイズします。このプロセスをガイドするには、Visio の図を参照してください。

エンドポイントの選択は、選択したグラフィックスモードとの互換性を保つために不可欠です。VDAは、H.264をサポートしていないエンドポイントに対して、フォールバック方式としてビデオコーデックを使用しないようにThinwireを構成します。

組み込みツール(HDX Monitor とグラフィックスステータスインジケータ)を活用して、ポリシー設定が目的の結果を満たしているかどうかを評価します。

アクティブに変更するリージョンの Thinwire は、多くの場合、適切な開始点になります。ただし、エンドユーザーに豊富なエクスペリエンスを提供するには、ユースケースを把握し、それに応じて環境を構成することが最善の方法です。

ソース

この記事の目的は、独自の実装計画を支援することです。この作業を簡単にするために、お客様のニーズに合わせて調整できるソース図を提供します。 ソース図です

設計上の決定:HDXグラフィックスの概要