(57)【要約】【課題】ネットワークの通信速度に応じて、リアルタイムに遠隔操作可能なクライアントを提供する。【解決手段】クライアント装置は、入力機器から入力されたイベントを送信することによってサーバ装置を遠隔操作するクライアント装置であって、マウスポインタの座標移動を示すイベントを検出するマウス移動イベント検出手段が、送信すべきイベントが蓄積されるイベントキューから、複数のマウスポインタの座標移動を示すイベントを検出した場合に、送信すべきマウスポインタの座標移動を示すイベントを削除するイベント制御手段を備えることを特徴とする。【選択図】図２
2011076282.tif 000002
【特許請求の範囲】
【請求項１】
入力機器から入力された情報を示すイベントを送信することによってサーバ装置を遠隔操作するクライアント装置であって、
マウスポインタの座標移動を示すイベントを検出するマウス移動イベント検出手段が、送信すべきイベントが蓄積されるイベントキューから、複数のマウスポインタの座標移動を示すイベントを検出した場合に、
送信すべきマウスポインタの座標移動を示すイベントを削除するイベント制御手段を備えることを特徴とするクライアント装置。
【請求項２】
前記複数のマウスポインタの座標移動を示すイベントは、前記イベントキューにおいて、少なくとも３つの連続して蓄積されているマウスポインタの座標移動を示すイベントであることを特徴とする請求項１に記載のクライアント装置。
【請求項３】
前記イベント制御手段は、前記複数のマウスポインタの座標移動を示すイベントのうち、先頭のイベントと最後尾のイベントとを除いたイベントを、前記イベントキューから削除することを特徴とする請求項１または請求項２に記載のクライアント装置。
【請求項４】
入力機器から入力された情報を示すイベントを送信することによってサーバ装置を遠隔操作するクライアント装置の遠隔操作制御方法であって、
マウスポインタの座標移動を示すイベントを検出させるマウス移動イベント検出ステップが、送信すべきイベントが蓄積されるイベントキューから、複数のマウスポインタの座標移動を示すイベントを検出した場合に、
送信すべきマウスポインタの座標移動を示すイベントを削除させるイベント制御ステップを備えることを特徴とする遠隔操作制御方法。
【請求項５】
前記複数のマウスポインタの座標移動を示すイベントは、前記イベントキューにおいて、少なくとも３つの連続して蓄積されているマウスポインタの座標移動を示すイベントであることを特徴とする請求項４に記載の遠隔操作制御方法。
【請求項６】
前記イベント制御ステップは、前記複数のマウスポインタの座標移動を示すイベントのうち、先頭のイベントと最後尾のイベントとを除いたイベントを、前記イベントキューから削除させることを特徴とすることを請求項４または請求項５に記載の遠隔操作制御方法。
【請求項７】
入力機器から入力された情報を示すイベントを送信することによってサーバ装置を遠隔操作するクライアント装置の遠隔操作制御プログラムであって、
マウスポインタの座標移動を示すイベントを検出させるマウス移動イベント検出ステップが、送信すべきイベントが蓄積されるイベントキューから、複数のマウスポインタの座標移動を示すイベントを検出した場合に、
送信すべきマウスポインタの座標移動を示すイベントを削除させるイベント制御ステップを備えることを特徴とする遠隔操作制御プログラム。
【請求項８】
前記複数のマウスポインタの座標移動を示すイベントは、前記イベントキューにおいて、少なくとも３つの連続して蓄積されているマウスポインタの座標移動を示すイベントであることを特徴とする請求項７に記載の遠隔操作制御プログラム。
【請求項９】
前記イベント制御ステップは、前記複数のマウスポインタの座標移動を示すイベントのうち、先頭のイベントと最後尾のイベントとを除いたイベントを、前記イベントキューから削除させることを特徴とする請求項７または請求項８に記載の遠隔操作制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して、サーバをリアルタイムで遠隔操作するクライアントに関する。
【背景技術】
【０００２】
無線通信サービスの普及により、ユーザーが、外出先等からクライアントを操作して、自宅のサーバやパーソナルコンピュータにアクセスすることが可能となっている。
【０００３】
より具体的には、自宅のサーバが、サーバの表示画面のデータを、クライアントにネットワークを介して送出する。一方、クライアントからは、ユーザーによる、マウス操作やキーボード入力の情報を含むデータをサーバに送出する。ユーザーによるマウス操作等の情報を含むデータを受信したサーバは、当該操作に対応する処理を実行し、その実行結果を表示画面に反映させる。このような処理を行うことで、ユーザーは、クライアントからサーバを遠隔操作することが可能である。
【０００４】
ところで、上述のようなサーバの遠隔操作を行う場合には、リアルタイムな操作性が重要となる。しかしながら、マウスの移動情報を含むデータのように、頻繁にネットワークに送出されるデータの場合、ネットワークの状態に依存し、データがサーバに到達する時間の遅延が発生することで、リアルタイムな操作性が損なわれる場合がある。
【０００５】
なお、特許文献１には、クライアントのマウスポインタの移動速度が一定以上の場合に、サーバへのマウスイベントの送信を省略するクライアントが開示されている。
【０００６】
【特許文献１】特開２００７−２７２７７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところで、上述のように、サーバをクライアントから遠隔操作するような利用形態では、ユーザーがマウスを移動させる操作を行う場合には、マウスの移動情報を含むデータが、クライアントから送出される。送出されるマウスの移動情報を含むデータは、一旦は、クライアント側の送出キューに蓄積されてから、順番にネットワークに送出される。
【０００８】
ここで、送出キューに蓄積されたデータがネットワークに送出される速度と、マウス操作等の情報を含むデータが送出キューに蓄積されていく速度とが同じであれば、送出キューに蓄積されるデータ量は、一定に保たれる。さらに、ネットワークに送出される速度の方が、送出キューに蓄積されていく速度よりも速ければ、送出キューに蓄積されるデータ量は減少していく。
【０００９】
一方、通信速度が十分に確保されていない場合、送出キューに蓄積されたデータがネットワークに送出される速度の方が、マウス操作等の情報を含むデータが蓄積されていく速度よりも遅くなる可能性があり、送出キューに蓄積されるデータは増加していく。
【００１０】
そして、送出キューに蓄積されるデータは、先に蓄積されたデータから順番にネットワークに送出されていくため、送出キーに蓄積されるデータが増加していくことで、後から蓄積されていくマウス操作等の情報を含むデータがネットワークに送出されるまでの時間は増加する。
【００１１】
こうして、送出キーに蓄積されるデータが、ネットワークに送出されるまでの時間が増加すると、当該データがサーバに届く時間（サーバが当該データを受信する時間）も増加する。サーバが当該データを受信するまでの時間が増加すれば、サーバが、当該データに対応する処理を実行するまでの時間も増加するため、リアルタイムな操作性が損なわれるという問題が発生する。
【００１２】
さらに、送出キューには一定のデータ量までのデータを蓄積可能であるが、蓄積されるデータが増加していくと、送出されるべきマウス操作等の情報を含むデータが、蓄積可能なデータ量を超過することでデータが失われ（オーバーフローし）、サーバにマウス操作等の情報を含むデータが送信されないという問題も発生し得る。
【００１３】
特許文献１に開示されているクライアントでは、マウスポインタの移動速度が一定以上の場合においてはマウスイベントの送信を省略するが、ネットワークの通信速度については一切考慮されていない。つまり、ネットワークの通信速度とは無関係に、マウスポインタの移動速度に応じて、イベントの送信を省略してしまうことがある。
【００１４】
しかしながら、ネットワークの通信速度が十分に確保されている場合には、マウスイベントを省略せずに送出することで、マウスポインタの移動をなめらかに表示させ、リアルタイムな操作感をユーザーに提供することが望ましい。
【００１５】
なぜならば、通信速度が十分に確保されている場合には、マウスイベントは遅滞なくネットワークに送出されていくので、送出キューに蓄積されるマウスイベントの数が増加することもない。従って、マウスイベントの送信を省略する必要がない。
【００１６】
そこで、本発明は、ネットワークの通信速度に応じて、リアルタイムに遠隔操作可能なクライアントを提供することを目的とする。
【課題を解決するための手段】
【００１７】
本発明の第１のクライアント装置は、入力機器から入力された情報を示すイベントを送信することによってサーバ装置を遠隔操作するクライアント装置であって、マウスポインタの座標移動を示すイベントを検出するマウス移動イベント検出手段が、送信すべきイベントが蓄積されるイベントキューから、複数のマウスポインタの座標移動を示すイベントを検出した場合に、送信すべきマウスポインタの座標移動を示すイベントを削除するイベント制御手段を備えることを特徴とする。
【００１８】
本発明の第２のクライアント装置は、前記複数のマウスポインタの座標移動を示すイベントは、前記イベントキューにおいて、少なくとも３つの連続して蓄積されているマウスポインタの座標移動を示すイベントであることを特徴とする。
【００１９】
本発明の第３のクライアント装置は、前記イベント制御手段は、前記複数のマウスポインタの座標移動を示すイベントのうち、先頭のイベントと最後尾のイベントとを除いたイベントを、前記イベントキューから削除することを特徴とする。
【００２０】
本発明の第１の遠隔操作制御方法は、入力機器から入力された情報を示すイベントを送信することによってサーバ装置を遠隔操作するクライアント装置の遠隔操作制御方法であって、マウスポインタの座標移動を示すイベントを検出させるマウス移動イベント検出ステップが、送信すべきイベントが蓄積されるイベントキューから、複数のマウスポインタの座標移動を示すイベントを検出した場合に、送信すべきマウスポインタの座標移動を示すイベントを削除させるイベント制御ステップを備えることを特徴とする。
【００２１】
本発明の第２の遠隔操作制御方法は、前記複数のマウスポインタの座標移動を示すイベントは、前記イベントキューにおいて、少なくとも３つの連続して蓄積されているマウスポインタの座標移動を示すイベントであることを特徴とする。
【００２２】
本発明の第３の遠隔操作制御方法は、前記イベント制御ステップは、前記複数のマウスポインタの座標移動を示すイベントのうち、先頭のイベントと最後尾のイベントとを除いたイベントを、前記イベントキューから削除させることを特徴とする。
【００２３】
本発明の第１の遠隔操作制御プログラムは、入力機器から入力された情報を示すイベントを送信することによってサーバ装置を遠隔操作するクライアント装置の遠隔操作制御プログラムであって、マウスポインタの座標移動を示すイベントを検出させるマウス移動イベント検出ステップが、送信すべきイベントが蓄積されるイベントキューから、複数のマウスポインタの座標移動を示すイベントを検出した場合に、送信すべきマウスポインタの座標移動を示すイベントを削除させるイベント制御ステップを備えることを特徴とする。
【００２４】
本発明の第２の遠隔操作制御プログラムは、前記複数のマウスポインタの座標移動を示すイベントは、前記イベントキューにおいて、少なくとも３つの連続して蓄積されているマウスポインタの座標移動を示すイベントであることを特徴とする。
【００２５】
本発明の第３の遠隔操作制御プログラムは、前記イベント制御ステップは、前記複数のマウスポインタの座標移動を示すイベントのうち、先頭のイベントと最後尾のイベントとを除いたイベントを、前記イベントキューから削除させることを特徴とする。
【発明の効果】
【００２６】
本発明によれば、ネットワークの通信速度に応じて、リアルタイムに遠隔操作可能なクライアントを提供することができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の実施の形態のサーバ・クライアントシステムを説明するためのブロック図である。
【図２】本発明の実施の形態のサーバ・クライアントシステムの動作を説明するためのフローチャートである。
【図３】本発明の実施の形態におけるイベントキューの一例を説明する図である。
【図４】本発明の実施の形態における連続したマウス移動イベントの一例を説明する図である。
【図５】本発明の実施の形態における連続したマウス移動イベントの一部が削除された場合を説明する図である。
【図６】本発明の異なる実施の形態のサーバ・クライアントシステムの動作を説明するためのフローチャートである。
【発明を実施するための形態】
【００２８】
以下、図面を参照して本発明を実施するための形態について説明する。図１は、本発明の実施の形態のサーバ・クライアントシステムを説明するためのブロック図である。
【００２９】
図１を参照すると、サーバ・クライアントシステムは、サーバ装置１０と、クライアント装置４０と、サーバ装置１０とクライアント装置４０とを接続するネットワーク１０００とからなる。
【００３０】
まず、本発明の実施の形態のサーバ・クライアントシステムの概略を説明すると、クライアント装置４０は、サーバ装置１０に、ネットワーク１０００を介して、イベント信号を送出する。クライアント装置４０に送出するイベント信号がキューとして蓄積され、連続した３個以上のマウス移動を示すイベント信号が存在している場合に、先頭と最後のイベント信号だけを送出対象とする。以下、詳細に説明する。
【００３１】
サーバ装置１０は、制御部２０と記憶部３０とからなる。制御部２０は、記録媒体に格納されたプログラムを読み込んで実行することにより、マウス制御手段２１と、画面生成手段２２と、画面伝送手段２３とを論理的に備える。なお、マウス制御手段２１と、画面生成手段２２と、画面伝送手段２３とは、それぞれ専用のハードウェアで実現されても良い。
【００３２】
クライアント装置４０は、制御部５０と記憶部６０と入力部７０とからなる。制御部５０は、記録媒体に格納されたプログラムを読み込んで実行することにより、イベント監視手段５１と、イベント制御手段５２と、イベント送出手段５３と、画面生成手段５４とを論理的に備える。なお、イベント監視手段５１と、イベント制御手段５２と、イベント送出手段５３と、画面生成手段５４とは、それぞれ専用のハードウェアで実現されても良い。
【００３３】
記憶部６０には、イベントキュー蓄積部６１を備えている。イベントキュー蓄積部６１には、クライアント装置４０からネットワーク１０００に送出される前のイベントが蓄積される。イベントキュー蓄積部６１に蓄積されるイベントは、一旦はイベントキュー蓄積部６１に蓄積されるものの、ネットワーク１０００の帯域が狭いので送出されないといったネットワーク１０００の状態に問題がない限り、随時ネットワーク１０００に送出されていく。
【００３４】
入力部７０は、入力機器（不図示）からの入力情報を取得し、イベントキュー蓄積部６１に入力情報をイベントとして送信する。入力機器は、本発明の実施の形態においては、例えば、マウス、タッチパッド、キーボード、マイク、カメラ等が挙げられる。
【００３５】
ネットワーク１０００は、サーバ装置１０とクライアント装置４０とを接続する通信ネットワークである。ネットワーク１０００は、時間内に送出されるデータ量が変動する。つまり、通信速度が変動することがある。
【００３６】
次に、図２を参照して、本実施の形態の動作について説明する。図２は、本発明の実施の形態の動作を説明するためのフローチャートである。
【００３７】
図２を参照すると、サーバ装置１０とクライアント装置４０とがネットワーク１０００を介して通信可能な状態となると、画面生成手段２２は、サーバ装置１０に接続される表示装置（不図示）に表示されるべき画像を生成する（ステップＳ１０１）。
【００３８】
ステップＳ１０１で画像が生成されると、画面伝送手段２３は、生成された画像のデータを、ネットワーク１０００を介してクライアント装置４０に送出する（ステップＳ１０２）。
【００３９】
なお、このとき、画面伝送手段２３は、生成された画像のデータを暗号化して送出しても良い。また、画像伝送手段２３は、生成された画像のデータを圧縮して送出しても良い。
【００４０】
ステップＳ１０２で送出された画像のデータをクライアント装置４０が受信すると、画面生成手段５４は当該画像を表示装置（不図示）に表示する（Ｓ１０３）。なお、ステップＳ１０２で画像のデータが暗号化されていた場合には、画面生成手段５４は画像のデータを復号化してから、当該画像を表示装置に表示する。また、ステップＳ１０２で画像のデータが圧縮されていた場合には、画面生成手段５４は、画像のデータを伸張してから、当該画像を表示装置に表示する。
【００４１】
ステップＳ１０３で表示装置に画像が表示されると、クライアント装置４０からサーバ装置１０を遠隔操作することが可能な状態となる。この状態になると、イベント監視手段５１は、ユーザーによって、入力部７０に対する操作が行われたか否かを検出する（ステップＳ１０４）。つまり、ユーザーによるマウス操作の有無を検出する。
【００４２】
ステップＳ１０４で、ユーザーによる操作が検出された場合（ステップＳ１０４／ＹＥＳ）、イベント監視手段５１は、イベントキュー蓄積部６１に蓄積されるイベントキューの情報を取得する（ステップＳ１０５）。
【００４３】
ステップＳ１０５において、イベントキューの情報を取得すると、イベント監視手段５１は、イベントキューの情報から、３つ以上の連続したマウス移動イベントが存在するかを検索する（ステップＳ１０６）。なお、本発明の実施の形態では、ステップＳ１０６の処理では、連続したマウス移動イベントを検索することとしているが、連続していなくても、３つ以上のマウス移動イベントを検索することとしても良い。
【００４４】
なお、本発明の実施の形態におけるマウス移動イベントとは、入力機器のうち、マウスやタッチパッドによる、任意の第１の座標の位置から第２の座標の位置までマウスポインタを移動させるアクションが発生したことを示す信号をいう。
【００４５】
また、イベント監視手段５１は、マウスやタッチパッドのボタンが押下された状態でマウスポインタを移動させるアクション（具体的には、ドラッグ操作をいう。）は、マウス移動イベントとしては扱わないこととしても良い。
【００４６】
ステップＳ１０６において、３つ以上の連続したマウス移動イベントが存在している場合（ステップＳ１０６／ＹＥＳ）、イベント制御手段５２は、イベント蓄積部６１に蓄積されているイベントキューから、検出された３つ以上の連続したマウス移動イベントの先頭と最後尾のイベントを除いて、マウス移動イベントをすべて削除する処理を行なう（ステップＳ１０７）。なお、削除対象のマウス移動イベントの選択方法は、上述に限定されず、先頭と最後尾のイベントの間に複数のイベントがある場合には、例えば、マウス移動イベントを１個おきに削除するといった処理をしても良い。
【００４７】
図３は、本発明の実施の形態におけるイベントキューの一例である。図３を参照すると、左列のＩＤ（数字）の小さい順番に古いイベントとなる。従って、ＩＤが「０００１」のイベントから順番に、イベント送出手段５３は、ネットワーク１０００に送出する。さらに図３を参照すると、ＩＤが「０００３」から「０００７」までのイベントが、マウス移動イベントである。従って、本発明の実施の形態においては、ステップＳ１０７の処理では、イベント制御手段５２は、古いイベントから順番に、マウス移動イベントの有無を検索し、３つ以上連続するマウス移動イベントを検出したら、削除処理を行う。図３の例を参照すると、イベント制御手段５２は、ＩＤが「０００４」から「０００６」までのイベントを削除する。
【００４８】
一般に、ネットワーク１０００の通信速度が速ければ、所定の単位時間あたりに、送出されるイベントのデータ量の方が、イベントキュー蓄積部６１に蓄積されるイベントのデータ量よりも大きくなる。したがって、イベントキュー蓄積部６１にイベントが複数のイベントが蓄積されている（溜まっている）ということは、通信速度が遅いということになる。
【００４９】
通信速度が十分であれば、イベントキュー蓄積部６１には、イベントが溜まっていくことはないので、マウス移動イベントを削除するような処理は、必要ない。
【００５０】
しかしながら、通信速度が遅いために、イベントキュー蓄積部６１にイベントが溜まっている状態の場合、マウス移動イベントのように、（ユーザーのマウス操作により）大量に生成されるようなイベントについて、上述のような削除処理を行えば、イベントキュー蓄積部６１に溜まっている状態のイベントの数を減らす効果がある。そして、上述の削除処理によって、溜まっているイベントの数を減らすことができれば、イベントキュー蓄積部６１に蓄積されているイベントが、サーバ装置１０に早く送出されるようになり、リアルタイムな操作性の改善につながる。
【００５１】
ステップＳ１０７で、マウス移動イベントを削除する処理を行なうと、ステップＳ１０５の処理に戻り、３つ以上連続したマウス移動イベントが検出されなくなるまで、ステップＳ１０５からステップＳ１０７までの処理を繰り返す（ステップＳ１０５〜Ｓ１０７）。
【００５２】
なお、ステップＳ１０６において、３つ以上の連続したマウス移動イベントが存在しなくなった場合には（ステップＳ１０６／ＮＯ）、イベント送出手段５３は、イベント蓄積部６１に蓄積されているイベントをネットワーク１０００に送出する（ステップＳ１０８）。
【００５３】
イベント送出手段５３は、ネットワーク１０００の通信速度に応じて、イベントを送出する。つまり、ネットワーク１０００の通信速度が速くなれば、所定の単位時間あたりに送出されるイベントの数が多くなる。すると、イベントキュー蓄積部６１に蓄積されるイベント数は、ネットワーク１０００の通信速度が遅い時よりも減少する。従って、通信速度が速いときには、各イベントは、一旦はイベントキュー蓄積部６１に蓄積されるものの、すぐにネットワーク１０００に送出されていくので、イベントキュー蓄積部６１にはイベントが溜まらない。ネットワーク１０００の速度が速いときには（帯域が十分な状態である）、イベントを削除する処理は不要である。
【００５４】
ステップＳ１０８で、イベントを含むデータが送出されると、サーバ装置１０は当該データを受信し、マウス移動イベントの場合には、マウス制御手段２１が、マウスポインタを当該マウス移動イベントが指定するマウスの座標位置の移動処理を実行する（ステップＳ１０９）。
【００５５】
ステップＳ１０７で、マウス移動イベントが削除されている場合、サーバ装置１０は、先頭のマウス移動イベントと、最後尾のマウスイベントだけを受信しているから、途中のマウス移動イベントの処理は行われない。すなわち、表示画面上では、マウスポインタが瞬間的に移動するように見えることとなる。
【００５６】
図４（ａ）は、連続したマウス移動イベントの一例である。図４（ａ）中の、移動Ａ、移動Ｂ、移動Ｃ、移動Ｄ、移動Ｅは、連続したマウス移動イベントであるとする。マウス移動イベントは、少なくとも、マウスポインタの移動元の座標値と、マウスポインタの移動先の座標値を含んでいる。図４（ａ）中の、座標１は移動元の座標値を示し、座標２は移動先の座標値を示す。すると、図４（ａ）における移動Ａ〜移動Ｅは、それぞれは連続したマウス移動イベントであるから、移動Ｂの座標１は、移動Ａの座標２と同一となる。同様に、移動Ｃの座標１と、移動Ｂの座標２も同一となる。
【００５７】
図４（ｂ）は、図４（ａ）で示した連続したマウス移動イベントによって、マウスポインタが表示画面上を移動する軌跡を表現した図である。
【００５８】
一方、図５（ａ）は、上述のステップＳ１０７の処理によって、マウス移動イベントが削除された場合のマウス移動イベントの例である。図５（ａ）を参照すると、移動Ｂは、イベント制御手段５２によって削除されており、ネットワーク１０００には送出されない。したがって、サーバ装置１０にも移動Ｂのマウス移動イベントは届かない。
【００５９】
図５（ｂ）は、図５（ａ）の例において、連続したマウス移動イベントのうち、移動Ｂのマウス移動イベントが削除された場合の、マウスポインタが表示画面上を移動する軌跡を表現した図である。移動Ｂのマウス移動イベントが削除されたことにより、マウスポインタが、座標（Ｘａ２、Ｙａ２）から、座標（Ｘｂ２、Ｙｂ２）に瞬間的に移動するように見える。
【００６０】
ステップＳ１０９で、マウスポインタの移動処理が実行されると、ステップＳ１０１の処理に戻り、画面生成手段２２がマウスポインタを移動させた画像を生成し（ステップＳ１０１）、画像伝送手段２３が当該画像のデータをクライアント装置４０に送出する（ステップＳ１０２）。以降、同様の処理を繰り返す。
【００６１】
なお、イベント監視手段５１が、イベントキュー蓄積部６１に蓄積されるイベントキューの情報を取得するのは、ユーザーによる操作が検出された場合に限らない。例えば、イベントの送信のタイミングで、イベントキューの情報を取得しても良い。
【００６２】
本発明の異なる実施の形態においては、イベントキューの送信時に、イベント監視手段５１が、イベントキュー蓄積部６１に蓄積されるイベントキューの情報を取得する。
【００６３】
次に、図６を参照して、本発明の異なる実施の形態の動作について説明する。図６は、本発明の実施の形態の動作を説明するためのフローチャートである。
【００６４】
図６を参照すると、サーバ装置１０とクライアント装置４０とがネットワーク１０００を介して通信可能な状態となると、画面生成手段２２は、サーバ装置１０に接続される表示装置（不図示）に表示されるべき画像を生成する（ステップＴ１０１）。
【００６５】
ステップＴ１０１で画像が生成されると、画面伝送手段２３は、生成された画像のデータを、ネットワーク１０００を介してクライアント装置４０に送出する（ステップＴ１０２）。
【００６６】
なお、このとき、画面伝送手段２３は、生成された画像のデータを暗号化して送出しても良い。また、画像伝送手段２３は、生成された画像のデータを圧縮して送出しても良い。
【００６７】
ステップＴ１０２で送出された画像のデータをクライアント装置４０が受信すると、画面生成手段５４は当該画像を表示装置（不図示）に表示する（Ｔ１０３）。なお、ステップＴ１０２で画像のデータが暗号化されていた場合には、画面生成手段５４は画像のデータを復号化してから、当該画像を表示装置に表示する。また、ステップＴ１０２で画像のデータが圧縮されていた場合には、画面生成手段５４は、画像のデータを伸張してから、当該画像を表示装置に表示する。
【００６８】
ステップＴ１０３で表示装置に画像が表示されると、クライアント装置４０からサーバ装置１０を遠隔操作することが可能な状態となる。この状態になると、イベント監視手段５１は、イベント送信要求の有無を検出する（ステップＴ１０４）。
【００６９】
具体的には、イベント送出手段５１は、所定の時間毎にイベントキュー蓄積部６１に蓄積されるイベントキューの送出要求を行う。イベント監視手段５１は、このイベントキューの送出要求の有無を監視する。
【００７０】
ステップＴ１０４で、イベント送信要求が検出された場合（ステップＴ１０４／ＹＥＳ）、イベント監視手段５１は、イベントキュー蓄積部６１に蓄積されるイベントキューの情報を取得する（ステップＴ１０５）。イベントキュー蓄積部６１には、ユーザーによる入力部７０への操作によって、当該操作を示す情報であるイベントが蓄積される。
【００７１】
ステップＴ１０５において、イベントキューの情報を取得すると、イベント監視手段５１は、イベントキューの情報から、３つ以上の連続したマウス移動イベントが存在するかを検索する（ステップＴ１０６）。
【００７２】
なお、本発明の実施の形態におけるマウス移動イベントとは、入力機器のうち、マウスやタッチパッドによる、任意の第１の座標の位置から第２の座標の位置までマウスポインタを移動させるアクションが発生したことを示す信号をいう。
【００７３】
ステップＴ１０６において、３つ以上の連続したマウス移動イベントが存在している場合（ステップＴ１０６／ＹＥＳ）、イベント制御手段５２は、イベント蓄積部６１に蓄積されているイベントキューから、検出された３つ以上の連続したマウス移動イベントの先頭と最後尾のイベントを除いて、マウス移動イベントをすべて削除する処理を行なう（ステップＴ１０７）。なお、削除対象のマウス移動イベントの選択方法は、上述に限定されず、先頭と最後尾のイベントの間に複数のイベントがある場合には、例えば、マウス移動イベントを１個おきに削除するといった処理をしても良い。
【００７４】
ステップＴ１０７で、マウス移動イベントを削除する処理を行なうと、ステップＴ１０５の処理に戻り、３つ以上連続したマウス移動イベントが検出されなくなるまで、ステップＴ１０５からステップＴ１０７までの処理を繰り返す（ステップＴ１０５〜Ｔ１０７）。
【００７５】
なお、ステップＴ１０６において、３つ以上の連続したマウス移動イベントが存在しなくなった場合には（ステップＴ１０６／ＮＯ）、イベント送出手段５３は、イベント蓄積部６１に蓄積されているイベントをネットワーク１０００に送出する（ステップＴ１０８）。
【００７６】
イベント送出手段５３は、ネットワーク１０００の通信速度に応じて、イベントを送出する。つまり、ネットワーク１０００の通信速度が速くなれば、送出されるイベントの数が多くなる。すると、イベント蓄積部６１に蓄積されるイベント数は、ネットワーク１０００の通信速度が遅い時よりも減少する。
【００７７】
ステップＴ１０８で、イベントを含むデータが送出されると、サーバ装置１０は当該データを受信し、マウス移動イベントの場合には、マウス制御手段２１が、マウスポインタを当該マウス移動イベントが指定するマウスの座標位置の移動処理を実行する（ステップＴ１０９）。
【００７８】
ステップＴ１０７で、マウス移動イベントが削除されている場合、サーバ装置１０は、先頭のマウス移動イベントと、最後尾のマウスイベントだけを受信しているから、途中のマウス移動イベントの処理は行われない。すなわち、表示画面上では、マウスポインタが瞬間的に移動するように見えることとなる。
【００７９】
ステップＴ１０９で、マウスポインタの移動処理が実行されると、ステップＴ１０１の処理に戻り、画面生成手段２２がマウスポインタを移動させた画像を生成し（ステップＴ１０１）、画像伝送手段２３が当該画像のデータをクライアント装置４０に送出する（ステップＴ１０２）。以降、同様の処理を繰り返す。
【００８０】
以上のような処理により、ネットワーク１０００の通信速度に応じて、イベントキュー蓄積部６１に格納されているイベントを削減することが可能となり、通信速度に応じたリアルタイムでサーバの遠隔操作が可能となる。
【００８１】
一般的に、ネットワークの通信速度は、上り回線（クライアントからサーバに送出されるデータを通信する回線）と下り回線（サーバからクライアントに送出されるデータを通信する回線）とでは異なっている。
【００８２】
より具体的には、サーバからクライアントに送出するデータ量の方が多いため、下り回線の速度のほうが速く設定されている。特に、無線通信サービスにおいては、ユーザーによるＷｅｂページの閲覧といった利用シーンを主に想定しているため、下り回線と上り回線の速度の差がより顕著となっている。
【００８３】
従って、上り回線の通信速度が十分ではないため、上述のようなマウス移動イベントが、イベントキュー蓄積部６１に溜まってしまうことが多く、遠隔操作のリアルタイム性が損なわれることが多い。
【００８４】
以上の処理は、上り回線の通信速度が十分でない場合に、リアルタイムな遠隔操作が可能となるため、有効である。
【符号の説明】
【００８５】
１０  サーバ装置
２０  制御部
２１  マウス制御手段
２２  画面生成手段
２３  画面伝送手段
３０  記憶部
４０  クライアント装置
５０  制御部
５１  イベント監視手段
５２  イベント制御手段
５３  イベント送出手段
５４  画面生成手段
６０  記憶部
６１  イベントキュー蓄積部
７０  入力部
１０００  ネットワーク
【図１】
2011076282.tif 000003
【図２】
2011076282.tif 000004
【図３】
2011076282.tif 000005
【図４】
2011076282.tif 000006
【図５】
2011076282.tif 000007
【図６】
2011076282.tif 000008