ユニファイドコミュニケーションSDKの最適化
はじめに
Citrix Virtual Apps and Desktopsを使用すると、さまざまなエンドポイントデバイス上のユーザーにアプリケーションを配信できます。これらのアプリケーションの多くには、音声会議やビデオ会議などのリアルタイム通信 (RTC) 機能が含まれています。しかし、仮想化環境でこれらのアプリケーションを配信する際には課題が生じることがあります。従来の配信方法では、メディアストリーム (オーディオ/ビデオ) をクライアントデバイスからデータセンター内のVDIサーバーにルーティングし、その後エンドポイントに送り返します。この「ヘアピン化」は、特に帯域幅を大量に消費するオーディオおよびビデオ通話において、サーバーに不要なトラフィックと処理オーバーヘッドをもたらします。
Citrix Unified Communications SDK (UCSDK) は、テクノロジーベンダーがこれらのRTCアプリケーションをCitrix環境で使用するために最適化できるようにするテクノロジーです。アプリケーションが最適化されると、ローカルデスクトップで実行されているアプリケーションと同等か、それ以上のユーザーエクスペリエンスを提供できます。今日の世の中では、シームレスなリアルタイム通信は生産性とコラボレーションに不可欠です。仮想環境内でアプリケーションを使用する場合、音声通話やビデオ通話、画面共有、その他の通信機能がローカルデスクトップと同じくらいスムーズに動作することが重要です。最適化されたアプリケーションは、このエクスペリエンスを提供します。
この製品ドキュメントでは、Citrixのお客様がUCSDK最適化アプリケーションを学習し、展開するために必要なすべてを詳しく説明します。
動作の仕組み
Citrixは、VDI内のリアルタイム通信アプリケーション向けに最適化された配信方法を提供しています。このアプローチでは、Unified Communications SDK (UCSDK) を活用して、仮想化されたアプリケーションを次の2つの部分に分割します。
-
ユーザーインターフェイス (UI): ユーザーインターフェイスは仮想ホスト内に残り、仮想デスクトップまたはアプリケーションウィンドウ内にシームレスに表示されます。
-
メディアエンジン: メディア処理タスク (オーディオとビデオのエンコード/デコード) は、ユーザーのローカルデバイスにオフロードされます。これにより、サーバーの負荷が最小限に抑えられ、ネットワーク使用量が最適化されます。
通常、Citrixはリアルタイム通信分野のテクノロジーベンダーにUCSDKを提供し、それらのアプリケーションにUCSDKを統合するために協力しています。統合されると、UCSDK最適化アプリケーションを使用するCitrixのお客様は、強化されたエクスペリエンスを得ることができます。Citrix UCSDKは、カスタムの社内アプリケーションが構築されている場合にも、Citrixのお客様が利用できます。ただし、ほとんどの場合、お客様はUCSDKを利用して開発する必要はなく、最適化されたエクスペリエンスを実現するためにCitrix環境とアプリケーションを構成するだけで済みます。
注:
Citrix WebRTC SDK (または) HDX™最適化アプリケーションへの言及は、Citrix UCSDKとの統合を示しており、互換的に使用できます。
主な利点
Citrix UCSDKで最適化されたアプリケーションを使用する場合、次のことが期待できます。
-
プロセッサ負荷の高いメディアエンコード/デコードをCitrix Virtual Delivery Agent (VDA) からクライアントエンドポイントにオフロードすることで、メディア処理パフォーマンスが向上し、エンドユーザーの全体的な応答性が高まります。
-
Citrix VDAでのCPUおよび帯域幅使用量が削減され、IT部門はホストあたりの同時ユーザー数を増やし、企業はCitrix仮想デスクトップの展開を費用対効果の高い方法で拡張できます。
-
最適化されたエンドポイントがレガシー仮想デスクトップの寿命を延ばし、ホストインフラストラクチャの必要性を減らすため、企業の総所有コストが削減され、時間の経過とともに設備投資と運用コストが削減されます。
-
Windows、Mac、Linux、ChromeOS、およびHTML5エンドポイントプラットフォームのサポート。
ユースケース
UCSDKは、WebRTC標準に準拠したリアルタイム通信アプリケーションを最適化するために特別に構築されています。以下に、UCSDKを使用できる/すでに使用しているWebRTCベースのアプリケーションの主要なシナリオと種類を示します。
-
サービスとしてのコンタクトセンター (CCaaS) / クラウドコンタクトセンタープラットフォーム: 主に複数のチャネルにわたる顧客とのやり取りを管理し、エージェントのワークフローを最適化します。
-
例: アマゾン コネクト、トゥイリオ、アバイア エクスペリエンス プラットフォーム、トークデスク、コンテンツ グル
-
-
サービスとしてのユニファイドコミュニケーション (UCaaS) / クラウドビジネスコミュニケーション: 音声、ビデオ、チームメッセージング、プレゼンスを統合し、包括的なビジネスコミュニケーションを実現します。
-
例: リング セントラル、8x8、インターメディア、アルカテル・ルーセント レインボー
-
-
サービスとしてのコミュニケーションプラットフォーム (CPaaS): リアルタイム通信機能をカスタムアプリケーションに直接組み込むためのAPIを提供します。
-
例: トゥイリオ、リボン コミュニケーションズ
-
-
エンタープライズビデオ会議およびコラボレーション: 高品質なビデオ会議、カンファレンス、高度なコラボレーション機能のための専用プラットフォームです。
-
例: Pexip
-
-
金融取引通信: 金融市場の独自の、高性能でコンプライアンスに準拠した通信ニーズのために設計されています。
-
例: IPC Unigy
-
-
仮想学習およびトレーニングプラットフォーム: インタラクティブで高品質な仮想教室およびトレーニング体験のために設計されています。
-
例: ヴィテロ
-
Citrix UCSDKの基盤となるWebRTCは、その最適化機能がWebRTCベースのあらゆる通信アプリケーションに拡張できることを意味します。これにより、現在UCSDKで最適化されているとリストされていないアプリケーションであっても、リアルタイムインタラクションにWebRTCを利用する幅広いアプリケーションを最適化する道が開かれます。お客様には、最適化を希望するユースケースやアプリケーションについてCitrixにお問い合わせいただくことをお勧めします。
UCSDK アーキテクチャ
UCSDK アーキテクチャ (/en-us/citrix-virtual-apps-desktops/current-release/media/ucsdk-architecture.png)
-
ベンダーアプリケーション: これは、UCSDK を統合した、デスクトップベースまたはブラウザベースのサードパーティ製リアルタイム通信アプリケーションです。
-
UCSDK JS: UCSDK JS は、ベンダーアプリケーションがオーディオ/ビデオをエンドポイントにオフロードするために利用する API を提供します。
-
HdxRtcEngine: これは、Citrix Workspace アプリに組み込まれている WebRTC メディアエンジンで、オフロードされたオーディオ/ビデオ通話を処理および管理します。
SDK がロードされて使用されると、リダイレクトが成功した場合、クライアントエンドポイントで
HdxRtcEngine.exe プロセスが起動されます。クライアントエンドポイントで HdxRtcEngine.exe が起動されると、すべてのシグナリングおよびペイロードデータは Citrix VDA からクライアントエンドポイントに流れ、クラウドに到達し、クライアントエンドポイントに戻ってから VDA に転送されます。たとえば、フローの完全な往復は次のようになります。
Vendor App -> CitrxWebrtc.js SDK -> Citrix VDA components -> Citrix Client Endpoint components -> Cloud -> Citrix Client Endpoint components -> Citrix VDA components -> CitrxWebrtc.js SDK -> Vendor App
システム要件
システム要件は、UCSDK の最新バージョン (5.0.0) で必要となる Citrix コンポーネントのさまざまなバージョンを示しています。SDK の古いバージョンおよび特定の機能要件に関する互換性の詳細については、以下の バージョンと機能マトリックス の表を参照してください。
注:
お客様が UCSDK に追加された機能を使用するには、ベンダーアプリケーションが適切な UCSDK バージョンを統合し、その機能を有効にしていること、および環境で適切な VDA および CWA バージョンを使用していることを確認してください。
完全互換バージョン
完全互換バージョンとは、これらのバージョンの Citrix コンポーネントを UCSDK の最新バージョンと組み合わせて使用することで、お客様が利用可能なすべての機能を活用できることを示します。UCSDK の現在の最新バージョン (5.0.0) の場合、Citrix コンポーネントの完全互換バージョンは以下のとおりです。
-
シトリックス仮想アプリおよびデスクトップ™: 2603
-
Citrix Workspace アプリ ウィンドウズ: 2603
-
Citrix Workspaceアプリ Mac: リリース予定
-
Citrix Workspace アプリ リナックス: 2603
-
Citrix Workspaceアプリ ChromeOS/HTML5: リリース予定
注:
UCSDK最適化は、Windows、Mac、Linux、ChromeOS、HTML5のすべてのエンドポイントプラットフォームでサポートされています。上記のリストで特定のEndpoint Platformに「リリース予定」と表示されている場合、それは最新のUCSDK機能と完全に互換性のあるバージョンがまだリリースされていないことを意味します。したがって、お客様は、新しいUCSDKを使用している場合でも、Citrix Workspaceアプリの古いバージョンを使用して既存の機能を継続して使用できます。
構成
UCSDKの機能は、ベンダーが統合したUCSDKのバージョンとベンダーが有効にした機能、Citrix Virtual Apps and Desktops、および使用中のCitrix Workspaceアプリのバージョンの3つの要因に依存します。
Citrix側では、最適化されたアプリケーションが最適化されるように、以下が構成されていることを確認してください。
-
Microsoft Teamsリダイレクトポリシーがオンになっていることを確認します。詳細については、マルチメディアポリシー設定を参照してください。このポリシーはデフォルトでオンになっています。
-
CitrixWebrtc.jsSDKを利用するサードパーティのElectronまたはブラウザベースのアプリケーションは、デフォルトではサポートされていません。CtxHdxWebSocketService(WebSocketService.exe) は、許可リストにないアプリケーションからの接続を許可しません。目的のアプリケーションバイナリ実行可能ファイル名をホワイトリストレジストリキーに追加する必要があります。
注:
CVAD 2603以降、Citrix Unified Communications SDK (UCSDK) を使用するアプリケーションの最適化は、Microsoft Teamsリダイレクトポリシーに依存しなくなりました。管理者は、他のUCSDK統合アプリケーションに影響を与えることなく、Microsoft Teamsの最適化を無効にできるようになりました。この分離を使用するには、ベンダーアプリケーションは、CVAD 2603と併せてBootstrapメソッド(UCSDK 4.0で初めて導入)を利用する必要があります。詳細については、Unified Communications SDK documentationを参照してください。
VDA上
-
キーパスを作成します:
HKLM\Software\WOW6432Node\Citrix\WebSocketService -
キー名:
ProcessWhitelist -
種類:
MULTISZ -
キー値:
Mytestapp.exe
複数のアプリケーションがある場合は、各アプリケーションを新しい行に入力します。テキストファイルからコピー&ペーストしたり、コンマを挿入したりしないでください。指定された名前がアプリケーションの実行可能ファイル名と一致していることを確認してください。このレジストリ値は大文字と小文字を区別しません。
アプリケーションが本格的なデスクトップアプリケーションではなくブラウザ経由でアクセスされる場合、レジストリ値で例えば
chrome.exeを許可する必要があります。
上記のレジストリが正常に構成されたら、VDAを再起動するか、
CtxHdxWebSocketServiceを再起動してホワイトリストの設定を完了します。
クライアント上
構成は不要です。Citrix Workspaceアプリをインストールするだけです。
各ベンダーは非常に具体的なアプリケーション名を持っている場合があります。したがって、WebSocketServiceで許可する必要があるアプリケーション名を決定するには、現在のベンダーサポートセクションにリンクされているベンダーのドキュメントを参照してください。
機能リファレンス
リダイレクトされたコンテンツをスクリーンショットでキャプチャする
UCSDK最適化アプリケーションにビデオまたは共有画面オーバーレイが含まれる場合、そのコンテンツはエンドポイントでレンダリングされるため、標準のセッション内スクリーンショットツールでは空白領域としてキャプチャされます。このコンテンツをスクリーンショットに含めるには、Citrix Snipping Toolを使用してください。Citrixでは、見つけやすくするためにCitrix Virtual Desktop Assistantから起動することをお勧めします。詳しくは、Citrix Virtual Desktop Assistantのドキュメントを参照してください。
Smart Syncによる通話接続時間の短縮
UCSDK 5.0.0で導入されたSmart Sync機能は、VDAとクライアントエンドポイント間の通信を効率化することで、通話接続時間を短縮します。この機能強化により、全体的に通話設定が高速化され、特に高遅延ネットワーク環境で最も顕著なパフォーマンス向上が実現されます。
Citrixは、この機能を活用するために、お客様がアプリケーションベンダーに連絡してUCSDK 5.0.0にアップグレードすることを推奨します。
注:
この機能は、UCSDK 5.0.0とCitrix Workspaceアプリのみに依存します。正確なクライアントバージョンについては、バージョンと機能マトリックスを参照してください。VDAのバージョン依存性はないため、以前のサポートされているVDAも引き続き使用できます。
UCSDKとHDX Microsoft Teams最適化の分離
この機能は、Unified Communications SDK (UCSDK) の最適化ロジックをMicrosoft Teamsの最適化ポリシーから分離します。以前は、「Microsoft Teamsリダイレクト」ポリシーがマスター切り替えスイッチとして機能しており、Teamsに対してこれを無効にすると、他のすべてのUCSDKベースのアプリケーションが意図せずサーバー側レンダリングにフォールバックされていました。
この機能強化により、WebRTCリダイレクトに必要な仮想チャネルは、Teamsポリシーの状態に関係なく、サードパーティアプリケーションで引き続き利用可能になります。
-
利点
-
きめ細かな制御: 管理者は、Amazon Connect、Five9、RingCentral、その他のUCSDK統合アプリケーションなどの重要なビジネスアプリケーションの最適化に影響を与えることなく、Microsoft Teamsの最適化ポリシーを選択的に管理できます。
-
運用安定性: UCSDK最適化アプリケーションにおける意図しないパフォーマンス低下を防ぐことで、ビジネス継続性を確保します。管理者は、主要なビジネスツールの高精細オーディオ/ビデオエクスペリエンスを損なうことなく、トラブルシューティングやコンプライアンス上の理由でHDX Teams最適化を無効にできます。
-
-
要件
-
VDA要件: Citrix Virtual Apps/Desktops 2603以降
-
アプリケーションの互換性: サードパーティ製アプリケーションは、UCSDKブートストラップ初期化メソッドを利用する必要があります
-
注:
-
この機能は、Microsoft Teams SlimCore最適化には影響しません。SlimCore最適化は、Microsoft独自の仮想チャネルを使用して独立して動作し、Citrix CTXMTOP仮想チャネルには依存しません。
-
この機能を活用するには、サードパーティ製アプリケーションがUCSDK 4.0以降で構築されている必要があります。お客様は、アプリケーションベンダー(例:Amazon Connect、Five9、RingCentral)に、特定のバージョンがブートストラップ初期化を使用していることを確認する必要があります。
Microsoft Teams最適化のための明示的なサービス依存関係
Citrix Virtual Apps / Desktops 2603以降、Citrix HDX Teams Redirection Service(HDX最適化Microsoft TeamsおよびUCSDK最適化アプリケーションで使用)は、**Citrix HDX HTML5 Video Redirection Service (WebSocketService)**への依存関係を明示的に宣言するようになりました。
このアップデートにより、Teamsサービスが起動する際にHTML5サービスが自動的に検証および開始されるようになり、サービスが厳密に管理されている環境でのMicrosoft TeamsおよびUCSDK統合アプリケーションの最適化の失敗を防ぎます。
パフォーマンスとユーザーエクスペリエンスを向上させるための最適化されたオーバーレイクリッピング
CVAD 2511以降、HDX Microsoft Teams最適化やUCSDK最適化などの機能におけるリダイレクトされたビデオオーバーレイを処理するメカニズムは、ユーザーエクスペリエンスとサーバーパフォーマンスの両方を向上させるために再設計されました。
主な利点
-
視覚的な正確性の向上: この機能強化により、ポップアップメニューや通知などのアプリケーション要素がビデオコンテンツの背後に誤って表示される視覚的な不具合が解決されます。新しいロジックにより、すべてのコンポーネントが正しい順序でレンダリングされ、よりシームレスで予測可能なエクスペリエンスが提供されます。
-
パフォーマンスの向上: この最適化により、Virtual Delivery AgentでのCPU使用率が大幅に削減されます。古いリソース集約型のポーリングメソッドをより効率的なグラフィックスベースのアプローチに置き換えることで、この変更はサーバーのスケーラビリティを向上させ、より高いユーザー密度を可能にします。
注:
この機能は、将来のバージョンのMicrosoft Teams(またはその他のUCSDKパートナーアプリケーション)に依存し、Citrix Workspace App for Windows 2511が必要です。
バージョンと機能マトリックス
バージョン更新は頻繁に行われるため、特定のバージョンがサポートされていることを確認するには、Citrix Virtual Apps and DesktopsおよびCitrix Workspace appの製品ライフサイクルページを参照してください。多くの古い機能については、表に記載されているバージョンは、このドキュメントの作成時点での最終サポート対象のCurrent Release (CR) バージョンです。
| 機能 | UCSDKバージョン | VDA | CWA ウィンドウズ | CWA Mac | CWA リナックス | CWA ChromeOS/HTML5 |
|---|---|---|---|---|---|---|
| オーディオ/ビデオ (p2p & 会議) | 3.1.0 | 2203 LTSR 最新 CU / 2311 CR | 2402 LTSR 最新CU / 2311 CR | 2311 | 2311 | 2312 |
| 画面共有 | 3.1.0 | 2203 LTSR 最新 CU / 2311 CR | 2402 LTSR 最新CU / 2311 CR | 2311 | 2311 | 2312 |
| DTMF | 3.1.0 | 2203 LTSR 最新 CU / 2311 CR | 2402 LTSR 最新CU / 2311 CR | 2311 | 2311 | 2312 |
| プロキシサーバーのサポート | 3.1.0 | 2203 LTSR 最新 CU / 2311 CR | 2402 LTSR 最新CU / 2311 CR | 2311 | 2311 | 2312 |
| アプリ共有 | 3.1.0 | 2203 LTSR 最新 CU / 2311 CR | 2402 LTSR 最新CU / 2311 CR | 2311 | 2311 | 該当なし |
| 動的e911 | 3.1.0 | 2203 LTSR 最新 CU / 2311 CR | 2402 LTSR 最新CU / 2311 CR | 2311 | 2311 | 2312 |
| マルチウィンドウ | 3.1.0 | 2203 LTSR 最新 CU / 2311 CR | 2402 LTSR 最新CU / 2311 CR | 2311 | 2311 | 2312 |
| SDP統合プランのサポート | 3.1.0 | 2203 LTSR 最新 CU / 2311 CR | 2402 LTSR 最新CU / 2311 CR | 2311 | 2311 | 2312 |
| ストリーム解像度 / シマルキャスト | 3.1.0 | 2203 LTSR 最新 CU / 2311 CR | 2402 LTSR 最新CU / 2311 CR | 2311 | 2311 | 2312 |
| リモートオーディオ (ループあり) | 3.1.0 | 2203 LTSR 最新 CU / 2311 CR | 2402 LTSR 最新CU / 2311 CR | 2311 | 2311 | 2405 |
| ブラウザベースのUCSDK (ブートストラップサポート) | 4.0.2 | 2407 CR | 2402 LTSR 最新CU / 2311 CR | 2311 | 2311 | 2312 |
| Web HID API | 4.0.2 | 2203 LTSR 最新 CU / 2311 CR | 2409.10 | 2411 | 2411 | 2505 |
| ウェブオーディオAPI | 4.0.2 | 2203 LTSR 最新 CU / 2311 CR | 2405 | 2405 | 2405 | 該当なし |
| ICE の再起動 | 4.1.0 | 2203 LTSR 最新 CU / 2311 CR | 2503.2 | 2503 | 2503 | 2502.10 |
| 画面録画 (プレビュー)¹ | 4.1.0 | 2503 | 2503.2 | 該当なし | 該当なし | 該当なし |
| スマートシンク | 5.0.0 | 2203 LTSR 最新 CU / 2311 CR | 2603 | 該当なし | 2604 | 該当なし |
注:
画面録画用の新しいポリシーを導入したため、CVAD 2503に付属するdelivery controller™のバージョン2503が必要です。
現在のベンダーサポート
複数のサードパーティベンダーが、Unified Communications SDKを自社製品に統合しています。ベンダーとそのサポートドキュメントの現在のリストは以下のとおりです。
| ベンダー | ドキュメント |
|---|---|
| スプリンクラー | Citrix 音声通話用メディアオフロード - スプリンクラー |
| マイクロソフト ダイナミクス 365 | Dynamics 365 Contact Center ドキュメント |
| アマゾンコネクト | Citrix Cloud Desktops 向け Amazon Connect オーディオの最適化 |
| リングセントラル | Citrix VDI 環境での RingCentral の使用 |
| ファイブナイン | Citrix 環境での Five9 WebRTC |
| トゥイリオ | Citrix VDIにおけるTwilio Flex |
| アバイア | 「Citrix向けAvaya Experience Platform Public Cloud VDIソリューション」(https://documentation.avaya.com/bundle/ExperiencePlatform_Administering_10/page/Avaya__Experience_Platform_VDI_solution_for_Citrix_1.html) |
| 8x8 | Citrix VDIとデスクトップおよびウェブ向け8x8 Workの統合 |
| コンテンツ・グル | カンテン・グル Citrix統合 |
| リボン・コミュニケーションズ | リボン・コミュニケーションズ Citrix WebRTC SDK |
| インターメディア | 「Citrix Virtual Apps and DesktopsへのIntermedia Uniteのインストール」(https://support.intermedia.com/app/articles/detail/a_id/24355) |
| アルカテル・ルーセント・レインボー | 「Rainbowデスクトップアプリケーション向けCitrix最適化」(https://help.openrainbow.com/hc/ja-jp/articles/23752823816850-CITRIX-Optimization-for-Rainbow-Desktop-application) |
| トークデスク | Talkdesk Agent Workspace VDI コネクト |
| IPC | IPC Unigy ソフトクライアント Citrix VDI |
| ヴィテロ | Citrix VDI 向けヴィテロ インスパイア |
| ペクシプ | Citrix Pexip Infinity Docs で Connect デスクトップアプリを展開する |
| ズーム ウェブアプリ | Zoom Web App の WebRTC リダイレクトを構成する |
トラブルシューティング
トラブルシューティング情報については、Citrix Unified Communications SDK で最適化されたアプリのトラブルシューティングガイダンスを参照してください。
既知の問題と制限事項
このセクションでは、現在認識されている既知の問題と制限事項について説明します。