(57)【要約】【課題】本発明は、受信した検索パケットが所定の転送条件を満たす場合に、当該検索パケットを転送することで、転送による情報漏洩を防止すると共に、デバイス検索の精度を向上させることができる通信装置を提供する。【解決手段】互いに異なるネットワークに各々が接続される複数のネットワークＩ／Ｆを備えるデバイス１００は、検索パケットを第１のＮＩＣ１０８で受信した場合、受信した検索パケットのうち所定の転送条件を満たすものを第２のＮＩＣ１０９から転送する。そして、転送された検索パケットに対する応答パケットを第２のＮＩＣ１０９で受信した場合、受信した応答パケットを第１のＮＩＣ１０８から検索パケットの送信元に転送する。【選択図】図４ｂ
2011114805.tif 000002
【特許請求の範囲】
【請求項１】
互いに異なるネットワークに各々が接続される複数のネットワークインターフェースを備える通信装置において、
前記ネットワークに接続されたデバイスを検索するための検索パケットを前記複数のネットワークインターフェースの一方で受信した場合、前記受信した検索パケットのうち所定の転送条件を満たすものを前記複数のネットワークインターフェースの他方から転送する第１の転送手段と、
前記転送された検索パケットに対する応答パケットを前記複数のネットワークインターフェースの他方で受信した場合、前記受信した応答パケットを前記複数のネットワークインターフェースの一方から前記検索パケットの送信元に転送する第２の転送手段とを備えることを特徴とする通信装置。
【請求項２】
前記受信した検索パケットの検索プロトコルを他の検索プロトコルに変換する第１の変換手段をさらに備え、
前記第１の転送手段は、前記第１の変換手段により他の検索プロトコルに変換された複数の検索パケットを転送することを特徴とする請求項１記載の通信装置。
【請求項３】
前記転送された複数の検索パケットに対して複数の応答パケットを受信したときに同一のデバイスから受信した応答パケットかを判定する判定手段をさらに備え、
前記第２の転送手段は、前記判定手段により同一のデバイスから受信した応答パケットであると判定された場合、受信した応答パケットを転送済みとして転送を行わないことを特徴とする請求項２記載の通信装置。
【請求項４】
前記受信した応答パケットのプロトコルが前記受信した検索パケットの検索プロトコルと異なるときは、前記応答パケットのプロトコルを前記検索プロトコルに変換する第２の変換手段をさらに備え、
前記第２の転送手段は、前記第２の変換手段により変換された応答パケットを転送することを特徴とする請求項１乃至３のいずれか１項に記載の通信装置。
【請求項５】
前記受信した検索パケットの転送を許可する送信元アドレスを前記所定の転送条件として設定させる第１の設定手段をさらに備え、
前記第１の転送手段は、前記受信した検索パケットの送信元アドレスが前記第１の設定手段により設定された転送を許可する送信元アドレスでなかった場合は、前記検索パケットの転送を行わないことを特徴とする請求項１乃至４のいずれか１項に記載の通信装置。
【請求項６】
前記受信した応答パケットの転送を許可する送信元アドレスを前記所定の転送条件として設定させる第２の設定手段をさらに備え、
前記第２の転送手段は、前記受信した応答パケットの送信元アドレスが前記第２の設定手段により設定された転送を許可する送信元アドレスでなかった場合は、前記応答パケットの転送を行わないことを特徴とする請求項１乃至５のいずれか１項に記載の通信装置。
【請求項７】
互いに異なるネットワークに各々が接続される複数のネットワークインターフェースを備える通信装置の通信方法において、
前記ネットワークに接続されたデバイスを検索するための検索パケットを前記複数のネットワークインターフェースの一方で受信した場合、前記受信した検索パケットのうち所定の転送条件を満たすものを前記複数のネットワークインターフェースの他方から転送する第１の転送工程と、
前記転送された検索パケットに対する応答パケットを前記複数のネットワークインターフェースの他方で受信した場合、前記受信した応答パケットを前記複数のネットワークインターフェースの一方から前記検索パケットの送信元に転送する第２の転送工程とを備えることを特徴とする通信方法。
【請求項８】
請求項７記載の通信方法をコンピュータに実行させるためのコンピュータに読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置及び方法、並びにプログラムに関し、特に、異なるネットワークに接続して複数のネットワーク上に存在する通信装置を検索するマルチホーム機能を有する通信装置及び方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、ネットワークに接続された画像形成装置等のデバイスをクライアントＰＣからネットワーク経由で検索（探索）して印刷等に利用することが可能になっている。ネットワーク上のデバイスを検索する技術については、ＷＳＤ（Web Services on Device）、ＳＬＰ（Service Location Protocol）、ＳＮＭＰ（Simple Network Management Protocol）等がある。
【０００３】
ところで、上述したデバイスの検索技術では、ルータで分離された異なるネットワークに跨ってデバイス検索を行うことができないという課題がある。これは、デバイスの検索時に使用されるブロードキャストパケットやマルチキャストパケットがルータを超えて転送されない（マルチキャストパケットは技術的には可能だが運用上超えられない環境が多い）ためである。
【０００４】
上記課題を解決するために、デバイスを一元管理する検索サーバも提案されているが、デバイスやクライアントＰＣが検索サーバのアドレスを自動的に知る手段がない。また、検索用のサーバシステムが構築されていても、あまり利用されていない。
【０００５】
ところで、複数のネットワークインターフェース（Ｉ／Ｆ）を備え、それらで同時に通信することができるマルチホーム機能を有するデバイスが実用化されている。マルチホーム機能を有するデバイスでは、当該機能を利用してマルチキャストパケットをネットワーク間で転送するものがある（例えば、特許文献１参照）。これにより、異なるネットワークのデバイス（サービス）を検索することが可能となる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−３２０７６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来のマルチホーム機能を有するデバイスでは、マルチキャストパケットをすべて転送するため、意図しないパケットを転送することにより情報漏洩のおそれがある。
【０００８】
また、デバイスを検索する手段（プロトコル）は複数存在し、単純にマルチキャストパケットを転送するだけでは、ユーザが使用したいデバイス（サービス）を確実に見つけることができないので、使いづらい面がある。
【０００９】
本発明は、受信した検索パケットが所定の転送条件を満たす場合に、当該検索パケットを転送することで、転送による情報漏洩を防止すると共に、デバイス検索の精度を向上させることができる通信装置及び方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、請求項１記載の通信装置は、互いに異なるネットワークに各々が接続される複数のネットワークインターフェースを備える通信装置において、前記ネットワークに接続されたデバイスを検索するための検索パケットを前記複数のネットワークインターフェースの一方で受信した場合、前記受信した検索パケットのうち所定の転送条件を満たすものを前記複数のネットワークインターフェースの他方から転送する第１の転送手段と、前記転送された検索パケットに対する応答パケットを前記複数のネットワークインターフェースの他方で受信した場合、前記受信した応答パケットを前記複数のネットワークインターフェースの一方から前記検索パケットの送信元に転送する第２の転送手段とを備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、受信した検索パケットが所定の転送条件を満たす場合に、当該検索パケットを転送することで、転送による情報漏洩を防止すると共に、デバイス検索の精度を向上させることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態の一例である画像形成装置のハードウェア構成を示すブロック図である。
【図２】図１のデバイスが存在するネットワーク環境の一例を示す図である。
【図３】デバイスにおける検索処理に関連するソフトウェア構成を示すブロック図である。
【図４ａ】デバイスにおける検索パケット転送処理の一例を示すフローチャートである（その１）。
【図４ｂ】デバイスにおける検索パケット転送処理の一例を示すフローチャートである（その２）。
【図５】検索パケットの転送条件である検索パケット転送許可テーブルの一例を示す図である。
【図６】デバイスが転送した検索パケットを管理するための検索テーブルの一例を示す図である。
【図７】デバイスが受信した検索応答パケットを管理するための検索応答テーブルの一例を示す図である。
【図８】デバイスにおける検索パケットの転送条件を設定するための設定画面の一例を示す図である。
【図９】デバイスにおける検索応答パケットの転送条件を設定するための設定画面の一例を示す図である。
【図１０】デバイスが受信する検索パケットの一例を示す図である。
【図１１】デバイスが送信する検索パケットの一例を示す図である。
【図１２】デバイスが送信する検索応答パケットの一例を示す図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【００１４】
図１は、本発明の実施形態の一例である画像形成装置のハードウェア構成を示すブロック図である。
【００１５】
図１において、画像形成装置（以下、「デバイス」と呼ぶ）１００は、２つのネットワークインターフェース（ネットワークＩ／Ｆ）を備えたプリンタであり、以下に説明する構成要素を備える。
【００１６】
ＣＰＵ１０１は、デバイスのソフトウェアプログラムを実行し、デバイス全体の制御を行なう。ＲＯＭ１０２は、リードオンリーメモリであり、デバイスのブートプログラムや固定パラメータ等が格納されている。ＲＡＭ１０３は、ランダムアクセスメモリであり、ＣＰＵ１０１がデバイスを制御する際に、一時的なデータの格納などに使用される。
【００１７】
ＨＤＤ１０４は、ハードディスクドライブであり、印刷データの格納など、様々なデータの格納に使用される。プリンタＩ／Ｆ制御部１０５は、プリンタ部１１２を制御する装置である。ＮＶＲＡＭ１０６は、不揮発性のメモリであり、デバイス１００の各種設定値を保存する。パネル制御部１０７は、オペレーションパネル１１１を制御し、各種情報の表示、使用者からの指示入力を行なう。
【００１８】
第１のネットワークＩ／Ｆ制御部１０８は、例えば、ネットワークインターフェースカード（ＮＩＣ）であり、ネットワーク１１３に接続し、ネットワーク１１３とのデータの送受信を制御する。以下、第１のネットワークＩ／Ｆ制御部１０８を第１のＮＩＣ１０８と呼ぶ。第２のネットワークＩ／Ｆ制御部１０９は、例えば、ネットワークインターフェースカード（ＮＩＣ）であり、ネットワーク１１４に接続し、ネットワーク１１４とのデータの送受信を制御するＮＩＣである。以下、第２のネットワークＩ／Ｆ制御部１０９を第２のＮＩＣ１０９と呼ぶ。
【００１９】
バス１１０は、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、ＨＤＤ１０４、プリンタＩ／Ｆ制御部１０５、ＮＶＲＡＭ１０６、パネル制御部１０７、第１のＮＩＣ１０８、及び第２のＮＩＣ１０９が接続されている。バス１１０は、ＣＰＵ１０１からの制御信号や各装置間のデータ信号が送受信されるシステムバスである。
【００２０】
図２は、図１のデバイス１００が存在するネットワーク環境の一例を示す図である。なお、デバイス１００の内部構成は図１に示した内部構成よりも一部が省略されている。
【００２１】
デバイス１００は、第１のＮＩＣ１０８によりネットワーク１１３に接続されている。また、第２のＮＩＣ１０９によりネットワーク１１４にも接続されている。ネットワーク１１３とネットワーク１１４は、ルータ２０４を介して接続されている。ＰＣ（パーソナルコンピュータ）２０１とデバイス２０２はネットワーク１１３に接続されている。デバイス２０７はネットワーク１１４に接続されている。
【００２２】
図３は、デバイス１００における検索処理に関連するソフトウェア構成を示すブロック図である。
【００２３】
図３において、パケット受信部３０１は、第１のＮＩＣ１０８又は第２のＮＩＣ１０９でネットワーク１１３，１１４からパケットを受信する処理を行う。
【００２４】
デバイス検索パケット判断部３０２は、パケット受信部３０１が受信したパケットが、予め決められたデバイス検索パケット（以下、単に「検索パケット」と称す）かどうかを判断する。デバイス検索応答パケット判断部３０３は、パケット受信部３０１が受信したパケットが、予め決められたデバイス検索応答パケット（以下、単に「検索応答パケット」と称す）かどうかを判断する。
【００２５】
デバイス検索パケット転送管理部３０４は、受信した検索パケットの転送を行うか否かを判断する。例えば、デバイス検索パケット転送管理部３０４は、設定画面で設定された転送許可ＩＰアドレスや検索パケット転送許可テーブルを参照して、受信した検索パケットの送信元アドレスがあるかどうかを判断し、検索パケットの転送を行うか否かを判断する。
【００２６】
デバイス検索応答パケット転送管理部３０５は、受信した検索応答パケットの転送を行うか否かを判断する。例えば、デバイス検索応答パケット転送管理部３０５は、図９に示す設定画面９００にて設定された転送許可ＩＰアドレスを参照する。そして、受信した検索応答パケットの送信元アドレスがあるかどうかを判断し、検索応答パケットの転送を行うか否かを判断する。
【００２７】
デバイス検索・応答パケット転送管理部３０６は、検索パケットや検索応答パケットの送受信状況を管理し、検索パケットや検索応答パケットの転送処理を制御する。検索パケット管理部３０７は、図６に示すような、受信した検索パケットと転送した検索パケットの対応関係を示す検索テーブル６００を管理する。また、検索パケット管理部３０７は、検索パケットを転送する度に、受信した検索パケットと転送した検索パケットの関連を示すエントリを検索テーブル６００に追加する。検索テーブル６００は、検索応答パケットを受信したときに、どの宛先にどのプロトコルで送信するかを判断するために使用される。
【００２８】
検索プロトコル変換部３０８は、受信した検索パケットや検索応答パケットを所定のプロトコルに変換して、転送用の検索パケットや検索応答パケットを生成する。検索応答パケット管理部３０９は、転送した検索応答パケットを管理する。複数のプロトコルで検索を行った場合、同一のデバイスから複数の応答が返ることが考えられる。その場合、もともとの検索パケット送信先に重複して検索応答を返さないよう制御するために、図７に示すような、検索応答したデバイスを管理する検索応答テーブル７００を保持し、既に検索応答済みであった場合、検索応答を行わない。
【００２９】
パケット送信部３１０は、第１のＮＩＣ１０８又は第２のＮＩＣ１０９からネットワーク１１３，１１４にパケットを送信する処理を行う。
【００３０】
次に、ＰＣ２０１から検索パケットを受信したときのデバイス１００における検索パケットの転送処理について説明する。
【００３１】
図４ａ及び図４ｂは、デバイス１００における検索パケット転送処理の一例を示すフローチャートである。
【００３２】
ステップＳ４０１では、パケット受信部３０１は、第１のＮＩＣ１０８でＰＣ２０１からの検索パケット（１）を受信する。受信する検索パケットの一例を図１０に示す。検索パケットには検索ＩＤがセットされているが、ここでは、検索パケット（１）の検索ＩＤをオリジナル検索ＩＤと呼ぶ。検索パケットかどうかは、デバイス検索パケット判断部３０２により判断される。
【００３３】
次に、ステップＳ４０２では、デバイス検索・応答パケット転送管理部３０６は、検索パケット（１）に対する検索応答パケットを第１のＮＩＣ１０８からＰＣ２０１に送信する。
【００３４】
ステップＳ４０３では、デバイス検索パケット判断部３０２は、検索パケット（１）を受信してから所定時間経過するまでに第２のＮＩＣ１０９で検索パケット（１）と同じ検索パケットを受信したか否かを判定する。この判定の結果、同じ検索パケットを受信した場合は、検索パケットがルータ２０４経由で転送されていると判断して、本処理を終了する。一方、受信しなかった場合は、ステップＳ４０４へ移行する。
【００３５】
ステップＳ４０４では、デバイス検索パケット転送管理部３０４は、図５に示す検索パケット転送許可テーブル５００と図８に示す設定画面８００で設定されたＩＰアドレス情報を参照し、これらの転送条件を検索パケット（１）が満足するか否かを判定する。なお、検索パケット転送許可テーブル５００と設定画面８００の詳細については後述する。
【００３６】
ステップＳ４０４の判定の結果、転送条件を満足している場合は、パケット送信部３１０は、検索パケット（１）と同じプロトコルを用いて第２のＮＩＣ１０９から検索パケット（１）を転送する。ステップＳ４０４は、第１の転送手段の一例である。送信する検索パケットの一例を図１１に示す。例えば、検索パケット（１）のプロトコルがＳＬＰの場合は、検索パケット（１）はＳＬＰで転送される。
【００３７】
さらに、ステップＳ４０４では、デバイス検索・応答パケット転送管理部３０６は、検索パケットの検索プロトコルをデバイス１００がサポートする他の検索プロトコルに変換し、変換された検索パケットをパケット送信部３１０が第２のＮＩＣ１０９から送信する。例えば、検索パケット（１）のプロトコルがＳＬＰの場合、検索パケット（１）に対応するＳＮＭＰやＣＰＣＡ等の検索パケットが生成され、転送される。転送した検索パケットには、プロトコルの種類に関わらず、同じＩＤが転送検索ＩＤとして、デバイス検索・応答パケット転送管理部３０６により付加される。本実施の形態では、転送検索ＩＤは、図６に示すように、１〜６の数字で付与されているが、この形式に限定されるものではなく、転送した検索パケットが識別可能であれば、どのような識別情報であってもよい。ステップＳ４０４は、第１の変換手段の一例である。
【００３８】
次に、ステップＳ４０５では、検索パケット管理部３０７は、転送した検索パケットに関する所定の情報を図６に示す検索テーブル６００に登録する。なお、検索テーブル６００の詳細については後述する。
【００３９】
次に、ステップＳ４０７〜ステップＳ４１４の処理を所定時間繰り返して、第２のＮＩＣ１０９から転送した検索パケットに対する検索応答パケットの受信処理を行う。
【００４０】
ステップＳ４０７において、パケット受信部３０１が、第２のＮＩＣ１０９で検索応答パケット（２）を受信すると、ステップＳ４０８へ移行する。ステップＳ４０８では、デバイス検索応答パケット判断部３０３が、図６に示す検索テーブル６００を参照し、検索応答パケット（２）に含まれる転送検索ＩＤからオリジナル検索ＩＤを取得する。さらに、検索応答パケット（２）の送信元である検索応答デバイスのＩＰを取得する。
【００４１】
次に、ステップＳ４０９では、検索応答パケット管理部３０９は、例えば、図７に示すオリジナル検索ＩＤの検索応答テーブル７００に、ステップＳ４０８で取得された検索応答デバイスのＩＰが登録されているか否かを判定する。なお、検索応答テーブル７００の詳細については後述する。
【００４２】
ステップＳ４０９の判定の結果、オリジナル検索ＩＤの検索応答テーブル７００に検索応答デバイスのＩＰが登録されている場合は、既に検索応答パケットが転送済みであることから、何もせずに検索応答パケットの受信待ち状態に戻る。一方、オリジナル検索ＩＤの検索応答テーブル７００に検索応答デバイスのＩＰが登録されていない場合は、ステップＳ４１０へ移行する。
【００４３】
ステップＳ４１０では、検索パケット管理部３０７は、オリジナル検索ＩＤの検索応答テーブル７００に、ステップＳ４０８で取得された検索応答デバイスのＩＰを登録する。ステップＳ４１１では、デバイス検索・応答パケット転送管理部３０６は、転送検索ＩＤに基づいて検索テーブル６００を参照し、検索応答パケット（２）のプロトコルがオリジナル（もともとの）検索プロトコルと同じであるか否かを判定する。同じである場合は、ステップＳ４１３へ移行する。一方、同じでない場合は、ステップＳ４１２へ移行する。
【００４４】
ステップＳ４１２では、検索プロトコル変換部３０８は、オリジナルの検索プロトコルに変換した検索応答パケット（３）を生成する。ステップＳ４１２は、第２の変換手段の一例である。
【００４５】
ステップＳ４１３では、パケット送信部３１０は、検索応答パケット（２）又は（３）を第１のＮＩＣ１０８から送信する。検索応答パケット（２）を送信するときは、オリジナルの検索プロトコルと検索応答パケット（２）のプロトコルが同じであった場合である。検索応答パケット（３）を送信するときは、オリジナルの検索プロトコルと検索応答パケット（２）のプロトコルが異なっていた場合である。また、ステップＳ４１３では、デバイス検索・応答パケット転送管理部３０６は、送信元のＩＰアドレスに検索応答パケット（２）の送信元アドレスをセットし、送信元ＭＡＣアドレスにデバイス１００のＭＡＣアドレスをセットする。ステップＳ４１３は、第２の転送手段の一例である。
【００４６】
ステップＳ４１４では、デバイス検索・応答パケット転送管理部３０６は、検索パケットを転送した後、所定時間が経過したか否かを判定し、所定時間が経過していないときは、ステップＳ４０７へ戻る一方、所定時間が経過したときは、本処理を終了する。
【００４７】
なお、上記処理では、ネットワーク１１３上のＰＣ２０１から第１のＮＩＣ１０８で検索パケットを受信して、第２のＮＩＣ１０９からネットワーク１１４へ検索パケットを転送する場合について説明したが、これに限定されない。例えば、ネットワーク１１４上のＰＣやデバイスから第２のＮＩＣ１０９で検索パケットを受信し、第１のＮＩＣ１０８からネットワーク１１３へ転送することも可能である。
【００４８】
図５は、検索パケットの転送条件である検索パケット転送許可テーブルの一例を示す図である。
【００４９】
検索タイプ５０５は、検索パケットのプロトコルの種類毎に、ＳＬＰ検索５０１、ＳＮＭＰ検索５０２、ＣＰＣＡ（Common Peripherals Controling Architecture）検索５０３、及びＷＳＤ検索５０４に分けられている。転送条件として、これらの検索タイプのパケットで、さらにデバイスを検索するパケットである場合にのみ、検索パケットの転送を行う。各検索タイプの転送条件は、Ｉ／Ｆ間で転送する検索パケット５０６に定義されている。
【００５０】
ＳＬＰ検索５０１の場合の転送条件は、宛先（送信先アドレス）がマルチキャストアドレス、送信先ポートが４２７であることとなっている。加えて、ＳＬＰのパケットのデータエリアにセットできる検索属性であるservice typeが「ｐｒｉｎｔｅｒ」、ｓｃｏｐｅが「ｘｘｘ」であることも転送条件となる。これにより、例えば、ｘｘｘ社製のデバイスから受信した検索パケットのみを転送するようにできる。
【００５１】
ＳＮＭＰ検索５０２の場合の転送条件は、宛先（送信先アドレス）がブロードキャストアドレス、送信先ポートが１６１であることとなっている。ＣＰＣＡ検索５０３の場合の転送条件は、宛先（送信先アドレス）がブロードキャストアドレス、送信先ポートが４７５４５であるとなっている。加えて、ＣＰＣＡヘッダがｂ９ｂ９であることも転送条件となる。これにより、不正なＣＰＣＡパケットの転送を抑制することができる。ＷＳＤ検索５０４の場合の転送条件は、宛先（送信先アドレス）がマルチキャストアドレス、送信先ポートが８０であることとなっている。
【００５２】
上述した検索パケットを受信した場合に、別のネットワークＩ／Ｆから転送する検索パケットの種別が、デバイスが別Ｉ／Ｆから実施する検索５０７に定義されている。図示例では、それぞれの検索タイプを受信すると、すべての検索タイプで検索を行うように定義されている。
【００５３】
図６は、デバイス１００が転送した検索パケットを管理するための検索テーブル６００の一例を示す図である。
【００５４】
検索テーブル６００では、受信したオリジナル（もともと）の検索プロトコルや検索元アドレスと転送した検索パケットとの対応が管理される。検索テーブル６００は、転送先ネットワークから検索応答パケットを受信したときに、オリジナルの検索プロトコル、送信先アドレスを知るために使用される。
【００５５】
オリジナル検索ＩＤ６０１は、転送した検索パケットのオリジナル検索パケットの検索ＩＤを示す。オリジナル検索プロトコル６０２は、オリジナル検索パケットの検索プロトコルを示す。オリジナル検索送信元ＩＰアドレス６０３は、オリジナル検索パケットの送信元アドレスを示す。
【００５６】
転送検索ＩＤ６０４は、転送した検索パケットの検索ＩＤを示す。この検索ＩＤは、検索テーブル６００の中でＩＤが重複せず、一意の値になるように、デバイス１００により生成される。転送検索プロトコル６０５は、転送した検索パケットのプロトコルを示す。
【００５７】
デバイス１００は、検索パケットを転送する度に検索テーブル６００にエントリを追加する。一方、上述した図４ｂのステップＳ４１４にて、検索応答パケットの受信処理を行うために予め設定された所定時間が経過すると（ステップＳ４１４でＹＥＳ）、タイムアウトしたオリジナル検索ＩＤを持つエントリが削除される。
【００５８】
図７は、デバイス１００が受信した検索応答パケットを管理するための検索応答テーブル７００の一例を示す図である。
【００５９】
検索応答テーブル７００は、オリジナル検索ＩＤ毎に存在する。検索応答テーブル７００は、検索応答パケットを転送する際に、重複して検索応答パケットを返さないために、検索応答パケットの転送状況を管理するためのテーブルである。ここにエントリがあるデバイスからの検索応答パケットは転送済みであることを示す。
【００６０】
検索応答デバイス７０２は、検索応答パケットを返信したデバイスのＩＰアドレスを示す。検索応答テーブル７００のエントリは、検索応答パケットを受信する度に追加される。ただし、検索応答テーブル７００に既に検索応答デバイスが登録されている場合、登録は行われない。一方、上述した図４ｂのステップＳ４１４にて、検索応答パケットの受信処理を行うために予め設定された所定時間が経過すると（ステップＳ４１４でＹＥＳ）、一致するオリジナル検索ＩＤ７０１の検索応答テーブル７００が削除される。
【００６１】
次に、デバイス１００における検索パケットや検索応答パケットの転送条件の設定方法について説明する。
【００６２】
デバイス１００では、図８及び図９に示すような設定画面をオペレーションパネル１１１に表示し、ユーザが検索パケットや検索応答パケットの転送条件を設定することができる。以下に説明する設定画面は、オペレーションパネル１１１に対する所定の操作指示に応じて、ＣＰＵ１０１が所定の処理を実行することで表示される。
【００６３】
図８は、デバイス１００における検索パケットの転送条件を設定するための設定画面の一例を示す図である。
【００６４】
検索パケット転送許可発信元アドレス表示欄８０１には、現在検索パケットの転送が許可されている発信元アドレス（ＩＰアドレス）の一覧が表示される。ユーザは、アドレス追加欄８０２にＩＰアドレスを入力して追加ボタン８０４を押すと、転送許可発信元アドレスを追加することができる。追加されたアドレスは、検索パケット転送許可発信元アドレス表示欄８０１に表示される。
【００６５】
一方、ユーザは、検索パケット転送許可発信元アドレス表示欄８０１のチェックボックス８０５にチェックした状態で削除ボタン８０３を押すと、チェックされたアドレスが検索パケット転送許可発信元アドレス表示欄８０１から削除される。この結果、削除された発信元アドレスから受信した検索パケットについては、検索パケットが転送されることはない。設定画面８００は、第１の設定手段の一例である。
【００６６】
図９は、デバイス１００における検索応答パケットの転送条件を設定するための設定画面の一例を示す図である。
【００６７】
検索応答パケット転送許可発信元アドレス表示欄９０１には、現在検索応答パケットの転送が許可されている発信元アドレス（ＩＰアドレス）の一覧が表示される。ユーザは、アドレス追加欄９０２にＩＰアドレスを入力して追加ボタン９０４を押すと、転送許可発信元アドレスを追加することができる。追加されたアドレスは、検索応答パケット転送許可発信元アドレス表示欄９０１に表示される。
【００６８】
一方、ユーザは、検索応答パケット転送許可発信元アドレス表示欄９０１のチェックボックス９０５にチェックした状態で削除ボタン９０３を押すと、チェックされたアドレスが検索応答パケット転送許可発信元アドレス表示欄９０１から削除される。この結果、削除された発信元アドレスから受信した検索応答パケットについては、検索応答パケットが転送されることはない。設定画面９００は、第２の設定手段の一例である。
【００６９】
図１０は、デバイス１００が受信する検索パケット（ＳＬＰ）の一例を示す図である。
【００７０】
図１０において、宛先Ｅｔｈｅｒアドレス１００１には、ＳＬＰマルチキャストアドレスがセットされている。発信元Ｅｔｈｅｒアドレス１００２には、本検索パケットの送信元であるＰＣ２０１のアドレスがセットされている。発信元ＩＰアドレス１００３には、本検索パケットの送信元であるＰＣ２０１のアドレスがセットされている。宛先ＩＰアドレス１００４には、ＳＬＰマルチキャストアドレスがセットされている。Ｘｉｄ１００５には、検索ＩＤがセットされている。図示のパケットは検索パケットなので、Ｘｉｄ１００５にセットされた値が本実施形態におけるオリジナル検索ＩＤとなる。
【００７１】
図１１は、デバイス１００が送信する検索パケット（ＳＬＰ）の一例を示す図である。
【００７２】
図示例は、図１０に示す検索パケットをネットワーク１１３から第１のＮＩＣ１０８で受信して、第２のＮＩＣ１０９からネットワーク１１４へ転送される検索パケットである。
【００７３】
図１１において、宛先Ｅｔｈｅｒアドレス１１０１には、ＳＬＰマルチキャストアドレスがセットされている。発信元Ｅｔｈｅｒアドレス１１０２には、デバイス１００のアドレスがセットされている。発信元ＩＰアドレス１１０３には、デバイス１００のアドレスがセットされている。宛先ＩＰアドレス１１０４には、ＳＬＰマルチキャストアドレスがセットされている。Ｘｉｄ１１０５には、検索ＩＤがセットされている。図示のパケットは転送された検索パケットなので、Ｘｉｄ１１０５にセットされた値が本実施形態における転送検索ＩＤとなる。この値はデバイス１００が一意な値として生成したものである。
【００７４】
図１２は、デバイス１００が送信する検索応答パケット（ＳＬＰ）の一例を示す図である。
【００７５】
図示例は、図１１に示す検索パケットに対してデバイス２０７から返信され、第２のＮＩＣ１０９で受信した検索応答パケットであって、第１のＮＩＣ１０８からネットワーク１１３上の送信元のＰＣ２０１に転送される検索応答パケットを示している。
【００７６】
図１２において、宛先Ｅｔｈｅｒアドレス１２０１には、オリジナル検索パケットの送信元であるＰＣ２０１のアドレスがセットされている。発信元Ｅｔｈｅｒアドレス１２０２には、デバイス１００のアドレスがセットされている。発信元ＩＰアドレス１２０３には、デバイス２０７のアドレスがセットされている。宛先ＩＰアドレス１２０４には、オリジナル検索パケットの送信元であるＰＣ２０１のアドレスがセットされている。Ｘｉｄ１２０５には、オリジナル検索ＩＤがセットされる。
【００７７】
上記実施形態によれば、デバイス１００では、検索パケットを一方のネットワークＩ／Ｆから受信した場合、所定の転送条件を満たす検索パケットのみを他方のネットワークＩ／Ｆから転送する。転送する際には、検索パケットをデバイス１００がサポートするプロトコルに変換する。そして、転送した検索パケットに対する検索応答パケットを他方のネットワークＩ／Ｆで受信した場合、検索応答テーブル７００に基づいて所定の検索応答パケットのみを一方のネットワークＩ／Ｆから検索パケットの送信元に転送する。転送する際には、検索応答パケットを検索パケットのプロトコルに合わせて変換する。このように転送するパケットを特定のパケットに限定することにより、情報漏洩のおそれがなくなり、さらに複数のデバイス検索方式で自動的にデバイス検索を実行することにより、確実にデバイスを検索することが可能となる。
【００７８】
上記実施形態では、本発明を画像形成装置に適用した形態について説明したが、これに限定されるものではなく、通信装置や通信機能を有する情報処理装置、端末等であってもよいことは云うまでもない。
【００７９】
また、デバイス１００は、ネットワーク１１３，１１４の有線ネットワークに接続されていたが、無線通信機能を備え、異なる無線通信方式により複数のネットワークに接続可能な構成であっても、本発明を実現可能である。
【００８０】
また、上記実施形態では、ＳＬＰ検索を用いた場合について説明したが、これに限定されるものではなく、ＳＮＭＰ、ＣＰＣＡ、ＷＳＤであっても構わないし、他の検索方法であっても本発明の適用が可能であることは云うまでもない。
【００８１】
本発明の実施の形態は、ネットワーク又は各種記憶媒体を介して取得したソフトウェア（プログラム）をパーソナルコンピュータ（ＣＰＵ，プロセッサ）にて実行することでも実現できる。
【符号の説明】
【００８２】
１  画像形成装置（デバイス）
１０８  第１のネットワークＩ／Ｆ制御部（第１のＮＩＣ）
１０９  第２のネットワークＩ／Ｆ制御部（第２のＮＩＣ）
１１３，１１４  ネットワーク
３０１  パケット受信部
３０２  デバイス検索パケット判断部
３０３  デバイス検索応答パケット判断部
３０６  デバイス検索・応答パケット転送管理部
３０７  検索パケット管理部３０７
３０８  検索プロトコル変換部
【図１】
2011114805.tif 000003
【図２】
2011114805.tif 000004
【図３】
2011114805.tif 000005
【図４ａ】
2011114805.tif 000006
【図４ｂ】
2011114805.tif 000007
【図５】
2011114805.tif 000008
【図６】
2011114805.tif 000009
【図７】
2011114805.tif 000010
【図８】
2011114805.tif 000011
【図９】
2011114805.tif 000012
【図１０】
2011114805.tif 000013
【図１１】
2011114805.tif 000014
【図１２】
2011114805.tif 000015