説明

サーバ装置、情報処理方法

【課題】無線ネットワークを利用してファイルの処理を行うシステムにおいて、クライアント端末とサーバ装置の間の通信の切断の有無に関わらずファイルの処理の継続を可能とするサーバ装置、情報処理方法を提供すること。
【解決手段】クライアント端末10とサーバ装置20の間の通信が切断されることが予測されるときに、サーバ装置20から事前にサーバ装置20内のファイルのデータ(第1データ)がクライアント端末10へ送信される。通信切断中は、クライアント端末10は第1データを参照して自らファイル処理を行う。通信が復旧すると、クライアント端末10は第1データの処理後のデータである第2データをサーバ装置20へ送信し、サーバ装置20は、受信した第2データを第1データと差し替える処理を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、クライアント端末及びサーバ装置を備えたシステムに関し、例えば、シンクライアント(Thin Client)システムに関する。
【背景技術】
【0002】
近年、情報の漏洩を防止する等のセキュリティ向上のために、ネットワークを介して相互に接続されるサーバ装置と複数のクライアント端末を含むシンクライアントシステムが普及している。シンクライアントシステムを実現する方式としては、ネットワークブート方式とサーバベース方式が代表的である。
【0003】
ネットワークブート方式では、サーバ装置側にOS(Operating System)イメージを置き、クライアント端末はネットワーク経由でサーバ装置上のOSをブートする。この方式では、クライアント端末はアプリケーションプログラムを備えており、OSをブートした後にアプリケーションを起動・実行する。クライアント端末は、アプリケーションの実行によって処理されたファイルのデータを通常のファイル転送方法によってネットワーク経由でサーバ装置へ転送する。ネットワークブート方式では、アプリケーションの処理をクライアント端末側で行うためアプリケーションの互換性の点で利点である。その一方で、ネットワークブート方式では、OSイメージおよびファイルのデータ転送がネットワーク上で行われるため、ネットワークの負荷およびネットワーク上の情報漏洩の点で不利である。
【0004】
サーバベース方式では、サーバ装置がアプリケーションの実行などすべての処理を行う。この方式では、クライアント端末は、自端末に接続された各種入力デバイス(例えば、キーボードやマウス)による入力情報をサーバ装置へ送信し、サーバ装置は、受信した入力情報を基にアプリケーション上でファイルの処理を実行し、実行結果としての画面情報(画像)をクライアント端末へ送信する。つまりこの方式では、クライアント端末は、遠隔操作端末としての役割のみを担う。この方式によれば、ネットワーク上のデータ転送量がネットワークブート方式よりも低下し、ネットワークの負荷およびネットワーク上の情報漏洩の点でネットワークブート方式よりも有利である。
【0005】
なお、サーバ装置とクライアント端末を無線ネットワークを介して接続させてシンクライアントを構築することは公知である。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2009−246758号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
上述したサーバベース方式のシンクライアントシステムは、ネットワークの負荷およびネットワーク上の情報漏洩の点で有利であるが、無線ネットワークを利用してシステムを構築した場合、無線通信品質が劣化する場所ではサーバ装置とクライアント端末の間の通信が困難となる。そのため、無線通信品質が劣化する場所ではファイルの処理の継続が困難となる。したがって、無線ネットワークを利用してシンクライアントシステムを構築した場合には、無線通信品質の如何に関わらず、ファイルの処理の継続を可能とするための何らかの方策が求められる。
【0008】
よって、本発明の1つの側面では、無線ネットワークを利用してファイルの処理を行うシンクライアントシステムにおいて、クライアント端末とサーバ装置の間の通信の切断の有無に関わらずファイルの処理の継続を可能とするサーバ装置、情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【0009】
第1の観点は、クライアント端末からの入力情報に基づいてファイルに対する情報処理を実行するシステムにおけるサーバ装置である。
このサーバ装置は、
地理上の所定の領域ごとの通信品質を含む通信品質情報を記憶する記憶部と、
無線通信によってクライアント端末から、前記入力情報と、クライアント端末の位置情報と、クライアント端末の経路情報とを受信する受信部と、
前記入力情報に基づいて前記ファイルに関する処理を実行するとともに、クライアント端末の前記位置情報および前記通信品質情報に基づいて、前記経路情報が示す経路上のクライアント端末との間の無線通信品質を予測する処理を実行するプロセッサと、
前記プロセッサによる処理結果に基づいてクライアント端末で表示すべき画像を無線通信によってクライアント端末へ送信する送信部と、
を備え、
前記プロセッサは、クライアント端末との通信が切断されることが予測されるときには、前記ファイルの少なくとも一部である第1データをクライアント端末へ送信し、クライアント端末との通信が復旧した後に、通信切断中における第1データの処理後のデータである第2データをクライアント端末から受信し、受信した第2データを第1データと差し替える処理を行うことを特徴とする。
【0010】
第2の観点は、クライアント端末と、該クライアント端末からの入力情報に基づいてファイルに対する情報処理を実行するサーバ装置と、を含むシステムにおける情報処理方法である。
この情報処理方法は、
クライアント端末は、無線通信によってサーバ装置へ、前記入力情報と、クライアント端末の位置情報と、クライアント端末の経路情報とを送信し、
サーバ装置は、前記入力情報に基づいて前記ファイルに関する処理を実行し、該処理の結果に基づいてクライアント端末で表示すべき画像を無線通信によってクライアント端末へ送信し、
サーバ装置は、地理上の所定の領域ごとの通信品質を含む通信品質情報を参照し、該通信品質情報とクライアント端末の前記位置情報とに基づいて、前記経路情報が示す経路上のクライアント端末との間の無線通信品質を予測し、
サーバ装置は、クライアント端末との通信が切断されることが予測されるときには、前記ファイルの少なくとも一部である第1データをクライアント端末へ送信し、
クライアント端末は、サーバ装置との通信が復旧した後に、通信切断中における第1データの処理後のデータである第2データをサーバ装置へ送信し、
サーバ装置は、クライアント装置から受信した第2データを前記第1データと差し替える処理を行うことを含む。
【発明の効果】
【0011】
開示のサーバ装置、情報処理方法によれば、無線ネットワークを利用してファイルの処理を行うシステムにおいて、クライアント端末とサーバ装置の間の通信の切断の有無に関わらずファイルの処理の継続が可能となる。
【図面の簡単な説明】
【0012】
【図1】第1の実施形態のシンクライアントシステムの概略構成を示す図。
【図2】第1の実施形態のクライアント端末とサーバ装置のハードウエア構成を示すブロック図。
【図3】第1の実施形態のクライアント端末の機能を示す機能ブロック図。
【図4】第1の実施形態のクライアント端末が記憶するデータを示す図。
【図5】第1の実施形態のサーバ装置の機能を示す機能ブロック図。
【図6】第1の実施形態のサーバ装置が記憶するデータを示す図。
【図7】第1の実施形態のクライアント端末が保持する通信品質情報を概念的に示す図。
【図8】第1の実施形態において、クライアント端末の経路とサーバ装置が保持する通信品質情報との関連付けの一例を概念的に示す図。
【図9】第1の実施形態のシンクライアントシステムにおけるクライアント端末とサーバ装置の全体的な処理フローを示すフロー図。
【図10】第1の実施形態のシンクライアントシステムにおけるクライアント端末とサーバ装置の間の通信が切断されるときのフロー図。
【図11】第2の実施形態のサーバ装置の機能を示す機能ブロック図。
【図12】第2の実施形態においてサーバ装置がクライアント端末へ送信するファイルのデータの一例を示す図。
【図13】第2の実施形態においてサーバ装置がクライアント端末へ送信するファイルのデータの一例を示す図。
【図14】第2の実施形態のシンクライアントシステムにおけるクライアント端末とサーバ装置の間の通信が切断されるときのフロー図。
【発明を実施するための形態】
【0013】
(1)第1の実施形態
(1−1)シンクライアントシステム
図1は、本実施形態のシンクライアントシステムの概略構成を示す図である。図1に示すシンクライアントシステムは好ましくはサーバベース方式のシステムである。クライアント端末10とサーバ装置20は、無線アクセスネットワークとインターネットなどの通信網NWを介して通信可能に接続されている。クライアント端末10は例えばユーザが移動中に操作する携帯端末であり、携帯電話機、PDA(Personal Digital Assistant)、ラップトップ型パーソナルコンピュータ等である。図1に示すように、クライアント端末10は、GPS(Global Positioning System)衛星からGPS信号を受信しており、このGPS信号を基に自端末の位置情報を得ている。サーバ装置20は、複数のクライアント端末10に対してシンクライアントサービスを提供する。
【0014】
以下の説明では、サーバ装置20がクライアント端末10に対して提供するシンクライアントサービスとして、サーバ装置20がアプリケーションプログラムを実行する(アプリケーションを実行する)ことによって特定のファイルに対する処理を行うサービスを想定する。
【0015】
(1−2)クライアント端末とサーバ装置のハードウエア構成
次に、クライアント端末10とサーバ装置20のハードウエア構成について、図2を参照して説明する。図2は、クライアント端末10とサーバ装置20のハードウエア構成を示すブロック図である。
【0016】
図2に示すように、クライアント端末10は、CPU(Central Processing Unit)11、RAM(Random Access Memory)12、ROM(Read Only Memory)13、通信インタフェース14、HDD(Hard Disk Drive)15、入力デバイス16、表示デバイス17、および、GPS受信機18を備える。クライアント端末10内の各部は制御バスおよび/またはデータバスによって接続されている。
CPU11は、クライアント端末10内の入出力制御、信号処理、各部に対する制御を行う。CPU11は、クライアント端末10の起動とともにROM13に記憶されているOS(Operating System)及び各種プログラムをRAM12上に展開して実行する。RAM12は、CPU11のメインメモリである。RAM12は、CPU11が実行するプログラムやCPU11が参照するデータを一時的に格納するための揮発性記憶装置である。
通信インタフェース14は、通信網NWを介して送受信する無線信号の処理(例えば、直交変換処理、変調・復調処理、符号化・復号処理を含む)、サーバ装置20との間の通信プロトコルの処理を行う。HDD15は、データを記憶するための不揮発性記憶装置である。
入力デバイス16は、キーボードやマウスなどユーザの操作入力を受け入れるデバイスを総称しており、ユーザの操作入力に応じた入力情報を生成してCPU11へ送る。表示デバイス17は、LCD(Liquid Crystal Display)等の表示パネルと表示駆動回路を含み、CPU11から与えられる画像データに基づいて画像を表示パネルに表示する。
GPS受信機は、GPS衛星からGPS信号を受信し、受信したGPS信号に基づいて自端末の位置情報を算出する。
【0017】
図2に示すように、サーバ装置20は、CPU21、RAM22、ROM23、通信インタフェース24、および、HDD25を備える。サーバ装置20内の各部は制御バスおよび/またはデータバスによって接続されている。
CPU21は、サーバ装置20内の入出力制御、信号処理、各部に対する制御を行う。CPU21は、サーバ装置20の起動とともにROM23に記憶されているOS及び各種プログラムをRAM22上に展開して実行する。RAM22は、CPU21のメインメモリである。RAM22は、CPU21が実行するプログラムやCPU21が参照するデータを一時的に格納するための揮発性記憶装置である。
通信インタフェース24は、通信網NWを介して送受信する無線信号の処理(例えば、直交変換処理、変調・復調処理、符号化・復号処理を含む)、クライアント端末10との間の通信プロトコルの処理を行う。HDD25は、データを記憶するための不揮発性記憶装置である。
【0018】
(1−3)クライアント端末とサーバ装置の機能ブロック
次に、クライアント端末10とサーバ装置20の機能ブロックについて、図3〜8を参照して説明する。図3は、主としてCPU11によって実現されるクライアント端末10の機能を示す機能ブロック図である。図4は、クライアント端末10のHDD15が記憶するデータを示す図である。図5は、主としてCPU21によって実現されるサーバ装置20の機能を示す機能ブロック図である。図6は、サーバ装置20のHDD25が記憶するデータを示す図である。図7は、クライアント端末20のHDD25が保持する通信品質情報を概念的に示す図である。図8は、クライアント端末10の経路とサーバ装置20が保持する通信品質情報との関連付けの一例を概念的に示す図である。
【0019】
クライアント端末10とサーバ装置20の通信が確立されているときの本実施形態のシンクライアントシステムのサービス形態は以下のとおりである。
クライアント端末10のユーザがキーボードやマウスを操作すると、入力デバイス16が入力情報を生成し、この入力情報がサーバ装置20へ送信される。サーバ装置20は、アプリケーションの対象となるファイルを保持(記憶)している。サーバ装置20はアプリケーションを起動・実行しており、クライアント端末10から受信した入力情報を解釈して、アプリケーション上でファイルに対する処理を実行する。サーバ装置20は、ファイルに対する処理結果によって、クライアント端末10に表示すべき画像を変化させることを決定した場合には、その画像のデータ(画像データ)をクライアント端末10へ送信する。クライアント端末10は、サーバ装置20から受信した画像データを基に表示デバイス17に画像を表示させる。
【0020】
上記サービス形態は、クライアント端末10とサーバ装置20との間の通信が確立されている場合であるが、両者の通信が切断された場合には、本実施形態のシンクライアントシステムではその切断期間においてもサービスを継続すべく以下の処理を行う。
クライアント端末10は、自端末の経路情報をサーバ装置20へ送信する。サーバ装置20は、地理上の所定の領域ごとの通信品質を含む通信品質情報を記憶している。クライアント端末10は逐次、自端末の位置情報をサーバ装置20へ送信する。そこで、サーバ装置20は、クライアント端末10の位置情報および通信品質情報に基づいて、クライアント端末10から受信した経路情報が示す経路上のクライアント端末10との間の無線通信品質を逐次予測する。その結果、サーバ装置20は、クライアント端末10との間の通信が切断されることが予測されるときには、通信が切断される前に、処理対象のファイルの少なくとも一部であるデータ(第1データ)をクライアント端末へ送信する。通信が切断されている間は、クライアント端末10は、アプリケーションを起動し、受信した第1データに対する処理を行う。通信が復旧すると、クライアント端末10は、通信切断中における第1データの処理後のデータである第2データをサーバ装置20へ送信する。サーバ装置20は、受信した第2データを、自装置で記憶しているファイル中の第1データと差し替える処理を行う。以上の処理によって、クライアント端末10とサーバ装置20の間の通信の切断の前後におけるファイル処理の継続が可能となる。
【0021】
図3を参照すると、クライアント端末10の機能ブロック群100は、ファイル処理部101、表示処理部102、参照ファイル切替部103、経路算出部104および送信データ生成部105の各機能ブロックを含む。これらの機能ブロックは、その一部あるいはすべてをCPU11によって実行されるプログラムのモジュールとして記述されていてもよい。
【0022】
ファイル処理部101は、クライアント端末10とサーバ装置20との通信が確立されているときには、自らアプリケーションを実行することなく、入力デバイス16からの入力情報を送信データ生成部105へ渡す。
【0023】
ファイル処理部101は、クライアント端末10とサーバ装置20との通信が切断されるときには、その切断の前にサーバ装置20から送信されるファイルデータ(第1データ)を、ローカルファイルとしてHDD15に格納する。さらにファイル処理部101は、サーバ装置20との通信が切断されている間は、自らアプリケーションを起動し、HDD15内のローカルファイルに対する処理を行う。ファイル処理部101は、ローカルファイルに対する処理の結果、表示デバイス17に表示すべき画像を変化させる場合には、その画像のデータである画像データを表示処理部102へ送る。ファイル処理部101は、サーバ装置20との通信が復旧すると、第1データの処理結果である第2データを送信データ生成部105へ渡す。
なお、参照ファイル切替部103は、サーバ装置20から受信する切替情報に基づき、ファイル処理部101に対し、クライアント端末10とサーバ装置20との通信が切断されているときの処理を行うことを指示する。参照ファイル切替部103による指示に応じてファイル処理部101は、HDD15内のローカルファイルを処理対象のファイルとして参照する。
【0024】
表示処理部102は、クライアント端末10とサーバ装置20との通信が確立されているときには、通信インタフェース14を介してサーバ装置20から受信した画像データに基づいて表示デバイス17に対する表示処理を行う。表示処理部102は、クライアント端末10とサーバ装置20との通信が切断されるときには、ファイル処理部101から送られる画像データに基づいて表示デバイス17に対する表示処理を行う。
【0025】
経路算出部104は、GPS受信機18から逐次送出される位置情報に基づいて経路探索プログラムを実行して、経路情報を生成する。経路情報は、緯度、経度の2次元マップ上の現在位置から目標位置までの経路の情報である。経路探索プログラムは例えば、HDD15内の地図データを参照し、現在位置から、ユーザによって入力デバイス16に入力された目標位置までの最短経路を探索するものであってよい。経路算出部104は、生成した経路情報を送信データ生成部105へ渡す。
【0026】
送信データ生成部105は、ファイル処理部101から送出される入力情報やファイルデータ(第2データ)、経路算出部104から送られる経路情報、GPS受信機18から逐次送出される位置情報のうち少なくともいずれかを含む、サーバ装置20宛の送信データを生成し、その送信データを通信インタフェース14へ送る。
【0027】
図5を参照すると、サーバ装置20の機能ブロック群200は、ファイル処理部201、画像処理部202、通信品質予測部203および送信データ生成部204の各機能ブロックを含む。これらの機能ブロックは、その一部あるいはすべてをCPU21によって実行されるプログラムのモジュールとして記述されていてもよい
【0028】
ファイル処理部201は、クライアント端末10とサーバ装置20との通信が確立されているときには、クライアント端末10から逐次受信する入力情報を基に自らアプリケーションを実行してHDD25に記憶しているファイル(以下、サーバ装置20が保持しているファイルを「マスタファイル」という。)の処理を行う。ファイル処理部201は、マスタファイルに対する処理の結果を画像処理部202に通知する。画像処理部202は、ファイル処理部201によるマスタファイルに対する処理の結果、クライアント端末10に表示すべき画像を変化させる場合には、その画像のデータ(画像データ)を送信データ生成部204へ送る。
【0029】
ファイル処理部201は、クライアント端末10とサーバ装置20との通信が切断されることが予測されたときにはその切断の前に、マスタファイルの少なくとも一部であるファイルデータ(第1データ)を送信データ生成部204へ送る。この第1データは送信データとして通信インタフェース24へ送られ、クライアント端末10へ送信される。なお、ファイル処理部201は、第1データの生成に当たっては、通信品質予測部203から受ける切替情報をトリガとする。
【0030】
第1データは、切断が予測された時点におけるファイル内の処理中の位置(例えば、入力情報を基に検出されるユーザのファイルの作業中の位置)の前後のマスタファイル中のデータ、あるいはその位置よりも後のマスタファイル中のデータであることが好ましい。また、第1データのデータ量は、例えばユーザが予め指定しておく等して任意に設定してよいが、通信が切断される平均的な長さの時間内でユーザが処理しうるデータ量を予め決めておき、そのデータ量にマージンを加えた値としてもよい。第1データとして、例えば処理対象のファイルが文書ファイルである場合には、現在の作業中の位置の前後数ページ分のデータ、あるいは文書ファイルの全データであってよい。
【0031】
通信品質予測部203は、クライアント端末10から受信した位置情報および経路情報をキーとしてHDD25内の通信品質情報を参照することで、経路情報が示す経路上のクライアント端末10との間の無線通信品質を予測する。HDD25内の通信品質情報は、地理上の所定の領域ごとの無線通信品質を含む情報であり、その一例が概念的に図7に図示してある。図7では、クライアント端末10の移動が想定される地理上の範囲(特定の緯度および経度の範囲)を所定の領域ごとに区分した場合の各領域の無線品質情報として、例えばSINR(signal to noise plus interference power ratio;信号対干渉雑音比)が6段階で示されている。つまり、0(最も通信環境が悪い)から5(最も通信環境が良い)までの6段階のレベルのSINRが所定の領域ごとに通信品質情報として示されている。このような特定の地理上の範囲における通信品質情報は、予め統計情報としてサーバ装置20のHDD25に格納されている。例えば、クライアント端末10が携帯電話機である場合には、その通信事業者が管理する基地局は、携帯電話機の位置に応じた基地局と携帯電話機との間の上りおよび下りの通信品質を収集し統計処理することが可能であり、そのように統計処理した情報を、通信品質情報としてサーバ装置20のHDD25に予め格納しておくようにすればよい。
【0032】
通信品質予測部203は、クライアント端末10から受信した経路情報が示す経路と、HDD25内の通信品質情報との関連付けを行うことで、クライアント端末10の現在位置を基準として、クライアント端末10との間の通信が近い将来に切断されるかを判断する。例えば図8に示した例では、クライアント端末10から送信される経路情報と位置情報を基にした、クライアント端末10の現在位置と目標位置の間の経路と、その経路上の所定の領域ごとの通信品質情報(6段階のSINRのレベル)とが示されている。ここで、クライアント端末10の経路上に例えばトンネル等の無線通信環境が悪い区間(例えばSINRのレベルが1以下の区間)が存在した場合には、通信品質予測部203は、図8に示すように、現在位置を基準とした通信切断区間を特定することができる。そして、通信品質予測部203は、現在位置と通信切断区間の開始位置との間の距離が所定の閾値以下となったときに、クライアント端末10とサーバ装置20の通信が近い将来に切断されると判断してよい。
【0033】
通信品質予測部203は、クライアント端末10とサーバ装置20の通信が近い将来に切断されると判断した場合には切替情報を生成し、この切替情報をファイル処理部201および送信データ生成部204へ送信する。
【0034】
送信データ生成部204は、画像処理部202から送られる画像データ、ファイル処理部201から送られるファイルデータ(第2データ)、通信品質予測部203から送られる切替情報のうち少なくともいずれかを含む、クライアント端末10宛の送信データを生成し、その送信データを通信インタフェース24へ送る。
【0035】
(1−4)クライアント端末とサーバ装置の処理フロー
次に、本実施形態のクライアント端末10とサーバ装置20の処理フローについて、図9および図10を参照して説明する。図9は、クライアント端末10とサーバ装置20の全体的な処理フローを示すフロー図である。図10は、クライアント端末10とサーバ装置20の間の通信が切断されるときのフロー図である。
【0036】
図9のフローの初期段階では、クライアント端末10とサーバ装置20の通信が確立されていることを想定する。このとき、サーバ装置20は、クライアント端末10との間の通信の切断が予測されるか否か(つまり、近い将来通信の切断がされるか否か)を判定する(ステップS10)。このときサーバ装置20において、通信品質予測部203は、クライアント端末10から受信した位置情報および経路情報をキーとしてHDD25内の通信品質情報を参照することで、経路情報が示す経路上のクライアント端末10との間の無線通信品質を予測する。その結果、サーバ装置20は、クライアント端末10との間の通信が近い将来、切断されると判断したときには、通信切断時の処理(ステップS20;図10に詳細を示す。)を行う。
【0037】
クライアント端末10とサーバ装置20の間の通信環境が継続的に良好であるときには、ステップS10の後、ステップS30以降の処理を行う。
先ず、クライアント端末10のユーザがキーボードやマウスを操作すると、クライアント端末10では、入力デバイス16が入力情報を生成し、この入力情報がサーバ装置20へ送信される(ステップS30)。サーバ装置20では、クライアント端末10から入力情報を受信すると、アプリケーションを実行してHDD25に記憶しているマスタファイルの処理を行うとともに(ステップS40)、クライアント端末10に表示すべき画像を変化させる場合には、画像データをクライアント端末10へ送る(ステップS60)。ステップS40〜S60の処理は、サーバ装置20内では以下のように行われる。すなわち、ファイル処理部201がアプリケーションを実行してHDD25に記憶しているマスタファイルの処理を行い、マスタファイルに対する処理の結果を画像処理部202に通知し、画像処理部202が画像データを送信データ生成部204へ送る。そして、送信データ生成部204は、送信データとしての画像データを通信インタフェース24へ送出する。
クライアント端末10は、サーバ装置20から画像データを受信すると、その画像データに基づいて画像を表示デバイス17に表示する。
【0038】
以上のように、クライアント端末10とサーバ装置20の間の通信環境が継続的に良好である間は、クライアント端末10からサーバ装置20への入力情報の送信と、サーバ装置20からクライアント端末10への画像データの送信とが行われる。これにより、サーバ装置20からクライアント端末10に対してファイルの処理に関するシンクライアントサービスが提供される。なお、クライアント端末10とサーバ装置20の間の通信環境が継続的に良好であるときには、処理対象のファイルはサーバ装置20側に在るマスタファイルである。
【0039】
一方、通信切断時の処理(図9のステップS20)の詳細は、図10に示すとおりである。図9のステップS10でクライアント端末10とサーバ装置20の通信が近い将来に切断されると通信品質予測部203が判断した場合には、切替情報がファイル処理部201へ送信される。ファイル処理部201は切替情報の受信をトリガとして、クライアント端末10へ送信すべき第1データを決定する(ステップS210)。第1データは例えば、図9のステップS10の判断時点におけるファイル内の処理中の位置(現在の作業中の位置)の前後数ページ分のデータ、あるいは文書ファイルの全データであってよい。
【0040】
サーバ装置20は次に、切替情報と第1データ(ファイルデータ)をクライアント端末10へ送信する(ステップS220)。切替情報を受信するとクライアント端末10では、参照ファイル切替部103がファイル処理部101に対し、クライアント端末10とサーバ装置20との通信が切断されているときの処理を行うことを指示する。また、ファイル処理部101は、サーバ装置20から送信された第1データをローカルファイルとしてHDD15に格納する(ステップS230)。参照ファイル切替部103による指示によって、ファイル処理部101はアプリケーションを起動し実行するが(ステップS240)、ファイルの処理に当たってはHDD15内のローカルファイルを参照して行う。
【0041】
その後、サーバ装置20との間の通信が復旧すると(ステップS250:YES)、クライアント端末10は、通信が切断されていた期間におけるファイル処理後のローカルファイルのデータ(第2データ)をサーバ装置20へ送信する(ステップS260)。
サーバ装置20は、クライアント端末10からローカルファイルのデータ(第2データ)を受信すると、受信したローカルファイルのデータ(第2データ)をマスタファイル内の第1データと差し替える処理を行う。つまり、サーバ装置20のファイル処理部201は、受信した第2データを、自装置で記憶しているマスタファイル中の第1データ(ステップS220で送信したファイルデータ)と差し替える処理を行う。これにより、クライアント端末10とサーバ装置20の通信が切断されている期間においてクライアント端末10でなされたファイルの処理がマスタファイルに反映されることになる。なお、クライアント端末10は、セキュリティの観点から、クライアント端末10のHDD15内のローカルファイルを、ステップS260の後に削除することが好ましい(ステップS280)。
通信切断時の処理が完了すると、図9のステップS30以降の処理(つまり、通信が確立されているときの処理)が行われる。
【0042】
以上説明したように、本実施形態のシンクライアントシステムによれば、クライアント端末10とサーバ装置20の間の通信が切断されることが予測されるときに、サーバ装置20から事前にサーバ装置20内のファイルのデータ(第1データ)がクライアント端末10へ送信される。通信切断中は、クライアント端末10は第1データを参照して自らファイル処理を行う。通信が復旧すると、クライアント端末10は第1データの処理後のデータである第2データをサーバ装置20へ送信し、サーバ装置20は、受信した第2データを第1データと差し替える処理を行う。よって、クライアント端末10とサーバ装置20の間の通信が切断される前後においてファイルの処理の継続が可能となる。
【0043】
(2)第2の実施形態
以下、第2の実施形態について説明する。
クライアント端末10とサーバ装置20の通信が切断されると予測されるときにサーバ装置20からクライアント端末10へ送信されるファイルのデータ(第1データ)のデータ量は、通信リソースを効率的に使用する観点からは少ない方が好ましい。一方、第1データのデータ量が少なすぎると、通信が切断されている期間にクライアント端末10においてユーザ所望のファイル処理ができない場合があり実用上問題となる。そこで、第2の実施形態では、通信が切断されている期間にクライアント端末10でのファイル処理に支障を来たさず、かつ、通信リソースを効率的に使用することを可能とするように、第1データのデータ量を算出する。
【0044】
(2−1)サーバ装置の機能ブロック
先ず、本実施形態のサーバ装置20の機能ブロックについて、図11を参照して説明する。図11は、主としてCPU21によって実現されるサーバ装置20の機能を示す機能ブロック図である。図11に示す機能ブロック図は、図5に示したものと比較して、データ処理速度算出部205、移動速度算出部206およびデータ量算出部207が追加された点で異なる。なお、本実施形態のシンクライアントシステムにおいて、クライアント端末10の機能ブロック図は、図3に示したものと同一でよい。
【0045】
データ処理速度算出部205は、クライアント端末10とサーバ装置20の通信が確立されているときにファイル処理部201で処理される単位時間当たりのマスタファイルのデータ量を計測することでデータ処理速度を算出する。データ処理速度はクライアント端末10ごとに異なるため、データ処理速度の算出はクライアント端末10単位で行う。データ処理速度の算出タイミングは任意に決定してよい。データ処理速度算出部205は、算出したデータ処理速度をデータ量算出部207へ送る。
【0046】
移動速度算出部206は、クライアント端末10から逐次送信される位置情報を基に、クライアント端末10の移動速度を算出する。移動速度を算出するには、異なる時刻に受信した少なくとも2つの位置情報があればよい。クライアント端末10の移動速度が逐次変更しうるため、移動速度算出部206は、所定の時間間隔でクライアント端末10の移動速度を算出し、その都度算出した移動速度をデータ量算出部207へ送る。
【0047】
通信品質予測部203は、HDD25内の通信品質情報を参照して、クライアント端末10から受信する経路情報が示す経路上、通信が切断される区間(図8に示す通信切断区間)を特定し、この特定した通信切断区間の情報をデータ量算出部207へ送る。なお、通信品質予測部203が通信切断区間の情報をデータ量算出部207へ送るタイミングは、クライアント端末10との間の通信が近い将来に切断されると判断したときである。
【0048】
データ量算出部207は、データ処理速度、クライアント端末10の移動速度、および、通信切断区間に基づいて、ファイル処理部201から送信データ生成部204へ送信されるファイルデータ(第1データ)のデータ量を算出する。このデータ量の算出はクライアント端末10との間の通信が近い将来に切断される場合に行われるが、通信品質予測部203から通信切断区間の情報を受信したことをトリガとしてよい。
ここで、データ処理速度をSDT、クライアント端末10の移動速度をSCL、通信切断区間の距離をL、とすると、通信切断中にクライアント端末10で処理されうるデータ量D(推定値)は、以下の式1で求めることができる。
【0049】
D=(L/SCL)×SDT …(式1)
【0050】
データ量算出部207は、式1で求めたデータ量Dに対して所定量のマージンを加えた値を第1データのデータ量として算出してよい。データ量算出部207は、算出した第1データのデータ量をファイル処理部201へ通知する。
本実施形態では、ファイル処理部201は、データ量算出部207からデータ量が通知されたことを、第1データを生成するに当たってのトリガとする。ファイル処理部201によって生成される第1データは、マスタファイル内の処理中の位置(例えば、入力情報を基に検出されるユーザのファイルの作業中の位置)の前後のファイル中のデータ、あるいはその位置よりも後のファイル中のデータでよいが、そのデータ量をデータ量算出部207から通知されたデータ量と同一とする。
【0051】
図12および図13に、サーバ装置20がクライアント端末10へ送信するマスタファイル内の第1データの一例を示す。この例では、処理対象となるファイルがテキストと画像からなる文書データである場合を想定している。各図において、(a)はマスタファイルのデータ例、(b)はクライアント端末10へ送信する第1データ(ファイルデータ)のデータ例、をそれぞれ示している。図12の例では、ファイル処理部201が第1データを送信するトリガが生じた時点でのマスタファイル内の処理中の位置を「x」で表している。この場合、(b)に示すように、データ量算出部207から通知されるデータ量に応じて「x」の前後2行分のデータが第1データとなりうる。
一方、図13では、マスタファイル(文書データ)の中に画像が含まれている場合が想定されている。この場合、クライアント端末10側で画像が処理対象とならない場合には、第1データの中には画像を含まないようにする(例えば、画像の領域をスペースとする)ことが好ましい。第1データの中に画像を含まないようにすることで、クライアント端末10で処理対象となるデータ(例えばテキストデータ)の量を実質的に増やすことができる。
【0052】
(2−2)クライアント端末とサーバ装置の処理フロー
次に、本実施形態のクライアント端末10とサーバ装置20の処理フローについて、図14を参照して説明する。図14は、クライアント端末10とサーバ装置20の間の通信が切断されるときのフロー図である。なお、本実施形態においてクライアント端末10とサーバ装置20の全体的な処理フローは、図9に示したものと同一である。
【0053】
図14のフロー図は、図10に示したものと比較すると、ステップS220よりも前の処理(すなわち、ステップS202〜S210)が異なる。
サーバ装置20では、クライアント端末10とサーバ装置20の通信が近い将来に切断されると通信品質予測部203が判断した場合には、ステップS202〜S208の処理を順次行う。具体的には、データ処理速度算出部205は、ファイル処理部201で処理される単位時間当たりのマスタファイルのデータ量を計測することでデータ処理速度を算出する(ステップS202)。次に、移動速度算出部206は、クライアント端末10から逐次送信される位置情報を基に、クライアント端末10の移動速度を算出する(ステップS204)。さらに、通信品質予測部203は、HDD25内の通信品質情報を参照して、クライアント端末10から受信する経路情報が示す経路上の通信切断区間を特定する(ステップS206)。データ量算出部207は、算出されたデータ処理速度、クライアント端末10の移動速度、および、通信切断区間に基づいて、クライアント端末10へ送信すべき第1データのデータ量を算出する(ステップS208)。ファイル処理部201は、ステップS208で算出されたデータ量を基に、マスタファイル内における第1データを決定する(ステップS210)。この第1データは例えば、マスタファイル内の処理中の位置の前後のマスタファイル中のデータであってよい。
【0054】
以上説明したように、本実施形態のシンクライアントシステムでは、クライアント端末10の移動速度、データ処理速度および通信切断区間の長さを考慮し、通信が切断されたときにクライアント端末10で処理されうるデータ量を決定する。そのため、通信切断前にサーバ装置20からクライアント端末10へ送信されるファイルデータ(第1データ)を、通信が切断されている期間にクライアント端末10でのファイル処理に支障を来たさず、かつ、通信リソースを効率的に使用することを可能とするようなデータとすることができる。
【0055】
以上、本発明の実施形態について詳細に説明したが、本発明のサーバ装置、情報処理方法は上記実施形態に限定されず、本発明の主旨を逸脱しない範囲において、種々の改良や変更をしてもよいのは勿論である。
【0056】
以上の各実施形態に関し、さらに以下の付記を開示する。
【0057】
(付記1)
クライアント端末からの入力情報に基づいてファイルに対する情報処理を実行するシステムにおけるサーバ装置であって、
地理上の所定の領域ごとの通信品質を含む通信品質情報を記憶する記憶部と、
無線通信によってクライアント端末から、前記入力情報と、クライアント端末の位置情報と、クライアント端末の経路情報とを受信する受信部と、
前記入力情報に基づいて前記ファイルに関する処理を実行するとともに、クライアント端末の前記位置情報および前記通信品質情報に基づいて、前記経路情報が示す経路上のクライアント端末との間の無線通信品質を予測する処理を実行するプロセッサと、
前記プロセッサによる処理結果に基づいてクライアント端末で表示すべき画像を無線通信によってクライアント端末へ送信する送信部と、
を備え、
前記プロセッサは、クライアント端末との通信が切断されることが予測されるときには、前記ファイルの少なくとも一部である第1データをクライアント端末へ送信し、クライアント端末との通信が復旧した後に、通信切断中における第1データの処理後のデータである第2データをクライアント端末から受信し、受信した第2データを第1データと差し替える処理を行うことを特徴とする、
サーバ装置。
【0058】
(付記2)
前記プロセッサは、
前記経路上の無線通信品質に基づいて、該経路上でクライアント端末との通信が切断される区間を特定し、
前記プロッセによって単位時間当たりに処理される前記ファイルのデータ量であるデータ処理速度を算出し、
異なる時刻に受信した少なくとも2つの前記位置情報に基づいて、クライアント端末の移動速度を算出し、
前記区間の距離と前記データ処理速度と前記移動速度とに基づいて、クライアント端末との通信が切断される間に処理されるデータ量の推定値を算出し、該推定値から前記第1データのデータ量を決定する、処理を実行する
付記1に記載されたサーバ装置。
【0059】
(付記3)
サーバ装置によるファイルの情報処理のために該ファイルに対する入力情報をサーバ装置宛に送信する、シンクライアントシステムにおけるクライアント端末であって、
無線通信によってサーバ装置へ入力情報を送信する送信部と、
表示すべき画像を無線通信によってサーバ装置から受信する受信部と、
前記ファイルの少なくとも一部である第1データをサーバ装置から受信すると、前記入力情報を基に前記第1データを処理し、該処理結果に基づいて表示すべき画像を生成するファイル処理部と、
を備え、
前記ファイル処理部は、サーバ装置との通信が復旧した後に、通信切断中における前記ファイル処理部による前記第1データの処理後のデータである第2データをサーバ装置宛に送信し、前記第1データおよび/または前記第2データを自端末から削除することを特徴とする、
クライアント端末。
【0060】
(付記4)
クライアント端末と、該クライアント端末からの入力情報に基づいてファイルに対する情報処理を実行するサーバ装置と、を含むシステムにおける情報処理方法であって、
クライアント端末は、無線通信によってサーバ装置へ、前記入力情報と、クライアント端末の位置情報と、クライアント端末の経路情報とを送信し、
サーバ装置は、前記入力情報に基づいて前記ファイルに関する処理を実行し、該処理の結果に基づいてクライアント端末で表示すべき画像を無線通信によってクライアント端末へ送信し、
サーバ装置は、地理上の所定の領域ごとの通信品質を含む通信品質情報を参照し、該通信品質情報とクライアント端末の前記位置情報とに基づいて、前記経路情報が示す経路上のクライアント端末との間の無線通信品質を予測し、
サーバ装置は、クライアント端末との通信が切断されることが予測されるときには、前記ファイルの少なくとも一部である第1データをクライアント端末へ送信し、
クライアント端末は、サーバ装置との通信が復旧した後に、通信切断中における第1データの処理後のデータである第2データをサーバ装置へ送信し、
サーバ装置は、クライアント装置から受信した第2データを前記第1データと差し替える処理を行う、
ことを含む、情報処理方法。
【0061】
(付記5)
前記経路上の無線通信品質に基づいて、該経路上でクライアント端末との通信が切断される区間を特定し、
単位時間当たりに処理される前記ファイルのデータ量であるデータ処理速度を算出し、
異なる時刻に受信した少なくとも2つの前記位置情報に基づいて、クライアント端末の移動速度を算出し、
前記区間の距離と前記データ処理速度と前記移動速度とに基づいて、クライアント端末との通信が切断される間に処理されるデータ量の推定値を算出し、該推定値から前記第1データのデータ量を決定する、
ことを含む、付記4に記載された情報処理方法。
【符号の説明】
【0062】
10…クライアント端末
11…CPU
12…RAM
13…ROM
14…通信インタフェース
15…HDD
16…入力デバイス
17…表示デバイス
18…GPS受信機
101…ファイル処理部
102…表示処理部
103…参照ファイル切替部
104…経路算出部
105…送信データ生成部
20…クライアント端末
21…CPU
22…RAM
23…ROM
24…通信インタフェース
25…HDD
201…ファイル処理部
202…画像処理部
203…通信品質予測部
204…送信データ生成部
205…データ処理速度算出部
206…移動速度算出部
207…データ量算出部

【特許請求の範囲】
【請求項1】
クライアント端末からの入力情報に基づいてファイルに対する情報処理を実行するシステムにおけるサーバ装置であって、
地理上の所定の領域ごとの通信品質を含む通信品質情報を記憶する記憶部と、
無線通信によってクライアント端末から、前記入力情報と、クライアント端末の位置情報と、クライアント端末の経路情報とを受信する受信部と、
前記入力情報に基づいて前記ファイルに関する処理を実行するとともに、クライアント端末の前記位置情報および前記通信品質情報に基づいて、前記経路情報が示す経路上のクライアント端末との間の無線通信品質を予測する処理を実行するプロセッサと、
前記プロセッサによる処理結果に基づいてクライアント端末で表示すべき画像を無線通信によってクライアント端末へ送信する送信部と、
を備え、
前記プロセッサは、クライアント端末との通信が切断されることが予測されるときには、前記ファイルの少なくとも一部である第1データをクライアント端末へ送信し、クライアント端末との通信が復旧した後に、通信切断中における第1データの処理後のデータである第2データをクライアント端末から受信し、受信した第2データを第1データと差し替える処理を行うことを特徴とする、
サーバ装置。
【請求項2】
前記プロセッサは、
前記経路上の無線通信品質に基づいて、該経路上でクライアント端末との通信が切断される区間を特定し、
前記プロッセによって単位時間当たりに処理される前記ファイルのデータ量であるデータ処理速度を算出し、
異なる時刻に受信した少なくとも2つの前記位置情報に基づいて、クライアント端末の移動速度を算出し、
前記区間の距離と前記データ処理速度と前記移動速度とに基づいて、クライアント端末との通信が切断される間に処理されるデータ量の推定値を算出し、該推定値から前記第1データのデータ量を決定する、処理を実行する
請求項1に記載されたサーバ装置。
【請求項3】
クライアント端末と、該クライアント端末からの入力情報に基づいてファイルに対する情報処理を実行するサーバ装置と、を含むシステムにおける情報処理方法であって、
クライアント端末は、無線通信によってサーバ装置へ、前記入力情報と、クライアント端末の位置情報と、クライアント端末の経路情報とを送信し、
サーバ装置は、前記入力情報に基づいて前記ファイルに関する処理を実行し、該処理の結果に基づいてクライアント端末で表示すべき画像を無線通信によってクライアント端末へ送信し、
サーバ装置は、地理上の所定の領域ごとの通信品質を含む通信品質情報を参照し、該通信品質情報とクライアント端末の前記位置情報とに基づいて、前記経路情報が示す経路上のクライアント端末との間の無線通信品質を予測し、
サーバ装置は、クライアント端末との通信が切断されることが予測されるときには、前記ファイルの少なくとも一部である第1データをクライアント端末へ送信し、
クライアント端末は、サーバ装置との通信が復旧した後に、通信切断中における第1データの処理後のデータである第2データをサーバ装置へ送信し、
サーバ装置は、クライアント装置から受信した第2データを前記第1データと差し替える処理を行う、
ことを含む、情報処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2012−221230(P2012−221230A)
【公開日】平成24年11月12日(2012.11.12)
【国際特許分類】
【出願番号】特願2011−86518(P2011−86518)
【出願日】平成23年4月8日(2011.4.8)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】