[GGH4.X] GGH4.Xのクライアントドライブ機能によるファイルのコピー速度が,WindowsのファイルコピーやGGW3.2.1のクライアントドライブ機能よりも遅い理由を知りたい.
技術ノート
2015/06/12
[番号]
技術ノート KGTN 2015041501
[現象]
[GGH4.X] GGH4.Xのクライアントドライブ機能によるファイルのコピー速度が,WindowsのファイルコピーやGGW3.2.1のクライアントドライブ機能よりも遅い理由を知りたい.
[説明]
GGの通信プロトコル Rapid-X は,GGを利用する全セッション (全ユーザー) のパフォーマンスが低下しないように,特定のセッションがネットワークの帯域の大部分を使用するようなことが起きない仕組みになっております.クライアントドライブ機能を利用するセッションについても同様で,この仕組みの働きにより (帯域制限の無い) Windowsのファイルコピーよりも時間が掛かることになります.
Windowsで比較的大きなファイルをコピーする場合,ファイルコピーのアニメーションが表示されますが,クライアント側にこのアニメーションの表示するため,サーバ~クライアント間でアニメーションの描画データの転送が発生します. 「コピーするファイルのデータに加え」 この描画データの転送も加わるため,さらにWindowsのファイルコピーに比べ時間が掛かることになります.
GGW3.2.1では,特殊な方法でこのアニメーションの表示を抑止しておりましたが,ファイルサイズやネットワーク状況等により正しくコピー出来ない問題が発生しましたので,安定性を優先して現在のクライアントドライブ機能の仕様になりました.
補 足
GGやRDS (ターミナルサービス) のようなアプリケーション配信を行うソフトウエアの基本的な仕様に起因する制約もあります.このようなソフトウエアでは,ユーザーの操作 (キーボードやマウスのイベント) を直ちにサーバー側に送信し,そして処理結果である画面の更新情報を直ちにクライアント側へ送信する必要があります.これらの処理が少しでも遅くなると,キー入力した文字が直ちに画面に反映しないことになり,アプリケーションの利用が著しく困難になります.
GGやRDSでは,クライアント~サーバー間のユーザー操作や画面の更新情報を直ちに送信するために,出来るだけ少量のデータを高頻度で送るようにしております.このような仕組みの上で大きなファイルの転送を行おうとすると,大きなデータを 「まとめて」 送ることが出来ませんので,結果としてファイルの送受信のパフォーマンスが低下することになります.
つまり大きなファイルを送受信する場合のパフォーマンスの低下は,アプリケーション配信ソフトウエアの基本的なアーキテクチャに起因しており,これを改善するには大きなデータをまとめて処理できるプロトコル (アプリケーション) を利用 (併用) するのが最善の策となります.