(57)【特許請求の範囲】
【請求項１】
所定の周期ごとに最新の画面データを作成する画面データ作成部と、
前記作成された最新の画面データを取得する取得部と、
前記取得部により前回取得した画面データを保持する保持部と、
前記取得した最新の画面データと前記保持された前回取得した画面データとの差分をクライアント装置に送信する送信制御部とを備え、
前記画面データ作成部は、
前記クライアント装置において画面データ読み込み要求が発生した場合に、該要求を受信した後、所定時間が経過するまで画面データの作成の周期を延長することを特徴とする画面転送サーバ装置。
【請求項２】
所定の周期ごとに最新の画面データを作成する画面データ作成部と、
前記作成された最新の画面データを取得する取得部と、
前記取得部により前回取得した画面データを保持する保持部と、
前記取得した最新の画面データと前記保持された前回取得した画面データとの差分をクライアント装置に送信する送信制御部とを備え、
前記送信制御部は、
前記クライアント装置での画面におけるスクロールがなされた場合に、実際のスクロール量を前記クライアント装置での画面におけるスクロールのための操作がなされてから前記差分に相当する画面データが前記クライアント装置に到達するまでの時間差を考慮した、前記操作によりスクロールされると見込まれる所定のスクロール量だけ増加させたスクロール量に基づき、スクロール前の画面とスクロール後の画面との差分に相当する画面データを前記クライアント装置に送信することを特徴とする画面転送サーバ装置。
【請求項３】
前記差分は、画面上で定義された矩形領域における、前記取得した最新の画面データと前記保持された前回取得した画面データとの差分に相当する画面データであることを特徴とする請求項１または２に記載の画面転送サーバ装置。
【請求項４】
前記差分は、画面上のビット単位における、前記取得した最新の画面データと前記保持された前回取得した画面データとの差分に相当する画面データであることを特徴とする請求項１または２に記載の画面転送サーバ装置。
【請求項５】
前記送信制御部は、
前記クライアント装置での画面におけるスクロールがなされた場合に、前記クライアント装置から取得した情報より求められるスクロール量に基づき、スクロール前の画面とスクロール後の画面との差分に相当する画面データを前記クライアント装置に送信することを特徴とする請求項１に記載の画面転送サーバ装置。
【請求項６】
画面転送サーバ装置に適用される方法であって、
前記画面転送サーバ装置は、
所定の周期ごとに最新の画面データを作成し、
前記作成された最新の画面データを取得し、
前回取得した前記画面データを保持し、
前記取得した最新の画面データと前記保持された画面データとの差分をクライアント装置に送信し、
前記クライアント装置において画面データ読み込み要求が発生した場合に、該要求を受信した後、所定時間が経過するまで画面データの作成の周期を延長することを特徴とする画面転送方法。
【請求項７】
画面転送サーバ装置に適用される方法であって、
前記画面転送サーバ装置は、
所定の周期ごとに最新の画面データを作成し、
前記作成された最新の画面データを取得し、
前回取得した前記画面データを保持し、
前記取得した最新の画面データと前記保持された画面データとの差分をクライアント装置に送信し、
前記クライアント装置での画面におけるスクロールがなされた場合に、実際のスクロール量を前記クライアント装置での画面におけるスクロールのための操作がなされてから前記差分に相当する画面データが前記クライアント装置に到達するまでの時間差を考慮した、前記操作によりスクロールされると見込まれる所定のスクロール量だけ増加させたスクロール量に基づき、スクロール前の画面とスクロール後の画面との差分に相当する画面データを前記クライアント装置に送信することを特徴とする画面転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ユーザの操作に基づいて画面データを転送する画面転送サーバ、および画面転送方法に関する。
【背景技術】
【０００２】
クラウドアプリケーションの普及に伴い、ユーザの操作に基づき、サーバからクライアント（ユーザ側の端末装置）に画面データを転送するためのアプリケーションが増えている。  
このアプリケーションとして、例えば、シンクライアント(Thin client)、アプリケーション仮想化、および、例えば非特許文献１に開示されるようなエッジコンピューティングプラットフォームにおいて端末の処理を肩代わりするエッジサーバ（以降、出力機能分割サーバと呼ぶ）などが挙げられる。
【０００３】
これらの技術では、サーバが画面データをクライアントに継続的に送信するので、ネットワーク帯域の消費量が大きいことが課題である。よって、画面データをサーバからクライアントに送信する際には、全ての画面データを一括で送信するのではなく、画面表示に必要な最低限のデータのみを送信することにより、ネットワーク帯域の消費量を削減する必要がある。その一方で、画面データの更新や表示領域の更新が発生したときには、更新された画面データが速やかにクライアントに送信されてユーザに提供されなければならない。
【０００４】
画面データの転送に関わる帯域削減技術として、例えば非特許文献２で示されるように、ディスプレイドライバ内の遅延量に応じて送信間隔を調整する方法や、例えば非特許文献３に示されるように、画面領域毎の更新量に応じて送信方法を動画または静止画に切り替える方法がある。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】“高レスポンスやビッグデータ処理が要求される新たなアプリケーションの開拓を推進する「エッジコンピューテング構想」を策定”、［online］、平成２６年１月２３日、ＮＴＴ持株会社ニュースリリース、［平成２６年７月２３日検索］、インターネット〈URL：http://www.ntt.co.jp/news2014/1401/140123a.html〉
【非特許文献２】村井  信哉、川添  博史、“アプリケーション共有を実現するＰＣ画面転送技術”、［online］、東芝レビュー2006 VOL.61 NO.4、［平成２６年７月２３日検索］、インターネット〈URL：https://www.toshiba.co.jp/tech/review/2006/04/61_04pdf/a06.pdf〉
【非特許文献３】松井  一樹、外３名、“仮想デスクトップ環境での高速表示技術：ＲＶＥＣ（レベック）”、［online］、雑誌FUJITSU 2012-1月号 (Vol.63, No.1)、［平成２６年７月２３日検索］、インターネット〈URL：http://img.jp.fujitsu.com/downloads/jp/jmag/vol63-1/paper12.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、非特許文献２に開示されたような方法は、ネットワークの混雑を検知してデータの送信レートを落とす方法である。この方法では、ユーザによるクライアントの操作にともなって表示領域が更新されたことを考慮して必要最低限の画面データをクライアントに送ることはできない。
【０００７】
また、非特許文献３に開示されたような方法は、送信方法を動画および静止画の何れかへ切り替えを行う方法であり、画像転送の帯域削減を実現することはできない。
【０００８】
更に、上記のいずれの方法についても、ユーザの操作による表示画面の一部更新を考慮した画面転送方法ではなく、画面データ全体を転送する方法である。
【０００９】
本発明は、画面更新に対する応答性能を維持した上で、画面データの転送に伴う帯域を削減することが可能になる画面転送サーバ装置、および画面転送方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、この発明の実施形態における画面転送サーバ装置の第１の態様は、所定の周期ごとに最新の画面データを作成する画面データ作成部と、前記作成された最新の画面データを取得する取得部と、前記取得部により前回取得した画面データを保持する保持部と、前記取得した最新の画面データと前記保持された前回取得した画面データとの差分をクライアント装置に送信する送信制御部とを具備し、前記画面データ作成部は、前記クライアント装置において画面データ読み込み要求が発生した場合に、該要求を受信した後、所定時間が経過するまで画面データの作成の周期を延長することを特徴とする画面転送サーバ装置を提供する。
上記目的を達成するために、この発明の実施形態における画面転送サーバ装置の第２の態様は、所定の周期ごとに最新の画面データを作成する画面データ作成部と、前記作成された最新の画面データを取得する取得部と、前記取得部により前回取得した画面データを保持する保持部と、前記取得した最新の画面データと前記保持された前回取得した画面データとの差分をクライアント装置に送信する送信制御部とを具備し、記送信制御部は、前記クライアント装置での画面におけるスクロールがなされた場合に、実際のスクロール量を前記クライアント装置での画面におけるスクロールのための操作がなされてから前記差分に相当する画面データが前記クライアント装置に到達するまでの時間差を考慮した、前記操作によりスクロールされると見込まれる所定のスクロール量だけ増加させたスクロール量に基づき、スクロール前の画面とスクロール後の画面との差分に相当する画面データを前記クライアント装置に送信することを特徴とする画面転送サーバ装置を提供する。
【００１１】
上記構成の画面転送サーバ装置の第３の態様は、第１または第２の態様において、前記差分は、画面上で定義された矩形領域における、前記取得した最新の画面データと前記保持された前回取得した画面データとの差分に相当する画面データである。
【００１２】
上記構成の画面転送サーバ装置の第４の態様は、第１または第２の態様において、前記差分は、画面上のビット単位における、前記取得した最新の画面データと前記保持された前回取得した画面データとの差分に相当する画面データである。
上記構成の画面転送サーバ装置の第５の態様は、第１の態様において、前記送信制御部は、前記クライアント装置での画面におけるスクロールがなされた場合に、前記クライアント装置から取得した情報より求められる、スクロール量に基づき、スクロール前の画面とスクロール後の画面との差分に相当する画面データを前記クライアント装置に送信する。
【００１５】
本発明の実施形態における画面転送方法の第１の態様は、画面転送サーバ装置に適用される方法であって、前記画面転送サーバ装置は、所定の周期ごとに最新の画面データを作成し、前記作成された最新の画面データを取得し、前回取得した前記画面データを保持し、前記取得した最新の画面データと前記保持された画面データとの差分をクライアント装置に送信し、前記クライアント装置において画面データ読み込み要求が発生した場合に、該要求を受信した後、所定時間が経過するまで画面データの作成の周期を延長する。
本発明の実施形態における画面転送方法の第２の態様は、画面転送サーバ装置に適用される方法であって、前記画面転送サーバ装置は、所定の周期ごとに最新の画面データを作成し、前記作成された最新の画面データを取得し、前回取得した前記画面データを保持し、前記取得した最新の画面データと前記保持された画面データとの差分をクライアント装置に送信し、前記クライアント装置での画面におけるスクロールがなされた場合に、実際のスクロール量を前記クライアント装置での画面におけるスクロールのための操作がなされてから前記差分に相当する画面データが前記クライアント装置に到達するまでの時間差を考慮した、前記操作によりスクロールされると見込まれる所定のスクロール量だけ増加させたスクロール量に基づき、スクロール前の画面とスクロール後の画面との差分に相当する画面データを前記クライアント装置に送信する。
【発明の効果】
【００１６】
本発明によれば、画面更新に対する応答性能を維持した上で、画面データの転送に伴う帯域を削減することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施形態における画面転送システムによる画面転送の手順の一例を示す図。
【図２】本発明の実施形態における画面転送システムによる画面の差分の一例を示す図。
【図３】本発明の実施形態における画面転送システムによる、画面のスクロールの形態の一例を示す図。
【図４】本発明の実施形態における画面転送システムによる、画面のスクロール操作に伴う画面転送の手順の一例を示す図。
【図５】本発明の実施形態における画面転送システムによる、画面データの描画処理間隔の延長の形態の一例を示す図。
【図６】本発明の実施形態における画面転送システムの機能構成の第１の例を示す図。
【図７】本発明の実施形態における画面転送システムの機能構成の第２の例を示す図。
【図８】本発明の実施形態における画面転送システムの機能構成の第３の例を示す図。
【発明を実施するための形態】
【００１８】
以下、図面を参照して、この発明に係る実施形態を説明する。  
図１は、本発明の実施形態における画面転送システムによる画面転送の手順の一例を示す図である。  
本実施形態における画面転送システムは、ユーザが用いるクライアント１０、および画面転送を行うサーバ２０（以降、サーバ２０と記載する）を有する。  
このシステムは、サーバ２０がクライアント１０に送信する画面データの画面領域内に変化があった場合に、このクライアント１０に送信する画面データの更新を行なう。
【００１９】
サーバ２０は、画面データ送信制御部２１および画面データ作成部２２を有する。画面データ送信制御部２１は、クライアント１０へ画面データを送信する。画面データ作成部２２は、クライアント１０向けの画面データを作成する。
【００２０】
サーバ２０は、描画用タイマを内蔵し、この描画用タイマを一定周期毎に動作させることにより、画面データ送信制御部２１に対して割り込みをかける。  
画面データ送信制御部２１は、描画用タイマによる割り込みを検知して、画面データ作成部２２に画面データ取得要求を送信する。  
画面データ作成部２２は、画面データ取得要求に応じて、最新の画面データを作成して画面データ送信制御部２１に送信する。
【００２１】
画面データ作成部２２から画面データ送信制御部２１に前回送信された画面データ、つまり最新の画面データより１回前に作成された画面データはサーバ２０内の記憶装置に保持されている。  
画面データ送信制御部２１は、画面データ作成部２２から取得した最新の画面データと、上記のように記憶装置に保持された画面データ、つまり画面データ作成部２２から画面データ送信制御部２１へ前回送信された画面データとを比較し、両画面データの差分をチェックする。
【００２２】
画面データ送信制御部２１は、上記の両画面データに差分がある場合は、この差分画面データを示すリクエストメッセージをクライアント１０に送信する。そして、上記のように記憶装置に保持されている画面データは、上記のように画面データ作成部２２が作成した最新の画面データに更新される。この更新された画面データは、次回以降の差分の比較における、画面データ作成部２２から画面データ送信制御部２１へ前回送信された画面データとして使用される。
【００２３】
クライアント１０は、サーバ２０からの差分画面データを受信したら、この差分画面データに基づいて表示画面を更新するとともに、この差分画面データを受信したことを示す応答メッセージをサーバ２０の画面データ送信制御部２１に送信する。信頼性のあるプロトコル（例えば、ＴＣＰ）を用いて差分画面データを送信する場合、応答メッセージを省略してもよい。
差分のチェックについては、画面データ上で予め定義された矩形領域に対して行ってもよいし、画面データ上のビット単位に対して行なわれてもよい。
【００２４】
次に、画面をスクロールさせる際の動作について説明する。ユーザがクライアント１０における画面でのスクロール操作を行ったときには、このクライアント１０は、スクロール量を測定する。  
クライアント１０の表示装置がタッチパネルであれば、スクロール量は、画面上でのイベントの発生位置と速度に基づき、イベントの発生時間からの経過時間に対する画面移動の量として計算される。また、クライアント１０の入力装置がリモコンであれば、スクロール量は、リモコンのボタン操作一回分に割り当てられたスクロール量に基づき計算される。
【００２５】
クライアント１０は、計算したスクロール量を示す情報をサーバ２０に送信する。最新のスクロール位置の情報はサーバ２０内の記憶装置に保持されている。サーバ２０は、クライアント１０からのスクロール量を自装置内の記憶装置に保持しているスクロール位置の情報に上書きすることで、スクロール量の情報を更新する。画面データ送信制御部２１は、記憶装置に保持される最新の画面データと更新されたスクロール量に基づいて、この更新されたスクロール量に相当する差分画面データ、つまりスクロール前の画面とスクロール後の画面との差分を計算し、この差分画面データを示すリクエストメッセージをクライアント１０に送信する。これにより、上記のように画面データ同士を比較しなくても差分を得ることができる。
もしくは、クライアント１０が、最新のスクロール位置を記憶装置に保持し、イベントの発生位置と速度に基づき、更新が必要な画面データの座標を計算した上で、サーバ２０に送信することも可能である。もしくは、クライアント１０が、イベントの発生位置と速度を計測し、該情報をサーバ２０に送信することにより、サーバ２０がイベントの発生時間からの経過時間に対する画面移動の量を計算することもできる。
【００２６】
図３は、本発明の実施形態における画面転送システムによる、画面のスクロールの形態の一例を示す図である。図４は、本発明の実施形態における画面転送システムによる、画面のスクロール操作に伴う画面転送の手順の一例を示す図である。  
図３では、スクロール方向が下方向の場合のイメージを示す。本実施形態でのスクロールの検出方向は、上下左右いずれのスクロール方向に対しても適用可能であるが、一部のスクロール方向にのみに適用することも可能である。
【００２７】
上記の差分情報の送信では、ユーザがクライアント１０でスクロール操作を行ってから、画面情報がサーバ２０からクライアント１０に実際に到達するまでに時間差があるために、ユーザにとっての操作感が不自然になる場合がある。
【００２８】
この操作感の不自然さを解消するために、画面データ送信制御部２１は、クライアント１０から送信されたスクロール量に、後にユーザによりスクロールされると見込まれるスクロール量に相当する所定の値を加算したスクロール量に相当する差分画面を作成し、この差分画面データを示すリクエストメッセージをクライアント１０に送信する、いわゆる先読み処理を行なう。この先読み処理についても、上下左右いずれのスクロール方向に対しても適用可能である。また、この先読み処理では、クライアント１０で測定したスクロール量に所定の値を該クライアント１０で加算したスクロール量をサーバ２０に送信するようにすることもできる。
【００２９】
次に、画面の読み込み状況に応じて描画タイマの動作間隔（描画処理間隔）を変化させることにより，ネットワーク帯域を削減するためのシーケンスを説明する。  
図５は、本発明の実施形態における画面転送システムによる、画面データの描画処理間隔の延長の形態の一例を示す図である。
【００３０】
具体的には、サーバ２０は、画面データ作成部２２による画面データの描画（作成）処理間隔を管理するためのスケジューラを有する。  
ユーザからの画面データ読み込み要求にしたがって、クライアント１０は、画面データ読み込み要求をサーバ２０に送信する。  
これによりサーバ２０の画面データ作成部２２は、スケジューラ２３からの描画開始指示に基づき、画面データを作成する。画面データ作成部２２が画面データの描画を始めた直後は、画面のページの描画更新頻度が低い。このため、画面データ読み込み要求を画面データ作成部２２が受信してから一定時間の間、描画処理間隔を通常の間隔ｔ１より長いｔ２に延長する。スケジューラ２３は、画面データ作成部２２に対して行う描画開始の指示の間隔について間引き処理を行なうことになる。これにより画面転送の更新頻度が抑えられる。  
上記の一定時間が経過した場合、画面データ作成部２２における描画処理間隔を通常の描画処理間隔であるｔ１に戻す。
【００３１】
以下、画面転送システムの各種実施例について説明する。  
（第１の実施例）
図６は、本発明の実施形態における画面転送システムの機能構成の第１の例を示す図である。  
図６に示したシステムは、例えばオンラインゲームや電子書籍システムに適用される。
【００３２】
この図６に示したシステムでは、クライアント１０は、画面転送サービスを提供するためのサーバ２０が提供するサービスを利用する。このサーバ２０は、画面データ送信制御部２１、画面データ作成部２２、スケジューラ２３、画面データ保持部２４、記憶装置２５を有する。
【００３３】
クライアント１０は、コンテンツ取得要求をネットワーク（ＮＷ）３０を介してサーバ２０に送信する。コンテンツ取得要求には、サーバ、および、コンテンツを特定可能な情報（例えば、ＵＲＩ）を含む。
【００３４】
画面データ作成部２２は、画面データ取得要求を取得した後、描画用タイマによる割り込みにより、最新の画面データ（コンテンツ）を作成し、該画面データを画面データ送信制御部２１に送信する。
画面データ作成部２２から前回送信された画面データは、サーバ２０内の画面データ保持部２４によりサーバ２０内の記憶装置２５に保持される。画面データ送信制御部２１は、画面データ作成部２２から送信された最新の画面データと、上記のように記憶装置２５に保持された画面データ、つまり画面データ作成部２２から画面データ送信制御部２１へ前回送信された画面データとを比較し、両画面データの差分をチェックする。
【００３５】
画面データ送信制御部２１は、上記の両画面データに差分がある場合は、この差分を示す差分画面データをクライアント１０に送信する。画面データ保持部２４は、上記のように記憶装置２５に保持されている画面データを、上記のように画面データ作成部２２から送信された最新の画面データに更新する。
【００３６】
コンテンツを保持するサーバ２０における画面データ送信制御部２１は、描画用タイマによる割り込みを検知して、画面データ作成部２２に画面データ取得要求を送信する。画面データ送信制御部は、新たに取得した画面データと記憶装置２５に保持された画面データとを比較し、両画面の差分をチェックする。画面データ送信制御部２１は、上記の両画面に差分がある場合は、この差分を示す差分画面データを示すリクエストメッセージをクライアント１０に送信する。画面データ保持部２４は、上記のように記憶装置２５に保持されている画面データを、上記のように画面データ作成部２２から送信された最新の画面データに更新する。この差分は、例えば、コンテンツに含まれるプログラムにより画面データが動的に変化する、もしくは、ユーザの操作、などにより発生する。
【００３７】
クライアント１０は、サーバ２０からの差分情報としての画面データを、ネットワーク３０を介して受信したら、この差分画面データに基づいて表示画面を更新するとともに、この差分画面データを受信したことを示す応答メッセージをサーバ２０の画面データ送信制御部２１に送信する。信頼性のあるプロトコル（例えば、ＴＣＰ）を用いて差分画面データを送信する場合、応答メッセージを省略してもよい。
【００３８】
また、ユーザがクライアント１０にてスクロール操作を行ったときには、上記のように、サーバ２０は、スクロール量に相当する差分画面データをクライアント１０に送信する。このスクロール量に相当する差分画面データの送信については上記のように、実際のスクロール量を所定値だけ増加させたスクロール量に相当する差分画面データを送信する、先読み処理を適用してもよい。
【００３９】
また、ユーザ操作にしたがって、画面データ読み込み要求をクライアント１０がサーバ２０に送信する。これにより、サーバ２０の画面データ作成部２２が画面データを作成する必要がある場合、画面データ読み込み要求受信した画面データ作成部２２は、一定時間が経過するまでは、描画処理間隔を広げる。スケジューラ２３は、上記により広げられた描画処理間隔に基づき、画面データ作成部２２に描画開始の指示を行う間隔を一定時間広げることになる。つまり、上記のように、描画処理間隔の間引き処理を行なう。
【００４０】
（第２の実施例）
図７は、本発明の実施形態における画面転送システムの機能構成の第２の例を示す図である。  
図７に示したシステムは、コンテンツサーバ２０ａが送信するコンテンツ（画面データを作成するために必要な情報）を用いて、クライアント１０にて画面データを表示するシステムである。このシステムでは、クライアント１０とコンテンツサーバ２０ａの間に出力機能分割サーバ４０を配置し、画面データを出力機能分割サーバ４０にて作成する。
【００４１】
この出力機能分割サーバ４０は、画面データ送信制御部４１、画面データ作成部４２、スケジューラ４３、画面データ保持部４４、記憶装置４５を有する。  
クライアント１０は、コンテンツ取得要求を送信する事前に、接続要求を管理サーバ５０に送信する。管理サーバ５０は、出力機能分割サーバのアクセス先（例えば、アドレスやポート番号）をクライアント１０に返送する。クライアント１０は、受信したアクセス先の情報をもとに、コンテンツ取得要求をネットワーク（ＮＷ）３０を介して出力機能分割サーバ４０に送信する。コンテンツ取得要求には、コンテンツサーバ、および、コンテンツを識別する情報（例えば、ＵＲＩ）を含む。
【００４２】
出力機能分割サーバ４０は、コンテンツ取得要求送転送部４６を介して、コンテンツ取得要求をコンテンツサーバ２０ａに送信し、コンテンツを得る。出力機能分割サーバ４０は、コンテンツサーバ２０ａからの受信したコンテンツをもとに画面データ作成部４２にて、最新の画面データを作成する。
【００４３】
コンテンツサーバ２０ａから前回送信されたコンテンツを元に作成された画面データは、出力機能分割サーバ４０内の画面データ保持部４４により出力機能分割サーバ４０内の記憶装置４５に保持される。画面データ送信制御部４１は、コンテンツサーバ２０ａから送信された最新のコンテンツにより作成された画面データと、上記のように記憶装置４５に保持された画面データ、つまりコンテンツサーバ２０ａから出力機能分割サーバ４０へ前回送信されたコンテンツにより作成された画面データとを比較することで、両画面データの差分をチェックする。
【００４４】
画面データ送信制御部４１は、上記の両画面データに差分がある場合は、この差分を示す差分画面データを上記に従い、クライアント１０に送信する。画面データ保持部４４は、上記のように記憶装置４５に保持されている画面データを、上記のようにコンテンツサーバ２０ａから送信された最新のコンテンツを元に作成された画面データに更新する。
更に、出力機能分割サーバ４０では、描画用タイマによる割り込みを検知して、新たな画面データを作成し、記憶装置４５に保持されている画面データと比較する。画面データ送信制御部４１は、上記の両画面データに差分がある場合は、この差分を示す差分画面データを上記に従い、クライアント１０に送信する。この差分は、例えば、コンテンツサーバ２０ａがプッシュ処理により新しいコンテンツを送信する、もしくは、コンテンツに含まれるプログラムにより画面データが動的に変化する、もしくは、ユーザの操作、などにより発生する。
【００４５】
クライアント１０は、出力機能分割サーバ４０からの差分画面データを、ネットワーク３０を介して受信したら、この差分画面データに基づいて表示画面を更新するとともに、この差分画面データを受信したことを示す応答メッセージを出力機能分割サーバ４０の画面データ送信制御部４１に送信する。信頼性のあるプロトコル（例えば、ＴＣＰ）を用いて差分画面データを送信する場合、応答メッセージを省略してもよい。
【００４６】
また、ユーザがクライアント１０にてスクロール操作を行ったときには、上記のように、出力機能分割サーバ４０は、スクロール量に相当する差分画面データをクライアント１０に送信する。このスクロール量に相当する差分画面データの送信については、上記のように、所定値だけ増加させたスクロール量に相当する差分画面データを送信する、先読み処理を適用してもよい。
【００４７】
また、クライアント１０がコンテンツ取得要求を、出力機能分割サーバ４０に送信したときには、コンテンツ取得要求を受信した出力機能分割サーバ４０は、コンテンツ取得要求転送部４６を介して画面データの作成に必要なコンテンツをコンテンツサーバ２０ａより取得した上で、画面データ作成部４２は、画面データを作成する。コンテンツ取得要求を受信した画面データ作成部は、一定時間が経過するまでは、描画処理間隔を広げる。スケジューラ４３は、上記により広げられた描画処理間隔に基づき画面データ作成部４２に描画開始の指示を行う間隔を一定時間広げることになる。つまり、上記のように、描画処理間隔の間引き処理を行なう。
【００４８】
（第３の実施例）
図８は、本発明の実施形態における画面転送システムの機能構成の第３の例を示す図である。  
図８に示したシステムは、Ｗｅｂサーバ２０ｂが送信するＷｅｂコンテンツ（画面を作成するために必要な情報）を用いて、クライアント１０にて画面データを表示するシステムにおいて、クライアント１０とＷｅｂサーバ２０ｂの間に出力機能分割サーバ４０を配置し、画面データを出力機能分割サーバ４０にて作成する。
【００４９】
クライアント１０は、Ｗｅｂコンテンツ取得要求を送信する事前に、出力機能分割サーバに対する接続要求を管理サーバ５０に送信し、管理サーバ５０より出力機能分割サーバの接続先の情報（例えば、アドレスやポート番号）を受け取る。クライアント１０は、Ｗｅｂコンテンツ取得要求をネットワーク（ＮＷ）３０を介して出力機能分割サーバ４０に送信する。Ｗｅｂコンテンツ取得要求には、Ｗｅｂサーバ、および、Ｗｅｂコンテンツを識別する情報（例えば、ＵＲＬ）を含む。
【００５０】
出力機能分割サーバ４０は、コンテンツ取得要求送転送部４６を介して、Ｗｅｂコンテンツ取得要求をコンテンツサーバ２０ａに送信し、応答を得る。出力機能分割サーバ４０は、Ｗｅｂコンテンツサーバ２０ｂからの応答をもとに画面データ作成部４２にて、最新の画面データを作成する。
【００５１】
Ｗｅｂサーバ２０ｂから前回送信されたＷｅｂコンテンツを元に作成された画面データは、出力機能分割サーバ４０内の画面データ保持部４４により出力機能分割サーバ４０内の記憶装置４５に保持される。画面データ送信制御部４１は、Ｗｅｂサーバ２０ｂから送信された最新のＷｅｂコンテンツにより作成された画面データと、上記のように記憶装置４５に保持された画面データ、つまりＷｅｂサーバ２０ｂから出力機能分割サーバ４０へ前回送信されたＷｅｂコンテンツを元に作成された画面データ比較する。上記の両画面データに差分がある場合は、この差分を示す差分画面データをクライアント１０に送信する。この差分は、例えば、Ｗｅｂサーバ２０ｂがプッシュ処理により新しいコンテンツを送信する、もしくは、Ｗｅｂコンテンツに含まれるプログラムにより画面データが動的に変化する、もしくは、ユーザ操作などにより発生する。
【００５２】
画面データ保持部４４は、上記のように記憶装置４５に保持されている画面データを、上記のように最新の画面データに更新する。
【００５３】
クライアント１０は、出力機能分割サーバ４０からの差分画面データを、ネットワーク３０を介して受信した後、差分画面データに基づいて表示画面を更新するとともに、この差分画面データを受信したことを示す応答メッセージを出力機能分割サーバ４０の画面データ送信制御部４１に送信する。信頼性のあるプロトコル（例えば、ＴＣＰ）を用いて差分画面データを送信する場合、応答メッセージを省略してもよい。
【００５４】
また、ユーザがクライアント１０にてスクロール操作を行ったときには、上記のように、出力機能分割サーバ４０は、スクロール量に相当する差分画面データをクライアント１０に送信する。このスクロール量に相当する差分画面データの送信については、上記のように、実際のスクロール量を所定値だけ増加させたスクロール量に相当する差分画面データを送信する、先読み処理を適用してもよい。
【００５５】
また、クライアント１０がＷｅｂコンテンツ取得要求を、出力機能分割サーバ４０に送信したときには、Ｗｅｂコンテンツ取得要求を受信した出力機能分割サーバ４０は、コンテンツ取得要求転送部４６を介して画面データの作成に必要なコンテンツをＷｅｂサーバ２０ｂより取得した上で、画面データ作成部４２は、画面データを作成する。Ｗｅｂコンテンツ取得要求を受信した画面データ作成部４２は、一定時間が経過するまでは、描画処理間隔を広げる。スケジューラ４３は、上記により広げられた描画処理間隔に基づき画面データ作成部４２に描画開始の指示を行う間隔を一定時間広げる。つまり、上記のように、描画処理間隔の間引き処理を行なう。
【００５６】
以上説明した実施形態では、ユーザ操作などに基づく画面データの更新を考慮した上で最低限の画面データを送信することができるので、画面更新に対する応答性能を維持した上で、利用する帯域を削減することが可能となる。
【００５７】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【００５８】
また、実施形態に記載した手法は、計算機（コンピュータ）に実行させることができるプログラム（ソフトウエア手段）として、例えば磁気ディスク（フロッピー（登録商標）ディスク、ハードディスク等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ、ＭＯ等）、半導体メモリ（ＲＯＭ、ＲＡＭ、フラッシュメモリ等）等の記録媒体に格納し、また通信媒体により伝送して頒布することもできる。なお、媒体側に格納されるプログラムには、計算機に実行させるソフトウエア手段（実行プログラムのみならずテーブルやデータ構造も含む）を計算機内に構成させる設定プログラムをも含む。本装置を実現する計算機は、記録媒体に記録されたプログラムを読み込み、また場合により設定プログラムによりソフトウエア手段を構築し、このソフトウエア手段によって動作が制御されることにより上述した処理を実行する。なお、本明細書でいう記録媒体は、頒布用に限らず、計算機内部あるいはネットワークを介して接続される機器に設けられた磁気ディスクや半導体メモリ等の記憶媒体を含むものである。
【符号の説明】
【００５９】
１０…クライアント、２０…サーバ、２０ａ…コンテンツサーバ、２０ｂ…Ｗｅｂサーバ、２１，４１…画面データ送信制御部、２２，４２…画面データ作成部、２３，４３…スケジューラ、２４，４４…画面データ保持部、２５，４５…記憶装置、４６…コンテンツ取得要求送転送部、３０…ネットワーク、４０…出力機能分割サーバ、５０…管理サーバ。
【図１】
0005982436.tif 000002
【図２】
0005982436.tif 000003
【図３】
0005982436.tif 000004
【図４】
0005982436.tif 000005
【図５】
0005982436.tif 000006
【図６】
0005982436.tif 000007
【図７】
0005982436.tif 000008
【図８】
0005982436.tif 000009