(57)【要約】【課題】複数のプロトコルに対応したネットワークデバイスが混在する環境において、各ネットワークデバイスにおけるプロトコルのサポート状況に応じて柔軟に、かつ確実に設定情報の配信を行うことが可能な管理装置を提供する。【解決手段】管理装置１０１は、ＳＮＭＰである第１プロトコルとは異なる第２プロトコルを第１プロトコルより優先して利用する設定が選択され、かつ、設定情報の配信対象のデバイスが第２プロトコルをサポートしている場合に、当該デバイスに第２プロトコルの仕様に従い設定情報を配信し、第２プロトコルを第１プロトコルより優先して利用する設定が選択され、かつ、設定情報の配信対象のデバイスが第２プロトコルをサポートしていない場合に、当該デバイスに第１プロトコルの仕様に従い設定情報を配信する。【選択図】図８
2018041146.tif 000002
【特許請求の範囲】
【請求項１】
ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）である第１プロトコルと、該第１プロトコルとは異なるネットワークデバイスを制御するための第２プロトコルとを利用して、複数のネットワークデバイスを管理することが可能な管理装置であって、
各ネットワークデバイスについて、前記第２プロトコルと、前記第１プロトコルのそれぞれのサポートの有無を管理する管理手段と、
前記ネットワークデバイスに設定情報を配信する際に、前記第２プロトコルを前記第１プロトコルより優先して利用する設定を選択可能な設定手段と、
前記第２プロトコルを前記第１プロトコルより優先して利用する設定が選択され、かつ、前記設定情報の配信対象のネットワークデバイスが前記第２プロトコルをサポートしている場合に、当該ネットワークデバイスに前記第２プロトコルの仕様に従い前記設定情報を配信する配信手段と、を有し、
前記配信手段は、前記第２プロトコルを前記第１プロトコルより優先して利用する設定が選択され、かつ、前記設定情報の配信対象のネットワークデバイスが前記第２プロトコルをサポートしていない場合に、当該ネットワークデバイスに前記第１プロトコルの仕様に従い前記設定情報を配信し、
前記第２プロトコルは、ネットワークデバイスで確保される前記第１プロトコルとは異なるデータ形式で設定情報を管理する複数のデータストアを利用した設定操作を制御するための要求を定義している
ことを特徴とする管理装置。
【請求項２】
前記第２プロトコルは、ＮＥＴＣＯＮＦである、
ことを特徴とする請求項１に記載の管理装置。
【請求項３】
前記複数のデータストアは、Ｒｕｎｎｉｎｇのデータストアに加えて、Ｃａｎｄｉｔａｔｅのデータストア、及びＳｔａｒｔｕｐのデータストアの少なくともいずれかを含む、
ことを特徴とする請求項１または２に記載の管理装置。
【請求項４】
前記設定手段は、さらに、前記配信手段が前記設定情報の配信対象のネットワークデバイスに前記第２プロトコルの仕様に従い前記設定情報を配信し、配信結果がエラーとなった場合に、当該ネットワークデバイスに前記第２プロトコルとは異なる他のプロトコルの仕様に従い前記設定情報を再配信する設定を選択可能である、
ことを特徴とする請求項１乃至３のいずれか１項に記載の管理装置。
【請求項５】
前記配信手段は、前記ネットワークデバイスに前記第２プロトコルの仕様に従い前記設定情報を配信し、当該ネットワークデバイスにおいて前記第２プロトコルに非対応である設定項目に対する設定情報が配信されたことを示すエラーとなった場合に、前記他のプロトコルの仕様に従い前記設定情報を再配信する、
ことを特徴とする請求項４に記載の管理装置。
【請求項６】
前記配信手段は、前記ネットワークデバイスに前記第２プロトコルの仕様に従い前記設定情報を配信し、通信エラーとなった場合に、前記他のプロトコルの仕様に従う前記設定情報の再配信を行わない、
ことを特徴とする請求項４または５に記載の管理装置。
【請求項７】
前記設定手段は、
前記設定情報の配信対象のネットワークデバイスが複数あり、かつ、当該配信対象の複数のネットワークデバイスのうち、前記第２プロトコルをサポートしているネットワークデバイスと前記第２プロトコルをサポートしていないネットワークデバイスとが混在する場合に、前記配信対象の複数のネットワークデバイスに前記設定情報を一斉に配信する設定を選択可能な画面を表示し、
前記画面において、前記ネットワークデバイスへの配信のタイミングが一致しないことを示す情報を表示する、
ことを特徴とする請求項１乃至６のいずれか１項に記載の管理装置。
【請求項８】
前記画面において、前記配信対象の複数のネットワークデバイスに前記設定情報を一斉に配信する設定が選択された場合に、前記第２プロトコルをサポートしていないネットワークデバイスの現在の設定情報をバックアップとして取得する取得手段と、を備え、
前記配信手段は、前記設定情報の配信対象の複数のネットワークデバイスに前記第２プロトコルの仕様に従い前記設定情報を配信し、いずれかのネットワークデバイスにおいて配信結果がエラーとなった場合に、
前記配信対象の複数のネットワークデバイスのうち前記第２プロトコルをサポートしていないすべてのネットワークデバイスの設定情報を、前記バックアップとして取得された設定情報に書き戻し、
前記配信対象の複数のネットワークデバイスのうち前記第２プロトコルをサポートしているすべてのネットワークデバイスに対してｃａｎｃｅｌ−ｃｏｍｍｉｔコマンドを発行する、
ことを特徴とする請求項７に記載の管理装置。
【請求項９】
前記管理手段は、さらに、各ネットワークデバイスの製品名および設定項目ごとに、前記第２プロトコルおよび前記第１プロトコルのそれぞれのサポートの有無を管理し、
前記第２プロトコルを前記第１プロトコルより優先して利用する設定が選択され、かつ、前記設定情報の配信対象のネットワークデバイスが前記第２プロトコルをサポートしている場合であって、前記設定情報の配信対象のネットワークデバイスの製品名において、当該設定情報に含まれるすべての設定項目が前記第２プロトコルをサポートしているときに、前記配信手段は、当該ネットワークデバイスに前記第２プロトコルの仕様に従い前記設定情報を配信する、
ことを特徴とする請求項１乃至８のいずれか１項に記載の管理装置。
【請求項１０】
ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）である第１プロトコルと、該第１プロトコルとは異なるネットワークデバイスを制御するための第２プロトコルとを利用して、複数のネットワークデバイスを管理することが可能な管理装置の制御方法であって、
各ネットワークデバイスについて、前記第２プロトコルと、前記第１プロトコルのそれぞれのサポートの有無を管理する管理工程と、
前記ネットワークデバイスに設定情報を配信する際に、前記第２プロトコルを前記第１プロトコルより優先して利用する設定を選択可能な設定工程と、
前記第２プロトコルを前記第１プロトコルより優先して利用する設定が選択され、かつ、前記設定情報の配信対象のネットワークデバイスが前記第２プロトコルをサポートしている場合に、当該ネットワークデバイスに前記第２プロトコルの仕様に従い前記設定情報を配信する配信工程と、を有し、
前記配信工程において、前記第２プロトコルを前記第１プロトコルより優先して利用する設定が選択され、かつ、前記設定情報の配信対象のネットワークデバイスが前記第２プロトコルをサポートしていない場合に、当該ネットワークデバイスに前記第１プロトコルの仕様に従い前記設定情報が配信され、
前記第２プロトコルは、ネットワークデバイスで確保される前記第１プロトコルとは異なるデータ形式で設定情報を管理する複数のデータストアを利用した設定操作を制御するための要求を定義している
ことを特徴とする制御方法。
【請求項１１】
請求項１乃至９のいずれか１項に記載の管理装置が備える各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、管理装置、制御方法、プログラムに関する。
【背景技術】
【０００２】
従来、ネットワーク機器や複合機に代表されるデバイスの設定情報を変更するためのプロトコルとして、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）が使用されている。以下、１つ以上の設定項目と設定値の組み合わせを「設定情報」と呼ぶ。
【０００３】
近年、より利便性の高いプロトコルとして、ＩＥＴＦ（Ｔｈｅ  Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ）によってＮＥＴＣＯＮＦ（Ｎｅｔｗｏｒｋ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）が策定され普及しつつある。ＮＥＴＣＯＮＦには、ＳＮＭＰには存在しない設定情報の検証の仕組みやトランザクションの概念が存在する。
【０００４】
特許文献１は、通信形式（プロトコル）が異なる複数の管理装置から制御要求を受け付けた場合に、制御要求に含まれる制御内容を示す制御情報を変換して、変換された制御情報を制御対象装置に対して実施する制御代理装置を開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】国際公開第２００９／０６３５５５号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
現在のＮＥＴＣＯＮＦに対応したデバイスは、ＳＮＭＰに対応したデバイスにＮＥＴＣＯＮＦを追加搭載したものがほとんどである。また、コスト等の問題で、ＳＮＭＰで設定可能な設定情報の一部のみが、ＮＥＴＣＯＮＦで設定可能な場合がある。しかしながら、特許文献１に開示された制御代理装置では、管理装置およびデバイスの各々が複数のプロトコルに対応することは考慮されていない。このため、各ネットワークデバイスにおけるプロトコルのサポート状況に応じて柔軟に、かつ確実に設定情報を配信することができない場合がある。
【０００７】
本発明は、複数のプロトコルに対応したネットワークデバイスが混在する環境において、各ネットワークデバイスにおけるプロトコルのサポート状況に応じて柔軟に、かつ確実に設定情報の配信を行うことが可能な管理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一実施形態の管理装置は、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）である第１プロトコルと、該第１プロトコルとは異なるネットワークデバイスを制御するための第２プロトコルとを利用して、複数のネットワークデバイスを管理することが可能な管理装置であって、各ネットワークデバイスについて、前記第２プロトコルと、前記第１プロトコルのそれぞれのサポートの有無を管理する管理手段と、前記ネットワークデバイスに設定情報を配信する際に、前記第２プロトコルを前記第１プロトコルより優先して利用する設定を選択可能な設定手段と、前記第２プロトコルを前記第１プロトコルより優先して利用する設定が選択され、かつ、前記設定情報の配信対象のネットワークデバイスが前記第２プロトコルをサポートしている場合に、当該ネットワークデバイスに前記第２プロトコルの仕様に従い前記設定情報を配信する配信手段と、を有し、前記配信手段は、前記第２プロトコルを前記第１プロトコルより優先して利用する設定が選択され、かつ、前記設定情報の配信対象のネットワークデバイスが前記第２プロトコルをサポートしていない場合に、当該ネットワークデバイスに前記第１プロトコルの仕様に従い前記設定情報を配信する。前記第２プロトコルは、ネットワークデバイスで確保される前記第１プロトコルとは異なるデータ形式で設定情報を管理する複数のデータストアを利用した設定操作を制御するための要求を定義している。
【発明の効果】
【０００９】
本発明の管理装置によれば、複数のプロトコルに対応したネットワークデバイスが混在する環境において、各ネットワークデバイスにおけるプロトコルのサポート状況に応じて柔軟に、かつ確実に設定情報の配信を行うことが可能となる。
【図面の簡単な説明】
【００１０】
【図１】第１実施形態におけるシステム構成の一例を示す図である。
【図２】管理装置のハードウェア構成例を示すブロック図である。
【図３】デバイスのハードウェア構成例を示すブロック図である。
【図４】管理プログラムの機能構成の一例を示す図である。
【図５】管理装置が管理するテーブルの一例を示す図である。
【図６】管理装置が提供するＵＩ画面の一例を示す図である。
【図７】管理装置が提供するＵＩ画面の一例を示す図である。
【図８】管理装置が設定情報を配信する際の処理を示すフローチャートである。
【図９】管理装置が管理する機種別対応テーブルの一例を示す図である。
【図１０】管理装置が設定情報を配信する際の処理を示すフローチャートである。
【図１１】管理装置が管理するバックアップテーブルの一例を示す図である。
【図１２】管理装置が提供するＵＩ画面の一例を示す図である。
【図１３】管理装置が設定情報を配信する際の処理を示すフローチャートである。
【図１４】管理装置が設定情報を配信する際の処理を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について図面などを参照して説明する。
（第１実施形態）
【００１２】
図１は、本実施形態におけるシステム構成の一例を示す図である。
本実施形態におけるシステムは、管理装置１０１、および複数のネットワークデバイス（デバイス）１０２〜１０４を備える。デバイスは、例えば、複合機やプリンタ、スキャナ、ネットワーク中継機器（ルータ）、ネットワークカメラ等の機器である。管理装置１０１、およびデバイス１０２〜１０４は、ネットワークに接続されている。ここでは、ネットワークの一例としてローカルエリアネットワーク（ＬＡＮ）１００を挙げる。なお、本実施形態では、１台の管理装置と、３台のデバイスとから構成されるシステムの例について説明するが、管理装置およびデバイスの台数を限定するものではない。
【００１３】
図２は、管理装置１０１のハードウェア構成例を示すブロック図である。
管理装置１０１は、ＲＯＭ２０２またはハードディスク（ＨＤＤ）２１２に格納された管理プログラムを実行するＣＰＵ２０１を備える。また、ＣＰＵ２０１は、システムバス２０４に接続された各構成要素を総括的に制御する。ＲＯＭ２０２には、ＢＩＯＳやブートプログラムが格納されている。
【００１４】
ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。キーボードコントローラ（ＫＢＣ）２０５は、キーボード（ＫＢ）２０９やポインティングデバイス（ＰＤ）２１０等からの指示入力を制御する。ディスプレイコントローラ（ＤＳＰＣ）２０６は、ディスプレイ（ＤＳＰ）２１１への表示を制御する。ディスクコントローラ（ＤＫＣ）２０７は、ハードディスク（ＨＤＤ）２１２やＤＶＤ−ＲＯＭドライブ（ＤＶＤ）２１３等とのアクセスを制御する。
【００１５】
ハードディスク（ＨＤＤ）２１２およびＤＶＤ−ＲＯＭ（ＤＶＤ）等には、ブートプログラム、オペレーティングシステム、データベース、管理プログラムおよびデータ等が格納されている。インタフェースコントローラ（ＩＦＣ）は、ＬＡＮ１００を介して他の機器と情報を送受信する。上述した管理装置１０１の各構成要素は、システムバス２０４上に配置される。
【００１６】
なお、後述するすべての説明で特に断りのない限り、ＣＰＵ２０１は、管理装置１０１に関するハードウェア上の実行の主体である。ＣＰＵ２０１は、ハードディスク（ＨＤＤ）２１２に格納された管理プログラムを読み出して、実行することで本発明を実現する。管理プログラムは、後述する本実施形態の処理のソフトウェア上の制御の主体である。また、管理プログラムは、ＤＶＤ−ＲＯＭ等の記憶媒体に格納された形で供給されても良く、その場合にはＤＶＤ−ＲＯＭドライブ（ＤＶＤ）２１３等によって記憶媒体からプログラムが読み取られ、ハードディスク（ＨＤＤ）２１２にインストールされる。
【００１７】
図３は、デバイス１０２のハードウェア構成例を示すブロック図である。
ここでは、一例としてデバイス１０２が複合機であった場合のハードウェア構成について説明する。なお、デバイス１０３及び１０４についても同様の構成をもつものとする。ＣＰＵ３０１は、デバイス１０２全体の制御を司り、システムバス３１０に接続された各構成要素を総括的に制御する。ＲＯＭ３０２には、シリアル番号などが格納されている。ＲＡＭ３０３は、ＣＰＵ３０１のワークエリア、受信バッファ、画像描画に使用される。
【００１８】
ハードディスク（ＨＤＤ）３０４には、ファームウェア、拡張プログラム、フォントデータ等を格納されている。操作部３０５は、各種スイッチやボタン、及びメッセージ表示用の液晶表示部で構成される。ネットワークＩ／Ｆ３０６は、ネットワークに接続するためのネットワークインタフェースであり、ＬＡＮ１００を介して他の機器と情報を送受信する。プリントエンジン３０７は、記録紙に印刷を行う。スキャナ３０８は、原稿を読み取る。ファクシミリ通信部３０９は、ファクシミリの送受信を行う。上述したデバイス１０２の各構成要素は、システムバス３１０上に配置される。
【００１９】
図４は、管理装置１０１で動作する管理プログラム４００の機能構成の一例を示す図である。
図４に示す各機能は、ＣＰＵ２０１が管理プログラム４００を実行することにより実現される。ＵＩ制御部４０１は、ユーザが管理プログラム４００を操作するためのグラフィカルユーザインタフェース（ＧＵＩ）を提供する。ＧＵＩは、ＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）を用いて、他のＰＣで表示可能なＷｅｂページとして構成される。また、ＧＵＩは、管理装置１０１が備えるディスプレイ２１１に表示されるように構成されてもよい。
【００２０】
制御部４０２は、ＵＩ制御部４０１の指示や通信部４０８が受信する要求に従い、管理プログラム４００の各機能に対して後述する各種処理を指示する。デバイス管理部４０３は、探索部４０７を介してＬＡＮ１００に接続されたデバイスを探索する。デバイスの探索は、ＳＬＰ（Ｓｅｒｖｉｃｅ  Ｌｏｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）や、ＳＮＭＰなどを使用して探索要求パケットを送信することによって実現可能である。
【００２１】
デバイス管理部４０３は、探索により発見されたデバイスに対して、通信部４０８を介してさらにデバイスの詳細情報（機種名、シリアルナンバー、能力、状態など）を取得することも可能である。また、デバイス管理部４０３は、デバイスに設定情報を配信する際に使用可能なプロトコルの情報も取得することが可能である。デバイス管理部４０３は、デバイスの所在情報（ＩＰアドレス）とデバイスから取得した情報とをデバイス情報データベース（ＤＢ）４１０上のデバイスリスト５１０に格納する。
【００２２】
設定情報管理部４０４は、後述する設定情報編集画面にてユーザが入力した設定情報を設定情報ＤＢ４０９上の設定情報管理テーブル５２０（図５（Ｃ））に格納する。装置情報管理部４０５は、管理装置１０１の属性情報を定め、装置情報ＤＢ４１１上の装置情報テーブル５００（図５（Ａ））に格納する。管理装置１０１の属性情報は、管理装置固有の情報や、ユーザによって入力された属性情報を含む。後述するポリシー画面（図６（Ａ））に入力された情報も管理装置１０１の属性情報として装置情報テーブル５００に格納される。
【００２３】
設定情報配信部４０６は、通信部４０８を介してデバイスに対して設定情報を配信する。また、設定情報配信部４０６は、ＮＥＴＣＯＮＦ（第２プロトコル）の仕様に従いデバイスの設定情報の配信を実現するＮＥＴＣＯＮＦ部４０６１と、ＳＮＭＰ（第１プロトコル）の仕様に従いデバイスの設定情報の配信を実現するＳＮＭＰ部４０６２を有する。なお、設定情報配信部４０６は、ＮＥＴＣＯＮＦ及びＳＮＭＰ以外のその他のプロトコルを用いて設定情報を配信してもよく、その他のプロトコルを用いて配信する構成部を有していてもよい。すなわち、第１プロトコル及び第２プロトコルは、それぞれＳＮＭＰ及びＮＥＴＣＯＮＦに限定されるものではない。
【００２４】
なお、第２プロトコルは、デバイスで確保される、第１プロトコルとは異なるデータ形式で設定情報を管理する複数のデータストア（領域）を利用した設定操作を制御するための要求を定義している。第２プロトコルがＮＥＴＣＯＮＦである場合、ＮＥＴＣＯＮＦは、複数のデータとして、Ｒｕｎｎｉｎｇのデータストアに加えて、Ｃａｎｄｉｔａｔｅのデータストア、及びＳｔａｒｔｕｐのデータストアの少なくともいずれかを含む。
【００２５】
Ｒｕｎｎｉｎｇのデータストアとは、現在の設定データを保持する領域であり、デバイス上でアクティブなデータストアである。Ｃａｎｄｉｄａｔｅのデータストアとは、設定データを一時的に保持する領域であり、ＮＥＴＣＯＮＦで定義されるデバイスの現在の構成に影響を与えることなく操作することができるアクティブでないデータストアである。Ｓｔａｒｔｕｐのデータストアとは、デバイスの起動時に反映する設定データを保持する領域である。Ｒｕｎｎｉｎｇのデータストアは、ＮＥＴＣＯＮＦの仕様上必須のデータストアであり、Ｃａｎｄｉｄａｔｅ及びＳｔａｒｔｕｐのデータストアは、仕様上オプションのデータストアである。
【００２６】
探索部４０７は、通信部４０８を介してＬＡＮ１００に接続されたデバイスを探索する。通信部４０８は、ＮＥＴＣＯＮＦ部４０６１、ＳＮＭＰ部４０６２、および探索部４０７からの指示によりデバイスと通信する。また、通信部４０８は、ＨＴＴＰ通信を司り、必要に応じて、ＵＩ制御部４０１から受け取ったＷｅｂページを他のＰＣに送信する。設定情報ＤＢ４０９、デバイス情報ＤＢ４１０、装置情報ＤＢ４１１は、後述する各種テーブルを格納するデータベースである。データベースに登録した情報は、ＵＩ制御部４０１を介してユーザが閲覧することも可能である。
【００２７】
図５は、管理装置１０１が設定情報ＤＢ４０９、デバイス情報ＤＢ４１０、及び装置情報ＤＢ４１１にて管理するテーブルの一例を示す図である。
なお、図５に示す各テーブルの構成は一例であり、これに限定されるものではなく、異なる構成であってもよい。
【００２８】
図５（Ａ）は、装置情報テーブル５００の一例である。装置情報テーブル５００は、カラム５０１およびカラム５０２で構成される。カラム５０１には属性名が格納される。属性名は、管理装置１０１が有する属性の名称である。本実施形態では、管理装置１０１は、属性として少なくとも「対応プロトコル」、「使用するプロトコル」、「優先プロトコル」、「別プロトコルでの再送」を有しており、装置情報テーブル５００にはこれら属性の名称が格納されている。
【００２９】
なお、本実施形態では、ＮＥＴＣＯＮＦまたはＳＮＭＰを用いてデバイスに設定情報を配信することを想定している。このため「対応プロトコル」の値には、少なくとも「ＮＥＴＣＯＮＦ」および「ＳＮＭＰ」が格納されている。カラム５０２には、属性名５０１が示す属性の値が格納される。
【００３０】
図５（Ｂ）は、デバイスリスト５１０の一例である。デバイスリスト５１０は、カラム５１１〜カラム５１６で構成される。１つのレコード（１行のデータ）が１つのデバイスの情報を表している。カラム５１１にはデバイスのシリアル番号（ＳＮ）が格納される。カラム５１２にはデバイスのＩＰアドレスが格納される。カラム５１３にはデバイス名としてデバイスのニックネームが格納される。
【００３１】
カラム５１４にはデバイスの製品名が格納される。カラム５１５にはデバイスが設置されている場所の情報が格納される。カラム５１６にはデバイス管理部４０３が探索部４０７を介して取得した、デバイスに設定情報を配信する際に使用可能なプロトコルの情報が格納される。すなわち、ＮＥＴＣＯＮＦやＳＮＭＰ等のそれぞれのプロトコルのサポートの有無が格納される。なお、デバイスリスト５１０には、カラム５１１〜５１６に格納された情報の他に、例えば、デバイスのエラー状態やオプション等の情報を格納してもよい。
【００３２】
図５（Ｃ）は、設定情報管理テーブル５２０の一例である。設定情報管理テーブル５２０は、カラム５２１〜カラム５２３で構成される。１つのレコードが１つの設定情報を表している。カラム５２１にはデバイスの設定情報を一意に識別するための識別子である設定情報ＩＤが格納される。カラム５２２には該設定情報が配信される対象となるデバイスのデバイス名が格納される。
【００３３】
カラム５２３には設定情報としてデバイスがスリープに移行するまでの時間が格納される。なお、「デバイス名」および「スリープ移行時間」は、設定情報として格納される情報の一例であり、に限定されるものではなく、その他の情報を格納してもよい。この場合、設定情報管理テーブル５２０には１つ以上のカラムを追加してその他の情報を格納すればよい。
【００３４】
図５（Ｄ）は、個別情報管理テーブル５３０の一例である。個別情報管理テーブル５３０は、カラム５３１〜カラム５３４で構成される。１つのレコードが１つの個別情報を表している。個別情報は、デバイス１台１台に固有の設定情報のことである。これに対して、設定情報管理テーブル５２０に格納される設定情報は、全デバイスに共通の設定情報である。カラム５３１には個別情報の各レコードと関連する設定情報管理テーブル５２０に格納された設定情報を示す設定情報ＩＤ５２１の値が格納される。
【００３５】
図５（Ｄ）に示す例では、１行目のレコードの設定情報ＩＤ５３１の値が「Ｓ００１」である。これは、１行目のレコードが、設定情報管理テーブル５２０の設定情報ＩＤ５２１の値が「Ｓ００１」であるレコード（すなわち、設定情報管理テーブル５２０の１行目のレコード）と関連していることを示している。個別情報管理テーブル５３０の２行目および３行目のレコードについても同様に設定情報管理テーブル５２０の１行目のレコードと関連している。
【００３６】
カラム５３２にはデバイスのシリアル番号（ＳＮ）が格納される。カラム５３２に格納されるシリアル番号は、デバイスリスト５１０に格納されているデバイスのシリアル番号のいずれかである。カラム５３３にはデバイスのＩＰアドレスが格納される。カラム５３３にはデバイスが設置されている場所の情報が格納される。なお、「ＩＰアドレス」および「設置場所」は、個別情報として格納される情報の一例であり、これに限定されるものではなく、その他の情報を格納してもよい。この場合、個別情報管理テーブル５３０には１つ以上のカラムを追加してその他の情報を格納すればよい。
【００３７】
図５（Ｅ）は、結果テーブル５４０の一例である。結果テーブル５４０は、カラム５４１〜カラム５４５で構成される。１つのレコードが１台のデバイスに対する設定情報の配信の実行結果を表している。カラム５４１には配信ＩＤが格納される。配信ＩＤは、設定情報管理テーブル５２０および個別情報管理テーブル５３０に格納されている設定情報をデバイスに配信する際に一意に付与される識別情報である。
【００３８】
図５（Ｅ）に示す例では、１行目のレコードから３行目のレコードの配信ＩＤ５４１の値がいずれも「１」であり、この３つのレコードに対応する設定情報の配信は関連しており、一連の配信であることを示している。カラム５４２には配信が実行された日時情報（配信日時）が格納される。カラム５４３には配信が実行された対象デバイスのシリアル番号が格納される。カラム５４４には配信の実行結果が格納される。カラム５４５には配信を実行する際に使用したプロトコルが格納される。
【００３９】
図６および図７は、管理装置１０１が管理プログラム４００のＵＩ制御部４０１により提供するＵＩ画面の一例である。
図６（Ａ）は、ポリシー画面６００の一例である。選択領域６０１では、設定情報の配信時に使用するプロトコルを選択する。装置情報テーブル５００の属性名が「対応プロトコル」の値が表示される。図５（Ａ）の装置情報テーブル５００では、「ＮＥＴＣＯＮＦ」および「ＳＮＭＰ」が格納されているため、ここでは「ＮＥＴＣＯＮＦ」および「ＳＮＭＰ」が表示される。ユーザは、選択領域６０１において、１つ以上のプロトコルを選択する。
【００４０】
優先指定領域６０２では、設定情報の配信時に優先的に使用するプロトコルを選択可能である。ユーザは、選択領域６０１で選択したプロトコルの中から任意の１つを選択する。再送指定領域６０３では、優先指定領域６０２で指定されたプロトコルで設定配信を行った場合であって、該配信が失敗したときに、設定情報を別のプロトコルで再送するか否かを指定する。選択領域６０１で複数のプロトコルが選択された場合に指定可能となる。
【００４１】
ＯＫボタン６０４が押下されると、管理プログラム４００は、各領域６０１〜６０３において指定された設定を装置情報テーブル５００に格納する。具体的には、装置情報管理部４０５は、選択領域６０１で選択されたプロトコルを、属性名が「使用するプロトコル」の値として格納する。また、装置情報管理部４０５は、優先指定領域６０２で指定されたプロトコルを、属性名が「優先プロトコル」の値として格納する。また、装置情報管理部４０５は、再送指定領域６０３で指定された結果に基づき、属性名が「別プロトコルでの再送」の値として「ＯＮ」または「ＯＦＦ」を格納する。そして、ポリシー画面６００は終了する。キャンセルボタン６０５が押下されると、管理プログラム４００は、ポリシー画面６００の編集結果を破棄し、ポリシー画面６００を終了する。
【００４２】
図６（Ｂ）は、デバイス選択画面６２０の一例である。チェックボックス６２１では、ユーザが設定情報の配信対象とするデバイスを選択する。シリアル番号６２２には、デバイスリスト５１０のカラム５１１の値が表示される。カラム６２３〜６２６についても同様に、デバイスリスト５１０のカラム５１２〜５１５の値が表示される。
【００４３】
ＯＫボタン６２７が押下されると、管理プログラム４００は、チェックボックス６２１で選択されたデバイスのシリアル番号をＲＡＭ２０３またはＨＤＤ２１２に一時的に格納する。キャンセルボタン６２８が押下されると、管理プログラム４００は、デバイス選択画面６２０の編集結果を破棄し、デバイス選択画面６２０を終了する。
【００４４】
図７（Ａ）は、設定情報編集画面６４０の一例である。設定情報ＩＤ６４１では、編集中の設定情報の識別子を表示する。ＵＩ制御部４０１が設定情報編集画面６４０を生成する際に、管理プログラム４００内で設定情報を一意に識別するための識別子を生成する。なお、本実施形態では、ＵＩ制御部４０１が設定情報ＩＤ６４１を生成するが、ユーザが指定するように構成してもよい。その場合、ユーザは設定情報ＩＤの値として管理プログラム４００内に存在しない値を指定する必要がある。
【００４５】
設定情報編集画面６４０は、デバイス名入力領域６４２、スリープ移行時間入力領域６４３、ＩＰアドレス設定ボタン６４４、設置場所設定ボタン６４５を有する。各設定項目の先頭には、チェックボックスが付加されており、ユーザがデバイスに適用したい設定情報を選択することが可能である。ＩＰアドレス設定ボタン６４４は、「ＩＰアドレス」を設定するための設定ボタンである。ＩＰアドレス設定ボタン６４４の先頭のチェックボックスを選択すると、設定ボタン６４４が押下可能となる。ＩＰアドレス設定ボタン６４４を押下すると、個別編集画面６６０（図７（Ｂ））が表示される。設置場所設定ボタン６４５は、「設置場所」を設定するための設定ボタンである。設置場所設定ボタン６４５の動作は、ＩＰアドレス設定ボタン６４４と同様である。
【００４６】
ＯＫボタン６４６が押下されると、設定情報管理部４０４は、設定項目６４２〜６４５に入力された値を設定情報管理テーブル５２０および個別情報管理テーブル５３０に格納する。具体的には、デバイス名入力領域６４２の値は、設定情報管理テーブル５２０上の、設定情報ＩＤ５２１の値が設定情報ＩＤ６４１と一致するレコードのカラム５２２の領域に格納される。スリープ移行時間入力領域６４３についても同様である。一致する設定情報ＩＤが存在しなければ、設定情報管理テーブル５２０に新規レコードを追加する。キャンセルボタン６４７が押下されると、管理プログラム４００は、設定情報編集画面６４０の編集結果を破棄し、設定情報編集画面６４０を終了する。
【００４７】
図７（Ｂ）は、個別編集画面６６０の一例である。設定情報ＩＤ６６１では、編集中の設定情報の識別子を表示する。設定情報ＩＤ６６１の値は、設定情報ＩＤ６４１の値と同一である。シリアル番号６６２には、デバイス選択画面６２０（図６（Ｂ））で選択され、ＲＡＭ２０３またはＨＤＤ２１２に一時的に格納されている値が表示される。なお、デバイスを一意に識別することができる値であれば他の値を用いてもよい。ＩＰアドレス入力領域６６３には、シリアル番号６６２に対応するデバイスのＩＰアドレスを入力する。ＩＰアドレスは、すべてのデバイスで異なる値を設定する必要がある。このため、個別編集画面６６０ではデバイスのシリアル番号毎にＩＰアドレスを入力する構成となっている。
【００４８】
ＯＫボタン６６４が押下されると、設定情報管理部４０４は、ＩＰアドレス入力領域６６３に入力された値を個別情報管理テーブル５３０に格納する。具体的には、ＩＰアドレス入力領域６６３の値は、個別情報管理テーブル５３０上の、設定情報ＩＤ５３１とＳＮ５３２の各値の組み合わせが、設定情報ＩＤ６６１とシリアル番号６６２の組み合わせと一致するレコードのカラム５３３の領域に格納される。一致する設定情報ＩＤとシリアル番号の組み合わせが存在しなければ、個別情報管理テーブル５３０に新規レコードを追加する。
【００４９】
キャンセルボタン６６５が押下されると、管理プログラム４００は、個別編集画面６６０の編集結果を破棄し、個別編集画面６６０を終了する。なお、図７（Ｂ）に示す個別編集画面６６０では、ＩＰアドレスの設定に関して例示しているが、設置場所設定ボタン６４５を押下した際の動作も同様である。この場合、図７（Ｂ）において、ＩＰアドレス入力領域６６３が設置場所入力領域に置き換わる。
【００５０】
また、本実施形態では、設定情報管理部４０４は、個別編集画面６６０のＯＫボタン６６４が押下された際に、画面上で設定された値を個別情報管理テーブル５３０に格納する。しかし、この方法に限られるものではなく、例えば、設定情報管理部４０４は、ＯＫボタン６６４が押下された際にＲＡＭ２０３またはＨＤＤ２１２に一時的に値を格納しておくようにしてもよい。その後、設定情報編集画面６４０（図７（Ａ））のＯＫボタン６４６が押下された場合に、上述の一時的に保持した値を個別情報管理テーブル５３０に格納するように構成してもよい。
【００５１】
図８は、管理装置１０１が設定情報を配信する際に実行する処理を説明するためのフローチャートである。
ユーザが、デバイス１０２〜１０４に設定情報を配信するために管理プログラム４００を起動すると、図８に示す処理が実行される。ステップＳ７０１では、装置情報管理部４０５が、管理装置１０１自身が対応しているプロトコルの情報を、装置情報テーブル５００の属性名「対応プロトコル」の値に格納する。なお、ステップＳ７０１の処理は、管理プログラム４００の起動時ではなく、インストール時に格納するような構成であってもよい。
【００５２】
ステップＳ７０２では、デバイス管理部４０３が、デバイス１０２〜１０４が対応するプロトコルの情報を収集する。具体的には、デバイス管理部４０３は、探索部４０７を介して送信したＳＮＭＰの探索要求パケットに応答したデバイスをＳＮＭＰに対応しているデバイスであると判断する。また、デバイス管理部４０３は、通信部４０８を介して送信したＮＥＴＣＯＮＦの＜ｈｅｌｌｏ＞メッセージに応答したデバイスをＮＥＴＣＯＮＦに対応しているデバイスであると判断する。
【００５３】
なお、装置情報テーブル５００の属性名が「対応プロトコル」の値として他のプロトコルが格納されている場合についても同様に、デバイス管理部４０３は、該プロトコルに対応しているか否かを判断できる。そして、デバイス管理部４０３は、ステップＳ７０２で収集したデバイスの情報や該デバイスの対応するプロトコルの情報をデバイスリスト５１０に格納する。
【００５４】
ステップＳ７０３では、制御部４０２が、管理装置１０１が複数のプロトコルに対応しており、かつ、デバイスリスト５１０上において対応プロトコル５１６に複数のプロトコルが登録されているデバイスが存在するか否かを判断する。管理装置１０１が複数のプロトコルに対応しており、かつ、デバイスリスト５１０上において対応プロトコル５１６に複数のプロトコルが登録されているデバイスが存在する場合は、ステップＳ７０４に進み、存在しない場合は、ステップＳ７０９に進む。
【００５５】
ステップＳ７０４では、ＵＩ制御部４０１が、ポリシー画面６００（図６（Ａ））を表示する。ステップＳ７０５では、ＵＩ制御部４０１が、ユーザによってポリシー画面６００が変更され、ＯＫボタン６０４が押下されたか否かを判断する。ポリシー画面６００が変更され、ＯＫボタン６０４が押下された場合は、ステップＳ７０６に進み、ポリシー画面６００が変更されていない、またはキャンセルボタン６０５が押下された場合は、ステップＳ７０７に進む。
【００５６】
ステップＳ７０６では、ＵＩ制御部４０１が、ポリシー画面６００に入力された値を装置情報管理部４０５に送信する。装置情報管理部４０５は、受信した値を装置情報ＤＢ４１１上の装置情報テーブル５００に格納する。ステップＳ７０７では、ＵＩ制御部４０１が、ポリシー画面６００に入力された値を破棄する。なお、装置情報テーブル５００の各属性名に対応する値が未定である場合、装置情報管理部４０５は、初期値として予め定められた値を装置情報テーブル５００に格納する。例えば、装置情報管理部４０５は、属性名が「使用するプロトコル」の値が未定の場合に、属性名が「対応プロトコル」の値と同じ値を格納する等の処理を行う。
【００５７】
ステップＳ７０８では、デバイス管理部４０３が、デバイスリスト５１０（図５（Ｂ））から装置情報テーブル５００（図５（Ａ））の各属性に従うデバイスを抽出し、ＵＩ制御部４０１に送信する。例えば、装置情報テーブル５００において、属性名が「使用するプロトコル」の値は、「ＮＥＴＣＯＮＦ」および「ＳＮＭＰ」である。そこで、デバイス管理部４０３は、デバイスリスト５１０の対応プロトコル５１６の値が「ＮＥＴＣＯＮＦ」または「ＳＮＭＰ」であるデバイス（１行目〜３行目のレコードのデバイス）を抽出する。すなわち、ステップＳ７０８で抽出されるデバイスは、デバイスリスト５１０において、ＳＮ５１１の値が「ＡＢＣ１２３」、「ＡＢＣ４５６」、「ＡＢＣ７８９」のデバイスである。そして、ＵＩ制御部４０１は、抽出されたデバイスをデバイス選択画面６２０に表示する。
【００５８】
一方、ステップＳ７０９では、デバイス管理部４０３が、デバイスリスト５１０の全デバイスを抽出し、ＵＩ制御部４０１に送信する。そして、ＵＩ制御部４０１は、抽出された全デバイスをデバイス選択画面６２０に表示する。ユーザは、ステップＳ７０８およびステップＳ７０９で表示されたデバイス選択画面６２０上で、チェックボックス６２１を選択することによりデバイスを選択する。デバイス管理部４０３は、ＵＩ制御部４０１を介して選択されたデバイスのシリアル番号を受け取り、ＲＡＭ２０３またはＨＤＤ２１２に一時的に格納する。
【００５９】
ステップＳ７１０では、ＵＩ制御部４０１が、設定情報編集画面６４０（図７（Ａ））を表示する。また、ユーザが、設定情報編集画面６４０においてＩＰアドレス設定ボタン６４４または設置場所設定ボタン６４５を押下した場合、ＵＩ制御部４０１は、個別編集画面６６０（図７（Ｂ））を表示する。ユーザは、設定情報編集画面６４０および個別編集画面６６０の各設定項目に設定値を入力する。設定情報管理部４０４は、ＵＩ制御部４０１を介して入力された設定情報を受け取り、設定情報ＤＢ４０９の設定情報管理テーブル５２０および個別情報管理テーブル５３０に格納する。また、設定情報管理部４０４は、設定情報を格納した該レコードの設定情報ＩＤ（５２１または５３１の値）を、ＲＡＭ２０３またはＨＤＤ２１２に一時的に格納する。
【００６０】
ステップＳ７１１では、デバイス管理部４０３が、ＲＡＭ２０３またはＨＤＤ２１２に一時的に格納されたシリアル番号を読み出す。また、読み出されたシリアル番号と一致するデバイス情報をデバイスリスト５１０から抽出する。複数のシリアル番号が格納されている場合は、配信が実施されていないデバイスのシリアル番号を読み出す。ステップＳ７１２では、設定情報管理部４０４が、ＲＡＭ２０３またはＨＤＤ２１２に一時的に格納した設定情報ＩＤを読み出し、該当する設定情報を設定情報管理テーブル５２０および個別情報管理テーブル５３０から抽出する。個別情報管理テーブル５３０から設定情報を抽出する際には、設定情報ＩＤとステップＳ７１１で抽出されたデバイスのシリアル番号を利用する。
【００６１】
ステップＳ７１３では、設定情報配信部４０６が、ステップＳ７１１で抽出されたデバイスに対して、ステップＳ７１０で設定された設定情報を配信する際のプロトコルを決定する。ここでは、一例としてデバイスリスト５１０の１行目および３行目のレコードに登録されているデバイスに設定情報を配信する場合について説明する。デバイスリスト５１０の１行目のレコードに登録されているデバイスは、対応プロトコル５１６の値が「ＳＮＭＰ」および「ＮＥＴＣＯＮＦ」である。一方、装置情報テーブル５００の属性名が「優先プロトコル」の値は「ＮＥＣＯＮＦ」である。よって、該１行目のレコードのデバイスに対して設定情報を配信するプロトコルは、「ＮＥＴＣＯＮＦ」に決定される。
【００６２】
一方、デバイスリスト５１０の３行目のレコードに登録されているデバイスは、対応プロトコル５１６の値が「ＳＮＭＰ」である。装置情報テーブル５００の属性名が「優先プロトコル」の値は「ＮＥＣＯＮＦ」であるが、このデバイスはＮＥＴＣＯＮＦに対応していないため、設定情報を配信するプロトコルは「ＳＮＭＰ」に決定される。
【００６３】
ステップＳ７１４では、設定情報配信部４０６が、デバイスリスト５１０からステップＳ７１１で抽出されたデバイスのＩＰアドレスを取得する。そして、ステップＳ７１３で決定されたプロトコルに従って、ＮＥＴＣＯＮＦ部４０６１またはＳＮＭＰ部４０６２が、デバイスに対してステップＳ７１２で抽出された設定情報を配信する。また、設定情報を配信したデバイスから配信結果を受信する。
【００６４】
例えば、ＮＥＴＣＯＮＦ部４０６１が設定情報を配信する場合は以下のような手順で配信処理が実行される。
１．  ＮＥＴＣＯＮＦ部４０６１は、設定情報管理部４０４から配信する設定情報を受け取る。
２．  ＮＥＴＣＯＮＦ部４０６１は、配信する設定情報をＮＥＴＣＯＮＦで送信可能なデータ形式、すなわち、ＸＭＬ形式に変換する。
３．  ＮＥＴＣＯＮＦ部４０６１は、配信対象とするデバイスに対して「能力交換」、「データストアのロック」、「データストアへの設定情報の配信」、「検証」、「設定情報の反映」、「データストアのロック解除」の各処理要求を発行する。また、これら処理要求に対する結果を受信する。これらの処理は、ＮＥＴＣＯＮＦで規定されている処理である。
【００６５】
また、例えば、ＳＮＭＰ部４０６２が設定情報を配信する場合は以下のような手順で配信処理が実行される。まず、ＳＮＭＰ部４０６２は、設定情報管理部４０４から配信する設定情報を受け取り、ＰＤＵ（Ｐｒｏｔｏｃｏｌ  Ｄａｔａ  Ｕｎｉｔ）を生成する。そして、ＳＮＭＰ部４０６２は、Ｓｅｔリクエストを発行する。なお、ＮＥＴＣＯＮＦ部４０６１およびＳＮＭＰ部４０６２は、デバイスへ設定情報の配信が実行されると、配信ＩＤを発行する。
【００６６】
ステップＳ７１５では、ＮＥＴＣＯＮＦ部４０６１またはＳＮＭＰ部４０６２が、ステップＳ７１４の配信処理が成功したか否かを判断する。具体的には、上述したステップＳ７１４における処理がすべて成功したか否かを判断する。ステップＳ７１４の配信処理が成功した場合は、ステップＳ７１８に進み、失敗した場合は、ステップＳ７１６に進む。
【００６７】
ステップＳ７１６では、設定情報配信部４０６が、ステップＳ７１４で使用したプロトコルとは異なるプロトコルで再送するか否かを判断する。再送するか否かの判断は、ステップＳ７１４の配信結果に応じて行われる。例えば、ステップＳ７１４において配信結果がエラーとなった場合に再送を行うように構成してもよい。また、配信結果が通信エラーを除くエラーとなった場合に再送を行うように構成してもよい。これは、通信エラーとなった場合、別のプロトコルによる再送を行ったとしても失敗する可能性が高いためである。
【００６８】
また、配信結果が、配信に使用されたプロトコルが非対応の設定項目に対する設定情報が配信されたことによるエラーであった場合に、再配信を行うように構成してもよい。例えば、ＮＥＴＣＯＮＦの場合は、ｕｎｋｎｏｗｎ−ａｔｔｒｉｂｕｔｅや、ｕｎｋｎｏｗｎ−ｅｌｅｍｅｎｔ等のエラーとなった場合である。これは、各プロトコルにおける設定情報のサポート状況が異なる場合があり、別のプロトコルによる再配信が有効であるためである。
【００６９】
なお、ステップＳ７１６で設定情報配信部４０６が再送を行うと判断するためには、条件として以下を満たす必要がある。すなわち、条件とは、装置情報テーブル５００の属性名が「使用するプロトコル」の値に複数のプロトコルが登録されており、かつ、属性名が「別プロトコルでの再送」の値が「ＯＮ」であることである。
【００７０】
上述した条件の下で、デバイスリスト５１０の対応プロトコル５１６に複数のプロトコルが登録されているデバイスが再送可能なデバイスとなる。例えば、図５（Ａ）に示した装置情報テーブル５００と、図５（Ｂ）に示したデバイスリスト５１０とを用いると、デバイスリスト５１０の１行目と２行目のレコードのデバイスが再送可能なデバイスである。ステップＳ７１６で設定情報配信部４０６が再送を行うと判断した場合は、ステップＳ７１７に進み、再送を行わないと判断した場合は、ステップＳ７１８に進む。
【００７１】
ステップＳ７１７では、設定情報配信部４０６が、ステップ前記Ｓ７１４で使用したプロトコルとは異なるプロトコルで設定情報を再送する。例えば、デバイスリスト５１０の１行目のレコードのデバイスに設定情報を配信する際に、ステップＳ７１４でＮＥＴＣＯＮＦを使用した場合、ステップＳ７１７では、ＳＮＭＰ部４０６２がＳＮＭＰで設定情報を配信する。ＳＮＭＰ部４０６２は、設定情報管理部４０４から設定情報を受け取り、ＰＤＵを生成する。そして、ＳＮＭＰ部４０６２は、Ｓｅｔリクエストを発行する。
【００７２】
なお、図８に示すフローチャートには記載していないが、設定情報配信部４０６が、再送を行う際に使用可能なプロトコルが複数存在する場合がありうる。この場合、設定情報配信部４０６は、未使用のプロトコルがなくなるか、または、配信が成功するまでプロトコルを切り替えながら再送を繰り返す。
【００７３】
ステップＳ７１８では、ＮＥＴＣＯＮＦ部４０６１またはＳＮＭＰ部４０６２が、ステップＳ７１４またはステップＳ７１７の配信結果を、ステップＳ７１４で発行された配信ＩＤと紐づけて結果テーブル５４０に記録する。なお、本実施形態では、結果テーブル５４０には、配信ＩＤ５４１、配信日時５４２、ＳＮ５４３、結果５４４、使用プロトコル５４５を格納しているが、これに限られるものではなく、例えば、設定情報ＩＤを記録するように構成してもよい。ステップＳ７１１において、ＲＡＭ２０３またはＨＤＤ２１２に複数のシリアル番号が格納されていた場合は、シリアル番号の数だけステップＳ７１１〜ステップＳ７１８の処理を繰り返す。
【００７４】
（第２実施形態）
次に本発明の第２実施形態について説明する。一般に、デバイスへの設定情報の配信は、一定間隔で繰り返される。例えば、セキュリティを高めるために一定間隔でネットワーク設定を変更したり、デバイスの配置替えに伴って各種設定を変更したりする場合などである。このような場合、第１実施形態で説明したような設定情報の配信処理を実行すると、デバイスによっては設定情報の配信が毎回失敗してしまうことがある。
【００７５】
具体的には、第１実施形態の図８のステップＳ７１４にて優先プロトコルで設定情報を配信した後、ステップＳ７１７にて異なる他のプロトコルで再送したデバイスに対して、再度配信処理を実行した場合である。本実施形態では、異なる他のプロトコルで設定情報を再送したデバイスに対して繰り返し設定情報を配信する場合であっても、エラーを発生させることなく設定情報を配信させることができる方法について説明する。以下、第１実施形態とは異なる部分を中心に説明する。
【００７６】
図９は、本実施形態における機種別対応テーブル８００の一例である。
なお、図９に示すテーブルの構成は一例であり、これに限定されるものではなく、異なる構成であってもよい。機種別対応テーブル８００は、カラム８０１〜８０４で構成される。カラム８０１にはデバイスの製品名が格納される。カラム８０１には、デバイスリスト５１０（図５（Ｂ））のカラム５１４に格納されるデイバスの製品名と同様の値が格納される。
【００７７】
カラム８０２にはカラム８０１の製品名を有するデバイスにおいて、カラム８０３の設定項目およびカラム８０４の対応状況を確認したプロトコルの名称が格納される。カラム８０３には設定情報管理テーブル５２０（図５（Ｃ））および個別情報管理テーブル５３０（図５（Ｄ））に含まれる設定項目の名称が格納される。カラム８０４にはカラム８０１の製品名およびカラム８０２のプロトコルに該当するデバイスにおいて、カラム８０３の設定項目が対応しているか否かが格納される。
【００７８】
なお、本実施形態では、対応している場合は「ＹＥＳ」、対応していない場合は「ＮＯ」、対応しているか否かが不明の場合は空欄が格納されるが、これに限定されるものではなく、どのような値を格納してもよい。また、本実施形態では、製品名毎に設定項目の対応状況を管理しているが、製品名とデバイスのファームウェアバージョンとの組み合わせ毎に設定項目の対応状況を管理してもよい。この場合、デバイスリスト５１０と機種別対応テーブル８００とにデバイスのファームウェアバージョンを格納するためのカラムを追加し、デバイスからファームウェアバージョンの情報を取得すればよい。
【００７９】
図１０は、本実施形態において管理装置１０１が設定情報を配信する際に実行する処理を説明するためのフローチャートである。
ユーザが、デバイス１０２〜１０４に設定情報を配信するために管理プログラム４００を起動すると、図１０に示す処理が実行される。ステップＳ９０１では、管理プログラム４００の各処理部が、前処理として、第１実施形態の図８に示したステップＳ７０１〜ステップＳ７１２までの処理を実行する。
【００８０】
ステップＳ９０２では、設定情報配信部４０６が、ステップＳ７１３（図８）と同様に、設定情報を配信する際のプロトコルを決定する。本実施形態では、装置情報テーブル５００（図５（Ａ））、デバイスリスト５１０（図５（Ｂ））に加えて、機種別対応テーブル８００（図９）を参照する。具体的には、設定情報配信部４０６が、以下の手順を実行する。すなわち、ステップＳ９０１にて決定した配信対象とするデバイスの製品名５１４とステップＳ９０２にて決定したプロトコルとの組み合わせが、機種別対応テーブル８００のカラム８０１とカラム８０２との組み合わせと一致するレコードを抽出する。そして、一致したレコードのカラム８０３およびカラム８０４の値を抽出する。
【００８１】
例えば、配信対象とするデバイスが「複合機Ａ」であり、プロトコルが「ＮＥＴＣＯＮＦ」である場合、設定情報配信部４０６は、機種別対応テーブル８００の１行目〜４行目までのレコードを抽出する。そして、設定情報配信部４０６は、ステップＳ９０１で決定した設定情報の中の各設定項目の対応状況を、カラム８０３およびカラム８０４の値を参照して確認する。このとき、ステップＳ９０１で決定した設定情報の中に対応状況が「ＮＯ」である設定項目が含まれていた場合、管理装置１０１がそのプロトコルを用いて配信対象とするデバイスに設定情報を配信したとしても配信結果は必ずエラーとなる。
【００８２】
したがって、設定情報配信部４０６は、設定情報の中の設定項目の対応状況に「ＮＯ」を含まないプロトコルが見つかるまで上述した手順を繰り返す。または、設定情報配信部４０６は、配信対象とするデバイスの対応プロトコルのすべてについて対応状況が「ＮＯ」である設定項目を含むか確認するまで、上述した手順を繰り返す。
【００８３】
ステップＳ９０３では、設定情報配信部４０６が、配信可能なプロトコルが存在するか否かを判断する。配信可能なプロトコルが存在する場合は、ステップＳ９０４に進み、存在しない場合は、ステップＳ９１０に進む。ステップＳ９０４は、図８に示したステップＳ７１４の処理と同様である。ステップＳ９０５では、ＮＥＴＣＯＮＦ部４０６１またはＳＮＭＰ部４０６２が、機種別対応テーブル８００の値を更新する。
【００８４】
具体的には、配信対象としたデバイスにおける製品名５１４の値と配信時に使用したプロトコルの値との組み合わせと一致する、カラム８０３およびカラム８０４の値を更新する。なお、ここでは、ＮＥＴＣＯＮＦ部４０６１またはＳＮＭＰ部４０６２がデバイスから受け取った配信結果の中に、個々の設定項目の対応状況が含まれていると仮定している。デバイスから受け取った配信結果の中に個々の設定項目の対応状況が含まれておらず、配信した設定情報を一纏めにした結果のみ受信した場合は、ステップＳ９０４の設定情報の配信が成功したときに限り機種別対応テーブル８００の値を更新する。そして、配信に失敗した場合は機種別対応テーブル８００の値を更新しない。
【００８５】
ステップＳ９０６〜ステップＳ９０８は、図８に示したステップＳ７１５〜ステップＳ７１７の処理と同様である。また、ステップＳ９０９は、ステップＳ９０５の処理と同様であり、ステップＳ９１０の処理は、図８に示したステップＳ７１８と同様である。このため、これらの処理の説明は省略する。
【００８６】
なお、本実施形態の機種別対応テーブル８００を用いることにより、管理装置１０１は、以下のような場合についても柔軟に対応できる。例えば、ＮＥＴＣＯＮＦに対応したデバイスに対してＮＥＴＣＯＮＦを用いた設定情報を配信しても、エラーとなる場合がある。すなわち、ＮＥＴＣＯＮＦがサポートされていない設定項目が存在するデバイスでは、当該設定項目に対する設定情報が配信された場合に、配信結果がエラーとなってしまう。
【００８７】
これに対して、機種別対応テーブル８００は、デバイスの製品名および設定項目ごとに各プロトコルの対応状況が保存されている。このため、配信対象のデバイスと同じ製品名のデバイスにおいて、配信される設定情報がサポートされている設定項目に対するものであるか否かに応じて、配信するプロトコルを変更することが可能となる。
【００８８】
（第３実施形態）
次に本発明の第３実施形態について説明する。管理装置１０１が複数のデバイスに設定情報を配信する場合、設定情報の種類によっては、設定情報の反映を全デバイスで一斉に行う必要がある。例えば、ＩＰアドレスの入れ替えを行う場合が考えられる。
【００８９】
ＮＥＴＣＯＮＦのようにトランザクションの概念を持つプロトコルに対応しているデバイスであれば、上述したような一斉に設定情報を反映する処理は可能である。しかし、ＳＮＭＰのようにトランザクションの概念を持たないプロトコルにのみ対応しているデバイスには、一斉に設定情報を反映する処理を行うことができない。本実施形態では、トランザクションの概念を持つプロトコルに対応したデバイスと、そうでないデバイスとが混在する環境において、擬似的に一斉に設定情報を反映する処理を実現する方法について説明する。以下、第１実施形態とは異なる部分を中心に説明する。
【００９０】
図１１は、本実施形態におけるバックアップテーブル１０００の一例である。
バックアップテーブル１０００は、デバイスに設定情報を配信する前に管理装置１０１が取得した当該デバイスの現在の設定情報が格納される。なお、図１１に示すテーブルの構成は一例であり、これに限定されるものではなく、異なる構成であってもよい。バックアップテーブル１０００は、カラム１００１〜１００５で構成される。
【００９１】
カラム１００１にはカラム１００２以降の設定情報を取得したデバイスのシリアル番号が格納される。カラム１００２〜１００５にはデバイスの設定情報として「デバイス名」、「スリープ移行時間」、「ＩＰアドレス」、および「設置場所」が格納される。なお、「デバイス名」、「スリープ移行時間」、「ＩＰアドレス」、および「設置場所」は、設定情報として格納される情報の一例であり、これに限定されるものではなく、その他の情報を格納してもよい。
【００９２】
図１２は、管理装置１０１が管理プログラム４００のＵＩ制御部４０１により提供するＵＩ画面の一例である。
図１２（Ａ）は、第１の指定画面１１００の一例である。ＵＩ制御部４０１は、後述するフローチャートにおいて、設定情報の配信対象とするデバイスが複数台存在し、かつ、配信に使用されるプロトコルがＮＥＴＣＯＮＦのみの場合に第１の指定画面１１００を表示する。
【００９３】
選択領域１１０１では、配信する設定情報を全デバイスに一斉に反映するか否かを選択する。ＯＫボタン１１０２が押下されると、設定情報配信部４０６は、選択領域１１０１の選択状態をＲＡＭ２０３またはＨＤＤ２１２に一時的に格納する。キャンセルボタン１１０３が押下されると、管理プログラム４００は、第１の指定画面１１００の選択結果を破棄し、第１の指定画面１１００を終了する。このとき、設定情報配信部４０６は、選択領域１１０１の選択状態が非選択状態であるとして当該選択状態をＲＡＭ２０３またはＨＤＤ２１２に一時的に格納する。
【００９４】
図１２（Ｂ）は、第２の指定画面１１２０の一例である。ＵＩ制御部４０１は、後述するフローチャートにおいて、設定情報の配信対象とするデバイスが複数台存在し、かつ、配信に使用されるプロトコルとしてＮＥＴＣＯＮＦおよびＳＮＭＰが混在する場合に第２の指定画面１１２０を表示する。選択領域１１２１は、第１の指定画面１１００の選択領域１１０１と同様である。コメント１１２２には、設定情報を一斉に反映した場合の注意点として、配信対対象とする複数台のデバイスへの配信のタイミングが一致しないことを示す情報が表示される。
【００９５】
ＯＫボタン１１２３が押下されると、設定情報配信部４０６は、選択領域１１２１の選択状態を配信ＩＤと共にＲＡＭ２０３またはＨＤＤ２１２に一時的に格納する。キャンセルボタン１１２４が押下されると、管理プログラム４００は、第２の指定画面１１２０の選択結果を破棄し、第２の指定画面１１２０を終了する。このとき、設定情報配信部４０６は、選択領域１１２１の選択状態が非選択状態であるとして当該選択状態を配信ＩＤと共にＲＡＭ２０３またはＨＤＤ２１２に一時的に格納する。
【００９６】
図１３及び図１４は、本実施形態において管理装置１０１が設定情報を配信する際に実行する処理を説明するためのフローチャートである。
ユーザが、デバイス１０２〜１０４に設定情報を配信するために管理プログラム４００を起動すると、図１３および１４に示す処理が実行される。ステップＳ１２０１では、管理プログラム４００の各処理部が、前処理として、第１実施形態の図８に示したステップＳ７０１〜ステップＳ７１３までの処理を実行する。
【００９７】
ステップＳ１２０２では、設定情報配信部４０６が、ステップＳ１２０１にて決定した配信対象とするデバイスはＮＥＴＣＯＮＦを使用するデバイス（ＮＥＴＣＯＮＦ使用デバイス）のみであるか否かを判断する。ＮＥＴＣＯＮＦ使用デバイスのみであると判断された場合は、ステップＳ１２０３に進み、ＮＥＴＣＯＮＦ使用デバイスのみではないと判断された場合は、ステップＳ１２０４に進む。ステップＳ１２０３では、ＵＩ制御部４０１が、第１の指定画面１１００（図１２（Ａ））を表示し、選択領域１１０１に対するユーザの入力を受け付ける。そして、ＵＩ制御部４０１が、ユーザによる入力結果を設定情報配信部４０６に送信する。
【００９８】
ステップＳ１２０４では、設定情報配信部４０６が、ステップＳ１２０１にて決定された配信対象とするデバイスはＳＮＭＰを使用するデバイス（ＳＮＭＰ使用デバイス）のみであるか否かを判断する。ＳＮＭＰ使用デバイスのみであると判断された場合は、ステップＳ１２１５（図１４）に進み、ＳＮＭＰ使用デバイスのみではないと判断された場合は、ステップＳ１２０５に進む。
【００９９】
ステップＳ１２０５では、ＵＩ制御部４０１が、第２の指定画面１１２０（図１２（Ｂ））を表示し、選択領域１１２１に対するユーザの入力を受け付ける。そして、ＵＩ制御部４０１が、ユーザによる入力結果を設定情報配信部４０６に送信する。ステップＳ１２０６では、設定情報配信部４０６が、ステップＳ１２０３またはステップＳ１２０５においてユーザが設定情報を一斉に反映する選択を行ったか否かを判断する。一斉に反映する選択が行われた場合は、図１４のステップＳ１２０７に進み、一斉に反映する選択が行われていない場合は、図１４のステップＳ１２１５に進む。
【０１００】
ステップＳ１２０７では、ＮＥＴＣＯＮＦ部４０６１が、ＮＥＴＣＯＮＦ使用デバイスに対して、図８に示したステップＳ７１４と同様の方法で、「能力交換」、「データストアのロック」、「データストアへの設定情報の配信」、「検証」までを実行する。ステップＳ１２０８では、設定情報配信部４０６が、配信対象とするデバイスにＳＮＭＰ使用デバイスが含まれるか否かを判断する。ＳＮＭＰ使用デバイスが含まれる場合は、ステップＳ１２０９に進み、ＳＮＭＰ使用デバイスが含まれない場合は、ステップＳ１２１２に進む。
【０１０１】
ステップＳ１２０９では、ＳＮＭＰ部４０６２が、ＳＮＭＰ使用デバイスの現在の設定情報をバックアップとして取得する。具体的には、ＳＮＭＰ部４０６２が、ＳＮＭＰのＧｅｔリクエストおよびＧｅｔ Ｎｅｘｔリクエストを発行する。取得対象の設定項目は、ステップＳ１２０１にて設定情報の配信対象となった設定項目である。そして、設定情報管理部４０４が、取得された現在の設定情報をバックアップテーブル１０００に格納する。
【０１０２】
ステップＳ１２１０では、ＳＮＭＰ部４０６２が、ＳＮＭＰ使用デバイスに対して、ステップＳ１２０１にて決定された設定情報を配信し、当該ＳＮＭＰデバイスから配信結果を受信する。ＳＮＭＰ使用デバイスに対する設定情報の配信処理は、ステップＳ７１４の処理と同様である。ステップＳ１２１１では、ＳＮＭＰ部４０６２が、すべてのＳＮＭＰ使用デバイスへの設定情報の配信が成功したか否かを判断する。すべてのＳＮＭＰ使用デバイスへの設定情報の配信が成功した場合は、ステップＳ１２１２に進み、いずれかのＳＮＭＰ使用デバイスへの設定情報の配信が成功しなかった場合は、ステップＳ１２１３に進む。
【０１０３】
ステップＳ１２１２では、ＮＥＴＣＯＮＦ部４０６１が、すべてのＮＥＴＣＯＮＦ使用デバイスに対して「設定情報の反映」、「データストアのロック解除」の各処理要求を発行する。ステップＳ１２１３では、ＳＮＭＰ部４０６２が、すべてのＳＮＭＰ使用デバイスの設定情報を、ステップＳ１２０９でバックアップとして取得した設定情報に書き戻す。具体的には、設定情報管理部４０４は、バックアップテーブル１０００のカラム１００１の値（ＳＮ）を参照して各デバイスの設定情報を抽出する。そして、ＳＮＭＰ部４０６２は、設定情報管理部４０４から設定情報を受け取り、ＰＤＵを生成する。さらに、ＳＮＭＰ部４０６２は、Ｓｅｔリクエストを発行する。
【０１０４】
ステップＳ１２１４では、ＮＥＴＣＯＮＦ部４０６１が、すべてのＮＥＴＣＯＮＦ使用デバイスに対してステップＳ１２０７で実行した「検証」までの処理をキャンセルする。具体的には、ＮＥＴＣＯＮＦ部４０６１は、すべてのＮＥＴＣＯＮＦ使用デバイスに対してＮＥＴＣＯＮＦのキャンセルコマンド（ｃａｎｃｅｌ−ｃｏｍｍｉｔコマンド）を発行する。ステップＳ１２１５〜ステップＳ１２１９までの処理は、図８に示したステップＳ７１４〜ステップＳ７１８までの処理と同様であるため、その説明を省略する。
【０１０５】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【０１０６】
以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。
【図１】
2018041146.tif 000003
【図２】
2018041146.tif 000004
【図３】
2018041146.tif 000005
【図４】
2018041146.tif 000006
【図５】
2018041146.tif 000007
【図６】
2018041146.tif 000008
【図７】
2018041146.tif 000009
【図８】
2018041146.tif 000010
【図９】
2018041146.tif 000011
【図１０】
2018041146.tif 000012
【図１１】
2018041146.tif 000013
【図１２】
2018041146.tif 000014
【図１３】
2018041146.tif 000015
【図１４】
2018041146.tif 000016