JP2014207529A - 画面データ転送装置、画面表示システム、処理負荷軽減方法、及び処理負荷軽減プログラム - Google Patents

画面データ転送装置、画面表示システム、処理負荷軽減方法、及び処理負荷軽減プログラム Download PDF

Info

Publication number
JP2014207529A
JP2014207529A JP2013083214A JP2013083214A JP2014207529A JP 2014207529 A JP2014207529 A JP 2014207529A JP 2013083214 A JP2013083214 A JP 2013083214A JP 2013083214 A JP2013083214 A JP 2013083214A JP 2014207529 A JP2014207529 A JP 2014207529A
Authority
JP
Japan
Prior art keywords
screen data
screen
compression
processing
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013083214A
Other languages
English (en)
Other versions
JP6135266B2 (ja
Inventor
智大 今井
Tomohiro Imai
智大 今井
松井 一樹
Kazuki Matsui
一樹 松井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013083214A priority Critical patent/JP6135266B2/ja
Priority to US14/195,950 priority patent/US9043392B2/en
Publication of JP2014207529A publication Critical patent/JP2014207529A/ja
Application granted granted Critical
Publication of JP6135266B2 publication Critical patent/JP6135266B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/02Handling of images in compressed format, e.g. JPEG, MPEG
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2350/00Solving problems of bandwidth in display systems
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • G09G2370/022Centralised management of display operation, e.g. in a server instead of locally

Abstract

【課題】ゲートウェイの負荷を軽減する。【解決手段】画面の中で、変更された頻度が頻度閾値以上の高頻度画面更新領域を検出し、ゲートウェイ16の負荷を検出する。検出された処理負荷が負荷閾値以上の場合(309Y)において、画面データにおける変更された部分が、高頻度画面更新領域と重なる場合には(310Y)、ゲートウェイ16で圧縮しかつ圧縮された画面データが送信される第1のルートに(312)、変更された部分が、高頻度画面更新領域と重ならない場合には(310N)、ゲートウェイ16で圧縮処理が実行されずに画面データが送信される第2のルートに(314)、画面データの処理ルートを振り分ける。第2のルートの場合、ゲートウェイ16で圧縮処理が実行されないので、ゲートウェイ16の負荷を軽減することができる。【選択図】図12

Description

開示の技術は、画面データ転送装置、画面表示システム、及び処理負荷軽減方法に関する。
シンクライアント(thin client)というシステム(system)が知られている。シンクライアントシステムでは、クライアント(client)に最低限の機能しか持たせず、サーバ(server)でアプリケーション(application)やファイル(file)などのリソース(resource)を管理するようにシステムが構築される。
シンクライアントシステムは、実際にはサーバが処理を実行した処理結果やサーバが保持するデータをクライアントに表示させつつも、あたかもクライアントが主体となって処理を実行したり、データを保持しているかのように振る舞ったりしている。
ところで、古いリモート画面制御プロトコルを、性能の良い新規リモート画面制御プロトコルへ変換する変換ゲートウェイが存在する。そして、クライアントとサーバとの間に変換ゲートウェイが位置するシンクライアントシステムも存在する。この場合、変換ゲートウェイは、サーバから古いリモート画面制御プロトコルで画面データを受信し、この画面データを、新規リモート画面制御プロトコルに変換してクライアントに転送する。
特開2011−238014号公報 特開2002−007238号公報 特開2003−167745号公報
ところで、図24に示すように、変換ゲートウェイ506は、複数クライアント502A1、502A2、・・・と通信する場合がある。この場合、変換ゲートウェイ506は、各クライアント502A1等から要求された処理(セッション)を仲介する処理を行う。変換ゲートウェイ506は、各セッションで、上記新規リモート画面制御プロトコルへ変換する処理を行う。具体的には、「画面取得」、「画面描画」、「圧縮」、及び「転送」を行う。更に詳細には、「画面取得」では、サーバから画面データを含むデータを取得する。「画面描画」では、取得した画面データを展開してビットマップデータとしてフレームバッファ上に描画する。「圧縮」では、フレームバッファ中から送信する必要がある領域を切り出して圧縮を行う。「転送」では、圧縮したデータの転送を行う。
このように変換ゲートウェイで仲介するセッション数が増加すると、変換ゲートウェイの負荷が増加する。これにより要求される既定時間内に処理が終了しないことによる提供サービス性能、即ち、画面の一定時間内における更新回数や画面データの圧縮率などが劣化する。
開示の技術は、1つの側面として、画面データ転送装置の負荷を軽減することが目的である。
開示の技術において、通信部は、画面に表示する位置を示す位置情報を含みかつ画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを受信すると共に、画面データを送信する。圧縮部は、通信部により受信された画面データについて、第1の圧縮処理より圧縮率が高い第2の圧縮処理を実行する。高頻度画面更新領域検出部は、通信部により一定期間内に受信された複数の画面データの位置情報に基づいて、画面の中で、変更された頻度が頻度閾値以上の高頻度画面更新領域を検出する。処理負荷検出部は、自装置の処理負荷を検出する。画面データ振り分け部は、処理負荷が負荷閾値以上の場合に、画面データの処理ルートを、第1のルート又は第2のルートに振り掛ける。前者は、一定期間後に受信された画面データの位置情報に基づく画面データにおける変更された部分が高頻度画面更新領域と重なるときである。後者は、上記変更された部分が高頻度画面更新領域と重ならないときである。
開示の技術は、1つの側面として、画面データ転送装置の負荷を軽減することができる、という効果を有する。
第1の実施の形態のシンクライアントシステムの構成を示す図である。 ゲートウェイ16のハードウェア構成を示すブロック図である。 第1の実施の形態のゲートウェイ16のROM2記憶されている画面データ転送プログラムの構成を示す図である。 第1の実施の形態のシンクライアントシステムの機能ブロック図である。 第1の実施の形態の画面更新通知部124が実行する画面更新通知処理を示すフローチャートである。 第1の実施の形態の処理負荷検出部106が実行する処理負荷検出処理を示すフローチャートである。 第1の実施の形態の可用帯域推定部108が実行する可用帯域推定処理を示すフローチャートである。 第1の実施の形態の高頻度画面更新領域検出部110が実行する高頻度画面更新検出処理を示すフローチャートである。 (A)から(E)は、高頻度画面更新領域の検出の原理を説明する説明図であり、(A)は画面データがサーバから送信されたタイミングを示すとともに、各画面データの画面における位置を示し、(B)は画面を複数の領域(メッシュ)に分割された様子を示し、(C)は、各メッシュの更新回数のヒストグラムを示し、(D)は、抽出された高頻度画面更新領域を示し、(E)は抽出された高頻度画面更新領域から矩形の領域を設定する様子を示している。 第1の実施の形態の高頻度画面更新領域縮小処理部112が実行する高頻度画面更新領域縮小処理を示すフローチャートである。 (A)から(C)は、高頻度画面更新領域の縮小処理を説明する説明図であり、(A)は縮小前の高頻度画面更新領域を示し、(B)は、高頻度画面更新領域内の各メッシュと更新回数のヒストグラムを示し、(C)は、縮小された高頻度画面更新領域が示されている。 第1の実施の形態の画面データ振り分け部114が実行する画面データ振り分け処理を示すフローチャートである。 第1の実施の形態の処理を説明する説明図であり、セッションがどのようなセッションであり、負荷がどのような場合に、どのような圧縮処理をされるのかを説明する。 第1の実施の形態の各部の処理のタイミングを示すタイミングチャートである。 第1の実施の形態の高頻度画面更新領域縮小部112が実行する検証処理を示すフローチャートである。 第2の実施の形態における画面データ転送プログラムの構成を示す図である。 第2の実施の形態の機能ブロック図である。 第2の実施の形態の画面データの振り分け部が実行する画面データ振り分け処理を示すフローチャートである。 第3の実施の形態の画面データ転送プログラムの構成を示す図である。 第3の実施の形態の機能ブロック図である。 第3の実施の形態の画像データ振り分け部が実行する画面データ振り分け処理を示すフローチャートである。 第3の実施の形態における可用帯域に対応して、描画コマンド圧縮率の閾値を記憶する閾値設定テーブルを示す図である。 第3の実施の形態の各部の処理のタイミングを示すタイミングチャートである。 従来技術におけるシンクライアントシステムの処理の概要を説明する説明図である。
以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。
[第1の実施の形態]
第1の実施の形態の構成を説明する。図1に示すように、第1の実施の形態のシンクライアントシステム(thin client system)は、クライアント(client)端末(以下、「クライアント」という)12とサーバ(server)装置(以下、「サーバ」という)14とを備えている。第1の実施の形態では、クライアント12とサーバ14との間に、変換ゲートウェイ(gateway)サーバ(以下、「ゲートウェイ」という)16を設置されている。図1には、1つのクライアント12及び1つのサーバ14のみが示されているが、各々は複数設けてもよい。
なお、クライアント12、サーバ14、及びゲートウェイ16はそれぞれ、本開示の技術の画面表示端末、画面データ送信装置、及び画面データ転送装置に対応し、シンクライアントシステムは、本開示の技術の画面表示システムに対応する。
第1の実施の形態のシンクライアントシステムは、クライアント12が表示する画面をリモート(remote)でサーバ14に制御させるものである。つまり、シンクライアントシステムは、実際にはサーバ14が実行した処理結果や保持するデータをクライアント12に表示させつつも、あたかもクライアント12が主体となって処理を実行したり、データを保持したりしているかのように振る舞う。
サーバ14は、クライアント12に表示させる画面をリモートで制御するサービスを提供するコンピュータ(computer)である。このサーバ14には、サーバ向けのリモート画面制御用のアプリケーション(application)がインストール(install)またはプリインストール(preinstall)される。
クライアント12は、サーバ14によるリモート画面制御サービスの提供を受ける側のコンピュータである。かかるクライアント12の一例としては、パーソナルコンピュータ(personal computer)など固定端末の他、携帯電話機、PHS(Personal Handyphone System)やPDA(Personal Digital Assistant)などの移動体端末を適用することもできる。このクライアント12には、クライアント向けのリモート画面制御用アプリケーションがインストールまたはプリインストールされる。各ユーザは、クライアント12を利用してサーバ14上のデスクトップ環境を利用する。第1の実施の形態では、サーバ14上に存在するデスクトップ画面のサイズとクライアント12が持つ画面のサイズは同一としている。サーバ14及びクライアント12は、表示装置の表示画面上で任意のアプリケーションを利用できる。また、各ユーザは、クライアント12を利用することにより、同一のアクセス回線ばかりではなく、異なる性能のアクセス回線を通じてゲートウェイ16へアクセスすることができる。
クライアント12及びサーバ14は、ゲートウェイ16を経由して相互に通信する。ゲートウェイ16は、サーバ14及びクライアント12の間でのリモート画面制御プロトコルを変換して反対側にデータを送信する。
図2に示すように、ゲートウェイ16は、CPU(中央処理装置:Central Processing Unit)20、ROM(Read Only Memory)22、及びRAM(Random Access Memory)24が、バス34を介して相互に接続されている。バス34には更に、磁気ディスクドライブ26、通信インターフェイス30及び外部インターフェイス32が接続されている。なお、磁気ディスクドライブ26には、磁気ディスク28が内蔵されている。通信インターフェイス30には、クライアント12と、サーバ14とが接続されている。
サーバ14は、ゲートウェイ16と同様の構成であるので、その説明を省略する。クライアント12も、ゲートウェイ16とほぼ同様の構成であるが、クライアント12には、バス34に接続されている図示しない入力部及び表示部が更に設けられている。
なお、クライアント12の入力部は、各種の情報、例えば後述のクライアント12の各部に対する指示入力を受け付ける入力デバイスであり、一例としては、キーボード(keyboard)やマウス(mouse)などを適用できる。
クライアント12の表示部は、各種の情報、例えばサーバ14からゲートウェイ16を介して送信されたデスクトップ画面などを表示する表示デバイスである。一例としては、モニタ(monitor)、ディスプレイ(display)やタッチパネル(touch panel)などを適用できる。なお、表示部も、上記マウスと協働して、ポインティングデバイス(pointing device)機能を実現する。
クライアント12及びゲートウェイ16間、サーバ14及びゲートウェイ16間は、有線または無線を問わず、インターネット(Internet)、LAN(Local Area Network)やVPN(Virtual Private Network)などの任意の種類の通信網を採用できる。なお、サーバ14は、画面データの送信のためのプロトコルとしては、古いリモート画面制御プロトコルを用いるが、ゲートウェイ16は、画面データの転送のためのプロトコルとしては、古いリモート画面制御プロトコルを用いる。
ゲートウェイ16のROM22には、図3に示す画面データ転送プログラムが記憶されている。CPU20は、ROM22から画面データ転送プログラムを読み出してRAM24に展開し、画面データ転送プログラムが有するプロセスを実行する。画面データ転送プログラムは、通信プロセス40、画面データ取得プロセス44、操作情報取得プロセス46を有する。また、画面データ転送プログラムは、処理負荷検出プロセス48、可用帯域推定プロセス50、高頻度画面更新領域検出プロセス52、高頻度画面更新領域縮小プロセス54、画面データ振り分けプロセス56を有する。更に、画面データ転送プログラムは、表示画面生成プロセス58、更新矩形作成プロセス60、更新矩形変換プロセス62、画面更新通知プロセス64を有する。
なお、ここでは画面データ転送プログラムをROM22から読み出す場合を例示したが、必ずしも最初からROM22に記憶させておく必要はない。例えば、ゲートウェイ16に接続されて使用されるSSD(Solid State Drive)、DVDディスク、ICカード、光磁気ディスク、CD−ROMなどの任意の「可搬型の記憶媒体」に先ずは画面データ転送プログラムを記憶させておいてもよい。そして、ゲートウェイ16がこれらの可搬型の記憶媒体からは画面データ転送プログラムを取得して実行するようにしてもよい。また、通信回線を介してゲートウェイ16に接続される他のコンピュータ又はサーバ装置等の記憶部に画面データ転送プログラムを記憶させておいてもよい。この場合、ゲートウェイ16は他のコンピュータ又はサーバ装置等から画面データ転送プログラムを取得して実行する。
図4には、第1の実施の形態のシンクライアントシステムの機能ブロック図が示されている。クライアント12は、操作情報取得部72、通信部74、画面更新情報取得部76、画像データ処理部78、フレームバッファ80、及び画面表示部82を有する。
操作情報取得部72は、図示しない入力部を介して入力された操作情報を受信する。操作情報の一例としては、マウスの左右のクリックを始め、ダブルクリックやドラッグ、マウスの移動操作を介して得られたマウスカーソルの移動量の情報がある。他の一例としては、マウスホイールの回転量、キーボードのうち押下されたキーの種別などもある。
通信部74は、操作情報のサーバ14への送信ならびのゲートウェイ16からのデータの受信を行う。画面更新情報取得部76は、ゲートウェイ16から通信部74を通して受信した画面データを取得し、取得した画面データを描画可能なように処理を行う。画像データ処理部78は、取得した画面データの描画処理を行う。フレームバッファ80は、描画処理の結果のデータが書き込まれる。画面表示部82は、このフレームバッファ80のデータを図示していない表示部に表示する。
サーバ14は、操作情報取得部84、OS実行部86、表示画面生成部88、フレームバッファ90、更新矩形作成部92、更新矩形変換部94、画面更新通知部96、及び通信部98を有する。
通信部98は、ゲートウェイ16とのデータの送受信を行う。
操作情報取得部84は、ゲートウェイ16から通信部98を介して受信した上記操作情報を取得する。OS実行部86は、サーバ14内のOS(Operating System)を実行する。例えば、OS実行部86は、操作情報取得部84により取得された操作情報からアプリケーションの起動指示やアプリケーションに対するコマンドを検出する。一例としては、OS実行部86は、アプリケーションのアイコン(icon)上でダブルクリックを検出した場合に、そのアイコンに対応するアプリケーションを起動する。他の一例としては、起動中のアプリケーションの操作画面、いわゆるウィンドウ(window)上でコマンド(command)の実行を要求する操作を検出した場合に、OS実行部86は、そのコマンドを実行する。
表示画面生成部88は、OS実行部86の実行に従って画面更新を行う。例えば、OS実行部86の実行による処理結果の表示用イメージ(image)をフレームバッファ90に描画する。フレームバッファ90は、更新された画面が書き込まれ、当該画面のデータのビットマップデータを記憶する記憶デバイスである。更新矩形作成部92は、フレームバッファ90を定期的にチェックし、変化があった領域を更新矩形として生成を行う。即ち、更新矩形作成部92は、前回のフレーム生成時にクライアント12で表示させていたデスクトップ画面と、今回のフレーム生成時にフレームバッファ90へ書き込まれたデスクトップ画面とを比較する。そして、更新矩形作成部92は、前回のフレームから変更があった部分の画素をつなげ合わせた上で矩形に整形した更新矩形の画像を生成する。更新矩形変換部94は、更新矩形を圧縮し高画質画面データを作成する。画面更新通知部96は、高画質画面データを、通知部98及びゲートウェイ16を介して、クライアント12に通知する。
ゲートウェイ16は、通信部100、画面データ取得部102、操作情報取得部104、表示画面生成部116、フレームバッファ118、更新矩形作成部120、更新矩形変換部122、画面更新通知部124を有する。また、ゲートウェイ16は、処理負荷検出部106、可用帯域推定部108、高頻度画面更新領域検出部110、高頻度画面更新領域縮小部112、及び画面データ振り分け部114を有する。通信部100は、クライアント12及びサーバ14とのデータの送受信を行う。操作情報取得部104は、クライアント12から受信した操作情報を取得し、サーバ14へ送信する。画面データ取得部102は、サーバ14からの画面データを、通信部100を介して取得する。高頻度画面更新領域検出部110は、取得した画面データを利用して画面中で更新が激しい領域(以下、高頻度画面更新領域という)を推定する。可用帯域推定部108は、ネットワークの通信状況を利用してゲートウェイ16とクライアント12と間のネットワーク帯域の利用可能量を推定する。処理負荷検出部106は、ゲートウェイ16のCPU20の負荷を利用してゲートウェイ16の負荷情報を検出する。高頻度画面更新領域縮小部112は、可用帯域推定部108ならびに処理負荷検出部106の情報を利用し高頻度画面更新領域の縮小・拡張処理を行う。画面データ振り分け部114は、高頻度画面更新領域の情報と処理負荷及び可用帯域の各情報とを利用して次の振り分けを行う。即ち、画面データ振り分け部114は、画面データの処理ルートを、表示画面生成部116〜更新矩形変換部122により処理される第1のルートと、これらの各部116〜122を回避(バイパス)して、画面データが素通しされる第2のルートに振り分ける。画面データ振り分け部114は、未処理セッションの画面データが、高頻度画面更新領域内なら第1のルートに、高頻度画面更新領域外なら第2のルートに、振り分ける。表示画面生成部116は、ゲートウェイ16内でサーバ14から受信した画面データを展開し、RAM24内のフレームバッファ118へ書き込む。フレームバッファ118は、展開された画面データを保持する。更新矩形作成部120は、フレームバッファ118を定期的にチェックし、変化があった領域を更新矩形として生成を行う。更新矩形変換部122は、更新矩形を圧縮し高画質画面データを作成する。画面更新通知部124は、高画質画面データを、通知部100を介してクライアント12へ通知する。
サーバ14の更新矩形変換部94が実行する圧縮処理は、ゲートウェイ16の更新矩形変換部122が実行する圧縮処理より低圧縮である。サーバ14の更新矩形変換部94が実行する圧縮処理は、本開示の技術の第1の圧縮処理に対応し、ゲートウェイ16の更新矩形変換部122が実行する圧縮処理は、本開示の技術の第2の圧縮処理に対応する。
また、表示画面生成部116〜更新矩形変換部122の各部により処理されるルートは、本開示の技術の第1のルートに対応する。これらの各部116〜122をバイパスして、画面データ振り分け部114から直接画面更新通知部124に進むルートは、本開示の技術の第2のルートに対応する。
なお、CPU20が、上記プロセス42〜64の各々を実行することにより、図4の上記各部100〜116、120〜124として動作する。
次に、第1の実施の形態の作用を説明する。
図5には、ゲートウェイ16の画面更新通知部124が実行する画面更新通知処理が示されている。本画面更新通知処理プログラムは、所定のタイミングでスタートし、ステップ132で、画面更新通知部124は、サーバ14からの画面データを、通信部100を介して受信したか否かを判断する。画面更新通知部124が、画面データを受信していないと判断した場合には、再度本処理(ステップ132)を実行し、画面データを受信したと判断した場合には、ステップ134に進む。ステップ134で、画面更新通知部124は、受信した画面データの種類(動画、静止画、未変換)に応じて、その情報を表すヘッダを画面データに付与する。ステップ136で、画面更新通知部124は、画面データのデータサイズ、描画領域サイズ(後述するw×h)を上記ヘッダに加える。なお、ステップ134とステップ136の順番は逆でもよい。
ステップ138で、画面更新通知部124は、通知部100へ画面データを通知し、ステップ140で、画面更新通知部124は、通知した画面データのデータサイズを可用帯域推定部108へ通知して、ステップ130に戻る。
第1の実施の形態では、サーバ14は画面データを第1の圧縮処理により圧縮し、当該圧縮した画面データをサーバ16に送信する。画面データは、表示する画面における変更された部分のみのデータであり、この画面データには、変更された部分の位置を示す情報(x、y)及び当該部分の幅(w)と高さ(h)の情報も含まれている。
図6には、処理負荷検出部106が実行する処理負荷検出処理が示されている。処理負荷検出処理は時刻T2(図14参照)でスタートする。処理負荷検出部106は、本開示の技術の処理負荷検出部に対応する。
ステップ150で、処理負荷検出部106は、一定時間経過したか否かを判断する。処理負荷検出部106が一定時間経過したと判断した場合に、ステップ152に進む。ステップ152で、処理負荷検出部106は、ゲートウェイ16の処理負荷を検出し、ステップ54で、処理負荷検出部106は、処理負荷情報として設定して、ステップ150に戻る。
図7には、可用帯域推定部108がセッション毎に実行する可用帯域推定処理が示されている。可用帯域推定処理プログラムは、時刻T3(図14参照)でスタートする。可用帯域推定部108は、本開示の技術の可用帯域推定部に対応する。詳細には後述するが、可用帯域は、送信先であるクライアント12が受信処理を予め定められた期間内に完了することができる画面データのデータ量である。この予め定められた期間は、クライアント12が順に受信した複数の画面データ各々に基づいて表示部に画面を順に表示する際の、画面の切り替えが、要求される時間内に実行されるように予め定められている。画面の切り替えは、1つの画面データに基づく画面の表示と、当該1つの画面データの次に受信した画面データに基づく画面の表示との切り替えである。
ステップ162で、可用帯域推定部108は、クライアント12から送信された画面データ受信応答を受信する。ここで、画面データ受信応答は、クライアント12において画面データが受信されるごとにクライアント12が送信する、どのくらいの大きさの画面データがクライアント12に到達したか否かを表すデータである。ステップ164で、可用帯域推定部108は、画面更新通知部124からデータサイズ(図5のステップ140参照)を取得する。なお、ステップ162とステップ164の順番は逆でもよい。
ステップ166で、可用帯域推定部108は、一定時間経過したか否かを判断し、一定時間を経過していないと判断した場合には、ステップ162に戻って、以上の処理(162〜166)を実行する。
ステップ166で一定時間経過したと判断された場合、可用帯域推定処理はステップ168に移行される。ステップ168で、可用帯域推定部108は、一定期間のうちに画面更新通知部124から通知されたデータサイズを合計する。ステップ170で、可用帯域推定部108は、ステップ168で計算されたデータサイズの合計を送信データ転送量(送信を試みたデータ量)として設定する。なお、当該送信データ転送量は、詳細には後述する検証処理(図15のステップ324)で用いられる。
ステップ172で、可用帯域推定部108は、一定期間のうちに画面データ受信応答で通知されたデータサイズを合計する。なお、ステップ172は、ステップ168の前に実行してよい。
ステップ174で、可用帯域推定部108は、画面更新通知部124から通知されたデータサイズの合計から、画面データ受信応答で通知されたデータサイズの合計を減算することにより、未受信データサイズを算出する。ステップ176で、可用帯域推定部108は、画面データ受信応答で通知されたデータサイズの合計を、一定時間間隔で割った値を算出する。本ステップ176で算出された値は、ゲートウェイ16からクライアント12に到達した画面データのデータ量の時間平均値である。
ステップ178で、可用帯域推定部108は、ステップ174で算出した未受信データサイズが閾値以上か否かを判断する。未受信データが閾値以上である場合は、次の技術的意味を有する。すなわち、ゲートウェイ16がクライアント12に一定期間に送信しようとした画面データの量が、クライアント12が当該一定期間に現実に受信できた画面データの量より、閾値以上大きいことを意味する。つまり、クライアント12とゲートウェイ16との間の回線が混んでいることが原因で、ゲートウェイ16からの画面データがクライアント12に、ゲートウェイ16側で想定した量の画面データが到達していない状態である。
このように、ステップ178が肯定判定された場合には、現在推定した可用帯域としてのデータ転送量が、クライアント12が現実に受信できたデータ量より大きい。そこで、ステップ176で算出した、クライアント12に到達した画面データのデータ量の時間平均値を可用帯域として設定する。
一方、ステップ178が否定判定された場合には、ゲートウェイ16がクライアント12に送信しようとした画面データがクライアント12に現実に受信できた状態である。この場合には、ステップ181で、可用帯域推定部108は、ステップ176で算出した値が現在設定されている可用帯域値以上か否かを判断する。算出した値が現在の可用帯域値以上である場合は、次の技術的意味を有する。すなわち、最新の可用帯域値が設定されている可用帯域値より大きくなり、より多くのデータ転送が可能となったことを意味する。この場合には、ステップ183で、可用帯域推定部108は、現在設定されている可用帯域値をステップ176で算出した値に更新する。一方、ステップ176で算出した値が現在設定されている可用帯域値より小さい場合は、次の技術的意味を有する。すなわち、ステップ176で算出した値はクライアント12とゲートウェイ16の間の回線の実際の可用帯域の値より小さい値であるということを意味する。つまり、画面データは実際の可用帯域よりも小さい量で行われた可能性が存在するため、可用帯域の上限を表す可用帯域値を正しく設定することはできない状態である。この場合には、ステップ182で、可用帯域推定部108は、可用帯域値を設定できないため現在設定されている可用帯域値を変更せずにそのまま引き継ぐ。これらのステップが実行されると、ステップ162に戻って、以上の処理(162〜182)を実行する。
図8には、高頻度画面更新領域検出部110がセッション毎に実行する高頻度画面更新検出処理が示されている。高頻度画面更新領域検出部110は、本開示の技術の高頻度画面更新領域検出部に対応する。
本処理は、所定の時刻T1(図14)でスタートし、ステップ192で、高頻度画面更新領域検出部110は、新規の画面データを受信したか否かを判断する。新規の画面データを受信したと判断した場合に、本処理は、ステップ194に移行される。
ステップ194で、高頻度画面更新領域検出部110は、更新領域情報を抽出する。すなわち、前述したように、画像データには、画面の異なる部分の位置(x、y)の情報が含まれているので、高頻度画面更新領域検出部110は、この位置(x、y)の情報から更新領域情報を抽出する。例えば、図9(A)に示すように、時刻t1における画面データ212には、画面242における位置(x1、y1)の情報が含まれている。高頻度画面更新領域検出部110は、この情報を更新領域情報として抽出する。
ところで、第1の実施の形態では、画面には、図9(B)に示すように、当該画面をn×m個に分割した領域(メッシュ)が想定されている。
ステップ196で、高頻度画面更新領域検出部110は、更新領域と重なるメッシュの更新カウントを増加させる。すなわち、図9(C)に示すように、X軸にメッシュの各位置が対応づけられ、Y軸には、各位置の更新カウントが対応づけられたヒストグラムを利用して、高頻度画面更新領域検出部110は、ステップ196を実行する。
ステップ198で、高頻度画面更新領域検出部110は、一定時間経過したか否かを判断し、一定時間経過していないと判断した場合にはステップ192に戻って、以上の処理(192〜198)を実行する。
ステップ198で、高頻度画面更新領域検出部110が、一定時間経過したと判断した場合には、ステップ200で、高頻度画面更新領域検出部110は、メッシュの中から更新カウント値が図9(C)に示すように閾値H1以上のメッシュを抽出する。これにより、図9(D)に示すようにメッシュ262、264、複数のメッシュ群266、268が抽出される。なお、閾値H1は、本開示の技術の頻度閾値に対応する。
ステップ202で、計算処理を単純化するため、高頻度画面更新領域検出部110は、抽出したメッシュで閾値以下の距離にあるものも合成して、矩形に成形を行う。すなわち、図9(E)に示すように、メッシュ262、264から矩形領域272を形成し、メッシュ群266から矩形領域274を形成し、メッシュ群268から矩形領域276を形成する。ステップ204で、高頻度画面更新領域検出部110は、成形した矩形領域を高頻度画面更新領域とする。
図10には、高頻度画面更新領域縮小部(以下、「縮小部」という)112がセッション毎に実行する高頻度画面更新縮小処理プログラムが示されている。高頻度画面更新領域縮小部112は、本開示の技術の高頻度画面更新領域変更部に対応する。
本処理は、時刻T4(図14参照)にスタートし、ステップ282で、縮小部112は、一定期間が経過したか否かを判断し、一定期間が経過した場合に、ステップ284に進む。
ステップ284では、縮小部112は、処理負荷検出部106から負荷情報を受信し、ステップ286で、受信した負荷情報に基づく負荷が閾値(例えば90%)以上か否かを判断する。この閾値は90%に限定されるものではなく、それより大きい値又は小さい値を、当該閾値とすることができる。なお、当該閾値は、本開示の技術の負荷閾値に対応する。
負荷が閾値以上でない場合には、ゲートウェイ16は、ゲートウェイ16の負荷を下げる必要のあるほど、負荷は大きくない状態である。この場合にはステップ282に戻って、以上の処理(ステップ282〜286)を実行する。
一方、負荷が閾値以上の場合には、ゲートウェイ16の状態は、その負荷を下げる必要のある状態である。そこで、以下の処理を実行する。ステップ288で、縮小部112は、各セッションの可用帯域をチェックする。なお、各セッションの可用帯域は前述した可用帯域推定処理(図7参照)により得られているので、この情報をチェックする。
ステップ290で、縮小部192は可用帯域が閾値(例えば、5Mbps)以上のセッションを未処理セッションに設定する。未処理セッションは、可用帯域が閾値以上であるので、送信する画面データのデータ量に余裕があるセッションである。なお、ステップ290は、未処理セッションを抽出するが、ゲートウェイ16の負荷が大きい状態であっても、未処理セッションが設定されなければ、以下の縮小処理は実行されない。
ステップ292で、未処理セッションにおける、高頻度画面更新領域検出部110からの高頻度画面更新領域情報と、メッシュ毎の更新回数データを受信する。これにより、例えば、図11(A)に示すように、高頻度画面更新領域の更新回数が、例えば、周囲が5回でありかつその中が10回の高頻度画面更新領域情報が受信される。
ステップ294で、縮小部112は、上記メッシュから更新回数が閾値(例えば、高頻度画面更新領域内の更新回数の平均+2)より高いメッシュ領域を抽出する。例えば、図11(A)に示された例では、上記各メッシュの更新回数が、図11(B)に示すように、5回のメッシュと10回のメッシュとに分かれている。そのうち、閾値(上記平均+2)H2より大きいメッシュが抽出され、図11(C)に示すように、更新回数10のメッシュのみの領域300が抽出される。閾値H2は上記平均+2に限定されず、それより多い値、又は小さい値(1)を当該閾値H2とすることができる。なお、閾値H2は、後述する大頻度閾値に対応する。
ステップ296で、縮小部112は、計算処理を単純化するため、抽出したメッシュで閾値以下の距離にあるものを合成し、矩形領域に成形を行い、ステップ298で、縮小処理部112は、成形した矩形を新しい高頻度画面更新領域と設定する。ステップ298の処理の後、本処理は、ステップ282に戻って、以上の処理(ステップ282〜298)が実行される。
図12には、画面データ振り分け部(以下、「振り分け部」という)114が実行する画面データ振り分け処理プログラムが示されている。本処理は、上記各部(106、108、110、112)とは、非同期にスタートする。
ステップ302で、振り分け部114は、セッション毎の高頻度画面更新領域の情報を取得する。図13に示すように、画面240において、高頻度画面更新領域Rw又はNRwの情報が取得される。
上記縮小処理(図10参照)に示すように、ゲートウェイの負荷が閾値以上でありかつ可用帯域の閾値が以上のセッションの場合においては、上記の縮小処理が実行される。よって、高頻度画面更新領域Rwよりも狭い縮小された高頻度画面更新領域NRwが取得される。
ステップ304で、振り分け部114は、未処理セッションのリスト(図10のステップ290で設定されている)を取得する。
ステップ306で、振り分け部114は、複数のセッション各々について、一つずつセッションを選択し、選択したセッションが未処理セッションか否かを判断する。上記選択したセッションが未処理セッションでない場合には、処理はステップ308に移行される。ステップ308で、振り分け部114は、選択したセッションにおける全ての画面データを表示画面生成部16に通知する。すなわち、画面データの処理ルートが、当該画面データについて上記高圧縮の圧縮処理が実行されるルートに振り分けられる。ステップ31の後では、本処理は、ステップ302に戻る。
ステップ306において、選択されたセッションが未処理セッションであると判断された場合には、本処理はステップ309に移行される。ステップ309で、振り分け部114は、処理負荷検出部106により検出された処理負荷が閾値以上か否かを判断する。なお、当該閾値は、本開示の技術における負荷閾値に対応する。処理負荷が閾値以上でない場合は、ゲートウェイ16における負荷を減らす必要は高くない。そこで、本処理は、ステップ314に移行される。
一方、処理負荷が閾値以上の場合は、ゲートウェイ16における負荷を減らす必要がある。そこで、ステップ310で、振り分け部114は、画面データが高頻度画面更新領域に含まれるか否かを判断する。画面データが高頻度画面更新領域に含まれる場合には、ステップ312で、振り分け部114は、画面データを、表示画面生成部116へ通知する。すなわち、画面データの処理ルートが第1のルートに振り分けられる。
画面データが高頻度画面更新領域に含まれない場合には、ステップ314で、振り分け部114は、画面データを、上記各部(116〜122)をバイパスして、画面更新通知部124に通知する。すなわち、画面データの処理ルートが、上記高圧縮の圧縮処理により実行されない第2のルートに振り分けられる。このように、上記第2のルートが選択される条件としては、第1に、選択されたセッションが未処理セッションであること、及び、第2に、ゲートウェイ16の負荷が閾値であるという二つの条件が満足される場合である。よって、ステップ306とステップ309の順番は逆でもよい。即ち、このように順番が逆の場合、ステップ309及びステップ306が否定判定されたそれぞれの場合には、ステップ308又はステップ314を実行する。また、ステップ309もステップ306も肯定判定された場合に、本処理はステップ310に移行される。
ステップ310が肯定判定される場合は、本開示の技術における、画面データにおいて変更された部分が高頻度画面更新領域に重なる場合に対応する。ステップ310が否定判定される場合は、本開示の技術における、画面データにおいて変更された部分が高頻度画面更新領域に重ならない場合に対応する。
なお、ステップ312及びステップ314が実行されると、本処理はステップ300に戻る。
以上の処理(ステップ308〜314)により次のように、画面データが処理される。
図13(A)に示すように、選択されたセッションが未処理セッションでない場合には、画面データの処理ルートとして高圧縮の圧縮処理が実行されるルートが選択される。よって、高圧縮の圧縮処理が画面データに施される。
図13(B)に示すように、選択されたセッションが未処理セッションであるが、ゲートウェイの負荷が大きくない場合には、次にように処理が実行される。即ち、高頻度画面更新領域として比較的面積が大きい高頻度画面更新領域Rwが使用される。そして、画面データG1が、比較的面積が大きい高頻度画面更新領域Rw内にある場合には、高圧縮の圧縮処理が実行される。しかし、画面データGが、上記比較的面積が大きい高頻度画面更新領域Rw外の場合には、画面データはゲートウェイ116では圧縮されず、サーバ14によって圧縮された状態でクライアント12にそのまま送信される。即ち、画面データがゲートウェイ16を素通りされる。よって、ゲートウェイの負荷が軽減される。
図13(C)に示すように選択されたセッションが、未処理セッションでありかつゲートウェイの16の負荷が大きい場合には、次のように処理が実行される。即ち、高頻度画面更新領域として比較的面積の狭い高頻度画面更新領域NRwが使用される。そして、画面データG1が比較的面積の狭い高頻度画面更新領域NRw外の場合には、ゲートウェイ16における高圧縮の圧縮処理が実行されない。即ち、サーバ14によって圧縮された状態のまま、クライアント12に送信される。即ち、画面データがゲートウェイ16を素通りされる。よって、ゲートウェイの負荷が軽減される。
図15には、縮小部112が実行する検証処理が示されている。検証処理を実現する検証処理プログラムは、高頻度画面更新領域縮小処理プログラムの一部である。すなわち、検証処理プログラムは、図4が示すように、縮小部112が、図10に示すステップが実行されて、ステップ282で、一定時間経過したか否かを待っている間に、時刻T5(図14参照)においてスタートする。
ステップ322で縮小部112は、図10に示すステップ282における一定期間とは異なる一定時間が経過したか否かを判断する。一定時間が経過したと判断された場合は、本処理はステップ324に進む。
ステップ324で、縮小部112は、可用帯域推定部108からデータ転送量(図7のステップ170参照)と可用帯域を受信する。ステップ326で、縮小部112は、処理負荷検出部106から負荷情報を受信する。ステップ324とステップ326の順番は逆でもよい。
ステップ328で、縮小部112は、データ転送量が可用帯域より大きいか否かを判断する。ここで、データ転送量が可用帯域より大きい場合とは、次の状態である。すなわち、ゲートウェイ16がクライアント12に送信している画面データのデータ量が、クライアント12が受信可能な一定時間あたりのデータ量よりも大きい状態である。つまり、ゲートウェイ16が多く送信しすぎている状態である。ゲートウェイ16で、画面データを圧縮していないために、ゲートウェイで圧縮する場合と比較して相対的にゲートウェイが送信するデータ量が多いからである。これは、高頻度画面更新領域が、縮小部112において縮小しすぎたためである。すなわち、ゲートウェイ16における圧縮の対象となる画面データが位置する領域が狭いからである。よって、高頻度画面更新領域を拡大する必要がある。そこで、ステップ332で、縮小部112は本セッションの高頻度画面更新領域の情報とメッシュごとの更新回数データを受信する。ステップ334で、縮小部112は、既存の新高頻度画面更新領域の抽出のための閾値を減少させる。例えば、閾値を1減少させる。なお、閾値を減少させる数は1に限定されず、1おり大きい数でもよい。なお、減少された閾値は、後述する小頻度閾値に対応する。
ここで、閾値(図9(C)の閾値H1)が減少されると、減少される前と比較すると、より少ない変更回数のメッシュであっても、変更回数が閾値より大きいと判断される場合が増える。従って、高頻度画面更新領域が拡大される。
一方、ステップ328で、データ転送量が可用帯域より大きいと判断されなかった場合には、本処理はステップ330に移行される。ステップ330で、縮小部112は、ゲートウェイ16の負荷の削減率が、既定の削減率(例えば20%)を達成していないか否かを判断する。ここで、ステップ330が肯定判定される場合は、次の状態である。すなわち、上記のように画面データの位置が高頻度画面更新領域外の場合には、上記各部116〜122をバイパスする第2のルートが選択される。つまり、ゲートウェイが圧縮する処理をしないようにしてゲートウェイ16の負荷を減らそうとしている。しかし、負荷の削減率が規定の削減率を達成していない場合が生ずる原因は、上記バイパスする第2のルートが選択されることが少ないことによる。よって、負荷をより削減するためには、第2のルートが選択されやすくする必要がある。そのためには、高頻度画面更新領域を小さくする必要がある。
そこで、ステップ336で、縮小部112は、当該セッションの高頻度画面更新領域の情報とメッシュごとの更新回数のデータを受信し、ステップ338で縮小部112は、既存の新高頻度画面更新領域の抽出のための閾値を増加させる。例えば、閾値を1増加させる。なお、閾値を増加少させる数は1に限定されず、1より大きい数でもよい。なお、増加された閾値は、後述する大頻度閾値に対応する。
ここで、閾値(図9(C)の閾値H1)が増加されると、増加される前と比較すると、より多い変更回数のメッシュでなければ、変更回数が閾値より大きいと判断されない。従って、高頻度画面更新領域が縮小される。
ステップ334又は338が実行された後は、本処理は、ステップ340に移行される。ステップ340では、縮小部112は、メッシュから更新回数が閾値より高いメッシュ領域を抽出し、ステップ342で、縮小部112は、抽出したメッシュで閾値以下の距離にあるものを合成し、矩形に成形を行う。ステップ344で縮小部112は、成形した矩形を新しい高頻度画面更新領域として設定する。以上の処理(ステップ340〜344)は、図10におけるステップ294〜298の処理と同様であるのでその説明を省略する。ステップ344が実行された後、本処理は、ステップ322に移行される。
このように、本検証処理により、第1に、データ転送量が可用帯域より大きい場合には、高頻度画面更新領域を大きくして、よりゲートウェイ16で圧縮処理がされるようにして画面データのデータ転送量を小さくするようにしている。これにより、ゲートウェイ16から送信された画面データがクライアント12において、画面データの受信処理を要求される所定期間内に完了できるようにしている。第2にゲートウェイの負荷の削減率が規定の削減率に達していない場合には、高頻度画面更新領域を狭めることにより、上記バイパスする第2のルートが選択されやすくするようにして、負荷の削減率を規定の削減率に到達させるようにしている。
次に、第1の実施の形態の効果を説明する。
第1の実施の形態では、ゲートウェイ16は、高頻度画面更新領域以外の画面データを素通しする。即ち、ゲートウェイ16は、サーバ14から送信された、圧縮された画面データを、自身では再圧縮せずに、そのままの圧縮状態で、クライアント12に送信する。ゲートウェイ16が自身で画面データを再圧縮する場合に比較すると、クライアント12へ送信する画面データのデータ量は増加する。しかし、ゲートウェイ16では再圧縮等がする必要がないため、その分、ゲートウェイ16の負荷が削減される。よって、第1の実施の形態は、ゲートウェイ16の負荷を軽減することができる、という効果を有する。
また、第1の実施の形態では、ゲートウェイ16の負荷が高くなった場合に、上記の素通しをしている。よって、ゲートウェイ16の負荷を軽減する必要がないときは、ゲートウェイ16の本来行うべき、自身での再圧縮をしている。よって、第1の実施の形態は、ゲートウェイ16の負荷を軽減する必要がないときには、ゲートウェイ16は、本来の役割を果たすことができる、という効果を有する。
更に、第1の実施の形態では、ゲートウェイ16は、まず、自身の負荷が高くなった場合に、ゲートウェイ16の負荷情報とセッション毎の可用帯域を取得する。次に、ゲートウェイ16はこれらの情報に基づいて可用帯域の大きなセッションの高頻度画面更新領域を縮小する。そして、上記のように、縮小された高頻度画面更新領域以外の画面データを素通しする。即ち、ゲートウェイ16が自身では再圧縮しない画面データの画面位置の領域が拡大するので、拡大しない場合より、ゲートウェイ16が自身では再圧縮しない画面データが多くなる。よって、第1の実施の形態は、高頻度画面更新領域を縮小しない場合より、ゲートウェイ16の負荷を軽減することができる、という効果を有する。
上記のように、ゲートウェイ16がサーバ14からの画面データを素通しすると、ゲートウェイ16が自身で画面データを再圧縮する場合に比較すると、クライアント12へ送信する画面データのデータ量は増加する。しかし、ゲートウェイ16は、可用帯域が大きい場合のみ、上記素通しをしている。即ち、送信するデータ量が比較多くてもクライアント12に提供サービスの性能を落とさないセッションにおいてのみ上記の素通しをしている。よって、第1の実施の形態は、クライアント12に提供サービスの性能を満足させると共に、ゲートウェイ16の負荷を軽減することができる、という効果を有する。
第1の実施の形態では、次のように検証処理が行われる。
即ち、第1に、縮小部112は、画面データの振り分けが行われた後、クライアント12に送信される画面データのデータ量が、クライアント12が受信可能なデータ量、即ち、可用帯域より大きいのかを検証している。そして、クライアント12に送信される画面データのデータ量が可用帯域より大きい場合、縮小部112は、高頻度画面更新領域を拡大する。高頻度画面更新領域が拡大されると、これが拡大されない場合と比較すると、ゲートウェイ16が高圧縮する画面の領域が拡大する。これにより、ゲートウェイ16が画面データを高圧縮せずに素通しする場合より、クライアント12に送信されるデータ量は少なくなる。従って、クライアント12に送信される画面データのデータ量を可用帯域とすることができる。よって、第1の実施の形態は、クライアント12の受信可能なデータ量に合わせることができる、という効果を有する。
第2に、縮小部112は、画面データの振り分けが行われた後、ゲートウェイ16の負荷の削減量が、予め定められた削減量に到達したのか検証している。そして、ゲートウェイ16の負荷の削減量が、予め定められた削減量に到達していない場合に、縮小部112は、高頻度画面更新領域を縮小する。高頻度画面更新領域を縮小すると、縮小しない場合と比較すると、ゲートウェイ16が画面データを再圧縮する画面の領域が縮小する。これにより、高頻度画面更新領域を縮小しない場合より、ゲートウェイ16が画面データを高圧縮しないことが多くなり、より負荷を軽減することができる。よって、第1の実施の形態は、ゲートウェイ16の負荷の削減量を予め定められた削減量にすることができる、という効果を有する。
[第2の実施の形態]
次に、開示の技術の第2の実施の形態を説明する。
第2の実施の形態の構成は、第1の実施の形態と同様であるのでその説明を省略する。図16に示すように、第2の実施の形態の画面データの転送プログラムは、図3に示す第1の画面データ転送プログラムとほぼ同様であるので、異なる部分を説明する。第2の実施の形態の画面データ転送プログラムは、図3における第1の実施の形態における処理負荷検出プロセス48、可用帯域推定プロセス50、高頻度画面更新領域検出プロセス52、及び高頻度画面更新領域縮小プロセス54が省略されている。その他は図3と同様であるのでその説明を省略する。
図17には、第2の実施の形態におけるシンクライアントシステムのブロック図が示されている。図17に示すように、第2の実施の形態の機能ブロック図は、第1の実施の形態の機能ブロック図(図4)とほぼ同様であるので、異なる部分を説明する。図17に示すように、ゲートウェイ16の機能ブロック図は、第1の実施の形態のゲートウェイ16における機能ブロック図の可用帯域推定部108、高頻度画面更新領域検出部110、高頻度画面更新領域縮小部112が省略されている。他は、第1の実施の形態と同様であるのでその説明を省略する。
CPU20が、上記プロセス42〜46、58〜64、534、356の各々を実行することにより、図17の上記各部102〜104、116、120〜124、354、356として動作する。
次に、第2の実施の形態の作用を説明する。
第2の実施の形態の処理負荷検出部360は、第1の実施の形態における処理負荷検出部106と同様の処理を実行するのでその説明を省略する。
図18には、第2の実施の形態の画面データ振り分け部(以下、「振り分け部」という)358の画面データ振り分け処理が示されている。本処理がスタートすると、ステップ362で、振り分け部358は、処理負荷検出部360から負荷情報を受信する。ステップ364で、ゲートウェイ16の負荷が閾値(例えば90%)以上か否かを判断する。ゲートウェイの負荷が閾値以上でない場合には、ゲートウェイ16の負荷を減らす必要はない。そこで、ステップ366で、振り分け部358は、全ての画面データを表示画面生成部116へ通知する。
ステップ364で、ゲートウェイの負荷が閾値以上であると判断された場合は、ステップ368に本処理が移行される。ステップ368で、振り分け部358は、画面データの描画コマンドの圧縮率を算出する。本圧縮率は、描画コマンドである当該画面データのデータサイズを、描画領域サイズ、すなわち、画面データに基づいて描画される部分のサイズ(w×h)で除した値の百分率である。
ステップ370で、振り分け部358は、描画コマンドの圧縮率が閾値(例えば30%)以下か否かを判断する。
描画コマンドの圧縮率が閾値以下でない場合は、当該画面データはサーバ14においてそれほど圧縮されていない状態である。すなわち、クライアント12に送信するには、より圧縮する必要がある。そこで、ステップ372で、振り分け部358は、第1のルートを選択し、画面データを画面表示生成部116へ通知する。
一方、描画コマンドの圧縮率が閾値以下である場合は、サーバ14において画面データの圧縮が大きくかかっている状態である。よって、当該画面データをそのままクライアント12に転送しても問題は少ない。ゲートウェイ16の負荷を減らすため、上記バイパスを実行する必要がある。そこで、ステップ374で、振り分け部358は、第2のルートを選択し、画面データを、画面更新通知部124に通知する。ステップ372及びステップ374が実行されると、処理はステップ362に移行される。
次に、第2の実施の形態の効果を説明する。
第2の実施の形態では、画面データの描画コマンド圧縮率が閾値以上の場合、ゲートウェイ16は、高圧縮処理を行う。しかし、描画コマンドの圧縮率が閾値以下の場合には、振り分け部114は、上記バイパスをしてゲートウェイ16の負荷を減らしている。このように、第2の実施の形態では、振り分け部114は、描画コマンドの圧縮率に基づいて、画面データの処理ルートを第1のルート又は第2のルートに振り分けている。よって、当該画面データが上記高頻度画面領域内に位置しても、振り分け部114は上記バイパスをする。よって、第2の実施の形態は、画面データが上記高頻度画面領域内に位置しても、ゲートウェイの負荷を減らすことができる、という効果を有する。
なお、第2の実施の形態では、ステップ362〜366を実行しているが、これらを省略してもよい。この場合でも、ステップ370で肯定判定されてステップ374が実行されると、ゲートウェイ16の負荷は軽減される。
[第3の実施の形態]
次に、開示の技術の第3の実施の形態を説明する。
第3の実施の形態の構成は、第3の実施の形態と同様であるのでその説明は省略する。
図19には、第3の実施の形態の画面データ転送プログラムが示されている。図19に示すように、第3の実施の形態の画面データ転送プログラムは、図16における第2の実施の形態の画面データ転送プログラムと同様の部分があるのでその説明を省略し、異なる部分を説明する。すなわち、図19に示すように、第3の実施の形態の画面データ転送プログラムは、第2の実施の形態の場合(図16)と比較すると、処理負荷検出プロセス382がさらにある点で相違する。
図20には、第3の実施の形態のシンクライアントシステムの機能ブロック図が示されている。第3の実施の形態の機能ブロック図は、第2の実施の形態におけるシンクライアントシステムの機能ブロック図と同様の構成があるので、異なる部分のみを説明する。図20に示すように、第3の実施の形態にかかるゲートウェイ16の機能ブロック図は、第2の実施の形態の場合(図17)と比較すると、可用帯域推定部394が更に設けられている点で相違する。
CPU20が、上記プロセス42〜46、58〜64、380〜384の各々を実行することにより、図20の上記各部102〜104、116、120〜124、390、392、394として動作する。
次に、第3の実施の形態の作用を説明する。
第3の実施の形態の処理負荷検出部392は、第1の実施の形態における処理負荷検出部106と同様の処理を実行するのでその説明を省略する。第3の実施の形態の可用帯域推定部394は、第1の実施の形態の可用帯域推定部108と同様の処理を実行するのでその説明を省略する。
図21には、第3の実施の形態の振り分け部390がセッション毎に実行する画面データ振り分け処理が示されている。画面データ振り分け処理は、図23に示すように、処理負荷検出処理のスタート時刻T6と可用帯域推定処理のスタート時刻T7とは異なる時刻T8でスタートする。本処理がスタートすると、処理負荷検出部392から負荷情報を受信する。ステップ404で、ゲートウェイ16の負荷が閾値(例えば90%)以上か否かを判断する。ゲートウェイの負荷が閾値以上でない場合には、ゲートウェイ16の負荷を減らす必要がない。そこで、ステップ406で、振り分け部390は、本セッションの全ての画面データを表示画面生成部116へと通知して、ステップ402に処理を移行させる。
ステップ404で、負荷が閾値以上であると判断された場合には、本処理は、ステップ408に移行される。ステップ408で、処理対象のセッションの可用帯域を可用帯域推定部394から取得する。ステップ410で、振り分け部390は、閾値設定テーブル420(図22参照)を参照し、上記ステップ408で取得した可用帯域の情報を使って、本セッションへ適用する閾値を取得する。例えば上記取得した可用帯域が、0.5Mbpsの場合には、閾値として30%を取得する。また、別のセッションにおいて、可用帯域が8Mbpsの場合には、閾値として60%を取得する。
このように可用帯域が大きくなるにしたがって、閾値が大きくなるようにしている理由は次の通りである。可用帯域が大きくなると、ゲートウェイ16からクライアント12に転送できる画面データのデータ転送量が大きくなる。このような場合、それほど圧縮がかかっていなくても画面データをサーバ14で圧縮されたままの状態でクライアント12に送信しても大きな問題は生じない。すなわち、可用帯域が大きくなるにしたがって、閾値を大きくすれば、画面データの処理ルートとして第2のルートが選択されやすくなる。よって、ゲートウェイの負荷をより減らすことができる。そこで、ステップ410は、このように設定された閾値を使って本セッションへ適用する閾値としている。
ステップ412で、振り分け部390は、画面データの描画コマンドの圧縮率を算出する。ステップ414で、振り分け部390は、描画コマンド圧縮率が上記ステップ410で取得された閾値以下か否かを判断する。上記圧縮率が閾値でない場合にはステップ416で、振り分け部390は画面データを表示画面生成部116へ通知する。即ち、画面データの処理ルートが、第1のルートへ振り分けられる。一方、描画コマンドの圧縮率が閾値以下である場合には、ステップ418で、振り分け部390は、画面データを画面データ通知部124へ通知する。即ち、画面データの処理ルートが、第2のルートへ振り分けられる。本ステップ416及びステップ418が実行されると、本処理は、ステップ402に移行される。
次に、第3の実施の形態の効果を説明する。
第3の実施の形態では、可用帯域が大きくなるにしたがって、描画コマンドの圧縮率の閾値が大きくされている。これにより、可用帯域が大きくなるにしたがって、ゲートウェイ16の圧縮処理がバイパスされ易くなる。よって、第3の実施の形態は、ゲートウェイの負荷をより減らすことができる、という効果を有する。
なお、第3の実施の形態では、ステップ402〜406を実行しているが、これらを省略してもよい。この場合でも。ステップ414で肯定判定されてステップ418が実行されると、ゲートウェイ16の負荷が軽減される。
なお、第1の実施の形態〜第3の実施の形態では、シンクライアントシステムを例として、本開示の技術を説明した。しかし、本開示の技術は、シンクライアントシステム以外の他の例に対しても適用できる。
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
画面に表示する位置を示す位置情報を含みかつ画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを受信すると共に、画面データを送信する通信部と、
前記通信部により受信された画面データについて、前記第1の圧縮処理より圧縮率が高い第2の圧縮処理を実行する圧縮部と、
前記通信部により一定期間内に受信された複数の画面データの位置情報に基づいて、前記画面の中で、変更された頻度が頻度閾値以上の高頻度画面更新領域を検出する高頻度画面更新領域検出部と、
自装置の処理負荷を検出する処理負荷検出部と、
前記検出された前記処理負荷が負荷閾値以上の場合において、前記一定期間後に受信された画面データの位置情報に基づく前記画面データにおける前記変更された部分が前記高頻度画面更新領域と重なるときには、前記画面データの処理ルートを、前記第2の圧縮処理が実行されかつ前記第2の圧縮処理が実行された前記画面データが前記通信部により送信される第1のルートに振り分け、前記変更された部分が前記高頻度画面更新領域と重ならないときには、前記画面データの処理ルートを、前記圧縮部を回避して前記画面データが前記通信部により送信される第2のルートに振り分ける画面データ振り分け部と、
を備えた画面データ転送装置。
(付記2)
送信先が受信処理を予め定められた期間内に完了することができる画面データのデータ量である可用帯域を推定する可用帯域推定部を更に備え、
前記画像データ振り分け部は、前記可用帯域推定部により推定された可用帯域が帯域閾値以上か否かを判断し、前記可用帯域が閾値以上であると判断した場合に、前記画面データの処理ルートを振り分ける付記1に記載の画面データ転送装置。
(付記3)
前記予め定められた期間は、前記送信先が、順に受信した複数の画面データ各々に基づいて表示部に画面を順に表示する際の、1つの画面データに基づく画面の表示と、当該1つの画面データの次に受信した画面データに基づく画面の表示との切り替えが、要求される時間内に実行されるように予め定められている期間である付記2に記載の画面データ転送装置。
(付記4)
送信先が受信処理を予め定められた期間内に完了することができる画面データのデータ量である可用帯域を推定する可用帯域推定部と、
前記検出された前記処理負荷が負荷閾値以上でありかつ前記可用帯域が帯域閾値以上の場合に、前記高頻度画面更新領域を縮小する高頻度画面更新領域変更部と、
を更に備え、
前記画面データ振り分け部は、前記高頻度画面更新領域として前記縮小された領域を用いる付記1に記載の画面データ転送装置。
(付記5)
前記高頻度画面更新領域変更部は、前記検出された高頻度画面更新領域の中で、変更された頻度が、前記頻度閾値より大きい大頻度閾値以上の縮小領域に、前記高頻度画面更新領域を縮小する付記4に記載の画面データ転送装置。
(付記6)
前記高頻度画面更新領域変更部は、前記画面データ振り分け部により前記振り分けが行われた後、前記通信部により送信される前記画面データのデータ量が、前記可用帯域より大きい場合に、前記高頻度画面更新領域を拡大する付記4又は付記5に記載の画面データ転送装置。
(付記7)
前記高頻度画面更新領域変更部は、前記検出された高頻度画面更新領域の中で、変更された頻度が、前記頻度閾値より小さい小頻度閾値以上の拡大領域に、前記高頻度画面更新領域を拡大する付記8に記載の画面データ転送装置。
(付記8)
前記画面が予め複数の領域に分割されており、
前記高頻度画面更新領域変更部は、前記検出された高頻度画面更新領域における前記複数の領域各々の変更回数を計数し、計数された変更回数が前記小頻度閾値以上の領域を前記拡大領域とする付記7に記載の画面データ転送装置。
(付記9)
前記高頻度画面更新領域変更部は、複数の前記拡大領域が検出された場合には、前記複数の拡大領域を含む矩形領域を形成し、形成した矩形領域を前記高頻度画面更新領域とする付記7又は付記8に記載の画面データ転送装置。
(付記10)
前記高頻度画面更新領域変更部は、前記画面データ振り分け部により前記振り分けが行われた後、前記負荷検出部により検出された前記負荷の削減量が、予め定められた削減量に到達していない場合に、前記高頻度画面更新領域を縮小する付記4〜9の何れか1項に記載の画面データ転送装置。
(付記11)
前記高頻度画面更新領域変更部は、前記検出された高頻度画面更新領域の中で、変更された頻度が、前記頻度閾値より大きい大頻度閾値以上の縮小領域に、前記高頻度画面更新領域を縮小する付記10に記載の画面データ転送装置。
(付記12)
前記画面が予め複数の領域に分割されており、
前記高頻度画面更新領域変更部は、前記検出された高頻度画面更新領域における前記複数の領域各々の変更回数を計数し、計数された変更回数が前記大頻度閾値以上の領域を前記縮小領域とする付記11に記載の画面データ転送装置。
(付記13)
前記高頻度画面更新領域変更部は、複数の前記縮小領域が検出された場合には、前記複数の縮小領域を含む矩形領域を形成し、形成した矩形領域を前記高頻度画面更新領域とする付記11又は付記12に記載の画面データ転送装置。
(付記14)
前記画面が予め複数の領域に分割されており、
前記高頻度画面更新領域検出部は、前記通信部により一定期間内に受信された複数の画面データの位置情報に基づいて、前記複数の画面データに対応する前記複数の領域各々の変更回数を計数し、計数された変更回数が前記頻度閾値以上の領域を検出することにより、前記高頻度画面更新領域を検出する付記1〜13の何れか1項に記載の画面データ転送装置。
(付記15)
前記高頻度画面更新領域検出部は、複数の高頻度画面更新領域が検出された場合には、前記検出された複数の高頻度画面更新領域を含む矩形領域を形成し、形成した矩形領域を前記高頻度画面更新領域とする付記1〜14の何れか1項に記載の画面データ転送装置。
(付記16)
画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを受信すると共に、画面データを送信する通信部と、
前記通信部により受信された画面データについて、前記第1の圧縮処理より圧縮率が高い第2の圧縮処理を実行する圧縮部と、
前記第1の圧縮処理により画面データが圧縮された圧縮率が予め定められた圧縮率以下でないときには、前記画面データの処理ルートを、前記第2の圧縮処理が実行されかつ前記第2の圧縮処理が実行された前記画面データが前記通信部により送信される第1のルートに振り分け、前記圧縮された圧縮率が前記予め定められた圧縮率以下のときには、前記画面データの処理ルートを、前記圧縮部を回避して前記画面データが前記通信部により送信される第2のルートに振り分ける画面データ振り分け部と、
を備えた画面データ転送装置。
(付記17)
前記画面データ転送装置の処理負荷を検出する処理負荷検出部を更に備え、
前記画面データ振り分け部は、前記処理負荷が負荷閾値以上の場合に、前記画像データを振り分ける
付記16に記載の画面データ転送装置。
(付記18)
前記画面データには、前記受信された画面データのサイズ及び前記画面データに対応する前記変更された部分のサイズを示す情報を含み、
前記圧縮率は、前記画面データのサイズ及び前記部分のサイズに基づいて、算出される付記16又は付記17に記載の画面データ転送装置。
(付記19)
送信先が受信処理を所定期間内に完了することができる画面データのデータ量である可用帯域を推定する可用帯域推定部を更に備え、
前記画面データ振り分け部は、前記可用帯域が大きくなるに従って、前記処理ルートを前記第2のルートにより振り分ける
付記16〜18の何れか1項に記載の画面データ転送装置。
(付記20)
前記可用帯域が大きくなるに従って、前記処理ルートが前記第2のルートにより振り分けられるように定められた複数の圧縮率閾値が予め定められ、
前記画面データ振り分け部は、前記推定された可用帯域に基づいて前記複数の圧縮率閾値から当該可用帯域に対応する圧縮率閾値を選択し、選択した圧縮率閾値を前記予め定められた圧縮率として、前記画面データの処理ルートを振り分ける
付記19に記載の画面データ転送装置。
(付記21)
付記1〜20の何れか1項に記載の画面データ転送装置と、
前記第1の圧縮処理により圧縮された前記画面データを送信する画面データ送信装置と、
前記画面データ転送装置により送信された前記画面データを受信すると共に受信した画面データに基づいて表示部に画面を表示する画面表示端末と、
を備えた画面表示システム。
(付記22)
画面に表示する位置を示す位置情報を含みかつ画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを一定期間、受信し、
前記一定期間内に受信された複数の画面データの位置情報に基づいて、前記画面の中で、変更された頻度が頻度閾値以上の高頻度画面更新領域を検出し、
自装置の処理負荷を検出し、
前記検出された前記処理負荷が負荷閾値以上の場合において、前記一定期間後に受信された画面データの位置情報に基づく前記画面データにおける前記変更された部分が前記高頻度画面更新領域と重なるときには、前記画面データの処理ルートを、前記第1の圧縮処理より圧縮率が高い第2の圧縮処理を前記画面データについて実行する圧縮部で前記第2の圧縮処理が実行されかつ前記第2の圧縮処理が実行された前記画面データが通信部により送信される第1のルートに振り分け、前記変更された部分が前記高頻度画面更新領域と重ならないときには、前記画面データの処理ルートを、前記圧縮部を回避して前記画面データが前記通信部により送信される第2のルートに振り分ける、
ことを含む処理負荷低減方法。
(付記23)
画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを受信し、
前記第1の圧縮処理により画面データが圧縮された圧縮率が予め定められた圧縮率以下でないときには、前記画面データの処理ルートを、前記第1の圧縮処理より圧縮率が高い第2の圧縮処理を前記画面データについて実行する圧縮部による前記第2の圧縮処理が実行されかつ前記第2の圧縮処理が実行された前記画面データが通信部により送信される第1のルートに振り分け、前記圧縮された圧縮率が前記予め定められた圧縮率以下のときには、前記画面データの処理ルートを、前記圧縮部を回避して前記画面データが前記通信部により送信される第2のルートに振り分ける、
ことを含む処理負荷低減方法。
(付記24)
コンピュータに、
画面に表示する位置を示す位置情報を含みかつ画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを一定期間、受信し、
前記一定期間内に受信された複数の画面データの位置情報に基づいて、前記画面の中で、変更された頻度が頻度閾値以上の高頻度画面更新領域を検出し、
自装置の処理負荷を検出し、
前記検出された前記処理負荷が負荷閾値以上の場合において、前記一定期間後に受信された画面データの位置情報に基づく前記画面データにおける前記変更された部分が前記高頻度画面更新領域と重なるときには、前記画面データの処理ルートを、前記第1の圧縮処理より圧縮率が高い第2の圧縮処理を前記画面データについて実行する圧縮部で前記第2の圧縮処理が実行されかつ前記第2の圧縮処理が実行された前記画面データが通信部により送信される第1のルートに振り分け、前記変更された部分が前記高頻度画面更新領域と重ならないときには、前記画面データの処理ルートを、前記圧縮部を回避して前記画面データが前記通信部により送信される第2のルートに振り分ける、
ことを含む処理を実行させるための処理負荷低減プログラム。
(付記25)
コンピュータに、
画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを受信し、
前記第1の圧縮処理により画面データが圧縮された圧縮率が予め定められた圧縮率以下でないときには、前記画面データの処理ルートを、前記第1の圧縮処理より圧縮率が高い第2の圧縮処理を前記画面データについて実行する圧縮部による前記第2の圧縮処理が実行されかつ前記第2の圧縮処理が実行された前記画面データが通信部により送信される第1のルートに振り分け、前記圧縮された圧縮率が前記予め定められた圧縮率以下のときには、前記画面データの処理ルートを、前記圧縮部を回避して前記画面データが前記通信部により送信される第2のルートに振り分ける、
ことを含む処理を実行させるための処理負荷低減プログラム。
(付記26)
画面に表示する位置を示す位置情報を含みかつ画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを受信すると共に、画面データを送信する通信部と、
前記通信部により受信された画面データについて、前記第1の圧縮処理より圧縮率が高い第2の圧縮処理を実行する圧縮部と、
前記通信部により一定期間内に受信された複数の画面データの位置情報に基づいて、前記画面の中で、変更された頻度が頻度閾値以上の高頻度画面更新領域を検出する高頻度画面更新領域検出部と、
送信先が受信処理を予め定められた期間内に完了することができる画面データのデータ量である可用帯域を推定する可用帯域推定部と、
前記可用帯域推定部により推定された可用帯域が帯域閾値以上の場合において、前記一定期間後に受信された画面データの位置情報に基づく前記画面データにおける前記変更された部分が前記高頻度画面更新領域と重なるときには、前記画面データの処理ルートを、前記第2の圧縮処理が実行されかつ前記第2の圧縮処理が実行された前記画面データが前記通信部により送信される第1のルートに振り分け、前記変更された部分が前記高頻度画面更新領域と重ならないときには、前記画面データの処理ルートを、前記圧縮部を回避して前記画面データが前記通信部により送信される第2のルートに振り分ける画面データ振り分け部と、
を備えた画面データ転送装置。
10 クライアント
12 サーバ
14 ゲートウェイ
100 通信部
106、360、392 処理負荷検出部
108、394 可用帯域推定部
112 高頻度画面更新領域縮小部
114、358、390 画面データ振り分け部
122 更新矩形変換部

Claims (12)

  1. 画面に表示する位置を示す位置情報を含みかつ画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを受信すると共に、画面データを送信する通信部と、
    前記通信部により受信された画面データについて、前記第1の圧縮処理より圧縮率が高い第2の圧縮処理を実行する圧縮部と、
    前記通信部により一定期間内に受信された複数の画面データの位置情報に基づいて、前記画面の中で、変更された頻度が頻度閾値以上の高頻度画面更新領域を検出する高頻度画面更新領域検出部と、
    自装置の処理負荷を検出する処理負荷検出部と、
    前記検出された前記処理負荷が負荷閾値以上の場合において、前記一定期間後に受信された画面データの位置情報に基づく前記画面データにおける前記変更された部分が前記高頻度画面更新領域と重なるときには、前記画面データの処理ルートを、前記第2の圧縮処理が実行されかつ前記第2の圧縮処理が実行された前記画面データが前記通信部により送信される第1のルートに振り分け、前記変更された部分が前記高頻度画面更新領域と重ならないときには、前記画面データの処理ルートを、前記圧縮部を回避して前記画面データが前記通信部により送信される第2のルートに振り分ける画面データ振り分け部と、
    を備えた画面データ転送装置。
  2. 送信先が受信処理を予め定められた期間内に完了することができる画面データのデータ量である可用帯域を推定する可用帯域推定部と、
    前記検出された前記処理負荷が負荷閾値以上でありかつ前記可用帯域が帯域閾値以上の場合に、前記高頻度画面更新領域を縮小する高頻度画面更新領域変更部と、
    を更に備え、
    前記画面データ振り分け部は、前記高頻度画面更新領域として前記縮小された領域を用いる請求項1に記載の画面データ転送装置。
  3. 前記高頻度画面更新領域変更部は、前記画面データ振り分け部により前記振り分けが行われた後、前記通信部により送信される前記画面データのデータ量が、前記可用帯域より大きい場合に、前記高頻度画面更新領域を拡大する請求項2に記載の画面データ転送装置。
  4. 前記高頻度画面更新領域変更部は、前記画面データ振り分け部により前記振り分けが行われた後、前記負荷検出部により検出された前記負荷の削減量が、予め定められた削減量に到達していない場合に、前記高頻度画面更新領域を縮小する請求項2又は請求項3に記載の画面データ転送装置。
  5. 画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを受信すると共に、画面データを送信する通信部と、
    前記通信部により受信された画面データについて、前記第1の圧縮処理より圧縮率が高い第2の圧縮処理を実行する圧縮部と、
    前記第1の圧縮処理により画面データが圧縮された圧縮率が予め定められた圧縮率以下でないときには、前記画面データの処理ルートを、前記第2の圧縮処理が実行されかつ前記第2の圧縮処理が実行された前記画面データが前記通信部により送信される第1のルートに振り分け、前記圧縮された圧縮率が前記予め定められた圧縮率以下のときには、前記画面データの処理ルートを、前記圧縮部を回避して前記画面データが前記通信部により送信される第2のルートに振り分ける画面データ振り分け部と、
    を備えた画面データ転送装置。
  6. 前記画面データ転送装置の処理負荷を検出する処理負荷検出部を更に備え、
    前記画面データ振り分け部は、前記処理負荷が負荷閾値以上の場合に、前記画像データを振り分ける請求項5に記載の画面データ転送装置。
  7. 送信先が受信処理を所定期間内に完了することができる画面データのデータ量である可用帯域を推定する可用帯域推定部を更に備え、
    前記画面データ振り分け部は、前記可用帯域が大きくなるに従って、前記処理ルートを前記第2のルートにより振り分ける請求項5又は請求項6に記載の画面データ転送装置。
  8. 請求項1〜7の何れか1項に記載の画面データ転送装置と、
    前記第1の圧縮処理により圧縮された前記画面データを送信する画面データ送信装置と、
    前記画面データ転送装置により送信された前記画面データを受信すると共に受信した画面データに基づいて表示部に画面を表示する画面表示端末と、
    を備えた画面表示システム。
  9. 画面に表示する位置を示す位置情報を含みかつ画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを一定期間、受信し、
    前記一定期間内に受信された複数の画面データの位置情報に基づいて、前記画面の中で、変更された頻度が頻度閾値以上の高頻度画面更新領域を検出し、
    自装置の処理負荷を検出し、
    前記検出された前記処理負荷が負荷閾値以上の場合において、前記一定期間後に受信された画面データの位置情報に基づく前記画面データにおける前記変更された部分が前記高頻度画面更新領域と重なるときには、前記画面データの処理ルートを、前記第1の圧縮処理より圧縮率が高い第2の圧縮処理を前記画面データについて実行する圧縮部で前記第2の圧縮処理が実行されかつ前記第2の圧縮処理が実行された前記画面データが通信部により送信される第1のルートに振り分け、前記変更された部分が前記高頻度画面更新領域と重ならないときには、前記画面データの処理ルートを、前記圧縮部を回避して前記画面データが前記通信部により送信される第2のルートに振り分ける
    ことを含む処理負荷低減方法。
  10. 画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを受信し、
    前記第1の圧縮処理により画面データが圧縮された圧縮率が予め定められた圧縮率以下でないときには、前記画面データの処理ルートを、前記第1の圧縮処理より圧縮率が高い第2の圧縮処理を前記画面データについて実行する圧縮部による前記第2の圧縮処理が実行されかつ前記第2の圧縮処理が実行された前記画面データが通信部により送信される第1のルートに振り分け、前記圧縮された圧縮率が前記予め定められた圧縮率以下のときには、前記画面データの処理ルートを、前記圧縮部を回避して前記画面データが前記通信部により送信される第2のルートに振り分ける
    ことを含む処理負荷低減方法。
  11. コンピュータに、
    画面に表示する位置を示す位置情報を含みかつ画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを一定期間、受信し、
    前記一定期間内に受信された複数の画面データの位置情報に基づいて、前記画面の中で、変更された頻度が頻度閾値以上の高頻度画面更新領域を検出し、
    自装置の処理負荷を検出し、
    前記検出された前記処理負荷が負荷閾値以上の場合において、前記一定期間後に受信された画面データの位置情報に基づく前記画面データにおける前記変更された部分が前記高頻度画面更新領域と重なるときには、前記画面データの処理ルートを、前記第1の圧縮処理より圧縮率が高い第2の圧縮処理を前記画面データについて実行する圧縮部で前記第2の圧縮処理が実行されかつ前記第2の圧縮処理が実行された前記画面データが通信部により送信される第1のルートに振り分け、前記変更された部分が前記高頻度画面更新領域と重ならないときには、前記画面データの処理ルートを、前記圧縮部を回避して前記画面データが前記通信部により送信される第2のルートに振り分ける
    ことを含む処理を実行させるための処理負荷低減プログラム。
  12. コンピュータに、
    画面全体の内の変更された部分が第1の圧縮処理により圧縮された画面データを受信し、
    前記第1の圧縮処理により画面データが圧縮された圧縮率が予め定められた圧縮率以下でないときには、前記画面データの処理ルートを、前記第1の圧縮処理より圧縮率が高い第2の圧縮処理を前記画面データについて実行する圧縮部による前記第2の圧縮処理が実行されかつ前記第2の圧縮処理が実行された前記画面データが通信部により送信される第1のルートに振り分け、前記圧縮された圧縮率が前記予め定められた圧縮率以下のときには、前記画面データの処理ルートを、前記圧縮部を回避して前記画面データが前記通信部により送信される第2のルートに振り分ける
    ことを含む処理を実行させるための処理負荷低減プログラム。
JP2013083214A 2013-04-11 2013-04-11 画面データ転送装置、画面表示システム、処理負荷軽減方法、及び処理負荷軽減プログラム Active JP6135266B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013083214A JP6135266B2 (ja) 2013-04-11 2013-04-11 画面データ転送装置、画面表示システム、処理負荷軽減方法、及び処理負荷軽減プログラム
US14/195,950 US9043392B2 (en) 2013-04-11 2014-03-04 Screen data transfer device and a processing load reduction method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013083214A JP6135266B2 (ja) 2013-04-11 2013-04-11 画面データ転送装置、画面表示システム、処理負荷軽減方法、及び処理負荷軽減プログラム

Publications (2)

Publication Number Publication Date
JP2014207529A true JP2014207529A (ja) 2014-10-30
JP6135266B2 JP6135266B2 (ja) 2017-05-31

Family

ID=51687533

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013083214A Active JP6135266B2 (ja) 2013-04-11 2013-04-11 画面データ転送装置、画面表示システム、処理負荷軽減方法、及び処理負荷軽減プログラム

Country Status (2)

Country Link
US (1) US9043392B2 (ja)
JP (1) JP6135266B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015069240A (ja) * 2013-09-26 2015-04-13 富士通株式会社 情報処理装置、情報処理方法および情報処理プログラム

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07123132A (ja) * 1993-08-31 1995-05-12 Canon Inc 通信方法及び装置
JP2004015726A (ja) * 2002-06-11 2004-01-15 Canon Inc 画像処理装置及びその制御方法及びコンピュータプログラム及び記憶媒体
JP2006197006A (ja) * 2005-01-11 2006-07-27 Sharp Corp 動画像符号化装置
JP2007096800A (ja) * 2005-09-29 2007-04-12 Toshiba Corp 動画像データの再圧縮符号化方法、装置及びプログラム
JP2010061542A (ja) * 2008-09-05 2010-03-18 Sony Corp 通信端末、通信方法、信号処理装置、信号処理方法及び通信システム
JP2011234065A (ja) * 2010-04-27 2011-11-17 Nec Corp 動画像通信システム
JP2011238014A (ja) * 2010-05-10 2011-11-24 Fujitsu Ltd 情報処理装置、画像送信プログラム、画像表示プログラム及び画像表示方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002007238A (ja) 2000-06-21 2002-01-11 Nec Corp 移動通信システム及びそのゲートウェイ選択方法
JP2003167745A (ja) 2001-12-04 2003-06-13 Oki Electric Ind Co Ltd ネットワーク最適化処理システム
US7620870B2 (en) * 2005-11-22 2009-11-17 Cisco Technology, Inc. Data compression method and system
US8160137B2 (en) * 2010-03-03 2012-04-17 Mediatek Inc. Image data compression apparatus for referring to at least one characteristic value threshold to select target compression result from candidate compression results of one block and related method thereof
JP5259683B2 (ja) * 2010-11-19 2013-08-07 株式会社東芝 サーバ装置及びプログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07123132A (ja) * 1993-08-31 1995-05-12 Canon Inc 通信方法及び装置
JP2004015726A (ja) * 2002-06-11 2004-01-15 Canon Inc 画像処理装置及びその制御方法及びコンピュータプログラム及び記憶媒体
JP2006197006A (ja) * 2005-01-11 2006-07-27 Sharp Corp 動画像符号化装置
JP2007096800A (ja) * 2005-09-29 2007-04-12 Toshiba Corp 動画像データの再圧縮符号化方法、装置及びプログラム
JP2010061542A (ja) * 2008-09-05 2010-03-18 Sony Corp 通信端末、通信方法、信号処理装置、信号処理方法及び通信システム
JP2011234065A (ja) * 2010-04-27 2011-11-17 Nec Corp 動画像通信システム
JP2011238014A (ja) * 2010-05-10 2011-11-24 Fujitsu Ltd 情報処理装置、画像送信プログラム、画像表示プログラム及び画像表示方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015069240A (ja) * 2013-09-26 2015-04-13 富士通株式会社 情報処理装置、情報処理方法および情報処理プログラム

Also Published As

Publication number Publication date
US20140310336A1 (en) 2014-10-16
US9043392B2 (en) 2015-05-26
JP6135266B2 (ja) 2017-05-31

Similar Documents

Publication Publication Date Title
CN102460564B (zh) 用于提供移动设备互操作性的方法及装置
CN106789718B (zh) 数据传输的拥塞控制方法、设备、服务器及可编程设备
EP2878139B1 (en) Methods and apparatuses for facilitating utilization of cloud services
US20110276653A1 (en) Information processing device, image transmission program, image display program, and image display method
JP5737082B2 (ja) ポインタ位置補正方法、ポインタ位置補正プログラムおよびサーバ装置
US20080267067A1 (en) Controlling the flow of data updates between a receiving station and a sending station
EP1902378A1 (en) A method and system of computer remote control that optimized for low bandwidth network and low level personal communication terminal device
US11196845B2 (en) Method, apparatus, and computer program product for determining data transfer manner
US20170371614A1 (en) Method, apparatus, and storage medium
CN103873886B (zh) 一种处理图像信息的方法、装置及系统
JP2016164769A (ja) ユーザ装置間で複数の画面を分配して、入力インターフェースを共有するマルチスクリーン具現方法、及びマルチスクリーン設定を実行するユーザ装置。
US9037749B2 (en) Information processing apparatus and image transmission method
US20160155429A1 (en) Information processing apparatus and terminal device
JP6135266B2 (ja) 画面データ転送装置、画面表示システム、処理負荷軽減方法、及び処理負荷軽減プログラム
US20150281699A1 (en) Information processing device and method
US9571600B2 (en) Relay device, relay method and thin client system
JP2018005341A (ja) 画面転送方法、画面転送プログラム及び画面転送装置
US9626330B2 (en) Information processing apparatus, and information processing method
KR101512353B1 (ko) 클라우드 스트리밍 서비스 제공 방법, 이를 위한 서비스 제어 장치 및 시스템
KR101223784B1 (ko) 이미지 변환장치, 이미지 변환시스템 및 이미지 변환방법
CN112217872A (zh) 一种控制方法、装置及计算机可读存储介质
CN113760215B (zh) 基于鸿蒙系统的多终端显示数据传输方法、设备及介质
JP2015097063A (ja) 情報処理装置、画面制御プログラム及び画面制御方法
US10338734B2 (en) Information processing device, information processing system, and non-transitory computer-readable storage medium
CN106507392B (zh) 移动终端及应用的网络资源调整方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170303

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170328

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170410

R150 Certificate of patent or registration of utility model

Ref document number: 6135266

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150