(57)【特許請求の範囲】
【請求項１】
ネットワークに接続可能な通信装置であって、
前記ネットワークを介して送信されるパケットを受信する受信手段と、
前記受信手段が受信したパケットを解析し、当該受信したパケットに含まれるデータに従って前記通信装置のネットワーク設定を行う設定手段と、
前記受信手段が受信したパケットが前記通信装置宛てのパケットであるか否かを判定する第１の判定手段と、
前記受信手段が受信したパケットが前記設定手段によるネットワーク設定のための設定パケットであるか否かを判定する第２の判定手段と、
前記第１の判定手段により、前記受信手段が受信したパケットが前記通信装置宛てのパケットであると判定され、且つ、前記第２の判定手段により、前記受信手段が受信したパケットが前記設定パケットでないと判定された場合に、前記設定手段によるパケットの解析が行われないように制御する制御手段と、
を備えることを特徴とする通信装置。
【請求項２】
前記受信手段が受信したパケットを前記通信装置内のアプリケーションに転送する転送手段と、
前記受信手段が受信したパケットを前記設定手段及び前記転送手段に供給する供給手段とを更に備え、
前記制御手段は、前記供給手段による前記設定手段へのパケットの供給を停止することにより、前記設定手段によるパケットの解析が行われないようにすることを特徴とする請求項１に記載の通信装置。
【請求項３】
前記第１の判定手段は、前記受信手段が受信したパケットの宛先として指定された物理アドレスが前記通信装置の物理アドレスと一致する場合に、前記受信手段が受信したパケットが前記通信装置宛てであると判定し、前記受信手段が受信したパケットの宛先として指定された物理アドレスがブロードキャスト送信を意味するものである場合に、前記受信手段が受信したパケットが前記通信装置宛てでないと判定することを特徴とする請求項１または２に記載の通信装置。
【請求項４】
前記設定パケットを識別する識別情報を保持する保持手段を更に備え、
前記第２の判定手段は、前記受信手段が受信したパケットに含まれる識別情報と前記保持手段に保持された識別情報を比較し、各識別情報が一致する場合に、前記受信手段が受信したパケットが前記設定パケットであると判定することを特徴とする請求項１から３のいずれか１項に記載の通信装置。
【請求項５】
前記保持手段に保持される識別情報とは、前記設定パケットを識別するためのポート情報であることを特徴とする請求項４に記載の通信装置。
【請求項６】
ネットワークに接続可能な通信装置であって、
前記ネットワークを介して送信されるパケットを受信する受信手段と、
前記受信手段が受信したパケットを解析し、当該受信したパケットに含まれるデータに従って前記通信装置のネットワーク設定を行う第１の設定手段と、
前記第１の設定手段とは異なるプロトコルを用いて外部サーバと通信し、前記通信装置のネットワーク設定を行う第２の設定手段と、
前記受信手段が受信したパケットが前記第２の設定手段によるネットワーク設定のためのパケット群に含まれる特定のパケットであるか否かを判定する判定手段と、
前記判定手段により、前記受信手段が受信したパケットが前記特定のパケットであると判定された場合に、前記第１の設定手段によるパケットの解析が行われないように制御する制御手段と、
を備えることを特徴とする通信装置。
【請求項７】
前記受信手段が受信したパケットを前記通信装置内のアプリケーションに転送する転送手段と、
前記受信手段が受信したパケットを前記第１の設定手段及び前記転送手段に供給する供給手段とを更に備え、
前記制御手段は、前記供給手段による前記第１の設定手段へのパケットの供給を停止することにより、前記第１の設定手段によるパケットの解析が行われないようにすることを特徴とする請求項６に記載の通信装置。
【請求項８】
前記第２の設定手段が用いるプロトコルはＤＨＣＰであって、
前記特定のパケットはＤＨＣＰＡＣＫであることを特徴とする請求項６または７に記載の通信装置。
【請求項９】
ネットワークに接続可能な通信装置の制御方法であって、
前記ネットワークを介して送信されるパケットを受信する受信工程と、
前記受信工程で受信したパケットを解析し、当該受信したパケットに含まれるデータに従って前記通信装置のネットワーク設定を行う設定工程と、
前記受信工程で受信したパケットが前記通信装置宛てのパケットであるか否かを判定する第１の判定工程と、
前記受信工程で受信したパケットが前記設定工程におけるネットワーク設定のための設定パケットであるか否かを判定する第２の判定工程と、
前記第１の判定工程において、前記受信工程で受信したパケットが前記通信装置宛てのパケットであると判定され、且つ、前記第２の判定工程において、前記受信工程で受信したパケットが前記設定パケットでないと判定された場合に、前記設定工程におけるパケットの解析が行われないように制御する制御工程と、
を備えることを特徴とする通信装置の制御方法。
【請求項１０】
ネットワークに接続可能な通信装置の制御方法であって、
前記ネットワークを介して送信されるパケットを受信する受信工程と、
前記受信工程で受信したパケットを解析し、当該受信したパケットに含まれるデータに従って前記通信装置のネットワーク設定を行う第１の設定工程と、
前記第１の設定工程とは異なるプロトコルを用いて外部サーバと通信し、前記通信装置のネットワーク設定を行う第２の設定工程と、
前記受信工程で受信したパケットが前記第２の設定工程におけるネットワーク設定のためのパケット群に含まれる特定のパケットであるか否かを判定する判定工程と、
前記判定工程において、前記受信工程で受信したパケットが前記特定のパケットであると判定された場合に、前記第１の設定工程におけるパケットの解析が行われないように制御する制御工程と、
を備えることを特徴とする通信装置の制御方法。
【請求項１１】
請求項９または１０に記載の通信装置の制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに接続可能な通信装置、当該通信装置の制御方法、当該通信装置の制御方法をコンピュータに実行させるためのプログラムに関する。
【背景技術】
【０００２】
従来、ネットワーク（ＬＡＮ、インターネット等）に接続され、ネットワーク上の外部装置と通信する様々な通信装置が知られている。
【０００３】
ネットワークに接続される通信装置において広く使用されているプロトコルはインターネットプロトコルである。インターネットプロトコルでは各装置に固有のアドレス（ＩＰアドレス）を割り当て、このＩＰアドレスを用いて互いの装置を識別している。通信装置をネットワークに接続して使用可能な状態とするためには、ＩＰアドレスの設定を初めとして種々のネットワーク設定を行う必要がある。
【０００４】
従来は、管理者が通信装置の操作部を操作し、通信装置に設定する各値を入力していたが、最近では、ネットワークを介して通信装置に接続された外部装置から遠隔で通信装置のネットワーク設定を行うことが可能となっている。例えば、特許文献１に記載の方法では、ネットワーク管理装置からネットワーク機器に対して設定パケットを送信することにより、ネットワーク機器のネットワーク設定を遠隔から行う。
【０００５】
具体的には、初めにネットワーク管理装置がブロードキャスト送信を意味するＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスを宛先として探索パケットを送信する。ネットワーク管理装置は、探索パケットを受信したネットワーク機器からの応答パケットを受信すると、当該応答パケットからネットワーク機器のＭＡＣアドレスを取得する。そして、ネットワーク管理装置は、取得したＭＡＣアドレスを宛先としてネットワーク機器に設定すべき各値を送信する。これを受けたネットワーク機器は、ネットワーク管理装置によって指定された各値を自装置に設定し、ネットワーク設定を完了する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−１２２９４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、ネットワークを介して送信される設定パケットを受信し、当該設定パケットに含まれるデータに従って通信装置のネットワーク設定を行う場合に、次のような問題がある。
【０００８】
従来は、設定パケットを用いて遠隔からネットワーク設定を行う場合、設定対象の通信装置は、ネットワークから受信するパケット（自装置のＭＡＣアドレス宛て又はブロードキャスト送信を意味するＭＡＣアドレス宛て）の全てを解析していた。なぜなら、ＩＰアドレスが未設定の状態で遠隔からネットワーク設定を行えるようにするには、ＩＰアドレスを取り扱うレイヤよりも下位のレイヤで受信パケットを取得し、それが設定パケットであるか否かを判別することが必要なためである。
【０００９】
しかしながら、ネットワーク設定が一旦完了してしまえば、設定パケットを処理する必要がなくなるため、ネットワークから受信するパケットが設定パケットであるか否かを判別する必要もない。それにも関わらず、従来はネットワーク設定が完了した後も、ネットワークから受信するパケットの全てを解析し、設定パケットであるか否かの判別を行っていた。この結果、パケットの解析が原因で通信装置の処理負荷が高まり、他の各種処理（操作画面の描画処理、印刷処理、画像変換処理など）に遅延が生じてしまうという問題があった。
【００１０】
本発明は、上記の問題点に鑑みなされたものであり、ネットワーク設定が完了した後、受信パケットがネットワーク設定のための設定パケットであるか否かを判別するためのパケットの解析を停止し、装置の処理負荷を軽減する仕組みを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記の目的を達成するために本発明の通信装置は、ネットワークに接続可能な通信装置であって、前記ネットワークを介して送信されるパケットを受信する受信手段と、前記受信手段が受信したパケットを解析し、当該受信したパケットに含まれるデータに従って前記通信装置のネットワーク設定を行う設定手段と、前記受信手段が受信したパケットが前記通信装置宛てのパケットであるか否かを判定する第１の判定手段と、前記受信手段が受信したパケットが前記設定手段によるネットワーク設定のための設定パケットであるか否かを判定する第２の判定手段と、前記第１の判定手段により、前記受信手段が受信したパケットが前記通信装置宛てのパケットであると判定され、且つ、前記第２の判定手段により、前記受信手段が受信したパケットが前記設定パケットでないと判定された場合に、前記設定手段によるパケットの解析が行われないように制御する制御手段とを備えることを特徴とする。
【００１２】
また、本発明の通信装置は、ネットワークに接続可能な通信装置であって、前記ネットワークを介して送信されるパケットを受信する受信手段と、前記受信手段が受信したパケットを解析し、当該受信したパケットに含まれるデータに従って前記通信装置のネットワーク設定を行う第１の設定手段と、前記第１の設定手段とは異なるプロトコルを用いて外部サーバと通信し、前記通信装置のネットワーク設定を行う第２の設定手段と、前記受信手段が受信したパケットが前記第２の設定手段によるネットワーク設定のためのパケット群に含まれる特定のパケットであるか否かを判定する判定手段と、前記判定手段により、前記受信手段が受信したパケットが前記特定のパケットであると判定された場合に、前記第１の設定手段によるパケットの解析が行われないように制御する制御手段とを備えることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、ネットワーク設定が完了した後、受信パケットがネットワーク設定のための設定パケットであるか否かを判別するためのパケットの解析を停止し、装置の処理負荷を軽減することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態における通信システムの全体図である。
【図２】本発明の実施形態におけるプリンタ１０１のハードウェア構成を示すブロック図である。
【図３】本発明の実施形態におけるプリンタ１０１のソフトウェア構成を示す図である。
【図４】本発明の実施形態におけるプリンタ１０１のネットワーク設定をＰＣ１０２から遠隔で行う処理を説明するためのシーケンス図である。
【図５】本発明の実施形態における探索要求４０１の内容を示す図である。
【図６】本発明の実施形態における探索応答４０４の内容を示す図である。
【図７】本発明の実施形態におけるＰＣ１０２内の任意のアプリケーションがプリンタ１０１内のプリケーション３２０又は３３０と通信する処理を説明するためのシーケンス図である。
【図８】本発明の実施形態におけるコンフィグレータ制御部３１３において実行される一連の処理を説明するフローチャートである。
【図９】本発明の実施形態におけるプリンタ１０１のソフトウェア構成を示す図である。
【図１０】本発明の実施形態におけるＤＨＣＰを用いてプリンタ１０１のネットワーク設定を行う処理を説明するためのシーケンス図である。
【図１１】本発明の実施形態におけるコンフィグレータ制御部３１３において実行される一連の処理を説明するフローチャートである。
【発明を実施するための形態】
【００１５】
以下、図面を参照して本発明の実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１６】
（第１の実施形態）
図１は、本発明の実施形態における通信システムの全体図である。プリンタ１０１はＬＡＮ１１０に接続可能であり、ＬＡＮ１１０を介してＰＣ１０２及びＤＨＣＰサーバ１０３と通信することができる。ＬＡＮ１１０上には、図示しない他の外部装置が接続され、プリンタ１０１はそれらの外部装置と通信することも可能である。
【００１７】
図２は、プリンタ１０１のハードウェア構成を示すブロック図である。ＣＰＵ２１１を含む制御部２１０は、プリンタ１０１全体の動作を制御する。ＣＰＵ２１１は、ＲＯＭ２１２に記憶された制御プログラムを読み出して読取制御や送信制御などの各種制御を行う。ＲＡＭ２１３は、ＣＰＵ２１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。
【００１８】
ＨＤＤ２１４は、画像データや各種プログラムを記憶する。操作部Ｉ／Ｆ２１５は、操作部２２０と制御部２１０とを接続する。操作部２２０には、タッチパネル機能を有する液晶表示部やキーボードなどが備えられている。
【００１９】
印刷部Ｉ／Ｆ２１６は、印刷部２３０と制御部２１０とを接続する。印刷部２３０で印刷すべき画像データは印刷部Ｉ／Ｆ２１６を介して制御部２１０から転送され、印刷部２３０において記録媒体上に印刷される。
【００２０】
ネットワークＩ／Ｆ２１７は、制御部２１０（プリンタ１０１）をＬＡＮ１１０に接続する。ネットワークＩ／Ｆ２１７は、ＬＡＮ１１０を介して外部装置（ＰＣ１０２やＤＨＣＰサーバ１０３を含む）に画像データや各種情報を送信したり、ＬＡＮ１１０を介して外部装置から画像データや各種情報を受信したりするための通信制御を行う。なお、プリンタ１０１は、原稿上の画像を読み取って画像データを生成する読取部を更に備えたＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）であっても構わない。
【００２１】
図３は、プリンタ１０１のソフトウェア構成を示す図である。ＬＡＮ１１０を介して外部から送信され、ネットワークＩ／Ｆ２１７によって受信されるパケットは、ネットワーク処理部３１０によって処理される。なお、ネットワーク処理部３１０で処理されるパケットは、ネットワークＩ／Ｆ２１７（プリンタ１０１）のＭＡＣアドレス（物理アドレス）を宛先として指定したもの、またはブロードキャスト送信を意味するＭＡＣアドレスを宛先として指定したものである。これらに該当しないパケットは、ネットワーク処理部３１０に引き渡されることなく破棄される。
【００２２】
コンフィグレータ制御部３１３は、ネットワーク処理部３１０に入力されたパケットを複製し、コンフィグレータ３１１及びＵＤＰ／ＴＣＰ処理部３１２の両方に供給する。但し、後述するようにコンフィグレータ３１１へのパケットの供給が停止された場合は、入力されたパケットを複製することなく、ＵＤＰ／ＴＣＰ処理部３１２にのみ供給（転送）する。
【００２３】
コンフィグレータ３１１は、受信したパケットを解析し、そのパケットがプリンタ１０１のネットワーク設定のための設定パケットであるか否かを判別し、設定パケットである場合にプリンタ１０１のネットワーク設定を行う。
【００２４】
図４は、プリンタ１０１のネットワーク設定をＰＣ１０２から遠隔で行う処理を説明するためのシーケンス図である。ＩＰアドレスがまだ設定されていない状態のプリンタ１０１のネットワーク設定を行う場合、ＰＣ１０２は最初に図５に示す探索要求４０１をブロードキャスト送信する。
【００２５】
探索要求４０１の宛先ＭＡＣアドレス５０１には、ブロードキャスト送信を意味する「ｆｆ：ｆｆ：ｆｆ：ｆｆ：ｆｆ：ｆｆ」が指定される。送信元ＭＡＣアドレス５０２には、ＰＣ１０２のネットワークＩ／Ｆに割り当てられているＭＡＣアドレスが指定される。
【００２６】
探索要求４０１の宛先ＩＰアドレス５０４には、ブロードキャスト送信を意味する「２５５．２５５．２５５．２５５」が指定される。送信元ＩＰアドレス５０３には、ＰＣ１０２のネットワークＩ／Ｆに割り当てられているＩＰアドレスが指定される。
【００２７】
探索要求４０１の宛先ポート５０６には、このパケットがコンフィグレータ３１１によるネットワーク設定のための設定パケットであることを識別するための「０ｘ８３ｂ６」が指定される。送信元ポート５０５には、ＰＣ１０２が使用するポート情報が指定される。
【００２８】
探索要求４０１には、ＤＬＣ（Ｄａｔａ  Ｌｉｎｋ  Ｃｏｎｔｒｏｌ）ヘッダ、ＩＰヘッダ、ＵＤＰヘッダに引き続いて、データ部が含まれる。後述する設定要求４０５では、このデータ部にプリンタ１０１に設定すべき各値が記述される。
【００２９】
探索要求４０１を受信したコンフィグレータ制御部３１３は、受信した探索要求４０１を複製し、１つをコンフィグレータ３１１に供給し、もう１つをＵＤＰ／ＴＣＰ処理部３１２に供給する。図４には、コンフィグレータ３１１に探索要求４０２が供給（転送）されることのみを示すが、コンフィグレータ３１１への探索要求４０２の転送と並行して、ＵＤＰ／ＴＣＰ処理部３１２へも探索要求４０２が転送される。
【００３０】
探索要求４０２を受信したコンフィグレータ３１１は、受信したパケットのＤＬＣヘッダ、ＩＰヘッダ、ＵＤＰヘッダ、データ部の一部または全てを解析し、当該パケットの内容を判別する。判別の結果、受信したパケットが探索要求であると判別した場合は、探索要求４０２に対する応答として探索応答４０３を送信する。探索応答４０３は、コンフィグレータ制御部３１３を介して探索応答４０４としてＰＣ１０２に返送される。
【００３１】
図６は、探索応答４０４を示す。探索応答４０４の宛先ＭＡＣアドレス６０１には、ＰＣ１０２のネットワークＩ／Ｆに割り当てられているＭＡＣアドレス（探索要求４０１の送信元ＭＡＣアドレス５０２として指定されていたもの）が指定される。送信元ＭＡＣアドレス６０２には、プリンタ１０１のネットワークＩ／Ｆ２１７に割り当てられているＭＡＣアドレスが指定される。
【００３２】
探索応答４０４の宛先ＩＰアドレス６０４には、ＰＣ１０２のネットワークＩ／Ｆに割り当てられているＩＰアドレスが指定される。送信元ＩＰアドレス６０３には、ＩＰアドレスの初期値（工場出荷値）としてプリンタ１０１に設定されている「０．０．０．０」が指定される。
【００３３】
探索応答４０４の宛先ポート６０６には、ＰＣ１０２が使用するポート情報が指定される。送信元ポート６０５には、探索要求４０１の宛先ポート５０６として指定されていた「０ｘ８３ｂ６」が指定される。
【００３４】
探索要求４０４には、ＤＬＣ（Ｄａｔａ  Ｌｉｎｋ  Ｃｏｎｔｒｏｌ）ヘッダ、ＩＰヘッダ、ＵＤＰヘッダに引き続いて、データ部が含まれる。
【００３５】
探索応答４０４を受信したＰＣ１０２は、プリンタ１０１に設定すべき各値がデータ部に記述された設定要求４０５をプリンタ１０１に送信する。この設定要求４０５には、探索応答４０４の送信元ＭＡＣアドレス６０２に指定されていた、プリンタ１０１のネットワークＩ／Ｆ２１７に割り当てられているＭＡＣアドレスが宛先ＭＡＣアドレスとして指定される。
【００３６】
設定要求４０５を受信したコンフィグレータ制御部３１３は、受信した設定要求４０５を複製し、１つをコンフィグレータ３１１に供給し、もう１つをＵＤＰ／ＴＣＰ処理部３１２に供給する。図４には、コンフィグレータ３１１に設定要求４０６が供給（転送）されることのみを示すが、コンフィグレータ３１１への設定要求４０６の転送と並行して、ＵＤＰ／ＴＣＰ処理部３１２へも設定要求４０６が転送される。
【００３７】
設定要求４０６を受信したコンフィグレータ３１１は、受信したパケットのＤＬＣヘッダ、ＩＰヘッダ、ＵＤＰヘッダ、データ部の一部または全てを解析し、当該パケットの内容を判別する。判別の結果、受信したパケットが設定要求であると判別した場合は、設定要求４０６のデータ部に記述されている各値に基づいてプリンタ１０１のネットワーク設定を行う。
【００３８】
ネットワーク設定が完了した後、コンフィグレータ３１１は、ネットワーク設定が完了したことをＰＣ１０２に通知するための設定応答４０７を送信する。設定応答４０７は、コンフィグレータ制御部３１３を介して設定応答４０８としてＰＣ１０２に返送される。
【００３９】
以上の処理により、ネットワーク設定が行われていない状態（ＩＰアドレスが未設定）のプリンタ１０１に対して、ＰＣ１０２から遠隔でネットワーク設定を行うことができる。
【００４０】
図７は、ＰＣ１０２内の任意のアプリケーションがプリンタ１０１内のプリケーション３２０又は３３０と通信する処理を説明するためのシーケンス図である。アプリケーション３２０又は３３０がＬＡＮ１１０上の外部装置と通信するためには、プリンタ１０１に対するネットワーク設定（ＩＰアドレスの設定を含む）が完了している必要がある。
【００４１】
最初に、ＰＣ１０２は、プリンタ１０１に対して処理要求７０１を送信する。処理要求７０１の宛先ＭＡＣアドレスには、プリンタ１０１のネットワークＩ／Ｆ２１７に割り当てられているＭＡＣアドレスが指定される。送信元ＭＡＣアドレスには、ＰＣ１０２のネットワークＩ／Ｆに割り当てられているＭＡＣアドレスが指定される。
【００４２】
処理要求７０１の宛先ＩＰアドレスには、図４に示すシーケンスに従ってネットワークインターフェース２１７（プリンタ１０１）に設定されたＩＰアドレスが指定される。送信元ＩＰアドレスには、ＰＣ１０２のネットワークＩ／Ｆに割り当てられているＩＰアドレスが指定される。
【００４３】
探索要求７０１の宛先ポートには、アプリケーション３２０又は３３０を識別するためのポート情報が指定される。送信元ポートには、ＰＣ１０２が使用するポート情報が指定される。
【００４４】
処理要求７０１を受信したコンフィグレータ制御部３１３は、受信した処理要求７０１を複製し、１つをコンフィグレータ３１１に供給し、もう１つをＵＤＰ／ＴＣＰ処理部３１２に供給する。図７には、ＵＤＰ／ＴＣＰ処理部３１２に処理要求７０２が供給（転送）されることのみを示すが、ＵＤＰ／ＴＣＰ処理部３１２への処理要求７０２の転送と並行して、コンフィグレータ３１１へも処理要求７０２が転送される。
【００４５】
処理要求７０２を受信したＵＤＰ／ＴＣＰ処理部３１２は、受信したパケットのＩＰヘッダ及びＵＤＰヘッダを解析し、当該パケットの転送先とすべきアプリケーションを特定する。そして、特定したアプリケーション３２０又は３３０に対して処理要求７０３を転送する。
【００４６】
処理要求７０３を受信したアプリケーション３２０又は３３０は、必要な処理を行い、処理結果を処理応答７０４として送信する。処理応答７０４は、ＵＤＰ／ＴＣＰ処理部３１２を介して処理応答７０５としてコンフィグレータ制御部３１３に返送される。処理応答７０５を受信したコンフィグレータ制御部３１３は、処理応答７０６をＰＣ１０２に送信する。
【００４７】
以上の処理により、ネットワーク設定が行われた（ＩＰアドレスが設定された）後、プリンタ１０１のアプリケーション３２０又は３３０は、ＬＡＮ１１０上の外部装置と通信する。
【００４８】
ところで、プリンタ１０１のネットワーク設定が完了した後は、コンフィグレータ制御部３１３が設定パケットを処理する機会はない。それにも関わらず、従来はネットワーク設定が行われた後も、ネットワーク処理部３１０が受信するパケットの全てがコンフィグレータ３１１に供給（転送）されていた。
【００４９】
即ち、ネットワーク処理部３１０が受信した全てのパケットに対してコンフィグレータ３１１による解析が行なわれることになるため、これがプリンタ１０１（制御部２１０）にとって大きな負荷となっていた。この負荷により、プリンタ１０１（制御部２１０）が実行する他の各種処理（操作画面の描画処理、印刷処理、画像変換処理など）に遅延が生じてしまうという問題があった。
【００５０】
そこで、第１の実施形態では、プリンタ１０１宛てのパケットであって、且つ、コンフィグレータ３１１が行うネットワーク設定のための設定パケットでないパケットを受信した場合に、コンフィグレータ３１１への受信パケットの供給を停止する。
【００５１】
ＬＡＮ１１０上の外部装置からプリンタ１０１にパケットを送信する場合、宛先となるＭＡＣアドレスを知らなければならないが、通常は、外部装置内のアプリケーションはＩＰアドレスにより宛先を指定する。このため、外部装置は、アプリケーションが指定したＩＰアドレスを問合せ対象として、ＲＦＣ８２６で規定されるＡＲＰ（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）要求をブロードキャスト送信する。ＡＲＰ要求を受け取ったプリンタ１０１は、ＡＲＰ要求で指定されたＩＰアドレスが、自装置に設定されているＩＰアドレスと一致する場合は、自装置のＭＡＣアドレスを応答する。外部装置は、プリンタ１０１からの応答によりプリンタ１０１のＭＡＣアドレスを知ることができる。
【００５２】
一方、プリンタ１０１に適切なネットワーク設定が行われていない状態では、プリンタ１０１はＡＲＰ要求に応答することはないため、外部装置はプリンタ１０１のＭＡＣアドレスを取得することができない。換言すれば、プリンタ１０１のＭＡＣアドレスを宛先としたパケット（コンフィグレータ３１１によるネットワーク設定のための設定パケットを除く）が送信されてきた場合は、プリンタ１０１のネットワーク設定は完了しているものと判断できる。
【００５３】
そこで、第１の実施形態では、プリンタ１０１宛てのパケットであって、且つ、コンフィグレータ３１１が行うネットワーク設定のための設定パケットでないパケットを受信した場合に、ネットワーク設定が完了したと判断する。この場合に、コンフィグレータ３１１への受信パケットの供給を停止することにより、コンフィグレータ３１１によるパケットの解析が行われないようにすることができるため、プリンタ１０１（制御部２１０）の処理負荷を軽減することができる。
【００５４】
図８は、コンフィグレータ３１１へのパケットの供給を停止するために、コンフィグレータ制御部３１３において実行される一連の処理を説明するフローチャートである。図８のフローチャートに示す各動作は、プリンタ１０１のＣＰＵ２１１が制御プログラムを実行することにより実現される。また、図８のフローチャートは、プリンタ１０１の電源が投入されたときに開始される。
【００５５】
ステップＳ８０１では、パケットを受信したか否かを判定する。パケットを受信した場合はステップＳ８０２に進み、そうでなければパケットを受信するまで待機する。
【００５６】
ステップＳ８０２では、供給フラグのオン／オフを判定することにより、コンフィグレータ３１１にパケットを供給するか否かを決定する。プリンタ１０１の電源が投入された後は、コンフィグレータ３１１へのパケットの供給が停止されていない状態になるため、供給フラグはオンになっている。しかし、後述するステップＳ８０７においてコンフィグレータ３１１へのパケットの供給が停止されると、供給フラグはオフになる。
【００５７】
なお、ステップＳ８０７においてコンフィグレータ３１１へのパケットの供給が停止されたとしても、プリンタ１０１の電源が一旦遮断され、再投入されると、供給フラグはオンの状態に戻される。このため、プリンタ１０１の電源を入れ直すことにより、コンフィグレータ３１１へのパケットの供給を再開させることができる。これにより、コンフィグレータ３１１を用いたネットワーク設定の変更を行うことができる。
【００５８】
ステップＳ８０２の判定の結果、コンフィグレータ３１１にパケットを供給すると決定された場合はステップＳ８０３に進む。一方、コンフィグレータ３１１にパケットを供給しないと決定された場合はステップＳ８０８に進み、受信したパケットをＵＤＰ／ＴＣＰ処理部３１２にのみ供給（転送）する。この場合、コンフィグレータ３１１へのパケットの供給（転送）は行われない。
【００５９】
ステップＳ８０３では、受信したパケットを複製する。続くステップＳ８０４では、受信したパケットが自装置（プリンタ１０１）宛てであるか否かを判定する。受信したパケットの宛先ＭＡＣアドレスがプリンタ１０１のネットワークＩ／Ｆ２１７に割り当てられているＭＡＣアドレスと一致する場合は、受信したパケットが自装置宛てであると判定する。一方、宛先ＭＡＣアドレスがブロードキャスト送信を意味するものである場合は、受信したパケットが自装置宛てでないと判定する。
【００６０】
ステップＳ８０４の判定の結果、受信したパケットが自装置宛てでないと判定された場合は、受信したパケットをコンフィグレータ３１１に供給（転送）するとともに、ＵＤＰ／ＴＣＰ処理部３１２にも供給（転送）する（ステップＳ８０６、Ｓ８０８）。
【００６１】
ステップＳ８０４の判定の結果、受信したパケットが自装置宛てであると判定された場合は、ステップＳ８０５に進み、受信したパケットがコンフィグレータ３１１によるネットワーク設定のための設定パケット（例えば、設定要求４０５）であるか否かを判定する。コンフィグレータ制御部３１３は、設定パケットを識別するための識別情報（ポート情報）である「０ｘ８３ｂ６」を予め保持している。そして、受信したパケットに含まれるポート情報が保持されている「０ｘ８３ｂ６」と一致する場合に、受信したパケットが設定パケットであると判定する。
【００６２】
ステップＳ８０５の判定の結果、受信したパケットが設定パケットであると判定された場合は、受信したパケットをコンフィグレータ３１１に供給（転送）するとともに、ＵＤＰ／ＴＣＰ処理部３１２にも供給（転送）する（ステップＳ８０６、Ｓ８０８）。
【００６３】
ステップＳ８０５の判定の結果、受信したパケットが設定パケットでないと判定された場合は、ステップＳ８０７に進み、供給フラグをオフにする。これにより、コンフィグレータ３１１への受信パケットの供給（転送）が停止される。そして、ステップＳ８０８に進み、受信したパケットをＵＤＰ／ＴＣＰ処理部３１２にのみ供給（転送）する。この場合、コンフィグレータ３１１へのパケットの供給（転送）は行われないので、複製されたパケットは破棄される。
【００６４】
以上の処理により、ネットワーク設定が完了したと判断した場合に、コンフィグレータ３１１による受信パケットの解析が行われないようにすることができる。これにより、プリンタ１０１（制御部２１０）の処理負荷を軽減することができる。
【００６５】
（第２の実施形態）
次に本発明の第２の実施形態について説明する。第２の実施形態で説明するプリンタ１０１は、コンフィグレータ３１１によるネットワーク設定の他に、ＤＨＣＰ（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）を用いたネットワーク設定を行うことが可能である。ＤＨＣＰを用いてネットワーク設定を行う場合、外部サーバ（ＤＨＣＰサーバ１０３）と通信する。そして、ＤＨＣＰで使用されるコマンド群のうちＤＨＣＰＡＣＫを受信した場合に、プリンタ１０１のネットワーク設定が完了した（実際には、まもなく完了する見込みである）と判断し、コンフィグレータ３１１へのパケットの供給を停止する。なお、上述した第１の実施形態と同様の構成については同じ符号を付し、詳細な説明は省略する。
【００６６】
図９は、プリンタ１０１のソフトウェア構成を示す図である。図３に示したものと比較して、ＤＨＣＰ処理部９０１が新たに追加されていることが分かる。ＤＨＣＰ処理部９０１は、コンフィグレータ３１１が使用するプロトコルとは異なるＤＨＣＰを用いてプリンタ１０１のネットワーク設定を行う。
【００６７】
図１０は、ＤＨＣＰを用いてプリンタ１０１のネットワーク設定を行う処理を説明するためのシーケンス図である。
【００６８】
最初に、ＤＨＣＰ処理部９０１は、ＤＨＣＰＤＩＳＣＯＶＥＲ１００１をＵＤＰ／ＴＣＰ処理部３１２に送信する。ＵＤＰ／ＴＣＰ処理部３１２は、受信したＤＨＣＰＤＩＳＣＯＶＥＲ１００１を、ＤＨＣＰＤＩＳＣＯＶＥＲ１００２としてコンフィグレータ制御部３１１に転送する。コンフィグレータ制御部３１１は、受信したＤＨＣＰＤＩＳＣＯＶＥＲ１００２を、ＤＨＣＰＤＩＳＣＯＶＥＲ１００３としてＬＡＮ１１０にブロードキャスト送信する。
【００６９】
ＤＨＣＰＤＩＳＣＯＶＥＲ１００３を受信したＤＨＣＰサーバ１０３は、プリンタ１０１に設定可能な値（ＩＰアドレス）の候補を記述したＤＨＣＰＯＦＦＥＲ１００４を応答する。
【００７０】
ＤＨＣＰＯＦＦＥＲ１００４を受信したコンフィグレータ制御部３１１は、受信したＤＨＣＰＯＦＦＥＲ１００４を複製し、１つをコンフィグレータ３１１に供給し、もう１つをＵＤＰ／ＴＣＰ処理部３１２に供給する。図１０には、ＵＤＰ／ＴＣＰ処理部３１２にＤＨＣＰＯＦＦＥＲ１００５が供給（転送）されることのみを示す。しかし、ＵＤＰ／ＴＣＰ処理部３１２へのＤＨＣＰＯＦＦＥＲ１００５の転送と並行して、コンフィグレータ３１１へもＤＨＣＰＯＦＦＥＲ１００５が転送される。
【００７１】
ＵＤＰ／ＴＣＰ処理部３１２は、受信したＤＨＣＰＯＦＦＥＲ１００５を、ＤＨＣＰＯＦＦＥＲ１００６としてＤＨＣＰ処理部９０１に転送する。ＤＨＣＰ処理部９０１は、ＤＨＣＰＯＦＦＥＲ１００６に含まれる候補に、過去に使用したことがある値が含まれていれば、その値を選択する。過去に使用したことがある値が候補に含まれていない場合は、所定の条件に従って任意の値を選択する。
【００７２】
そして、選択した値をＤＨＣＰサーバ１０３に通知すべく、ＤＨＣＰＲＥＱＵＥＳＴ１００７をＵＤＰ／ＴＣＰ処理部３１２に送信する。ＵＤＰ／ＴＣＰ処理部３１２は、受信したＤＨＣＰＲＥＱＵＥＳＴ１００７を、ＤＨＣＰＲＥＱＵＥＳＴ１００８としてコンフィグレータ制御部３１１に転送する。コンフィグレータ制御部３１１は、受信したＤＨＣＰＲＥＱＵＥＳＴ１００８を、ＤＨＣＰＲＥＱＵＥＳＴ１００９としてＬＡＮ１１０にブロードキャスト送信する。
【００７３】
ＤＨＣＰＲＥＱＵＥＳＴ１００９を受信したＤＨＣＰサーバ１０３は、ＤＨＣＰ処理部９０１が選択した値を確認し、ＤＨＣＰＡＣＫ１０１０をプリンタ１０１０に応答する。
【００７４】
ＤＨＣＰＡＣＫ１０１０を受信したコンフィグレータ制御部３１１は、ＵＤＰ／ＴＣＰ処理部３１２にＤＨＣＰＡＣＫ１０１１を転送する。
【００７５】
ＵＤＰ／ＴＣＰ処理部３１２は、受信したＤＨＣＰＡＣＫ１０１１を、ＤＨＣＰＡＣＫ１０１２としてＤＨＣＰ処理部９０１に転送する。ＤＨＣＰ処理部９０１は、ＤＨＣＰＡＣＫ１０１２を確認した後で、選択した値に基づいて自装置のネットワーク設定を行い、処理を終了する。
以上の処理により、ＤＨＣＰを用いてプリンタ１０１のネットワーク設定を行うことができる。
【００７６】
図１１は、コンフィグレータ３１１へのパケットの供給を停止するために、コンフィグレータ制御部３１３において実行される一連の処理を説明するフローチャートである。図１１のフローチャートに示す各動作は、プリンタ１０１のＣＰＵ２１１が制御プログラムを実行することにより実現される。なお、図１１のフローチャートは、図８のフローチャートのステップＳ８０４及びＳ８０５に代えて、ステップＳ１０１１の処理が追加されている。
【００７７】
ステップＳ８０１では、パケットを受信したか否かを判定する。パケットを受信した場合はステップＳ８０２に進み、そうでなければパケットを受信するまで待機する。
【００７８】
ステップＳ８０２では、供給フラグのオン／オフを判定することにより、コンフィグレータ３１１にパケットを供給するか否かを決定する。プリンタ１０１の電源が投入された後は、コンフィグレータ３１１へのパケットの供給が停止されていない状態になるため、供給フラグはオンになっている。しかし、後述するステップＳ８０７においてコンフィグレータ３１１へのパケットの供給が停止されると、供給フラグはオフになる。
【００７９】
なお、ステップＳ８０７においてコンフィグレータ３１１へのパケットの供給が停止されたとしても、プリンタ１０１の電源が一旦遮断され、再投入されると、供給フラグはオンの状態に戻される。このため、プリンタ１０１の電源を入れ直すことにより、コンフィグレータ３１１へのパケットの供給を再開させることができる。これにより、コンフィグレータ３１１を用いたネットワーク設定の変更を行うことができる。
【００８０】
ステップＳ８０２の判定の結果、コンフィグレータ３１１にパケットを供給すると決定された場合はステップＳ８０３に進む。一方、コンフィグレータ３１１にパケットを供給しないと決定された場合はステップＳ８０８に進み、受信したパケットをＵＤＰ／ＴＣＰ処理部３１２にのみ供給（転送）する。この場合、コンフィグレータ３１１へのパケットの供給（転送）は行われない。
【００８１】
ステップＳ８０３では、受信したパケットを複製する。続くステップＳ１１０１では、受信したパケットがＤＨＣＰで送受信されるパケット群に含まれるＤＨＣＰＡＣＫであるか否かを判定する。この判定の結果、受信したパケットがＤＨＣＰＡＣＫでないと判定された場合は、受信したパケットをコンフィグレータ３１１に供給（転送）するとともに、ＵＤＰ／ＴＣＰ処理部３１２にも供給（転送）する（ステップＳ８０６、Ｓ８０８）。
【００８２】
ステップＳ１１０１の判定の結果、受信したパケットがＤＨＣＰＡＣＫであると判定された場合は、ステップＳ８０７に進み、供給フラグをオフにする。これにより、コンフィグレータ３１１への受信パケットの供給（転送）を停止する。そして、ステップＳ８０８に進み、受信したパケットをＵＤＰ／ＴＣＰ処理部３１２にのみ供給（転送）する。この場合、コンフィグレータ３１１へのパケットの供給（転送）は行われないので、複製されたパケットは破棄される。
【００８３】
以上の処理により、ネットワーク設定が完了したと判断した場合に、コンフィグレータ３１１による受信パケットの解析が行われないようにすることができる。これにより、プリンタ１０１（制御部２１０）の処理負荷を軽減することができる。
【００８４】
〔他の実施形態〕
なお、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。
【００８５】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【図１】
0005501052.tif 000002
【図２】
0005501052.tif 000003
【図３】
0005501052.tif 000004
【図４】
0005501052.tif 000005
【図５】
0005501052.tif 000006
【図６】
0005501052.tif 000007
【図７】
0005501052.tif 000008
【図８】
0005501052.tif 000009
【図９】
0005501052.tif 000010
【図１０】
0005501052.tif 000011
【図１１】
0005501052.tif 000012