(57)【要約】  圧縮要否判別部（１３１）は、サーバにアップロードするためのアップロードデータの圧縮要否を判別する。データ圧縮部（１３２）は、圧縮要否判別部（１３１）によりアップロードデータの圧縮が必要であると判別された場合、アップロードデータを予め定めた方式で圧縮する。データ送出部（１３３）は、圧縮要否判別部（１３１）によりアップロードデータの圧縮が必要でないと判別された場合、アップロードデータにヘッダを付加したデータを通信インタフェースに送出し、圧縮要否判別部（１３１）によりアップロードデータの圧縮が必要であると判別された場合、データ圧縮部（１３２）により圧縮されたアップロードデータに、圧縮されたデータであることを示す情報を格納したヘッダを付加したデータを通信インタフェースに送出する。
2015151186.tif 000002
【特許請求の範囲】
【請求項１】
サーバと通信するための通信インタフェースと、
前記サーバにアップロードするためのアップロードデータの圧縮要否を判別する圧縮要否判別部と、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記アップロードデータを予め定めた方式で圧縮するデータ圧縮部と、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要でないと判別された場合、前記アップロードデータにヘッダを付加したデータを前記通信インタフェースに送出し、前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記データ圧縮部により圧縮されたアップロードデータに、圧縮されたデータであることを示す情報を格納したヘッダを付加したデータを前記通信インタフェースに送出するデータ送出部と、を備える、クライアント装置。
【請求項２】
前記圧縮要否判別部は、段階的に予め定めたデータサイズ毎に、圧縮時における、前記データ圧縮部の処理時間と前記データ送出部の処理時間を加算した総処理時間と、非圧縮時における前記データ送出部の処理時間とを対応付けた第１の時間テーブルと、前記アップロードデータのサイズと、に基づいて、前記アップロードデータの圧縮要否を判別する、請求項１に記載のクライアント装置。
【請求項３】
前記第１の時間テーブルは、複数の異なる圧縮方式毎に用意され、
前記圧縮要否判別部は、圧縮が必要である場合には、さらに圧縮方式を選定し、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記データ圧縮部は前記アップロードデータを前記選定された圧縮方式で圧縮し、前記データ送出部は、前記データ圧縮部により圧縮されたアップロードデータに、前記選定された圧縮方式を示す情報を格納したヘッダを付加したデータを前記通信インタフェースに送出する、請求項２に記載のクライアント装置。
【請求項４】
前記データ圧縮部の処理時間を計測する圧縮時間計測部と、
前記データ送出部の処理時間を計測する送出時間計測部と、をさらに備える、請求項１から３の何れか１項に記載のクライアント装置。
【請求項５】
前記サーバから送られてきたデータを前記通信インタフェースから取り込むデータ取込部と、
前記サーバから送られてきたデータにダウンロードデータが含まれている場合、前記ダウンロードデータの伸張要否を判別する伸張要否判別部と、
前記伸張要否判別部により前記ダウンロードデータの伸張が必要であると判別された場合、前記ダウンロードデータを予め定めた方式で伸張するデータ伸張部と、をさらに備え、
前記圧縮要否判別部は、前記アップロードデータの内容が前記サーバに対するダウンロードの要求を示す場合、前記要求に対応して前記サーバからダウンロードされることが予定されるダウンロード予定データの圧縮要否を判別し、
前記データ送出部は、前記圧縮要否判別部により前記ダウンロード予定データの圧縮が必要であると判別された場合、データの圧縮を要求する情報を前記ヘッダに格納する、請求項１から４の何れか１項に記載のクライアント装置。
【請求項６】
前記圧縮要否判別部は、段階的に予め定めたデータサイズ毎に、伸張時における、前記データ伸張部の処理時間と前記データ取込部の処理時間を加算した総処理時間と、非伸張時における前記データ取込部の処理時間とを対応付けた第２の時間テーブルと、前記ダウンロード予定データのサイズと、に基づいて、前記ダウンロード予定データの圧縮要否を判別する、請求項５に記載のクライアント装置。
【請求項７】
前記第２の時間テーブルは、複数の異なる圧縮方式毎に用意され、
前記圧縮要否判別部は、前記ダウンロード予定データの圧縮が必要である場合には、さらに圧縮方式を選定し、
前記データ送出部は、前記圧縮要否判別部により前記ダウンロード予定データの圧縮が必要であると判別された場合、前記選定された圧縮方式を示す情報を前記ヘッダに格納する、請求項６に記載のクライアント装置。
【請求項８】
前記データ伸張部の処理時間を計測する伸張時間計測部と、
前記データ取込部の処理時間を計測する取込時間計測部と、をさらに備える、請求項５から７の何れか１項に記載のクライアント装置。
【請求項９】
請求項１から８の何れか１項に記載のクライアント装置と、
前記クライアント装置と通信ネットワークを介して接続するサーバと、を備える、データ通信システム。
【請求項１０】
圧縮要否判別部が、サーバにアップロードするためのアップロードデータの圧縮要否を判別し、
データ圧縮部が、前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記アップロードデータを予め定めた方式で圧縮し、
データ送出部が、前記圧縮要否判別部により前記アップロードデータの圧縮が必要でないと判別された場合、前記アップロードデータにヘッダを付加したデータを、前記サーバと通信するための通信インタフェースに送出し、前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記データ圧縮部により圧縮されたアップロードデータに、圧縮されたデータであることを示す情報を格納したヘッダを付加したデータを前記通信インタフェースに送出する、データ通信方法。
【請求項１１】
コンピュータを、
サーバにアップロードするためのアップロードデータの圧縮要否を判別する圧縮要否判別部、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記アップロードデータを予め定めた方式で圧縮するデータ圧縮部、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要でないと判別された場合、前記アップロードデータにヘッダを付加したデータを、前記サーバと通信するための通信インタフェースに送出し、前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記データ圧縮部により圧縮されたアップロードデータに、圧縮されたデータであることを示す情報を格納したヘッダを付加したデータを前記通信インタフェースに送出するデータ送出部、として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアント装置、データ通信システム、データ通信方法及びプログラムに関する。
【背景技術】
【０００２】
いわゆるクラウドという形態でのサービスの提供が浸透している。例えば、一般家庭における電力の使用状況等を管理するクライアント装置が、インターネットを介してサービス提供業者のサーバと通信可能に接続し、必要に応じて大容量データのやり取りを行えるようにしたサービス形態はよく知られている。【０００３】
このようなクライアント装置においては、低コスト化等の観点から、高性能でないＣＰＵ（Central Processing Unit）が搭載されているケースが多い。そうすると、サーバとの間で大容量データの送受信を行う場合には、ＣＰＵの処理負荷が大きくなり、クライアント装置において実行すべきメイン処理の遅延を招く可能性がある。この問題の解決策として、従来よりクライアント装置とサーバ間で圧縮したデータの送受信を行う手法が一般的に採用されている。【０００４】
圧縮したデータの通信に関し、例えば、特許文献１には、通信回線の回線速度と圧縮処理速度（演算能力）とに基づいて、送信する画像データの圧縮率を決定する圧縮画像データ伝送装置が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−２４４６９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、上記のように圧縮したデータで通信を行う場合、例えば、クライアント装置に搭載されるＣＰＵの性能が低いと、アップロードデータのサイズ等によっては、圧縮しないで送信する場合よりも、かえってＣＰＵの処理負荷が大きくなり、メイン処理の遅延を招いてしまう不都合も起こり得る。【０００７】
本発明は、上記課題を解決するためになされたものであり、データ通信の際に、メイン処理の遅延を防止できるクライアント装置等を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明に係るクライアント装置は、
サーバと通信するための通信インタフェースと、
前記サーバにアップロードするためのアップロードデータの圧縮要否を判別する圧縮要否判別部と、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記アップロードデータを予め定めた方式で圧縮するデータ圧縮部と、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要でないと判別された場合、前記アップロードデータにヘッダを付加したデータを前記通信インタフェースに送出し、前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記データ圧縮部により圧縮されたアップロードデータに、圧縮されたデータであることを示す情報を格納したヘッダを付加したデータを前記通信インタフェースに送出するデータ送出部と、を備える。
【発明の効果】
【０００９】
本発明によれば、アップロードデータの圧縮要否を判別し、圧縮が必要であると判別した場合にアップロードデータを圧縮してサーバに送信するため、データ通信の際に、メイン処理の遅延を防止することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態１に係るデータ通信システムの全体構成を示す図である。
【図２】実施形態１のクライアント装置の構成を示すブロック図である。
【図３】実施形態１の圧縮有無時間テーブルの一例を示す図である。
【図４】実施形態１のクライアント装置が備える制御部の機能構成を示す図である。
【図５】データ圧縮時における制御部による送信処理の所要時間を説明するための図である。
【図６】データ非圧縮時における制御部による送信処理の所要時間を説明するための図である。
【図７】実施形態１のデータ送信処理の手順を示すフローチャートである。
【図８】実施形態１において圧縮されていないアップロードデータに付加されるヘッダの一例を示す図である。
【図９】実施形態１において圧縮されているアップロードデータに付加されるヘッダの一例を示す図である。
【図１０】本発明の実施形態２に係るクライアント装置が備えるデータ記憶部に記憶されるテーブルを示す図である。
【図１１】実施形態２の伸張有無時間テーブルの一例を示す図である。
【図１２】実施形態２のクライアント装置が備える制御部の機能構成を示す図である。
【図１３】データ伸張時における制御部による受信処理の所要時間を説明するための図である。
【図１４】データ非伸張時における制御部による受信処理の所要時間を説明するための図である。
【図１５】実施形態２のデータ送信処理の手順を示すフローチャートである。
【図１６】実施形態２において圧縮を要求する場合にアップロードデータに付加されるヘッダの一例（その１）を示す図である。
【図１７】実施形態２において圧縮を要求する場合にアップロードデータに付加されるヘッダの一例（その２）を示す図である。
【図１８】実施形態２のデータ伸張処理の手順を示すフローチャートである。
【図１９】実施形態２において圧縮されていないダウンロードデータに付加されるヘッダの一例を示す図である。
【図２０】実施形態２において圧縮されているダウンロードデータに付加されるヘッダの一例を示す図である。
【図２１】本発明の実施形態３に係るクライアント装置が備えるデータ記憶部に記憶されるテーブルを示す図である。
【図２２】実施形態３において圧縮されているアップロードデータに付加されるヘッダの一例を示す図である。
【図２３】本発明の実施形態４に係るクライアント装置が備えるデータ記憶部に記憶されるテーブルを示す図である。
【図２４】実施形態４において圧縮されているアップロードデータに付加されるヘッダの一例を示す図である。
【図２５】実施形態５のクライアント装置が備える制御部の機能構成を示す図である。
【図２６】実施形態６のクライアント装置が備える制御部の機能構成を示す図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態について図面を参照して詳細に説明する。
【００１２】
（実施形態１）
図１は、本発明の実施形態１に係るデータ通信システムの全体構成を示す図である。このデータ通信システムは、家屋Ｈ内に配置されたクライアント装置１と、インターネット等の広域ネットワークＮに接続するサーバ２とから構成される。
【００１３】
クライアント装置１は、一般家庭で使用される電力の管理を行う、いわゆる、ＨＥＭＳ（Home Energy Management System）と呼ばれるシステムに含まれるエネルギー管理コントローラである。クライアント装置１は、家屋Ｈ内に構築された無線ネットワーク（図示せず）を介して、この家庭（需要地）で消費される電力量を計測する電力センサ４及び複数の機器５と通信可能に接続する。各機器５は、例えば、照明器、エアコン、冷蔵庫、ＩＨクッキングヒータ、炊飯器、電子レンジ、床暖房システム等の家屋Ｈ内に設置される電気機器である。
【００１４】
クライアント装置１は、ブロードバンドに対応したルータ３を介して広域ネットワークＮに接続し、必要に応じてサーバ２とデータのやり取りを行う。本実施形態では、クライアント装置１とサーバ２との間の通信プロトコルとして、ＴＣＰ／ＩＰ(Transmission Control Protocol / Internet Protocol）を使用し、データ通信のプロトコルとして、ＨＴＴＰ（HyperText Transfer Protocol）を使用する。このため、クライアント装置１は、ＨＴＴＰクライアント機能を備え、サーバ２は、ＨＴＴＰサーバ機能を備えている。
【００１５】
クライアント装置１は、図２に示すように、サーバ２と通信を行うための広域通信インタフェース１０と、電力センサ４及び各機器５と通信を行うための機器通信インタフェース１１と、プログラムやデータを保持するためのデータ記憶部１２と、これらを制御する制御部１３と、を備える。これらの各構成部は、バス１４を介して相互に接続される。
【００１６】
広域通信インタフェース１０は、ルータ３と接続し、広域ネットワークＮを経由して、サーバ２に通信接続する。広域通信インタフェース１０は、制御部１３から供給されるデータをサーバ２に送信する。また、広域通信インタフェース１０は、サーバ２から受信したデータを制御部１３に供給する。
【００１７】
機器通信インタフェース１１は、家屋Ｈ内に構築された上述の無線ネットワークに接続し、制御部１３の制御の下、電力センサ４及び各機器５と無線データ通信を行う。
【００１８】
データ記憶部１２は、例えば、フラッシュメモリ等の読み書き可能な不揮発性の半導体メモリ等で構成される。データ記憶部１２は、圧縮有無時間テーブル１２０を記憶する。また、データ記憶部１２は、図示はしないが、サーバ２とデータ通信を行うためのプログラムや、このプログラムの実行時に使用されるデータを記憶する。さらに、データ記憶部１２は、家庭内の消費電力量を監視するためのプログラムや各機器５の動作を制御するためのプログラム、そして、これらのプログラムの実行時に使用されるデータを記憶する。
【００１９】
圧縮有無時間テーブル１２０（第１の時間テーブル）は、段階的に予め定めたデータサイズ毎に、圧縮時及び非圧縮時のそれぞれにおける制御部１３による送信処理の所要時間が格納されたデータテーブルである。図３に本実施形態における圧縮有無時間テーブル１２０の一例を示す。図３の例では、制御部１３によって、データサイズが１００［ＫＢ］のデータを送信する際の所要時間が、圧縮した場合では、Ａ１［ｍｓ］、圧縮しない場合では、Ｂ１［ｍｓ］であることが示されている。なお、本実施形態では、サーバ２にアップロードするデータ（アップロードデータ）はテキストデータであり、データ圧縮方式として、ｇｚｉｐ（ＧＮＵ  ＺＩＰ）を使用する。
【００２０】
制御部１３は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）等（何れも図示せず）を含んで構成され、クライアント装置１を統括制御する。図４に示すように、制御部１３は、本発明特有の機能として、アプリケーション処理部１３０と、圧縮要否判別部１３１と、データ圧縮部１３２と、データ送出部１３３と、データ取込部１３４と、を備える。
【００２１】
アプリケーション処理部１３０は、サーバ２にアップロードするデータ（アップロードデータ）を生成する。例えば、アプリケーション処理部１３０は、この家庭の１日の消費電力量の推移に関するデータの履歴を予め定めた期間（例えば、１週間）分まとめることでアップロードデータを生成する。また、アプリケーション処理部１３０は、サーバ２からダウンロードしたデータ（ダウンロードデータ）に応じた処理を行う。例えば、アプリケーション処理部１３０は、ダウンロードデータに基づく情報を、図示しない端末装置（例えば、タブレット型のパーソナルコンピュータ）に表示させる。
【００２２】
圧縮要否判別部１３１は、アプリケーション処理部１３０が生成したアップロードデータの圧縮要否を判別する。圧縮要否判別部１３１は、生成されたアップロードデータのサイズと、圧縮有無時間テーブル１２０とに基づいて当該アップロードデータの圧縮要否を判別する。例えば、このアップロードデータのサイズが１００［ＫＢ］の場合、Ａ１＜Ｂ１ならば、圧縮が必要であると判別し、Ａ１≧Ｂ１の場合は、圧縮が必要でないと判別する。
【００２３】
データ圧縮部１３２は、圧縮要否判別部１３１により圧縮が必要であると判別された場合、アプリケーション処理部１３０が生成したアップロードデータを予め定めた方式（本実施形態では、ｇｚｉｐ）で圧縮する。
【００２４】
データ送出部１３３は、圧縮されていない又は圧縮されたアップロードデータにヘッダを付加したデータ（送信データ）を生成し、生成した送信データを広域通信インタフェース１０に送り出す処理を行う。具体的には、データ送出部１３３は、広域通信インタフェース１０の送信バッファに、送信データの先頭から順次、予め定めたサイズ分のデータを書き込む処理を行う。データ送出部１３３は、圧縮されたアップロードデータに付加するヘッダに、圧縮されたデータであることを示す情報（詳細は後述する。）を格納する。
【００２５】
ここで、アップロードデータを圧縮する場合における制御部１３による送信処理の所要時間について説明する。この場合、図５に示すように、先ず、データ圧縮部１３２によりデータ圧縮処理が行われ、このデータ圧縮処理の完了後、データ送出部１３３によるデータ送出処理が開始される。データ送出処理では、圧縮されたアップロードデータにヘッダを付加した送信データが生成される。ここで付加されるヘッダには、上記のように圧縮されたデータであることを示す情報が格納されている。
【００２６】
次に、生成された送信データの先頭から数バイトずつ送信データが読み出され、広域通信インタフェース１０の送信バッファに書き込まれる。そして、送信データから最後のデータが読み出され、広域通信インタフェース１０の送信バッファに書き込まれることで、データ送出部１３３によるデータ送出処理が完了する。
【００２７】
本実施形態では、上記のようにアップロードデータを圧縮する場合における制御部１３による送信処理の所要時間は、データ圧縮部１３２によるデータ圧縮処理の所要時間とデータ送出部１３３によるデータ送出処理の所要時間を加算した時間となる。
【００２８】
次に、アップロードデータを圧縮しない場合における制御部１３による送信処理の所要時間について説明する。この場合、図６に示すように、直ちに、データ送出部１３３によるデータ送出処理が開始される。データ送出処理では、圧縮されていないアップロードデータにヘッダを付加した送信データが生成される。ここで付加されるヘッダには、当然ながら圧縮されたデータであることを示す情報は格納されない。
【００２９】
次に、上述したように、生成された送信データの先頭から数バイトずつ順次、送信データが読み出され、広域通信インタフェース１０の送信バッファに書き込まれる。そして、送信データから最後のデータが読み出され、広域通信インタフェース１０の送信バッファに書き込まれることで、データ送出部１３３によるデータ送出処理が完了する。
【００３０】
本実施形態では、上記のように、アップロードデータを圧縮しない場合における制御部１３による送信処理の所要時間は、データ送出部１３３によるデータ送出処理の所要時間と等しくなる。
【００３１】
図４に戻り、データ取込部１３４は、サーバ２から送信され、広域通信インタフェース１０により受信されたデータ（受信データ）を広域通信インタフェース１０から取り込む処理を行う。より詳細には、広域通信インタフェース１０の受信バッファから、受信データを数バイトずつ順次、取り込む。データ取込部１３４は、取り込んだ受信データをアプリケーション処理部１３０に供給する。
【００３２】
図７は、クライアント装置１の制御部１３によって実行されるデータ送信処理の手順を示すフローチャートである。このデータ送信処理は、アプリケーション処理部１３０によってアップロードデータが生成されるたびに実行される。
【００３３】
先ず、圧縮要否判別部１３１は、生成されたアップロードデータの圧縮要否を上述したようにして判別する（ステップＳ１０１）。その結果、アップロードデータの圧縮が必要な場合（ステップＳ１０２；ＹＥＳ）、データ圧縮部１３２は、アップロードデータを予め定めた方式（本実施形態では、ｇｚｉｐ）で圧縮する（ステップＳ１０３）。一方、アップロードデータの圧縮が必要でない場合（ステップＳ１０２；ＮＯ）、データ送出部１３３は、アップロードデータにヘッダを付加することで、送信データを生成する（ステップＳ１０４）。この場合のヘッダの一例を図８に示す。
【００３４】
ステップＳ１０３に続くステップＳ１０５では、データ送出部１３３は、圧縮されたアップロードデータに、圧縮データであることを示す情報を格納したヘッダを付加することで、送信データを生成する。この場合のヘッダの一例を図９に示す。そして、データ送出部１３３は、生成した送信データを広域通信インタフェース１０に供給する（ステップＳ１０６）。具体的には、データ送出部１３３は、広域通信インタフェース１０の送信バッファに、送信データの先頭から順次、予め定めたサイズ分のデータを書き込む処理を行う。
【００３５】
以上説明したように、本発明の実施形態１に係るデータ通信システムによれば、クライアント装置１の制御部１３は、アップロードデータをサーバ２に送信する際、当該アップロードデータのサイズと、圧縮有無時間テーブル１２０とに基づいて、当該アップロードデータの圧縮要否を判別する。この際、制御部１３は、制御部１３による送信処理の所要時間が、より短くなるように当該アップロードデータの圧縮要否を判別する。
【００３６】
これにより、精度よく制御部１３による送信処理の所要時間を短くすることができ、制御部１３（ＣＰＵ）の通信時における負荷を軽減することができる。したがって、クライアント装置１に搭載されるＣＰＵが高性能でない場合においても、電力の管理や各機器５の制御に関するメイン処理の遅延を防止することができる。
【００３７】
（実施形態２）
続いて、本発明の実施形態２に係るデータ通信システムについて説明する。なお、以下の説明において、上述した実施形態と共通する構成要素等については、同一の符号を付し、その説明を省略する。
【００３８】
本実施形態のクライアント装置１が備えるデータ記憶部１２は、図１０に示すように、圧縮有無時間テーブル１２０に加え、伸張有無時間テーブル１２１がさらに記憶されている。伸張有無時間テーブル１２１（第２の時間テーブル）は、段階的に予め定めたデータサイズ毎に、伸張時及び非伸張時のそれぞれにおける制御部１３による受信処理の所要時間が格納されたデータテーブルである。図１１に本実施形態における伸張有無時間テーブル１２１の一例を示す。図１１の例では、制御部１３によって、データサイズが１００［ＫＢ］のデータを受信する際の所要時間が、伸張した場合では、Ｃ１［ｍｓ］、伸張しない場合では、Ｄ１［ｍｓ］であることが示されている。
【００３９】
なお、図１１の伸張有無時間テーブル１２１において、伸張時の処理時間に対応するデータサイズ（例えば、Ｃ１［ｍｓ］に対応する１００［ＫＢ］）は、圧縮後のデータサイズではなく、圧縮前のデータサイズを示す。
【００４０】
本実施形態のクライアント装置１が備える制御部１３は、図１２に示すように、本発明特有の機能として、アプリケーション処理部１３０と、圧縮要否判別部１３１Ａと、データ圧縮部１３２と、データ送出部１３３Ａと、データ取込部１３４と、伸張要否判別部１３５と、データ伸張部１３６と、を備える。
【００４１】
圧縮要否判別部１３１Ａは、実施形態１の圧縮要否判別部１３１と同様、アプリケーション処理部１３０が生成したアップロードデータの圧縮要否を判別する。さらに、圧縮要否判別部１３１Ａは、アップロードデータの内容がサーバ２に対するダウンロードの要求を示す場合、この要求に応答してサーバ２からダウンロードされることが予定されるダウンロード予定データの圧縮要否を判別する。
【００４２】
この場合、圧縮要否判別部１３１Ａは、ダウンロード予定データのサイズと、伸張有無時間テーブル１２１とに基づいて当該ダウンロード予定データの圧縮要否を判別する。例えば、このダウンロード予定データのサイズが１００［ＫＢ］の場合、Ｃ１＜Ｄ１ならば、圧縮が必要であると判別し、Ｃ１≧Ｄ１の場合は、圧縮が必要でないと判別する。なお、本実施形態では、ダウンロード予定データのサイズは、要求するダウンロードデータの種別に応じて判別できるものとする。あるいは、アプリケーション処理部１３０によって、要求するダウンロードデータのサイズが指定される仕様であってもよい。
【００４３】
データ送出部１３３Ａは、実施形態１のデータ送出部１３３と同様、圧縮されていない又は圧縮されたアップロードデータにヘッダを付加したデータ（送信データ）を生成し、生成した送信データを広域通信インタフェース１０に送り出す処理を行う。さらに、データ送出部１３３Ａは、圧縮要否判別部１３１Ａによりダウンロード予定データの圧縮が必要であると判別された場合、ダウンロードデータの圧縮を要求する情報（詳細は後述する。）を送信データのヘッダに格納する。
【００４４】
伸張要否判別部１３５は、広域通信インタフェース１０により受信されたサーバ２からのデータ（受信データ）にダウンロードデータが含まれている場合、そのダウンロードデータの伸張要否を判別する。伸張要否判別部１３５は、ダウンロードデータに付加されているヘッダに、圧縮されたデータであることを示す情報が格納されている場合、当該ダウンロードデータ（即ち、圧縮されたダウンロードデータ）の伸張が必要であると判別する。一方、上記のヘッダに、圧縮されたデータであることを示す情報が格納されていない場合、伸張要否判別部１３５は、当該ダウンロードデータの伸張が必要でないと判別する。
【００４５】
データ伸張部１３６は、伸張要否判別部１３５によりダウンロードデータの伸張が必要であると判別された場合、ダウンロードデータを予め定めた方式（本実施形態では、ｇｚｉｐに対応する伸張方式）で伸張（復元）する。
【００４６】
ここで、サーバ２により圧縮されたダウンロードデータを受信した場合における制御部１３による受信処理の所要時間について説明する。この場合、図１３に示すように、先ず、データ取込部１３４により広域通信インタフェース１０により受信されたデータ（受信データ）を広域通信インタフェース１０から取り込む処理（データ取込処理）が行われる。データ取込処理では、データ取込部１３４は、広域通信インタフェース１０の受信バッファから受信データを数バイトずつ順次、取り込む。このデータ取込処理の完了後、データ伸張部１３６によって、データ伸張処理が開始される。
【００４７】
なお、データ伸張部１３６は、データ取込処理で取り込まれた受信データからヘッダを除いたデータ（即ち、圧縮されているダウンロードデータ）を伸張する。そして、データ伸張処理が完了すると、伸張した（即ち、復元した）ダウンロードデータがアプリケーション処理部１３０に供給される。
【００４８】
本実施形態では、上記のように圧縮されたダウンロードデータを受信した場合における制御部１３による受信処理の所要時間は、データ取込部１３４によるデータ取込処理の所要時間とデータ伸張部１３６によるデータ伸張処理の所要時間を加算した時間となる。
【００４９】
次に、サーバ２により圧縮されていないダウンロードデータを受信した場合における制御部１３による受信処理の所要時間について説明する。この場合、図１４に示すように、、データ取込部１３４によるデータ取込処理が完了すると、データ伸張部１３６によるデータ伸張処理が行われることなく、データ取込部１３４によって取り込まれたデータからヘッダを除くデータがダウンロードデータとしてアプリケーション処理部１３０に供給される。
【００５０】
本実施形態では、上記のように圧縮されていないダウンロードデータを受信した場合における制御部１３による受信処理の所要時間は、データ取込部１３４によるデータ取込処理の所要時間と等しくなる。
【００５１】
図１５は、本実施形態のクライアント装置１の制御部１３によって実行されるデータ送信処理の手順を示すフローチャートである。このデータ送信処理は、アプリケーション処理部１３０によってアップロードデータが生成されるたびに実行される。
【００５２】
先ず、圧縮要否判別部１３１は、生成されたアップロードデータの圧縮要否を判別する（ステップＳ２０１）。その結果、アップロードデータの圧縮が必要な場合（ステップＳ２０２；ＹＥＳ）、データ圧縮部１３２は、アップロードデータを予め定めた方式（本実施形態では、ｇｚｉｐ）で圧縮する（ステップＳ２０３）。一方、アップロードデータの圧縮が必要でない場合（ステップＳ２０２；ＮＯ）、データ送出部１３３は、アップロードデータにヘッダを付加することで、送信データを生成する（ステップＳ２０４）。
【００５３】
ステップＳ２０３に続くステップＳ２０５では、データ送出部１３３は、圧縮されたアップロードデータに、圧縮データであることを示す情報を格納したヘッダを付加することで、送信データを生成する。
【００５４】
圧縮要否判別部１３１Ａは、アップロードデータの内容がサーバ２に対するダウンロードの要求を示すものであるか否かを判別する（ステップＳ２０６）。アップロードデータの内容がダウンロードの要求を示すものでない場合（ステップＳ２０６；ＮＯ）、制御部１３は、ステップＳ２１０の処理に進む。
【００５５】
一方、アップロードデータの内容がダウンロードの要求を示すものである場合（ステップＳ２０６；ＹＥＳ）、圧縮要否判別部１３１Ａは、この要求に応答してサーバ２からダウンロードされることが予定されるダウンロード予定データの圧縮要否を上述したようにして判別する（ステップＳ２０７）。圧縮要否判別部１３１Ａによってダウンロード予定データの圧縮が必要でないと判別された場合（ステップＳ２０８；ＮＯ）、制御部１３は、ステップＳ２１０の処理に進む。
【００５６】
一方、圧縮要否判別部１３１Ａによってダウンロード予定データの圧縮が必要であると判別された場合（ステップＳ２０８；ＹＥＳ）、データ送出部１３３Ａは、ステップＳ２０４又はＳ２０５で生成された送信データのヘッダに、ダウンロードデータの圧縮を要求する情報を格納する（ステップＳ２０９）。この場合のヘッダの一例を図１６及び図１７に示す。図１６は、アップロードデータが圧縮されていない場合の例を示し、図１７は、アップロードデータが圧縮されている場合の例を示す。
【００５７】
そして、データ送出部１３３Ａは、生成した送信データを広域通信インタフェース１０に供給する（ステップＳ２１０）。
【００５８】
図１８は、本実施形態のクライアント装置１の制御部１３によって実行されるデータ伸張処理の手順を示すフローチャートである。このデータ伸張処理は、データ取込部１３４によって広域通信インタフェース１０からの受信データの取り込みが完了するたびに実行される。
【００５９】
先ず、伸張要否判別部１３５は、受信データにダウンロードデータが含まれているか否かを判別する（ステップＳ３０１）。受信データにダウンロードデータが含まれていない場合（ステップＳ３０１；ＮＯ）、データ伸張処理は終了する。
【００６０】
一方、受信データにダウンロードデータが含まれている場合（ステップＳ３０１；ＹＥＳ）、伸張要否判別部１３５は、当該ダウンロードデータの伸張の要否を判別する（ステップＳ３０２）。伸張要否判別部１３５は、ダウンロードデータに付加されているヘッダに、圧縮されたデータであることを示す情報（例えば、圧縮方式を示す情報）が格納されているか否かにより、当該ダウンロードデータの伸張の要否を判別する。即ち、図１９に示すように、圧縮されたデータであることを示す情報がヘッダに格納されていない場合、伸張要否判別部１３５は、ダウンロードデータの伸張は必要でないと判別する。一方、図２０に示すように、圧縮されたデータであることを示す情報がヘッダに格納されている場合、伸張要否判別部１３５は、ダウンロードデータの伸張は必要であると判別する。
【００６１】
ダウンロードデータの伸張が必要でない場合（ステップＳ３０３；ＮＯ）、データ伸張処理は終了する。一方、ダウンロードデータの伸張が必要である場合（ステップＳ３０３；ＹＥＳ）、データ伸張部１３６は、ダウンロードデータを予め定めた方式（本実施形態では、ｇｚｉｐに対応する伸張方式）で伸張する（ステップＳ３０４）。この場合、伸張した（即ち、復元した）ダウンロードデータがアプリケーション処理部１３０に供給される。
【００６２】
以上説明したように、本発明の実施形態２に係るデータ通信システムによれば、クライアント装置１は、実施形態１のクライアント装置１と同等の機能を有し、さらに、サーバ２にダウンロードデータを要求する際、この要求に応答してサーバ２からダウンロードされることが予定されるダウンロードデータ（ダウンロード予定データ）の圧縮要否を判別する。この際、クライアント装置１の制御部１３は、ダウンロード予定データのサイズと、伸張有無時間テーブル１２１とに基づいて、制御部１３（ＣＰＵ）による受信処理の所要時間が、より短くなるようにダウンロード予定データの圧縮要否を判別する。
【００６３】
このため、精度よく制御部１３による送信処理及び受信処理の所要時間を短くすることができる。したがって、制御部１３（ＣＰＵ）において、データ送信時及びデータ受信時における負荷を軽減することができる。
【００６４】
（実施形態３）
続いて、本発明の実施形態３に係るデータ通信システムについて説明する。なお、以下の説明において、上述した実施形態と共通する構成要素等については、同一の符号を付し、その説明を省略する。
【００６５】
実施形態１では、データ圧縮部１３２によるアップロードデータを圧縮する際のデータ圧縮方式は固定であった（例えば、ｇｚｉｐ）。しかし、実施形態３では、データ圧縮部１３２は、複数の異なる圧縮方式の中から、圧縮要否判別部１３１により選定された圧縮方式でアップロードデータを圧縮する。
【００６６】
本実施形態のクライアント装置１が備える制御部１３の機能構成は、実施形態１の制御部１３の機能構成と同様である（図４参照）。また、本実施形態のクライアント装置１が備えるデータ記憶部１２には、図２１に示すように、複数の異なる圧縮方式毎の圧縮有無時間テーブル１２０が記憶されている。本実施形態では、例えば、ｇｚｉｐに対応した圧縮有無時間テーブル１２０（図３参照）の他に、ｃｏｍｐｒｅｓｓ、ｄｅｆｌａｔｅ等の圧縮方式に対応した圧縮有無時間テーブル１２０が、データ記憶部１２に記憶されている。
【００６７】
圧縮要否判別部１３１は、実施形態１と同様、圧縮有無時間テーブル１２０のアップロードデータのサイズに対応するレコードについて、圧縮時の処理時間と非圧縮時の処理時間とを比較する。但し、本実施形態では、圧縮要否判別部１３１は、かかる比較を全ての圧縮有無時間テーブル１２０について行う。そして、少なくとも何れか１つの圧縮有無時間テーブル１２０において、当該アップロードデータのサイズに対応するレコードについて、圧縮時の処理時間＜非圧縮時の処理時間が成立する場合には、圧縮要否判別部１３１は、アップロードデータの圧縮が必要であると判別する。そして、複数の圧縮有無時間テーブル１２０において、当該アップロードデータのサイズに対応するレコードついて、圧縮時の処理時間＜非圧縮時の処理時間が成立する場合には、その中から、最も圧縮時の処理時間が短い圧縮方式を今回使用する圧縮方式として選定する。
【００６８】
データ圧縮部１３２は、圧縮要否判別部１３１により選定された圧縮方式でアップロードデータを圧縮する。データ送出部１３３は、データ圧縮部１３２により圧縮が行われた場合、圧縮されたアップロードデータに、圧縮要否判別部１３１により選定された圧縮方式を示す情報を格納したヘッダを付加することで、送信データを生成する。この場合のヘッダの一例を図２２に示す。
【００６９】
以上説明したように、本発明の実施形態３に係るデータ通信システムによれば、クライアント装置１は、複数の圧縮方式から適宜選定した圧縮方式にてアップロードデータを圧縮する。したがって、制御部１３による送信処理の所要時間の短縮化がより図れる。
【００７０】
（実施形態４）
続いて、本発明の実施形態４に係るデータ通信システムについて説明する。なお、以下の説明において、上述した実施形態と共通する構成要素等については、同一の符号を付し、その説明を省略する。
【００７１】
実施形態２では、クライアント装置１からサーバ２に対してダウンロードデータの圧縮を要求した場合、サーバ２によりダウンロードデータが圧縮される際の方式は固定であった（例えば、ｇｚｉｐ）。しかし、実施形態４では、クライアント装置１は、複数の圧縮方式から選定した圧縮方式をサーバ２に対して指定する。
【００７２】
本実施形態のクライアント装置１が備える制御部１３の機能構成は、実施形態２の制御部１３の機能構成と同様である（図１２参照）。また、本実施形態のクライアント装置１が備えるデータ記憶部１２には、図２３に示すように、複数の異なる圧縮方式毎の圧縮有無時間テーブル１２０と、複数の異なる圧縮方式毎の伸張有無時間テーブル１２１とが記憶されている。複数の異なる圧縮方式毎の圧縮有無時間テーブル１２０は、実施形態３と同様、複数の圧縮方式から適宜選定した圧縮方式にてアップロードデータを圧縮するために使用される。
【００７３】
本実施形態では、例えば、ｇｚｉｐに対応した伸張有無時間テーブル１２１（図１１参照）の他に、ｃｏｍｐｒｅｓｓ、ｄｅｆｌａｔｅ等の圧縮方式に対応した伸張有無時間テーブル１２１が、データ記憶部１２に記憶されている。
【００７４】
本実施形態の圧縮要否判別部１３１Ａは、実施形態２と同様、アップロードデータの内容がサーバ２に対するダウンロードの要求を示す場合、伸張有無時間テーブル１２１のダウンロード予定データのサイズに対応するレコードについて、伸張時の処理時間と非伸張時の処理時間とを比較する。但し、本実施形態では、圧縮要否判別部１３１Ａは、かかる比較を全ての伸張有無時間テーブル１２１について行う。そして、少なくとも何れか１つの伸張有無時間テーブル１２１において、当該ダウンロード予定データのサイズに対応するレコードについて、伸張時の処理時間＜非伸張時の処理時間が成立する場合には、圧縮要否判別部１３１Ａは、ダウンロード予定データの圧縮が必要であると判別する。
【００７５】
そして、複数の伸張有無時間テーブル１２１において、当該ダウンロード予定データのサイズに対応するレコードについて、伸張時の処理時間＜非伸張時の処理時間が成立する場合には、その中から、最も伸張時の処理時間が短い圧縮方式を今回使用する圧縮方式として選定する。
【００７６】
データ送出部１３３Ａは、圧縮要否判別部１３１Ａによりダウンロード予定データの圧縮が必要であると判別された場合、圧縮要否判別部１３１Ａにより選定された圧縮方式を示す情報を送信データのヘッダに格納する。この場合のヘッダの一例を図２４に示す。図２４の例では、アップロードデータが、ｄｅｆｌａｔｅで圧縮されていることが示され、サーバ２に対してダウンロードデータのｃｏｍｐｒｅｓｓでの圧縮を要求していることが示されている。
【００７７】
サーバ２は、クライアント装置１により指定された圧縮方式でダウンロードデータを圧縮した場合、圧縮したダウンロードデータに付加するヘッダに圧縮方式を示す情報を格納する。
【００７８】
伸張要否判別部１３５は、サーバ２からのダウンロードデータに付加されているヘッダに圧縮方式を示す情報が格納されている場合、ダウンロードデータの伸張が必要であると判別し、その圧縮方式をデータ伸張部１３６に通知する。データ伸張部１３６は、伸張要否判別部１３５より通知された圧縮方式でダウンロードデータを伸張する。
【００７９】
以上説明したように、本発明の実施形態４に係るデータ通信システムによれば、クライアント装置１は、実施形態２及び３のクライアント装置１と同等の機能を有し、さらに、複数の圧縮方式から適宜選定した圧縮方式をサーバ２に対して指定することができる。したがって、制御部１３による送信処理及び受信処理の所要時間の短縮化がより図れる。
【００８０】
（実施形態５）
続いて、本発明の実施形態５に係るデータ通信システムについて説明する。なお、以下の説明において、上述した実施形態と共通する構成要素等については、同一の符号を付し、その説明を省略する。
【００８１】
本実施形態のクライアント装置１は、実運転モードと試験運転モードの２種類のモードの内の何れかのモードで動作する。実運転モードにおける動作時では、本実施形態のクライアント装置１は、実施形態３のクライアント装置１と同等の機能を果たす。
【００８２】
本実施形態のクライアント装置１は、試験運転モードにおける動作時に、複数の異なる圧縮方式毎の圧縮有無時間テーブル１２０（図２１参照）を構築することを特徴とする。以下、かかる特徴について詳細に説明する。
【００８３】
本実施形態のクライアント装置１が備える制御部１３は、図２５に示すように、アプリケーション処理部１３０と、圧縮要否判別部１３１と、データ圧縮部１３２と、データ送出部１３３と、データ取込部１３４と、圧縮時間計測部１３７と、送出時間計測部１３８と、を備える。
【００８４】
圧縮時間計測部１３７は、試験運転モードであることを条件として、データ圧縮部１３２によるアップロードデータの圧縮処理の開始から完了までに要した時間、即ち、データ圧縮部１３２の処理時間を計測する。なお、ユーザは、例えば、タブレット型のパーソナルコンピュータ等の端末装置を介した操作により、クライアント装置１の動作を試験運転モード又は実運転モードに切り替えることができる。
【００８５】
送出時間計測部１３８は、試験運転モードであることを条件として、データ送出部１３３による送信データの送出処理の開始から完了までに要した時間、即ち、データ送出部１３３の処理時間を計測する。
【００８６】
試験運転モードでは、ユーザは、上記の端末装置を介して、アプリケーション処理部１３０により生成されるアップロードデータの種別、圧縮有無、圧縮方式等の試験用の各パラメータを指定することができる。なお、試験運転モードでは、圧縮要否判別部１３１は起動しない。また、データ圧縮部１３２は、上記のパラメータで圧縮有と指定されている場合に、指定された圧縮方式でアップロードデータを圧縮する。
【００８７】
ユーザにより試験の実行が指示されると、クライアント装置１は、上記のように指定された各パラメータに基づいて、アプリケーション処理部１３０により生成されたアップロードデータをサーバ２に送信する動作を行う。制御部１３は、かかる動作によって、上記のように計測されたデータ圧縮部１３２の処理時間及び／又はデータ送出部１３３の処理時間と、アップロードデータのサイズと、に基づいて、データサイズと、圧縮時の処理時間と、非圧縮時の処理時間と、からなるレコードを生成する。そして、制御部１３は、生成したレコードを指定された圧縮方式に対応する圧縮有無時間テーブル１２０に登録する。
【００８８】
上記の試験が各パラメータを変更して繰り返し行われることで、 図２１に示す複数の異なる圧縮方式毎の圧縮有無時間テーブル１２０が構築される。
【００８９】
以上説明したように、本発明の実施形態５に係るデータ通信システムによれば、実際にクライアント装置１を動作させることで得られたデータ（データ圧縮部１３２の処理時間、データ送出部１３３の処理時間）を用いて複数の異なる圧縮方式毎の圧縮有無時間テーブル１２０が構築される。したがって、実運転モードにおいて、このように構築された圧縮有無時間テーブル１２０を使用できるため、圧縮要否判別部１３１による圧縮要否の判別精度が向上し、結果として、制御部１３による送信処理の所要時間の短縮化がより図れる。
【００９０】
（実施形態６）
続いて、本発明の実施形態６に係るデータ通信システムについて説明する。なお、以下の説明において、上述した実施形態と共通する構成要素等については、同一の符号を付し、その説明を省略する。
【００９１】
本実施形態のクライアント装置１は、実施形態５のクライアント装置１と同様、実運転モードと試験運転モードの２種類のモードの内の何れかのモードで動作する。実運転モードにおける動作時において、本実施形態のクライアント装置１は、実施形態４のクライアント装置１と同等の機能を果たす。
【００９２】
本実施形態のクライアント装置１は、試験運転モードにおける動作時に、図２３に示すような、複数の異なる圧縮方式毎の圧縮有無時間テーブル１２０と、複数の異なる圧縮方式毎の伸張有無時間テーブル１２１とを構築することを特徴とする。以下、かかる特徴について詳細に説明する。
【００９３】
本実施形態のクライアント装置１が備える制御部１３は、図２６に示すように、アプリケーション処理部１３０と、圧縮要否判別部１３１Ａと、データ圧縮部１３２と、データ送出部１３３Ａと、データ取込部１３４と、伸張要否判別部１３５と、データ伸張部１３６と、圧縮時間計測部１３７と、送出時間計測部１３８と、伸張時間計測部１３９と、取込時間計測部１４０と、を備える。
【００９４】
伸張時間計測部１３９は、試験運転モードであることを条件として、データ伸張部１３６によるダウンロードデータの伸張処理の開始から完了までに要した時間、即ち、データ伸張部１３６の処理時間を計測する。なお、実施形態５と同様、ユーザは、例えば、タブレット型のパーソナルコンピュータ等の端末装置を介した操作により、クライアント装置１の動作を試験運転モード又は実運転モードに切り替えることができる。
【００９５】
取込時間計測部１４０は、試験運転モードであることを条件として、データ取込部１３４による受信データの取込処理の開始から完了までに要した時間、即ち、データ取込部１３４の処理時間を計測する。
【００９６】
試験運転モードでは、ユーザは、実施形態５と同様、上記の端末装置を介して、アプリケーション処理部１３０により生成されるアップロードデータのサイズ、圧縮有無、圧縮方式等の圧縮有無時間テーブル１２０を構築する試験用のパラメータを指定することができる。さらに、本実施形態では、ユーザは、上記の端末装置を介して、サーバ２に要求するダウンロードデータの種別、圧縮要求の有無、要求する圧縮方式等の伸張有無時間テーブル１２１を構築する試験用のパラメータを指定することができる。
【００９７】
なお、試験運転モードでは、圧縮要否判別部１３１Ａは起動しない。また、実施形態５と同様、データ圧縮部１３２は、上記のパラメータで圧縮有と指定されている場合に、指定された圧縮方式でアップロードデータを圧縮する。
【００９８】
ユーザにより、圧縮有無時間テーブル１２０を構築する試験の実行が指示されると、実施形態５と同様、制御部１３は、計測されたデータ圧縮部１３２の処理時間及び／又はデータ送出部１３３Ａの処理時間と、アップロードデータのサイズと、に基づいて、データサイズと、圧縮時の処理時間と、非圧縮時の処理時間と、からなるレコードを生成する。そして、制御部１３は、生成したレコードを指定された圧縮方式に対応する圧縮有無時間テーブル１２０に登録する。
【００９９】
圧縮有無時間テーブル１２０を構築するめの上記の試験が各パラメータを変更して繰り返し行われることで、 図２３に示す複数の異なる圧縮方式毎の圧縮有無時間テーブル１２０が構築される。
【０１００】
また、ユーザにより、伸張有無時間テーブル１２１を構築する試験の実行が指示されると、クライアント装置１は、指定された各パラメータに基づいて、ダウンロードデータを要求するためのアップロードデータをサーバ２に送信する動作と、かかる要求に応答してサーバ２から送られて来たダウンロードデータを受信する動作とを行う。
【０１０１】
制御部１３は、かかる動作によって、上記のように計測されたデータ取込部１３４の処理時間及び／又はデータ伸張部１３６の処理時間と、ダウンロードデータの圧縮有無と、ダウンロードデータの圧縮方式と、ダウンロードデータ（非圧縮時）のサイズと、に基づいて、データサイズと、伸張時の処理時間と、非伸張時の処理時間と、からなるレコードを生成する。そして、制御部１３は、生成したレコードを、指定された圧縮方式に対応する伸張有無時間テーブル１２１に登録する。
【０１０２】
伸張有無時間テーブル１２１を構築するめの上記の試験が各パラメータを変更して繰り返し行われることで、 図２３に示す複数の異なる圧縮方式毎の伸張有無時間テーブル１２１が構築される。
【０１０３】
以上説明したように、本発明の実施形態６に係るデータ通信システムによれば、実施形態５のデータ通信システムと同様の効果を奏する。さらに、実施形態６のデータ通信システムによれば、実際にクライアント装置１を動作させることで得られたデータ（データ取込部１３４の処理時間、データ伸張部１３６の処理時間）を用いて、複数の異なる圧縮方式毎の伸張有無時間テーブル１２１が構築される。したがって、実運転モードにおいて、このように構築された伸張有無時間テーブル１２１を使用できるため、圧縮要否判別部１３１Ａによるダウンロード予定データの圧縮要否の判別精度が向上し、結果として、制御部１３による受信処理の所要時間の短縮化がより図れる。
【０１０４】
なお、本発明は、上記各実施形態に限定されず、本発明の要旨を逸脱しない範囲での種々の変更は勿論可能である。
【０１０５】
例えば、データ記憶部１２に、複数の異なる圧縮方式毎の圧縮有無時間テーブル１２０や複数の異なる圧縮方式毎の伸張有無時間テーブル１２１が記憶される場合、非圧縮時の処理時間や非伸張時の処理時間は、圧縮方式に依らずデータサイズで定まるため、共通化して記憶されるようにしてもよい。
【０１０６】
また、上記各実施形態において、クライアント装置１によって実行されるプログラムは、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＤＶＤ（Digital Versatile Disc）、ＭＯ（Magneto-Optical Disk）、ＵＳＢメモリ、メモリカード等のコンピュータ読み取り可能な記録媒体に格納して配布することも可能である。そして、かかるプログラムを特定の又は汎用のコンピュータにインストールすることによって、当該コンピュータを上記各実施形態におけるクライアント装置１として機能させることも可能である。
【０１０７】
また、上記のプログラムをインターネット等の通信ネットワーク上のサーバ装置が有するディスク装置等に格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するようにしてもよい。また、通信ネットワークを介してプログラムを転送しながら起動実行することによっても、上述の処理を達成することができる。さらに、プログラムの全部又は一部をサーバ装置上で実行させ、その処理に関する情報をコンピュータが通信ネットワークを介して送受信しながらプログラムを実行することによっても、上述の処理を達成することができる。
【０１０８】
なお、上述の機能を、ＯＳ（Operating System）が分担して実現する場合又はＯＳとアプリケーションとの協働により実現する場合等には、ＯＳ以外の部分のみを上記の記録媒体に格納して配布してもよく、また、コンピュータにダウンロード等してもよい。
【０１０９】
本発明は、広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能である。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。
【産業上の利用可能性】
【０１１０】
本発明は、クライアント装置とサーバとの間のデータ通信技術に好適に採用され得る。
【符号の説明】
【０１１１】
１  クライアント装置、２  サーバ、３  ルータ、４  電力センサ、５  機器、１０  広域通信インタフェース、１１  機器通信インタフェース、１２  データ記憶部、１３  制御部、１４  バス、１２０  圧縮有無時間テーブル、１２１  伸張有無時間テーブル、１３０  アプリケーション処理部、１３１，１３１Ａ  圧縮要否判別部、１３２  データ圧縮部、１３３，１３３Ａ  データ送出部、１３４  データ取込部、１３５  伸張要否判別部、１３６  データ伸張部、１３７  圧縮時間計測部、１３８  送出時間計測部、１３９  伸張時間計測部、１４０  取込時間計測部
【図１】
2015151186.tif 000003
【図２】
2015151186.tif 000004
【図３】
2015151186.tif 000005
【図４】
2015151186.tif 000006
【図５】
2015151186.tif 000007
【図６】
2015151186.tif 000008
【図７】
2015151186.tif 000009
【図８】
2015151186.tif 000010
【図９】
2015151186.tif 000011
【図１０】
2015151186.tif 000012
【図１１】
2015151186.tif 000013
【図１２】
2015151186.tif 000014
【図１３】
2015151186.tif 000015
【図１４】
2015151186.tif 000016
【図１５】
2015151186.tif 000017
【図１６】
2015151186.tif 000018
【図１７】
2015151186.tif 000019
【図１８】
2015151186.tif 000020
【図１９】
2015151186.tif 000021
【図２０】
2015151186.tif 000022
【図２１】
2015151186.tif 000023
【図２２】
2015151186.tif 000024
【図２３】
2015151186.tif 000025
【図２４】
2015151186.tif 000026
【図２５】
2015151186.tif 000027
【図２６】
2015151186.tif 000028
【手続補正書】
【提出日】平成28年5月20日(2016.5.20)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
上記目的を達成するため、本発明に係るクライアント装置は、
サーバと通信するための通信インタフェースと、
前記サーバにアップロードするためのアップロードデータの圧縮要否を判別すると共に、前記アップロードデータの内容が前記サーバに対するダウンロードの要求を示す場合、前記要求に対応して前記サーバからダウンロードされることが予定されるダウンロード予定データの圧縮要否を判別する圧縮要否判別部と、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記アップロードデータを予め定めた方式で圧縮するデータ圧縮部と、
前記サーバから送られてきたデータを前記通信インタフェースから取り込むデータ取込部と、
前記サーバから送られてきたデータにダウンロードデータが含まれている場合、前記ダウンロードデータの伸張要否を判別する伸張要否判別部と、
前記伸張要否判別部により前記ダウンロードデータの伸張が必要であると判別された場合、前記ダウンロードデータを予め定めた方式で伸張するデータ伸張部と、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要でないと判別された場合、前記アップロードデータにヘッダを付加したデータを前記通信インタフェースに送出し、前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記データ圧縮部により圧縮されたアップロードデータに、圧縮されたデータであることを示す情報を格納したヘッダを付加したデータを前記通信インタフェースに送出すると共に、前記圧縮要否判別部により前記ダウンロード予定データの圧縮が必要であると判別された場合、データの圧縮を要求する情報を前記ヘッダに格納するデータ送出部と、を備え、
前記圧縮要否判別部は、段階的に予め定めたデータサイズ毎に、伸張時における、前記データ伸張部の処理時間と前記データ取込部の処理時間を加算した総処理時間と、非伸張時における前記データ取込部の処理時間とを対応付けた第２の時間テーブルと、前記ダウンロード予定データのサイズと、に基づいて、前記ダウンロード予定データの圧縮要否を判別する。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
サーバと通信するための通信インタフェースと、
前記サーバにアップロードするためのアップロードデータの圧縮要否を判別すると共に、前記アップロードデータの内容が前記サーバに対するダウンロードの要求を示す場合、前記要求に対応して前記サーバからダウンロードされることが予定されるダウンロード予定データの圧縮要否を判別する圧縮要否判別部と、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記アップロードデータを予め定めた方式で圧縮するデータ圧縮部と、
前記サーバから送られてきたデータを前記通信インタフェースから取り込むデータ取込部と、
前記サーバから送られてきたデータにダウンロードデータが含まれている場合、前記ダウンロードデータの伸張要否を判別する伸張要否判別部と、
前記伸張要否判別部により前記ダウンロードデータの伸張が必要であると判別された場合、前記ダウンロードデータを予め定めた方式で伸張するデータ伸張部と、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要でないと判別された場合、前記アップロードデータにヘッダを付加したデータを前記通信インタフェースに送出し、前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記データ圧縮部により圧縮されたアップロードデータに、圧縮されたデータであることを示す情報を格納したヘッダを付加したデータを前記通信インタフェースに送出すると共に、前記圧縮要否判別部により前記ダウンロード予定データの圧縮が必要であると判別された場合、データの圧縮を要求する情報を前記ヘッダに格納するデータ送出部と、を備え、
前記圧縮要否判別部は、段階的に予め定めたデータサイズ毎に、伸張時における、前記データ伸張部の処理時間と前記データ取込部の処理時間を加算した総処理時間と、非伸張時における前記データ取込部の処理時間とを対応付けた第２の時間テーブルと、前記ダウンロード予定データのサイズと、に基づいて、前記ダウンロード予定データの圧縮要否を判別する、クライアント装置。
【請求項２】
前記圧縮要否判別部は、段階的に予め定めたデータサイズ毎に、圧縮時における、前記データ圧縮部の処理時間と前記データ送出部の処理時間を加算した総処理時間と、非圧縮時における前記データ送出部の処理時間とを対応付けた第１の時間テーブルと、前記アップロードデータのサイズと、に基づいて、前記アップロードデータの圧縮要否を判別する、請求項１に記載のクライアント装置。
【請求項３】
前記第１の時間テーブルは、複数の異なる圧縮方式毎に用意され、
前記圧縮要否判別部は、圧縮が必要である場合には、さらに圧縮方式を選定し、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記データ圧縮部は前記アップロードデータを前記選定された圧縮方式で圧縮し、前記データ送出部は、前記データ圧縮部により圧縮されたアップロードデータに、前記選定された圧縮方式を示す情報を格納したヘッダを付加したデータを前記通信インタフェースに送出する、請求項２に記載のクライアント装置。
【請求項４】
前記データ圧縮部の処理時間を計測する圧縮時間計測部と、
前記データ送出部の処理時間を計測する送出時間計測部と、をさらに備える、請求項１から３の何れか１項に記載のクライアント装置。
【請求項５】
前記第２の時間テーブルは、複数の異なる圧縮方式毎に用意され、
前記圧縮要否判別部は、前記ダウンロード予定データの圧縮が必要である場合には、さらに圧縮方式を選定し、
前記データ送出部は、前記圧縮要否判別部により前記ダウンロード予定データの圧縮が必要であると判別された場合、前記選定された圧縮方式を示す情報を前記ヘッダに格納する、請求項１から４の何れか１項に記載のクライアント装置。
【請求項６】
前記データ伸張部の処理時間を計測する伸張時間計測部と、
前記データ取込部の処理時間を計測する取込時間計測部と、をさらに備える、請求項１から５の何れか１項に記載のクライアント装置。
【請求項７】
請求項１から６の何れか１項に記載のクライアント装置と、
前記クライアント装置と通信ネットワークを介して接続するサーバと、を備える、データ通信システム。
【請求項８】
圧縮要否判別部が、サーバにアップロードするためのアップロードデータの圧縮要否を判別すると共に、前記アップロードデータの内容が前記サーバに対するダウンロードの要求を示す場合、前記要求に対応して前記サーバからダウンロードされることが予定されるダウンロード予定データの圧縮要否を判別し、
データ圧縮部が、前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記アップロードデータを予め定めた方式で圧縮し、
データ取込部が、前記サーバから送られてきたデータを前記サーバと通信するための通信インタフェースから取り込み、
伸張要否判別部が、前記サーバから送られてきたデータにダウンロードデータが含まれている場合、前記ダウンロードデータの伸張要否を判別し、
データ伸張部が、前記伸張要否判別部により前記ダウンロードデータの伸張が必要であると判別された場合、前記ダウンロードデータを予め定めた方式で伸張し、
データ送出部が、前記圧縮要否判別部により前記アップロードデータの圧縮が必要でないと判別された場合、前記アップロードデータにヘッダを付加したデータを前記通信インタフェースに送出し、前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記データ圧縮部により圧縮されたアップロードデータに、圧縮されたデータであることを示す情報を格納したヘッダを付加したデータを前記通信インタフェースに送出すると共に、前記圧縮要否判別部により前記ダウンロード予定データの圧縮が必要であると判別された場合、データの圧縮を要求する情報を前記ヘッダに格納し、
前記圧縮要否判別部が、段階的に予め定めたデータサイズ毎に、伸張時における、前記データ伸張部の処理時間と前記データ取込部の処理時間を加算した総処理時間と、非伸張時における前記データ取込部の処理時間とを対応付けた第２の時間テーブルと、前記ダウンロード予定データのサイズと、に基づいて、前記ダウンロード予定データの圧縮要否を判別する、データ通信方法。
【請求項９】
コンピュータを、
サーバにアップロードするためのアップロードデータの圧縮要否を判別すると共に、前記アップロードデータの内容が前記サーバに対するダウンロードの要求を示す場合、前記要求に対応して前記サーバからダウンロードされることが予定されるダウンロード予定データの圧縮要否を判別する圧縮要否判別部、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記アップロードデータを予め定めた方式で圧縮するデータ圧縮部、
前記サーバから送られてきたデータを前記サーバと通信するための通信インタフェースから取り込むデータ取込部、
前記サーバから送られてきたデータにダウンロードデータが含まれている場合、前記ダウンロードデータの伸張要否を判別する伸張要否判別部、
前記伸張要否判別部により前記ダウンロードデータの伸張が必要であると判別された場合、前記ダウンロードデータを予め定めた方式で伸張するデータ伸張部、
前記圧縮要否判別部により前記アップロードデータの圧縮が必要でないと判別された場合、前記アップロードデータにヘッダを付加したデータを前記通信インタフェースに送出し、前記圧縮要否判別部により前記アップロードデータの圧縮が必要であると判別された場合、前記データ圧縮部により圧縮されたアップロードデータに、圧縮されたデータであることを示す情報を格納したヘッダを付加したデータを前記通信インタフェースに送出すると共に、前記圧縮要否判別部により前記ダウンロード予定データの圧縮が必要であると判別された場合、データの圧縮を要求する情報を前記ヘッダに格納するデータ送出部、として機能させるためのプログラムであって、
前記圧縮要否判別部は、段階的に予め定めたデータサイズ毎に、伸張時における、前記データ伸張部の処理時間と前記データ取込部の処理時間を加算した総処理時間と、非伸張時における前記データ取込部の処理時間とを対応付けた第２の時間テーブルと、前記ダウンロード予定データのサイズと、に基づいて、前記ダウンロード予定データの圧縮要否を判別する、プログラム。
【国際調査報告】
2015151186.tif 000029
2015151186.tif 000030
2015151186.tif 000031