(57)【要約】【課題】ＭＦＰデバイスのグループのためのファームウェアを更新したり、将来のための更新スケジュールを定める。【解決手段】ユーザネットワークに接続された１つ以上の電子デバイスのためのファームウェアを更新する。１つ以上の電子デバイスのための、すべてのファームウェア更新活動を制御するようになっている管理ゲートウェイをネットワークに接続する。アプリケーションの一例では、電子デバイスは多機能プリントデバイスとすることができ、ファームウェアの更新を記憶するための電子的にアクセス可能なファームウェアレポジトリを維持する。この管理ゲートウェイは、各電子デバイスのためのファームウェア更新活動スケジュールを設定でき、別の実施例では、更新を実行する前に、電子デバイスのためのバージョンマトリックスを実行する。【選択図】図１
2008192130.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上の電子デバイスの各々が、デバイスメモリに記憶されたファームウェアを有し、ユーザイントラネットに接続された前記１つ以上の電子デバイスのためにファームウェアを更新するための方法において、
ファイアーウォールの背部で前記イントラネットに接続された管理ゲートウェイを維持するステップを備え、前記管理ゲートウェイは前記１つ以上の電子デバイスのためのすべてのファームウェアの更新活動を制御するようになっており、
前記１つ以上の電子デバイスのためのファームウェアの更新を含む、ファームウェアの更新を記憶するための電子的にアクセス可能なファームウェアレポジトリを維持するステップと、
前記１つ以上の電子デバイスの各々のためにファームウェア更新活動スケジュールを設定するよう、前記管理ゲートウェイにアクセスするステップを備え、前記ファームウェア更新活動スケジュールは、前記ファームウェアレポジトリ内のファームウェアのロケーションと前記ファームウェア更新活動を実行するためのタイムスケジュールとを含み、
前記タイムスケジュールに従い、前記１つ以上の電子デバイスの各々のためにファームウェア更新活動を実行するステップと、
前記ファームウェアの更新活動の結果、前記１つ以上の電子デバイスの各々のために、ファームウェア更新に成功したかどうかを判断するよう、前記管理ゲートウェイにより前記ファームウェアの活動をモニタするステップとを備えた、ファームウェアを更新するための方法。
【請求項２】
前記１つ以上の電子デバイスは、１つ以上の多機能プリント（ＭＦＰ）デバイスを含む、請求項１記載の方法。
【請求項３】
前記ファームウェア更新活動のログを維持するステップを更に含む、請求項１記載の方法。
【請求項４】
前記管理ゲートウェイは、前記ユーザイントラネットに接続されたサーバに設置されたソフトウェアアプリケーションである、請求項１記載の方法。
【請求項５】
前記ファームウェアレポジトリを維持する前記ステップは、前記ファームウェア更新により前記ファームウェアレポジトリを維持することを含み、前記ファームウェアの更新は、各ファームウェア更新に関連するバージョンマトリックスを含む、請求項１記載の方法。
【請求項６】
前記ファームウェア更新活動を実行する前に、前記ファームウェアの更新が前記１つのデバイスとコンパーチブルであるかどうかを判断するよう、前記１つ以上の電子デバイスのうちの１つのデバイスに関連するバージョンマトリックスをチェックするステップと、
前記ファームウェア更新が前記１つのデバイスとコンパーチブルである場合に限り、前記１つのデバイスのための前記ファームウェア更新活動を実行するステップとを更に備えた、請求項１記載の方法。
【請求項７】
ファームウェア更新活動を実行する前記ステップは、前記１つ以上の電子デバイスのうちの１つのデバイスに対し、
前記ファームウェア更新を前記ファームウェアレポジトリから前記１つのデバイスにプッシュすることを含む、請求項１記載の方法。
【請求項８】
ファームウェア更新活動を実行する前記ステップは、前記１つ以上の電子デバイスのうちの１つのデバイスに対し、
前記ファームウェア更新を前記１つのデバイスにより前記ファームウェアレポジトリからプルすることを含む、請求項１記載の方法。
【請求項９】
前記ファームウェアレポジトリは、前記ユーザネットワークの外部のリモートサーバに維持されたファームウェアレポジトリデータベースを含む、請求項１記載の方法。
【請求項１０】
リモートサイトにリモートサイト管理コンソールを提供するステップを更に備え、
前記管理ゲートウェイにアクセスする前記ステップは、前記１つ以上の電子デバイスの前記ファームウェアを更新することに関する命令を提供するように、リモート管理コンソールから前記管理ゲートウェイにアクセスすることを含む、請求項１記載の方法。
【請求項１１】
ファームウェアの更新が成功裏に完了したかどうかを表示する通知メッセージをユーザに提供するステップを更に含む、請求項１記載の方法。
【請求項１２】
１つ以上の電子デバイスの各々が、デバイスメモリに記憶されたファームウェアを有し、ユーザイントラネットに接続された前記１つ以上の電子デバイスのためにファームウェアを更新するための方法において、
ファイアーウォールの背部で前記イントラネットに接続された管理ゲートウェイを維持するステップを備え、前記管理ゲートウェイは前記１つ以上の電子デバイスのためのすべてのファームウェアの更新活動を制御するようになっており、
前記１つ以上の電子デバイスのためのファームウェアの更新を含む、ファームウェアの更新を記憶するための電子的にアクセス可能なファームウェアレポジトリを維持するステップと、
前記電子デバイスのうちの１つのためのファームウェア更新活動を開始するよう、前記管理ゲートウェイにアクセスするステップと、
前記ファームウェアの更新活動を実行する前に、前記ファームウェア更新が前記電子デバイスとコンパーチブルであるかどうかを判断するよう、前記１つ以上の電子デバイスのうちの１つのデバイスのためのファームウェア更新に関連するバージョンマトリックスをチェックするステップと、
前記ファームウェア更新が前記１つのデバイスとコンパーチブルである場合に限り、前記１つのデバイスのための前記ファームウェア更新活動を実行するステップとを備えた、ファームウェアを更新するための方法。
【請求項１３】
前記ファームウェアの更新活動の結果、前記電子デバイスのために、ファームウェア更新に成功したかどうかを判断するよう、前記管理ゲートウェイにより前記ファームウェアの活動をモニタするステップを更に備えた、請求項１２記載の方法。
【請求項１４】
前記１つ以上の電子デバイスは、１つ以上の多機能プリント（ＭＦＰ）デバイスを含む、請求項１２記載の方法。
【請求項１５】
前記ファームウェア更新活動のログを維持するステップを更に含む、請求項１２記載の方法。
【請求項１６】
前記管理ゲートウェイは、前記ユーザイントラネットに接続されたサーバに設置されたソフトウェアアプリケーションである、請求項１２記載の方法。
【請求項１７】
前記ファームウェアレポジトリを維持する前記ステップは、前記ファームウェア更新により前記ファームウェアレポジトリを維持することを含み、前記ファームウェアの更新は、各ファームウェアの更新に関連するバージョンマトリックスを含む、請求項１２記載の方法。
【請求項１８】
前記ファームウェアレポジトリは、ユーザネットワークの外部にあるリモートサーバに維持されたファームウェアレポジトリを含む、請求項１２記載の方法。
【請求項１９】
前記１つ以上の電子デバイスの各々のためにファームウェア更新活動スケジュールを設定するよう、前記管理ゲートウェイにアクセスするステップを更に備え、前記ファームウェア更新活動スケジュールは、前記ファームウェアレポジトリ内のファームウェアのロケーションと前記ファームウェア更新活動を実行するためのタイムスケジュールとを備えた、請求項１２記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファームウェア管理に関し、より詳細には、電子デバイスのためのリモートファームウェア管理に関する。
【背景技術】
【０００２】
今日の多くの電子デバイスは、ファームウェアを含む。ファームウェアは、ハードウェアデバイス上にプログラムされたソフトウェアプログラム、すなわち、命令の組である。このファームウェアは、デバイスがどのように作動するかを決定するように実行される命令を提供する。ファームウェアは、ハードウェアデバイスのプログラマブルメモリに記憶できる。更新されたファームウェアが開発されるにつれ、デバイス内に記憶されているファームウェアも交換したり更新したりできるようになっている。
【０００３】
また、従来例として、例えば、特許文献１をあげることができる。
【特許文献１】特開２００６−２４３９０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
電子デバイス、例えば、多機能プリント（ＭＦＰ）デバイスのファームウェアを管理するための現在の解決案には、多くの制限がある。ＭＦＰデバイスは、像形成（スキャニング）機能、プリント機能、コピー機能およびファクシミリ装置機能、または、これら機能の一部のサブセットを実行できるが、ＭＦＰデバイスのグループのためのファームウェアを更新したり、または、将来のための更新スケジュールを定める機構が欠如している。
【課題を解決するための手段】
【０００５】
ユーザネットワークに接続された１つ以上の電子デバイスのためのファームウェアを更新する方法およびシステムについて記載する。１つ以上の電子デバイスのための、すべてのファームウェア更新活動を制御するようになっている管理ゲートウェイをネットワークに接続する。アプリケーションの一例では、電子デバイスは多機能プリントデバイスとすることができ、ファームウェアの更新を記憶するための電子的にアクセス可能なファームウェアレポジトリを維持する。この管理ゲートウェイは、各電子デバイスのためのファームウェア更新活動スケジュールを設定でき、別の実施例では、更新を実行する前に、電子デバイスのためのバージョンマトリックスを実行する。
【発明を実施するための最良の形態】
【０００６】
次の詳細な説明およびいくつかの図面において、同様な要素を、同様な番号で表示する。これら図面は縮尺が定められておらず、図解のために相対的な特徴部のサイズが誇張してある場合がある。
【０００７】
ファームウェア（ＦＷ）をリモート管理するための方法およびシステムの一実施例は、管理ゲートウェイとファームウェアレポジトリを含む。図１は、作動環境の一例を略図で示す。一実施例では、管理ゲートウェイ２０は、顧客サイトで作動するサーバ３０に設置されたソフトウェアアプリケーションとして構成されている。このサーバ３０は、顧客のイントラネットまたはネットワーク４０に接続でき、顧客のネットワーク４０にはいくつかの電子デバイス１０Ａ、１０Ｂ、１０Ｃも接続でき、これらデバイスはアプリケーションではＭＦＰとすることができる。当然ながら、顧客サイトに接続された電子デバイスまたはＭＦＰの数は、顧客の特定の状況に応じて決まり、１つから何百まで変わり得る。ファームウェアを更新する方法は、ＭＦＰデバイスに限定されておらず、更新可能なファームウェアを有する任意のデバイスに適用できる。
【０００８】
ファームウェアレポジトリ７０へのインターネット接続６０を介し、顧客のネットワークにあるファームウェア５０を通して接続を行うことができ、ファームウェアレポジトリ７０は、ファイアーウォール８２を介してインターネットにも接続するリモートサーバ８０に記憶される。一実施例では、ファームウェアレポジトリ７０は、ファームウェアレリースを記憶し、配信するための機構を提供でき、管理ゲートウェイ２０は、ファームウェアレポジトリ７０からのファームウェアレリースまたはファームウェア更新をフェッチする。ＭＦＰは電子コントローラを有し、コンフィギュレーションを変更し、ファームウェアを更新し、コマンド時にレポジトリからファームウェアの更新をプルし、外部ソースなどからのプッシュしたファームウェア更新を取り込むよう、外部デバイス、例えば、管理ゲートウェイからのコマンドを受信するように、ネットワーク可能である。管理ゲートウェイは、ＳＮＭＰ、ＳＯＡＰまたは管理ゲートウェイ２０内で構成された他の任意のプロトコルを使って、ＭＦＰと通信できる。この簡単なネットワーク管理プロトコル（ＳＮＭＰ）は、インターネットエンジニアリングタスクフォース（ＩＥＴＭ）により定められたインターネットプロトコルスイートの一部を形成する。ＳＮＭＰは、管理的な注意を保証する条件に関して、ネットワークに取り付けられたデバイスをモニタするように、ネットワーク管理システムによって使用される。このＳＮＭＰは、アプリケーションレイヤプロトコル、データベーススキーマおよび一組のデータオブジェクトを含むネットワーク管理のための一組の規格を含む。ＳＯＡＰとは、ネットワークを通してウェブサービスリクエストおよび応答メッセージを送る前に、これらリクエストおよびメッセージ内の情報を符号化するのに使用される軽量ＸＭＬに基づくメッージングプロトコルのことである、シンプルオブジェクトアクセスプロトコルを示す。ＳＯＡＰメッセージは、任意のオペレーティングシステムまたはプロトコルから独立しており、ＳＭＴＰ、ＭＩＭＥおよびＨＴＴＰを含む種々のインターネットプロトコルを使ってトランスポートできる。
【０００９】
一実施例では、ディーラまたは顧客のいずれかは、ファームウェアの更新を実行するために管理ゲートウェイ２０を使用する。図示したアプリケーションでは、メーカがディーラを通して電子デバイス、例えば、ＭＦＰを配信でき、ディーラは次にＭＦＰを顧客に販売する。ディーラは顧客のためにＭＦＰをサポートし、維持する。一人のディーラは、一般に、多数の顧客を有する。図２は、ディーラまたは顧客のいずれかがファームウェアの更新を実行するために、管理ゲートウェイ２０を使用する作動環境の一例を示す略図である。ディーラにあるファイアーウォールを通してインターネット６０に、ディーラのサイトにあるターミナル９０を接続する。ディーラ側でサーバ９０に接続することもでき、サーバ上でアプリケーション９６を作動できる。ソフトウェアのアプリケーションプログラムを、リモート管理コンソール９６と称す。管理ゲートウェイ２０と共に、サーバ３０上にローカルファームウェアレポジトリが位置することができ、このレポジトリは顧客のネットワーク４０上で複数のＭＦＰデバイス１０Ａ、１０Ｂ、１０Ｃに接続する。リモートサイトにリモートファームウェアレポジトリを設け、これをファイアーウォール８２によって保護し、管理ゲートウェイ２０へアクセスできる。一実施例では、ウェブブラウザまたはゲートウェイのようなプログラムのいずれかを通してウェブサイトにアクセスする際に、ファームウェアレポジトリにアクセスする。非限定的な例では、ウェブサーバにファームウェアレポジトリを設置したり、または、ウェブサイトとして設定できる。一実施例では、多くのオプションのうちの１つ、例えば、ユーザネーム、パスワード、ウィンドウズ（登録商標）バーチャルダイレクトリアクセス制御などを使って、ファームウェアレポジトリへのアクセスを安全にすることができる。管理ゲートウェイ２０は、ファームウェア更新管理のための中央制御システムとして働くことができ、一実施例では、ユーザ、例えば、ディーラもしくは顧客はＭＦＰデバイスに直接アクセスしなくてよい。ユーザは、ＭＦＰデバイスのためのファームウェア更新をコンフィギュアし、スケジュールを定めるために、イントラネット４０に接続されたターミナルまたはＰＣ３２を通して管理ゲートウェイ２０にアクセスする。管理ゲートウェイは、次に、使用しようとしているＭＦＰのためのファームウェア更新を指定された時間に成功裏に開始することを保証する。顧客の建物内から、または、ディーラの場所から、顧客の保護されたネットワーク内に設置されたＭＦＰのファームウェアを更新するのに、管理ゲートウェイ２０を使用する。
【００１０】
一実施例では、ディーラは、顧客のネットワーク内に管理ゲートウェイをインストールする。別の実施例では、顧客は、このインストールを実行できる。一実施例では、ディーラは管理ゲートウェイだけに直接アクセスでき、顧客のネットワーク内にインストールされた他のデバイスまたはアプリケーションにはアクセスできない。次に、管理ゲートウェイは、顧客の環境内のコンフィギュアされたＭＦＰにアクセスする。顧客のＭＦＰを含む顧客のネットワークの残りの部分は、ディーラの直接アクセスから保護される。ディーラは、管理ゲートウェイを除き、顧客のネットワークの一部にはアクセスできない。管理ゲートウェイへのアクセスは、使用が認められるディーラにしか認められず、このようなアクセスは、工業規格のセキュリティプロトコルを使って保護される。顧客はディーラへのアクセスを拒否することを選択できる。
【００１１】
管理システムの一実施例は、一貫した安全バーチャルトンネルをリモート管理コンソール９６および管理ゲートウェイ２０に提供し、このトンネルを通してリモート管理コンソールと管理ゲートウェイとは、通信できる。一実施例では、安全バーチャルトンネルは永続性があるかまたは準永続性があり、すなわち、メッセージを交換後も留まる、認証かつ暗号化された通信リンクとすることができる。この安全バーチャルトンネルは、公衆の安全でない媒体、例えば、インターネットを通し、リモート管理コンソールと管理ゲートウェイとの間の通信の、プライベートで、かつ、安全なチャンネルを提供する。安全性を更に高めるために、安全バーチャルトンネルは、ディーラが管理ゲートウェイを除く顧客のネットワークの他のいかなる部分にもアクセスできないように保証することもできる。一実施例では、管理ゲートウェイ２０は、リモート管理コンソールがリモート制御を許可すべき対象の、すべてのデバイスのホワイトリストを維持する。管理ゲートウェイだけが、これらデバイスにアクセスする。顧客のインターネットで他のデバイスをリモート制御することが、リモート管理コンソールに求められた場合、管理ゲートウェイはこのリクエストを拒否する。
【００１２】
一貫した安全バーチャルトンネルを設定するいくつかの方法が存在し、特定の顧客のシナリオでどのオプションを使用するかは、設置の容易性、スケーラビリティおよび必要とされるセキュリティのレベルに応じて決まる。一実施例では、ＨＴＴＰＳとして知られるＵＲＩ方式が、永続性のある安全バーチャルトンネルを設定するための基本的機構として働くことができる。ＨＴＴＰＳは、当技術分野で周知のものであり、安全ソケットレイヤを通したハイパーテキスト転送プロトコルまたはＳＳＬを通したＨＴＴＰを参照する。ＨＴＴＰＳは、ユーザのページリクエストだけでなく、ウェブサーバによってリターンされたページも暗号化し、かつ、解読するブラウザに組み込まれたウェブプロトコルのことである。ＨＴＴＰＳは、ＨＴＴＰアプリケーションレイヤの下のサブレイヤとして、安全ソケットレイヤ（ＳＳＬ）として使用する。ＨＴＴＰＳは、下方のレイヤ、すなわち、ＴＣＰ／ＩＰと相互作用する際に、ＨＴＴＰポート８０の代わりにポート４４３を使用する。
【００１３】
ＨＴＴＰＳを使った一実施例では、管理ゲートウェイ３０は、リモート管理コンソール９６への出接続を開始でき、デジタル証明に基づく相互認証の後に、安全トンネルを設定する。一実施例では、ディーラは、リモート管理コンソール９６が顧客サイトにインストールされた管理ゲートウェイ２０と通信するように、自分のＨＴＴＰＳポートをオープンにできる。次に、管理ゲートウェイ２０は、ＭＦＰデバイス１０Ａ、１０Ｂ、１０Ｃのリモート管理のためのリモート管理コンソール９６を認証する。認証ステップが成功裏に終了すると、安全トンネルを所定場所に置く。
【００１４】
方法およびシステムの一実施例は、ディーラおよび顧客に対し、次のファームウェア管理機能のうちの１つ以上を提供する。
【００１５】
自動化されたファームウェアは、１つ以上のＭＦＰデバイスのために更新する。ユーザは、管理ゲートウェイにアクセスし、ファームウェアの更新、ファームウェアレポジトリ内のファームウェアの発見および更新のスケジュールのためにデバイスのグループをコンフィギュアする。将来の期間のために、更新活動のスケジュールを定めることができる。このスケジューリングは、各ＭＦＰに対して別々に行ってもよいし、または、デバイスのグループに対してまとめて行ってもよい。次に、管理ゲートウェイは、コフィギュアされた各ＭＦＰに対し、特定された時間にファームウェアの更新を開始するよう保証する。ファームウェアの更新に失敗した場合、再試行を試みることができ、登録されたユーザに警告の通知を送ることができる。将来の参照のために、更新のステータスをロギングできる。ユーザはスケジュールが定められた更新を変更したり、キャンセルすることもできる。
【００１６】
管理ファームウェアは、多数の顧客の保護されたネットワークに広がるデバイスのために更新する。ディーラは、各顧客のネットワークにインストールされた管理ゲートウェイによって提供されるアクセスを通して、多数の顧客の保護されたネットワークにわたってインストールされたＭＦＰのデバイスのファームウェアを管理できる。
【００１７】
更新を実行する前に、バージョンマトリックスをチェックする。ＭＦＰのサブコンポーネントのためのファームウェアが他のサブコンポーネントのファームウェアとコンパーチブルである場合に限り、ＭＦＰのサブコンポーネントのためのファームウェアを更新することを保証するように、バージョンマトリックスを維持する。管理ゲートウェイは、サブコンポーネントのためのファームウェアの新しいバージョンが他のサブコンポーネントの現在存在するファームウェアとコンパーチブルであるかどうかを判断するために、ＭＦＰのバージョンマトリックスを提供する。このことは、多数のコンポーネントをサポートするデバイスに対しても適用でき、各コンポーネントは、他のコンポーネントのファームウェアに依存する別個のファームウェアを有する。
【００１８】
プッシュおよびプルモデル。プルモデルでは、ＭＦＰはソースロケーションからファームウェアをプルする。管理ゲートウェイは、外部システムからＭＦＰへファームウェアをプッシュするプッシュモデルをサポートする。
【００１９】
セキュリティおよびアクセス制御。認証された人しか、ファームウェアの更新機能にアクセスできないことを保証するために、多数のレベルのセキュリティを提供する。この制御は、例えば、ＭＦＰへのアクセス制御、ディーラから管理ゲートウェイへのＨＴＴＰＳ／ＳＳＬ接続およびデジタル証明を使った相互認証に基づくユーザネーム／パスワード、および、管理ゲートウェイとＭＦＰとの間のＨＴＴＰＳ接続を含むことができる。
【００２０】
ファームウェア更新のステータスに関するユーザへの通知および警告。ユーザは、通知および警告のために管理ゲートウェイに登録する。管理ゲートウェイは、更新のステータスをユーザに通知し、失敗した場合、ユーザは警告メッセージを入手する。
【００２１】
ファームウェア更新活動のロギング。将来の参照のために、すべてのファームウェア更新活動のステータスをロギングする。
【００２２】
信頼できる更新および通知。ファームウェア更新がいったんスタートすると、ファームウェアを成功裏に更新することを保証するためのメカニズムを提供する。ファームウェアの更新に失敗した場合、更新に成功することを保証するために再試行する。再試行にも失敗した場合、ユーザに通知を行う。
【００２３】
従って、一実施例では、ＭＦＰデバイスのためのファームウェア更新プロセスを自動化するための方法よびシステムを提供する。ＭＦＰが設置されている顧客の建物内から、またはディーラの場所から、ファームウェア更新をリモート管理する。ユーザは、ディーラの場所から管理ゲートウェイにアクセスできるだけであり、顧客のネームの他の部分にはアクセスできない。ソフトウェアアプリケーションである管理ゲートウェイにより、ファームウェア更新のリモート管理を行うことができる。顧客のファイアーウォールの内部には、一般に、管理ゲートウェイアプリケーションをインストールでき、このアプリケーションは、ネットワーク内のＭＦＰのファームウェアを管理する。管理ゲートウェイは、ＭＦＰ内で更新しなければならないファームウェアを入手するために、ファームウェアレポジトリを使用する。このファームウェアレポジトリは、新しいファームウェアのレリースを記憶し、配信するための機構となっている。
【００２４】
管理ゲートウェイにより、一実施例におけるファームウェア更新プロセスをドライブする。ここのＭＦＰは、ファームウェア更新を開始する前に管理ゲートウェイの命令を待つ。
【００２５】
図３Ａ、図３Ｂ、図３Ｃは、ファームウェア（ＦＷ）更新のための方法の一実施例を示すフローチャートである。１２０で、ユーザが管理ゲートウェイにログインすると、ＦＷ更新のプロセスが開始する。この更新は、１０４で、管理ゲートウェイに接続し、１０６で、ファームウェア更新の特徴を選択することによって行う。１０８にて、ＦＷの更新を行うことについてユーザが認証されていない場合、１１０にて、認証を行うことができるように、ユーザの信任を提供することがユーザにリクエストされる。
【００２６】
ユーザに対しＦＷ更新をすることが認証されると、１１２で、“ファームウェアファースト”方法または“デバイスファースト”方法のいずれかを選択するよう、ユーザが促される。この実施例では、“ファームウェアファースト”方法の場合、ユーザがまずファームウェアを選択すると、そのファームウェアにコンパーチブルなデバイスのリストをディスプレイする。次に、ユーザは、リストから１つ以上のデバイスを選択し、管理ゲートウェイは選択されたファームウェアによる選択されたデバイスの更新に注意を払う。“デバイスファースト”方法の場合、ユーザはまず更新すべきデバイスを選択し、次に、管理ゲートウェイは更新に利用できるファームウェアのリストをディスプレイする。次に、ユーザは、所望するファームウェアを選択し、管理ゲートウェイは、そのデバイスのための選択されたファームウェアを更新する。
【００２７】
“ファームウェアファースト”方法の場合、１１４にて、ユーザはファーストレポジトリのロケーションを指定する。利用できる２つ以上のファーストレポジトリが存在する。一実施例では、特定の時間において、管理ゲートウェイのために１つのレポジトリしかアクティブとならない。管理ゲートウェイは、一度に１つのレポジトリを選択できる。このレポジトリはローカルレポジトリまたはリモートレポジトリのいずれかとなる。ＵＲＩ（ユニバーサルリソースアイデンティファイア）を使ってファームウェアレポジトリのロケーションを指定でき、ＵＲＩは、例えば、ＵＲＬ、ローカルサーバまたはネットワーク上のダイレクトリパスである。１１６において、管理ゲートウェイは指定されたファームウェアレポジトリからのファームウェアに関する情報をフェッチする。この情報は、ファームウェアと共に、一実施例では、バージョン番号、サポートされているデバイスのファミリーおよび関連するバージョンマトリックスを含む。１１８では、ユーザは、ファームウェアのディスプレイされたリストからの更新のために、所望するファームウェアを選択する。ユーザがファームウェアの選択を一旦行うと、管理ゲートウェイは、１２０および１２２にて、選択されたファームウェアによってアップグレードできるデバイスのリストをディスプレイする。ファームウェア更新をする能力のあるデバイスがない場合、１２５で、マネージメントゲートウェイによりメッセージをディスプレイする。１２４にて、ファームウェア更新をする能力のあるデバイスが少なくとも１つある場合、ユーザは、１２６で、選択されたファームウェアによりどのデバイスを更新するかを選択する。ユーザは、このときに、１２８で、更新をするか、または、将来の時間（ステップ１３０）で更新するスケジュールを定めることもできる。スケジュールが定めれた時間において、管理ゲートウェイは“ウェイクアップ”し、必要なＭＦＰのすべてに更新リクエストを送る（ステップ１３２）。１３２は、スケジュールの定められたジョブが期限となったときに“ウェイクアップ”するスケジューラ機能を示す。この時間に、ゲートウェイは、スケジュールが定められたすべてのジョブを見て、この時間にスタートしなければならない１つのジョブをスタートする。ステップ１３０にて、ジョブのスケジュールが一旦定められると、１３２にて、スケジューラは適当な時間にジョブをスタートする。
【００２８】
１３４にて、管理ゲートウェイは更新リスト上の各デバイスに接続し、デバイスがプッシュ方法をサポートするか、プル方法をサポートするかを判断する。一実施例では、管理ゲートウェイは、ＭＦＰデバイスに対してファームウェアを利用できるようにするために、プッシュモデルまたはプルモデルのいずれかを使用する。１３６にて、デバイスがプッシュモデルをサポートする場合、１３８にて、デバイスは、ファームウェアのファイルを入手し、これをＭＦＰデバイスへ送る。プルモデルでは、１４０にて、管理ゲートウェイは、ファームウェアファイルのロケーションをＭＦＰに提供し、ＭＦＰは、そのロケーションからファイルをフェッチする。管理ゲートウェイは、ファームウェア更新のステータスを受信し、更新に失敗した場合、更新に成功するまで、または、所定の回数の更新を試みるまで、ファームウェアの更新を再試行する（ステップ１４２、１４４、１４６）。管理ゲートウェイは、ステータスをログし、そのステータスに関する通知を登録されたユーザに送り、更新に失敗した場合に警告する（ステップ１４８）。
【００２９】
“デバイスファースト”方法では、一実施例において、ほとんどの処理は“ファームウェアファースト”方法の場合と同じとなる。“デバイスファースト”方法では、１６０、１６２にて、まず、ユーザがデバイスを選択するようにガイドする。ユーザは、１６４にて、ファームウェアレポジトリを指定し、次に、管理ゲートウェイは１６６にて、そのデバイスのための更新に利用し、選択されたデバイスのためのアップグレードのための良好な候補となるファームウェアをディスプレイする。管理ディスプレイは、１６８にて、更新に利用できる少なくとも１つのファームウェアが存在できるかどうかを判断する。そのデバイスのためにファームウェアを利用できない場合、１７０にて、メッセージをディスプレイする。デバイスに対し、フェッチを利用できる場合、ユーザは、１７２にて、ファームウェアのディスプレイされたリストから所望するファームウェアを選択し、作動は１２８へ分岐する。
【００３０】
一実施例において、特定のＭＦＰのファームウェアを更新するかどうかの判断はバージョンマトリックスに基づく。ファームウェアのためのバージョンマトリックスは、ファームウェアレポジトリ内にファームウェアと共に記憶する。バージョンマトリックスの一例は、ＭＦＰの異なるコンポーネントのためのファームウェアすべてのバージョン番号のマトリックスである。このマトリックスは、種々のコンポーネントの間の相互依存性も含む。各コンポーネントが別々のファームウェアを必要とする、多数のサブコンポーネントを有するＭＦＰデバイスに関し、２つ以上のファームウェアを同時に更新する必要がある場合がある。ＭＦＰデバイスの異なるコンポーネントのためのファームウェアは、相互依存性を有する。異なるコンポーネントのためのファームウェアは、コンポーネントのためのファームウェアをアップグレードする順序に依存する。更に、コンポーネントはバージョン間の依存性を有する。あるコンポーネントの特定のバージョンは、別のコンポーネントのためのファームウェアの特定のバージョンにしか働かないことがある。一実施例は、管理ゲートウェイはＭＦＰファームウェアの現在のバージョンと新しいファームウェアのバージョンマトリックスとを比較し、ＭＦＰのためのファームウェアを更新しなければならないかどうかを判断する。図３Ａ〜図３Ｃには、ステップ１２２を含むこの特徴の一実施例が示されている。
【００３１】
バージョンマトリックスの一実施例は、全システムの異なるコンポーネントのためのすべてのファームウェアのバージョン番号のマトリックスである。このバージョンマトリックスは種々のコンポーネントの間の相互依存性も含む。次の表には、バージョンマトリックスの一例の表示が示されている。
【００３２】
【表１】
2008192130.tif 000003
【００３３】
上記表の第１部分は異なるコンポーネントのためのファームウェアのバージョン番号を示す。例えば、レリースされたＭＦＰファームウェアパッケージのバージョンは７.０であり、この例では、ＭＦＰファームウェアは５つのコンポーネント、すなわち、プリントエンジンファームウェア、コピー機ファームウェア、スキャナファームウェア、ファックスファームウェアおよびジョブアカウンティングファームウェアから構成されている。ＭＦＰのコンポーネントは異なるバージョンを有することができ、この場合、ＭＦＰのファームウェアバージョンが７.０であっても、ファックスファームウェアバージョンは５.０となっている。
【００３４】
この例のバージョンマトリックスの表の下方半分は、コンポーネントのバージョンのコンパチビリティのマトリックスとなっている。列は、新しいファームウェアコンポーネントのバージョンを示し、行は、列に示された新しいファームウェアバージョンとコンパーチブルな旧いファームウェアのバージョンを示す。例えば、新しいファームウェア内のジョブアカウンティングバージョン４.０は、旧いレリース内のコピー機ファームウェアバージョン６.５以上とコンパーチブルとなっている。
【００３５】
特定のコンポーネントのための更新をするかどうかを判断するのに、このバージョンマトリックスを使用する。例えば、ＭＦＰがバージョン３.２のジョブアカウンティングファームウェアおよびバージョン６.７のプリンタファームウェアを有し、誰かがジョブアカウンティングのファームウェアを４.０に更新すると判断した場合、その人は、プリントエンジンファームウェアを７.０に更新しなければならず、そうしない場合、ジョブアカウンティングファームウェアは正しく作動しない。
【００３６】
一実施例では、ファームウェアのアップグレードを成功裏に完了することを保証するために、セルフチェック機構を提供する。失敗した場合、ファームウェアをアップグレードするための再試行が行われる。所定の回数の再試行後、ユーザには、ファームウェアのアップグレードに失敗したことが通知される。このとき、ユーザは、ＭＦＰで旧いファームウェアをレストアするオプションを有する。図３Ａ〜図３Ｃには、ステップ１４２〜１４６としてセルフチェック機構の一例が示されている。
【００３７】
以上で、本発明の要旨の特定の実施例を説明し、図示したが、当業者であれば、特許請求の範囲に記載した発明の要旨から逸脱することなく、種々の変形および変更が可能であろう。
【図面の簡単な説明】
【００３８】
【図１】ネットワークに接続されたデバイスのためのファームウェアを更新するためのシステムの作動環境の一実施例を略図で示す。
【図２】ネットワークに接続されたデバイスのためのファームウェアを更新するためのシステムの作動環境の別の実施例を略図で示す。
【図３Ａ】ファームウェアを更新するための方法の一実施例を示すフローチャートの一部である。
【図３Ｂ】ファームウェアを更新するための方法の一実施例を示すフローチャートの他の一部である。
【図３Ｃ】ファームウェアを更新するための方法の一実施例を示すフローチャートの更に他の一部である。
【符号の説明】
【００３９】
１０Ａ〜１０Ｃ…電子デバイス、２０…管理ゲートウェイ、３０…サーバ、３２…ＰＣ、４０…イントラネット、５０…ファームウェア、６０…インターネット接続、７０…ファームウェアレポジトリ、８０…ＨＴＴＰポート、８２…ファイアーウォール、９０…ＰＣ、９２…ファイアーウォール、９４…サーバ、９６…リモート管理コンソール。
【図１】
2008192130.tif 000004
【図２】
2008192130.tif 000005
【図３Ａ】
2008192130.tif 000006
【図３Ｂ】
2008192130.tif 000007
【図３Ｃ】
2008192130.tif 000008