(57)【特許請求の範囲】
【請求項１】
クライアント装置に画面情報を送信するサーバ装置内で起こった画面変化を検出する画面変化検出部と、前記画面変化検出部で検出した画面変化のうち規則性がある画面変化を前記クライアント装置へ優先的に送信すべき画面変化として検出する優先送信検出部と、前記優先送信検出部で検出した画面変化を前記クライアント装置へ優先的に送信するよう制御する優先送信制御部と、前記優先送信制御部で制御した送信方法に従って画面変化をクライアント装置へ送信する画面情報送信部とを備えることを特徴とする画面転送装置。
【請求項２】
前記優先送信検出部が検出する画面変化の情報を保持する優先送信画面変化情報保持部と、前記画面変化検出部が検出する画面変化から前記優先送信画面情報保持部にて保持した優先的に送信すべき画面変化の発生可否を監視する優先送信画面変化監視部と、前記優先送信画面変化監視部により監視した結果、優先的に送信すべき画面変化が過去の画面変化から予想される画面上の位置あるいは発生すべきタイミングに発生しなかった場合に前記優先送信画面変化情報保持部により保持した情報に基づきクライアント装置へ送信すべき画面情報を補正する優先送信画面変化補正部とを備えることを特徴とする請求項１に記載の画面転送装置。
【請求項３】
前記優先送信検出部は、前記画面変化検出部で検出した画面変化を学習し、その結果、ある有限時間の間に、同一領域への画面変化が何度も発生することを規則として検出することを特徴とする請求項２または請求項３に記載の画面転送装置。
【請求項４】
前記優先送信検出部は、前記画面変化検出部で検出した画面変化を学習し、その結果、ある有限時間の間に、同一時間間隔での画面変化が何度も発生することを規則として検出することを特徴とする請求項２または請求項３に記載の画面転送装置。
【請求項５】
前記優先送信検出部は、前記画面変化検出部で検出した画面変化を学習し、その結果、ある有限時間の間に、同一種類での画面変化が何度も発生することを規則として検出することを特徴とする請求項２または請求項３に記載の画面転送装置。
【請求項６】
前記優先送信検出部は、前記画面変化検出部で検出した画面変化を学習し、その結果、ある有限時間の間に、同一領域への画面変化が何度も発生すること、同一時間間隔での画面変化が何度も発生すること、同一種類での画面変化が何度も発生することの少なくとも２つ以上の組合せを規則として検出することを特徴とする請求項２または請求項３に記載の画面転送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、画面転送装置に関する。
【背景技術】
【０００２】
従来の画面転送を用いたシンクライアントシステムには、特許文献１に開示されているように、アプリケーションサーバとクライアント端末との間に中継装置を介在させ、この装置内で算出した時間情報を端末側へ通知し、端末側での表示を滑らかにするものがある（例えば、特許文献１参照）。
【０００３】
また、シンクライアントシステムで発生するトラヒックを、キーボード・マウスイベントなどの文字情報に関するデータフローと画面情報に関するデータフローの二状態系で管理し、両データフローのTCPコネクションを分離するものがある（例えば、非特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４‐３４９９６５公報（１７頁、図１）
【非特許文献１】小川祐紀雄ほか２名：「シンクライアントトラヒックの性能向上のための遅延解析とTCP層最適化」、信学技報, vol. １０８, no. ２０４, IN２００８-５６、２００８年９月、pp. ７５-８０
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１のものは、端末側での画面描画時間を考慮し、描画完了時に次に描画する画面の取得が完了するように画面取得要求を送信するタイミングを調整することで、端末側での画面とサーバ側での画面が極端にずれないようにするものであり、端末側において、規則的な画面変化をサーバ側で発生した元の規則に則って再現することはできない。また、非特許文献１のものでは、画面情報に関する特性までは着目していないため、特定の画面情報の遅延だけを最小化し、規則的な画面変化を元の規則に則って再現することには利用できない。
【０００６】
このように、従来のものは、サーバ側で発生した規則的な画面変化を、端末側で元の規則に則って再現することはできないものであった。
【０００７】
本発明は、送信側で発生した規則性のある画面変化を受信側でも送信側で発生した規則に則って再現できる画面転送装置を提供することである。
【課題を解決するための手段】
【０００８】
本発明の実施形態の画面転送装置の画面変化検出部は、クライアント装置に画面情報を送信するサーバ装置内で起こった画面変化を検出する。優先送信検出部は画面変化検出部で検出した画面変化のうち規則性がある画面変化をクライアント装置へ優先的に送信すべき画面変化として検出する。優先送信制御部は、優先送信検出部で検出した画面変化をクライアント装置へ優先的に送信するよう制御する。画面情報送信部は、優先送信制御部で制御した送信方法に従って画面変化をクライアント装置へ送信する。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１実施形態に係る画面転送装置が適用される画面転送システムを示す簡略図。
【図２】第１実施形態に係る画面転送装置の一例のブロック図。
【図３】第１実施形態に係る画面転送装置１の動作を示すフローチャート。
【図４】第１実施形態に係る優先送信検出部が過去の画面変化を元に優先的に送信すべき画面変化を自動で検出する際の検出基準の説明図。
【図５】第１実施形態に係る優先送信制御部が非優先的に送信する画面変化を間引いて送信する一例の説明図。
【図６】第１実施形態に係る優先送信制御部が優先的に送信すべき画面変化を優先的に送信できるように送信スケジュールを調整する際の一例の説明図。
【図７】第１実施形態に係る画面情報送信部１４が１つの画面情報送信手段１４ａのみ持つ画面転送装置のブロック図。
【図８】第１実施形態に係る画面情報送信部が４つの画面情報送信手段を持つ画面転送装置のブロック図。
【図９】第２実施形態に係る画面転送装置の一例のブロック図。
【図１０】第２実施形態における画面転送装置１の処理内容の一例を示すフローチャート。
【図１１】本発明の第２実施形態に係る画面転送装置のタイマーにより処理を開始することを契機とした場合の処理内容のフローチャート。
【図１２】第２実施形態に係る優先送信画面変化補正部が優先送信画面変化情報保持部で保持した規則に則して補正する処理内容の一例の説明図。
【図１３】第２実施形態に係る優先送信画面変化補正部が優先送信画面変化情報保持部で保持した規則に則して補正する処理内容の他の一例の説明図。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について説明する。
【００１１】
（第１実施形態）
図１は、本発明の第１実施形態に係る画面転送システムを示す簡略図である。この画面転送システムは、画面転送装置１とクライアント装置２とがネットワーク３で接続されている。なお、ここでいうネットワーク３とは、LAN接続あるいはインターネット接続等である。
【００１２】
画面転送装置１では、アプリケーションが起動している。第１実施形態では、この画面転送装置１に画面送信機能を組み込み、画面転送装置１上のアプリケーションが生成した画面情報に対して、規則性のある画面変化を受信側端末でも正しい規則で再現できる処理を行った後に、クライアント装置２へネットワーク３を介して送信する。
【００１３】
第１実施形態に係る画面転送システムでは、画面転送装置１は、プッシュ型の画面転送プロトコルを利用して、クライアント装置２へ画面データを送信するものとする。プッシュ型とは、画面データ受信側からの画面データ取得要求を必要とせずに、画面データ送信側から画面データ受信側へ画面データを送信する方式である。
【００１４】
つまり、第１実施形態では、クライアント用ソフトウェアが起動しているクライアント装置２からの画面データ取得要求を必要とせずに、サーバ用ソフトウェアが起動している画面転送装置１からクライアント装置２へ画面データを送信する。
【００１５】
但し、画面転送方式は、プッシュ型に限定されるものではなくプル型であってもよい。プル型とは、画面データ受信側であるクライアント装置２からの画面データ取得要求に応じて、画面データ送信側である画面転送装置１から画面データ受信側へ画面データを送信する方式である。
【００１６】
以上のように、第１実施形態の画面転送システムでは、画面転送装置１で生成された画面がクライアント装置２に転送され、クライアント装置２で表示される。クライアント装置２では、画面転送装置１から画面情報を受信し、受信した画面情報からクライアント装置２の図示省略のディスプレイ部に表示するための画面を生成し描画する。
【００１７】
図２は、本発明の第１実施形態に係る画面転送装置１の一例のブロック図である。なお、図２では本発明に係る機能構成を示している。この第１実施形態に係る画面転送装置１は、画面変化検出部１１、優先送信検出部１２、優先送信制御部１３、画面情報送信部１４を備え、画面情報送信部１４は第１画面情報送信手段１４ａ及び第２画面情報送信手段１４ｂを有している。
【００１８】
画面変化検出部１１は、画面転送装置１内で起こった画面変化を検出する。画面転送装置１内で画面変化が発生すると、画面転送装置１の画面情報を生成する図示省略のフレームバッファに変化の内容が描き込まれる。つまり、変化が発生した領域に画面変化により生成された絵が描き込まれる。
【００１９】
画面変化検出部１１では、このフレームバッファに書き込まれた内容そのものを検出してもよいし、以前に起こった画面変化との差分をとり、実際には画素値が変化していない画面変化を排除して処理を効率化しても構わない。なお、以前に起こった画面変化との差分は、今回発生した画面変化をフレームバッファへ描き込む以前に、フレームバッファに保持されていた内容との差分である。
【００２０】
優先送信検出部１２は、画面変化検出部１１で検出した画面変化の中からクライアント装置２へ優先的に送信すべき画面変化を検出する。例えば、予め特定領域に対して発生した画面変化を優先的にクライアント装置２へ送信することを指定する場合、画面変化検出部１１で検出した画面変化の中から当該領域に対する画面変化の発生を検出する。これ以外にも、過去の画面変化を学習し、学習した画面変化から優先的に送信すべき画面変化を検出する方法もある。これについては後述する。
【００２１】
優先送信制御部１３は、優先送信検出部１２で検出した画面変化をクライアント装置２へ優先的に送信するよう制御する。例えば、第１実施形態では画面情報送信部１４は第１画面情報送信手段１４ａと第２画面情報送信手段１４ｂとの２つの画面情報送信手段を備えている。
【００２２】
このとき、優先送信する画面変化を第１画面情報送信手段１４ａで、それ以外の画面変化を第２画面情報送信手段１４ｂで送信するというように、優先送信すべき画面変化か否かに応じて、クライアント装置２への送信方法を制御することにより、優先送信すべき画面変化が他の画面変化によりクライアント装置２への到着が遅延することを抑制する。
【００２３】
これ以外にも、優先的に送信すべき画面変化と検出されなかった画面変化(優先的に送信すべきでない画面変化)を間引くことにより、優先的に送信すべき画面変化を優先的に送信できるよう制御する。また、優先的に送信すべき画面変化を優先的に送信できるように、送信スケジュールを調整する。これらについては後述する。
【００２４】
このように、第１画面情報送信手段１４ａ及び第２画面情報送信手段１４ｂは、画面変化検出部１１で検出した画面情報をクライアント装置２へ送信する。第１画面情報送信手段１４ａと第２画面情報送信手段１４ｂとの使い分け方については、前述の通り、いずれかの画面情報送信手段で優先送信すべき画面変化を、他方の画面情報送信手段でその他の画面変化を送信する。
【００２５】
第１実施形態では、第１画面情報送信手段１４ａ及び第２画面情報送信手段１４ｂはプッシュ型の画面転送プロトコルを利用してクライアント装置２へ画面情報を送信する。クライアント装置２側では、２つの画面情報送信手段１４から受信した画面情報を元に画面を生成し描画する。
【００２６】
また、第１画面情報送信手段１４ａ及び第２画面情報送信手段１４ｂは、画面転送装置１とクライアント装置２との間を接続するTCPコネクションを２つ用意し、それぞれのコネクションを使い分ける方法で実現してもよいし、画面転送装置１が２つのNIC(Network Interface Card)を持っており、それぞれのNICを使い分ける方法であっても構わない。さらに、画面転送装置１とクライアント装置２との間を接続する接続方法は1つに限定しない。そのため、例えば、画面転送装置１とクライアント装置２との間を一方は無線LAN、もう一方はBluetooth（登録商標）のように、複数の接続方法により接続し、それぞれの接続方法に従って第１画面情報送信手段１４ａ及び第２画面情報送信手段１４ｂを使い分ける方法であっても構わない。
【００２７】
図３は、本発明の第１実施形態に係る画面転送装置１の処理内を示すフローチャートである。まず、画面転送が開始すると(ステップS100)、画面変化検出部１１は画面転送装置１内で発生した画面変化領域を検出する(ステップS101)。次に、優先送信検出部１２は発生した画面変化が優先的に送信すべき画面変化か否かを検出し(ステップS102)、優先送信制御部１３は当該画面変化をどのコネクションで送信すべきかを選択する(ステップS103)。画面情報送信部１４は選択されたコネクションで当該画面変化を送信する。すなわち、優先送信すべき画面変化であるときは、第１画面情報送信手段１４ａで送信し(ステップS104）、優先送信不要な画面変化であるときは第２画面情報送信手段１４ｂで送信する（ステップS105)。以上の処理を、画面転送を終了するまで繰り返す。
【００２８】
図４は、優先送信検出部１２が過去の画面変化を元に優先的に送信すべき画面変化を自動で検出する際の検出基準の説明図である。優先送信検出部１２は、画面変化検出部１１で検出した画面変化をある有限時間Tの間学習しておき、図４に示す（ａ）（ｂ）（ｃ）の３通り規則のうち、１つまたは複数の組み合わせにより構成される画面変化と判別した場合に、それらの画面変化を優先的に送信すべき画面変化（規則的な画面変化）として自動的に検出する。
【００２９】
図４の（ａ）は、有限時間Tの間に、同一領域に何度も画面変化をする場合の例であり、例えば、ランダム点滅である。このとき、変化する画面の種類や変化する間隔には規則がなくても構わない。
【００３０】
図４の（ｂ）は、有限時間Tの間に同一時間間隔で何度も画面変化をする場合の例であり、例えば、スクリーンセーバ等になるランダム描画である。このとき、変化する画面の種類や変化する位置(領域)には規則がなくても構わない。
【００３１】
図４の（ｃ）は、有限時間Tの間に同一種類の画面が何度も画面変化をする場合の例であり、例えば、マウス移動である。このとき、変化する間隔や変化する位置(領域)には規則がなくても構わない。
【００３２】
図５は優先送信制御部が非優先的に送信する画面変化を間引いて送信する一例の説明図である。優先送信制御部１３は、優先的に送信すべき画面変化と検出されなかった画面変化を間引いて、優先的に送信すべき画面変化を優先的に送信できるように制御する。
【００３３】
図５の（ａ）は、画面転送装置１上の画面変化の一例を示している。左上の斜線網掛けの矩形領域に優先的に送信すべき画面変化（Ａ）を示し、右下の白無地の矩形領域に優先的に送信しなくてもよい画面変化（Ｂ）を示している。優先的に送信すべき画面変化（Ａ）は、図５中では(I)→(II)→(I)と変化する周期点滅である。なお、ここでは説明の都合上、優先的に送信しなくてもよい画面変化（Ｂ）の変化も同一領域上に変化している例を示しているが、例えば優先的に送信しなくてもよい画面変化（Ｂ）の領域には、単にバースト的に画面変化が発生しているのみであり、規則的な画面変化ではないものとする。
【００３４】
このとき、時系列で見る実際の画面変化の様子は図５の（ｂ）に示すようになる。図５の（ｂ）のように、実際の画面変化では、画面変化（Ａ）と画面変化（Ｂ）とが混在している。
【００３５】
次に、図５の（ｃ）は、画面変化検出部１１により検出された画面変化検出の結果を示す。図５の（ｃ）のように、実際には画面変化（Ａ）は規則正しい時間間隔で変化していたものの、画面変化（Ｂ）がバースト的に発生しているために、画面変化（Ａ）の検出が遅くなってしまい、結果として規則正しい時間間隔で検出できなかったことを示している。
【００３６】
このときに、画面変化（Ｂ）の一部を間引いた結果を図５の（ｄ）に示す。
【００３７】
画面変化（Ｂ）は、同一領域にバースト的に発生している画面変化であれば、画面変化を検出するタイミングで最新の画面のみを送信しても、クライアント装置２に表示される画面変化には大きな差は生じないものと考える。そのため、優先送信制御部１３は、画面変化（Ｂ）の一部の画面変化を間引き、画面変化（Ａ）を規則正しいタイミングで送出できるように制御する。
【００３８】
図６は優先送信制御部１３が優先的に送信すべき画面変化を優先的に送信できるように送信スケジュールを調整する際の一例の説明図である。図６の（ａ）〜（ｃ）は、図５の（ａ）〜（ｃ）と同じ信号である場合を示している。図６の（ｃ）に示す画面変化検出の結果、画面変化（Ａ）の送信すべきタイミングが規則正しいタイミングにならなくなった場合に、画面変化（Ｂ）を送信するタイミングをスケジューリング調整し、画面変化（Ａ）を規則正しいタイミングで送出できるように制御する。
【００３９】
図６の（ｄ）にタイミングを調整する方法を示す。バースト的に発生した画面変化（Ｂ）により画面変化（Ａ）の送出タイミングが規則正しく送信できないことが明らかになった場合に、まだクライアント装置２へ転送されていない画面変化については、優先送信制御部１３は、画面変化（Ａ）を先に、画面変化（Ｂ）を後から送るように、画面情報送信部１４から送信する順番を入れ替える。
【００４０】
なお、図５や図６で示した優先送信制御部１３の動作は、図２で示すように、画面情報送信部１４を２つの第１画面情報送信手段１４ａ、第２画面情報送信手段１４ｂに分けた実現方法であっても構わないし、図７に示すように、画面情報送信部１４が１つの画面情報送信手段１４ａしか持たない実現方法であっても構わない。図７は、画面情報送信部１４が１つの画面情報送信手段１４ａのみ持つ画面転送装置１のブロック図である。
【００４１】
逆に、画面情報送信部１４は、１つないし２つには限らない。例えば、３つ以上持つ実現方法であっても構わない。図８は、画面情報送信部１４が４つの画面情報送信手段１４を持つ画面転送装置１のブロック図である。図８に示すように、図２の画面情報送信部１４に対して、第３画面情報送信手段１４ｃ、第４画面情報送信手段１４ｄを備えている。
【００４２】
図８のものでは、例えば優先送信検出部１２が検出する「優先的に送信すべき画面領域」として複数領域（例えば３つ分の領域）を予め指定しておき、指定した当該領域に対する画面変化を検出した場合は、第１画面情報送信手段１４ａ、第２画面情報送信手段１４ｂ、第３画面情報送信手段１４ｃのいずれかを使って、また、優先的に送信する指定領域以外の領域に画面変化を検出した場合は第４画面情報送信手段１４ｄを使って、クライアント装置２への転送を行う。それぞれの画面情報送信部１４の画面情報送信手段の使い方については、以上の説明以外に、優先的に送信すべき画面変化にいくつかの優先度を設け、その優先順に使い分ける方法であっても構わない。
【００４３】
このように、第１実施形態に係る画面転送装置１によれば、優先的に送信すべき画面変化を検出し、優先的に送信するよう制御することで、優先的に送信すべき画面変化の転送を優先的に行うことが可能となる。
【００４４】
（第２実施形態）
図９は本発明の第２実施形態に係る画面転送装置１の一例のブロック図である。この第２実施形態に係る画面転送装置１は、図２に示した第１実施形態に対し、優先送信画面変化監視部２１、優先送信画面変化補正部２２、優先送信画面変化情報保持部２３を追加して設けたものである。
【００４５】
優先送信画面変化監視部２１は、画面変化検出部１１が検出する画面変化から、優先送信画面情報保持部２３で保持する優先的に送信すべき画面変化の発生可否を監視する。また、画面転送装置１内で実際に発生した画面変化を監視する以外に、別途、優先送信画面変化情報保持部２３で保持した規則に則って画面変化が発生しているか否かを監視する。第２実施形態では、ある時間間隔で変化する画面変化を規則とする例を示しており、優先送信画面変化情報保持部２３で保持した時間間隔で切断するタイマー１５を用意し、タイマー１５の切断を契機に、優先的に送信すべき画面変化の発生可否を監視する。
【００４６】
優先送信画面変化補正部２２は、優先送信画面変化監視部２１により優先的に送信すべき画面変化の発生可否を監視した結果、優先的に送信すべき画面変化が発生すべき規則に則って発生しなかった場合に、クライアント装置２へ送信すべき画面情報を、優先送信画面変化情報保持部２３により保持した情報に基づいて規則に沿うよう補正する。この補正については後述する。
【００４７】
優先送信画面変化情報保持部２３は、優先送信検出部１２により優先的に送信すべき画面変化として検出した画面変化情報を規則として保持する。例えば、ある矩形領域に対して、ｘ種類の画面が時間間隔dで変化する画面変化を規則として保持する場合、(i) 変化する画面領域情報、(ii) 画面変化を構成する画面(ｘ種類分)、(iii) 変化する時間間隔の３つの情報をまとめて保持する。なお、規則によっては図４で説明した３種類のうち一つもしくは複数の組み合わせにより実現されているものもあるため、実現されている規則の数分、保持することとする。なお、第２実施形態での規則は３種類すべてを組み合わせた規則の場合について説明する。
【００４８】
第２実施形態における画面転送装置１は、優先送信画面変化監視部２１で示す処理を開始する契機が２通りある。一つ目は「画面転送装置１内で発生した画面変化を検出することにより処理を開始する」契機であり、二つ目は「タイマー１５により処理を開始する」契機である。それぞれの契機による処理を図１０及び図１１を用いて説明する。
【００４９】
図１０は、本発明の第２実施形態における画面転送装置１の処理内容の一例を示すフローチャートである。この図１０に示した処理内容は、画面転送装置１内で発生した画面変化を検出することにより処理を開始することを契機とした場合のものであり、タイマー１５により処理を開始する場合の処理内容は記載を省略している。
【００５０】
まず、画面転送が開始すると(ステップS200)、優先送信検出部１１は画面転送装置１内で発生した画面変化領域を検出し(ステップS201)、優先送信検出部１１により画面変化が検出されると、優先送信画面変化監視部２１は、発生した画面変化が「優先的に送信すべき画面変化」として優先送信画面変化情報保持部２３に保持されているか否かを調べる(ステップS202)。画面転送処理の開始時(初期状態)では保持されている画面変化はないため、noの処理に続く。次いで、優先送信検出部１２により、処理すべき画面変化が「優先的に送信すべき画面変化」か否かを検出する(ステップS203)。優先的に送信すべき画面変化と検出した場合、優先送信画面変化情報保持部２３に検出した画面変化の情報(規則情報)を登録する(ステップS204)。また、ステップS204において登録する規則が時間に関するものである場合、規則に則った画面変化の発生可否を監視するためのタイマー１５をセットする(ステップS205)。
【００５１】
一方、ステップS202で処理すべき画面変化が優先送信画面変化情報保持部２３に保持されている場合(ステップS202でyesの処理に進んだ場合)、当該画面変化が、優先送信画面変化情報保持部２３で保持した規則に則った画面変化か否かを調べる(ステップS206)。
【００５２】
例えば、図４で示した時間間隔を規則とした画面変化が規則正しい時間間隔で変化しているか否かを判別する。ステップS206において、規則に則った画面変化ではないと判別された場合(noに進んだ場合)、優先送信画面変化補正部２２は、処理すべき画面変化を優先送信画面変化情報保持部２３で保持した規則に則した画面変化となるように補正する(ステップS207)。例えば、画面変化すべき時間間隔は規則正しいが、変化する画面の種類が異なっている場合などは、正しい種類の画面で変化するように補正する。この補正処理については後述する。
【００５３】
以上の処理を終えたら、優先送信制御部１３は当該画面変化をどのコネクションで送信すべきかを選択する(ステップS208)。画面情報送信部１４は選択されたコネクションで当該画面変化を送信する。すなわち、優先送信すべき画面変化であるときは、第１画面情報送信手段１４ａで送信し(ステップS209）、優先送信不要な画面変化であるときは第２画面情報送信手段１４ｂで送信する（ステップS210)。以上の処理を、画面転送を終了するまで繰り返す。
【００５４】
図１１は、本発明の第２実施形態に係る画面転送装置１のタイマー１５により処理を開始することを契機とした場合の処理内容のフローチャートである。このフローチャートは、タイマー１５により処理を開始することを契機とした場合のものであり、画面転送処理開始時からの処理フローチャートではなく、図１０のステップS205によりタイマー１５がセットされた後からの処理ということになる。
【００５５】
まず、図１０ステップS205によりタイマーがセットされると(ステップS300)、タイマー１５の切断を待つ(ステップS301)。タイマー１５が切断されると、優先送信画面変化監視部２１は、優先送信画面変化情報保持部２３で保持した規則に則した画面変化が規則通りに発生しているか否かを調べる(ステップS302)。すなわち、規則正しい時間間隔で画面変化が発生しているか否かを調べる。
【００５６】
規則に則った画面変化が発生していない場合、つまり、保持している規則情報のうち規則に則った画面変化をしていない画面変化情報が存在する場合は、優先送信画面変化補正部２２は、優先送信画面変化情報保持部２３で保持した規則に則して画面変化を補正する(ステップS303)。
【００５７】
以降、補正した画面情報に基づいて、優先送信制御部１３は当該画面変化をどのコネクションで送信すべきかを選択する(ステップS304)。画面情報送信部１４は選択されたコネクションで当該画面変化を送信する。すなわち、優先送信すべき画面変化であるときは、第１画面情報送信手段１４ａで送信し(ステップS305）、優先送信不要な画面変化であるときは第２画面情報送信手段１４ｂで送信する（ステップS306)。
【００５８】
一方、ステップS302で、保持しているすべての画面変化が規則情報通りに画面変化している場合はnoに進み、再度タイマー１５をセットするのみとする。
【００５９】
図１２は第２実施形態に係る優先送信画面変化補正部２２が優先送信画面変化情報保持部２３で保持した規則に則して補正する処理内容の一例の説明図である。図１２では、図４の（ｂ）、（ｃ）の２種類の規則の組み合わせを満たす場合を例にとって画面変化補正する場合を示している。
【００６０】
図１２の（ａ）は、画面転送装置１内の実際の画面変化の様子を、フレームバッファの変化を時系列に表すことで示している。この画面変化は、（Ａ）という画面が規則検出時間Ｔより小さい時間間隔t0（t0＜T)のタイミングで横方向にｘ[pixel]ずつ移動する画面変化の様子を示している。
【００６１】
図１２の（ｂ）は、図１２の（ａ）の画面変化が発生しているときの画面変化検出部１１で検出した画面変化を示している。ここでは、実際に画素値が変化した領域（規則変化領域）のみを抽出した例（背景を含まない例）を示しており、図１２の（ｂ）では、３回目の画面変化までは時間間隔t0のタイミングで変化領域を検出できているが、矢印箇所の４回目の画面変化では、検出できなかった場合を示している。矢印箇所の４回目の画面変化のタイミングで１つ前の画面変化からｘ［pixel］すれた位置に画像が検出されていない場合を示している。
【００６２】
このとき、図１１のフローチャート（タイマー１５により優先送信画面変化監視部２１の処理を開始するフローチャート）を用いて、時間間隔t0の間隔で規則に則っていない画面変化があるかどうかを判定する(ステップS302)。図１２の（ｂ）では、４回目の画面変化が発生していないことが検出された場合を示している。
【００６３】
図１２の（ｃ）は、図１２（ｂ）で規則に則った画面変化が規則通りに発生しなかったことを検出した結果を踏まえ、優先送信画面変化情報保持部２３で保持した規則に則り、優先送信画面変化補正部２２により画面変化を補正する様子を示している。図１２の（ｃ）では、矢印箇所の４回目の画面変化が正しいタイミングで正しい画面を用いて補われている。すなわち、矢印箇所の４回目の画面変化のタイミングで１つ前の画面変化からｘ［pixel］すれた位置に画像を補正している。
【００６４】
図１３は、優先送信画面変化補正部２２が、優先送信画面変化情報保持部２３で保持した規則に則して補正する処理内容の他の一例の説明図であり、図１３では、図４の（ａ）、（ｂ）、（ｃ）の３種類の規則のすべての規則を満たす場合を例にとって画面変化を補正する場合を示している。
【００６５】
図１３の（ａ）は、画面転送装置１内の実際の画面変化の様子を、フレームバッファの変化を時系列に表すことで示している。この画面変化は、（Ａ）と（Ｂ）という２種類の画面が時間間隔t0のタイミングで、同一矩形領域に交互に表示される画面変化の様子を示している。
【００６６】
図１３の（ｂ）は、図１３の（ａ）の画面変化が発生しているときの画面変化検出部１１で検出した画面変化を示している。ここでは、実際に画素値が変化した領域のみを抽出した例を示しており、図１３（ｂ）では、３回目の画面変化までは規則に則った画面変化が発生していることを検出できているが、矢印箇所の４回目の画面変化が検出できなかった場合を示している。
【００６７】
図１３の（ｃ）は、図１３の（ｂ）で規則に則った画面変化が規則通りに発生しなかったことを検出した結果を踏まえ、優先送信画面変化情報保持部２３で保持した規則に則り、画面変化を補正する様子を示している。ここでは、矢印箇所の４回目の画面変化を正しい領域に、正しいタイミングで正しい画面で補っている。
【００６８】
なお、図１２及び図１３で、優先送信すべき画面変化の監視と補正の方法について例を示したが、図４で説明した優先送信検出部１２が規則を検出する方法と同様に、検出した画面変化を補正する方法についても、図１２及び図１３で示した組み合わせには限らないことは言うまでもない。
【００６９】
このように、第２実施形態に係る画面転送装置１によれば、優先的に送信すべき画面変化の規則性を検出し、規則に則した画面変化に補正することで、優先的に送信すべき画面変化の規則性までも担保することが可能となる。
【００７０】
この画面転送装置１は、例えば、汎用のコンピュータ装置を基本ハードウェアとして用いることでも実現することが可能である。すなわち、上記のコンピュータ装置に搭載されたプロセッサに画面転送プログラムを実行させることにより実現することができる。このとき、上記のプログラムをコンピュータにあらかじめインストールすることで実現してもよいし、ＣＤ−ＲＯＭなどの記憶媒体に記憶して、あるいはネットワークを介して上記のプログラムを配布して、このプログラムをコンピュータ装置に適宜インストールすることで実現してもよい。また、上記のコンピュータに内蔵あるいは外付けされたメモリ、ハードディスクもしくはＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＡＭ、ＤＶＤ−Ｒなどの記憶媒体などを適宜利用して実現することができる。
【００７１】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７２】
１…画面転送装置、２…クライアント装置、３…ネットワーク、１１…画面変化検出部、１２…優先送信検出部、１３…優先送信制御部、１４…画面情報送信部、１５…タイマー、２１…優先送信画面変化監視部、２２…優先送信画面変化補正部、２３…優先送信画面変化情報保持部
【図１】
0005901945.tif 000002
【図２】
0005901945.tif 000003
【図３】
0005901945.tif 000004
【図４】
0005901945.tif 000005
【図５】
0005901945.tif 000006
【図６】
0005901945.tif 000007
【図７】
0005901945.tif 000008
【図８】
0005901945.tif 000009
【図９】
0005901945.tif 000010
【図１０】
0005901945.tif 000011
【図１１】
0005901945.tif 000012
【図１２】
0005901945.tif 000013
【図１３】
0005901945.tif 000014