(57)【特許請求の範囲】
【請求項１】
ネットワークに接続され、ネットワーク管理プログラムであるエージェントが記憶され、複数のデバイスにより共有可能なネットワーク制御装置であって、
前記デバイスを構成する論理的に独立した複数の制御部に分散された、少なくとも１つのエージェントはマスタエージェントとして機能し、他のエージェントはサブエージェントとして機能する複数のエージェントを備え、
前記複数のエージェントの各々は、ネットワーク情報管理マネージャから取得したネットワーク管理情報請求を各エージェントが処理した後に、前記ネットワーク管理情報請求に対するネットワーク管理情報応答を生成する手段を備え、
前記サブエージェントは、
当該サブエージェントで処理すべきネットワーク管理情報請求を、前記マスタエージェントから通知されたネットワーク管理情報請求の中から認識する認識手段と、
ネットワーク管理情報請求に当該サブエージェントで処理すべきネットワーク管理情報請求以外のネットワーク管理情報請求が含まれている場合には、当該ネットワーク管理情報請求から当該サブエージェントで処理すべきネットワーク管理情報請求以外のネットワーク管理情報請求を発行する第１発行手段と、
前記第１発行手段が発行したネットワーク管理情報請求を他のサブエージェントに通知する通知手段と、
前記通知手段が通知したネットワーク管理情報請求に対する応答情報を前記他のサブエージェントから取得する取得手段と、
前記認識手段が認識したネットワーク管理情報請求に対応する応答情報であってサブエージェントが発行する応答情報と、前記取得手段が取得した、前記他のサブエージェントからの応答情報とを前記マスタエージェントに対して発行する第２発行手段とを有し、
前記マスタエージェントは、
前記ネットワーク情報管理マネージャから発行されたネットワーク管理情報請求を解析する手段と、
そのマスタエージェントで処理すべきネットワーク管理情報請求を、ネットワーク管理情報請求から分離し生成する第１の生成手段と、
前記第１の生成手段により生成されたネットワーク管理情報請求に相当するネットワーク管理応答情報を生成する応答生成手段と、
ネットワーク管理情報請求に当該マスタエージェントで処理すべきネットワーク管理情報請求以外のネットワーク管理情報請求が含まれている場合には、当該ネットワーク管理情報請求からマスタエージェントで処理すべきネットワーク管理情報請求を除外したネットワーク管理情報請求を生成する第２の生成手段と、
前記第２の生成手段により生成されたネットワーク管理情報請求をサブエージェントに通知する手段と
前記サブエージェントから返送されたネットワーク管理情報応答を受信する手段と、
前記サブエージェントから受信した前記ネットワーク管理情報応答と、前記応答生成手段により生成したネットワーク管理応答情報から、ネットワーク情報管理マネージャに返送すべき形式に再構築する手段と、
その再構築されたネットワーク管理情報応答をネットワーク情報管理マネージャに返送する手段と
を有することを特徴とするネットワーク制御装置。
【請求項２】
前記各エージェントは、ネットワーク情報管理マネージャとネットワーク対応型画像処理装置間でネットワーク情報交換のために規定されたプロトコルと同一のプロトコルを使用して通信する手段を有すること特徴とする請求項１記載のネットワーク制御装置。
【請求項３】
前記ネットワーク情報管理マネージャは、ネットワーク上に存在するものであり、前記デバイスを構成する論理的に独立した複数の制御部として、画像処理装置の制御部と、該画像処理装置のネットワークインターフェース装置とを含み、
前記サブエージェントは、前記画像処理装置の制御部の情報を把握して応答情報を前記ネットワークインタフェース装置に実装されるマスタエージェントに通知することを特徴とする請求項１に記載のネットワーク制御装置。
【請求項４】
ネットワークに接続され、ネットワーク管理プログラムであるエージェントが記憶され、複数のクライントから共有可能なネットワーク対応型のデバイスに搭載されたネットワーク制御方法であって、
少なくとも１つのエージェントはマスタエージェントとして機能し、他のエージェントはサブエージェントとして機能する複数のエージェントが、デバイスを構成する論理的に独立した複数の制御部に分散され、前記各エージェントは、互いに通信し、ネットワーク情報管理マネージャから取得したネットワーク管理情報請求を各エージェントが処理した後に、前記ネットワーク管理情報請求に対するネットワーク管理情報応答を生成する手段を備え、
前記マスタエージェントにより、ネットワーク情報管理マネージャから発行されたネットワーク管理情報請求を解析する工程と、
前記マスタエージェントにより、当該マスタエージェントで処理すべきネットワーク管理情報請求を、ネットワーク管理情報請求から分離し生成する第１の生成工程と、
前記マスタエージェントにより、前記第１の生成工程により生成されたネットワーク管理情報請求に相当する応答情報を生成する応答情報工程と、
ネットワーク管理情報請求にマスタエージェントで処理すべきネットワーク管理情報請求以外のネットワーク管理情報請求が含まれている場合には、ネットワーク管理情報請求からマスタエージェントで処理すべきネットワーク管理情報請求を除外したネットワーク管理情報請求を前記マスタエージェントにより生成する第２の生成工程と、
前記第２の生成工程により生成されたネットワーク管理情報請求を前記マスタエージェントからサブエージェントに通知する工程と、
前記サブエージェントで処理すべきネットワーク管理情報請求を、前記マスタエージェントから通知されたネットワーク管理情報請求の中から認識する認識工程と、
ネットワーク管理情報請求に当該サブエージェントで処理すべきネットワーク管理情報請求以外のネットワーク管理情報請求が含まれている場合には、当該ネットワーク管理情報請求から当該サブエージェントで処理すべきネットワーク管理情報請求以外のネットワーク管理情報請求を発行する第１発行工程と、
前記第１発行工程で発行したネットワーク管理情報請求を前記サブエージェントより他のサブエージェントに通知する通知工程と、
前記サブエージェントにより、前記通知工程で通知したネットワーク管理情報請求に対する応答情報を前記他のサブエージェントから取得する取得工程と、
前記サブエージェントにより、前記認識工程で認識したネットワーク管理情報請求に対応する応答情報であって当該サブエージェントが発行する応答情報と、前記取得工程で取得した、前記他のサブエージェントからの応答情報とを前記マスタエージェントに対して発行する第２発行工程と、
前記マスタエージェントにより、前記サブエージェントから返送されたネットワーク管理情報応答を受信する受信工程と、
前記マスタエージェントにより、前記ネットワーク管理情報応答を解析する工程と、
前記マスタエージェントにより、前記受信工程により受信した前記ネットワーク管理情報応答と、前記応答情報により生成したネットワーク管理情報応答から、ネットワーク情報管理マネージャに返送すべき形式に再構築する工程と、
その再構築されたネットワーク管理情報応答を前記マスタエージェントよりネットワーク情報管理マネージャに返送する工程と
を有することを特徴とするネットワーク制御方法。
【請求項５】
前記各エージェントは、ネットワーク情報管理マネージャとネットワーク対応型画像処理装置間でネットワーク情報交換のために規定されたプロトコルと同一のプロトコルを使用して通信すること特徴とする請求項４記載のネットワーク制御方法。
【請求項６】
前記ネットワーク情報管理マネージャは、ネットワーク上に存在するものであり、前記デバイスを構成する論理的に独立した複数の制御部として、画像処理装置の制御部と、該画像処理装置のネットワークインターフェース装置とを含み、
前記サブエージェントにより、前記画像処理装置の制御部の情報を把握して応答情報を前記ネットワークインタフェース装置に実装されるマスタエージェントに通知する工程をさらに有することを特徴とする請求項４に記載のネットワーク制御方法。
【請求項７】
ネットワークに接続され、ネットワーク管理プログラムであるエージェントが記憶され、複数のクライントから共有可能なネットワーク対応型のデバイスに搭載されたネットワーク情報管理方法を実現するためのコンピュータプログラムを格納するコンピュータ可読記憶媒体であって、
前記コンピュータプログラムはコンピュータにより、デバイスを構成する論理的に独立した複数の制御部に分散された、少なくとも１つのエージェントはマスタエージェントとして機能し、他のエージェントはサブエージェントとして機能する複数のエージェントを実現させ、前記の各エージェントは、互いに通信し、ネットワーク情報管理マネージャから取得したネットワーク管理情報請求を各エージェントが処理した後に、前記ネットワーク管理情報請求に対するネットワーク管理情報応答を生成し、
前記マスタエージェントにより、ネットワーク情報管理マネージャから発行されたネットワーク管理情報請求を解析する工程と、
前記マスタエージェントにより、当該マスタエージェントで処理すべきネットワーク管理情報請求を、ネットワーク管理情報請求から分離し生成する第１の生成工程と、
前記マスタエージェントにより、前記第１の生成工程により生成されたネットワーク管理情報請求に相当する応答情報を生成する応答情報工程と、
ネットワーク管理情報請求にマスタエージェントで処理すべきネットワーク管理情報請求以外のネットワーク管理情報請求が含まれている場合には、ネットワーク管理情報請求からマスタエージェントで処理すべきネットワーク管理情報請求を除外したネットワーク管理情報請求を前記マスタエージェントにより生成する第２の生成工程と、
前記第２の生成工程により生成されたネットワーク管理情報請求を前記マスタエージェントからサブエージェントに通知する工程と、
前記サブエージェントで処理すべきネットワーク管理情報請求を、前記マスタエージェントから通知されたネットワーク管理情報請求の中から認識する認識工程と、
ネットワーク管理情報請求に当該サブエージェントで処理すべきネットワーク管理情報請求以外のネットワーク管理情報請求が含まれている場合には、当該ネットワーク管理情報請求から当該サブエージェントで処理すべきネットワーク管理情報請求以外のネットワーク管理情報請求を発行する第１発行工程と、
前記第１発行工程で発行したネットワーク管理情報請求を前記サブエージェントより他のサブエージェントに通知する通知工程と、
前記サブエージェントにより、前記通知工程で通知したネットワーク管理情報請求に対する応答情報を前記他のサブエージェントから取得する取得工程と、
前記サブエージェントにより、前記認識工程で認識したネットワーク管理情報請求に対応する応答情報であって当該サブエージェントが発行する応答情報と、前記取得工程で取得した、前記他のサブエージェントからの応答情報とを前記マスタエージェントに対して発行する第２発行工程と、
前記マスタエージェントにより、前記サブエージェントから返送されたネットワーク管理情報応答を受信する受信工程と、
前記マスタエージェントにより、前記ネットワーク管理情報応答を解析する工程と、
前記マスタエージェントにより、前記受信工程により受信した前記ネットワーク管理情報応答と、前記応答情報により生成したネットワーク管理情報応答から、ネットワーク情報管理マネージャに返送すべき形式に再構築する工程と、
その再構築されたネットワーク管理情報応答を前記マスタエージェントよりネットワーク情報管理マネージャに返送する工程と
を前記コンピュータにより実行させるためのプログラムを格納したことを特徴とするコンピュータ可読記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワーク通信機能を備えた画像処理装置のネットワーク情報管理装置に関するものである。
【０００２】
【従来の技術】
ネットワークのインフラの整備されるに従い、ネットワーク対応型のプリンタ、スキャナ、複写機等の画像処理装置が急速に普及しつつある。
【０００３】
これら画像処理装置のネットワーク対応の形式として、（１）画像処理装置内部にネットワーク機能を組み込んだもの、すなわちネットワーク制御機能が、画像処理装置制御部の一部として組み込まれたもの、（２）画像処理装置の拡張機能としてネットワーク機能を組み込んだもの、すなわち画像処理装置の拡張スロット・コネクタ等に、ネットワーク機能を備えた制御装置を備えることで、ネットワーク対応するものの２タイプに分類される。
【０００４】
また、これらネットワーク対応型の画像処理装置には、本来の機能である印字データ、スキャンデータの通信機能だけではなく、ネットワークシステムの構成、アドレスまたは資産管理などを含む構成管理、ネットワークシステム上での障害検出と分析、通知、復旧を行う障害管理、ネットワークの負荷状況の管理、性能管理といった、ネットワーク管理のための情報管理機能、およびネットワークを介して周辺処理装置のコンフィグレーションを実現する付加的機能が要求される。
【０００５】
これらの諸機能を実現するために、簡易ネットワーク制御プロトコル（ＳＮＭＰ）が広く利用されており、また管理情報はＭＩＢとよばれるデータベースの形式で管理されている。
【０００６】
これら管理情報は、前述の２タイプのネットワーク対応形態のいずれの場合においても、ネットワーク制御部で管理されており、このネットワーク制御部においてプリンタＭＩＢ、ホストリソースＭＩＢ等の周辺装置に関連する情報を管理する情報に関するデータベースも管理していた。
【０００７】
従って、ネットワーク上に接続されたネットワーク管理マネージャが、ネットワーク対応型周辺装置に対し、管理情報の問い合わせを実行した場合、ネットワーク対応型周辺装置のネットワーク制御部において、その要求内容を解祈し、その内容が周辺装置固有の情報である場合、画像処理装置との通信手段を介して該当する情報を取得し、それをプロトコルで定めるフォーマットに変換した後、ネットワーク管理マネージャに対し応答していた。
【０００８】
【発明が解決しようとする課題】
しかしながら、上記従来例では、ひとつのネットワーク制御部が、複数の周辺装置に対し接続可能である場合、たとえば、ネットワーク制御部が、機種の異なるプリンタＡ、プリンタＢとに接続利用可能である場合、あるいはネットワーク制御部が、提供機能の全く異なるプリンタ、スキャナ、ＦＡＸとにそれぞれ接続利用可能である場合には、ネットワーク制御部が接続利用可能な周辺機器に関するすべてのＭＩＢデータベースを管理する必要があり、これらデータベースを格納するために膨大なメモリを必要としていた。
【０００９】
また、ネットワーク制御部と周辺機器制御部の通信インターフェイスが接続する周辺装置ごとに異なるため、ネットワーク制御部で複数の通信制御手段を備えている必要があった。
【００１０】
また、ネットワーク制御部に対し、新規にそのネットワーク制御部と接続利用可能な画像処理装置が追加された場合、その制御ソフトウェア全体を更新する必要があった。
【００１１】
【課題を解決するための手段】
上記目的を達成するために、本発明は次のような構成からなる。
【００１２】
ネットワークに接続され、ネットワーク管理プログラムであるエージェントが記憶され、複数のデバイスにより共有可能なネットワーク制御装置であって、
前記デバイスを構成する論理的に独立した複数の制御部に分散された、少なくとも１つのエージェントはマスタエージェントとして機能し、他のエージェントはサブエージェントとして機能する複数のエージェントを備え、
前記複数のエージェントの各々は、ネットワーク情報管理マネージャから取得したネットワーク管理情報請求を各エージェントが処理した後に、前記ネットワーク管理情報請求に対するネットワーク管理情報応答を生成する手段を備え、
前記サブエージェントは、
当該サブエージェントで処理すべきネットワーク管理情報請求を、前記マスタエージェントから通知されたネットワーク管理情報請求の中から認識する認識手段と、
ネットワーク管理情報請求に当該サブエージェントで処理すべきネットワーク管理情報請求以外のネットワーク管理情報請求が含まれている場合には、当該ネットワーク管理情報請求から当該サブエージェントで処理すべきネットワーク管理情報請求以外のネットワーク管理情報請求を発行する第１発行手段と、
前記第１発行手段が発行したネットワーク管理情報請求を他のサブエージェントに通知する通知手段と、
前記通知手段が通知したネットワーク管理情報請求に対する応答情報を前記他のサブエージェントから取得する取得手段と、
前記認識手段が認識したネットワーク管理情報請求に対応する応答情報であってサブエージェントが発行する応答情報と、前記取得手段が取得した、前記他のサブエージェントからの応答情報とを前記マスタエージェントに対して発行する第２発行手段とを有し、
前記マスタエージェントは、
前記ネットワーク情報管理マネージャから発行されたネットワーク管理情報請求を解析する手段と、
そのマスタエージェントで処理すべきネットワーク管理情報請求を、ネットワーク管理情報請求から分離し生成する第１の生成手段と、
前記第１の生成手段により生成されたネットワーク管理情報請求に相当するネットワーク管理応答情報を生成する応答生成手段と、
ネットワーク管理情報請求に当該マスタエージェントで処理すべきネットワーク管理情報請求以外のネットワーク管理情報請求が含まれている場合には、当該ネットワーク管理情報請求からマスタエージェントで処理すべきネットワーク管理情報請求を除外したネットワーク管理情報請求を生成する第２の生成手段と、
前記第２の生成手段により生成されたネットワーク管理情報請求をサブエージェントに通知する手段と
前記サブエージェントから返送されたネットワーク管理情報応答を受信する手段と、
前記サブエージェントから受信した前記ネットワーク管理情報応答と、前記応答生成手段により生成したネットワーク管理応答情報から、ネットワーク情報管理マネージャに返送すべき形式に再構築する手段と、
その再構築されたネットワーク管理情報応答をネットワーク情報管理マネージャに返送する手段と
を有する。
【００１３】
更に好ましくは、前記各エージェントは、ネットワーク情報管理マネージャとネットワーク対応型画像処理装置間でネットワーク情報交換のために規定されたプロトコルと同一のプロトコルを使用して通信する手段を有する。
【００１５】
更に好ましくは、前記ネットワーク情報管理マネージャは、ネットワーク上に存在するものであり、
前記デバイスを構成する論理的に独立した複数の制御部として、画像処理装置の制御部と、該画像処理装置のネットワークインターフェース装置とを含み、
前記サブエージェントは、前記画像処理装置の制御部の情報を把握して応答情報を前記ネットワークインタフェース装置に実装されるマスタエージェントに通知する。
【００２７】
図１において、ＳＮＭＰマスタエージェント１０１は、ネットワーク制御部に置かれる。ＳＮＭＰマスタエージェントの下位レイヤは、ＮＩＣ制御部１０２、プロトコルスタック１０３、画像処理装置Ｉ／Ｆ制御部１０４、およびネットワーク情報管理データベース制御部１０５から構成されている。本実施の形態において、ＳＮＭＰマスタエージェント１０１は、ＭＩＢ−II、アップルトークＭＩＢ、およびベンダユニークなプライベートＭＩＢのうち通信制御に関連するＭＩＢ（マネージメント情報 ＭＩＢ）オブジェクトを管理する。
【００２８】
ＳＮＭＰサブエージェント１０６は画像処理装置制御部に置かれ、本実施の形態ではプリンタ制御部に配される。ＳＮＭＰサブエージェントの下位レイヤは、画像処理装置制御部１０７、画像処理装置Ｉ／Ｆ制御部１０４、および画像処理装置データベース制御１０８より構成されている。本実施の形態において、ＳＮＭＰサブエージェントは、ホストリソースＭＩＢ、プリンタＭＩＢ、およびベンダユニークなプライベートＭＩＢのうち、画像処理装置に関連するオブジェクトを管理する。
【００２９】
図２はＳＮＭＰマスタエージェント１０１のソフトウエアモジュール構成を示す。ＳＮＭＰマスタエージェント１０１は、プロトコルスタック間とのＳＮＭＰパケットの送受信を制御するパケット送受信制御部２０２、符号化された受信ＳＮＭＰパケットのデコード、および送信パケットのエンコードを実行するＢＥＲデコード／エンコード処理部２０３、ＳＮＭＰパケット内容を解析するＳＮＭＰパケットパーサー部２０４、パケット内容からマスタエージェント用にパケットを分離処理するマスタエージェント用パケット生成処理部２０５、サブエージェント用にパケットを分離処理するサブエージェント用パケット生成処理部２０６、ＳＮＭＰパケットパーサー部２０４で検出したＭＩＢオブジェクトＩＤと、それに対応する処理モジュールのマッピング情報を管理したＭＩＢデータベース管理部２０７、オブジェクトごとに準備されたメソッドルーチン群を制御するメソッドルーチン制御部２０８、サブエージェントとの通信を制御するサブエージェントＩ／Ｆ制御部２０９、マスタエージェント１０１が処理した応答パケットを生成するGetResponseパケット生成部２１０、およびマスタエージェントのGetResponseパケット、サブエージェントから返信されたGetResponseパケットからネットワーク情報管理マネージャに返送すべきフォーマットに再構築するＳＮＭＰパケット再構築制御部２１１から構成される。
【００３０】
図３は、ＳＮＭＰサブエージェント１０６のソフトウェア構成を示すものである。ＳＮＭＰサブエージェント１０６は、マスタエージェントとの間でＳＮＭＰパケットの送受信を制御するマスタエージェントＩ／Ｆ制御部３０２、マスタエージェントから受信したＳＮＭＰパケット内容を解析するＳＮＭＰパケットパーサー処理部３０３、ＳＮＭＰパケットパーサー処理部３０３で検出したＭＩＢ オブジェクトＩＤと、それに対応する処理モジュールのマッピング情報を管理するＭＩＢデータベース管理部３０４、オブジェクトごとに準備されたメソッドルーチン群を制御するメソッドルーチン制御部３０５、およびサブエージェント１０６が処理した応答取得パケットを生成するGetResponseパケット生成部３０６から構成される。
【００３１】
図４は、本実施形態のネットワーク制御装置（ネットワーク制御部）のハードウエア構成を示すものである。図４において、４０１はＣＰＵであり、本実施の形態では３２ビットＲＩＳＣチップを使用している。しかしながら、これに制限される訳ではなく、どのようなＣＰＵを用いてもよい。４０２はフラッシュＲＯＭであり、このメモリ内にプログラム実行コード、およびネットワーク管理情報データベーステーブルが保持される。また、このＲＯＭの一部領域を非揮発性メモリ領域として使用し、ユーザーが設定したパラメータ、コンフィグレーション情報等を記憶保持するのに利用している。
【００３２】
４０３はＲＡＭであり、作業領域として使用される。本実施の形態ではフラッシュＲＯＭ４０２上に格納された実行コード、およびデータベーステーブルは起動時にこのＲＡＭ４０３上にコピーされ、このコピー作業が完了した時点でプログラムコードの実行を開始する。
【００３３】
４０４はＬＡＮコントローラ、４０５はＬＡＮ物理層制御部（ＰＨＹ）である。ＬＡＮ物理層制御部（ＰＨＹ）４０５は、コネクタ４０６を介してイーサネットに接続される。ＬＡＮ コントローラ４０４はバスマスタタイプを使用しており、送受信をイベントトリガとして、バス権をＣＰＵ４０１と調停し、ＣＰＵ４０１とは独立して、ＲＡＭ４０３上に確保されて送受信バッファ上のデータの送受信を実行する。
【００３４】
４０７は、画像処理装置等のペリフェラル間との通信を制御するＡＳＩＣであり、３２ｋＢのデュアルポートＲＡＭを有する。ペリフェラルとは、このメモリ領域を使用してペリフェラルＩ／Ｆコントローラ４０８を介してデータを通信する構成をとる。
【００３５】
本実施の形態では、ペリフェラル装置としてプリンタを例に説明しているが、ペリフェラル装置側のハード構成に関しては同様にＣＰＵ／ＲＯＭ／ＲＡＭから構成され、通信制御部側の制御系からは独立した構成を持つ（不図示）。
【００３６】
図２で示したマスタエージェントを制御するソフトウェアはフラッシュＲＯＭ４０２に、サブエージェントを制御するソフトウェアはペリフェラル装置プリンタ側ＲＯＭ（不図示）に格納されている。
【００３７】
以下、それぞれのＲＯＭ内に格納されたソフトウェアの制御フローを説明する。
【００３８】
図５は本実施形態におけるネットワーク情報管理手段、すなわちマスターエージェントの制御フローを示したものである。ネットワーク上のＳＮＭＰマネージャから発行されたＳＮＭＰパケットはマスタエージェントのパケット送受信制御部２０２で受信される（ステップＳ５０１）。ＳＮＭＰパケットはＢＥＲ規約に従い符号化されているため、マスタエージェントＢＥＲエンコード・デコード処理部２０３においてデコードされる（ステップＳ５０２）。デコードされたＳＮＭＰパケットは、ＳＮＭＰパケットパーサー処理部２０４において、ＡＳＮ．１での定義に従い解析され（ステップＳ５０３）、ＳＮＭＰマスタエージェントは、このパケットから、バージョン、コミュニティ、ＰＤＵタイプ、要求ＩＤ、および変数バインディングを得る。各値はマスタエージェント側で記憶される（ステップＳ５０４）。
【００３９】
図６は、変数バインディング部の解析手順を示す図である。変数バインディングは、ＳＮＭＰパケットパーサー２０４において解析され、変数バインディングにマスタエージェント側ＭＩＢデータベースにおいて管理されていない変数名Ｎを検出した場合（ステップＳ５０５−ｎｏ）、その位置Ｎｘを記憶すると共に、パケットから削除する。削除された変数Ｎ−値Ｎは、サブエージェント側で処理されるべきオブジェクトとして、先に記憶したバージョン、コミュニティ、ＰＤＵタイプ、要求ＩＤ情報をもとに、サブエージェント用パケット生成部２０６においてサブエージェント用ＳＮＭＰパケットとして再度パケット化される（ステップＳ５０６）。
【００４０】
マスタエージェント、サブエージェント用にパケット分離が完了した後の制御は、ＰＤＵタイプにより異なる（ステップＳ５０７）。すなわちＰＤＵタイプがGetRequest／GetNextRequestの場合、プロセスＡを実行し（ステップＳ５０８）、ＰＤＵタイプがSetResponseの場合はプロセスＢを実行する（ステップＳ５０９）。
【００４１】
図７はプロセスＡの制御フローを説明する図である。マスタエージェントは、サブエージェントに発行すべきパケットが存在するか否かを判断し（ステップＳ７０１）、存在する場合はサブエージェントＩ／Ｆ制御部２０９を介してサブエージェントに対し、サブエージェント用パケット生成処理部２０６のプロセスで生成されたサブエージェント用のＳＮＭＰパケットを発行する（ステップＳ７０２）。マスタエージェントは自ＳＮＭＰパケットの変数バインディングの変数−値の組み合わせを順次読み出し（ステップＳ７０３）、ＭＩＢデータベース管理部で変数に対応するメソッドルーチンステップＳ７０４が格納されているアドレス情報を取得した後（ステップＳ７０５）、このアドレス情報をもとにメソッドルーチン制御部２０８において該当する処理を実行する（ステップＳ７０６）。
【００４２】
実行後、メソッドルーチン制御部２０８よりエラー終了の通知を受けた場合は（ステップＳ７０７）、全変数バインディング実行完了を待たず、ただちに処理を中断し、エラーステータス、インデックス値をGetResponseパケット生成部２１０に通知し、GetResponseパケットを生成した後（ステップＳ７０８）、サブエージェント側からGetResponseが発行されるのを待つ（ステップＳ７０９）。
【００４３】
メソッドルーチン制御部より正常終了の通知を受けた場合は（ステップＳ７１０）、次の変数−値の組み合わせに対しステップＳ７０３〜ステップＳ７０６と同一処理を実行する。以下、変数バインディングリストの終端まで同一処理を実行する（ステップＳ７１１）。
【００４４】
全ての処理が完了した後、GetResponseパケットを生成し（ステップＳ７０８）、サブエージェント側からGetResponseが発行されるのを待つ（ステップＳ７０９）。
【００４５】
マスタエージェントＩ／Ｆ制御部３０２を介してサブエージェント用ＳＮＭＰパケットを受信したサブエージェント側では（ステップＳ７１２）、マスタエージェントと同様にサブエージェント用ＳＮＭＰパケットの変数バインディングの変数−値の組み合わせを順次読み出し（ステップＳ７１３）、ＭＩＢデータベース管理部３０４でＭＩＢデータベースを検索し（ステップＳ７１４）、変数に対応するメソッドルーチンが格納されているアドレス情報を取得した後（ステップＳ７１５）、このアドレス情報をもとにメソッドルーチン制御部３０５において該当する処理を実行する（ステップＳ７１６）。
【００４６】
実行後、メソッドルーチン制御部３０５よりエラー終了の通知を受けた場合は（ステップＳ７１７）、全変数バインディング実行完了を待たず、ただちに処理を中断し、エラーステータス、インデックス値をGetResponseパケット生成部３０６に通知し、GetResponseパケットを生成する（ステップＳ７１８）。
【００４７】
生成したGetResponseパケットはマスタエージェントＩ／Ｆ制御部３０２を介してマスタエージェントに通知される（ステップＳ７１９）。
【００４８】
メソッドルーチン制御部３０５より正常終了の通知を受けた場合は、次の変数−値の組み合わせに対しステップＳ７１３〜ステップＳ７１６と同一処理を実行する。以下、変数バインディングリストの終端まで同一処理を実行した後（ステップＳ７２０）、GetResponseパケット生成部３０６においてGetResponseパケットを生成する（ステップＳ７１８）。
【００４９】
生成したGetResponseパケットはマスタエージェントＩ／Ｆ制御部３０２を介してマスタエージェントに通知される（ステップＳ７１９）。
【００５０】
サブエージェントＩ／Ｆ制御部２０６を介してサブエージェントからのGetResponseパケットを受信したマスタエージェントは、ＳＮＭＰパケット再構築制御部２１１において、GetResponseパケットを再構築する。
【００５１】
図８はGetResponseパケット再構築のフローを示す図である。マスタエージェントは、マスタエージェント、サブエージェントのそれぞれが生成したGetResponseパケットのエラーステータスフィールドの内容を確認する。
【００５２】
マスタエージェントが生成したGetResponseパケットのエラーステータスがnoError以外の場合（ステップＳ８０１−ｙｅｓ）、パケット再構築制御部において、エラーインデックスの値は、受信したオリジナルパケットにおける値に変換される（ステップＳ８０２）。
【００５３】
この際、アトミックルールにのっとり、GetResponseパケットには変数バインディングは含まれない。
【００５４】
変換処理が完了した時点で、ＢＥＲ デコード／エンコード制御部２０３においてＢＥＲ符号化した後（ステップＳ８０３）、パケット送受信制御部２０２においてＳＮＭＰマネージャに対しGetResponseパケット返送を実行する。
【００５５】
サブエージェントから受信したGetResponseパケットのエラーステータスがnoError以外の場合（ステップＳ８０５）、パケット再構築制御部２１１において、エラーインデックスの値は、受信したオリジナルパケットにおける値に変換される（ステップＳ８０２）。
【００５６】
この際、アトミックルールに従って、応答取得パケットには変数バインディングは含まれない。
【００５７】
変換処理が完了した時点で、ＢＥＲ デコード／エンコード制御部２０３においてＢＥＲ符号化した後（ステップＳ８０３）、パケット送受信制御部２０２においてＳＮＭＰマネージャに対しGetResponseパケット返送を実行する（ステップＳ８０４）。
【００５８】
マスタエージェント、サブエージェント共にエラーステータスがエラー無しの場合は（ステップＳ８０６）、ＳＮＭＰパケット再構築制御部２１１において、マスタエージェント、およびサブエージェントのGetResponseパケット内の変数バインディングをステップで記憶されたオリジナルパケットと同順に再配置してひとつのGetResponseパケットに再構築するステップＳ８０７（ステップＳ８０７）。
【００５９】
再構築されたGetResponseパケットはＢＥＲ デコード／エンコード制御部２０３においてＢＥＲ符号化した後（ステップＳ８０３）、パケット送受信制御部２０２においてＳＮＭＰマネージャに対しGetResponseパケット返送を実行する（ステップＳ８０４）。
【００６０】
以上のプロセスを経て、ＰＤＵタイプがGetResponse／GetNextResponseの一連のプロセスＡを完了し、再びＳＮＭＰマネージャからのＳＮＭＰパケット受信待ち状態となる。
【００６１】
図９は、ＰＤＵタイプがSetResponseの場合の一連のプロセスＢの制御フローを示す図である。図９において、マスタエージェントは自ＳＮＭＰパケットの変数バインディングの変数−値の組み合わせを順次読み出し（ステップＳ９０１）、ＭＩＢデータベース管理部２０７で変数に対応するメソッドルーチンが格納されているアドレス情報を取得した後（ステップＳ９０３）、このアドレス情報をもとにメソッドルーチン制御部２０８において該当する処理を実行する（ステップＳ９０４）。この場合、各メソッドルーチンは設定すべき値の正当性のみを評価し、各ＭＩＢオブジェクトの値を指定された値に変更する処理は、この時点では実行しない。
【００６２】
実行後、メソッドルーチン制御部２０８よりエラー終了の通知を受けた場合は（ステップＳ９０５）、全変数バインディング実行完了を待たず、ただちに処理を中断し、エラーステータス、インデックス値をGetResponseパケット生成部２１０に通知し、GetResponseパケットを生成する。マスタエージェント側の処理プロセスにおいてエラーが発生した場合、サブエージェント側にはＳＮＭＰパケットは発行されない。生成されたGetResponseパケットについては、ＳＮＭＰパケット再構築部２１１において、エラーインデックスの値は受信したオリジナルパケットにおける値に変換される（ステップＳ１００１）。
【００６３】
再構築されたGetResponseパケットは、ＢＥＲ デコード／エンコード制御部においてＢＥＲ符号化された後（ステップＳ１００２）、パケット送受信制御部においてＳＮＭＰマネージャに対しGetResponseパケット返送が実行される（ステップＳ１００３）。
【００６４】
メソッドルーチン制御部２０８より正常終了の通知を受けた場合は（ステップＳ９０６）、次の変数−値の組み合わせに対し、ステップＳ９０１〜ステップＳ９０４と同一処理を実行する。以下、変数バインディングリストステップＳ９０７の終端まで同一処理を実行する。全ての処理が完了した後、GetResponseパケットを生成する（ステップＳ９０８）。
【００６５】
図１０はGetResponseパケット生成後の制御フローを示す図である。図１０において、GetResponseパケットの生成が完了した時点で、マスタエージェントは、サブエージェントに発行すべきパケットが存在するか否かを判断し（ステップＳ１００４）、存在する場合はサブエージェントＩ／Ｆ制御部２０９を介してサブエージェントに対し、生成されたサブエージェント用のＳＮＭＰパケットを発行し（ステップＳ１００５）、サブエージェントからのGetResponse発行を待つ（ステップＳ１００６）。
【００６６】
マスタエージェントＩ／Ｆ制御部３０２を介してサブエージェント用ＳＮＭＰパケットを受信したサブエージェント側では（ステップＳ１００７）、マスタエージェントと同様にサブエージェント用ＳＮＭＰパケットの変数バインディングの変数−値の組み合わせを順次読み出し（ステップＳ１００８）、ＭＩＢデータベース管理部３０４でサブエージェントＭＩＢデータベースを検索し（ステップＳ１００９）、変数に対応するメソッドルーチンが格納されているアドレス情報を取得した後（ステップＳ１０１０）、このアドレス情報をもとにメソッドルーチン制御部３０５において該当する処理を実行する（ステップＳ１０１１）。
【００６７】
この場合、各メソッドルーチンは設定すべき値の正当性のみを評価し、各ＭＩＢオブジェクトの値を指定された値に変更する処理は、この時点では実行しない。
【００６８】
実行後、メソッドルーチン制御部よりエラー終了の通知を受けた場合は（ステップＳ１０１２）、全変数バインディング実行完了を待たず、ただちに処理を中断し、エラーステータス、インデックス値をGetResponseパケット生成部３０６に通知し、GetResponseパケットを生成する（ステップＳ１０１３）。生成したGetResponseパケットはマスタエージェントＩ／Ｆ制御部３０２を介してマスタエージェントに通知される（ステップＳ１０１４）。
【００６９】
メソッドルーチン制御部３０５から正常終了の通知を受けた場合は（ステップＳ１０１５）、次の変数−値の組み合わせに対し、ステップＳ１００８〜ステップＳ１０１１と同一処理を実行する。以下、変数バインディングリストの終端まで同一処理を実行した後（ステップＳ１０１６）、再度、変数バインディングの変数−値の組み合わせを順次読み出し、ＭＩＢデータベース管理部で変数に対応するメソッドルーチンが格納されているアドレス情報を取得した後、このアドレス情報をもとにメソッドルーチン制御部において該当する処理を実行する。このプロセスにおいて、サブエージェントは、各ＭＩＢオブジェクトの値を指定された値に変更する（ステップＳ１０１７）。この処理の終了後、サブエージェントはGetResponseパケット生成部３０６においてGetResponseパケットを生成し（ステップＳ１０１３）、このGetResponseパケットをマスタエージェントＩ／Ｆ制御部３０２を介してマスタエージェントに通知する（ステップＳ１０１４）。
【００７０】
サブエージェントＩ／Ｆ制御部２０９を介してサブエージェントからのGetResponseパケットを受信したマスタエージェントは、ＳＮＭＰパケット再構築制御部２１１において、GetResponseパケットを再構築する。
【００７１】
この際、サブエージェントから受信したGetResponseパケットのエラーステータスがエラーの場合（ステップＳ１０１８）、ＳＮＭＰパケット再構築制御部２１１において、マスタエージェント側のGetResponseパケットを破棄し（ステップＳ１０１９）、サブエージェントから返送されたGetResponseパケットのエラーインデックスの値を、受信したオリジナルパケットにおける値に変換する（ステップＳ１００１）。この際、アトミックルールに従ってGetResponseパケットには変数バインディングは含まれない。
【００７２】
変換処理が完了した時点で、ＢＥＲ デコード／エンコード制御部においてＢＥＲ符号化した後（ステップＳ１００２）、パケット送受信制御部においてＳＮＭＰマネージャに対しGetResponseパケット返送を実行する（ステップＳ１００３）。
【００７３】
サブエージェントから受信したGetResponseパケットのエラーステータスがエラー無しの場合（ステップＳ１０２０）、マスタエージェントは再度、マスタエージェント用ＳＮＭＰパケットから、変数バインディングの変数−値の組み合わせを順次読み出し、ＭＩＢデータベース管理部で変数に対応するメソッドルーチンが格納されているアドレス情報を取得した後、このアドレス情報をもとにメソッドルーチン制御部２０８において該当する処理を実行する。このプロセスにおいて、マスタエージェントは、各ＭＩＢオブジェクトの値を指定された値に変更する（ステップＳ１０２１）。
【００７４】
同時にパケットＳＮＭＰ再構築制御部２１１において、マスタエージェントおよびサブエージェントのGetResponseパケット内の変数バインディングを記憶されたオリジナルパケットと同順に再配置してひとつのGetResponseパケットに再構築する（ステップＳ１０２２）。
【００７５】
再構築されたGetResponseパケットはＢＥＲ デコード／エンコード制御部２０３においてＢＥＲ符号化した後（ステップＳ１００２）、パケット送受信制御部２０２においてＳＮＭＰマネージャに対しGetResponseパケット返送を実行する（ステップＳ１００３）。
【００７６】
以上のプロセスを経て、ＰＤＵタイプがSetResponseの場合の一連のプロセスＢを完了し、再びＳＮＭＰマネージャからのＳＮＭＰパケット受信待ち状態となる。
【００７７】
以上説明したように、ＭＩＢデータベースをマスタエージェント用とサブエージェント用とに分け、マスタエージェントＭＩＢデータベースをネットワーク制御部により、サブエージェントＭＩＢデータベースをネットワーク制御部に接続された周辺装置により保持することで、ネットワーク情報管理データベースを格納するのに必要とするメモリ資源を分散できる。このため、１つのエージェント部に大容量のメモリを備える必要がなくなった。
【００７８】
また、各エージェント間は、ネットワーク情報管理マネージャとネットワーク対応型画像処理装置間で規定された通信プロトコルと同一のプロトコルを使用することによって情報通信を実現でき、ネットワーク制御部−画像処理装置間通信のために複数のプロトコル制御手段を備える必要が無い。
【００７９】
さらに、新規に画像処理装置を追加する場合、画像処理装置側のネットワーク管理情報を制御するサブエージェントを追加する作業だけで、ネットワーク管理情報制御部の更新が可能となる。
【００８０】
［その他の実施の形態］
実施の形態１では、プリンタを画像処理装置とした実施の形態を示しているが、画像装置としてはスキャナ、ＦＡＸ、複写機、およびそれら複合機能を備える情報処理装置であって、実施の形態１において説明したサブエージェント機能の実装可能な装置であれば、いずれの場合においても実現可能である。
【００８１】
実施の形態１では、画像処理装置の外部拡張スロットにネットワーク制御装置を装着する形態の例を説明しているが、論理的にネットワーク通信制御部、および画像処理装置制御部が独立した構成を有する場合、物理的に同一ハードウエアまたは１ボード上に構成される場合においても実現可能である。
【００８２】
実施の形態１では、ネットワーク通信制御部と、画像処理装置制御部間とは独自のハードウエアＩ／Ｆを使用して通信を実現しているが、このインターフェイス部分はシリアル、パラレルインターフェイス、イーサネット等汎用的に利用されているどのような通信手段を使用する場合であっても、第１の実施の形態において説明した通信プロトコルが実装可能な通信手段であれば、いずれの場合においても実現可能である。
【００８３】
実施の形態１において、マスタエージェントをネットワーク通信制御部に配置し、サブエージェントとを画像処理装置制御部に配置した例を示したが、マスタエージェントを画像処理装置制御部に配置し、サブエージェントをネットワーク通信制御部に配置する構成を採用することも可能である。
【００８４】
実施の形態１において、マスタエージェントとサブエージェントとではその制御モジュール構造が異なっていたが、全く同一の制御構造で構成することも可能である。この場合、ネットワーク情報管理マネージャに対し、ネットワーク管理情報要求の解析、およびネットワーク管理情報応答の送出を実行するエージェントがマスタエージェントとして機能し、他のエージェントがサブエージェントとして機能する。
【００８５】
実施の形態１においては１つのサブエージェント、１つのマスタエージェントから構成される例を示したが、１つのマスタエージェントに対し、２つ以上Ｎ個のサブエージェントが存在する構成を探ることも可能である。
【００８６】
図１１は、１マスタエージェント−Ｎサブエージェント構成を示す図である。図１１において、マスタエージェント１１０１のマスタエージェントＩ／Ｆ制御部を介しサブエージェント用ＳＮＭＰパケットを受信した第１のサブエージェント１１０２は、変数バインディイング部中に第１のサブエージェントのＭＩＢデータベースで管理されていない次のサブエージェントへの変数を検出した場合、その位置を記憶すると共に、パケットから削除する。削除された変数−値は、第１のサブエージェント用パケット生成部において、第２サブエージェント側で処理されるべきパケットとして、第２のサブエージェント用ＳＮＭＰパケットを生成し、第２のサブエージェント１１０３に対し通知する。同様の制御をＮ−１のサブエージェント１１０４から第Ｎのサブエージェント１１０５に対し繰り返し実行する。第Ｎのサブエージェント１１０５は受信した要求処理を実行した結果をパケット生成し、第Ｎ−１のサブエージェント１１０４に返信し、第Ｎ−１のサブエージェントでは自エージェントで生成した処理結果パケットと、第Ｎやサブエージェントから返信されたパケットから第Ｎ−２サブエージェントに返信すべきパケットを再構築した後、第Ｎ−２サブエージェントに返信する。この制御を第１のサブエージェント１１０２がマスタエージェント１１０１に返信完了するまで繰り返すことによって、２つ以上Ｎ個までのサブエージェントにより、ネットワーク管理情報応答の制御を分散処理することが可能となる。
【００８７】
なお、本発明は、複数の機器（たとえば、ホストコンピュータ、インターフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、１つの機器からなる装置（たとえば、複写機、ファクシミリ装置など）に適用してもよい。
【００８８】
また、本発明の目的は、前述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される。
【００８９】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれる。
【００９０】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明した（図５、７〜１０に示す）フローチャートに対応するプログラムコードが格納されることになる。
【００９１】
【発明の効果】
以上説明したように、本発明によれば、ネットワーク情報管理データベースを格納するのに必要とするメモリ資源を分散して利用することが可能となり、１つのエージェント部に大容量のメモリを備える必要がなくなった。
【００９２】
また、各エージェント間は、ネットワーク情報管理マネージャとネットワーク対応型画像処理装置間で規定された通信プロトコルと同一のプロトコルを使用することによって情報通信を実現でき、ネットワーク制御部−画像処理装置間通信のために複数のプロトコル制御手段を備える必要が無くなった。
【００９３】
さらに、新規に画像処理装置を追加する場合、画像処理装置側のネットワーク管理情報を制御するサブエージェントを追加する作業だけで、ネットワーク管理情報制御部の更新が可能となった。
【図面の簡単な説明】
【図１】マスタエージェント・サブエージェントの構成を示す図である。
【図２】マスタエージェント  ソフトモジュールの構成を示す図である。
【図３】サブエージェント  ソフトモジュールの構成を示す図である。
【図４】ハードウエアの構成を示す図である。
【図５】ネットワーク管理情報手段制御フローを示す図である。
【図６】変数バインディング部解析手順を示す図である。
【図７】プロセスＡ制御フローを示す図である。
【図８】プロセスＡパケット再構築フローを示す図である。
【図９】プロセスＢ制御フローを示す図である。
【図１０】プロセスＢ応答取得パケット受信後の制御フロー示す図である。
【図１１】  １マスタエージェント−Ｎサブエージェント構成を示す図である。
【図１】
0003639770.tif 000002
【図２】
0003639770.tif 000003
【図３】
0003639770.tif 000004
【図４】
0003639770.tif 000005
【図５】
0003639770.tif 000006
【図６】
0003639770.tif 000007
【図７】
0003639770.tif 000008
【図８】
0003639770.tif 000009
【図９】
0003639770.tif 000010
【図１０】
0003639770.tif 000011
【図１１】
0003639770.tif 000012