MuRATソリューションは、シンクライアント技術として米国NComputing社の技術を採用しています。
それぞれの詳細については以下をご覧下さい。
※本ページの内容をまとめたドキュメントがダウンロードセンターから取得頂けます。こちらをクリックして下さい。
ターミナルサービスソフトウェアはホストPC上にインストールされるソフトウェアで、後述の端末用システム・オン・チップ半導体と連動することでシンクライアント環境を構築します。
ターミナルサービスソフトウェアはWindows及びLinuxの上で動作し、ホストPC上のデスクトップ画面を端末用システム・オン・チップ半導体に転送することで、シンクライアント環境を実現しています。Windows及びLinux上でのターミナルサービスソフトウェアの実装や挙動は異なりますが、クライアント側には単一の端末用システム・オン・チップ半導体があればWindowsもしくはLinux上で稼働するターミナルサービスソフトウェアの両方に接続することが出来ます。
LAN環境向けWindows版ターミナルサービスソフトウェアの概要を以下に図示します。下図中の黄色に着色された部分が該当します。
LAN環境向けWindows版ターミナルサービスソフトウェアの根幹は、NComputing社製仮想化デバイスドライバにあります。グラフィックスデバイス及びサウンドデバイスを仮想化することで、複数のユーザが同時に1つのホストPCを利用することが可能となります。
LAN環境向けLinux版ターミナルサービスソフトウェアの概要を以下に図示します。下図中の黄色に着色された部分が該当します。
LAN環境向けLinux版ターミナルサービスソフトウェアの根幹は、NComputing社製プロトコル変換サーバ、ターミナルサーバ、及び仮想化カーネルモジュールにあります。Linuxはネットワーク透過型グラフィックスシステムであるX Window Systemを標準搭載しており、グラフィックスアプリケーションは全てXクライアントとして動作します。その為、Xクライアントから受信した画面描画要求を元に描画した画面データを端末用システム・オン・チップ半導体に送信することで、シンクライアントとしての動作が実現されています。なお、サウンドデバイスに関してはWindows版と同様にデバイスドライバレベルでの仮想化が行われており、サウンドドライバはダイナミックローダブルカーネルモジュールとして提供されます。
端末用システム・オン・チップ半導体は、主として以下の処理を行っています。
※端末用システム・オン・チップ半導体は、アルテラ社のCyclone FPGAをベースにしています。今後、端末用システム・オン・チップ半導体の仕様には変更が加わる可能性があります。
端末用システム・オン・チップ半導体は、ホストPCから受信した画面データを展開し、接続されたビデオメモリに描画データを作成し、アナログ画像データとして出力します。ホストPCから受信する画面データは画面全体のデータではなく、再描画が必要な箇所を含むセグメントのデータのみです。また、端末用システム・オン・チップ半導体のサポートする画像データ出力は、VGA出力のみです。
端末用システム・オン・チップ半導体は、ホストPCから受信したサウンドデータを展開し、アナログサウンドデータとして出力します。端末用システム・オン・チップ半導体のサポートするサウンドデータ出力は、16ビットサウンドです。また、サウンド出力へはアンプ付きスピーカ(いわゆるアクティブスピーカ)の接続が必要です。
端末用システム・オン・チップ半導体は、入力デバイスインタフェースを通して受信した情報をホストPCへ送信します。端末用システム・オン・チップ半導体がサポートする入力デバイスは、PS/2キーボード、PS/2マウス、及びタッチパネルです。
端末用システム・オン・チップ半導体は、サウンド入力インタフェースを通して受信した情報をホストPCへ送信します。
端末用システム・オン・チップ半導体は、疑似USBインタフェースを通して接続されたUSB機器とホストPCとの間で仮想的なUSBバスチャネルを構築し、チャネル内でのデータ送受信を行います。現在の疑似USBインタフェースは完全なUSBプロトコルスタックを実装していないため、公式にはUSBフラッシュメモリのみをサポートしますが、サポートされたデバイスに対しては入出力共に可能です。
シンクライアントプロトコルには、NComputing社が独自開発したUXP (User eXtension Protocol) を利用しています。
UXPはRDPに似たプロトコルですが、画面描画データとサウンド出力データの同期、データ圧縮率の向上と帯域消費量の削減、等の点でRDPよりも優れたプロトコルです。ホストPC側の画面描画データを観察し、変更された箇所のビットマップデータを圧縮して転送する、という点ではRDPに似ていますが、画面描画データが比較的高速に変化する領域を検出した場合はより良い方法での圧縮を行います。この際には、Motion JPEGに似た技術を用いた圧縮を行います。