(57)【要約】【課題】ＵＤＰを用いたデータ通信環境において、データ伝送量が少なく単発で送信される場合であっても、通信時の信頼性を向上できる機器管理装置、通信制御方法、通信制御プログラム、及びそのプログラムを記録した記録媒体を提供する。【解決手段】機器管理装置１００は、所定のデータ伝送路Ｎを介して接続される１又は複数の機器２００と、ＴＣＰ（Transmission Control Protocol）及びＵＤＰ（User Datagram Protocol）を用いた通信を行う装置であって、ＵＤＰを用いた通信タスク２２の動作要求を受け付けると、受け付けた動作要求に応じて、ＴＣＰに係る通信制御処理を行う必要があるか否かを判定する判定手段２１２と、判定手段２１２による要否判定結果に基づき、動作中のＴＣＰの通信タスク２３を制御し、要求されたＵＤＰの通信タスク２２を実行する制御手段２１３と、を有している。【選択図】図４
2011060032.tif 000002
【特許請求の範囲】
【請求項１】
所定のデータ伝送路を介して接続される１又は複数の機器と、ＴＣＰ（Transmission Control Protocol）及びＵＤＰ（User Datagram Protocol）を用いた通信を行う機器管理装置であって、
ＵＤＰを用いた通信タスクの動作要求を受け付けると、受け付けた動作要求に応じて、ＴＣＰに係る通信制御処理を行う必要があるか否かを判定する判定手段と、
前記判定手段による要否判定結果に基づき、動作中のＴＣＰの通信タスクを制御し、要求されたＵＤＰの通信タスクを実行する制御手段と、を有することを特徴とする機器管理装置。
【請求項２】
当該装置で動作するＴＣＰを用いた通信タスク数を取得する取得手段と、
前記取得手段により取得した通信タスク数に基づき、前記ＴＣＰのデータ通信に係るデータ伝送量を算出する算出手段と、を有し、
前記判定手段は、
前記算出手段により算出したデータ伝送量と、予め設定しておいた通信制御用の閾値とを比較し、比較結果に基づき、ＴＣＰに係る通信制御処理を行う必要があるか否かを判定することを特徴とする請求項１に記載の機器管理装置。
【請求項３】
前記判定手段は、
前記算出したデータ伝送量が、前記通信制御用の閾値を超過した場合、
前記ＴＣＰに係る通信制御処理を行う必要があると判定することを特徴とする請求項２に記載の機器管理装置。
【請求項４】
前記制御手段は、
前記判定手段により、ＴＣＰに係る通信制御処理を行う必要があると判定された場合、
動作中のＴＣＰの通信タスクを一時停止し、その間に、要求されたＵＤＰの通信タスクを実行し、実行終了後に、停止した前記ＴＣＰの通信タスクを再開することを特徴とする請求項１ないし３のいずれか一項に記載の機器管理装置。
【請求項５】
前記制御手段は、
前記判定手段により、ＴＣＰに係る通信制御処理を行う必要があると判定された場合、
ＴＣＰのウィンドウサイズを所定の範囲に制限し、その間に、要求されたＵＤＰの通信タスクを実行し、実行終了後に、制限した前記ＴＣＰのウィンドウサイズを元のサイズに戻すことを特徴とする請求項１ないし３のいずれか一項に記載の機器管理装置。
【請求項６】
前記判定手段は、
前記所定のデータ伝送路のＴＣＰに係る通信利用率の実測値と、予め設定しておいた通信制御用の閾値とを比較し、比較結果に基づき、ＴＣＰに係る通信制御処理を行う必要があるか否かを判定することを特徴とする請求項１ないし５のいずれか一項に記載の機器管理装置。
【請求項７】
所定のデータ伝送路を介して接続される１又は複数の機器と、ＴＣＰ（Transmission Control Protocol）及びＵＤＰ（User Datagram Protocol）を用いた通信を行う機器管理装置における通信制御方法であって、
ＵＤＰを用いた通信タスクの動作要求を受け付けると、受け付けた動作要求に応じて、ＴＣＰに係る通信制御処理を行う必要があるか否かを判定する判定手順と、
前記判定手順による要否判定結果に基づき、動作中のＴＣＰの通信タスクを制御し、要求されたＵＤＰの通信タスクを実行する制御手順と、を有することを特徴とする通信制御方法。
【請求項８】
所定のデータ伝送路を介して接続される１又は複数の機器と、ＴＣＰ（Transmission Control Protocol）及びＵＤＰ（User Datagram Protocol）を用いた通信を行う機器管理装置における通信制御プログラムであって、
コンピュータを、
ＵＤＰを用いた通信タスクの動作要求を受け付けると、受け付けた動作要求に応じて、ＴＣＰに係る通信制御処理を行う必要があるか否かを判定する判定手段と、
前記判定手段による要否判定結果に基づき、動作中のＴＣＰの通信タスクを制御し、要求されたＵＤＰの通信タスクを実行する制御手段として機能させる通信制御プログラム。
【請求項９】
請求項８に記載のプログラムを記憶した、コンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定のデータ伝送路を介して接続される１又は複数の機器を管理する機器管理装置に関し、特に、管理対象である機器との通信制御を行う技術に関するものである。
【背景技術】
【０００２】
ネットワークに接続される１又は複数の画像処理装置（以下「管理対象機器」と言う）の管理を効率的に行うため、機器管理装置（機器管理サーバ）により管理対象機器を一元管理する機器管理システムが知られている。
【０００３】
機器管理システムでは、収集した機器情報に基づき管理対象機器を一元管理する。
機器管理装置は、所定の通信プロトコルを用いて管理対象機器とデータ通信を行い、機器情報を取得する。このとき取得される機器情報には、例えば、機器の状態情報や搭載機能の動作情報などがある。
【０００４】
また、機器管理装置は、上記情報収集だけでなく、管理対象機器とデータ通信を行い、プログラムやデータなどのソフトウェアを送信したりする。ソフトウェアを管理対象機器に送信する場面には、例えば、管理対象機器のファームウェアアップデートなどがある。
【０００５】
このような機器管理システムでは、管理対象機器と機器管理装置との間で行われるデータ通信の信頼性が重要となる。
【０００６】
そこで、例えば、特許文献１には、ＴＣＰ（Transmission Control Protocol）及びＵＤＰ（User Datagram Protocol）を用いてデータ伝送を行う装置がＩＰ網を介して接続される通信システム環境において、装置がＵＤＰデータ伝送量を監視するとともに、ＵＤＰデータ伝送量の増加に伴い、ＴＣＰのウィンドウサイズを変更することにより、ＴＣＰデータ伝送に使用する帯域幅を制御し、ＵＤＰデータ伝送における揺らぎを低減する帯域幅制御技術が提案されている。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の通信制御では、機器管理システムにおいてデータ通信時の信頼性を維持することが難しい。なぜなら、機器管理におけるデータ通信には、次のような特性がある。まず、ＳＮＭＰ（Simple Network Management Protocol）などのＵＤＰを用いるデータ量（ＵＤＰのデータ伝送量）が少ない点である。また、データが断続的でなく単発で送信されることが多い点である。
【０００８】
例えば、特許文献１に示す技術は、主にリアルタイムの音声や画像などのマルチメディアデータの配信に特化したものである。そのため、ＵＤＰのデータ伝送量が多く、断続的に送信される。また、ＴＣＰの帯域幅を制御する前のデータは、欠損しやすいが、欠損してもさほど問題がない。このようなことから、マルチメディアデータの配信では、ＵＤＰのデータ伝送量を監視し、データ伝送量が所定の閾値を超過した場合に、ＴＣＰのデータ伝送に用いる帯域幅を制御する方法が問題なく適用できる。
【０００９】
つまり、従来の通信制御は、ＵＤＰのデータ伝送量が多く、断続的に送信されるデータ通信を想定し、ＵＤＰのデータ伝送における揺らぎを低減し、有効な帯域確保を実現する技術である。
【００１０】
しかし、機器管理においては、上記データ通信特性から、従来の通信制御を適用し、データ通信時の信頼性を維持することは難しい。
【００１１】
本発明は上記従来技術の問題点を鑑み提案されたものであり、その目的とするところは、ＵＤＰを用いたデータ通信環境において、データ伝送量が少なく単発で送信される場合であっても、通信時の信頼性を維持できる機器管理装置、通信制御方法、通信制御プログラム、及びそのプログラムを記録した記録媒体を提供することにある。
【課題を解決するための手段】
【００１２】
上記目的を達成するため、本発明に係る機器管理装置は、所定のデータ伝送路を介して接続される１又は複数の機器と、ＴＣＰ及びＵＤＰを用いた通信を行う機器管理装置であって、ＵＤＰを用いた通信タスクの動作要求を受け付けると、受け付けた動作要求に応じて、ＴＣＰに係る通信制御処理を行う必要があるか否かを判定する判定手段と、前記判定手段による要否判定結果に基づき、動作中のＴＣＰの通信タスクを制御し、要求されたＵＤＰの通信タスクを実行する制御手段と、を有している。
【００１３】
また、上記目的を達成するため、本発明に係る機器管理装置は、当該装置で動作するＴＣＰを用いた通信タスク数を取得する取得手段と、前記取得手段により取得した通信タスク数に基づき、前記ＴＣＰのデータ通信に係るデータ伝送量（予測値）を算出する算出手段と、を有し、前記判定手段が、前記算出手段により算出したデータ伝送量と、予め設定しておいた通信制御用の閾値とを比較し、比較結果に基づき、ＴＣＰに係る通信制御処理を行う必要があるか否かを判定してもよい。
【００１４】
このような構成によって、本発明に係る機器管理装置は、当該装置において、ＵＤＰを用いた通信タスクの動作要求を受け付けると、当該装置で動作するＴＣＰを用いた通信タスク数を取得し、取得した通信タスク数に基づき、ＴＣＰのデータ通信に係るデータ伝送量（予測値）を算出する。機器管理装置は、算出したデータ伝送量と、予め設定しておいた通信制御用の閾値とを比較し、比較結果に基づき、ＴＣＰに係る通信制御処理を行う必要があるか否かを判定する（ＴＣＰに係る通信制御の要否判定を行う）。機器管理装置は、通信制御の要否判定結果に基づき、動作中のＴＣＰの通信タスクを制御し、要求されたＵＤＰの通信タスクを実行する。
【００１５】
これによって、本発明に係る機器管理装置は、ＵＤＰではなくＴＣＰの通信データを監視し、ＴＣＰに係る通信制御の要否判定結果に基づき、ＵＤＰのデータ伝送を行う前にＴＣＰのデータ伝送を制御する。その結果、ＵＤＰを用いたデータ通信環境において、データ伝送量が少なく単発で送信される場合であっても、通信時の信頼性を維持できる。
【００１６】
上記目的を達成するため、本発明に係る通信制御方法は、所定のデータ伝送路を介して接続される１又は複数の機器と、ＴＣＰ及びＵＤＰを用いた通信を行う機器管理装置における通信制御方法であって、ＵＤＰを用いた通信タスクの動作要求を受け付けると、受け付けた動作要求に応じて、ＴＣＰに係る通信制御処理を行う必要があるか否かを判定する判定手順と、前記判定手順による要否判定結果に基づき、動作中のＴＣＰの通信タスクを制御し、要求されたＵＤＰの通信タスクを実行する制御手順と、を有している。
【００１７】
このような手順によって、本発明に係る通信制御方法は、ＵＤＰではなくＴＣＰの通信データを監視し、ＴＣＰに係る通信制御の要否判定結果に基づき、ＵＤＰのデータ伝送を行う前にＴＣＰのデータ伝送を制御すると言う動作を実現する。
【００１８】
これによって、本発明に係る通信制御方法は、ＵＤＰを用いたデータ通信環境において、データ伝送量が少なく単発で送信される場合であっても、通信時の信頼性を維持することが可能な環境を提供できる。
【発明の効果】
【００１９】
本発明によれば、ＵＤＰではなくＴＣＰの通信データを監視し、ＴＣＰに係る通信制御の要否判定結果に基づき、ＵＤＰのデータ伝送を行う前にＴＣＰのデータ伝送を制御することで、ＵＤＰを用いたデータ通信環境において、データ伝送量が少なく単発で送信される場合であっても、通信時の信頼性を維持することが可能な機器管理装置、通信制御方法、通信制御プログラム、及びそのプログラムを記録した記録媒体を提供することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の第１の実施形態に係る機器管理システムの構成例を示す図である。
【図２】本発明の第１の実施形態に係る機器管理装置のハードウェア構成例を示す図である。
【図３】本発明の第１の実施形態に係る機器管理装置のソフトウェア構成例を示す図である。
【図４】本発明の第１の実施形態に係る通信制御機能の構成例を示す図である。
【図５】本発明の第１の実施形態に係る通信制御を行う処理手順例を示すシーケンス図である。
【図６】本発明の第１の実施形態に係るデータ伝送量情報のデータ例を示す図である。
【発明を実施するための形態】
【００２１】
以下、本発明の好適な実施の形態（以下「実施形態」と言う）について、図面を用いて詳細に説明する。
【００２２】
［第１の実施形態］
＜システム構成＞
本実施形態に係る機器管理装置を備えたシステム構成について説明する。
【００２３】
図１は、本実施形態に係る機器管理システム１の構成例を示す図である。
図１には、１又は複数の管理対象機器２００と、１又は複数のクライアントＰＣ（Personal Computer）３００と、機器管理装置（機器管理サーバ）１００とが、ネットワークなどの所定のデータ伝送路Ｎで接続される機器管理システム１の構成例が示されている。
【００２４】
管理対象機器２００は、例えば、ＭＦＰ（Multifunction Peripheral）やＬＰ（Laser Printer）と言ったオフィス業務内の作業で利用される画像処理装置である。また、クライアントＰＣ３００は、例えば、ユーザが情報閲覧や作業要求を行う情報処理装置である。
【００２５】
また、機器管理装置１００は、管理対象機器２００から、所定のデータ伝送路Ｎ（例えば「ＬＡＮ：Local Area Network」）を介して、機器情報（例えば「機器の状態情報」及び「搭載機能の動作情報」）を収集する。機器管理装置１００は、収集した機器情報に基づき、管理対象機器２００を一元管理する。この一元管理の中には、例えば、管理対象機器２００で動作するソフトウェアのアップデート（例えば「ファームウェアアップデート」）などがある。
【００２６】
このようなシステム構成により、機器管理システム１は、ユーザに対して、機器管理サービス（機器管理機能）を提供することができる。
【００２７】
また、機器管理装置１００では、上記機器情報の取得を、ＳＮＭＰなどのＵＰＤを用いたデータ通信により行い、上記ソフトウェアのアップデートを、ＴＣＰを用いたデータ通信により行う。なお、以降の説明では、上記機器情報の取得を「状態モニタリング」と称し、上記ソフトウェアのアップデートを「ファームウェアアップデート」と称す。
【００２８】
＜ハードウェア構成＞
本実施形態に係る機器管理装置１００のハードウェア構成について説明する。
【００２９】
図２は、本実施形態に係る機器管理装置１００のハードウェア構成例を示す図である。
図２に示すように、機器管理装置１００は、入力装置１０１、表示装置１０２、ドライブ装置１０３、ＲＡＭ（Random Access Memory）１０４、ＲＯＭ（Read Only Memory）１０５、ＣＰＵ（Central Processing Unit）１０６、インタフェース装置１０７、及びＨＤＤ（Hard Disk Drive）１０８などを備え、それぞれがバスＢで相互に接続されている。
【００３０】
入力装置１０１は、キーボード及びマウスなどを含み、機器管理装置１００に各操作信号を入力するのに用いられる。表示装置１０２は、ディスプレイなどを含み、機器管理装置１００による処理結果（例えば「機器情報」）などを表示する。
【００３１】
インタフェース装置１０７は、機器管理装置１００をネットワークなどの所定のデータ伝送路に接続するインタフェースである。よって、機器管理装置１００は、インタフェース装置１０７を介して、管理対象機器２００やクライアントＰＣ３００とデータ通信を行うことができる。
【００３２】
ＨＤＤ１０８は、各種プログラム及びデータを格納している不揮発性の記憶装置である。格納されるプログラム及びデータには、例えば、機器管理装置１００全体を制御する情報処理システム（例えば「Ｗｉｎｄｏｗｓ（登録商標）」や「ＵＮＩＸ（登録商標）」などの基本ソフトウェアであるＯＳ（Operating System））、及び情報処理システム上において各種機能（例えば「機器管理機能」）を提供するアプリケーションなどがある。また、ＨＤＤ１０８は、格納している上記プログラム及びデータを、所定のファイルシステム及び／又はＤＢ（Data Base）により管理している。
【００３３】
ドライブ装置１０３は、着脱可能な記録媒体１０３ａとのインタフェースである。これにより、機器管理装置１００は、ドライブ装置１０３を介して、記録媒体１０３ａの読み取り及び／又は書き込みを行うことができる。
【００３４】
ＲＯＭ１０５は、電源を切っても内部データを保持することができる不揮発性の半導体メモリ（記憶装置）である。ＲＯＭ１０５には、機器管理装置１００が起動されるときに実行されるＢＩＯＳ（Basic Input/Output System）や、機器管理装置１００のシステム設定及びネットワーク関連設定などのデータが格納されている。
【００３５】
ＲＡＭ１０４は、上記各種記憶装置から読み出されたプログラム及びデータを一時保持する揮発性の半導体メモリ（記憶装置）である。ＣＰＵ１０６は、上記ＲＡＭ１０４上に読み出したプログラムを実行することにより、機器管理装置１００の全体制御及び各種搭載機能の動作を実現する。
【００３６】
このようなハードウェア構成により、機器管理装置１００は、例えば、ＨＤＤ１０８からＲＡＭ１０４上に読み出したプログラム（搭載機能を実現するソフトウェア部品）をＣＰＵ１０６により実行し、搭載機能を実現することができる。
【００３７】
また、機器管理装置１００は、上記ハードウェア構成からも分かるようにＰＣなどと略同一の構成をしている。
【００３８】
＜機器特定機能＞
本実施形態に係る通信制御機能について説明する。
【００３９】
本実施形態に係る機器管理装置１００では、当該装置において、ＵＤＰを用いた通信タスクの動作要求を受け付けると、当該装置で動作するＴＣＰを用いた通信タスク数を取得し、取得した通信タスク数に基づき、ＴＣＰのデータ通信に係るデータ伝送量（予測値）を算出する。機器管理装置１００は、算出したデータ伝送量と、予め設定しておいた通信制御用の閾値とを比較し、比較結果に基づき、ＴＣＰに係る通信制御処理を行う必要があるか否かを判定する（ＴＣＰに係る通信制御の要否判定を行う）。機器管理装置１００は、通信制御の要否判定結果に基づき、動作中のＴＣＰの通信タスクを制御し、要求されたＵＤＰの通信タスクを実行する。機器管理装置１００は、このような通信制御機能を有している。
【００４０】
従来の通信制御では、ＵＤＰのデータ伝送量が多く、断続的に送信されるデータ通信を想定した技術であることから、ＵＤＰを用いたデータ通信環境において、データ伝送量が少なく単発で送信される場合、通信時の信頼性を維持することが難しい。
【００４１】
また、一般的には、再送機能がなく、データ通信時の信頼性が低い通信プロトコルを用いる際に、その信頼性を維持する方法として、通信プロトコルの上位に位置するソフトウェア（通信機能を用いるアプリケーション）などで再送処理を実現する方法がある。しかし、この方法では、ネットワーク上の通信負荷が高い場合、ルータで処理できる限界を超える（バッファが溢れる）などの理由により、そのデータが破棄され失敗する可能性が考えられる。
【００４２】
また、このような状況下でも、信頼性の維持を図りたい場合には、再総回数を増加させる方法がある。しかし、この方法では、次のような問題も考えられる。１つに、再送データがネットワーク上に送信されるため、この再送処理により、ネットワーク上の通信負荷がより多くなってしまう点。もう１つに、通常ＳＮＭＰのレスポンス（応答）がない場合には、機器の電源投入やネットワークへの接続状況などを確認するが、この確認処理が完了するまでの時間が余分にかかり、処理速度（パフォーマンス）に悪影響を及ぼす点である。例えば、データ通信１回あたりのタイムアウト時間３（秒）の場合、再送を行わないときは、処理時間３秒（＝３（秒）×１（回））であるのに対して、３回の再送を行ったときは、処理時間１２秒（＝３（秒）×（１＋３）（回））となる。
【００４３】
そこで、本実施形態に係る機器管理装置１００では、ＵＤＰではなくＴＣＰの通信データを監視し、ＴＣＰに係る通信制御の要否判定結果に基づき、ＵＤＰのデータ伝送を行う前にＴＣＰのデータ伝送を制御する。また、機器管理装置１００では、ＴＣＰのデータ伝送制御を、データ伝送の一時停止・再開による制御、又はデータ伝送を継続しながらＴＣＰのウィンドウサイズ（ＴＣＰの帯域幅）制御により行う。
【００４４】
ここで、本実施形態に係る機器管理装置１００が有するソフトウェアの構成について説明する。
【００４５】
図３は、本実施形態に係る機器管理装置１００のソフトウェア構成例を示す図である。
図３に示すように、機器管理装置１００は、機器管理機能を実現するソフトウェア（以下「機器管理ソフトウェア」と言う）２０を搭載している。
【００４６】
機器管理ソフトウェア２０は、タスク管理２１を有し、１又は複数の通信タスクを管理する。管理対象の通信タスクには、状態モニタリングなどのＵＤＰ通信タスク２２と、ファームウェアアップデートなどのＴＣＰ通信タスク２３がある。
【００４７】
本実施形態に係るタスク管理２１では、例えば、次のように、上記状態モニタリング２２及び上記ファームウェアアップデート２３を管理している。
【００４８】
タスク管理２１は、ＵＤＰ通信タスク２２から、機器の状態情報を含む機器情報の取得実行を要求される（１）。
【００４９】
タスク管理２１は、要求を受け付けると、実行中のファームウェアアップデート２３に対して、状態モニタリング２２実行時（ＵＤＰのデータ通信時）の信頼性を維持するための通信制御処理を指示する（２）。例えば、ＴＣＰのデータ伝送を制御する場合には、動作中のファームウェアアップデート２３に対して、動作の一時停止を指示する。また、ＴＣＰのウィンドウサイズを制御する場合には、動作中のファームウェアアップデート２３に対して、ウィンドウサイズの制限（ＴＣＰの帯域幅制限）を指示する。
【００５０】
タスク管理２１は、状態モニタリング２２に対して、機器情報取得の実行を許可する（３）。その結果、状態モニタリング２２は、管理対象機器２００から機器情報を取得後、タスク管理２１に対して、情報取得の終了を通知する（４）。
【００５１】
タスク管理２１は、機器情報取得終了の通知を受けて、ファームウェアアップデート２３に対して、一時的に行っている通信制御の解除を指示する（５）。例えば、ＴＣＰのデータ伝送を制御している場合には、一時停止しているファームウェアアップデート２３に対して、処理の復帰（再開）を指示する。また、ＴＣＰのウィンドウサイズを制御している場合には、ＴＣＰのウィンドウサイズを制限しているファームウェアアップデート２３に対して、ウィンドウサイズを元に戻すように指示する。
【００５２】
これによって、本実施形態に係る機器管理装置１００は、ＵＤＰを用いたデータ通信環境において、データ伝送量が少なく単発で送信される場合であっても、通信時の信頼性を維持することができる。
【００５３】
以下に、上記通信制御機能の構成とその動作について説明する。
図４は、本実施形態に係る通信制御機能の構成例を示す図である。
図４に示すように、機器管理装置１００では、上記通信制御機能を実現するために、タスク管理２１が、実行タスク数取得部２１１、通信制御判定部２１２、及び通信タスク制御部２１３などを有している。
【００５４】
実行タスク数取得部２１１は、動作中のＴＣＰの通信タスク数（実行タスク数）を取得する機能部である。本実施形態に係る機器管理装置１００では、例えば、ファームウェアアップデート２３のように、１又は複数のＴＣＰ通信タスク２３が動作している。実行タスク数取得部２１１は、例えば、機器管理装置１００で実行中の複数のプロセスやスレッドから、所定の識別子に基づきＴＣＰ通信タスク２３のプロセス又はスレッドを特定することでカウント（計数）する。
【００５５】
通信制御判定部２１２は、ＵＤＰを用いたデータ通信時の信頼性を維持するために、ＴＣＰに係る通信制御処理を行う必要があるか否かを判定する（ＴＣＰに係る通信制御の要否判定を行う）。
【００５６】
通信制御判定部２１２は、次のようにして、ＴＣＰに係る通信制御の要否判定を行う。
まず、通信制御判定部２１２は、取得した動作中のＴＣＰの通信タスク数に基づき、ＴＣＰのデータ通信に係るデータ伝送量（予測値）を算出する。ＴＣＰ通信タスク２３は、そのタスクによってデータ伝送量が異なる。また、通信タスクが多いほど、ネットワークの使用量も増加する。よって、ＴＣＰ通信制御部２１２は、通信タスクの想定データ伝送量と実行中の該当通信タスク数とを積算し、異なる種別の通信タスクが存在する場合、種別ごとの積算値を加算することで、ＴＣＰにおける全体のデータ伝送量の予測値を算出する。なお、上記通信タスクの想定データ伝送量は、例えば、データ伝送量情報３１として、機器管理装置１００が備える記憶装置（例えば「ＨＤＤ」）の所定の記憶領域に保持されている。データ伝送量情報３１の具体的なデータ例及びデータ伝送量（予測値）の具体的な算出方法については、機能動作の説明で後述する。
【００５７】
その結果、通信制御判定部２１２は、算出したデータ伝送量（予測値）と、予め設定しておいた通信制御用の閾値とを比較し、比較結果に基づき、ＴＣＰに係る通信制御の要否判定を行う。通信制御用の閾値は、例えば、管理者が、機器管理装置１００が備える表示装置１０２に表示される管理画面上のＧＵＩ（Graphical User Interface）を介して設定可能な値である。通信制御判定部２１２は、算出したデータ伝送量が、通信制御用の閾値を超過している場合、ＵＤＰを用いたデータ通信時の信頼性を維持するために、ＴＣＰに係る通信制御を行う必要があると判定する。一方、超過していない間は、ＴＣＰに係る通信制御を行う必要がないと判定する。通信制御判定部２１２は、上記要否判定結果に基づき、後述する通信タスク制御部２１３に対して、各通信タスクに行う通信制御を指示する。
【００５８】
このように、本実施形態に係る機器管理装置１００では、ＵＤＰではなくＴＣＰの通信データを監視し、ＴＣＰに係る通信制御の要否判定を行う。
【００５９】
通信タスク制御部２１３は、受け付けた通信制御に係る指示に従って、動作中のＴＣＰ通信タスク２３を制御し、要求されたＵＤＰ通信タスク２２を実行する。このとき、通信タスク制御部２１３は、通信制御処理として、例えば、「ＴＣＰのデータ伝送の一時停止・再開による制御」又は「ＴＣＰのウィンドウサイズ制御（ＴＣＰの帯域幅制御）」などを行う。
【００６０】
例えば、通信タスク制御部２１３は、ＴＣＰのデータ伝送の一時停止・再開による制御を行う場合、次のような通信制御を行う。通信タスク制御部２１３は、動作中のＴＣＰ通信タスク２３を一時停止し、その間に、要求されたＵＤＰ通信タスク２２を実行し、実行終了後に、停止したＴＣＰ通信タスク２３を再開する。
【００６１】
また、通信タスク制御部２１３は、ＴＣＰのウィンドウサイズ制御を行う場合、次のような通信制御を行う。通信タスク制御部２１３は、ＴＣＰのウィンドウサイズ（ＴＣＰの帯域幅）を所定の範囲に制限し、その間に、要求されたＵＤＰ通信タスク２２を実行し、実行終了後に、制限したＴＣＰのウィンドウサイズを元のサイズに戻す。
【００６２】
このように、本実施形態に係る機器管理装置１００では、ＴＣＰに係る通信制御の要否判定結果に基づき、ＵＤＰのデータ伝送を行う前にＴＣＰのデータ伝送を制御する。また、ＵＤＰのデータ伝送を行う前にＴＣＰのウィンドウサイズ（ＴＣＰの帯域幅）を制御する。
【００６３】
このように、本実施形態に係る通信制御機能は、上記各機能部が連係動作することにより実現される。
【００６４】
次に、通信制御機能の詳細な動作（機能部群の連係動作）について、処理手順を示すシーケンス図を用いて説明する。
【００６５】
通信制御機能は、機器管理装置１００に搭載（インストール）されるプログラム（機器管理に係るソフトウェア部品）が、ＣＰＵ１０６により、格納先（例えば「ＲＯＭ」）からＲＡＭ１０４上に読み出され、以下の処理が実行されることで実現される。
【００６６】
図５は、本実施形態に係る通信制御を行う処理手順例を示すシーケンス図である。なお、以下の説明では、実行要求されるＵＤＰ通信タスクを「状態モニタリング２２」、通信制御対象のＴＣＰ通信タスクを「ファームウェアアップデート２３」として説明する。
【００６７】
図５に示すように、機器管理装置１００は、機器管理ソフトウェア２０において、対応する各通信タスク２２，２３に対して処理が要求される。ここでは、機器管理ソフトウェア２０が、ファームウェアアップデート２２に対して、管理対象機器２００である画像処理装置Ａ及びＢのアップデートを要求する（ステップＳ１０１１，Ｓ１０１２）。また、機器管理ソフトウェア２０が、状態モニタリング２３に対して、管理対象機器２００である全ての画像処理装置の状態情報を最新にする情報更新を要求する（ステップＳ１０２）。
【００６８】
その結果、機器管理装置１００では、２つのファームウェアアップデート２３により、ＴＣＰを用いて指定された管理対象機器２００に必要データ（「プログラム」や「データ」）が送信されアップデートが開始される。一方、状態モニタリング２３は、受け付けた情報更新要求を、タスク管理２１が有する実行タスク数取得部２１１に通知する（ステップＳ１０３）。
【００６９】
以降、機器管理装置１００では、タスク管理２１により、次のようなＴＣＰに係る通信制御処理が行われる。
【００７０】
タスク管理２１が有する実行タスク数取得部２１１は、実行中のファームウェアアップデート２３に対して、実行タスク数（実行中のＴＣＰ通信タスク数）を問い合わせ（ステップＳ２０１）、その結果として実行タスク数［２］を取得する。
【００７１】
実行タスク数取得部２１１は、取得した実行タスク数［２］を、タスク管理２１が有する通信制御要否判定部２１２に渡し、ＴＣＰに係る通信制御の要否判定を要求する（ステップＳ２０２）。
【００７２】
通信制御要否判定部２１２は、受け取った実行タスク数［２］と、当該装置で保持するデータ伝送量情報３１とに基づき、ＴＣＰのデータ伝送量（予測値）を算出する（ステップＳ３０１）。このとき、通信制御要否判定部２１２は、実行中のファームウェアアップデート２３の想定データ伝送量と実行タスク数（実行中の該当通信タスク数）とを積算し、異なる種別の通信タスクが存在する場合、種別ごとの積算値を加算することで、ＴＣＰにおける全体のデータ伝送量の予測値を算出する。
【００７３】
ここで、上記データ伝送量情報３１について説明する。
図６は、本実施形態に係るデータ伝送量情報３１のデータ例を示す図である。
図６に示すように、データ伝送量情報３１は、ＴＣＰ通信タスク２３の種別を識別する「種別識別」及びＴＣＰ通信タスク２３における「想定データ伝送量」の各情報項目が、ＴＣＰ通信タスク２３ごとに関連付けられた構成となっている。例えば、図６に示すデータ例では、ファームウェアアップデート時の想定データ伝送量として１０（Ｍｂｐｓ）が設定されている。また、ログ情報転送時の想定データ転送料として６（Ｍｂｐｓ）が設定されている。このようなデータ構成により、データ伝送量情報３１では、ＴＣＰ通信タスク２３の種別識別情報に基づき、対応する想定データ伝送量を得ることができる。
【００７４】
上述した算出方法によると、本実施形態の場合には、実行タスク数［２］としてカウントされた異なる種別の通信タスクが存在しないことから、ファームウェアアップデート２３の種別識別情報に基づき、データ伝送量情報３１を参照し、特定された該当想定データ伝送量を用いて、ＴＣＰにおける全体のデータ伝送量の予測値２０（＝１０（Ｍｂｐｓ）×２（個））が算出される。
【００７５】
図５の説明に戻る。通信制御要否判定部２１２は、算出したデータ伝送量（予測値）［２０］と、予め設定しておいた通信制御用の閾値とを比較し、ＴＣＰに係る通信制御の要否判定を行う（ステップＳ３０２）。このとき、予め設定されている通信制御用の閾値が１５であった場合、通信制御要否判定部２１２は、算出したデータ伝送量［２０］が、通信制御用の閾値［１５］を超過している場合（２０＞１５）、ＵＤＰを用いたデータ通信時の信頼性を維持するために、ＴＣＰに係る通信制御を行う必要があると判定する。
【００７６】
通信制御要否判定部２１２は、上記要否判定結果に基づき、通信タスク制御部２１３に対して、各通信タスク（状態モニタリング２２，ファームウェアアップデート２３）の通信制御を要求する（ステップＳ３０３）。ここでは、通信制御要否判定部２１２から、ＴＣＰのデータ伝送の一時停止・再開による制御を要求する処理例を示す。
【００７７】
通信タスク制御部２１３は、実行中のファームウェアアップデート２３に対して、動作の一時停止を指示する（ステップＳ４０１）。その間に、通信タスク制御部２１３は、要求された状態モニタリング２２に対して、状態情報更新の実行を許可する（ステップＳ４０２）。
【００７８】
状態モニタリング２２は、管理対象機器２００の状態情報を更新し（ステップＳ５０１）、更新が終了した旨（状態情報更新の終了）を、通信タスク制御部２１３に通知する（ステップＳ５０２）。
【００７９】
通信タスク制御部２１３は、上記状態情報更新の終了通知を受け取ると、一時的に停止しているファームウェアアップデート２３に対して、処理の再開を指示する（ステップＳ４０３）。
【００８０】
また、通信タスク制御部２１３は、ＴＣＰのウィンドウサイズ制御を行う場合、次のような通信制御を行う。
【００８１】
通信タスク制御部２１３は、実行中のファームウェアアップデート２３に対して、ＴＣＰのウィンドウサイズ（ＴＣＰの帯域幅）を所定の範囲に制限するように指示する。その間に、通信タスク制御部２１３は、要求された状態モニタリング２２に対して、状態情報更新の実行を許可する。
【００８２】
状態モニタリング２２は、管理対象機器２００の状態情報を更新し、更新が終了した旨（状態情報更新の終了）を、通信タスク制御部２１３に通知する。
【００８３】
通信タスク制御部２１３は、上記状態情報更新の終了通知を受け取ると、一時的にＴＣＰのウィンドウサイズを制限しているファームウェアアップデート２３に対して、ウィンドウサイズを元のサイズに戻すように指示する。
【００８４】
＜まとめ＞
以上のように、本実施形態に係る機器管理装置１００によれば、当該装置において、ＵＤＰを用いた通信タスク２２の動作要求を受け付けると、機器管理ソフトウェア２０が有するタスク管理２１により、次のような通信制御処理が行われる。
【００８５】
機器管理装置１００は、実行タスク数取得部２１１により、当該装置で動作するＴＣＰを用いた通信タスク数を取得する。
【００８６】
機器管理装置１００は、通信制御要否判定部２１２により、取得した通信タスク数に基づき算出したＴＣＰのデータ通信に係るデータ伝送量（予測値）と、予め設定しておいた通信制御用の閾値とを比較し、ＴＣＰに係る通信制御処理を行う必要があるか否かを判定する（ＴＣＰに係る通信制御の要否判定を行う）。
【００８７】
機器管理装置１００は、通信タスク制御部２１３により、通信制御の要否判定結果に基づき、動作中のＴＣＰ通信タスク２３を制御し、要求されたＵＤＰ通信タスク２２を実行する。
【００８８】
このとき、機器管理装置１００では、通信タスク制御部２１３により、通信制御処理として、例えば、「ＴＣＰのデータ伝送の一時停止・再開による制御」又は「ＴＣＰのウィンドウサイズ制御（ＴＣＰの帯域幅制御）」などを行う。
【００８９】
例えば、通信タスク制御部２１３は、ＴＣＰのデータ伝送の一時停止・再開による制御を行う場合、次のような通信制御を行う。通信タスク制御部２１３は、動作中のＴＣＰ通信タスク２３を一時停止し、その間に、要求されたＵＤＰ通信タスク２２を実行し、実行終了後に、停止したＴＣＰ通信タスク２３を再開する。このように、機器管理装置１００では、ＴＣＰデータ伝送を一時停止することから、その間に行うＵＤＰを用いたデータ通信において、信頼性を確保することができる。
【００９０】
また、通信タスク制御部２１３は、ＴＣＰのウィンドウサイズ制御を行う場合、次のような通信制御を行う。通信タスク制御部２１３は、ＴＣＰのウィンドウサイズ（ＴＣＰの帯域幅）を所定の範囲に制限し、その間に、要求されたＵＤＰ通信タスク２２を実行し、実行終了後に、制限したＴＣＰのウィンドウサイズを元のサイズに戻す。このように、機器管理装置１００では、ＵＤＰを用いたデータ通信時の信頼性を確保しながら、ＴＣＰを用いたデータ通信も同時に行える。つまり、ＵＤＰのデータ通信要求を受け付けた場合でも、実行中のＴＣＰのデータ通信が継続して行う。これにより、機器管理装置１００では、ＵＤＰのデータ伝送量が多く、ＴＣＰのデータ通信に係るタイムアウト時間よりも長い通信時間が想定される場合であっても、ＴＣＰ通信タスク２３がタイムアウトによりエラーとなることを防ぐことができる。
【００９１】
これによって、機器管理装置１００は、ＵＤＰではなくＴＣＰの通信データを監視し、ＴＣＰに係る通信制御の要否判定結果に基づき、ＵＤＰのデータ伝送を行う前にＴＣＰのデータ伝送を制御することができる。その結果、ＵＤＰを用いたデータ通信環境において、データ伝送量が少なく単発で送信される場合であっても、通信時の信頼性を維持できる。
【００９２】
ここまで、上記実施形態の説明を行ってきたが、上記実施形態に係る機器管理装置１００が有する「通信制御機能」は、図を用いて説明を行った各処理手順を、動作環境（プラットフォーム）にあったプログラミング言語でコード化したプログラムが、ＣＰＵ１０６により実行されることで実現される。
【００９３】
上記プログラムは、コンピュータが読み取り可能な記録媒体１０３ａに格納することができる。上記記録媒体１０３ａには、例えば、フロッピー（登録商標）ディスク、ＣＤ（Compact Disk）、及びＤＶＤ（Digital Versatile Disk）、ならびにＳＤメモリカード（SD Memory Card）及びＵＳＢ（Universal Serial Bus）メモリなどがある。
【００９４】
よって、上記プログラムは、上記記録媒体１０３ａに記憶させることで、記録媒体１０３ａを読み取り可能なドライブ装置１０３などを介して機器管理装置１００にインストールすることができる。また、機器管理装置１００は、インタフェース装置１０７を備えていることから、インターネットなどの電気通信回線を用いて上記プログラムをダウンロードし、インストールすることもできる。
【００９５】
また、上記実施形態では、予めＴＣＰ通信タスク２３ごとに設定しておいた想定データ伝送量に基づき、ＴＣＰを用いてネットワーク上を流れるデータ伝送量を算出する構成について説明したが、この限りでない。例えば、ネットワーク上の通信利用率を実測してもよく、この方法を用いれば、より精度の高い通信制御を行うことができる。また、上述したデータ伝送量を算出する方法は、通信利用率を実測できないネットワーク環境下では有効な方法であることから、両方の方法を組み合わせた構成を備え、ネットワーク環境に応じて切り換えてもよい。
【００９６】
最後に、上記実施形態に挙げた形状や構成に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【００９７】
１      機器管理システム
２０    機器管理ソフトウェア
２１    タスク管理
２２    状態モニタリング（ＵＤＰの通信タスク）
２３    ファームウェアアップデート（ＴＣＰの通信タスク）
２１１  実行タスク数取得部
２１２  通信制御要否判定部
２１３  通信タスク制御部
３１    データ伝送量情報
１００  機器管理装置（機器管理サーバ）
１０１  入力装置
１０２  表示装置
１０３  ドライブ装置（ａ：記録媒体）
１０４  ＲＡＭ（揮発性の半導体メモリ）
１０５  ＲＯＭ（不揮発性の半導体メモリ）
１０６  ＣＰＵ（中央処理装置）
１０７  インタフェース装置（ＮＩＣ：Network I/F Card）
１０８  ＨＤＤ（不揮発性の記憶装置）
２００  機器（画像処理装置）
３００  クライアントＰＣ（情報処理装置）
【先行技術文献】
【特許文献】
【００９８】
【特許文献１】特開２００２−２１７９６６号公報
【図１】
2011060032.tif 000003
【図２】
2011060032.tif 000004
【図３】
2011060032.tif 000005
【図４】
2011060032.tif 000006
【図５】
2011060032.tif 000007
【図６】
2011060032.tif 000008