Product Documentation

Framehawk仮想チャネル

Apr 15, 2016

はじめに

Framehawk仮想チャネルは、大きなパケット損失や輻輳が発生したときに、ブロードバンドワイヤレス接続上でユーザーへの仮想デスクトップとアプリケーションの配信を最適化します。 Citrixポリシーを使用し、ネットワーク特性に適した方法で、ユーザー用にFramehawkまたはThinwireを実装し、全体的なスケーラビリティやパフォーマンスの期待に合わせることができます。

一般に、ユーザーエクスペリエンスは、有益なユーザーエクスペリエンスのための基礎として、フレームレートと画質に焦点を当てていました。 Framehawkは、線形性の理由を説明するためにこの定義を強化します。 ユーザーは経験に気を取られるのではなく、これを楽しむ必要があります。 劣化したネットワーク環境下では、ユーザーはすべてのプロトコルをむしばむ「ラバーバンド」効果に苦しんでいます。 これには、画面が反応するかどうかをユーザーが判断できないため、必要以上にクリックすることになり、結果がますます望ましくないものになっていくという「タップ待機タップ」症候群が含まれます。 Framehawkはこのような現象を、特にネットワークが激しく活動している状況で解消します。

家庭用高速インターネット接続がパフォーマンスの問題を示すことはよくありますが、その原因は近所のWi-Fi信号とのコリジョン、コードレスデバイスからのスペクトル干渉などいろいろ考えられます。 3Gまたは4G/LTEセルラーネットワーク経由、またはインフライトインターネットサービスを利用して、ホストされたアプリやデータに接続するユーザはますます増えています。 また、コーヒー店での休憩中や、滞在先のホテルで公衆Wi-Fiホットスポットを利用する人もいますが、この場合は輻輳がよく問題になります。 

Framehawkでは、ユーザーは高遅延の状況で、文字のエコーバックの線形性がより高いインタラクティブなエクスペリエンスに気付いています。

Framehawkはどのようにして円滑なユーザーエクスペリエンスを維持するか

Framehawkは人間の目をソフトウェアとして実装したもので、フレームバッファーの中に何があるかを確認したり、画面上のさまざまなコンテンツの種類を識別したりするものと考えてください。 ユーザーにとって重要なものはなんでしょうか。 動画や動くグラフィックのように急速に変化する画面エリアに関していえば、再生中に多少のピクセルが失われていても、新しいデータですぐに上書きされますから、人間の目にとっては大したことではありません。

しかし、タスクとレイヤツールバーのアイコン、読み始めたいところまでユーザーがスクロールした後のテキストのように画面で変化しないエリアは、人間の目が細部にまでこだわるところで、ユーザーは、このようなエリアではピクセルが完璧であることを期待します。 0と1の観点から技術的に正確であることを目的としたプロトコルと異なり、Framehawkの目的は、このテクノロジーを使用する人間にとって適切なものであることです。

Framehawkは、次世代QoS信号増幅器に加え、ワークロードをきめ細かく、より効率的に識別するための時間をベースにしたヒートマップを搭載しています。 Framehawkはデータ圧縮に加えて、自動自己回復変換を使用します。また、データの再送信を回避し、クリック応答、線形性、一貫したリズムを維持します。 損失の多いネットワーク接続では、Framehawkは補間を使って損失を隠すため、ユーザーは良好なイメージ品質を感じながら、流れるようなエクスペリエンスを楽しむことができます。 さらに、たとえば、ランダム損失(補正のためにさらにデータを送信)と輻輳損失(チャンネルはすでに渋滞しているので追加のデータは送信しない)など、Framehawkのアルゴリズムはさまざまな種類のパケット損失をインテリジェントに区別します。

Framehawk Intent Engineは、上スクロールと下スクロール、ズーム、左または右方向への移動、読み込み、入力などの一般的な操作を区別し、共有ディクショナリを使用して、Virtual Delivery Agent(VDA)への通信を管理します。 ユーザーが読もうとしているテキストは、高い品質で表示されなければなりません。 スクロールはすばやく、スムーズであることが必要です。 また、一時停止もできなければなりません。これにより、ユーザーはアプリケーションやデスクトップとのやりとりを常に制御できる立場でいられます。

ネットワーク接続のリズムを測定すること(自転車のチェーンの張力にたとえて、「ギアリング」と呼びます)により、Framehawkロジックはよりすばやく反応し、遅延の大きな接続でも優れたエクスペリエンスを提供します。 特許を取得したこの独特なギアリングシステムから、ネットワーク接続について、継続的に最新のフィードバックが得られるため、Framehawkは帯域幅や遅延性、損失率の変化に即対応できます。

ThinwireとFramehawkを使用する場合の設計について考慮すべきこと

Thinwireは帯域幅効率において業界をリードし、さまざまなアクセス条件やネットワーク状態に適合していますが、信頼できるデータ通信のためにTCPをベースにしているので、損失率の高いネットワークや過負荷状態のネットワークでは、パケットを再送信しなければならず、これがユーザーエクスペリエンスの低下につながります。

FramehawkはUDPベースで、データ送信ではベストエフォート方式を採用しています。 Framehawkとその他のUDPベースのプロトコルのパフォーマンスを比較すればわかるとおり、UDPは、Framehawkで損失性を打開する方法のほんの一部に過ぎませんが、Framehawkを際立たせる人間を主体にした技術の重要な基礎を提供します。

Framehawkで必要な帯域幅

ブロードバンドワイヤレスの意味は、接続を共有するユーザーの人数、接続の品質、使用しているアプリなどいくつかの要素によって変わります。 最適なパフォーマンスを上げるには、基本の4または5Mbpsに、同時に使用しているユーザー1人につき約150Kbpsを加えることをおすすめします。 

Citrixでは、Thinwireの帯域幅を基本の1.5 Mbpsに、ユーザー1人につき150 Kbps追加することを推奨していました(詳細は、XenAppおよびXenDesktop帯域幅ブログを参照)が、Thinwireでは3%のパケットが失われるため、有益なユーザーエクスペリエンスを保証するには、Framehawkよりもかなり大きな帯域幅が必要であることがわかります。

注:Thinwireは、ICAプロトコルのディスプレイリモート処理では、プライマリチャネルのままです。 Framehawkは、デフォルトで無効になっています。 Citrixは必要に応じて有効、無効を切り替えることで、組織のブロードバンドワイヤレスアクセスシナリオに対応することを推奨します。

FramehawkおよびHDX 3D Pro

Framehawkでは、XenApp(サーバーOS)およびXenDesktop(デスクトップOS)アプリケーションの両方で、すべてのHDX 3D Proのユースケースがサポートされるようになりました。 早期のPreview版では、遅延が400~500ミリ秒、パケット損失が1~2%の顧客環境で検証され、AutoCADやSiemens NXなどの一般的な3Dモデリングアプリケーションで素晴らしい対話操作性が得られました。 これにより、移動中や、国外または劣悪なネットワーク環境で作業を行う場合も、より大規模なCADモデルを表示させて操作できるようになりました。

この機能を有効にするために、追加の構成作業を行う必要はありません。 VDAをインストールするとき、最初に3DProオプションを選択してください。 

localized image

要件および考慮事項

Framehawkでは、少なくとも、VDA 7.6.300およびグループポリシー管理7.6.300が必要です。 

エンドポイントには、少なくとも、Citrix Receiver for Windows 4.3.100、またはCitrix Receiver for iOS 6.0.1が必要です。

Framehawkでは、デフォルトで双方向のUDPポート範囲(3224~3324)を使用して、FramehawkディスプレイチャネルデータのCitrix Receiverとの交換が行われます。この範囲は、「Framehawkディスプレイチャネルのポート範囲」と呼ばれるポリシー設定でカスタマイズできます。 クライアントと仮想デスクトップの間の同時接続1つにつき、固有のポートが1つ必要になります。 XenAppサーバーなど、マルチユーザーOS環境では、同時ユーザーセッションを上限までサポートするために、必ず、十分な数のポートを定義します。 VDIデスクトップのようなシングルユーザーOSでは、UDPポートを1つ定義すれば十分です。 Framehawkは最初に定義されたポートを使用しようとし、範囲内で指定された最後のポートまで進みます。 これは、NetScaler Gatewayを通過する場合と、StoreFrontサーバーへの直接内部接続の両方に当てはまります。

リモートアクセスの場合は、NetScaler Gatewayを必ず展開してください。 デフォルトでは、NetScalerは、クライアントCitrix ReceiverとGatewayの間での暗号化通信のためにUDPポート443を使用します。 双方向通信を確実に行うためには、外側のファイアウォールすべてで、このポートを開いておく必要があります。 この機能はDatagram Transport Layer Security(DTLS)と呼ばれます。

注:Framehawk/DTLS接続は、FIPSアプライアンスではサポートされません。

暗号化されたFramehawk接続は、NetScaler Gateway Version 11.0.62およびNetScaler Unified Gateway Version 11.0.64.34からサポートされています。 

Framehawk仮想チャネルを実装する前に、以下のベストプラクティスを検討してください。

  • セキュリティ管理者に問い合わせ、Framehawk用に定義されたUDPポートがファイアウォールで開かれていることを確認してください。 インストール中にファイアウォールが自動的に構成されることはありません。
  • 多くの場合、NetScaler Gatewayは、DMZにインストールされ、外側だけでなく内側もファイアウォールで守られます。 デフォルトのポート範囲を使用している環境では、外側のファイアウォールではUDPポート443、内側ではUDPポート3224~3324が開いていることを確認してください。

構成

注意:Citrixは、大きなパケット損失が発生しているユーザーについてのみ、Framehawkを有効化することを推奨します。 また、Framehawkを、サイト内にあるすべてのオブジェクトのユニバーサルポリシーとすることは推奨しません。

Framehawk仮想チャネルはデフォルトでは無効になっています。  この機能を有効にすると、ユーザーのグラフィックスおよび入力に対して、サーバーでFramehawk仮想チャネルの使用が試みられます。 何らかの理由で前提条件が満たされていない場合、接続はデフォルトモード(Thinwire)で確立されます。

Framehawkに影響を与えるポリシー設定は以下のとおりです。

  • Framehawkディスプレイチャネル:この機能を有効または無効にします。
  • Framehawkディスプレイチャネルのポート範囲:VDAがユーザーデバイスとFramehawkディスプレイチャネルデータの交換に使用するUDPポート番号の範囲(最小ポート番号から最大ポート番号まで)を指定します。 VDAは、各ポートの使用を試行します。まず、最小のポート番号から始めて、2回目以降の試行では1つずつ番号を増やしていきます。 ポートは、受信トラフィックと送信トラフィックに使用されます。

Framehawkディスプレイチャネル用のポートの開放

リリース7.8では、VDAインストーラーの機能手順でファイアウォールを再構成する新たなオプションが使用できるようになりました。 このチェックボックスをオンにすると、WindowsのファイアウォールでUDPポート3224~3324が開放されます。 以下の場合は、手動でファイアウォールを構成する必要があることに留意してください。

  • ネットワークファイアウォールの場合
  • デフォルトのポート範囲がカスタマイズされている場合

これらのUDPポートを開放するには、[Framehawk]チェックボックスをオンにします。

localized image

コマンドラインで/ENABLE_FRAMEHAWK_PORTを使用して、Framehawk仮想チャネル用にUDPポートを開放することもできます。

localized image

FramehawkのUDPポートの割り当ての確認

インストール中に、Framehawk仮想チャネルに割り当てられたUDPポートを、以下のように[ファイアウォール]画面で確認できます。

localized image

[概要]画面には、Framehawk仮想チャネル機能が有効になっているかどうかが表示されます。 

localized image

FramehawkでのNetScaler Gatewayのサポート

暗号化されたFramehawkトラフィックは、NetScaler Gateway 11.0.62.10以降、およびNetScaler Unified Gateway 11.0.64.34以降でサポートされています。

  • NetScaler Gatewayは、エンドユーザーのデバイスから直接、Gateway VPN vServerにアクセスできる展開アーキテクチャーを参照します。つまり、VPN vServerには、パブリックIPアドレスが割り当てられていて、ユーザーはこのIPディレクトリに接続します。
  • Unified Gatewayを伴うNetScalerとは、Gateway VPN vServerがターゲットとしてContent Switching vServer(CS)にバインドされた展開を言います。 この展開では、CS vServerはパブリックIPを、Gateway VPN vServerはダミーのIPを持ちます。

NetScaler GatewayでFramehawkのサポートを可能にするには、Gateway VPN vServerレベルでDTLSパラメーターを有効化する必要があります。 このパラメーターを有効化し、XenAppまたはXenDesktopでコンポーネントが正常に更新されると、Gateway VPN vServerとユーザーデバイスの間で、Framehawkのオーディオ、ビデオ、およびインタラクティブなトラフィックが暗号化されるようになります。 

Framehawkでサポートされるのは、NetScaler Gateway、およびNetScaler GatewayとGlobal Server Load Balancingの組合せです。

Framehawkでは、次のシナリオはサポートされません。

  • HDX Insight
  • IPv6モードのNetScaler Gateway
  • NetScaler Gateway Double Hop
  • NetScaler Gateway上の複数のSecure Ticket Authority(STA)
  • 高可用性(HA)機能付きNetScaler Gateway
  • クラスターセットアップ付きNetScaler Gateway
シナリオFramehawkのサポート
NetScaler Gatewayはい
NetScaler+グローバルサーバー負荷分散 はい
Unified Gatewayを伴うNetScaler

はい

注:バージョン11.0.64.34以降のUnified Gatewayがサポートされます。

HDX Insightいいえ
IPv6モードのNetScaler Gatewayいいえ
NetScaler Gateway Double Hopいいえ
NetScaler Gateway上の複数のSecure Ticket Authority(STA)いいえ
高可用性(HA)機能付きNetScaler Gatewayいいえ
クラスターセットアップ付きNetScaler Gatewayいいえ

FramehawkをサポートするようにNetScalerを構成する

NetScaler GatewayでFramehawkのサポートを可能にするには、Gateway VPN vServerレベルでDTLSパラメーターを有効化する必要があります。 このパラメーターを有効化し、XenAppまたはXenDesktopでコンポーネントが正常に更新されると、Gateway VPN vServerとユーザーデバイスの間で、Framehawkのオーディオ、ビデオ、およびインタラクティブなトラフィックが暗号化されるようになります。 

リモートアクセスのために、NetScaler GatewayでUDP暗号化を実現するには、この構成が必須です。 

FramehawkをサポートするようにNetScalerを構成する場合は

  • 外側のファイアウォールすべてでUDPポート443が開いていることを確認します
  • NetScalerと、XenAppおよびXenDesktopサーバー間にある内部のファイアウォールのすべてで、Common Gateway Protocolポート(デフォルトでは2598)が開放されていることを確認します。
  • VPN仮想サーバーの設定でDTLSを有効化します
  • SSL証明書とキーのペアのバインドを解除して再びバインドします。これは、NetScalerバージョン11.0.64.34以降をお使いの場合は行う必要がないことに注意してください。

FramehawkをサポートするようにNetScaler Gatewayを構成するには、以下の手順を実行します。

  1. StoreFrontと通信し、XenAppおよびXenDesktopのユーザーを認証するように、NetScaler Gatewayを展開し、構成します。
  2. NetScalerの[構成]タブで、[NetScaler Gateway]を展開し、[仮想サーバー]を選択します。
  3. [編集]をクリックして、VPN仮想サーバーの[基本設定]を表示し、DTLS設定の状態を確認します。
  4. その他の構成オプションを表示するには、[詳細]をクリックします。
  5. Framehawkなどのデータグラムプロトコルを通信セキュリティで保護するには、[DTLS]を選択します。 [OK]をクリックします。 VPN仮想サーバーの[基本設定]領域には、DTLSフラグが[真]に設定されています。 
  6. サーバー証明書の[バインド]画面を再度開き、証明書のキーペアをバインドするために、[+]をクリックします。
  7. 前述の証明書のキーペアを選択し、[選択]をクリックします。
  8. サーバー証明書のバインドに変更を保存します。
  9. 保存後、この証明書のキーペアが表示されます。 [バインド]をクリックします。
  10. 「No usable ciphers configured on the SSL vserver/service」という警告メッセージが表示されたら、無視してください。

旧バージョンのNetScaler Gatewayにおける追加手順

11.0.64.34より古いバージョンのNetScaler Gatewayを使用している場合は、以下の手順に従います。

  1. サーバー証明書の[バインド]画面を再度開き、証明書キーペアをバインドするために、[+]をクリックします。
  2. 前述の証明書キーペアを選択し、[選択]をクリックします。
  3. サーバー証明書のバインドに変更を保存します。
  4. 保存後、この証明書のキーペアが表示されます。 [バインド]をクリックします。
  5. 「No usable ciphers configured on the SSL vserver/service」という警告メッセージが表示されたら、無視してください。

FramehawkをサポートするようにUnified Gateway設定を構成するには:

  1. Unified Gatewayがインストールされ、適切に構成されていることを確認します。 詳しくは、製品ドキュメントサイトでUnified Gatewayの情報を参照してください。 
  2. ターゲットVserverとしてCS vserverにバインドされているVPN vServerで、DTLSパラメーターを有効にします。

ほかのVPN製品のサポート

NetScaler Gatewayは、Framehawkで必要なUDP暗号化をサポートする唯一のSSL VPN製品です。 ほかのSSL VPNや誤ったバージョンのNetScaler Gatewayが使用された場合、Framehawkポリシーの適用に失敗する可能性があります。 従来型のIPSec VPN製品では、変更を加えなくともFramehawkがサポートされます。

FramehawkをサポートするようにCitrix Receiver for iOSを構成する

FramehawkをサポートするようにCitrix Receiver for iOSを構成するには、default.icaを手作業で編集する必要があります。

  1. StoreFrontサーバーで、c:\inetpub\wwwroot\にある自分のストアのApp_Dataディレクトリにアクセスします。
  2. default.icaファイルを開き、[WFClient]セクションに「Framehawk=On」という行を追加します。
  3. 変更を保存します。

これにより、iOSデバイス上の互換性のあるCitrix ReceiverからFramehawkセッションを確立できるようになります。 Receiver for Windowsを使用している場合、この手順は必要ありません。

データベースのモニター

Citrix DirectorからFramehawkの利用状況とパフォーマンスをモニターすることができます。 HDX仮想チャネル詳細ビューには、あらゆるセッションで、Framehawk仮想チャネルのトラブルシューティングやモニターに役立つ情報が表示されます。 Framehawk関連のメトリックスを確認するには、[グラフィック - Framehawk]を選択します。

Framehawk接続が確立されていれば、詳細ページにProvider = VD3DConnected = Trueが表示されます。 仮想チャネルの状況がアイドルであるのは正常です。これは、モニターの対象がシグナリングチャネルで、これは最初のハンドシェイク中にしか使用されないからです。 このページには、接続に関するその他の有益な統計も表示されます。

問題が発生した場合は、Framehawkのトラブルシューティングブログを参照してください。