(57)【特許請求の範囲】
【請求項１】
複数のネットワークインターフェースを備える通信装置において、
デバイスを探索するための探索パケットを、前記複数のネットワークインターフェースのいずれかを介して受信する受信手段と、
前記受信手段が受信した探索パケットを示す情報と一致する情報が保存手段に保存されているか否かを判定する判定手段と、
前記受信手段が受信した探索パケットに応答する際に使用するネットワークインターフェースを、前記複数のネットワークインターフェースの中から選択する選択手段と、
前記受信手段が受信した探索パケットに対する応答メッセージを作成する作成手段と、
前記判定手段により前記情報が前記保存手段に保存されていると判定された場合に、前記作成手段により作成された応答メッセージを、前記選択手段により選択されたネットワークインターフェースを介して送信し、前記判定手段により前記情報が前記保存手段に保存されていないと判定された場合に、前記受信手段が受信した探索パケットを示す情報を前記保存手段に保存する制御手段とを備えることを特徴とする通信装置。
【請求項２】
複数のネットワークインターフェースを備える通信装置において、
デバイスを探索するための探索パケットを、前記複数のネットワークインターフェースのいずれかを介して受信する受信手段と、
前記受信手段が受信した探索パケットを示す情報と一致する情報が保存手段に保存されているか否かを判定する判定手段と、
前記受信手段が受信した探索パケットに対する応答メッセージを作成する作成手段と、
前記判定手段により前記情報が前記保存手段に保存されていないと判定された場合に、前記作成手段により作成された応答メッセージを前記探索パケットの受信に使用したネットワークインターフェースを介して送信するとともに、前記探索パケットを示す情報を前記保存手段に保存する制御手段とを備えることを特徴とする通信装置。
【請求項３】
前記判定手段により前記情報が前記保存手段に保存されていると判定された場合に、前記受信手段が受信した探索パケットを破棄する破棄手段をさらに備えることを特徴とする請求項２記載の通信装置。
【請求項４】
前記判定手段により前記情報が前記保存手段に保存されていると判定された場合に、前記制御手段は、前記受信手段が受信した探索パケットに対する応答メッセージを送信しないことを特徴とする請求項２又は３記載の通信装置。
【請求項５】
複数のネットワークインターフェースを備える通信装置の通信方法において、
デバイスを探索するための探索パケットを、前記複数のネットワークインターフェースのいずれかを介して受信する受信工程と、
前記受信工程で受信した探索パケットを示す情報と一致する情報が保存手段に保存されているか否かを判定する判定工程と、
前記受信工程で受信した探索パケットに応答する際に使用するネットワークインターフェースを、前記複数のネットワークインターフェースの中から選択する選択工程と、
前記受信工程で受信した探索パケットに対する応答メッセージを作成する作成工程と、
前記判定工程により前記情報が前記保存手段に保存されていると判定された場合に、前記作成工程により作成された応答メッセージを、前記選択工程により選択されたネットワークインターフェースを介して送信し、前記判定工程により前記情報が前記保存手段に保存されていないと判定された場合に、前記受信工程で受信した探索パケットを示す情報を前記保存手段に保存する制御工程とを備えることを特徴とする通信装置の通信方法。
【請求項６】
複数のネットワークインターフェースを備える通信装置の通信方法において、
デバイスを探索するための探索パケットを、前記複数のネットワークインターフェースのいずれかを介して受信する受信工程と、
前記受信工程で受信した探索パケットを示す情報と一致する情報が保存手段に保存されているか否かを判定する判定工程と、
前記受信工程で受信した探索パケットに対する応答メッセージを作成する作成工程と、
前記判定工程により前記情報が前記保存手段に保存されていないと判定された場合に、前記作成工程で作成された応答メッセージを前記探索パケットの受信に使用したネットワークインターフェースを介して送信するとともに、前記探索パケットを示す情報を前記保存手段に保存する制御工程とを備えることを特徴とする通信装置の通信方法。
【請求項７】
請求項５又は６記載の通信装置の通信方法をコンピュータに実行させるためのコンピュータで読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置及び通信装置の通信方法並びにプログラムに関し、特に、ブロードキャストやマルチキャストを利用したデバイス探索に対して、複数のネットワークインターフェースカード（ＮＩＣ）を備えた通信装置が応答する場合の探索応答方法に関する。
【背景技術】
【０００２】
従来、ネットワークに接続された画像形成装置等のデバイスでは、ネットワーク上の他のデバイスやパーソナルコンピュータ（ＰＣ）等からの利用が可能になっている。例えば、ＰＣから画像形成装置に対してネットワークを介して印刷データを送信し、画像形成装置に印刷を行わせることができる。
【０００３】
このようなネットワーク環境では、利用者は、必要に応じてデバイスやＰＣからネットワーク上の他のデバイスを探索して使用することが可能になっている。ネットワーク上のデバイスの探索を実現する技術として、ＷＳＤ（Web Services on Device）、ＳＬＰ（Service Location Protocol）、ＳＮＭＰ（Simple Network Management Protocol）等がある。これらの技術では、探索側からブロードキャストやマルチキャストなどの探索パケットを送信し、該探索パケットを受信した被探索側が応答パケットを返信することによって実現されるものが多い。
【０００４】
近年、上述したデバイス探索は、ルーターを介して行うことが可能になっている。また、複数のネットワークインターフェースカード（ＮＩＣ）を備えた画像形成装置などのデバイスをネットワークに接続して利用することが可能になっている。これによって、画像形成装置に有線ＮＩＣと有線ＮＩＣ、有線ＮＩＣと無線ＮＩＣ、無線ＮＩＣと無線ＮＩＣという形態で２個のＮＩＣを取り付け、それぞれを同一もしくは別のネットワークに接続することで、より柔軟で多岐に渡る利用方法が考えられている。
【０００５】
しかしながら、複数のＮＩＣを持ったデバイスが上記デバイス探索技術において被探索デバイスとなった場合、当該デバイスが複数のＮＩＣで同時に同一の探索パケットを受信する場合がある。このような場合、各ＮＩＣからそれぞれ応答パケットを探索デバイスに返信することから、探索デバイスには同一デバイスであるにもかかわらず、複数の探索結果が得られる。その結果、利用者は、どれを使用してよいか混乱してしまうという問題がある。これは、上記デバイス探索技術が、複数のＮＩＣを持ったデバイスの存在を前提としていないために起きている。
【０００６】
そこで、上記問題を解決する方法として、従来のルーターで行われているように送信するＮＩＣを記憶しておく方法が提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００２−１８５４９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記特許文献１に記載された方法では、ある探索デバイスに対して常に同じＮＩＣを選択してしまうことになる。その結果、デバイス探索を行う目的に合致しないＮＩＣが選択されてしまう可能性がある。例えば、画像形成装置において、設定値一式のような巨大なデータを他のデバイスに送って設定値をコピーする目的で、送り先のデバイスを探索する場合、探索側と被探索側の応答を返すＮＩＣは可能な限り近い位置にいる方が効率がよい。それにもかかわらず、単に送信するＮＩＣを記憶しておくだけでは、遠い位置関係のＮＩＣから応答パケットを送信してしまう可能性がある。ここでいう位置とは、例えばＩＰｖ４ではサブネットマスクで判断でき、ＩＰｖ６ではアドレスのプレフィックスで判断することができる、ネットワーク上の位置関係である。
【０００９】
本発明は、複数のＮＩＣを備え、探索パケットに対して応答することが可能なデバイスが、複数のＮＩＣで同一の探索パケットを受信した場合でも、探索側が単一の結果だけを得ることができ、利用者の混乱を軽減できる通信装置及び通信装置の通信方法並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、請求項１記載の通信装置は、複数のネットワークインターフェースを備える通信装置において、デバイスを探索するための探索パケットを、前記複数のネットワークインターフェースのいずれかを介して受信する受信手段と、前記受信手段が受信した探索パケットを示す情報と一致する情報が保存手段に保存されているか否かを判定する判定手段と、前記受信手段が受信した探索パケットに応答する際に使用するネットワークインターフェースを、前記複数のネットワークインターフェースの中から選択する選択手段と、前記受信手段が受信した探索パケットに対する応答メッセージを作成する作成手段と、前記判定手段により前記情報が前記保存手段に保存されていると判定された場合に、前記作成手段により作成された応答メッセージを、前記選択手段により選択されたネットワークインターフェースを介して送信し、前記判定手段により前記情報が前記保存手段に保存されていないと判定された場合に、前記受信手段が受信した探索パケットを示す情報を前記保存手段に保存する制御手段とを備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、探索パケットに対して応答することが可能であるデバイスが、複数のＮＩＣで同一の探索パケットを受信した場合に、一方のＮＩＣを選択して応答するため、探索側は単一の結果だけを得ることができ、利用者の混乱が軽減される。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１の実施形態の一例である画像形成装置のハードウェア構成を示すブロック図である。
【図２】図１のデバイスを利用した印刷システムの構成例を示す図である。
【図３】デバイスにおける探索処理に関連するソフトウェア構成を示すブロック図である。
【図４】ＰＣからＳＬＰを利用してデバイス探索を行う際の探索パケットの一例を示す図である。
【図５】ＰＣからＷＳＤを利用してデバイス探索を行うときに使用される探索パケットの一例を示す図である。
【図６】（ａ）は図４に示す探索パケットの応答として第１のＮＩＣから返信する応答パケットの内容を示す図、（ｂ）は図４に示す探索パケットの応答として第２のＮＩＣから返信する応答パケットの内容を示す図である。
【図７】図５に示す探索パケットの応答として第１のＮＩＣから返信する応答パケットの内容を示す図である。
【図８】図５に示す探索パケットの応答として第２のＮＩＣから返信する応答パケットの内容を示す図である。
【図９】探索パケット処理部で行われる探索パケットに対する応答パケットの送信処理の流れを示すフローチャートである。
【図１０】応答送信タイマーにより実行される応答パケット送信処理の流れを示すフローチャートである。
【図１１】デバイス探索パケット情報保持部に保持される探索パケット情報の内容例を示す図である。
【図１２】応答送信ＮＩＣ判断部により実行されるＮＩＣ選択処理の流れを示すフローチャートである。
【図１３】本発明の第２の実施形態の一例であるデバイスの探索処理に関連するソフトウェア構成を示すブロック図である。
【図１４】第２の実施形態における、探索パケットに対する応答パケットの送信処理の流れを示すフローチャートである。
【図１５】本発明の第３の実施形態の一例であるデバイスの探索処理に関連するソフトウェア構成を示すブロック図である。
【図１６】第３の実施形態における、探索パケットに対する応答パケットの送信処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【００１４】
［第１の実施形態］
図１は、本発明の第１の実施形態の一例である画像形成装置のハードウェア構成を示すブロック図である。
【００１５】
図１において、画像形成装置（以下、「デバイス」と呼ぶ）１００は、２つのネットワークインターフェースを備えたプリンタであり、以下に説明する構成要素を備える。
【００１６】
ＣＰＵ１０１は、デバイスのソフトウェアプログラムを実行し、デバイス全体の制御を行なう。ＲＯＭ１０２は、リードオンリーメモリであり、デバイスのブートプログラムや固定パラメータ等が格納されている。ＲＡＭ１０３は、ランダムアクセスメモリであり、ＣＰＵ１０１がデバイスを制御する際に、一時的なデータの格納などに使用される。
【００１７】
ＨＤＤ１０４は、ハードディスクドライブであり、印刷データの格納など、様々なデータの格納に使用される。プリンタＩ／Ｆ制御部１０５は、プリンタ部１１２を制御する装置である。ＮＶＲＡＭ１０６は、不揮発性のメモリであり、装置の各種設定値を保存するためのものである。パネル制御部１０７は、オペレーションパネル１１１を制御し、各種情報の表示、使用者からの指示入力を行なう。
【００１８】
第１のネットワークＩ／Ｆ制御部１０８は、ネットワーク１１３に接続し、ネットワーク１１３とのデータの送受信を制御するネットワークインターフェースカード（ＮＩＣ）である。以下、第１のネットワークＩ／Ｆ制御部１０８を第１のＮＩＣ１０８と呼ぶ。第２のネットワークＩ／Ｆ制御部１０９は、ネットワーク１１４に接続し、ネットワーク１１４とのデータの送受信を制御するＮＩＣである。以下、第２のネットワークＩ／Ｆ制御部１０９を第２のＮＩＣ１０９と呼ぶ。
【００１９】
ネットワーク１１３とネットワーク１１４は同一のネットワークであっても、別個のネットワークであってもよい。バス１１０は、上述した各部を接続して、ＣＰＵ１０１からの制御信号や各装置間のデータ信号が送受信されるシステムバスである。
【００２０】
図２は、図１のデバイス１００を利用した印刷システムの構成例を示す図である。なお、デバイス１００の内部構成は図１に示した内部構成よりも一部が省略されている。
【００２１】
デバイス１００において、第１のＮＩＣ１０８は、ネットワーク１１３に接続されており、第２のＮＩＣ１０９はネットワーク１１４に接続されている。本実施形態では、ネットワーク１１４は、ネットワーク１１３より広域的なネットワークとし、第２のＮＩＣは第１のＮＩＣよりもよりグローバルに使用することができるアドレスを持っているものとする。
【００２２】
一方、ネットワーク１１３は、ネットワーク１１４に比べてローカルなアドレスしか持たないが、ルーター２０１とネットワーク２０２を介してネットワーク１１４と繋がっている。また、ネットワーク１１３には、ＰＣ２０４、ＰＣ２０５、デバイス２０６、ルーター２０１が接続されている。
【００２３】
ＰＣ２０４は、例えば、卓上型のパーソナルコンピュータであり、ＰＣ２０５は、例えば、ノート型のパーソナルコンピュータである。デバイス２０６は、例えば、図１のデバイス１００と同型の画像形成装置である。なお、デバイス２０６は、デバイス１００のように複数のＮＩＣを備えていてもよいが、本実施形態では、単一のＮＩＣを備えるものとする。
【００２４】
ルーター２０１はマルチキャストパケットを異なるネットワークに転送する機能を持つ。図示例のネットワークでは、例えば、ネットワーク１１３が事業所のＬＡＮであり、ネットワーク１１４が事業所間を接続した社内ＬＡＮである。本実施の形態では、ローカルなネットワーク（例えば、ネットワーク１１３）が１９２．１６８．０．０のサブネットマスクを持つネットワークとする。より広域的なネットワーク（例えば、ネットワーク１１４）が２２０．２２０．０．０のサブネットマスクを持つネットワークとする。
【００２５】
次に、ＰＣ２０４，２０５、デバイス２０６等からデバイス１００を探索する際の探索処理について説明する。
【００２６】
本実施形態では、ＰＣ２０４，２０５、及びデバイス２０６は、ネットワーク上でデバイス１００を利用するデバイスである。これらは探索側デバイスであって、デバイス１００が被探索デバイスとする。なお、探索処理は、どのＰＣやデバイスからでも同じ処理が実行されるので、ここではＰＣ２０４からデバイス１００を探索する際の探索処理について説明する。探索するためのプロトコルとしてＳＬＰとＷＳＤを例として説明するが、他のプロトコルであっても同様である。
【００２７】
図３は、デバイス１００における探索処理に関連するソフトウェア構成を示すブロック図である。なお、図示例には、一部の構成要素にハードウェア構成（第１のＮＩＣ１０８、第２のＮＩＣ１０９）が含まれている。
【００２８】
図３において、デバイス１００は、探索パケット処理部１２００、パケット受信部１２０１、デバイス探索アプリケーション１２０２を備える。
【００２９】
パケット受信部１２０１は、第１のＮＩＣ１０８や第２のＮＩＣ１０９が受信したデータ（例えば、探索パケット）を受け取り、低位のプロトコル処理を施してデバイス探索アプリケーション１２０２に渡す。低位のプロトコル処理とは、ＴＣＰ／ＩＰに代表されるようなＯＳＩ参照モデルにおける低位の処理であり、通常はＯＳに含まれるプロトコルスタックによって行われる処理である。この段階でＩＰヘッダ、ＴＣＰヘッダ、ＵＤＰヘッダなどの処理が行われる。
【００３０】
従来は、探索パケットを受信したデバイス探索アプリケーション１２０２が、受信後すぐに応答を返信していた。本実施形態では、探索パケットを受信した後の処理を探索パケット処理部１２００で行う点が従来と異なる。
【００３１】
デバイス探索アプリケーション１２０２は、探索パケットを受信した後、当該探索パケットの情報を探索パケット処理部１２００に委ねる。探索パケット処理部１２００は、第１のＮＩＣ１０８または第２のＮＩＣ１０９のいずれか一方で受信した探索パケットに含まれているプロトコルデータを解析し、解析したデータを一時保存する。そして、他方のＮＩＣから受信ＮＩＣ以外の情報が同じ探索パケットを受信したことを検知すると、応答を返信するのに適切なＮＩＣを選択し、応答の送信処理を行う。本実施形態では、一方のＮＩＣから受信した探索パケットの情報を保持する領域として、デバイス探索パケット情報保持部１２０６を備える。デバイス探索パケット情報保持部１２０６には、探索パケットの受信履歴が探索パケット情報として、図１１に示すようなテーブル形式で一定時間保存・管理される。
【００３２】
本実施形態では、図１１に示すように、デバイス探索パケット情報保持部１２０６に保持する内容を、受信したＮＩＣ、探索プロトコル、送信元アドレス、送信先アドレス、探索プロトコルのデータとするが、それら以外のデータを保持するように構成してもよい。また、デバイス探索パケット情報保持部１２０６には、不揮発性の記憶領域を使用してもよいし、揮発性の記憶領域を使用してもよい。
【００３３】
図３において、デバイス探索パケット情報管理部１２０５は、デバイス探索パケット情報保持部１２０６を管理し、他からの要求に応じて、デバイス探索パケット情報保持部１２０６に保持されている情報を取得したり格納したりする。デバイス探索パケット情報抽出部１２０３は、探索パケットの特徴を表す情報を取得する。
【００３４】
デバイス探索パケット情報比較部１２０４は、デバイス探索パケット情報管理部１２０５に問い合わせて、今回受信した探索パケットの情報と、受信したＮＩＣ以外のＮＩＣで受信した情報で既に保存されているものがあるか否かを判定する。同じ情報が保存されていない場合、今回受信した探索パケットが初めて受信したものであると判断し、デバイス探索パケット情報保持部１２０６に依頼して今回受信した探索パケットの情報を保存する。一方、同じ情報が既に保存されていた場合、以前に受信した探索パケットと同じものを別のＮＩＣで受信したと判断し、応答の返信処理を行う。応答の返信処理は以下にように実行される。
【００３５】
応答送信ＮＩＣ判断部１２０７が、送信元のＮＩＣをどちらにするのが適切であるかを判断し、受信した探索パケット情報と応答の送信元ＮＩＣの組をデバイス探索応答送信部１２０８に通知する。デバイス探索応答送信部１２０８は、探索プロトコルの仕様に従った応答メッセージを作成する。その際、選択したＮＩＣ側のＩＰアドレスを使用してデータを作成する。例えば、ＷＳＤの応答パケットにおいては、図７（ｂ）や図８（ｂ）におけるＸＡｄｄｒｓをＮＩＣによって変更する。
【００３６】
最後に、出来上がった探索パケットをパケット送信部１２０９が選択したＮＩＣを通して送信する。パケット送信部１２０９は、パケット受信部１２０１と同じく、低位のプロトコル処理を行う。これにより、ＴＣＰヘッダ、ＵＤＰヘッダ、ＩＰヘッダなどが付加されてネットワーク上にパケットが送出される。
【００３７】
図３において、応答送信タイマー１２１０は、定期的にデバイス探索パケット情報保持部１２０６にアクセスし、一定時間経過したものについて応答を返信するために、応答送信ＮＩＣ判断部１２０７に通知する。これ以降、応答パケットが送出されるまでの処理は上述したものと同じである。
【００３８】
なお、探索パケット処理部１２００は、デバイス探索アプリケーション１２０２の中に存在してもよいし、図示例のように、デバイス探索アプリケーション１２０２と分離されたものであってもよい。
【００３９】
次に、ＰＣ２０４からＳＬＰを利用してデバイス探索を行うときに使用されるパケットについて説明する。
【００４０】
図４は、ＰＣ２０４からＳＬＰを利用してデバイス探索を行う際の探索パケットの一例を示す図である。
【００４１】
図４に示すＩＰ  Ｆｒａｍｅにおいて、送信元（発信元ＩＰ）アドレスは、例えば、ネットワーク１１３で通信することができるアドレスである。一方、送信先（宛先ＩＰ）アドレスは、マルチキャストのグループに属する全員が受信することができるマルチキャストアドレスである。ＵＤＰ  Ｆｒａｍｅにおいて、宛先ポート番号はプロトコルによって決まっており、図示例では、ＳＬＰはＵＤＰの４２７番のポートを使用する。
【００４２】
SLP V2 Frameの部分がＳＬＰのプロトコルデータであり、これを受信したデバイスは何を探索しようとしているのかを判断することができる情報である。例えば、functionのServiceRequest（１）は、サービスを探索していることを示しており、service typeのservice：printer.xxxは、プリンタを探索していることを示している。また、ｓｃｏｐｅは探索の対象となる範囲を示しており、ユーザーが自由に設定することができるものである。
【００４３】
図示例のパケットは、”ｘｘｘ”というｓｃｏｐｅに所属するプリンタを探索しようとしていることを示している。service typeとｓｃｏｐｅを変化させることにより、プリンタ以外のデバイスを探索することもできる。
【００４４】
図５（ａ）と図５（ｂ）は、ＰＣ２０４からＷＳＤを利用してデバイス探索を行うときに使用される探索パケットの一例を示す図である。図５（ａ）はＴＣＰ／ＩＰのレベルの内容を示しており、図５（ｂ）は、ＷＳＤの探索プロトコルにおけるプロトコルデータを示している。
【００４５】
図５（ａ）に示す送信元アドレスは図４のＳＬＰと同じである。送信先アドレスはＷＳＤのマルチキャストアドレスである。ＵＤＰ  Ｆｒａｍｅでは、ＷＳＤはＵＤＰの３７０２番のポートに対してマルチキャストパケットが送信される。
【００４６】
図５（ｂ）に示すプロトコルデータは、ＷＳＤの探索プロトコルがＳＯＡＰ（Simple Object Access Protocol）を使用してＸＭＬ（Extensible Markup Language）データをやり取りすることによって探索を行うことを示している。Ａｃｔｉｏｎに含まれるＰｒｏｂｅという文字列によって、このデータがデバイス探索を行うためのものであることを示している。ＭｅｓｓａｇｅＩＤは、このデータを識別するもので、パケット毎に一意な識別子である。ＴｙｐｅｓのＰｒｉｎｔｅｒは、プリンタを探索していることを示している。ＳＬＰと同様に、Ｔｙｐｅｓの値を変更することにより、プリンタ以外のデバイスを探索することもできる。
【００４７】
ここで、上述したＳＬＰやＷＳＤの探索パケットがＰＣ２０４からデバイス１００の第１のＮＩＣ１０８と第２のＮＩＣ１０９に到達する流れについて図２を参照して説明する。
【００４８】
ＰＣ２０４が探索パケットを送信することにより、ネットワーク１１３に属するデバイス１００の第１のＮＩＣ１０８にパケットが到達する。また、マルチキャストパケットを転送することができるルーター２０１によって、探索パケットはネットワーク２０３を介して、ネットワーク１１４に属するデバイス１００の第２のＮＩＣ１０９に到達する。これにより、デバイス１００は両方のＮＩＣから同一の探索パケットを受信することになる。図示例では、第１のＮＩＣ１０８と第２のＮＩＣ１０９が異なるサブネットに接続されているが、同一のサブネットに接続されている場合であってもよい。
【００４９】
次に、探索パケットをデバイス１００が受信した際に応答する応答パケットについて説明する。
【００５０】
図６（ａ）は、デバイス１００が図４に示す探索パケットの応答として第１のＮＩＣ１０８から返信するパケットの内容を示す図である。図６（ｂ）は、デバイス１００が図４に示す探索パケットの応答として第２のＮＩＣ１０９から返信するパケットの内容を示す図である。
【００５１】
図６（ａ）に示す送信元アドレスは、デバイス１００の第１のＮＩＣ１０８側のアドレスであり、送信先アドレスはＰＣ２０４のアドレスである。functionとservice typeとｓｃｏｐｅには、図４に示すパケットと同じ値が格納され、図４の探索パケットの応答であることを示している。図６（ｂ）に示すパケットは、送信元アドレスがデバイス１００の第２のＮＩＣ１０９側のアドレスであるという点で図６（ａ）に示すパケットと異なる。
【００５２】
図６（ａ）に示すパケットは、デバイス１００の第１のＮＩＣ１０８からＰＣ２０４に直接到達する。一方、図６（ｂ）に示すパケットは、デバイス１００の第２のＮＩＣ１０９からネットワーク１１４、ネットワーク２０３、ネットワーク２０２を通り、ルーター２０１を経由してＰＣ２０４に到達する。
【００５３】
一方、従来のデバイスでは、複数のＮＩＣでデバイス探索の探索パケットをそれぞれ受信した場合、両方のＮＩＣから応答メッセージを返信していた。例えば、ＳＬＰの場合は第１のＮＩＣから図６（ａ）に示すようなパケットを送信し、第２のＮＩＣ１０９から図６（ｂ）に示すようなパケットを返信していた。
【００５４】
図７（ａ）と図７（ｂ）は、図５に示す探索パケットの応答として第１のＮＩＣ１０８から返信する応答パケットの内容を示す図である。図８（ａ）と図８（ｂ）は、図５に示す探索パケットの応答として第２のＮＩＣ１０８から返信する応答パケットの内容を示す図である。
【００５５】
ＷＳＤにおいては、デバイス１００の第１のＮＩＣ１０８から図７（ａ）及び図７（ｂ）に示す応答パケットが返信され、デバイス１００の第２のＮＩＣ１０９から図８（ａ）及び図８（ｂ）に示す応答パケットが返信される。
【００５６】
図７（ａ）に示す送信元アドレスは、デバイス１００の第１のＮＩＣ１０８のアドレスであり、このパケットの送信元が第１のＮＩＣ１０８であることを示している。図８（ａ）に示す送信元アドレスは、デバイス１００の第２のＮＩＣ１０９のアドレスであり、このパケットの送信元が第２のＮＩＣ１０９であることを示している。図７（ｂ）と図８（ｂ）は、ＷＳＤの探索プロトコルにおける応答パケットを示している。
【００５７】
図７（ｂ）において、ＡｃｔｉｏｎのProbeMatchは、図５（ａ）及び図５（ｂ）のＰｒｏｂｅへの応答であることを示している。ＭｅｓｓａｇｅＩＤは、デバイス１００が送信したＷＳＤの探索プロトコルのメッセージを識別するものである。Ｔｏは、ＷＳＤの探索プロトコルの宛先である。ＴｙｐｅｓにＰｒｉｎｔｅｒという文字列が入ることでデバイス１００がプリンタであることを示す。ＸＡｄｄｒｓは、このデバイス探索以降の通信で使用するアドレスである。ここでは、第１のＮＩＣ１０８側にＨＴＴＰ（Hypertext Transfer Protocol）を使用してアクセスするように示している。MetadataVersionはデバイスの属性変化のバージョンを示す。
【００５８】
次に、デバイス１００における探索パケットの受信と応答パケットの返信に関する動作処理について説明する。
【００５９】
ＰＣ２０４は、デバイスを探索するために探索プロトコルを使用して、図４や図５（ａ）及び図５（ｂ）に示す探索パケットをネットワーク１１３に送信する。送信された探索パケットは、ネットワーク１１３を介してデバイス１００の第１のＮＩＣ１０８に到達する一方、ネットワーク１１３、ルーター２０１、ネットワーク２０２，２０３，１１４を介して、デバイス１００の第２のＮＩＣ１０９に到達する。デバイス１００では、第１のＮＩＣ１０８と第２のＮＩＣ１０９の両方で同一の探索パケットを受信すると、どちらのＮＩＣから応答を送信するかを決定し、決定したＮＩＣから応答パケットを送信する。
【００６０】
本実施の形態では、ＳＬＰの場合では、探索パケットに続く通信が一過性のもの（ＰＣ２０４はデバイス１００を探索後、あるデータをデバイス１００に送信するのみ）と仮定する。一方、ＷＳＤの場合では、探索パケットに続く通信が持続性を持ったもの（ＰＣ２０４はデバイス１００を探索後、デバイス１００を通常使用するプリンタとするためにドライバをインストールして使用するもの）と仮定する。このように、本実施の形態では、受信した探索パケットの探索プロトコルによって、その後の通信の目的を判断している。
【００６１】
また、その後の通信の目的を探索プロトコルのデータに含まれる値によって判断してもよい。例えば、ＷＳＤの探索プロトコルの図５（ｂ）に示すデータにおいて、ＴｙｐｅｓがＰｒｉｎｔｅｒではなく、DataSendであった場合はデータの送信を意味するなどと判断してもよい。この場合、図４に示す探索パケットをデバイス１００が受信した場合、ＳＬＰの探索に続く通信は一過性のものであるため、その通信にはより近いネットワークに所属する第１のＮＩＣ１０８を使用した方が効率がよい。そこで、探索パケットに対する応答パケットを第１のＮＩＣ１０８から送信する。応答パケットも図６（ａ）に示すものだけが送信される。
【００６２】
一方、図５（ａ），図５（ｂ）に示すパケットをデバイス１００が受信した場合、ＷＳＤの探索に続く通信が印刷用途であるため、いつネットワーク構成等に変更があっても対応できるよう、よりグローバルな第２のＮＩＣ１０９を使用して通信を行った方がよい。また、ＰＣなどの場合は、ネットワークの接続場所を変更しても使用し続けることができるように、第２のＮＩＣ１０９を使用して通信を行った方がよい。そこで、探索パケットに対する応答パケットを第２のＮＩＣ１０９から送信する。応答パケットも図８（ａ）及び図８（ｂ）に示すものだけが送信される。
【００６３】
次に、探索パケット処理部１２００で行われる探索パケットに対する応答パケットの送信処理を図９を参照して説明する。
【００６４】
図９は、探索パケット処理部１２００で行われる探索パケットに対する応答パケットの送信処理の流れを示すフローチャートである。
【００６５】
ステップＳ１３０１では、パケット受信部１２０１が第１のＮＩＣ１０８または第２のＮＩＣ１０９から探索パケットを受信し、ＩＰヘッダ、ＴＣＰヘッダ、ＵＤＰヘッダなどの低位のプロトコルの処理を行う。次に、ステップＳ１３０２では、デバイス探索アプリケーション１２０２が探索パケットに探索プロトコルの処理を施し、探索に関するデータを取得する。以下に説明する処理は、探索パケット処理部１２００内で行われる処理である。
【００６６】
ステップＳ１３０３では、デバイス探索パケット情報抽出部１２０３が、探索パケットに含まれるデータを解析し、探索パケットに含まれる、探索パケットの特徴を表す情報を抽出する。探索パケットの特徴を表す情報としては、例えば、図１１に示す受信したＮＩＣ情報、送信元情報（送信元アドレス）、送信先情報（送信先アドレス）などである。
【００６７】
次に、ステップＳ１３０４では、デバイス探索パケット情報管理部１２０５が、ステップＳ１３０３で抽出された情報と同じ情報を既に保持しているか検索する。続いて、ステップＳ１３０５では、デバイス探索パケット情報比較部１２０４が、ステップＳ１３０３で抽出された情報とステップＳ１３０４で検索された情報とを比較して、抽出された情報と同じ情報を既に保持しているか否かを判定する。このステップＳ１３０５は第１の判定手段の一例である。ステップＳ１３０５の判定の結果、抽出された情報と一致する情報が存在しなかった場合、デバイス探索パケット情報管理部１２０５が、ステップＳ１３０３で抽出された情報をデバイス探索パケット情報保持部１２０６に一時保存する（ステップＳ１３０９）。そして、ステップＳ１３０２へ戻る。
【００６８】
ステップＳ１３０５の判定の結果、ステップＳ１３０３で抽出された情報と一致するものが存在した場合は、応答送信ＮＩＣ判断部１２０７が、応答する際の送信元ＮＩＣを選択する（ステップＳ１３０６）。このステップＳ１３０６は第１の選択手段の一例である。ステップＳ１３０６の詳細な処理については後述する。
【００６９】
次に、ステップＳ１３０７では、デバイス探索応答送信部１２０８は、探索プロトコルに従った応答メッセージ（応答パケット）を作成する。続いて、ステップＳ１３０８では、作成された応答メッセージをパケット送信部１２０９が送信して、ステップＳ１３０１へ戻る。
【００７０】
次に、探索パケット処理部１２００内の応答送信タイマー１２１０が実行する応答パケット送信処理の詳細を図１０を参照して説明する。本処理は、応答送信タイマー１２１０により定期的に実行される処理である。
【００７１】
図１０は、応答送信タイマー１２１０により実行される応答パケット送信処理の流れを示すフローチャートである。
【００７２】
ステップＳ１４０１において、応答送信タイマー１２１０は、デバイス探索パケット情報保持部１２０６から保存されている情報を取得する。次に、ステップＳ１４０２では、応答送信タイマー１２１０は、デバイス探索パケット情報保持部１２０６に情報が保持されているか否かを判定する。保持されていない場合は、ステップＳ１４０１に戻って処理を繰り返す一方、保持されている場合は、デバイス探索パケット情報保持部１２０６から情報を１つ取得する（ステップＳ１４０３）。
【００７３】
次に、ステップＳ１４０４では、応答送信タイマー１２１０は、取得した情報が保存されてから一定時間が経過しているか否かを判定する。ステップＳ１４０４は第２の判定手段の一例である。ステップＳ１４０４の判定の結果、一定時間が経過していない場合は、ステップＳ１４０１に戻って処理を継続する。一方、一定時間が経過している場合は、ステップＳ１４０５以降の送信処理を行う。
【００７４】
ステップＳ１４０５では、応答送信ＮＩＣ判断部１２０７とデバイス探索応答送信部１２０８が応答メッセージを作成する。そして、ステップＳ１４０６において、図１１に示す探索パケット情報を参照し、作成された応答メッセージがパケット送信部１２０９から、探索パケットを受信したＮＩＣを介して送信され、ステップＳ１４０１へ戻る。
【００７５】
次に、デバイス探索パケット情報保持部１２０６に保持された図１１に示す探索パケット情報に基づいて、ＮＩＣを選択する際に実行される処理の詳細を図１２を参照して説明する。本処理は、応答送信ＮＩＣ判断部１２０７により図９のステップＳ１３０６にて行われる処理である。
【００７６】
図１２は、応答送信ＮＩＣ判断部１２０７により実行されるＮＩＣ選択処理の流れを示すフローチャートである。
【００７７】
ステップＳ１６０１では、応答送信ＮＩＣ判断部１２０７は、デバイス探索パケット情報保持部１２０６が保持する図１１に示す探索パケット情報を基に探索プロトコルを判定する。次に、ステップＳ１６０２では、応答送信ＮＩＣ判断部１２０７は、探索プロトコルのデータの内容を調査する必要があるか否かを判定する。これは、上述したように、探索プロトコルによって、その後の通信の目的を判断するためである。デバイスの実装によっては、探索プロトコルがＳＬＰであれば、デバイス探索後のデータの送受信が一過性のものであると判定するものも存在する。そのような場合は、探索プロトコルのデータの内容を調査するまでもなく、ステップＳ１６０４に進む。一方、プロトコルのみではデバイス探索の目的が判明しない場合、応答送信ＮＩＣ判断部１２０７が探索プロトコルのデータの内容を調査する（ステップＳ１６０３）。
【００７８】
ステップＳ１６０４では、応答送信ＮＩＣ判断部１２０７は、ステップＳ１６０３での調査結果から、一過性のデータ通信が目的のデバイス探索か否かを判定する。ステップＳ１６０４は第３の判定手段の一例である。ステップＳ１６０５の判定の結果、一過性のデータ通信が目的のデバイス探索である場合、応答送信ＮＩＣ判断部１２０７は、第１のＮＩＣ１０８と第２のＮＩＣ１０９のうち探索パケットの送信元とより近いローカルなアドレスを検索する（ステップＳ１６０５）。一方、プリンタドライバのインストールのように、一過性のデータ通信が目的のデバイス探索でない場合は、第１のＮＩＣ１０８と第２のＮＩＣ１０９のうち、より広域で使用可能なアドレスを検索する（ステップＳ１６０８）。
【００７９】
ステップＳ１６０５の検索の結果、送信元とより近いアドレス（ローカルアドレス）が存在する場合（ステップＳ１６０６でＹＥＳ）、応答送信ＮＩＣ判断部１２０７は、発見したアドレスが付与されているＮＩＣを選択する（ステップＳ１６０７）。一方、送信元とより近いアドレスが存在しない場合（ステップＳ１６０６でＮＯ）、応答送信ＮＩＣ判断部１２０７は、第１のＮＩＣ１０８と第２のＮＩＣ１０９のうち、優先度の高い方を選択する（ステップＳ１６１１）。
【００８０】
ステップＳ１６０８の検索の結果、より広域で使用可能なアドレス（グローバルアドレス）が存在する場合（ステップＳ１６０９でＹＥＳ）、応答送信ＮＩＣ判断部１２０７は、発見したアドレスが付与されているＮＩＣを選択する（ステップＳ１６１０）。一方、より広域で使用可能なアドレスが存在しない場合（ステップＳ１６０９ＮＯ）、応答送信ＮＩＣ判断部１２０７は、第１のＮＩＣ１０８と第２のＮＩＣ１０９のうち、優先度の高い方を選択する（ステップＳ１６１１）。
【００８１】
上記第１の実施形態によれば、複数のＮＩＣを持ち、探索パケットに対して応答することが可能であるデバイスが、複数のＮＩＣで同一の探索パケットを受信した場合に、一方のＮＩＣを選択して応答する。これにより、探索側は単一の結果だけを得ることができ、利用者の混乱が軽減される。また、デバイス探索の目的を考慮して応答するＮＩＣを選択するため、探索デバイスにとってより適切な応答のみを返信することができる。
【００８２】
［第２の実施形態］
本発明の第２の実施の形態におけるデバイス２００は、その構成（図１）及びネットワーク環境（図２）が上記第１の実施の形態におけるデバイス１００と同じであり、第１の実施の形態と同様の部分については、同一の符号を用いてその説明を省略する。
【００８３】
デバイス２００では、第１のＮＩＣ１０８と第２のＮＩＣ１０９の両方で受信した探索パケットに対して、最初に到達した探索パケットに対してのみ応答を返信する。すなわち、第１のＮＩＣ１０８で最初に探索パケットを受信した場合、第１のＮＩＣ１０８から応答パケットを返信し、次に第２のＮＩＣ１０９で同一の探索パケットを受信しても、第２のＮＩＣ１０９から応答パケットを送信せずに無視するものである。
【００８４】
図１３は、本発明の第２の実施形態の一例であるデバイス２００の探索処理に関連するソフトウェア構成を示すブロック図である。
【００８５】
デバイス２００は、図３に示すデバイス１００に対して、応答送信ＮＩＣ判断部１２０７と、応答送信タイマー１２１０が存在しない点が異なる。一方、受信した探索パケットを探索パケット処理部１２００が処理する点は同じである。
【００８６】
本実施形態では、一方のＮＩＣ（ここでは第１のＮＩＣ１０８とする）で探索パケットを受信した場合、パケット受信部１２０１からデバイス探索パケット情報抽出部１２０３までの各部が実行する処理は、図３を参照して説明した上記処理内容と同じである。そして、デバイス探索パケット情報比較部１２０４は、受信した探索パケット情報と、デバイス探索パケット情報保持部１２０６に保持されている情報とを比較し、同じものがあるか否かを判定する。ここで、同じものが存在しない場合、最初に受信した探索パケットであると判断し、デバイス探索応答送信部１２０８を介して図３を参照して説明した上記処理内容と同様の方法で応答の返信を行う。
【００８７】
図１４は、第２の実施形態における、探索パケットに対する応答パケットの送信処理の流れを示すフローチャートである。
【００８８】
ステップＳ１８０１では、パケット受信部１２０１が第１のＮＩＣ１０８または第２のＮＩＣ１０９から探索パケットを受信し、ＩＰヘッダ、ＴＣＰヘッダ、ＵＤＰヘッダなどの低位のプロトコルの処理を行う。次に、ステップＳ１８０２では、デバイス探索アプリケーション１２０２が探索パケットに探索プロトコルの処理を施し、探索に関するデータを取得する。
【００８９】
ステップＳ１８０３では、デバイス探索パケット情報抽出部１２０３が、探索パケットに含まれるデータを解析し、探索パケットに含まれる、探索パケットの特徴を表す情報（探索パケットの情報）を抽出する。探索パケットの情報は、例えば、図１１に示す情報である。
【００９０】
次に、ステップＳ１８０４では、デバイス探索パケット情報管理部１２０５が、ステップＳ１８０３で抽出された情報と同じ情報を既に保持しているか検索する。続いて、ステップＳ１８０５では、デバイス探索パケット情報比較部１２０４が、ステップＳ１８０３で抽出された情報とステップＳ１８０４で検索された情報とを比較して、抽出された情報と同じ情報を既に保持しているか否かを判定する。この判定の結果、この判定の結果、抽出された情報と一致する情報が存在した場合は、デバイス探索パケット情報比較部１２０４が、今回受信した探索パケットを破棄して（ステップＳ１８０８）、ステップＳ１８０１へ戻る。
【００９１】
一方、ステップＳ１８０３で抽出された情報と一致するものが存在しなかった場合は、デバイス探索応答送信部１２０８が、探索プロトコルに従った応答メッセージ（応答パケット）を作成する（ステップＳ１８０６）。続いて、ステップＳ１８０７では、作成された応答メッセージをパケット送信部１２０９が最初に探索パケットを受信したＮＩＣから送信し、ステップＳ１８０１へ戻る。
【００９２】
例えば、第１のＮＩＣ１０８で最初に探索パケットを受信した後、同じ探索パケットを第２のＮＩＣ１０９で受信した場合、第１のＮＩＣ１０８で受信した探索パケットは、抽出された情報と一致するものが存在しない。そのため、パケット送信部１２０９が応答メッセージを第１のＮＩＣ１０８から返信する。一方、第２のＮＩＣ１０９で受信した探索パケットは、抽出された情報と一致するものが存在することから、受信した探索パケットが破棄され、第２のＮＩＣ１０９からの応答メッセージの返信はない。
【００９３】
上記第２の実施形態によれば、第１のＮＩＣ１０８で最初に探索パケットを受信した場合、第１のＮＩＣ１０８から応答パケットを返信し、次に第２のＮＩＣ１０９で同一の探索パケットを受信しても、第２のＮＩＣ１０９から応答パケットを送信せずに無視する。これにより、複数のＮＩＣを持ち、探索パケットに対して応答することが可能であるデバイスが、複数のＮＩＣで同一の探索パケットを受信した場合に、一方のＮＩＣを選択して応答するため、探索側は単一の結果だけを得ることができ、利用者の混乱が軽減される。
【００９４】
［第３の実施形態］
本発明の第３の実施の形態におけるデバイス３００は、その構成（図１）及びネットワーク環境（図２）が上記第１の実施の形態におけるデバイス１００と同じであり、第１の実施の形態と同様の部分については、同一の符号を用いてその説明を省略する。
【００９５】
デバイス３００では、探索パケットを受信した際に、探索パケットを受信したＮＩＣとパケットの内容を照合し、応答を返信するのに適切なＮＩＣだと判断した場合はただちに応答パケットを返信する。一方、適切なＮＩＣではないと判断した場合は、応答を待って探索パケットの情報を一時的に保持する。次に、別のＮＩＣから同一の探索パケットを受信した際に、保持されている情報と比較して同じである場合には応答パケットを返信するものである。
【００９６】
図１５は、本発明の第３の実施形態の一例であるデバイス３００の探索処理に関連するソフトウェア構成を示すブロック図である。
【００９７】
デバイス３００は、図３に示すデバイス１００に対して、探索即答判断部１９０１が追加されている点のみが異なる。また、デバイス探索アプリケーション１２０２とデバイス探索パケット情報抽出部１２０３との間で、探索即答判断部１９０１が、受信したＮＩＣと探索パケットの内容を照合して、応答を返信するのに適切なＮＩＣから受信したか否かを判断する。そして、応答を返信するのに適切なＮＩＣから受信したと判断した場合は、デバイス探索応答送信部１２０８で探索パケットの応答メッセージが構築され、パケット送信部１２０９により送出される。一方、探索即答判断部１９０１が、適切なＮＩＣから受信していないと判断した場合、図３を参照して説明した上記処理内容と同じ手順で処理が行われる。
【００９８】
図１６は、第３の実施形態における、探索パケットに対する応答パケットの送信処理の流れを示すフローチャートである。
【００９９】
ステップＳ２００１では、パケット受信部１２０１が第１のＮＩＣ１０８または第２のＮＩＣ１０９から探索パケットを受信し、ＩＰヘッダ、ＴＣＰヘッダ、ＵＤＰヘッダなどの低位のプロトコルの処理を行う。次に、ステップＳ２００２では、デバイス探索アプリケーション１２０２が探索パケットに探索プロトコルの処理を施し、探索に関するデータを取得する。
【０１００】
次に、ステップＳ２００３では、探索即答判断部１９０１が、探索パケットを受信したＮＩＣと探索プロトコルの内容を照合する。そして、探索パケットを受信したＮＩＣが、当該探索パケットに対する応答メッセージを返信するＮＩＣとして適切だと現段階で判断できるかを判定する（ステップＳ２００４）。ステップＳ２００４は第４の判定手段の一例である。ステップＳ２００４の適切か否かの判断については、探索パケットを受信したＮＩＣから応答メッセージの即時の返信が可能か否かに基づいて行われてもよい。例えば、探索パケットを受信したＮＩＣに対して設定されたＮＩＣ探索プロトコルや探索パケットの送信元の情報（例えばアドレス等）に基づいて、即時の返信が可能かどうかを判断するように構成してもよいし、これらに限定されるものでもない。
【０１０１】
ステップＳ２００４の判定の結果、今回の探索パケットに対して応答するＮＩＣとして適切と判定した場合、デバイス探索応答送信部１２０８が、探索プロトコルに従った応答メッセージ（応答パケット）を作成する（ステップＳ２００９）。続いて、ステップＳ２０１０では、作成された応答メッセージをパケット送信部１２０９が送信して、ステップＳ２００１へ戻る。
【０１０２】
一方、ステップＳ２００４の判定の結果、今回の探索パケットに対して応答するＮＩＣとして適切でないと判定した場合、デバイス探索パケット情報抽出部１２０３が、受信した探索パケットに含まれるデータを解析し、上述した探索パケットの情報を抽出する。次に、ステップＳ２００６では、デバイス探索パケット情報管理部１２０５が、ステップＳ２００５で抽出された情報と同じ情報を既に保持しているか検索する。
【０１０３】
続いて、ステップＳ２００７では、デバイス探索パケット情報比較部１２０４が、ステップＳ２００５で抽出された情報と同じ情報とステップＳ２００６で検索された情報とを比較して、抽出された情報と同じ情報を既に保持しているか否かを判定する。この判定の結果、抽出された情報と一致する情報が存在した場合、応答送信ＮＩＣ判断部１２０７が、上述した図１２に示す処理で、応答する際の送信元ＮＩＣを選択する（ステップＳ２００８）。以降、ステップＳ２００９，Ｓ２０１０の処理が行われる。
【０１０４】
ステップＳ２００７にて、抽出された情報と一致する情報が存在しなかった場合、デバイス探索パケット情報管理部１２０５が今回受信した情報（Ｓ２００５で抽出された情報）をデバイス探索パケット情報保持部１２０６に一時保存する（ステップＳ２０１１）。そして、ステップＳ２００１に戻る。
【０１０５】
上記第３の実施形態によれば、複数のＮＩＣを持ち、探索パケットに対して応答することが可能であるデバイスが、複数のＮＩＣで同一の探索パケットを受信した場合に、一方のＮＩＣを選択して応答する。これにより、探索側は単一の結果だけを得ることができ、利用者の混乱が軽減される。また、デバイス探索の目的を考慮して応答するＮＩＣを選択するため、探索デバイスにとってより適切な応答のみを返信することができる。
【０１０６】
上記第１〜第３の実施形態では、本発明を画像形成装置（デバイス１００〜３００）に適用した形態について説明したが、これに限定されるものではなく、通信装置や通信機能を有する情報処理装置、端末等であってもよいことは云うまでもない。
【０１０７】
また、デバイス１００〜３００は、ネットワーク１１３，１１４の有線ネットワークに接続されていたが、無線通信機能を備え、異なる無線通信方式により複数のネットワークに接続可能な構成であっても、本発明を実現可能である。
【０１０８】
本発明の実施の形態は、ネットワーク又は各種記憶媒体を介して取得したソフトウェア（プログラム）をパーソナルコンピュータ（ＣＰＵ，プロセッサ）にて実行することでも実現できる。
【符号の説明】
【０１０９】
１００  デバイス
１０８  第１のネットワークＩ／Ｆ制御部（第１のＮＩＣ）
１０９  第２のネットワークＩ／Ｆ制御部（第２のＮＩＣ）
１１３，１１４  ネットワーク
２０１  ルーター
２０４  ＰＣ（パーソナルコンピュータ）
１２００  探索パケット処理部
１２０３  デバイス探索パケット情報抽出部
１２０４  デバイス探索パケット情報比較部
１２０５  デバイス探索パケット情報管理部
【図１】
0005464960.tif 000002
【図２】
0005464960.tif 000003
【図３】
0005464960.tif 000004
【図４】
0005464960.tif 000005
【図５】
0005464960.tif 000006
【図６】
0005464960.tif 000007
【図７】
0005464960.tif 000008
【図８】
0005464960.tif 000009
【図９】
0005464960.tif 000010
【図１０】
0005464960.tif 000011
【図１１】
0005464960.tif 000012
【図１２】
0005464960.tif 000013
【図１３】
0005464960.tif 000014
【図１４】
0005464960.tif 000015
【図１５】
0005464960.tif 000016
【図１６】
0005464960.tif 000017