Citrix Virtual Apps and Desktops

アダプティブトランスポート

アダプティブトランスポートは、Citrix Virtual Apps and Desktopsのメカニズムであり、ICA接続のトランスポートプロトコルとしてEnlightened Data Transport(EDT)を使用する機能を提供します。EDTが使用できない場合、アダプティブトランスポートはTCPに切り替わります。

EDTは、ユーザーデータグラムプロトコル(UDP)上に構築されたCitrix独自のトランスポートプロトコルです。サーバーのスケーラビリティを維持しながら、要求の厳しい長距離接続で優れたユーザーエクスペリエンスを提供します。EDTは、信頼性の低いネットワーク上のすべてのICA仮想チャネルのデータスループットを向上させ、より優れた、より一貫性のあるユーザーエクスペリエンスを提供します。

ネットワークスタック

アダプティブトランスポートが [優先] に設定されている場合、EDTがプライマリトランスポートプロトコルとして使用され、TCPがフォールバックに使用されます。デフォルトでは、アダプティブトランスポートは [優先] に設定されています。テスト目的でアダプティブトランスポートを [診断モード] に設定できます。これにより、EDTのみが許可され、TCPへのフォールバックが無効になります。

Windows、Mac、iOS向けのCitrix Workspaceアプリを使用する場合、初期接続、セッション画面の保持による再接続、自動クライアント再接続の実行中に、EDTとTCPの接続が同時に試行されます。そうすることで、基礎となるUDPトランスポートが利用できなくなり、代わりにTCPを使用する必要がある場合に、接続時間が短縮されます。アダプティブトランスポートが [優先] に設定されていて、TCPを使用して接続が確立されている場合、アダプティブトランスポートは5分ごとにEDTへの切り替えを試行し続けます。

LinuxおよびAndroid向けのCitrix Workspaceアプリでは、最初にEDT接続が試行されます。この接続が失敗した場合、Citrix Workspaceアプリは、EDT要求がタイムアウトした後、TCPで接続を試みます。

アダプティブトランスポート

システム要件

アダプティブトランスポートとEDTを使用するための要件は次のとおりです:

  • コントロールプレーン
    • Citrix Virtual Apps and Desktopsサービス
    • Citrix Virtual Apps and Desktops 1912以降
  • Virtual Delivery Agent
    • バージョン1912以降(2103以降を推奨)
    • バージョン2012は、Citrix Gateway ServiceでEDTを使用するために必要な最小バージョンです。
  • StoreFront
    • バージョン3.12.x
    • バージョン1912.0.x
  • Citrix Workspaceアプリ
    • Windows:バージョン1912以降(2105以降を推奨)
    • Linux:バージョン1912以降(2104以降を推奨)
    • Mac:バージョン1912以降(2108以降を推奨)
    • iOS:Apple AppStoreで入手可能な最新バージョン
    • Android:Google Playで利用可能な最新バージョン
  • Citrix Gateway(ADC)
    • 13.0.52.24以降
    • 12.1.56.22以降
  • ファイアウォール(VDAの観点から)
    • UDP 1494 受信 – セッション画面の保持が無効になっている場合
    • UDP 2598 受信 – セッション画面の保持が有効になっている場合
    • UDP 443 受信 – VDA SSLがICA暗号化(DTLS)に対して有効になっている場合
    • UDP 443 送信 – Citrix Gatewayサービスを使用している場合。詳しくは、Citrix Gatewayサービスのドキュメントを参照してください。

注意事項

  • セッション画面の保持を有効にして、EDT MTU Discoveryを使用し、Citrix GatewayおよびCitrix GatewayサービスでEDTを使用するようにしてください。
  • 断片化を回避するために、EDT MTUが適切に設定されていることを確認してください。適切に設定されていない場合、パフォーマンスに影響が出たり、状況によってはセッションの起動に失敗したりすることがあります。詳しくは、「EDT MTU Discover」を参照してください。

  • Citrix GatewayサービスでEDTを使用するための要件と考慮事項について詳しくは、「Citrix GatewayサービスのEDTサポート付きHDXアダプティブトランスポート」を参照してください。
  • EDTをサポートするためのCitrix Gateway構成について詳しくは、「EDTおよびHDX InsightをサポートするようにCitrix Gatewayを構成」を参照してください。
  • IPv6は現在サポートされていません。

構成

アダプティブトランスポートはデフォルトで有効になっています。Citrixポリシーの [HDXアダプティブトランスポート] 設定を使用して、以下のオプションを構成できます。

  • 優先。これがデフォルトの設定です。アダプティブトランスポートが有効になっており、TCPへのフォールバックが有効な状態で、EDTを優先トランスポートプロトコルとして使用します。
  • 診断モード。アダプティブトランスポートが有効になり、EDTの使用が強制されます。TCPへのフォールバックは無効になっています。この設定は、テストとトラブルシューティングにのみ使用することをお勧めします。
  • オフ。アダプティブトランスポートは無効になっており、トランスポートにはTCPのみが使用されます。

EDTがセッションのトランスポートプロトコルとして使用されていることを確認するために、VDAでDirectorまたはCtxSession.exeコマンドラインユーティリティを使用できます。

Directorでセッションを検索し、[詳細]を選択します。[接続の種類][HDX][プロトコル][UDP] の場合、セッションのトランスポートプロトコルとしてEDTが使用されています。[接続の種類][RDP] の場合、ICAは使用されておらず、[プロトコル]は[なし]と表示されます。詳しくは、「セッションの監視」を参照してください。

EDT Director

CtxSession.exeユーティリティを使用するには、セッション内でコマンドプロンプトまたはPowerShellを起動し、ctxsession.exeを実行します。詳細な統計を表示するには、ctxsession.exe -vを実行します。EDTが使用されている場合、トランスポートプロトコルは次のいずれかを示します:

  • UDP > ICA(セッション画面の保持が無効)
  • UDP > CGP > ICA(セッション画面の保持が有効)
  • UDP > DTLS > CGP > ICA(ICAはDTLSで暗号化されたエンドツーエンド)

EDTセッション

EDT MTU Discovery

MTU Discoveryにより、セッション確立時にEDTが最大伝送単位(MTU)を自動的に決定できるようにします。これにより、パフォーマンスの低下やセッションの確立失敗となる可能性のある、EDTパケットのフラグメンテーションが防止されます。

要件

  • VDA最小バージョン1912(2103以降を推奨)
  • Citrix Workspaceアプリ
    • Windows:バージョン1912以降(2105以降を推奨)
    • Mac:バージョン2108以降
    • Android:バージョン21.5以降
  • Citrix ADC:
    • 13.0.52.24
    • 12.1.56.22
  • セッション画面の保持を有効にする必要があります

クライアントプラットフォームまたはこの機能をサポートしていないバージョンを使用している場合、環境に適したカスタムのEDT MTUの構成については、CTX231821を参照してください。

重要:

MTU Discoveryは、マルチストリームICAではサポートされていません。

VDAでEDT MTU Discoveryを有効または無効にするには

次のレジストリキーを設定します:

  • キー:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\icawd
  • 値の名前:MtuDiscovery
  • 値の種類:DWORD
  • 値データ:00000001

VDAを再起動し、VDAが登録されるまで待ちます。

EDT MTU Discoveryを無効にする場合は、このレジストリ値を削除してVDAを再起動します。

この設定はマシン全体で有効であり、サポートされているクライアントから接続しているすべてのセッションに反映されます。

警告:

レジストリエディターの使用を誤ると、深刻な問題が発生する可能性があり、オペレーティングシステムの再インストールが必要になる場合もあります。レジストリエディターの誤用による障害に対して、シトリックスでは一切責任を負いません。レジストリエディターは、お客様の責任と判断の範囲でご使用ください。また、レジストリファイルのバックアップを作成してから、レジストリを編集してください。

クライアントでEDT MTU Discoveryを制御するには

ICAファイルにMtuDiscoveryパラメーターを追加することで、クライアント上でEDT MTU Discoveryを選択的に制御できます。この機能を無効にする場合は、[アプリケーション]セクションで次のように設定します:

MtuDiscovery=Off

この機能を再度有効にするには、ICAファイルからMtuDiscoveryパラメーターを削除します。

重要:

このICAファイルパラメータを使用するには、VDAでこの機能を有効にします。VDAでこの機能が有効になっていない場合、ICAファイルパラメーターは無効です。

損失耐性モード

重要:

  • この機能は、Windows向けCitrix Workspaceアプリ2002以降が必要です。
  • 損失耐性モードは、Citrix GatewayまたはCitrix Gatewayサービスではサポートされていません。このモードでは、直接接続でのみ使用可能です。

損失耐性モードは、EDT Lossyトランスポートプロトコルを使用し、高遅延やパケット損失が発生しているネットワークで接続中のユーザーのユーザーエクスペリエンスを向上させます。

最初に、セッションはEDTを使用して確立されています。遅延とパケット損失のしきい値に達するかこれを上回っている場合、該当する仮想チャネルはEDTからEDT Lossyに切り替わります。他の仮想チャネルはEDTのままです。遅延とパケット損失がしきい値を下回るまで減少した場合、該当する仮想チャネルは、EDTに切り替わります。

デフォルトのしきい値は次のとおりです:

  • パケット損失:5%
  • 遅延:300ミリ秒(RTT)

損失耐性モードはデフォルトで有効になっています。このモードを無効にしたり、損失耐性モードのしきい値設定を使用して、パケット損失や遅延のしきい値を調整したりできます。

要件

  • Citrix Virtual Delivery Agent(VDA)2003
  • Windows向けCitrix Workspaceアプリ2002
  • セッション画面の保持が有効。セッション画面の保持について詳しくは、「セッション画面の保持のポリシー設定」を参照してください。

既知の問題

アダプティブトランスポートとEDTには、次の問題があります:

  • パケットの断片化により、パフォーマンスが低下したり、セッションの起動に失敗したりすることがあります。EDT MTUを調整して、これを回避できます。MTU Discoveryを使用するか、CTX231821に記載された回避策を実行します。

  • MTU Discoveryが有効になっている場合、Windowsクライアントからセッションを起動すると、灰色または黒色の画面が表示されることがあります。この問題に対処するには、Windows 2105以降向けのWorkspaceアプリ、またはWindows 1912 CU4以降向けのWorkspaceアプリにアップグレードします。

  • LinuxおよびAndroidクライアント上で、Citrix GatewayまたはCitrix Gatewayサービスを介して接続すると、TCPへのフォールバックに失敗することがあります。これは、クライアントとGatewayの間でEDTネゴシエーションが成功し、GatewayとVDAの間でEDTネゴシエーションが失敗した場合に発生します。この問題に対処するには、Linux 2104以降向けのWorkspaceアプリ、またはAndroid 21.5以降向けのWorkspaceアプリにアップグレードします。

  • 非対称ネットワークパスにより、MTU Discoveryが、Citrix GatewayまたはCitrix Gatewayサービスを介さない接続に失敗することがあります。この問題に対処するには、VDAバージョン2103以降にアップグレードします。[CVADHELP-16654]

  • Citrix GatewayまたはCitrix Gatewayサービスを使用している場合、非対称ネットワークパスが原因でMTU Discoveryが失敗することがあります。これは、GatewayでEDTパケットのヘッダーのDon’t Fragment(DF)ビットが伝播されないことが原因です。この問題はまだ修正されていません。[CGOP-18438]

  • DS-Liteネットワークを介して接続するユーザーの場合、MTU Discoveryが失敗することがあります。一部のモデムでは、パケット処理が有効になっているとDFビットを正しく処理できず、MTU Discoveryが断片化を検出できなくなります。この状況では、次のオプションを使用できます:

    • ユーザーのモデムでパケット処理を無効にします。
    • CTX231821で説明されているように、MTU Discoveryを無効にし、ハードコードされたMTUを使用します。
    • アダプティブトランスポートを無効にして、セッションにTCPの使用を強制します。ユーザーのサブセットのみが影響を受ける場合は、他のユーザーが引き続きEDTを使用できるように、クライアント側でそれを無効にすることを検討してください。

トラブルシューティング

アダプティブトランスポートとEDTのトラブルシューティングを行うには、次のことをお勧めします:

  1. 要件注意事項既知の問題を徹底的に確認および検証します。
  2. StudioまたはGPOにCitrixポリシーがあり、目的のHDXアダプティブトランスポート設定を上書きしていないかどうかを確認します。
  3. 目的のHDXアダプティブトランスポート設定を上書きする設定がクライアントにあるかどうかを確認します。上書きする設定とは、GPO設定、オプションのWorkspaceアプリ管理テンプレートを使用して構成された設定、またはレジストリやクライアントの構成ファイルで手動で構成されたHDXoverUDP設定などです。
  4. マルチセッションVDAマシンでは、UDPリスナーがアクティブであることを確認してください。VDAマシンでコマンドプロンプトを開き、netstat -a -p udpを実行します。詳しくは、「How to Confirm HDX Enlightened Data Transport Protocol」を参照してください。
  5. 内部で直接セッションを起動し、Citrix Gatewayをバイパスして、使用中のプロトコルを確認します。セッションでEDTを使用する場合、VDAはCitrix Gatewayを介した外部接続にEDTを使用するよう準備しています。
  6. EDTが直接内部接続では機能し、Citrix Gatewayを介したセッションでは機能しない場合:

    • セッション画面の保持が有効になっていることを確認します
    • GatewayでDTLSが有効になっていることを確認します
  7. ネットワークファイアウォールとVDAマシンで実行されているファイアウォールの両方で適切なファイアウォール規則が構成されているかどうかを確認します。
  8. ユーザーの接続に非標準のMTUが必要かどうかを確認します。有効MTUが1500バイト未満の接続は、EDTパケットの断片化を引き起こし、パフォーマンスに影響を与えたり、セッションの起動に失敗したりすることがあります。この問題は、VPN、一部のWi-Fiアクセスポイント、および4Gや5Gなどのモバイルネットワークを使用している場合によく発生します。この問題に対処する方法については、「MTU Discovery」セクションを参照してください。

Citrix SD-WANとの相互運用性

Citrix SD-WAN WAN最適化(WANOP)は、URLベースのビデオキャッシュを含むセッションを越えたトークン化圧縮(データ重複排除)を提供し、帯域幅を大幅に削減します。オフィスで2人以上のユーザーが同じクライアントが取得したビデオを見たり、同じファイルまたはドキュメントの大部分を転送または印刷したりする場合に、削減できます。さらに、ブランチオフィスアプライアンス上でICAデータ削減および印刷ジョブ圧縮プロセスを実行することにより、WANOPによりVDAサーバーのCPU負荷を軽減し、Citrix Virtual Apps and Desktopsサーバーでより高いスケーラビリティを実現します。

現在、SD-WAN WANOPはEDTをサポートしていません。ただし、SD-WAN WANOPが使用されている場合は、アダプティブトランスポートを無効にする必要はありません。ユーザーがWANOPを有効にしたSD-WANでセッションを起動すると、トランスポートプロトコルとしてTCPを使用するようにセッションが自動的に設定されます。非WANOPセッションは、引き続き可能な限りEDTを使用します。

アダプティブトランスポート