(57)【特許請求の範囲】
【請求項１】
ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）を用いて、第１情報と前記第１情報とは種類が異なる第２情報とを含む複数の種類の情報を要求するための探索パケットを送信し、前記探索パケットを受信したデバイスから送信される返信パケットに含まれる前記複数の種類の情報を取得する第１取得手段と、
前記ＳＮＭＰを用いて、前記第１取得手段により取得される前記複数の種類の情報とは異なる種類の第３情報を要求するための要求パケットを、前記探索パケットに基づく返信パケットを送信した前記デバイスに対して送信し、前記要求パケットを受信した前記デバイスから送信される返信パケットに含まれる前記第３情報を取得する第２取得手段と、
前記第１取得手段及び前記第２取得手段により取得された情報を格納手段に格納する制御手段と、
を備え、
前記第２取得手段により送信される前記要求パケットは、単一の種類の情報を要求するためのパケットであり、前記第３情報としてＢｏｎｊｏｕｒ名を要求するためのパケットであることを特徴とする情報処理装置。
【請求項２】
デバイス探索処理において、前記第１取得手段は前記探索パケットの送信と前記返信パケットの受信を行うことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１取得手段が受信する前記返信パケットに基づき、前記情報処理装置と通信可能に接続されているデバイスを特定する特定手段をさらに備えることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記特定手段は、前記第１取得手段が取得する情報に基づき、前記接続されているデバイスを特定することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記デバイスはＢｏｎｊｏｕｒ機能を備え、前記デバイスにおいて前記Ｂｏｎｊｏｕｒ機能がオフに設定されている場合、前記デバイスから前記Ｂｏｎｊｏｕｒ名を取得できないことを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記第２取得手段は、前記探索パケットに基づく返信パケットを送信した前記デバイスに対して、前記要求パケットをユニキャストで送信することを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記第２取得手段は、前記第３情報を含む返信パケットを受信した後に、前記複数の種類の情報及び前記第３情報のいずれとも異なる種類の情報である第４情報を要求するための要求パケットを送信することを特徴とする請求項１乃至６のいずれか一項に記載の情報処理装置。
【請求項８】
前記制御手段は、前記格納手段に、前記第１取得手段により取得した前記複数の種類の情報と、前記第２取得手段により取得した前記第３情報とを対応付けて格納することを特徴とする請求項１乃至７のいずれか一項に記載の情報処理装置。
【請求項９】
前記第２取得手段は、前記探索パケットに基づく返信パケットを所定の制限時間に返した前記デバイスに対して、前記要求パケットを送信することを特徴とする請求項１乃至８のいずれか一項に記載の情報処理装置。
【請求項１０】
前記第１取得手段は、前記探索パケットを、ブロードキャストで送信することを特徴とする請求項１乃至９のいずれか一項に記載の情報処理装置。
【請求項１１】
前記第１取得手段は、前記探索パケットを、マルチキャストで送信することを特徴とする請求項１乃至９のいずれか一項に記載の情報処理装置。
【請求項１２】
前記ＳＮＭＰは、ＳＮＭＰｖｅｒ．１のプロトコルであることを特徴とする請求項１乃至４のいずれか一項に記載の情報処理装置。
【請求項１３】
前記第１情報及び前記第２情報は、前記デバイスの設定又は機能に依存せずに取得可能な情報であることを特徴とする請求項１乃至１２のいずれか一項に記載の情報処理装置。
【請求項１４】
前記第１情報は、ＭＡＣアドレス、シリアルナンバー、及び機種名のうちのいずれかであることを特徴とする請求項１乃至１３のいずれか一項に記載の情報処理装置。
【請求項１５】
前記第２情報は、ＭＡＣアドレス、シリアルナンバー、及び機種名のうちのいずれかであることを特徴とする請求項１乃至１４のいずれか一項に記載の情報処理装置。
【請求項１６】
前記デバイスとしてプリンタ機能を有するデバイスの探索を実行することを特徴とする請求項１乃至１５のいずれか一項に記載の情報処理装置。
【請求項１７】
前記デバイスとしてスキャン機能を有するデバイスの探索を実行することを特徴とする請求項１乃至１６のいずれか１項に記載の情報処理装置。
【請求項１８】
ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）を用いて、第１情報と前記第１情報とは種類が異なる第２情報とを含む複数の種類の情報を要求するための探索パケットを送信し、前記探索パケットを受信したデバイスから送信される返信パケットに含まれる前記複数の種類の情報を取得する第１取得工程と、
前記ＳＮＭＰを用いて、前記第１取得工程により取得される前記複数の種類の情報とは異なる種類の第３情報を要求するための要求パケットを、前記探索パケットに基づく返信パケットを送信した前記デバイスに対して送信し、前記要求パケットを受信した前記デバイスから送信される返信パケットに含まれる前記第３情報を取得する第２取得工程と、
前記第１取得工程及び前記第２取得工程により取得した情報を格納手段に格納する工程と、
を有し、
前記第２取得工程により送信される前記要求パケットは、単一の種類の情報を要求するためのパケットであり、前記第３情報としてＢｏｎｊｏｕｒ名を要求するためのパケットであることを特徴とする情報処理方法。
【請求項１９】
情報処理装置のコンピュータを、
ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）を用いて、第１情報と前記第１情報とは種類が異なる第２情報とを含む複数の種類の情報を要求するための探索パケットを送信し、前記探索パケットを受信したデバイスから送信される返信パケットに含まれる前記複数の種類の情報を取得する第１取得手段と、
前記ＳＮＭＰを用いて、前記第１取得手段により取得される前記複数の種類の情報とは異なる種類の第３情報を要求するための要求パケットを、前記探索パケットに基づく返信パケットを送信した前記デバイスに対して送信し、前記要求パケットを受信した前記デバイスから送信される返信パケットに含まれる前記第３情報を取得する第２取得手段と、
前記第１取得手段及び前記第２取得手段により取得された情報を格納手段に格納する制御手段と、
として機能させるためのプログラムであって、
前記第２取得手段により送信される前記要求パケットは、単一の種類の情報を要求するためのパケットであり、前記第３情報としてＢｏｎｊｏｕｒ名を要求するためのパケットであることを特徴とするプログラム。
【請求項２０】
デバイス探索処理において、前記第１取得手段は前記探索パケットの送信と前記返信パケットの受信を行うことを特徴とする請求項１９に記載のプログラム。
【請求項２１】
前記コンピュータをさらに、
前記第１取得手段が受信する前記返信パケットに基づき、前記情報処理装置と通信可能に接続されているデバイスを特定する特定手段として機能させることを特徴とする請求項１９又は２０に記載のプログラム。
【請求項２２】
前記特定手段は、前記第１取得手段が取得する情報に基づき、前記接続されているデバイスを特定することを特徴とする請求項２１に記載のプログラム。
【請求項２３】
前記デバイスはＢｏｎｊｏｕｒ機能を備え、前記デバイスにおいて前記Ｂｏｎｊｏｕｒ機能がオフに設定されている場合、前記デバイスから前記Ｂｏｎｊｏｕｒ名を取得できないことを特徴とする請求項１９乃至２２のいずれか１項に記載のプログラム。
【請求項２４】
前記第２取得手段は、前記探索パケットに基づく返信パケットを送信した前記デバイスに対して、前記要求パケットをユニキャストで送信することを特徴とする請求項１９乃至２３のいずれか一項に記載のプログラム。
【請求項２５】
前記第２取得手段は、前記第３情報を含む返信パケットを受信した後に、前記複数の種類の情報及び前記第３情報のいずれとも異なる種類の情報である第４情報を要求するための要求パケットを送信することを特徴とする請求項１９乃至２４のいずれか一項に記載のプログラム。
【請求項２６】
前記制御手段は、前記格納手段に、前記第１取得手段により取得した前記複数の種類の情報と、前記第２取得手段により取得した前記第３情報とを対応付けて格納することを特徴とする請求項１９乃至２５のいずれか一項に記載のプログラム。
【請求項２７】
前記第２取得手段は、前記探索パケットに基づく返信パケットを所定の制限時間に返した前記デバイスに対して、前記要求パケットを送信することを特徴とする請求項１９乃至２６のいずれか一項に記載のプログラム。
【請求項２８】
前記第１取得手段は、前記探索パケットを、ブロードキャストで送信することを特徴とする請求項１９乃至２７のいずれか一項に記載のプログラム。
【請求項２９】
前記第１取得手段は、前記探索パケットを、マルチキャストで送信することを特徴とする請求項１９乃至２７のいずれか一項に記載のプログラム。
【請求項３０】
前記ＳＮＭＰは、ＳＮＭＰｖｅｒ．１のプロトコルであることを特徴とする請求項１９乃至２９のいずれか一項に記載のプログラム。
【請求項３１】
前記第１情報及び前記第２情報は、前記デバイスの設定又は機能に依存せずに取得可能な情報であることを特徴とする請求項１９乃至３０のいずれか一項に記載のプログラム。
【請求項３２】
前記第１情報は、ＭＡＣアドレス、シリアルナンバー、及び機種名のうちのいずれかであることを特徴とする請求項１９乃至３１のいずれか一項に記載のプログラム。
【請求項３３】
前記第２情報は、ＭＡＣアドレス、シリアルナンバー、及び機種名のうちのいずれかであることを特徴とする請求項１９乃至３２のいずれか一項に記載のプログラム。
【請求項３４】
前記デバイスとしてプリンタ機能を有するデバイスの探索を実行することを特徴とする請求項１９乃至３３のいずれか一項に記載のプログラム。
【請求項３５】
前記デバイスとしてスキャン機能を有するデバイスの探索を実行することを特徴とする請求項１９乃至３４のいずれか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばSNMPプロトコル等を用いたネットワーク管理ソフトウェアによりネットワークデバイスを制御する情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、ネットワーク上の機器等を管理するため、SNMP（Simple Network Management Protocol）が考案され、機器等を管理する際の通信プロトコルとして利用されている。SNMPプロトコルを用いたネットワーク管理システムでは、管理対象ノードと呼ばれる管理対象となるネットワーク機器に対して、管理情報の取得、設定の変更を行うことができる。また、SNMPプロトコルを用いた通信では、１つのSNMPメッセージ内に、複数の属性を指定することで、複数属性情報を一括で取得することが可能である。複数属性情報を一括で取得する際に、取得を試みている情報のうち一つでも取得エラーがあった場合、SNMPリクエスト自体がエラーとなってしまう。そこで、取得エラーが発生している属性部分を排除したSNMPリクエストメッセージを作成し、再度リクエストを行うことで、情報の取得エラーを防ぐ方法が提案されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特願平7-97247号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、SNMPプロトコルを用いて、複数の管理対象ノードを対象としたデバイスの探索等の通信を行い、情報取得時にエラーが発生したデバイスに対して再送処理を行う場合、通信トラフィックが増大してしまう可能性がある。また、取得しようとする複数の属性の中に取得エラーとなる複数の属性が含まれている場合は、エラー項目数に比例して通信トラフィックが大きくなってしまうという課題がある。
【０００５】
本発明は上記従来の技術の有する課題に鑑みなされたものである。本発明では、通信トラフィックへ与える影響を軽減した上で、デバイスに関する複数の情報の取得を可能とすることを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために本発明の一側面によれば、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）を用いて、第１情報と前記第１情報とは種類が異なる第２情報とを含む複数の種類の情報を要求するための探索パケットを送信し、前記探索パケットを受信したデバイスから送信される返信パケットに含まれる前記複数の種類の情報を取得する第１取得手段と、
前記ＳＮＭＰを用いて、前記第１取得手段により取得される前記複数の種類の情報とは異なる種類の第３情報を要求するための要求パケットを、前記探索パケットに基づく返信パケットを送信した前記デバイスに対して送信し、前記要求パケットを受信した前記デバイスから送信される返信パケットに含まれる前記第３情報を取得する第２取得手段と、
前記第１取得手段及び前記第２取得手段により取得された情報を格納手段に格納する制御手段と、
を備え、
前記第２取得手段により送信される前記要求パケットは、単一の種類の情報を要求するためのパケットであり、前記第３情報としてＢｏｎｊｏｕｒ名を要求するためのパケットであることを特徴とする情報処理装置が提供される。
【発明の効果】
【０００７】
本発明によれば、通信トラフィックを抑えつつ、デバイスに関する複数の情報の取得を行うことができる。
【図面の簡単な説明】
【０００８】
【図１】実施形態１に係る情報収集装置とデバイスの構成を表す図である。
【図２】実施形態１に係るホストコンピュータのソフトウェア構成を示す図である。
【図３】実施形態１に係るホストコンピュータが実装する処理を示すフローチャートである。
【図４】検索結果リスト例を示す図である。
【発明を実施するための形態】
【０００９】
本実施形態に係る発明では、SNMPとくにSNMP ver.１プロトコルでデバイスの探索を行う際に、取得する情報を一律に扱うのではなく、デバイスの設定やデバイスの有する機能に依存せず取得可能と想定される情報（デバイス非依存情報）と、デバイスの設定やデバイスの有する機能に依存して取得可否が変わる可能性がある情報（デバイス依存情報）とに分けて情報取得を行う。情報の種類に応じて情報取得を分けることで、取得情報に対して一律にエラー処理等を行う必要がなく、通信トラフィックへ与える影響を軽減した上で、デバイス探索および、複数のデバイス情報の取得（あるいは収集）を可能とする。
【００１０】
＜実施形態１＞
［システム構成］
図１は、本発明に係る情報処理装置の一例であるホストコンピュータ１（以下、ホスト）と、複数台のプリンタを含むデバイス管理システムの概略を示したブロック図である。本実施形態では、管理対象の装置をプリンタとし、そのプリンタをホストから探索する処理を例として示す。なお、プリンタは、単機能プリンタとは限らず、例えばプリンタ機能をスキャナ機能などと併せ持つ複合機能プリンタであってもよい。また、管理対象の装置は、プリンタに限定されるものではなく、他の情報処理装置であってもよい。
【００１１】
図１に示されているようにホスト１とプリンタ２とは所定の双方向インタフェース３を介して互いに接続される。なお、ホスト１としては、例えば、パーソナルコンピュータ（ＰＣ）が挙げられる。ホスト１は、接続されたデバイスであるプリンタ２からデバイス情報を取得する情報収集装置として機能する。ホスト１は、CPU101などを含むメインボード109とキーボード110とLCDなどのディスプレイ111とハードディスク(HDD)などの記憶装置112とを有する。メインボード109はさらに、RAM102、ROM103、キーボードコントローラ（KBC）106、キーボード110やポインティングデバイス（不図示）からの入力を制御する。キーボードコントローラ110を操作部または入力部とも呼ぶ。ディスプレイコントローラ(DISPC)107は、ディスプレイ111の表示を制御する。RAM102は、CPU101のメインメモリあるいはワークエリアとして機能する。ROM103は、ブートプログラム等を記憶する。
【００１２】
ディスクコントローラ（DKC）108は、ハードディスク等の記憶装置112とのアクセスを制御する。記憶装置112は、本実施形態に従う各機能を実行するアップデートプログラム、オペレーティングシステム、各種のアプリケーション等を記憶する。またSNMPやそのベースとなるTCP/IPなどを含むプロトコルスタックも記憶装置１１２にプログラムファイルとして記憶されている。
【００１３】
インタフェースコントローラ（I/F C）104は、ＬＡＮ等の通信で実現される双方向インタフェース3を介してプリンタ2に接続され、プリンタ2とのデータ及びコマンドの通信処理を制御する。
【００１４】
プリンタ2は、コントローラ121とプリンタエンジン125と操作パネル124と不揮発性記憶装置138とを有し、双方向インタフェース3を介して、ホスト1と接続されている。不揮発性記憶装置138は、ハードディスク（HDD）122またはEEPROM123を含む。不揮発性記憶装置を不揮発性メモリと呼ぶこともある。
【００１５】
コントローラ121は、CPU114、ROM115、RAM116、インタフェースコントローラ（I/F C）113、ディスクコントローラ（DKC）118、パネルインタフェース（I/F P）119、エンジンインタフェース（I/F E）120を含む。
【００１６】
CPU114はシステムバス117に接続される上記各構成要素を総括的に制御し、各種プログラムを実行する。ROM115は、ホスト1から印刷用画像データとコマンドを受信し、プリンタエンジン125を制御して最適な印刷を実現させるプログラムや各種データを記憶する。RAM116は、各種データや各種プログラムを一時的に記憶するワークエリアとして用いられる。SNMPやそのベースとなるTCP/IPなどを含むプロトコルもROM１１５に記憶されている。また、プリンタ2のデバイス情報等を含むMIB（管理情報ベース）は、ROM115やHDD122などの記憶ユニットのいずれかに格納されている。
【００１７】
インタフェースコントローラ（I/F C）113は、双方向インタフェース3を介してホスト1に接続され、ホスト1とのデータとコマンドの通信処理を制御する。ハードディスク（HDD）122は、ホスト1からのデータ及びそのデータに関する付属情報など大容量のデータを記憶する。EEPROM123は、記録動作時に使用する記録装置独自の情報などを記憶する。ディスクコントローラ（DKC）118は、不揮発性記憶装置であるハードディスク122やEEPROM123とのアクセスを制御する。パネルインタフェース（I/F  P）119は、操作パネル124への表示や操作パネル124からの入力を制御する。エンジンインタフェース（I/F E）120は、ハードウェアを直接制御して最適な記録を実現させるプリンタエンジン125を制御する。
【００１８】
プリンタエンジン125はインクジェット記録方法を用いたプリンタエンジンや、電子写真方式に従うプリンタエンジンなどを用いることができる。
【００１９】
［デバイス管理システム］
図２は、本実施形態のデバイス管理システムの検索機能の構成を示したブロック図である。ホストコンピュータの機能について説明する。アプリケーション２０１は、ホスト１で実行されるプログラムであり、双方向インターフェース３で接続されたデバイスの探索処理を実行する。
【００２０】
検索処理部２０２は、デバイスの検索処理を担う処理部であり、一括情報取得部２０３と個別情報取得部２０４と検索結果保存部２０５とを含む。一括情報取得部２０３は、複数のデバイスに対して、SNMPの探索用パケットを送信する送信処理と、各デバイスからの返信パケットを受信する処理を行う。複数デバイスに対する送信処理を、本実施形態ではブロードキャスト通信として記載するが、マルチキャストでもよい。
【００２１】
個別情報取得部２０４は、各デバイスに対してユニキャストで個別情報取得用パケットを送信する送信処理と、デバイスからの返信パケットを受信する処理を行う。
【００２２】
検索結果保存部は、一括情報取得部（あるいは一括取得部）２０３および個別情報取得部（あるいは個別取得部）２０４の取得エラー状態と、取得結果情報とを元に、検索結果リスト206に情報を保存する処理を行う。検索結果リスト206は、検索処理部２０２で検索した検索結果情報を検索結果リストとして保持するデータベースである。本実施形態の検索結果リスト206に保存する検索結果リストの詳細は、図４において説明する。
【００２３】
［取得処理手順］
図３は、本実施形態に従う各機能を実行する検索プログラム（ホスト１の記憶装置１１２に格納）の処理フローを示したフロー図である。図３の手順は、ＲＡＭ１０２にロードされた検索プログラムをＣＰＵ１０１により実行することで実現される。
【００２４】
アプリケーション２０１の検索処理部２０２が実行されると、初めに、ホスト１から双方向インタフェース３に対してブロードキャストで探索用SNMPパケットを送信する（３０１）。探索用パケットはデバイスの設定やデバイスの有する機能に依存せず受信可能な情報（これを共通情報或いはデバイス非依存情報と呼ぶ）を要求するため、例えばGetRequestを用いる。本実施形態では、図４のMacアドレス401、SerialNumber402、機種名403等のデバイスを識別するための情報が探索用パケットのブロードキャストで取得するデバイス非依存情報とする。このように、複数の種類のデバイス非依存情報を一括して要求する。このとき、複数の種類のデバイス非依存情報を要求すべく複数オブジェクト指定パケットを用いる。探索用パケットを受信したデバイスは、それに応じてResponseパケットを応答する。
【００２５】
探索用パケット送信後、あらかじめ定められた制限時間に達するまでの間、以降の処理を継続する（３０２）。すなわち、宛先デバイスからの返信パケット（Response）を待機し、返信パケットを受信するとステップ３０４〜ステップ３１１の処理を実行し、終了したなら、ステップ３０３で次の返信パケットの受信を待機する。この時点で受信済みの返信パケットがあれば、そのパケットを対象として直ちにステップ３０４以降の処理を行えばよい。制限時間内に応答を返したデバイスが、探索により発見（特定）されたデバイスとなる。
【００２６】
ステップ３０１で探索用SNMPパケットを送信した後、各デバイスからの返信パケットを受信する受信処理を行う（３０３）。デバイスからのパケットを受信した場合、受信パケットのエラーコードがnoError（エラーなし）かを判別する（３０４）。noErrorでない場合は、取得結果リスト２０６には追加せず、そのデバイスからの返信パケットに関する処理を終了して次のデバイス（本実施形態ではプリンタ）からの受信処理を継続する。
【００２７】
探索パケットに対するプリンタからの返信がnoErrorの場合には、取得した情報を取得結果リストに追加し、変数ｉを０で初期化してステップ306から311の処理を継続する。受信した応答には、要求に応じて複数の種類のデバイス情報を含む場合がある。取得した情報は例えば、返信パケットの送信元デバイスのデバイスＩＤと関連付けて、情報の種類別に検索結果リスト２０６に登録される。
【００２８】
ステップ306から311の処理では、デバイスの設定やデバイスの有する機能に依存して受信可否が変わる情報を、属性毎に取得パケットをユニキャストで送信し、情報取得を行う。デバイスの設定やデバイスの有する機能に依存して受信可否が変わる情報とは、たとえばデバイスがその構成や設定に応じて有する情報などであり、個別情報或いはデバイス依存情報とも呼ぶ。本実施形態では図４のBonjour名404、DeviceID405が個別情報取得時に取得するデバイス依存情報となる。Bonjour名404は、Bonjour機能（IPアドレスとホスト名の割り当てやサービスの自動探索等の機能）が、プリンタ側で機能OFF状態になっている場合には、個別情報の取得要求に対する応答ができず、エラーとなる可能性がある。DeviceIDは、デバイスの有する機能によっては、取得不可となる可能性がある。例えば、Scan機能に関するDeviceID情報はScan機能を有するデバイスでは取得可能であるが、それ以外のデバイスでは取得できず、取得要求は失敗する。このように、デバイス依存情報は、取得できないことがある。
【００２９】
情報取得を行う対象の属性分、ステップ307から310の処理を繰り返し、全ての属性についてステップ307〜310が終了したなら当該デバイスについての処理を終了する（306）。個別情報取得では、単一の情報取得のための要求パケットを、属性毎にユニキャストで送信する（307）。このステップにおける要求パケットの宛先（送信先）は、ステップ３０３で受信した返信パケットの送信元のデバイスである。このとき、単一の種類のデバイス情報を要求すべく単一オブジェクト指定パケットを用いる。本実施形態では、Bonjour名と、DeviceIDとをそれぞれ独立した要求パケット（すなわち個別情報取得パケット）で要求する。その後、個別情報取得パケットそれぞれに対するデバイスからの返信パケットを受信する（308）。返信パケットの受信後、受信した返信パケットの解析を行い、noError（エラーなし）かどうかを判定する(309)。受信パケットがnoErrorでない場合は、次の属性の取得に進む（３１１）。受信パケットがnoErrorの場合には、取得した情報を取得結果リスト２０６に追加し（310）、次の属性の取得に進む（３１１）。このとき、ステップ308で取得（受信）した情報は、ステップ303で取得（受信）した情報に対応するものであるため、ステップ303で取得（受信）した情報と対応付けて保存する。
【００３０】
図４は、取得結果リスト２０６に格納した検索結果情報の一例を示す図である。デバイス毎のMacアドレス４０１、SerialNumber４０２、機種名４０３は、本実施形態ではステップ３０３の処理にて取得し、ステップ３０５で登録する情報であり、デバイスの設定に依存せず取得可能な情報である。Bonjour名404、DeviceID４０５は、本実施形態のステップ３０８の処理にて取得し、ステップ３１０で登録する情報であり、デバイスの設定あるいはデバイスの有する機能によっては取得可否が変わる情報である。図４において、Macアドレス"000085AABBCC"を持つプリンタは、すべての情報が取得できているデバイスの一例である。Macアドレス"000085DDEEFF"を持つプリンタは、個別情報取得パケットに関しては、Bonjour名404及びDeviceID４０５の両方とも取得エラーとなったデバイスの一例である。なお、個別情報は情報の種類ごとに独立して要求しているので、このいずれか一方のみ取得に成功している場合もあり得る。このように、本実施形態では、個別情報が取得できない場合も、デバイス非依存情報を取得して、デバイス探索の結果を得ることができる。
【００３１】
また、本実施形態では、デバイス非依存情報とデバイス依存情報を予め決めておくものとしたが、これに限定されるものではない。たとえば、デバイス依存情報またはデバイス非依存情報の一方のみを予め決めておき、その他の情報を他方の情報として扱うように決めてもよい。また、ＭＩＢは木構造を有することから、所定のノード以下の情報をデバイス非依存情報あるいはデバイス依存情報と定めてもよい。いずれにしても、デバイス非依存情報およびデバイス依存情報は、図３の手順の実行に先立って決定されており（すなわち所定されており）、たとえば記憶装置１１２などにその区別を示す情報が格納されている。そしてデバイスに対して情報を要求する場合には、そのデバイス依存情報とデバイス非依存情報との区別を示す情報が参照され、ステップ３０１及びステップ３０７それぞれの工程に応じた情報を要求するためのパケットが送信される。
【００３２】
以上の手順では受信に失敗したデバイス情報は、次回の収集まで更新されることはないが、これに限定されず、受信に失敗したデバイス情報に関して所定回数の要求の再送信を試みてもよい。タイムアウトの場合にはデバイスの電源が切られていたり、通信が切断されている可能性があるので、再送信を試みる場合には所定時間経過後に行うのが望ましい。
【００３３】
また、上述した実施形態では、デバイス依存情報を個別に取得するものとしたが、これに限定されず、デバイス依存情報を一括で取得するようにしてもよい。すなわち、デバイス依存情報についても複数種類の情報を一括で取得するようにしてもよい。  本実施形態では、デバイスの設定やデバイスの有する機能に依存せず返信可能と想定される情報の取得処理と、デバイスの設定またはデバイスが有する機能またはその両方に依存して返信可否が変わると想定される情報の取得処理とを分離して行う。そして、少なくともデバイスの設定やデバイスの有する機能に依存しない非依存情報に基づいて、管理対象のデバイスの検索（特定）をすることができる。このように、本実施形態では、デバイス依存情報の取得結果に関わらず、デバイス非依存情報を取得することができ、デバイスの検索が失敗するのを抑制することができる。また、デバイス非依存情報とデバイス依存情報の返信結果を組み合わせて検索結果とすることで、通信トラフィックを抑えかつ、探索時に複数情報の取得を行うことが可能である。
【００３４】
なお、SNMPプロトコルでデバイスの探索を行う際に、複数の情報を１つ１つ取得する場合、デバイスと複数回の通信を行う必要があるため、処理時間が長くなり、また、通信トラフィックが大きくなってしまう。これに対し、本実施形態では、SNMPプロトコルでデバイスの探索を行う際に、デバイス依存情報は一括で取得する。これにより、通信トラフィックへ与える影響を軽減した上で、デバイス探索をし、複数の属性情報の取得をすることができる。
【００３５】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００３６】
1  ホストコンピュータ、2  プリンタ、202 検索処理部、203 一括情報取得部、204 個別情報取得部、205 検索結果保存部、206 検索結果リスト
【図１】
0006606355.tif 000002
【図２】
0006606355.tif 000003
【図３】
0006606355.tif 000004
【図４】
0006606355.tif 000005