(57)【要約】【課題】リモート配信によるファームウェア等のソフトウェアのネットワークデバイスへの迅速な適用を実現すること。【解決手段】配信サーバ１３３は、ソフトウェアの配信対象となるネットワークデバイスの配信許可フラグがＯＮか判断し（Ｓ８１０）、ＯＦＦと判断した場合に、設定値管理サーバ１３６に対して、配信対象のネットワークデバイスの配信許可フラグのＯＮを指示する（Ｓ８１１）。設定値管理サーバ１３６は、前記指示に応じて、ネットワークデバイスの配信許可フラグをＯＮにし（Ｓ８１４）、完了通知を配信サーバ１３３に通知する（Ｓ８１７）。配信サーバ１３３は、前記完了通知に応じて、ソフトウェアの配信準備を行い（Ｓ８２０）、配信準備の後で、前記配信許可フラグをＯＮされた前記ネットワークデバイスからの要求に応じて、ソフトウェアの配信を制御する（Ｓ８２５）。【選択図】図７
2016126584.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークデバイスに対するソフトウェアの配信を制御する配信システムと、ネットワークデバイスの設定値の管理を行う設定管理システムと、と含むネットワークシステムであって、
前記配信システムにおける、ソフトウェアの配信対象となるネットワークデバイス内の配信システムからのソフトウェア配信を許可する連携フラグが有効化されているか否かを判断する判断手段と、
前記配信システムにおける、前記連携フラグが有効化されていないと判断された場合に、前記設定管理システムに対して、配信対象のネットワークデバイスの前記連携フラグの有効化を指示する指示手段と、
前記設定管理システムにおける、前記指示に応じて、前記ネットワークデバイスの前記連携フラグを有効化する有効化手段と、
前記設定管理システムにおける、前記ネットワークデバイスの前記連携フラグの有効化の完了を前記配信システムに対して、通知する通知手段と、
前記配信システムにおける、前記通知に応じて、ソフトウェアの配信準備を行う配信制御手段と、を有し、
前記配信制御手段は、前記配信準備の後で、前記連携フラグが有効化された前記ネットワークデバイスからの要求に応じて、ソフトウェアの配信を制御することを特徴とするネットワークシステム。
【請求項２】
前記設定管理システムにおける、前記配信システムによるソフトウェアの配信の後に、前記有効化手段で前記連携フラグを有効化した前記ネットワークデバイスの前記連携フラグを無効化する無効化手段をさらに有することを特徴とする請求項１に記載のネットワークシステム。
【請求項３】
前記配信システムにおける、前記ソフトウェアの適用に応じて前記ネットワークデバイスで新たに管理される設定項目に係る情報を前記設定管理システムに対して提供する提供手段をさらに有することを特徴とする請求項１又は２に記載のネットワークシステム。
【請求項４】
前記設定管理システムは、前記提供された設定項目に対応する設定値を前記ネットワークデバイスに設定することを特徴とする請求項３に記載のネットワークシステム。
【請求項５】
前記設定管理システムは、前記提供された設定項目に基づいて、前記ネットワークデバイスに対してソフトウェアの配信が必要であるか否かを判断することを特徴とする請求項３又は４に記載のネットワークシステム。
【請求項６】
前記配信システムにおける、前記設定管理システムからのソフトウェアの配信指示を受信する受信手段をさらに有し、
前記判断手段は、当該配信指示に応じて、ソフトウェアの配信対象となるネットワークデバイスの連携フラグが有効化されているか否かを判断することを特徴とする請求項１乃至５のいずれか１項に記載のネットワークシステム。
【請求項７】
前記配信準備は、ネットワークデバイスを一元管理する管理システムに対する、ソフトウェアの配信対象となるネットワークデバイスの情報の登録であることを特徴とする請求項１乃至６のいずれか１項に記載のネットワークシステム。
【請求項８】
前記配信システムにおける、各ネットワークデバイスの連携フラグの状態を保持する保持手段をさらに有し、
前記判断手段は、前記保持手段が保持する情報に基づいて、ソフトウェアの配信対象となるネットワークデバイスの連携フラグが有効化されているか否かを判断することを特徴とする請求項１乃至７のいずれか１項に記載のネットワークシステム。
【請求項９】
前記設定管理システムは、サーバ装置、またはネットワークデバイスに内蔵されることを特徴とする請求項１乃至８のいずれか１項に記載のネットワークシステム。
【請求項１０】
ネットワークデバイスに対するソフトウェアの配信を制御する配信システムと、ネットワークデバイスの設定値の管理を行う設定管理システムと、と含むネットワークシステムの制御方法であって、
前記配信システムにおける、ソフトウェアの配信対象となるネットワークデバイス内の配信システムからのソフトウェア配信を許可する連携フラグが有効化されているか否かを判断する判断ステップと、
前記配信システムにおける、前記連携フラグが有効化されていないと判断された場合に、前記設定管理システムに対して、配信対象のネットワークデバイスの前記連携フラグの有効化を指示する指示ステップと、
前記設定管理システムにおける、前記指示に応じて、前記ネットワークデバイスの前記連携フラグを有効化する有効化ステップと、
前記設定管理システムにおける、前記ネットワークデバイスの前記連携フラグの有効化の完了を前記配信システムに対して、通知する通知ステップと、
前記配信システムにおける、前記通知に応じて、ソフトウェアの配信準備を行う配信制御ステップと、を有し、
前記配信制御ステップでは、前記配信準備の後で、前記連携フラグが有効化された前記ネットワークデバイスからの要求に応じて、ソフトウェアの配信を制御することを特徴とするネットワークシステムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置などのネットワークデバイスに対してソフトウェアを配信する技術に関する。
【背景技術】
【０００２】
従来、画像形成装置のファームウェアを含むソフトウェアのアップデートは、機能アップもしくは障害等の理由により更新する必要が生じた場合に行われていた。ここで、画像形成装置には、プリンタや複写機などが含まれる。また、以降、画像形成装置をはじめとするネットワーク上の機器を、ネットワークデバイスと呼ぶ。
【０００３】
ソフトウェアのアップデート方法としては、インターネット経由で所定の配信サーバから配信を行うか、ＵＳＢ経由／イントラネット経由のアップデートツールを使用する。前述した配信サーバでネットワークデバイスのソフトウェアのアップデートを行う場合、配信サーバのＷｅｂ画面から配信対象のネットワークデバイスを指定し、配信日時を設定してインターネット経由で配信を行う。
【０００４】
配信サーバは、ネットワークデバイスに対してインターネットを利用してソフトウェアを配信している。また、配信サーバは、ソフトウェアを高速に配信するため、インターネットに接続されたストレージにソフトウェアを転送して、外部サーバから配信する機能も有する。
【０００５】
また、従来、ネットワークデバイスの設定値を管理する設定値管理サーバが存在する。設定値管理サーバは、ネットワークデバイスのサービスマン用設定値、ユーザ用設定値、構成情報を管理対象とする。ネットワークデバイスは、設定値管理サーバにアクセスし、これらの設定値を定期的もしくは、ファームウェアが更新されたタイミングで同期する。設定値管理サーバは、サーバ上でデバイスの設定を編集できる機能をもっており、編集されたデータは設定値同期の仕組みでデバイスに反映される。
【０００６】
配信サーバは、設定値管理サーバで使用する設定項目情報をパッケージデータとして保持する。配信サーバが保持する設定項目パッケージは、ネットワークデバイスの設定項目情報として、認証を利用、パーソナライズ利用、優先排紙トレイ、印字濃度設定などの情報を持つ。設定値管理サーバは、定期的もしくは必要時に配信サーバにアクセスし、設定項目パッケージをダウンロードして設定項目を更新する。
【０００７】
ネットワークデバイスにおけるコンテンツの配信及び、設定値管理に関する従来技術として、ファームウェアの設定値を安全かつ確実に新ファームウェアに引継ぐことのできるファームウェアアップデートシステムが提案されている（特許文献１）。
【０００８】
特許文献１には、現在のファームウェアに設定された設定値を取得し、設定値の一部を暗号化する設定値暗号化部と、暗号化された設定値および暗号化されていない設定値を配信サーバに送信する設定値送信部と、暗号化された設定値および暗号化されていない設定値が設定された新ファームウェアを配信サーバから取得するファームウェア取得部と、暗号化された設定値を復号化し、新ファームウェアをインストールするファームウェアアップデート部とを備えている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１０−８６３７０号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
前述したように、設定値管理サーバは、配信サーバから設定項目パッケージを必要なタイミングで取得する。その際、設定項目の中にセキュリティ対策、ウイルス対策等の緊急対応の必要な設定項目があった場合、ネットワークデバイスのファームウェアアップデートを行いたいケースがある。他にも、商談用のファームウェアを適用すべきなのに一般用のファームウェアが適用されているケース、設定値管理サーバの管理しているネットワークデバイスの中で設定項目が古く放置状態のネットワークデバイスがあるケース、設定項目にバグがあるケース等、各種ケースでファームウェアアップデートが求められる。
【００１１】
配信サーバは、ファームウェアをリモート配信可能であるが、ネットワークデバイス側の保持するフラグである配信許可フラグがＯＦＦになっていると、ファームウェアのリモート配信ができない。配信許可フラグは、通常、配信サーバ等の外部からの操作を許可しない設定になっており、従来、配信許可フラグがＯＦＦのネットワークデバイスに対しては、配信サーバからファームウェアをリモート配信することができなかった。
【００１２】
このようなケースにおいて、ファームウェアをリモート配信するためには、例えば、サービスマンがネットワークデバイスの設置場所に出向いてネットワークデバイスの配信許可フラグをＯＮにする必要があった。この場合、大量のネットワークデバイスが配信の対象になると、サービスマンの手間とコストが膨大になってしまい、ファームウェア配信までに時間がかかってしまう。よって、ファームウェア等のソフトウェアのネットワークデバイスへの迅速な適用ができない等の課題があった。
【００１３】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、リモート配信によるファームウェア等のソフトウェアのネットワークデバイスへの迅速な適用を実現することができる仕組みを提供することである。
【課題を解決するための手段】
【００１４】
本発明は、ネットワークデバイスに対するソフトウェアの配信を制御する配信システムと、ネットワークデバイスの設定値の管理を行う設定管理システムと、と含むネットワークシステムであって、前記配信システムにおける、ソフトウェアの配信対象となるネットワークデバイス内の配信システムからのソフトウェア配信を許可する連携フラグが有効化されているか否かを判断する判断手段と、前記配信システムにおける、前記連携フラグが有効化されていないと判断された場合に、前記設定管理システムに対して、配信対象のネットワークデバイスの前記連携フラグの有効化を指示する指示手段と、前記設定管理システムにおける、前記指示に応じて、前記ネットワークデバイスの前記連携フラグを有効化する有効化手段と、前記設定管理システムにおける、前記ネットワークデバイスの前記連携フラグの有効化の完了を前記配信システムに対して、通知する通知手段と、前記配信システムにおける、前記通知に応じて、ソフトウェアの配信準備を行う配信制御手段と、を有し、前記配信制御手段は、前記配信準備の後で、前記連携フラグが有効化された前記ネットワークデバイスからの要求に応じて、ソフトウェアの配信を制御することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、ソフトウェアのネットワークデバイスへの迅速な適用を実現することができる。
【図面の簡単な説明】
【００１６】
【図１】本実施例のネットワークシステムの構成図
【図２】監視センタホスト等のハードウェア構成図
【図３】ネットワークデバイスのハードウェア構成図
【図４】監視センタホスト、配信サーバの通信部分のソフトウェア構成図
【図５】監視装置、ネットワークデバイスの通信部分のソフトウェア構成図
【図６】本実施例のネットワークシステムのソフトウェア構成図
【図７】本実施例のネットワークシステムにおけるシーケンス図
【図８】設定値管理サーバから送信されるセットパッケージ要求情報
【図９】配信サーバが保持する設定項目パッケージテーブル
【図１０】設定値管理サーバが配信サーバから受信する設定項目パッケージ
【図１１】設定値管理サーバが保持する設定項目テーブル
【図１２】ファームウェア配信条件テーブル
【図１３】設定値管理サーバからのファーム配信指示情報
【図１４】配信サーバで保持する配信許可フラグテーブル
【図１５】ネットワークデバイスの処理を例示するフローチャート
【図１６】監視センタホストの処理を例示するフローチャート
【図１７】設定値管理サーバの処理を例示するフローチャート
【図１８】配信サーバの処理を例示するフローチャート
【発明を実施するための形態】
【００１７】
以下、本発明の発明を実施するための形態について図面を用いて説明する。
図１は、本発明の一実施例を示すネットワークシステムの構成を例示する図である。
図１では、複数のシステムが接続されている。なお、本発明は、図１と同等機能を達成できれば同一の構成でなくても実施可能である。
【００１８】
販売会社システム１０１には、ＰＣ１０２、１０３、１０４が含まれる。ＰＣ１０２、１０３、１０４は、パーソナルコンピュータ等の情報処理装置である。ＰＣ１０２、１０３、１０４は、監視センタホスト１１１、配信サーバ１３３が提供するＷｅｂサイトへアクセスしてデータの閲覧、及び、ソフトウェアの配信予約等を行う。ＰＣ１０２、１０３、１０４はＬＡＮ１０５で接続されている。
【００１９】
外部サーバ１０６には、ホスト１０７、データベース１０８が、ＬＡＮ１１０で接続されている。外部サーバ１０６は、配信サーバ１３３のソフトウェアを高速に配信するためサービスを持つ。また、ＰＣ１０９がＬＡＮ１１０に接続されている。
【００２０】
次に、監視センタホスト１１１を説明する。
監視センタホスト１１１は、データベース１１２を持つ、ネットワークデバイス監視システムである。データベース１１２は、監視のための情報や、ネットワークデバイスの稼働状態などを蓄積する履歴記憶部としてのデータベースである。以降、画像形成装置をはじめとする本発明を適用可能なネットワーク上の機器を、ネットワークデバイスと呼ぶ。監視センタホスト１１１とデータベース１１２は、ＬＡＮ１１３で接続されており、ＬＡＮ１１３はインターネット１３２に接続されている。なお、データベース１１２は、物理的に監視センタホスト１１１内に存在してもよい。さらに、データベース１１２は、監視センタホスト１１１からアクセス可能であれば、インターネット１３２を経由した別の場所に存在しても構わない。
【００２１】
監視センタホスト１１１は、監視装置１１７、１２２、１２３やネットワークデバイス１３１から監視対象としてのネットワークデバイスの情報、稼働状態を示す情報を収集、蓄積、加工し、警告等を外部に提供する機能を有する。
【００２２】
次に、配信サーバ１３３を説明する。
データベース１３４は、ネットワークデバイスに適用するためのソフトウェアを蓄積する記憶部としてのデータベースである。配信サーバ１３３とデータベース１３４は、ＬＡＮ１３５で接続されており、ＬＡＮ１３５は、インターネット１３２に接続されている。なお、データベース１３４は、物理的に配信サーバ１３３内に存在してもよい。さらに、データベース１３４は、配信サーバ１３３からアクセス可能であれば、インターネット１３２を経由した別の場所に存在しても構わない。なお、ＬＡＮ１１３とＬＡＮ１３５は同一のＬＡＮとしてもよく、データベース１３４とデータベース１１２はデータを送受信しても構わない。配信サーバ１３３及びデータベース１３４は、ネットワークデバイスに対するソフトウェアの配信制御を行う配信システムを構成する。
【００２３】
配信サーバ１３３には、配信用のファームウェアが登録され、販売会社システム１０１向けに公開処理される。公開処理されたファームウェアは、販売会社システム１０１のＰＣ１０２、１０３、１０４及び、販売会社システムが管轄するネットワークデバイス１１５、１１６、１２０、１２１、１２４、１２５、１２６、１２７、１３１からダウンロードが可能となる。
【００２４】
図１には、監視センタホスト１１１およびデータベース１１２と、配信サーバ１３３とデータベース１３４が１つずつしか示されていない。しかし、実際には、多くのネットワークデバイスおよび監視装置からの情報収集や、ソフトウェア配信の負荷分散を行なうために、複数の監視センタホスト１１１、データベースに分散処理をさせるケースもある。
【００２５】
次に、設定値管理サーバ１３６を説明する。
設定値管理サーバ１３６は、複数のネットワークデバイスと同様のＬＡＮ上に存在して、ネットワークデバイスの設定値を管理する設定管理システムを構成する。設定値管理サーバ１３６は、定期的もしくは管理対象のネットワークデバイスがファームウェアアップデートされたタイミング等で、配信サーバ１３３から設定項目パッケージをダウンロードする。
【００２６】
次に、顧客側のシステム構成について説明する。
顧客側のシステムは、顧客により構成が異なる。図１では、顧客システム１１４、１１９、１２９が示されている。
【００２７】
顧客システム１１４（Ａ社Ｘ事業所）においては、インターネット１３２に接続されたＬＡＮ１１８に接続されたネットワークデバイス１１５、１１６が監視装置１１７により監視されている。監視装置１１７は、インターネット１３２経由で監視センタホスト１１１と通信している。
【００２８】
また、顧客システム１１９（Ａ社Ｙ事業所）においては、監視装置１２２、１２３によってＬＡＮ１２８上のネットワークデバイスが管理されている。監視装置１２２により、ネットワークデバイス１２０、１２１、１２４、１２５が、監視装置１２３によりネットワークデバイス１２６、１２７が夫々管理されている。
【００２９】
また、顧客１２９システム（Ｂ社）においては、インターネット１３２に接続されたＬＡＮ１３０に接続されたネットワークデバイス１３１自身が、直接インターネット１３２経由で監視センタホスト１１１と通信している。ネットワークデバイス１３１は、監視装置１１７、１２２、１２３と同等の機能を有しており、自身の稼働情報を監視センタホスト１１１に送信している。また、ネットワークデバイス１３１は、配信サーバ１３３からダウンロードしたファームウェアを適用するためのコントローラを持つ。同様に、ネットワークデバイス１１５、１１６、１２０、１２１、１２４、１２５、１２６、１２７も配信サーバ１３３からダウンロードしたファームウェアを適用するためのコントローラを持つ。
【００３０】
図２は、監視センタホスト１１１のハードウェア構成を例示する図である。なお、配信サーバ１３３、設定値管理サーバ１３６、ホスト１０７、監視装置１１７、１２２、１２３、ＰＣ１０２、１０３、１０４、１０９のハードウェア構成も監視センタホスト１１１と同様である。
【００３１】
図２において、ＣＰＵ２０１は本装置上の各処理を司る。書換え不可能なＲＯＭ２０２は、後述する本装置の各処理に関わるプログラムやデータを記憶する。ＲＡＭ２０３は、本装置の各処理に関わる一時的なデータを電気的に記憶でき、かつ書き換え可能である。ＨＤＤ２０４は、後述する本装置の各処理に関わるプログラムやデータ、および一時的なデータ、監視対象のネットワークデバイスに関する情報、およびネットワークデバイスから収集した情報などを記憶するハードディスクドライブである。例えば、稼働情報などがＨＤＤ２０４に保存される。監視センタホスト１１１、配信サーバ１３３の場合、後述する図４に示すソフトウェア構成を実現するプログラムをＨＤＤ２０４に記憶している。このプログラムは、ＲＡＭ２０３を一時保存領域として使用し、ＣＰＵ２０１によって呼び出され実行される。
【００３２】
操作部２０５は、本装置への指示入力を受け付けるキーボードやポインティングデバイス（例えばマウス）等である。表示部２０６は、本装置の動作状況や、本装置上で動作する各プログラムが出力する情報を表示する。Ｎｅｔｗｏｒｋ Ｉ／Ｆ２０８は、ネットワーク経由でＬＡＮおよびインターネット１３２に接続し、外部と情報交換を行う。外部機器Ｉ／Ｆ２０７は、外部記憶機器等を接続する。２０１〜２０８に示す要素がシステムバス２０９により結び付き、データをやりとりしている。
【００３３】
図３は、ネットワークデバイス１１５、１１６、１２０、１２１、１２４、１２５、１２６、１２７、１３１のハードウェア構成を例示する図である。
ネットワークデバイスとしては、具体的には、プリンタ及びファクシミリ機能が統合的に設けられた複合機（ＭＦＰ；Multifunction Peripheral）、ＰＣなどからデータを受信し印刷するプリンタ（電子写真方式、インクジェット方式及びその他のプリント方式を含む）や、スキャナや、ファクシミリなどが挙げられる。本図では、ネットワークデバイスの一例として複合機の構成を示している。
【００３４】
イメージリーダ３０２は、原稿給送部３０１で原稿を読み込む。画像形成部３０３は、イメージリーダ３０２で読み込んだ原稿やＮｏｔｗｏｒｋ Ｉ／Ｆ３０５からネットワーク経由で受信したデータを印刷画像に変換・印刷出力する。排紙部３０４は、印刷出力した紙を排出し、ソートやステイプルといった処理を施す。Ｎｅｔｗｏｒｋ Ｉ／Ｆ３０５は、ネットワーク経由でＬＡＮおよびインターネット１３２に接続し、外部と情報交換を行う。
【００３５】
ＣＰＵ３０６は、本装置上の各処理を司る。ネットワークデバイスの動作状態を監視し、障害等の特定のイベントが発生した場合には、その状態を示す状態情報を、あらかじめ定めた宛先へと送信する。宛先は、例えば、監視センタホスト１１１や監視装置などである。書換え不可能なＲＯＭ３０７は、後述する本装置の各処理に関わるプログラムやデータを記憶する。ＲＡＭ３０８は、本装置の各処理に関わる一時的なデータを電気的に記憶でき、かつ書き換え可能である。ＨＤＤ３０９は、後述する本装置の各処理に関わるプログラムやデータ、および一時的なデータ、本装置へ送信されてきたユーザデータなどを記憶する。ネットワークデバイスは、後述する図５に示すソフトウェア構成を実現するプログラムをＨＤＤ３０９に記憶している。このプログラムは、ＲＡＭ３０８を一時保存領域として使用し、ＣＰＵ３０６によって呼び出され実行される。
【００３６】
操作部３１０は、本装置への指示入力を受け付ける。表示部３１１は、本装置の動作状況および操作部３１０に対する操作に関わる情報を表示する。３０１〜３１１に示す要素が、システムバス３１２により結び付き、データをやりとりしている。
なお、ネットワークデバイス自身が監視のための情報を送信する機能を持つネットワークデバイス１３１では、ＲＯＭ３０７或いはＨＤＤ３０９内に、監視データ送出処理に係るプログラムやデータを保持している。
【００３７】
図４は、監視センタホスト１１１、配信サーバ１３３における通信部分のソフトウェア構成を例示する図である。なお、図４に示す各部は、監視センタホスト１１１、配信サーバ１３３のそれぞれのＣＰＵ２０１がＲＯＭ２０２又はＨＤＤ２０４等に格納されたプログラムを読み出して実行することにより実現されるものである。
【００３８】
ＳＯＡＰ通信部４０１は、監視装置１１７、１２２、１２３またはネットワークデバイス１３１よりＮｅｔｗｏｒｋ Ｉ／Ｆ２０８を介して受信したＳＯＡＰデータをＳＯＡＰメッセージ解析部４０２に渡す。また、ＳＯＡＰ通信部４０１は、ＳＯＡＰメッセージ作成部４０３により作成されたＳＯＡＰデータを、Ｎｅｔｗｏｒｋ Ｉ／Ｆ２０８を介して監視装置１１７、１２２、１２３またはネットワークデバイス１３１に送信する。
【００３９】
収集情報処理部４０４では、監視装置１１７、１２２、１２３またはネットワークデバイス１３１から受信した情報をそのまま、または加工し、データベースアクセス部４０６を介してデータベース１１２、あるいはデータベース１３４に格納する。
【００４０】
監視制御部４０５は、監視センタホスト１１１においては、監視装置１１７、１２２、１２３またはネットワークデバイス１３１のスケジュール管理などの制御を行なう。配信サーバ１３３においては、監視装置１１７、１２２、１２３またはネットワークデバイス１３１のポーリング処理などの制御を行う。
【００４１】
図５は、監視装置１１７、１２２、１２３またはネットワークデバイス１３１における通信部分のソフトウェア構成を例示する図である。なお、図５に示す各部は、監視装置の場合、監視装置のＣＰＵ２０１がＲＯＭ２０２又はＨＤＤ２０４等に格納されたプログラムを読み出して実行することにより実現されるものである。また、ネットワークデバイスの場合、ネットワークデバイスのＣＰＵ３０６がＲＯＭ３０７又はＨＤＤ３０９に格納されたプログラムを読み出して実行することにより実現されるものである。
【００４２】
ＳＯＡＰ通信部５０１は、監視センタホスト１１１もしくは、配信サーバ１３３によりＮｅｔｗｏｒｋ Ｉ／Ｆ２０８を介して受信したＳＯＡＰデータを、ＳＯＡＰメッセージ解析部５０３に渡す。また、ＳＯＡＰメッセージ作成部５０２により作成したＳＯＡＰデータをＮｅｔｗｏｒｋ Ｉ／Ｆ２０８を介して監視センタホスト１１１、配信サーバ１３３に送信する。
【００４３】
監視制御部５０４は、情報蓄積部に保持する監視対象のネットワークデバイス情報の更新や、ネットワークデバイス１１５、１１６の情報取得を行なう。デバイス情報処理部５０５は、ネットワークデバイスの稼働情報を、情報蓄積部５０６に蓄積する。情報蓄積部５０６に蓄積したデータは、デバイス情報処理部５０５を介して、そのままＳＯＡＰメッセージ作成部５０２に渡され、監視センタホスト１１１へ送信される。
【００４４】
なお、図示しないが、監視センタホスト１１１、配信サーバ１３３或いは、監視装置１１７、１２２、１２３或いは、各ネットワークデバイスは、本発明に係る処理プログラムを実行する際、監視センタホスト１１１、監視装置１１７、１２２、１２３ではＲＡＭ２０３上に、各ネットワークデバイスではＲＡＭ３０８上にプログラムがロードされる。例えば、基本Ｉ／Ｏプログラム、システム・プログラム、本実施例の処理プログラムを初めとする各種処理プログラムがＲＡＭ上にロードされ、関連データを格納するエリアや、プログラムのワークエリア等も確保される。基本Ｉ／Ｏプログラムは、本装置上の入出力を司る。システム・プログラムは、各処理プログラムに動作環境を提供する。
【００４５】
図６は、本実施例のネットワークシステムのソフトウェア構成を例示する図である。
まず、ネットワークデバイス１３１について説明する。
７０２〜７０７は、コントローラ７０１に含まれるソフトウェアの構成を表す。ネットワークデバイス１３１は、コントローラ７０１とコントローラ７０１に制御されるエンジン７２４から構成される。コントローラ７０１は、ネットワークデバイス１３１のＣＰＵ３０６、ＲＯＭ３０７、ＲＡＭ３０８、ＨＤＤ３０９、Ｎｅｔｗｏｒｋ Ｉ／Ｆ３０５等で構成される。すなわち、７０２〜７０７は、ネットワークデバイス１３１のＣＰＵ３０６がＲＯＭ３０７又はＨＤＤ３０９に格納されたプログラムを読み出して実行することにより実現されるものである。
【００４６】
７０２は、通信Ｉ／Ｆ部を示している。通信Ｉ／Ｆ部７０２は、コントローラ７０１と設定値管理サーバ１３６、配信サーバ１３３、外部サーバ１０６との通信を司る。７０３は、コントローラ７０１の通信データ制御部を示している。通信データ制御部７０３は、通信Ｉ／Ｆ部７０２から受信した通信データを制御する。
【００４７】
７０４は、ソフトウェア管理部を示している。ソフトウェア管理部７０４は、配信サーバ１３３から受信したＵＲＬ情報を元に、外部サーバ１０６からソフトウェアを受信し、エンジン制御部７０５や、アクセサリ制御部７０６にインストールする役割を持つ。７０７は、データ記憶部を示す。データ記憶部７０７は、コントローラ内のソフトウェアデータの記憶や、一時記憶領域として使用する。
【００４８】
次に、設定値管理サーバ１３６について説明する。
７０８〜７１３は、設定値管理サーバ１３６に含まれるソフトウェアの構成図を表している。即ち、７０８〜７１３は、設定値管理サーバ１３６のＣＰＵ２０１がＲＯＭ２０２又はＨＤＤ２０４等に格納されたプログラムを読み出して実行することにより実現されるものである。
【００４９】
７０８は、設定値管理サーバ１３６の通信Ｉ／Ｆを示す。通信Ｉ／Ｆ部７０８は、ネットワークデバイスのコントローラと設定値管理サーバ１３６との通信を司る。７０９は、設定値管理サーバ１３６の通信データ制御部を示している。通信データ制御部７０９は、通信Ｉ／Ｆ部７０８から受信した通信データを制御する。
【００５０】
７１０では、データ制御部を示している。データ制御部７１０は、設定値管理サーバ１３６内のデータの制御を司る。７１１は、設定値登録部を示している。設定値登録部７１１は、設定値の情報をデータ記憶部７１３やデータベース１０８に登録する。７１２は、設定値検索部を示している。設定値検索部７１２は、設定値の検索をデータ記憶部７１３より行う。７１３は、データ記憶部を示している。データ記憶部７１３は、設定値管理サーバ１３６内に設定値情報を記憶する。
【００５１】
次に、配信サーバ１３３について説明する。
７１４〜７１９は、配信サーバ１３３に含まれるソフトウェアの構成図を表している。即ち、７１４〜７１９は、配信サーバ１３３のＣＰＵ２０１がＲＯＭ２０２又はＨＤＤ２０４等に格納されたプログラムを読み出して実行することにより実現されるものである。
【００５２】
７１４は、配信サーバ１３３の通信Ｉ／Ｆを示す。通信Ｉ／Ｆ部７１４は、ネットワークデバイスのコントローラと配信サーバ１３３との通信を司る。７１５は、配信サーバ１３３の通信データ制御部を示している。通信データ制御部７１５は、通信Ｉ／Ｆ部７１４から受信した通信データを制御する。
【００５３】
７１６は、データ制御部を示している。データ制御部７１６は、配信サーバ１３３内のデータの制御を司る。７１７は、ファームデータ登録部を示している。ファームデータ登録部は、ソフトウェアの情報をデータ記憶部７１９に登録する。７１８は、ファームデータ検索部を示している。ファームデータ検索部７１８は、ソフトウェアの検索をデータ記憶部７１９より行う。７１９は、データ記憶部を示している。データ記憶部７１９は、配信サーバ１３３内に配信用のファームデータの情報を記憶するデータベース１３４のデータが記憶される。
【００５４】
次に、外部サーバ１０６について説明する。
７２０〜７２３は、外部サーバ１０６に含まれるソフトウェアの構成図を表している。即ち、７２０〜７２３は、外部サーバ１０６のＣＰＵ２０１がＲＯＭ２０２又はＨＤＤ２０４等に格納されたプログラムを読み出して実行することにより実現されるものである。
【００５５】
外部サーバ１０６は、配信サーバ１３３のソフトウェアを高速に配信するためサービスを持ち、配信サーバ１３３より定期的にソフトウェアデータが転送されている。７２０は、データ受信部を示す。データ受信部７２０では、配信サーバ１３３によりソフトウェアデータが転送される。７２１は、配信部を示す。配信部７２１は、データ記憶部７２３に登録されているデータをコントローラ７０１に高速に配信する。７２２は、データ管理部を示す。データ管理部７２２は、データ受信部７２０から受信したデータをデータ記憶部７２３に記憶させる。また、データ管理部７２２は、配信部７２１に配信用のデータを供給する。７２３は、データ記憶部を示す。
【００５６】
図７は、本実施例のネットワークシステムにおける代表的なシーケンスを例示する図である。本シーケンスは、設定値管理サーバ１３６が配信サーバ１３３から設定項目パッケージを取得して、配信サーバ１３３からネットワークデバイス１３１にファームウェア配信を行う処理に対応する。なお、このシーケンス図における、ネットワークデバイスの処理は、ネットワークデバイスのＣＰＵ３０６がＲＯＭ３０７又はＨＤＤ３０９に格納されたプログラムを読み出して実行することにより実現されるものである。また、設定値管理サーバ１３６の処理は、設定値管理サーバ１３６のＣＰＵ２０１がＲＯＭ２０２又はＨＤＤ２０４等に格納されたプログラムを読み出して実行することにより実現されるものである。また、配信サーバ１３３の処理は、配信サーバ１３３のＣＰＵ２０１がＲＯＭ２０２又はＨＤＤ２０４等に格納されたプログラムを読み出して実行することにより実現されるものである。また、監視センタホスト１１１の処理は、監視センタホスト１１１のＣＰＵ２０１がＲＯＭ２０２又はＨＤＤ２０４等に格納されたプログラムを読み出して実行することにより実現されるものである。
【００５７】
Ｓ８０１において、設定値管理サーバ１３６は、配信サーバ１３３に設定項目パッケージを要求する。図８に設定値管理サーバ１３６から配信サーバ１３３に送信されるセットパッケージ要求情報９０１を示す。９０１に示すように、設定値管理サーバ１３６は、配信サーバ１３３に、自分の管轄するネットワークデバイスのシリアル番号９０２と、メインコントローラバージョン９０３を含むセットパッケージ要求情報を送信する。
【００５８】
図８は、設定値管理サーバ１３６から配信サーバ１３３に送信されるセットパッケージ要求情報９０１を例示する図である。
９０２は、ネットワークデバイスを一意に識別する番号であるネットワークデバイスのシリアル番号を示す。９０３は、ネットワークデバイスのメインコントローラのバージョンを示す。図８では、ＪＳＯＮ形式のデータを示しているが、本発明を実施出来ればよく、ＳＯＡＰなどの他のデータ形式でも構わない。
【００５９】
Ｓ８０２において、配信サーバ１３３は、設定値管理サーバ１３６からの設定項目パッケージ要求を受け付ける。その際、配信サーバ１３３は、設定値管理サーバ１３６から配信サーバ１３３に送信されるセットパッケージ要求情報９０１を受信し、図９に示される設定項目パッケージテーブル１００１と項目の比較を行う。
【００６０】
図９は、配信サーバ１３３が保持する設定項目パッケージテーブル１００１を例示する図である。
１００２は、ネットワークデバイスのシリアル番号の範囲を示す。ネットワークデバイスは、シリアル番号の範囲で機種が異なる。１００３は、ネットワークデバイスのメインコントローラのバージョンを示す。１００４は、設定項目パッケージのファイル名を示す。１００５は、設定項目パッケージのＵＲＬを示す。
【００６１】
Ｓ８０２では、配信サーバ１３３は、まず、ネットワークデバイスのシリアル番号９０２が含まれるネットワークデバイスシリアル番号の範囲１００２を検索する。次に、配信サーバ１３３は、メインコントローラバージョン９０３と同じメインコントローラバージョンを１００３から検索する。その結果、図８、図９に示す例では、図９の１００６、１００７に示す設定項目パッケージが配信対象として検索される。
【００６２】
次に、Ｓ８０３において、配信サーバ１３３は、上記Ｓ８０２の検索結果により、設定項目パッケージ１００６、１００７のＵＲＬ１００５を、設定値管理サーバ１３６に返す。なお、設定項目パッケージのデータは、配信サーバ１３３のデータベース１３４に存在するので、ＵＲＬ１００５はデータベース１３４のパスを示す。
【００６３】
Ｓ８０４において、設定値管理サーバ１３６は、上記Ｓ８０３で配信サーバ１３３から返信された設定項目パッケージのＵＲＬ１００５にアクセスして、設定項目パッケージ１００６、１００７をダウンロードする。設定項目パッケージ１００６の構成を図１０の１１０１に示す。
【００６４】
図１０は、設定値管理サーバ１３６が配信サーバ１３３から受信する設定項目パッケージを例示する図である。
図１０の１１０１に示すように、設定項目パッケージは、設定項目パッケージ名：ｓｓｓ００３．ｂａｔ、ネットワークデバイスシリアル番号の範囲：ＡＡＡ００００１〜ＡＡＡ９９９９９、メインコントローラバージョン：８０．０１の情報を持つ。
１１０２は、設定項目を一意に特定するための設定値キーを示す。１１０３は、設定項目のデフォルト値を示す。１１０４は、緊急度を示す。１１０５は、設定項目のカテゴリを示す。１１０６は、設定項目に対応するお客様情報を示す。１１０７は、先に説明で使用した新規の設定項目に対応する。
設定項目パッケージ１００７は、１００６とほぼ同構成なので説明を割愛する。
【００６５】
設定値管理サーバ１３６は、設定項目パッケージ１００６、１００７を配信サーバ１３３から受領して自身の設定項目テーブル１２０１に反映する。図１１に設定値管理サーバ１３６が保持する設定値テーブルを示す。
【００６６】
図１１は、設定値管理サーバ１３６が保持する設定項目テーブル１２０１を例示する図である。
１２０２は、設定項目を示す。１２０３は、設定項目を一意に特定するための設定値キーを示す。１２０４は、設定項目のデフォルト値を示す。１２０５は、緊急度を示す。１２０６は、設定項目のカテゴリを示す。１２０７は、設定項目に対応するお客様情報を示す。１２０８は、設定項目に対応するネットワークデバイスのシリアル番号の範囲を示す。１２０９は、先に説明で使用した新規の設定項目１１０７に対応する。
【００６７】
Ｓ８０５において、設定値管理サーバ１３６は、設定項目パッケージ１００６、１００７に新規項目があるか否かを、設定項目テーブル１２０１と比較し判断する。この比較は、設定値キー１１０２と１２０３を比較して、１２０３に存在しない設定値キーが１１０２に存在してれば、新規項目があると判断する。本実施例では、図１０の１１０７の設定項目が新規項目として、図１１の１２０９に示すように追加される。
【００６８】
上記Ｓ８０５において、新規項目がないと判断した場合（Ｓ８０５でＮｏの場合）、設定値管理サーバ１３６は、処理を終了する。一方、新規項目があると判定した場合（Ｓ８０５でＹｅｓの場合）、設定値管理サーバ１３６は、Ｓ８０６に処理を進める。
Ｓ８０６において、設定値管理サーバ１３６は、設定項目テーブル１２０１に新規項目を追加し、Ｓ８０７に処理を進める。
【００６９】
Ｓ８０７において、設定値管理サーバ１３６は、設定項目テーブル１２０１の新規項目と、図１２で示すファームウェア配信条件テーブル１３０１の比較を行い、ファームウェアの配信条件に合致するものが存在するかどうかを判断する。
【００７０】
図１２は、設定値管理サーバ１３６が保持するファームウェア配信条件テーブル１３０１を例示する図である。
１３０２は、ファームウェアの配信条件を示す。１３０３は実行フラグであり、ファームウェア配信条件１３０２に合致した場合にファームウェアを配信可否の判断をするためのフラグ情報として、「有効」もしくは「無効」のステータスを持つ。１３０４は、設定値管理サーバ１３６が管理しているネットワークデバイスのお客様情報を示す。
【００７１】
そして、上記Ｓ８０７において、配信条件に合致するものがないと判断した場合（Ｓ８０７でＮｏの場合）、設定値管理サーバ１３６は、そのまま処理を終了する。一方、配信条件に合致するものがあると判断した場合（Ｓ８０７でＹｅｓの場合）、設定値管理サーバ１３６は、Ｓ８０８に処理を進める。上述した一連の例では、新規項目は１２０９に示すものであるので、１２０９の緊急度１２０５、カテゴリ１２０６、お客様情報１２０７について、ファームウェア配信条件１３０２に合致するものがあるか比較する。その結果、"新規設定項目の緊急度がＡ"の１３０５、"新規設定項目のカテゴリがセキュリティ"の１３０６が該当する。次に、ファームウェア配信の実行フラグ１３０３を確認すると、１３０５、１３０６が「有効」であるので、ファーム配信指示を行うという判断ができる。
【００７２】
Ｓ８０８において、設定値管理サーバ１３６は、配信サーバ１３３にファーム配信指示を行う。ファーム配信指示の際に、設定値管理サーバ１３６から配信サーバ１３３に送信されるファーム配信対象ネットワークデバイス情報１４０１を図１３に示す。
【００７３】
図１３は、ファーム配信指示の際に、設定値管理サーバ１３６から配信サーバ１３３へ送信されるファーム配信対象ネットワークデバイス情報１４０１を例示する図である。
１４０２は、ファームウェアの配信対象となるネットワークデバイスを一意に識別する番号であるネットワークデバイスのシリアル番号を示し、ファームウェア配信の対象となるネットワークデバイスを示す。例えば、設定値管理サーバ１３６は、自分の管轄するネットワークデバイスのうち、ファームウェアの配信条件に合致する新規項目を含む設定項目パッケージに対応するネットワークデバイスをファームウェアの配信対象とする。しかし、設定値管理サーバ１３６がファームウェアの配信対象とするネットワークデバイスを決定する方法は、上述した方法に限定されるものではない。
【００７４】
Ｓ８０９において、配信サーバ１３３は、設定値管理サーバ１３６からファーム配信対象ネットワークデバイス情報１４０１を受け付ける。そして、設定値管理サーバ１３６からファーム配信対象ネットワークデバイス情報１４０１で指定された複数のネットワークデバイス内の配信許可フラグの状態を自身のデータベース１３４で確認する。図１４に、配信サーバ１３３がデータベース１３４に保持する配信許可フラグテーブル１５０１を示す。
【００７５】
図１４は、配信サーバ１３３がデータベース１３４に保持する配信許可フラグテーブル１５０１を例示する図である。
１５０２は、ネットワークデバイスを一意に識別する番号であるネットワークデバイスのシリアル番号を示す。１５０３は、ネットワークデバイス側の配信許可フラグの状態を示す。各ネットワークデバイスは、内部に配信許可フラグ（連携フラグともいう）を保持しており、各ネットワークデバイスの配信許可フラグの状態が、配信サーバ１３３がデータベース１３４に保持する配信許可フラグテーブル１５０１に格納されている。配信許可フラグが有効化されている場合を「ＯＮ」で示し、配信許可フラグがＯＮのネットワークデバイスは、配信サーバ１３３からのソフトウェア配信を許可する。一方、配信許可フラグが無効化されている場合を「ＯＦＦ」で示し、配信許可フラグがＯＦＦのネットワークデバイスは、配信サーバ１３３からのソフトウェア配信を許可しない。１５０４、１５０５は、先に説明した配信許可フラグがＯＦＦになっているネットワークデバイスに対応する。
【００７６】
配信サーバ１３３は、配信許可フラグテーブル１５０１を参照し、ファーム配信対象ネットワークデバイス情報１４０１に含まれる該当ネットワークデバイスの配信許可フラグの状態を確認する。その結果、１５０４、１５０５のネットワークデバイスに対し配信許可フラグをＯＦＦからＯＮにする必要があると判断できる。
【００７７】
Ｓ８１０において、配信サーバ１３３は、上記Ｓ８０９で配信許可フラグテーブル１５０１を参照した結果、配信許可フラグがＯＦＦのネットワークデバイスがある（配信許可フラグをＯＮにする必要がある）か否かを判断する。そして、配信許可フラグがＯＦＦのネットワークデバイスがない（配信許可フラグをＯＮにする必要がない）と判断した場合（Ｓ８１０でＮｏの場合）、配信サーバ１３３は、Ｓ８１２に処理を進める。
Ｓ８１２において、配信サーバ１３３は、配信許可フラグを変更する必要がないため、設定値管理サーバ１３６にＡＣＫを返答し、Ｓ８１９に処理を進める。
【００７８】
一方、上記Ｓ８１０において、配信許可フラグがＯＦＦのネットワークデバイスがある（配信許可フラグをＯＮにする必要がある）と判断した場合（Ｓ８１０でＹｅｓの場合）、配信サーバ１３３は、Ｓ８１１に処理を進める。
Ｓ８１１において、配信サーバ１３３は、配信許可フラグの変更指示を設定値管理サーバ１３６に対して行う。
【００７９】
Ｓ８１３において、設定値管理サーバ１３６は、配信サーバ１３３から配信許可フラグ変更指示を受け付ける。
次に、Ｓ８１４において、設定値管理サーバ１３６は、ネットワークデバイスに対して、配信許可フラグの変更指示を行う。
【００８０】
Ｓ８１５において、ネットワークデバイスは、配信許可フラグ変更指示を受け付けると、Ｓ８１６に処理を進める。
Ｓ８１６において、ネットワークデバイスは、配信許可フラグを変更して、設定値管理サーバ１３６に配信許可フラグ変更完了通知を行う。
【００８１】
Ｓ８１７において、設定値管理サーバ１３６は、配信許可フラグ変更完了通知を受信すると、配信サーバ１３３に配信許可フラグ変更完了通知を行う。
Ｓ８１８において、配信サーバ１３３は、配信許可フラグ変更完了通知を受信し、Ｓ８１９に処理を進める。
【００８２】
Ｓ８１９において、配信サーバ１３３は、配信対象であるネットワークデバイスの配信設定を行う。配信設定には、適用するファームウェアのバージョンと配信日時を含む。本実施例では、適用するファームウェアは最新のファームウェアバージョンとするが、どのバージョンのファームウェアでも構わない。配信日時については即時でもよいし、自由な時間でも構わない。お客様の使用時刻を考慮して週末にしてもよい。また、配信サーバ１３３の機能としてファームウェアを定期的にアップデートする機能があるので、その定期的なアップデート日時と調整を行ってもよい。
【００８３】
次に、Ｓ８２０において、配信サーバ１３３は、配信対象ネットワークデバイスの配信情報を監視センタホスト１１１に通知する（配信準備）。配信情報は、上記Ｓ８１９で設定した配信設定及び、設定値管理サーバ１３６からのファーム配信対象ネットワークデバイス情報１４０１を含む。
【００８４】
Ｓ８２１において、監視センタホスト１１１は、配信情報を受け付けると、この配信情報を登録し、Ｓ８２２に処理を進める。即ち、配信サーバ１３３による配信準備は、ネットワークデバイスを一元管理する管理システムである監視センタホスト１１１に対する、ソフトウェアの配信対象となるネットワークデバイスの情報の登録である。
Ｓ８２２において、監視センタホスト１１１は、前記ネットワークデバイスからの定期的なポーリング通信を受け付け、配信情報を前記ネットワークデバイスに送信する。
【００８５】
Ｓ８２３において、ネットワークデバイスは、監視センタホスト１１１から配信情報を受信すると、Ｓ８２４に処理を進める。
Ｓ８２４において、ネットワークデバイスは、配信サーバ１３３に対してファームウェアのダウンロード依頼を行う。
【００８６】
Ｓ８２５において、配信サーバ１３３は、ファームウェアのダウンロードの受付を行い、ネットワークデバイスに対して配信を行う。
Ｓ８２６において、ネットワークデバイスは、上記Ｓ８２５で配信されたファームウェアを適用してファームウェアのアップデートを行い、配信サーバ１３３にファームウェアアップデートを開始したことを通知する。
Ｓ８２７において、配信サーバ１３３は、ファームウェアアップデートの開始通知を受け付ける。
【００８７】
次に、Ｓ８２８において、ネットワークデバイスは、アップデートを完了すると、アップデートの完了通知を設定値管理サーバ１３６と配信サーバ１３３に対して行う。
Ｓ８２９において、配信サーバ１３３は、アップデート完了通知を受け付ける。
また、Ｓ８３０において、設定値管理サーバ１３６は、アップデート完了通知を受け付ける。
【００８８】
Ｓ８３１において、設定値管理サーバ１３６は、ファームウェアアップデートのために一時的に変更した配信許可フラグを元の状態に戻すため、配信許可フラグ変更指示をネットワークデバイスに行う。
【００８９】
Ｓ８３２において、ネットワークデバイスは、配信許可フラグ変更指示を受け付けると、Ｓ８３３に処理を進める。
Ｓ８３３において、ネットワークデバイスは、配信許可フラグを変更し、配信許可フラグ変更完了通知を設定値管理サーバ１３６に行う。
Ｓ８３４において、設定値管理サーバ１３６は、配信許可フラグ変更完了通知を受信すると、配信サーバ１３３に配信許可フラグ変更完了通知を行う。
Ｓ８３５において、配信サーバ１３３は、配信許可フラグ変更完了通知を受信する。
【００９０】
なお、本実施例では、配信許可フラグを一時的にＯＮにして、ファームウェアアップデート後にＯＦＦに戻しているが、配信許可フラグが不適切に設定されている場合は一時変更ではなく、永続的に変更してもよい。配信許可フラグは、ネットワークデバイスをお客様先に設置する際にサービスマンが手作業でフラグを有効化するため、オペレーションミス等で不適切に設定されているケースがある。従って、本発明を使用することで前記オペレーションミスをカバーすることが可能となる。
【００９１】
図１５は、ネットワークデバイスの処理を例示するフローチャートである。なお、このフローチャートに示す処理は、ネットワークデバイスのＣＰＵ３０６がＲＯＭ３０７又はＨＤＤ３０９に格納されたプログラムを読み出して実行することにより実現されるものである。図中、'Ｓ'を付した符号はステップを示す。
【００９２】
まず、図１５（ａ）を用いて、ネットワークデバイスのファームウェアアップデート処理について説明する。
Ｓ１６０１において、ネットワークデバイスは、監視センタホスト１１１に対し定期的にポーリング通信を行う。
【００９３】
次に、Ｓ１６０２において、ネットワークデバイスは、監視センタホスト１１１に配信情報があるかどうかを判断する。そして、配信情報がないと判断した場合（Ｓ１６０２でＮｏの場合）、ネットワークデバイスは、本フローチャートの処理を終了する。一方、配信情報があると判断した場合（Ｓ１６０２でＹｅｓの場合）、ネットワークデバイスは、１６０３に処理を進める。
【００９４】
Ｓ１６０３において、ネットワークデバイスは、監視センタホスト１１１から配信情報を取得する。
次に、Ｓ１６０４において、ネットワークデバイスは、上記Ｓ１６０３で取得した配信情報で指定されている配信予約時間になったか否かを判断する。そして、ネットワークデバイスは、配信予約時間になるまで待ち、配信予約時間になったと判断した場合（Ｓ１６０４でＹｅｓの場合）、Ｓ１６０５に処理を進める。
【００９５】
Ｓ１６０５において、ネットワークデバイスは、配信サーバ１３３にファームを要求する。
次に、Ｓ１６０６において、ネットワークデバイスは、上記Ｓ１６０５で要求したファームをダウンロードする。
次に、Ｓ１６０７において、ネットワークデバイスは、上記Ｓ１６０６でダウンロードしたファームをアップデートする。
【００９６】
次に、Ｓ１６０８において、ネットワークデバイスは、配信サーバ１３３に、完了通知を行う。また、Ｓ１６０９において、ネットワークデバイスは、設定値管理サーバ１３６に、完了通知を行う。そして、本フローチャートの処理を終了する。
【００９７】
次に、図１５（ｂ）を用いて、ネットワークデバイスの配信許可フラグ変更処理について説明する。
Ｓ１６１０において、ネットワークデバイスは、設定値管理サーバ１３６から変更依頼を受信すると、Ｓ１６１１に処理を進める。
Ｓ１６１１において、ネットワークデバイスは、配信許可フラグを変更する。
次に、Ｓ１６１２において、ネットワークデバイスは、設定値管理サーバ１３６に完了通知を行い、本フローチャートの処理を終了する。
【００９８】
図１６は、監視センタホスト１１１のファームウェア配信処理を例示するフローチャートである。なお、このフローチャートに示す処理は、監視センタホスト１１１のＣＰＵ２０１がＲＯＭ２０２又はＨＤＤ２０４等に格納されたプログラムを読み出して実行することにより実現されるものである。図中、'Ｓ'を付した符号はステップを示す。
【００９９】
まず、Ｓ１７０１において、監視センタホスト１１１は、配信サーバ１３３より配信情報を受信すると、Ｓ１７０２に処理を進める。
Ｓ１７０２において、監視センタホスト１１１は、ネットワークデバイスからポーリング通信を受信したかを判断する。そして、監視センタホスト１１１は、ポーリング通信を受信するまで待ち、ポーリング通信を受信したと判断した場合（Ｓ１７０２でＹｅｓの場合）、Ｓ１７０３に処理を進める。
Ｓ１７０３において、監視センタホスト１１１は、ネットワークデバイスに対して配信情報を送信し、本フローチャートの処理を終了する。
【０１００】
図１７は、設定値管理サーバ１３６の処理を例示するフローチャートである。なお、このフローチャートに示す処理は、設定値管理サーバ１３６のＣＰＵ２０１がＲＯＭ２０２又はＨＤＤ２０４等に格納されたプログラムを読み出して実行することにより実現されるものである。図中、'Ｓ'を付した符号はステップを示す。
【０１０１】
まず、図１７（ａ）を用いて、設定値管理サーバ１３６の設定項目パッケージ取得およびファーム配信指示処理について説明する。
Ｓ１８０１において、設定値管理サーバ１３６は、ネットワークデバイスから定期的なタイミング、もしくはファームウェアが変更されたタイミング等で設定値を受信すると、Ｓ１８０２に処理を進める。
【０１０２】
Ｓ１８０２において、設定値管理サーバ１３６は、設定値に新規項目があるか否かを判断する。そして、設定値に新規項目がないと判断した場合（Ｓ１８０２でＮｏの場合）、設定値管理サーバ１３６は、本フローチャートの処理を終了する。
一方、設定値に新規項目があると判断した場合（Ｓ１８０２でＹｅｓの場合）、設定値管理サーバ１３６は、Ｓ１８０３に処理を進める。
【０１０３】
Ｓ１８０３において、設定値管理サーバ１３６は、上記Ｓ１８０２で判断した新規項目のデータを取得するために、配信サーバ１３３に、設定項目パッケージ１１０１を要求する。
次に、Ｓ１８０４において、設定値管理サーバ１３６は、配信サーバ１３３から設定項目パッケージ１１０１を受信する。
次に、Ｓ１８０５において、設定値管理サーバ１３６は、設定項目テーブル１２０１に設定値を追加する。
【０１０４】
次に、Ｓ１８０６において、設定値管理サーバ１３６は、設定項目テーブル１２０１とファームウェア配信条件テーブル１３０１を参照し、ファーム配信の必要性を判断する。
そして、Ｓ１８０７において、設定値管理サーバ１３６は、ファーム配信の必要がないと判断した場合（Ｓ１８０７でＮｏの場合）、本フローチャートの処理を終了する。
【０１０５】
一方、Ｓ１８０７において、設定値管理サーバ１３６は、ファーム配信の必要があると判断した場合（Ｓ１８０７でＹｅｓの場合）、Ｓ１８０８に処理を進める。
Ｓ１８０８において、設定値管理サーバ１３６は、配信サーバ１３３にファーム配信指示を行い、本フローチャートの処理を終了する。
【０１０６】
次に、図１７（ｂ）を用いて、設定値管理サーバ１３６の配信許可フラグ変更処理について説明する。
Ｓ１８０９において、設定値管理サーバ１３６は、配信サーバ１３３より配信許可フラグ変更依頼を受信すると、Ｓ１８１０に処理を進める。
Ｓ１８１０において、設定値管理サーバ１３６は、上記Ｓ１８０９で受信した配信許可フラグ変更依頼に対応するネットワークデバイス（以下、該当ネットワークデバイス）へ、配信許可フラグ変更指示を行う。
【０１０７】
Ｓ１８１１において、設定値管理サーバ１３６は、上記Ｓ１８１０で配信許可フラグ変更指示を行ったネットワークデバイスから配信許可フラグの変更完了通知を受信すると、Ｓ１８１２に処理を進める。
Ｓ１８１２において、設定値管理サーバ１３６は、配信サーバ１３３へ配信許可フラグ変更完了通知を行う。
【０１０８】
次に、Ｓ１８１３において、設定値管理サーバ１３６は、該当ネットワークデバイスからファームウェアのアップデート完了通知を受信するまで待つ。そして、ファームウェアのアップデート完了通知を受信したと判断した場合（Ｓ１８１３でＹｅｓの場合）、Ｓ１８１４に処理を進める。
【０１０９】
Ｓ１８１４において、設定値管理サーバ１３６は、該当ネットワークデバイスの配信許可フラグを元に戻すように該当ネットワークデバイスに指示を行う。
次に、Ｓ１８１５において、設定値管理サーバ１３６は、該当ネットワークデバイスから配信許可フラグの変更完了通知を受信する。そして、設定値管理サーバ１３６は、配信サーバ１３３へ配信許可フラグ変更完了通知を行い、本フローチャートの処理を終了する。
【０１１０】
図１８は、配信サーバ１３３の処理を例示するフローチャートである。なお、このフローチャートに示す処理は、配信サーバ１３３のＣＰＵ２０１がＲＯＭ２０２又はＨＤＤ２０４等に格納されたプログラムを読み出して実行することにより実現されるものである。図中、'Ｓ'を付した符号はステップを示す。
【０１１１】
まず、図１８（ａ）を用いて、配信サーバ１３３の設定項目パッケージ配信処理について説明する。
Ｓ１９０１において、配信サーバ１３３は、設定値管理サーバ１３６から設定項目パッケージ１１０１の要求を受け付けると、Ｓ１９０２に処理を進める。
Ｓ１９０２において、配信サーバ１３３は、設定項目パッケージ１１０１が存在するか否かを、設定項目パッケージテーブル１００１を参照して判断する。そして、設定項目パッケージ１１０１が存在しないと判断した場合（Ｓ１９０２でＮｏの場合）、配信サーバ１３３は、本フローチャートの処理を終了する。
【０１１２】
一方、設定項目パッケージ１１０１が存在すると判断した場合（Ｓ１９０２でＹｅｓの場合）、配信サーバ１３３は、Ｓ１９０３に処理を進める。
Ｓ１９０３において、配信サーバ１３３は、設定項目パッケージ１１０１を配信し、本フローチャートの処理を終了する。
【０１１３】
次に、図１８（ｂ）を用いて、配信サーバ１３３のファーム配信処理について説明する。
Ｓ１９０４において、配信サーバ１３３は、設定値管理サーバ１３６から配信指示を受け付けると、Ｓ１９０５に処理を進める。
Ｓ１９０５において、配信サーバ１３３は、上記Ｓ１９０４で受け付けた配信指示に対応するネットワークデバイス（以下、該当ネットワークデバイス）の配信許可フラグを確認する。
【０１１４】
次に、Ｓ１９０６において、配信サーバ１３３は、配信許可フラグがＯＦＦになっている該当ネットワークデバイスがあるかどうか配信許可フラグテーブル１５０１を参照して判断する。そして、配信許可フラグがＯＦＦになっている該当ネットワークデバイスがないと判断した場合（Ｓ１９０６でＮｏの場合）、配信サーバ１３３は、Ｓ１９０９に処理を進める。
一方、配信許可フラグがＯＦＦになっている該当ネットワークデバイスがあると判断した場合（Ｓ１９０６でＹｅｓの場合）、配信サーバ１３３は、Ｓ１９０７に処理を進める。
【０１１５】
Ｓ１９０７において、配信サーバ１３３は、設定値管理サーバ１３６に、配信許可フラグがＯＦＦになっている該当ネットワークデバイスの配信許可フラグをＯＮにするように指示を行う（配信許可フラグ変更指示）。
Ｓ１９０８において、配信サーバ１３３は、設定値管理サーバ１３６から配信許可フラグ変更完了通知を受信するまで待つ。そして、配信サーバ１３３は、設定値管理サーバ１３６から配信許可フラグ変更完了通知を受信したと判断した場合（Ｓ１９０８でＹｅｓの場合）、Ｓ１９０９に処理を進める。
【０１１６】
Ｓ１９０９において、配信サーバ１３３は、該当ネットワークデバイスの配信情報の設定を行う。前述したように、適用するファームウェアバージョンや配信日時はユースケースによって自由に設定すればよい。
次に、Ｓ１９１０において、配信サーバ１３３は、監視センタホスト１１１に、上記Ｓ１９０９で設定した配信情報を送信する。
【０１１７】
次に、Ｓ１９１１において、配信サーバ１３３は、ネットワークデバイスから配信要求を受け付けるまで待つ。そして、配信サーバ１３３は、ネットワークデバイスから配信要求を受け付けたと判断した場合（Ｓ１９１１でＹｅｓの場合）、Ｓ１９１２に処理を進める。
【０１１８】
Ｓ１９１２において、配信サーバ１３３は、ファームウェアをネットワークデバイスに配信する。
次に、Ｓ１９１３において、配信サーバ１３３は、ネットワークデバイスからアップデート完了通知を受信するまで待つ。そして、配信サーバ１３３は、ネットワークデバイスからアップデート完了通知を受信と判断した場合（Ｓ１９１３でＹｅｓの場合）、Ｓ１９１４に処理を進める。
【０１１９】
Ｓ１９１４において、配信サーバ１３３は、設定値管理サーバ１３６から配信許可フラグ変更完了通知を受信するまで待つ。そして、配信サーバ１３３は、設定値管理サーバ１３６から配信許可フラグ変更完了通知を受信したと判断した場合（Ｓ１９１４でＹｅｓの場合）、本フローチャートの処理を終了する。
【０１２０】
なお、上記実施例では、設定値管理サーバ１３６をネットワークデバイスとは別にサーバ装置上に設ける構成例を説明した。しかし、設定値管理サーバ１３６は、ネットワークデバイスに内蔵される構成であってもよい。この場合、ネットワークデバイスのＣＰＵ３０６がＲＯＭ３０７又はＨＤＤ３０９に格納されたプログラムを読み出して実行することにより、上述した設定値管理サーバ１３６の機能を実現する構成とする。
【０１２１】
また、上記実施例では、配信サーバからファームウェアをネットワークデバイスに配信する例を説明したが、配信サーバから配信されるソフトウェアはファームウェアに限定されるものではなく、ソフトウェアであればどのようなソフトウェアであってもよい。
【０１２２】
また、上記実施例では、ネットワークデバイスの一例として複合機、複写機、プリンタ等の画像形成装置を用いて説明したが、本発明を適用可能なネットワークデバイスは画像形成装置に限定されるものではなく、ソフトウェアの配信を受けることが可能なネットワーク機器であれば他の種類の機器であってもよい。例えば、パーソナルコンピュータであっても、テレビジョン等のネットワーク家電であっても、カーナビゲーションシステムなどであっても、デジタル医療器、ネットワークカメラ、ロボットなどであってもよい。
【０１２３】
以上示したように、設定値管理サーバ１３６と配信サーバ１３３を連携することで、設定値管理サーバ１３６がネットワークデバイスのファームウェアの更新が必要と判断した場合に、ネットワークデバイスのファームウェアアップデートが可能となる。また、ネットワークデバイスの配信許可フラグがＯＦＦになっている場合でも、配信サーバ１３３によるファームウェアのリモート配信が可能となる。
よって、大量のネットワークデバイスがファームウェア等のソフトウェアの配信の対象になったとしても、サービスマンの手間やコストを省き、ファームウェア配信までの時間の短縮が可能となり、ファームウェア等のソフトウェアの迅速な適用を実現することができる。
【０１２４】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【０１２５】
（その他の実施例）
本発明は、上述の実施例の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【図１】
2016126584.tif 000003
【図２】
2016126584.tif 000004
【図３】
2016126584.tif 000005
【図４】
2016126584.tif 000006
【図５】
2016126584.tif 000007
【図６】
2016126584.tif 000008
【図７】
2016126584.tif 000009
【図８】
2016126584.tif 000010
【図９】
2016126584.tif 000011
【図１０】
2016126584.tif 000012
【図１１】
2016126584.tif 000013
【図１２】
2016126584.tif 000014
【図１３】
2016126584.tif 000015
【図１４】
2016126584.tif 000016
【図１５】
2016126584.tif 000017
【図１６】
2016126584.tif 000018
【図１７】
2016126584.tif 000019
【図１８】
2016126584.tif 000020