連載
» 2014年03月12日 18時00分 UPDATE

その知識、ホントに正しい? Windowsにまつわる都市伝説(2):RDPとRemoteFXのお話[その2] (1/2)

マイクロソフトが提供するAndroid、iOS、Mac OS X向けのRemote Desktopアプリ。これらが対応しているという「RemoteFX」機能ですが、個人で使うのは無理なのです。では、なぜ無理なのでしょうか?

[山市良,テクニカルライター]

RDP 7.1のRemoteFX、個人利用がムリなワケ

 前回、マイクロソフトが提供するAndroid、iOS、Mac OS X向けの「Microsoft Remote Desktop」アプリは“RDP(Remote Desktop Protocol)7.1互換クライアント”であり、これらのアプリが対応しているという「RemoteFX」機能を個人で使うのは到底無理であると説明しました。なぜ無理なのか、その理由を今回はあらためて解説します。

 Microsoft Remote DesktopアプリがサポートするRemoteFXとは、「RemoteFX仮想GPU」(vGPU)の機能のことです。RemoteFX仮想GPUは、Windows Server 2008 R2 Service Pack(SP)1のHyper-Vおよびリモートデスクトップサービス(RDS)で構築されたVDI(Virtual Desktop Infrastructure:仮想デスクトップインフラストラクチャ)環境でサポートされるGPU(Graphics Processing Unit)の仮想化機能です。

 RemoteFX仮想GPUは、Hyper-V上で実行されるWindows 7 SP1以降の仮想マシンにRemoteFX 3Dビデオアダプターを提供し、RDP 7.1以降のリモートデスクトップセッション内でサーバー側のGPUを使用したMicrosoft SilverlightやAdobe Flashアプリケーション、DirectX 3Dアプリケーションのレンダリングを実現します(画面1)。

画面1 画面1 RemoteFX仮想GPUありのRDP接続(画面手前)とRemoteFX仮想GPUなしのRDP接続(画面奥)。RemoteFX仮想GPUではDirectXの全ての機能を使用可能

 Windows Server 2008 R2 SP1以降のHyper-Vの役割およびRDSのリモートデスクトップ(RD)仮想化ホストの役割は、RemoteFX仮想GPUに対応しています。これは、同一バージョンの無償のMicrosoft Hyper-V Serverでもサポートされる機能です。

 Hyper-Vのサーバーには、RemoteFX仮想GPUの要件を満たすGPUとVRAMを搭載したグラフィックスカード(最新の要件は以下のMSDNのブログを参照)が必要ですし、プロセッサはHyper-Vのシステム要件(Intel VT、AMD-V、ハードウェア強制データ実行防止(DEP))に加え、「SLAT」(Second Level Address Translation:第2レベルアドレス変換機能)をサポートしている必要があります(画面2)。

画面2 画面2 RemoteFX仮想GPUを利用するには、GPUを搭載したHyper-Vサーバーで仮想マシンにRemoteFX 3Dビデオアダプターを割り当てる必要がある

 さらに、Windowsデスクトップの仮想化とリモートデスクトップサービスを利用するためには、追加で「Windowsソフトウェアアシュアランス」(Windows SA)または「Windows Virtual Desktop Access」(Windows VDA)サブスクリプション、およびRDS CAL(クライアントアクセスライセンス)が必要になります。ちなみに、RDS CALが無い状態では120日間の評価モードで動作し、評価モードが終了するとRemoteFX仮想GPUを使用した接続は物理的にできなくなります(接続が拒否されます)(画面3)。

画面3 画面3 RemoteFX 3DビデオアダプターはRDSのRD仮想化ホストの役割が提供するものであるため、120日の評価モードが過ぎると、RemoteFX 3Dビデオアダプターが割り当てられた仮想デスクトップには接続できなくなる

 RemoteFXの個人利用が難しい理由はまだあります。VDIの仮想マシンで稼働するWindowsデスクトップOSが、以下のバージョンおよびエディションに制限されることです(Windows SAまたはWindows VDAがあれば、これらのOSを仮想化環境に導入できます)。

  • Windows 7 Enterprise SP1
  • Windows 7 Ultimate SP1
  • Windows 8 Enterprise
  • Windows 8.1 Enterprise

 RemoteFX仮想GPUを利用できるのは、Windows 7 SP1以降の企業向け最上位エディション(EnterpriseまたはUltimate)に限られるのです。下位エディションにはRemoteFX仮想GPUのドライバーが含まれないため、RemoteFX 3Dビデオアダプターを割り当ててもデバイスを正しく認識させることができません(画面4)。

画面4 画面4 Windows 8.1 Pro仮想マシンにRemoteFX 3Dビデオアダプターを割り当てたところ。デバイスを認識しない。RemoteFX仮想GPUのトラブルでよくあるのがこのパターンだ

 個人であっても、RemoteFX仮想GPUの展開に十分なハードウェアリソースがあれば、Windows OSの評価版やRDSの120日間評価モードを利用して環境を構築することは可能でしょう。しかし、実用にはコストが掛かり過ぎますし、ゲームで利用できないかと考えるのはナンセンスです。これが個人利用は到底無理という理由になります。

RDP 8.0でRemoteFXはテクノロジから“ブランド”へ

 RDP 7.1までのRemoteFXは、細かく言うと他にも、RemoteFX仮想GPUと同時に利用可能になる「RemoteFX USBデバイスリダイレクト」や「リモートデスクトップ(RD)セッションホスト」(旧称、ターミナルサーバー)でも既定で利用できる表示データの圧縮テクノロジがあります。しかし、“RemoteFXに対応”と言えば、主にRemoteFX仮想GPUのことを指していました。

 それが、RDP 8.0を標準搭載したWindows Server 2012およびWindows 8から大きく変わりました。RemoteFXはRemoteFX仮想GPUというテクノロジを示すものから、リモートデスクトップ接続におけるユーザーエクスペリエンス機能全般を示す“ブランド”になったのです。

 RDP 8.0がサポートする機能のうち、RemoteFXを冠に持つテクノロジとしては、次のようなものがあります(画面5)。

  • RemoteFXネットワーク自動検出
  • RemoteFX for WAN
  • RemoteFXメディアリモーティング(RemoteFXメディアストリーミング)
  • RemoteFXアダプティブグラフィックス
  • RemoteFXマルチタッチ
  • RemoteFX USBデバイスリダイレクト
  • RemoteFX仮想GPU
  • RemoteFX Media Redirection API
画面5 画面5 「RemoteFXマルチタッチ」により、タッチデバイスからのリモートデスクトップ接続において接続元のタッチ対応が認識され、タッチ操作が可能になる。Microsoft Remote Desktopアプリもマルチタッチ対応だが、RDP 8.0のRemoteFXマルチタッチとは異なる実装のはず……

 いずれも、ネットワーク帯域を削減しながら、高品質な画面表示やビデオ/音声の再生を実現するテクノロジです。例えば、RemoteFX for WANは、RDPのトランスポートとして、従来のTCP(ポート番号3389)に加え、ネットワークの状況やコンテンツに応じてUDP(ポート番号3389)のマルチストリーム転送を行い、遅延の大きいWAN(Wide Area Network)に対応します。その他の機能とRDP 8.0における性能向上については、以下のホワイトペーパーを参考にしてください。

 RDP 8.0以降では、RemoteFX仮想GPUは数あるRemoteFX機能の中の1つにすぎません。また、VDIに依存するのはRemoteFX仮想GPUとRemoteFX Media Redirection API(主にVDI環境におけるMicrosoft Lyncサポート用)だけで、他のRemoteFX機能は通常のリモートデスクトップ接続、例えば2台のWindows 8.1コンピューター間の接続でも利用することができます。

 なお、RDP 7.1では、RemoteFX USBデバイスリダイレクトはRemoteFX仮想GPUの機能の一部であり、利用するにはRemoteFX 3Dビデオアダプターが必要でした。それがRDP 8.0以降では、接続先のエディションに制約はありますが(次回解説)、RemoteFX仮想GPUとは関係なく利用できるようになりました(画面6)。また、VDIの仮想デスクトップだけでなく、Windows Server 2012以降のRDセッションホストでもサポートされる機能になりました。

画面6 画面6 RDP 8.0以降、RemoteFX USBデバイスリダイレクトはRemoteFX仮想GPUに依存しなくなった。RDセッションホストとの接続でもUSBデバイスのリダイレクトが可能だ

 このように、RDP 7.1時代のRemoteFXとRDP 8.0以降のRemoteFXでは、RemoteFXが意味するところが大きく変わっています。しかしながら、Microsoft Remote Desktopアプリのように、RemoteFX対応といっても、RDP 7.1時代のRemoteFX仮想GPUのことだけを指している場合があるので見極めが必要です。

       1|2 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。