(57)【特許請求の範囲】
【請求項１】
ネットワークに接続されているデバイスのＩＰアドレスが登録される登録サーバに、前記ネットワークを介して接続される通信装置であって、
前記通信装置のＩＰアドレスが前記登録サーバに登録されていることを示す所定の情報をメモリに記憶させる記憶制御部と、
前記メモリ内の前記所定の情報を用いて、前記通信装置の前記ＩＰアドレスが、前記登録サーバに登録されているか否かを判断する第１の登録判断部と、
前記ネットワークに接続されている送信元デバイスから前記通信装置の前記ＩＰアドレスを問い合わせるためのＩＰアドレス問合信号が受信され、かつ、前記通信装置の前記ＩＰアドレスが前記登録サーバに登録されていると判断される場合に、前記ＩＰアドレス問合信号の送信元デバイスに向けて、前記通信装置の前記ＩＰアドレスを送信せず、前記ＩＰアドレス問合信号が受信され、かつ、前記通信装置の前記ＩＰアドレスが前記登録サーバに登録されていないと判断される場合に、前記ＩＰアドレス問合信号の送信元デバイスに向けて、前記通信装置の前記ＩＰアドレスを送信する、ＩＰアドレス送信部と、
前記所定の情報が前記メモリに記憶された後に、前記登録サーバと通信可能であるのか否かを確認する確認部と、を備え、
前記記憶制御部は、前記登録サーバと通信可能でないことが確認される場合に、前記所定の情報を、前記メモリから削除する通信装置。
【請求項２】
前記記憶制御部は、前記登録サーバのＩＰアドレスがユーザによって指定される場合に、前記所定の情報を、前記メモリに記憶させる、請求項１に記載の通信装置。
【請求項３】
前記記憶制御部は、前記通信装置の前記ＩＰアドレスが前記登録サーバに登録される際に、前記登録サーバから送信される特定の信号を受信する場合に、前記所定の情報を、前記メモリに記憶させる、請求項１又は２に記載の通信装置。
【請求項４】
前記通信装置の前記ＩＰアドレスが前記登録サーバに登録されたのか否かを、前記登録サーバに問い合わせる問合部をさらに備え、
前記記憶制御部は、前記問い合わせに応じて、前記登録サーバから送信される前記特定の信号を受信する場合に、前記所定の情報を、前記メモリに記憶させる、請求項３に記載の通信装置。
【請求項５】
前記ネットワークから受信されるパケットが示すプロトコルの種類に基づいて、当該パケットが前記ＩＰアドレス問合信号であるのか否かを判断する信号判断部をさらに備える、請求項１から４のいずれか一項に記載の通信装置。
【請求項６】
消費電力が比較的に高い高消費状態と、消費電力が比較的に低い低消費状態と、の間で移行可能であるプロセッサを備え、
前記プロセッサは、前記第１の登録判断部と、前記ＩＰアドレス送信部と、を備え、
前記プロセッサは、前記プロセッサを前記高消費状態と前記低消費状態との間で移行させる移行制御部を、さらに備え、
前記プロセッサが前記高消費状態である間に、前記ＩＰアドレス問合信号が受信される場合に、前記ＩＰアドレス送信部は、前記通信装置の前記ＩＰアドレスが前記登録サーバに登録されているのか否かに関わらず、前記ＩＰアドレス問合信号の送信元デバイスに向けて、前記通信装置の前記ＩＰアドレスを送信し、
前記プロセッサが前記低消費状態である間に、前記ＩＰアドレス問合信号が受信され、かつ、前記通信装置の前記ＩＰアドレスが前記登録サーバに登録されていないと判断される場合に、
前記移行制御部は、前記プロセッサを前記低消費状態から前記高消費状態に移行させ、
前記ＩＰアドレス送信部は、前記ＩＰアドレス問合信号の送信元デバイスに向けて、前記通信装置の前記ＩＰアドレスを送信し、
前記プロセッサが前記低消費状態である間に、前記ＩＰアドレス問合信号が受信され、かつ、前記通信装置の前記ＩＰアドレスが前記登録サーバに登録されていると判断される場合に、
前記移行制御部は、前記プロセッサを前記低消費状態から前記高消費状態に移行させず、
前記ＩＰアドレス送信部は、前記ＩＰアドレス問合信号の送信元デバイスに向けて、前記通信装置の前記ＩＰアドレスを送信しない、請求項１から５のいずれか一項に記載の通信装置。
【請求項７】
前記ネットワークに接続されている特定のデバイスのＩＰアドレスを、前記登録サーバから取得するための第１の取得信号を、前記登録サーバに送信する第１の信号送信部と、
前記特定のデバイスの前記ＩＰアドレスを、前記特定のデバイスから取得するための第２の取得信号を、ブロードキャスト及びマルチキャストの少なくとも一方で送信する第２の信号送信部と、
前記特定のデバイスの前記ＩＰアドレスが取得されるべき際に、前記特定のデバイスの前記ＩＰアドレスが、前記登録サーバに登録されているのか否かを判断する第２の登録判断部と、をさらに備え、
前記特定のデバイスの前記ＩＰアドレスが前記登録サーバに登録されていないと判断される場合に、
前記第２の信号送信部は、前記第２の取得信号をブロードキャスト及びマルチキャストの少なくとも一方で送信し、
を実行し、
前記特定のデバイスの前記ＩＰアドレスが前記登録サーバに登録されていると判断される場合に、
前記第１の信号送信部は、前記第１の取得信号を前記登録サーバに送信し、
前記第２の信号送信部は、前記第２の取得信号を送信しない、請求項１から６のいずれか一項に記載の通信装置。
【請求項８】
ネットワークに接続されているデバイスのＩＰアドレスが登録される登録サーバに、前記ネットワークを介して接続される通信装置のためのコンピュータプログラムであって、
前記通信装置に搭載されたコンピュータに、
前記通信装置のＩＰアドレスが前記登録サーバに登録されていることを示す所定の情報をメモリに記憶させる記憶制御処理と、
前記メモリ内の前記所定の情報を用いて、前記通信装置の前記ＩＰアドレスが、前記登録サーバに登録されているか否かを判断する判断処理と、
前記ネットワークに接続されている送信元デバイスから前記通信装置の前記ＩＰアドレスを問い合わせるためのＩＰアドレス問合信号が受信され、かつ、前記通信装置の前記ＩＰアドレスが前記登録サーバに登録されていると判断される場合に、前記ＩＰアドレス問合信号の送信元デバイスに向けて、前記通信装置の前記ＩＰアドレスを送信せず、前記ＩＰアドレス送信処理では、前記ＩＰアドレス問合信号が受信され、かつ、前記通信装置の前記ＩＰアドレスが前記登録サーバに登録されていないと判断される場合に、前記ＩＰアドレス問合信号の送信元デバイスに向けて、前記通信装置の前記ＩＰアドレスを送信するＩＰアドレス送信処理と、
前記所定の情報が前記メモリに記憶された後に、前記登録サーバと通信可能であるのか否かを確認する確認処理と、を実行させ、
前記記憶制御処理では、前記登録サーバと通信可能でないことが確認される場合に、前記所定の情報を、前記メモリから削除する、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書では、ネットワークに接続されているデバイスのＩＰアドレスが登録される登録サーバと、ネットワークを介して接続される通信装置を開示する。
【背景技術】
【０００２】
特許文献１には、ネットワークに接続されているプリンタが開示されている。プリンタは、プリンタのノード名を含む信号をＰＣから受信すると、プリンタのＩＰアドレスをＰＣに送信する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−１９６１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ネットワークに接続されている通信装置は、ネットワーク上の他の通信装置から、ＩＰアドレスを定期的に取得する。上記の他の通信装置は、自身のＩＰアドレスを、定期的に送信しなければならない。
【０００５】
通信装置の省電力化が望まれている。本明細書では、通信装置がＩＰアドレスを送信する機会を低減することによって、省電力化を実現し得る技術を提供する。
【課題を解決するための手段】
【０００６】
本明細書によって開示される技術は、ネットワークに接続されているデバイスのＩＰアドレスが登録される登録サーバに、ネットワークを介して接続される通信装置である。通信装置は、第１の登録判断部とＩＰアドレス送信部とを備える。第１の登録判断部は、通信装置のＩＰアドレスが、登録サーバに登録されているか否かを判断する。ＩＰアドレス送信部は、ネットワークに接続されている送信元デバイスから通信装置のＩＰアドレスを問い合わせるためのＩＰアドレス問合信号が受信され、かつ、通信装置のＩＰアドレスが登録サーバに登録されていると判断される場合に、ＩＰアドレス問合信号の送信元デバイスに向けて、通信装置のＩＰアドレスを送信しない。ＩＰアドレス送信部は、ＩＰアドレス問合信号が受信され、かつ、通信装置のＩＰアドレスが登録サーバに登録されていないと判断される場合に、ＩＰアドレス問合信号の送信元デバイスに向けて、通信装置のＩＰアドレスを送信する。
【０００７】
上記の通信装置は、通信装置のＩＰアドレスが登録サーバに登録されていないと判断される場合に、ＩＰアドレス問合信号の送信元デバイスに向けて、通信装置のＩＰアドレスを送信する。これにより、上記の送信元デバイスは、通信装置のＩＰアドレスを取得することができる。一方、上記の通信装置は、通信装置のＩＰアドレスが登録サーバに登録されていると判断される場合に、ＩＰアドレス問合信号の送信元デバイスに向けて、通信装置のＩＰアドレスを送信しない。このような状況では、送信元デバイスは、通信装置のＩＰアドレスを登録サーバから取得し得るからである。この構成によれば、通信装置が送信元デバイスに向けてＩＰアドレスを送信しない場合があるために、通信装置の省電力化を実現し得る。
【０００８】
通信装置は、通信装置のＩＰアドレスが登録サーバに登録されているのか否かに関する所定の情報をメモリに記憶させる記憶制御部を、さらに備えていてもよい。第１の登録判断部は、メモリ内の上記の所定の情報を用いて、通信装置のＩＰアドレスが登録サーバに登録されているのか否かを判断してもよい。この構成によれば、通信装置は、通信装置のＩＰアドレスが登録サーバに登録されているのか否かを判断する際に、上記の所定の情報を用いればよく、登録サーバに問い合わせなくて済む。
【０００９】
記憶制御部は、登録サーバのＩＰアドレスがユーザによって指定される場合に、通信装置のＩＰアドレスが登録サーバに登録されていることを示す上記の所定の情報を、メモリに記憶させてもよい。この構成によると、通信装置は、上記の所定の情報をメモリに適切に記憶させ得る。
【００１０】
記憶制御部は、通信装置のＩＰアドレスが登録サーバに登録される際に、登録サーバから送信される特定の信号を受信する場合に、通信装置のＩＰアドレスが登録サーバに登録されていることを示す上記の所定の情報を、メモリに記憶させてもよい。この構成によると、通信装置は、上記の所定の情報をメモリに適切に記憶させ得る。
【００１１】
通信装置は、通信装置のＩＰアドレスが登録サーバに登録されたのか否かを、登録サーバに問い合わせる問合部をさらに備えていてもよい。記憶制御部は、上記の問い合わせに応じて、登録サーバから送信される上記の特定の信号を受信する場合に、通信装置のＩＰアドレスが登録サーバに登録されていることを示す上記の所定の情報を、メモリに記憶させてもよい。この構成によれば、通信装置は、上記の所定の情報をメモリに適切に記憶させ得る。
【００１２】
通信装置は、通信装置のＩＰアドレスが登録サーバに登録されていることを示す上記の所定の情報がメモリに記憶された後に、登録サーバと通信可能であるのか否かを確認する確認部をさらに備えていてもよい。記憶制御部は、登録サーバと通信可能でないことが確認される場合に、通信装置のＩＰアドレスが登録サーバに登録されていることを示す上記の所定の情報を、メモリから削除してもよい。通信装置が登録サーバと通信不可能である状況では、他のデバイスも登録サーバと通信不可能である可能性が高い。即ち、上記の送信元デバイスは、通信装置のＩＰアドレスを、登録サーバから取得することができない。従って、通信装置は、通信装置が登録サーバと通信不可能である場合に、上記の所定の情報がメモリから削除する。これにより、通信装置は、ＩＰアドレス問合信号の送信元デバイスに向けて、通信装置のＩＰアドレスを送信することができる。この構成によれば、送信元デバイスは、登録サーバと通信不可能である場合でも、通信装置のＩＰアドレスを取得することができる。
【００１３】
通信装置は、ネットワークから受信されるパケットが示すプロトコルの種類に基づいて、当該パケットがＩＰアドレス問合信号であるのか否かを判断する信号判断部をさらに備えていてもよい。この構成によれば、通信装置は、受信されたパケットが、ＩＰアドレス問合信号であるのか否かを適切に判断し得る。
【００１４】
通信装置は、消費電力が比較的に高い高消費状態と、消費電力が比較的に低い低消費状態と、の間で移行可能であるプロセッサを備えていてもよい。プロセッサは、第１の登録判断部と、ＩＰアドレス送信部と、を備えていてもよい。プロセッサは、プロセッサを高消費状態と低消費状態との間で移行させる移行制御部を、さらに備えていてもよい。プロセッサが高消費状態である間に、ＩＰアドレス問合信号が受信される場合に、ＩＰアドレス送信部は、通信装置のＩＰアドレスが登録サーバに登録されているのか否かに関わらず、ＩＰアドレス問合信号の送信元デバイスに向けて、通信装置のＩＰアドレスを送信してもよい。プロセッサが低消費状態である間に、ＩＰアドレス問合信号が受信され、かつ、通信装置のＩＰアドレスが登録サーバに登録されていないと判断される場合に、移行制御部は、プロセッサを低消費状態から高消費状態に移行させ、ＩＰアドレス送信部は、問合せ信号の送信元のデバイスに向けて、通信装置のＩＰアドレスを送信してもよい。プロセッサが低消費状態である間に、ＩＰアドレス問合信号である上記の特定の信号が受信される場合において、通信装置のＩＰアドレスが登録サーバに登録されていると判断される場合に、移行制御部は、プロセッサを低消費状態から高消費状態に移行させず、ＩＰアドレス送信部は、ＩＰアドレス問合信号の送信元デバイスに向けて、通信装置のＩＰアドレスを送信しなくてもよい。この構成によれば、プロセッサが低消費状態である間に、ＩＰアドレス問合信号が受信される場合に、プロセッサが高消費状態に移行される頻度を少なくすることができる。この結果、通信装置の消費電力を低減することができる。また、プロセッサが高消費状態である間に、ＩＰアドレス問合信号が受信される場合に、通信装置は、通信装置のＩＰアドレスが登録サーバに登録されているのか否かに関わらず、ＩＰアドレスを送信元デバイスに送信する。従って、通信装置は、通信装置のＩＰアドレスを、送信元デバイスに適切に供給することができる。
【００１５】
通信装置は、第１の信号送信部と第２の信号送信部と第２の登録判断部とをさらに備えていてもよい。第１の信号送信部は、ネットワークに接続されている特定のデバイスのＩＰアドレスを、登録サーバから取得するための第１の取得信号を、登録サーバに送信してもよい。第２の信号送信部は、上記の特定のデバイスのＩＰアドレスを、上記の特定のデバイスから取得するための第２の取得信号を、ブロードキャスト及びマルチキャストの少なくとも一方で送信してもよい。第２の登録判断部は、上記の特定のデバイスのＩＰアドレスが取得されるべき際に、上記の特定のデバイスのＩＰアドレスが、登録サーバに登録されているのか否かを判断してもよい。上記の特定のデバイスのＩＰアドレスが登録サーバに登録されていないと判断される場合に、第２の信号送信部は、第２の取得信号をブロードキャスト及びマルチキャストの少なくとも一方で送信してもよい。上記の特定のデバイスのＩＰアドレスが登録サーバに登録されていると判断される場合に、第１の信号送信部は、第１の取得信号を登録サーバに送信し、第２の信号送信部は、第２の取得信号を送信しなくてもよい。この構成によると、通信装置は、上記の特定のデバイスのＩＰアドレスが登録サーバに登録されていると判断される場合に、第１の取得信号を登録サーバに送信するが、第２の取得信号を送信しない。上記の特定のデバイスのＩＰアドレスが登録サーバに登録されている場合には、通信装置は、上記の特定のデバイスからＩＰアドレスを取得しなくても、登録サーバからＩＰアドレスを取得することができる。この場合、第２の取得信号が送信されないために、通信装置の省電力化を実現し得る。
【００１６】
なお、上記の通信装置を実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムが記憶された記憶媒体も、新規で有用である。また、上記の通信装置と上記の登録サーバとを含むシステムも新規で有用である。
【図面の簡単な説明】
【００１７】
【図１】ネットワークシステムの構成を示す。
【図２】メインＣＰＵが実行する処理のフローチャートを示す。
【図３】メインＣＰＵが実行するＩＰアドレス設定処理のフローチャートを示す。
【図４】メインＣＰＵが実行する登録済フラグ変更処理のフローチャートを示す。
【図５】サブＣＰＵが実行する処理のフローチャートを示す。
【図６】メイン及びサブＣＰＵが実行する名前解決処理のフローチャートを示す。
【図７】各装置が実行する処理のシーケンス図を示す。
【図８】多機能機１０が名前解決を実行する場合のシーケンス図を示す。
【発明を実施するための形態】
【００１８】
図１に示すように、ネットワークシステム２は、ＰＣ１００と、多機能機（即ちＰＣ１００の周辺機器）１０と、サーバ２００と、を備える。各装置１０，１００，２００は、ＬＡＮ４を介して、相互に通信可能である。
【００１９】
（多機能機１０の構成）
図１に示すように、多機能機１０は、ＡＳＩＣ（Application Specific Integrated Circuit）１２、フラッシュメモリ７０、ＳＤＲＡＭ８０、ネットワークインターフェイス９０、プリンタエンジン９２、及び、表示パネル９４を備える。
【００２０】
ＡＳＩＣ１２は、メインＣＰＵ２０、メイン用クロック回路３６、サブＣＰＵ４０、サブ用クロック回路４２、ＳＲＡＭ６０、ＳＤＲＡＭ制御回路６４、及び、ＭＡＣコントローラ６６を備える。
【００２１】
メインＣＰＵ２０は、ＳＤＲＡＭ８０に格納されているプログラム８２に従って様々な処理を実行する。これにより、ＩＰアドレス送信部２２、記憶制御部２４、問合部２６、確認部２８、第１の信号送信部３０、第２の信号送信部３２、及び、第２の登録判断部３４の機能が実現される。メイン用クロック回路３６は、メインＣＰＵ２０にクロック信号を供給する。メイン用クロック回路３６からメインＣＰＵ２０にクロック信号が供給されている間は、メインＣＰＵ２０は非スリープ状態である。メインＣＰＵ２０にクロック信号が供給されていない間は、メインＣＰＵ２０はスリープ状態である。メインＣＰＵ２０のスリープ状態は、メインＣＰＵ２０の非スリープ状態と比較して、消費電力が低い状態である。メイン用クロック回路３６は、サブＣＰＵ４０によってメインＣＰＵ２０へのクロック信号の供給と停止を制御可能である。
【００２２】
サブＣＰＵ４０は、ＳＲＡＭ６０に格納されているプログラム６２に従って様々な処理を実行する。これにより、第１の登録判断部４４、記憶制御部４６、第２の登録判断部４８、信号判断部５０、移行制御部５２、第１の信号送信部５４、第２の信号送信部５６、及び、確認部５８の機能が実現される。サブ用クロック回路４２は、サブＣＰＵ４０にクロック信号を供給する。サブ用クロック回路４２のクロック信号の周波数は、メイン用クロック回路３６のクロック信号の周波数よりも低い。従って、メインＣＰＵ２０を駆動するための消費電力と比べて、サブＣＰＵ４０を駆動するための消費電力は低い。さらに、メインＣＰＵ２０の処理速度は、サブＣＰＵ４０の処理速度よりも速い。サブ用クロック回路４２は、多機能機１０の電源がＯＮにされるとサブＣＰＵ４０にクロック信号を供給し、多機能機１０の電源がＯＦＦにされるとクロック信号を停止する。即ち、サブＣＰＵ４０は、多機能機１０の電源がＯＮされている間、クロック信号が供給されている状態（非スリープ状態）で維持される。変形例では、サブＣＰＵ４０は、メインＣＰＵ２０が非スリープ状態である間、スリープ状態であってもよい。
【００２３】
ＳＲＡＭ６０は、各ＣＰＵ２０，４０からアクセス可能である。多機能機１０の電源がＯＮされると、メインＣＰＵ２０は、フラッシュメモリ７０内の圧縮されたプログラム７２を展開して、展開済みのプログラム６２をＳＲＡＭ６０に格納する。
【００２４】
ＳＤＲＡＭ制御回路６４は、サブＣＰＵ４０からの指示に従って、ＳＤＲＡＭ８０に対するクロック信号の供給を開始又は停止して、消費電力が比較的に高い通常動作モードと、消費電力が比較的に低いセルフリフレッシュモードと、の間でＳＤＲＡＭ８０の状態を移行させる。
【００２５】
ＭＡＣコントローラ６６は、ネットワークインターフェイス９０に接続されている。ＭＡＣコントローラ６６は、ＬＡＮ４等を介して、ネットワークインターフェイス９０でパケットが受信されると、メインＣＰＵ２０又はサブＣＰＵ４０の割込コントローラ（図示省略）にパケット割込要求信号を供給する。
【００２６】
フラッシュメモリ７０は、ＡＳＩＣ１２の外部に設けられている。フラッシュメモリ７０は、各ＣＰＵ２０，４０からアクセス可能である。フラッシュメモリ７０は、各ＣＰＵ２０，４０によって実行されるプログラム６２，８２が圧縮された状態のプログラム７２を格納している。
【００２７】
ＳＤＲＡＭ８０は、メインＣＰＵ２０からアクセス可能である。ＳＤＲＡＭ８０は、ＳＲＡＭ６０よりもメモリの総容量が大きく、各ＣＰＵ２０，４０がアクセス（読み出し、書き込み）可能な速度が高速である。このため、ＳＤＲＡＭ８０の消費電力は、ＳＲＡＭ６０の消費電力と比べて高い。ＳＤＲＡＭ８０は、ＳＤＲＡＭ制御回路６４によって制御され、通常動作モードとセルフリフレッシュモードとの間で状態が移行する。
【００２８】
プリンタエンジン９２は、インクジェット方式、レーザ方式等の印刷機構を備える。プリンタエンジン９２は、メインＣＰＵ２０からの指示に従って、印刷を実行する。表示パネル９４は、メインＣＰＵ２０からの指示に従って、情報を表示する。
【００２９】
（多機能機の状態移行）
多機能機１０は、レディ状態とスリープ状態との間で、状態が移行する。多機能機１０の電源がＯＮされると、多機能機１０は、レディ状態となる。
【００３０】
レディ状態では、２個のＣＰＵ２０，４０は非スリープ状態（クロックが供給されている状態）である。また、レディ状態では、２個のＲＡＭ６０，８０は通常動作モードである。レディ状態では、メインＣＰＵ２０は、通常の処理を実行することができる。上記の通常の処理は、印刷指示パケットに従ったプリンタエンジン９２での印刷処理、ユーザの表示パネル９４への操作に従った表示処理等を含む。
【００３１】
多機能機１０は、サブＣＰＵ４０が後述する図５のＳ７４，Ｓ７６の移行処理を実行することによって、レディ状態からスリープ状態に移行する。スリープ状態では、メインＣＰＵ２０はスリープ状態であり、サブＣＰＵ４０は非スリープ状態であり、ＳＲＡＭ６０は通常動作モードであり、ＳＤＲＡＭ８０はセルフリフレッシュモードである。多機能機１０がスリープ状態であって、メインＣＰＵ２０が上記の通常の処理（印刷処理、表示処理等）を実行すべき場合には、多機能機１０は、レディ状態に移行する。
【００３２】
（サーバ２００の構成）
サーバ２００は、ＤＨＣＰ（Dynamic Host Configuration Protocol）サーバ２１０と、ＤＮＳ（Domain Name System）サーバ２２０と、の機能を実現する。即ち、本実施例では、ＤＨＣＰサーバ２１０とＤＮＳサーバ２２０とは、一体に構成されている。なお、変形例では、ＤＨＣＰサーバ２１０とＤＮＳサーバ２２０とは、別体であってもよい。
【００３３】
ＤＨＣＰサーバ２１０は、ＬＡＮ４に接続されているデバイス（例えば、多機能機１０、ＰＣ１００等）からの要求に応じて、上記のデバイスにＩＰアドレス及びサブネットマスクを割り当てる。例えば、多機能機１０は、ＩＰアドレスの割り当てを要求する割当要求パケットをＤＨＣＰサーバ２１０に送信する。なお、割当要求パケットには、多機能機１０のノード名（即ち「ＭＦＰ１０」）が含まれる。ＤＨＣＰサーバ２１０は、予め決められているＩＰアドレスの範囲内から選択されるＩＰアドレスと、予め決められているサブネットマスクと、を多機能機１０に割り当てる（送信する）。これにより、多機能機１０は、ＤＨＣＰサーバ２１０からＩＰアドレス及びサブネットマスクを取得して、多機能機１０の設定値として記憶することができる。同様に、ＰＣ１００は、ＤＨＣＰサーバ２１０からＩＰアドレス及びサブネットマスクを取得して、ＰＣ１００の設定値として記憶することができる。
【００３４】
（ＤＮＳサーバ２２０の構成）
ＤＮＳサーバ２２０は、ＩＰアドレステーブル２２２を格納している。ＩＰアドレステーブル２２２は、ＬＡＮ４に接続されている複数のデバイス（例えば、多機能機１０、ＰＣ１００等）のそれぞれについて、当該デバイスのノード名（例えば「ＭＦＰ１０」、「ＰＣ１００」）と、当該デバイスのＩＰアドレスと、の組合せを記憶可能である。即ち、ＤＮＳサーバ２２０は、ノード名とＩＰアドレスとの組み合わせを、ＩＰアドレステーブル２２２に登録することができる。なお、変形例では、ノード名とＩＰアドレスとの組み合わせを登録する登録サーバは、ＷＩＮＳ（Windows (登録商標) Internet Name Service）サーバであってもよい。
【００３５】
（ＤＮＳサーバ２２０へのＩＰアドレスの登録方法）
ＤＨＣＰサーバ２１０は、ＬＡＮ４に接続されているデバイス（例えば、多機能機１０、ＰＣ１００等）に、ＩＰアドレスを割り当てると、割当要求パケットに含まれるノード名（例えば「ＭＦＰ１０」、「ＰＣ１００」）と、割り当てたＩＰアドレスと、の組合せを、ＤＮＳサーバ２２０に供給する。ＤＮＳサーバ２２０は、ＤＨＣＰサーバ２１０から取得されたノード名とＩＰアドレスとの組合せを、ＩＰアドレステーブル２２２に登録する。
【００３６】
ＤＮＳサーバ２２０は、さらに、ＬＡＮ４に接続されているデバイス（例えば、多機能機１０、ＰＣ１００等）から、ＩＰアドレスの登録の要求を受けると、ノード名とＩＰアドレスとの組合せを、ＩＰアドレステーブル２２２に登録する。例えば、ＰＣ１００は、ＰＣ１００自身のＩＰアドレスの登録を要求する登録要求パケットをＤＮＳサーバ２２０に送信する。なお、当該登録要求パケットには、ＰＣ１００自身のノード名「ＰＣ１００」と、ＰＣ１００自身のＩＰアドレスと、の組合せが含まれる。また、ＰＣ１００は、ＬＡＮ４に接続されている他のデバイス（例えば多機能機１０）のＩＰアドレスの登録を要求する登録要求パケットをＤＮＳサーバ２２０に送信することができる。当該登録要求パケットには、多機能機１０のノード名「ＭＦＣ１０」と、多機能機１０のＩＰアドレスと、の組合せが含まれる。
【００３７】
（ＰＣ１００の構成）
ＰＣ１００は、ＬＡＮ４に接続されている他のデバイス（例えば、多機能機１０等）のＩＰアドレスを問い合わせるＩＰアドレス問合せパケットを、ＤＮＳサーバ２２０に送信（ユニキャスト）することができる。ＤＮＳサーバ２２０は、ＩＰアドレス問合せパケットを受信すると、ＩＰアドレステーブル２２２から、ＩＰアドレス問合せパケットに含まれているノード名（例えば多機能機１０のノード名）と組み合わされているＩＰアドレスを特定して、ＰＣ１００に送信する。ＰＣ１００は、ＤＮＳサーバ２２０からＩＰアドレスを受信することによって、他のデバイス（例えば多機能機１０）のＩＰアドレスを知ることができる。以下では、ＤＮＳサーバ２２０にＩＰアドレス問合せパケットを送信することによってＩＰアドレスを取得する手法のことを「静的な名前解決」と呼び、ＩＰアドレス問合せパケットのことを「名前解決パケット」と呼ぶ。
【００３８】
また、ＰＣ１００は、名前解決パケットをブロードキャスト又はマルチキャストでＬＡＮ４に送信することもできる。名前解決パケットのプロトコルは、ＮｅｔＢＩＯＳ（Network Basic Input Output System）又はＬＬＭＮＲ（Link-local Multicast Name Resolution）である。この場合、ＬＡＮ４に接続されている各デバイスが名前解決パケットを受信する。各デバイスは、名前解決パケットに自身のノード名が含まれている場合に、自身のＩＰアドレスを含む応答をＰＣ１００に送信する。ＰＣ１００は、名前解決パケットの応答を受信することによって、ＬＡＮ４に接続されているデバイス（例えば、多機能機１０等）のＩＰアドレスを取得することができる。以下では、名前解決パケットをブロードキャスト等で送信することによって、ＬＡＮ４に接続されているデバイスからＩＰアドレスを取得する手法のことを「動的な名前解決」と呼ぶ。
【００３９】
ＰＣ１００は、静的な名前解決と動的な名前解決との両方の名前解決を同時的に実行することができる。例えば、ＰＣ１００が、多機能機１０のＩＰアドレスを取得するために、上記の両方の名前解決を実行した結果、ＤＮＳサーバ２２０及び多機能機１０の両者から多機能機１０のＩＰアドレスを取得することができる場合には、より早く取得されたＩＰアドレスを、多機能機１０のＩＰアドレスとして利用する。
【００４０】
（メインＣＰＵ２０が実行する処理）
次いで、非スリープ状態（即ち多機能機１０がレディ状態）のメインＣＰＵ２０が実行する処理の内容について説明する。なお、スリープ状態のメインＣＰＵ２０は、クロック供給が停止されているために、処理を実行することができない。図２の処理は、メインＣＰＵ２０が非スリープ状態にある間に、繰り返し実行される。
【００４１】
Ｓ１２では、メインＣＰＵ２０は、ＬＡＮ４を介して、パケットが受信されることを監視している。具体的には、ネットワークインターフェイス９０でパケットが受信される場合、ＭＡＣコントローラ６６は、パケット割込要求信号を、メインＣＰＵ２０に供給する。メインＣＰＵ２０は、パケット割込要求信号を取得すると、受信されたパケットを、ネットワークインターフェイス９０からＳＤＲＡＭ８０に移動する。
【００４２】
Ｓ１４では、メインＣＰＵ２０は、ＳＤＲＡＭ８０に移動されたパケットを解析して、受信されたパケットが示すプロトコルの種類が、名前解決プロトコルであるのか否かを判断する。具体的には、メインＣＰＵ２０は、受信されたパケットのヘッダに含まれる宛先ポート番号が、ＮｅｔＢＩＯＳ又はＬＬＭＮＲのポート番号である（例えばポート番号が１３７、５３５５）場合、Ｓ１４でＹＥＳと判断する。メインＣＰＵ２０は、受信されたパケットのヘッダに含まれる宛先ポート番号が、ＮｅｔＢＩＯＳ又はＬＬＭＮＲのポート番号のポート番号以外である場合、Ｓ１４でＮＯと判断する。
【００４３】
Ｓ１４でＹＥＳの場合、Ｓ１６において、ＩＰアドレス送信部２２は、名前解決パケットの応答として、多機能機１０のＩＰアドレスを、名前解決パケットの送信元デバイス（例えばＰＣ１００）に送信して、Ｓ２０に進む。一方、Ｓ１４でＮＯの場合、Ｓ１８において、メインＣＰＵ２０は、Ｓ１２で受信されたパケットに従った処理（例えば上記の通常の処理（印刷指示パケットに従った印刷処理等））を実行して、Ｓ２０に進む。
【００４４】
Ｓ２０において、メインＣＰＵ２０は、スリープ移行条件が成立するのか否かを判断する。具体的には、メインＣＰＵ２０は、例えば、（１）多機能機１０がパケットを外部に送信中であるのか否か、（２）未処理パケットがＳＤＲＡＭ８０に格納されているのか否か、（３）多機能機１０にＴＣＰ接続しているデバイス（例えばＰＣ１００）があるのか否か、（４）多機能機１０が起動又はシャットダウンのための処理を実行しているのか否か、（５）ネットワークの負荷が高いのか否か、を含む複数個の条件について判断する。
【００４５】
例えば、メインＣＰＵ２０がＰＣ１００等からのパケットに対する応答を返信している場合には、上記の（１）でＹＥＳと判断される。例えば、多機能機１０がＷｅｂサーバ機能を有しており、ＰＣ１００が多機能機１０のＷｅｂサーバにＴＣＰ接続中である場合には、上記の（３）でＹＥＳと判断される。例えば、Ｓ２０の処理を実行する直前の所定の期間に受信されたパケット数が所定の個数を超えている場合には、多機能機１０が処理すべきパケットを受信する可能性が高いために、上記の（５）でＹＥＳと判断される。上記の（１）から（５）の条件のいずれもが否定的に判断される場合、スリープ移行条件は成立している。この場合、メインＣＰＵ２０は、Ｓ２０でＹＥＳと判断する。
【００４６】
スリープ移行条件が成立しないと判断される場合（Ｓ２０でＮＯ）、Ｓ１２に戻る。一方、スリープ移行条件が成立すると判断される場合（Ｓ２０でＹＥＳ）、Ｓ２２において、メインＣＰＵ２０は、代理応答情報を、ＳＤＲＡＭ８０からＳＲＡＭ６０に移動させる。代理応答情報は、多機能機１０がスリープ状態（即ちメインＣＰＵ２０がスリープ状態）である間に受信されたパケットに従った処理を、サブＣＰＵ４０が実行するための情報（例えばプリンタエンジン９２のインクカートリッジ等の残量等、多機能機１０のステータスを示す情報）を含む。なお、メインＣＰＵ２０は、さらに、後述する名前解決不要フラグ及び登録済フラグを、ＳＤＲＡＭ８０からＳＲＡＭ６０に移動させる。
【００４７】
Ｓ２４では、メインＣＰＵ２０は、ＬＡＮ４を介して受信されるパケットを格納するためのＲＡＭを、ＳＤＲＡＭ８０からＳＲＡＭ６０に切り替える。続いて、Ｓ２６では、メインＣＰＵ２０は、サブＣＰＵ４０以外からの割込要求をマスク（禁止）する。次いで、Ｓ２８では、メインＣＰＵ２０は、サブＣＰＵ４０に処理を開始させるための開始割込要求信号を、サブＣＰＵ４０に供給する。Ｓ３０では、メインＣＰＵ２０は、ＷＡＩＴ命令を実行する。ＷＡＩＴ命令が実行されると、メインＣＰＵ２０は、割込要求信号が供給されるまで待機する実行停止状態となる。
【００４８】
メインＣＰＵ２０は、Ｓ３２において、サブＣＰＵ４０から割込要求信号が供給される（後述の図５のＳ９４参照）と、ＷＡＩＴ命令を解除して、Ｓ３４に進む。Ｓ３４では、メインＣＰＵ２０は、ＳＲＡＭ６０に格納されている未処理のパケットを、ＳＤＲＡＭ８０に移動させる。Ｓ３６では、メインＣＰＵ２０は、ＳＲＡＭ６０に格納されている情報（多機能機１０のステータス情報、名前解決不要フラグ及び登録済フラグを含む）を、ＳＤＲＡＭ８０に移動させる。次いで、Ｓ３８では、メインＣＰＵ２０は、Ｓ２６で実行したマスクを解除して、Ｓ１２に戻る。
【００４９】
（メインＣＰＵが実行するＩＰアドレス設定処理）
続いて、メインＣＰＵ２０が実行する図３のＩＰアドレス設定処理の内容を説明する。多機能機１０のＩＰアドレスは、ＤＨＣＰサーバ２１０から取得されるか、あるいは、ユーザによる表示パネル９４の操作（入力操作）によってＩＰアドレスが入力されるか、のどちらかによって、多機能機１０に設定される。ユーザは、表示パネル９４を操作することによって、ユーザがＩＰアドレスを入力するのか（即ちＳＴＡＴＩＣのＩＰアドレスの設定）、ＤＨＣＰサーバ２１０からＩＰアドレスを取得させるのか（即ちＤＨＣＰのＩＰアドレスの設定）、を選択することができる。
【００５０】
多機能機１０の現在の設定が、ＤＨＣＰのＩＰアドレスの設定である場合、メインＣＰＵ２０は、ＤＨＣＰサーバ２１０から定期的にＩＰアドレスを取得し、多機能機１０のＩＰアドレスを更新する。一方、多機能機１０の現在の設定が、ＳＴＡＴＩＣのＩＰアドレスの設定である場合、メインＣＰＵ２０は、ユーザによるＩＰアドレス及びサブネットマスクの入力操作が再び実行されるまで、前回の入力操作で入力されたＩＰアドレス及びサブネットマスクが変更されない。
【００５１】
多機能機１０の現在の設定が、ＳＴＡＴＩＣのＩＰアドレスの設定である場合、Ｓ４２では、メインＣＰＵ２０は、ユーザによるＩＰアドレス及びサブネットマスクの入力操作が実行されることを監視する。一方、多機能機１０の現在の設定が、ＤＨＣＰのＩＰアドレスの設定である場合、Ｓ４２では、メインＣＰＵ２０は、ＤＨＣＰサーバ２１０から、ＩＰアドレス及びサブネットマスクを取得するタイミングの到来を監視する。具体的に言うと、メインＣＰＵ２０は、現在の日時が、ＤＨＣＰサーバ２１０から前回に取得されたＩＰアドレスの有効期限を経過することを監視する。
【００５２】
ユーザによってＩＰアドレスの入力操作が実行された場合、メインＣＰＵ２０は、入力されたＩＰアドレス及びサブネットマスクを、多機能機１０のＩＰアドレス及びサブネットマスクとして、ＳＤＲＡＭ８０に格納する。次いで、Ｓ４４では、メインＣＰＵ２０は、ＤＮＳサーバ２２０のＩＰアドレスを指定させる画面を、表示パネル９４に表示させる。メインＣＰＵ２０は、ＤＮＳサーバ２２０のＩＰアドレスを指定するアドレス指定操作が、ユーザによって実行されることを監視する。
【００５３】
Ｓ４４で表示パネル９４に表示される画面は、以下の２種類の画面のうちのどちらかの画面である。２種類の画面のどちらの画面が表示されるのかは、ＤＮＳサーバ２２０のＩＰアドレスが、ＳＤＲＡＭ８０に現在格納されているのか否かに応じて決定される。
【００５４】
ＤＮＳサーバ２２０のＩＰアドレスがＳＤＲＡＭ８０に現在格納されている場合（例えば、過去のＳ４４の処理でＤＮＳサーバ２２０のＩＰアドレスが指定された場合）、Ｓ４４において、メインＣＰＵ２０は、ＳＤＲＡＭ８０に現在格納されているＤＮＳサーバ２２０のＩＰアドレスと、「ＯＫ」ボタンと、を含む画面を、表示パネル９４に表示させる。ユーザは、表示パネル９４に表示されたＤＮＳサーバ２２０のＩＰアドレスを確認して、表示パネル９４の「ＯＫ」ボタンを操作することができる。一方、ＤＮＳサーバ２２０のＩＰアドレスがＳＤＲＡＭ８０に現在格納されていない場合、Ｓ４４において、メインＣＰＵ２０は、ＤＮＳサーバ２２０のＩＰアドレスを入力するための入力ボックスを含む画面を、表示パネル９４に表示させることができる。ユーザは、表示パネル９４を操作することによって、ＤＮＳサーバ２２０のＩＰアドレスを入力する操作を実行することができる。
【００５５】
ＩＰアドレスの指定操作（「ＯＫ」ボタンの操作、又は、ＤＮＳサーバ２２０のＩＰアドレスの入力操作）が実行された場合、メインＣＰＵ２０は、多機能機１０のＩＰアドレスがＤＮＳサーバ２２０に登録されていると判断して（Ｓ４４でＹＥＳと判断して）、Ｓ５４に進む。Ｓ５４では、メインＣＰＵ２０の記憶制御部２４は、ＳＤＲＡＭ８０内の名前解決不要フラグを「１」に設定する。Ｓ５４を終えると、ＩＰアドレス設定処理が終了する。
【００５６】
一方、Ｓ４４で表示パネル９４に画面が表示されてから、所定の期間（例えば５分間）経過してもユーザによる操作がなされない場合、又は、ユーザによってキャンセル操作が実行される場合、メインＣＰＵ２０は、多機能機１０のＩＰアドレスがＤＮＳサーバ２２０に登録されていないと判断して（Ｓ４４でＮＯと判断して）、Ｓ４６に進む。Ｓ４６では、メインＣＰＵ２０の記憶制御部２４は、ＳＤＲＡＭ８０内の名前解決不要フラグを「０」に設定して、ＩＰアドレス設定処理を終了する。
【００５７】
Ｓ４２でＤＨＣＰサーバ２１０からアドレスを取得すべきタイミングであると判断される場合、Ｓ４８において、メインＣＰＵ２０は、ＤＨＣＰサーバ２１０から、ＩＰアドレスを取得する。即ち、メインＣＰＵ２０は、多機能機１０のノード名（即ち「ＭＦＰ１０」）を含む割当要求パケットを、ＤＨＣＰサーバ２１０に送信する。ＤＨＣＰサーバ２１０は、ＩＰアドレスと、予め決められているサブネットマスクと、を多機能機１０に割り当てる（送信する）。これにより、メインＣＰＵ２０は、ＤＨＣＰサーバ２１０からＩＰアドレス及びサブネットマスクを取得する。メインＣＰＵ２０は、取得されたＩＰアドレス及びサブネットマスクを、多機能機１０のＩＰアドレス及びサブネットマスクとして、ＳＤＲＡＭ８０に格納する。
【００５８】
上述したように、ＤＨＣＰサーバ２１０は、多機能機１０にＩＰアドレスを割り当てると、割り当てたＩＰアドレスと多機能機１０のノード名とを、ＩＰアドレステーブル２２２に登録するように、ＤＮＳサーバ２２０に要求する。
【００５９】
次いで、Ｓ５０では、問合部２６は、多機能機１０のＩＰアドレスを登録したのか否かを、ＤＮＳサーバ２２０に問い合わせる。具体的に言うと、問合部２６は、所定の問合信号をＤＮＳサーバ２２０に送信する。Ｓ５２では、問合部２６は、Ｓ５０で送信された問合信号に応じて、登録完了情報をＤＮＳサーバ２２０から受信することを監視する。なお、登録完了情報は、ＤＮＳサーバ２２０に多機能機１０のＩＰアドレスが登録されたことを示す情報である。
【００６０】
Ｓ５２で登録完了情報が受信されると、Ｓ５４に進む。上述したように、Ｓ５４では、メインＣＰＵ２０の記憶制御部２４は、ＳＤＲＡＭ８０に格納されている名前解決不要フラグを「１」にして、ＩＰアドレス設定処理を終了する。なお、Ｓ４４においてＹＥＳの場合にも、Ｓ５４に進む。Ｓ４４において、ユーザからＤＮＳサーバ２２０のＩＰアドレスが指定される場合、多機能機１０のＩＰアドレスが、ユーザによって、既にＤＮＳサーバ２２０に登録されていると推測されるからである。
【００６１】
なお、変形例では、Ｓ４４でＹＥＳの場合（即ち、ＤＮＳサーバ２２０のＩＰアドレスが指定された場合）、問合部２６は、多機能機１０のＩＰアドレスを登録したのか否かを、ＤＮＳサーバ２２０に問い合わせてもよい。そして、メインＣＰＵ２０の記憶制御部２４は、登録完了情報がＤＮＳサーバ２２０から受信される場合に、Ｓ５４の処理を実行し、登録完了情報がＤＮＳサーバ２２０から受信されない場合に、Ｓ４６の処理を実行してもよい。あるいは、別の変形例では、Ｓ４４でＹＥＳの場合、メインＣＰＵ２０は、多機能機１０のＩＰアドレスとノード名とを含む登録要求パケットを、ＤＮＳサーバ２２０に送信してもよい。その後に、メインＣＰＵ２０の記憶制御部２４は、Ｓ５４の処理を実行してもよい。
【００６２】
また、別の変形例では、Ｓ５０とＳ５２の処理に変えて、以下の処理を実行してもよい。上述したように、Ｓ４２において、ＤＨＣＰサーバ２１０からＩＰアドレスを取得すべきタイミングであると判断され（Ｓ４２でＹＥＳ）、Ｓ４８において、メインＣＰＵ２０は、割当要求パケットを、ＤＨＣＰサーバ２１０に送信する。
【００６３】
本変形例では、ＤＨＣＰサーバ２１０は、割当要求パケットを受信すると、多機能機１０にＩＰアドレスを割り当てる前に、後の処理にて多機能機１０に割り当てるＩＰアドレスと、受信したノード名とを、ＩＰアドレステーブル２２２に登録するように、ＤＮＳサーバ２２０へ要求する（送信する）。ＤＮＳサーバ２２０は、当該要求に対してＩＰアドレスとノード名とをＩＰアドレステーブル２２２に登録を行い、ＤＨＣＰサーバ２１０へ登録完了情報を送信する。
【００６４】
ＤＨＣＰサーバ２１０は、登録完了情報を受信すると、多機能機１０に登録したＩＰアドレスと、予め決められているサブネットマスクと、を多機能機１０に割り当てる（送信する）。これにより、多機能機１０のメインＣＰＵ２０は、ＤＨＣＰサーバ２１０からＩＰアドレス及びサブネットマスクを取得する。メインＣＰＵ２０は、取得されたＩＰアドレス及びサブネットマスクを、多機能機１０のＩＰアドレス及びサブネットマスクとして、ＳＤＲＡＭ８０に格納する。本変形例では、メインＣＰＵ２０は、Ｓ４２において、割当要求パケットを、ＤＨＣＰサーバ２１０に送信し、ＤＨＣＰサーバ２１０からＩＰアドレス及びサブネットマスクを取得すると、Ｓ５４に進む。この構成により、多機能機１０は、多機能機１０のＩＰアドレスを登録したのか否かを、ＤＮＳサーバ２２０に問い合わせなくてもよい。
【００６５】
（メインＣＰＵが実行する登録済フラグ変更処理）
続いて、メインＣＰＵ２０が実行する図４の登録済フラグ変更処理の内容を説明する。例えば、ユーザがＬＡＮ４の管理者である場合、ユーザがＤＮＳサーバ２２０のＩＰアドレステーブル２２２を確認した場合等には、ユーザは、多機能機１０以外でＬＡＮ４に接続されている他のデバイス（例えばＰＣ１００等）のＩＰアドレスが、ＤＮＳサーバ２２０に登録されているのか否かを知ることができる。
【００６６】
ユーザは、表示パネル９４を操作することによって、他のデバイスのＩＰアドレスがＤＮＳサーバ２２０に登録済みであることを示す登録済操作を実行することできる。一方、ユーザは、表示パネル９４を操作することによって、上記の他のデバイスのＩＰアドレスがＤＮＳサーバ２２０に登録されていないことを示す登録未完操作を実行することできる。
【００６７】
図４の登録済フラグ変更処理は、メインＣＰＵ２０が非スリープ状態である間に、繰り返し実行される。Ｓ６２では、メインＣＰＵ２０は、登録済操作が実行されることを監視している。登録済操作が実行される場合（Ｓ６２でＹＥＳ）、Ｓ６４において、メインＣＰＵ２０は、ＳＤＲＡＭ８０に格納されている登録済フラグを「１」に設定する。
【００６８】
Ｓ６６では、メインＣＰＵ２０は、ユーザによって、登録未完操作が実行されることを監視している。メインＣＰＵ２０は、ユーザによって、登録未完操作が実行される場合（Ｓ６６でＹＥＳ）、メインＣＰＵ２０は、Ｓ６８において、ＳＤＲＡＭ８０に格納されている登録済フラグを「０」に設定する。
【００６９】
（サブＣＰＵ４０が実行する処理）
続いて、サブＣＰＵが実行する図５の処理の内容を説明する。多機能機１０の電源がＯＮされると、サブＣＰＵ４０は、ＷＡＩＴ命令を実行して、割込要求信号が供給されるまで待機する（Ｓ７２）。上述したように、メインＣＰＵ２０は、図２のＳ２８で、サブＣＰＵ４０に開始割込要求信号を供給する。この場合、Ｓ７２でＹＥＳと判断される。
【００７０】
Ｓ７２でＹＥＳの場合、Ｓ７４において、移行制御部５２は、メイン用クロック回路３６にクロック供給の停止を指示する。この結果、メインＣＰＵ２０は、非スリープ状態からスリープ状態に移行する。続いて、移行制御部５２は、ＳＤＲＡＭ８０を通常動作モードからセルフリフレッシュモードに移行させる（Ｓ７６）。これにより、多機能機１０は、スリープ状態となる。なお、ＳＤＲＡＭ８０がセルフリフレッシュモードである間は、多機能機１０が受信したパケットをＳＤＲＡＭ８０に格納することができない。
【００７１】
Ｓ７８では、サブＣＰＵ４０は、パケットを受信することを監視する。具体的には、ネットワークインターフェイス９０でパケットが受信される場合、ＭＡＣコントローラ７２は、パケット割込要求信号を、サブＣＰＵ４０に供給する。Ｓ７８において、サブＣＰＵ４０は、ＭＡＣコントローラ７２からパケット割込要求信号が供給されると（Ｓ７８でＹＥＳ）、受信されたパケットをネットワークインターフェイス９０からＳＲＡＭ６０に移動する。
【００７２】
次いで、Ｓ８０では、信号判断部５０は、Ｓ７８で受信されたパケットが名前解決パケット（即ちパケットが示すプロトコルの種類が、名前解決プロトコル（ＮｅｔＢＩＯＳ、ＬＬＭＮＲ）であるのか否かを判断する。Ｓ８０の処理は、図２のＳ１４の処理と同様に、Ｓ７８で受信されたパケットのヘッダに含まれる宛先ポート番号を用いて判断する。この構成によれば、信号判断部５０は、受信されたパケットを詳細に解析せずに、受信されたパケット名前解決パケットであるのか否かを判断することができる。信号判断部５０は、受信されたパケットの宛先ポート番号が、ＮｅｔＢＩＯＳ又はＬＬＭＮＲのポート番号である場合に、Ｓ８０でＹＥＳと判断し、それ以外のポート番号である場合に、Ｓ８０でＮＯと判断する。
【００７３】
Ｓ８０でＮＯの場合、サブＣＰＵ４０は、メインＣＰＵ２０に代理して、Ｓ７８で受信されたパケットに従った応答処理を実行可能であるのか否かを判断する。具体的には、サブＣＰＵ４０は、ＳＲＡＭ６０に格納されている代理応答情報を用いて、Ｓ７８で受信されたパケットに従った応答処理を実行可能であるのか否かを判断する。サブＣＰＵ４０が代理して実行可能な応答処理は、例えば、ＰＩＮＧに対する応答、ＡＲＰ（Address Resolution Protocol）のパケットに対する応答等を含む。
【００７４】
サブＣＰＵ４０が代理して応答可能である場合（Ｓ８２でＹＥＳ）、サブＣＰＵ４０は、Ｓ７８で受信されたパケットに従った応答処理を実行して（Ｓ８４）、Ｓ７８に戻る。一方、サブＣＰＵ４０が代理して応答不可能である場合（Ｓ８２でＮＯ）、Ｓ９０に進む。
【００７５】
一方、Ｓ８０でＹＥＳの場合、Ｓ８６では、第１の登録判断部４４は、ＳＲＡＭ６０に格納されている名前解決不要フラグが「１」に設定されているのか否かを判断する。即ち、第１の登録判断部４４は、多機能機１０のＩＰアドレスが、ＤＮＳサーバ２２０に登録されているのか否かを判断する。Ｓ８６でＹＥＳの場合、即ち、多機能機１０のＩＰアドレスが、ＤＮＳサーバ２２０に登録されている場合、Ｓ７８で受信されたパケットの送信元デバイス（例えばＰＣ１００）は、静的な名前解決を実行することによって、ＤＮＳサーバ２２０から多機能機１０のＩＰアドレスを取得することができる。このため、Ｓ８８において、多機能機１０は、Ｓ７８で受信された名前解決パケットに応答することなく、名前解決パケットを破棄して、Ｓ７８に戻る。
【００７６】
一方、Ｓ８６でＮＯの場合、Ｓ９０に進む。Ｓ８６でＮＯの場合、即ち、多機能機１０のＩＰアドレスが、ＤＮＳサーバ２２０に登録されていない場合、Ｓ７８で受信されたパケットの送信元デバイス（例えばＰＣ１００）は、静的な名前解決を実行することによって、ＤＮＳサーバ２２０から多機能機１０のＩＰアドレスを取得することができない。このため、多機能機１０は、Ｓ７８で受信された名前解決パケットに応答するための処理を実行する（図２のＳ１６参照）。
【００７７】
Ｓ９０では、移行制御部５２は、ＳＤＲＡＭ８０をセルフリフレッシュモードから通常動作モードに移行させる。なお、移行制御部５２は、さらに、外部デバイス（例えばＰＣ１００）から受信されるパケットを格納するＲＡＭをＳＲＡＭ６０からＳＤＲＡＭ８０に切り替える。さらに、移行制御部５２は、ＳＲＡＭ６０に格納されている情報（名前解決不要フラグ、登録済フラグを含む）を、ＳＤＲＡＭ８０に移動させる。次いで、Ｓ９２において、移行制御部５２は、メイン用クロック回路３６に、メインＣＰＵ２０にクロック供給を開始するよう指示する。この結果、メインＣＰＵ２０にクロックが供給され、メインＣＰＵ２０がスリープ状態から非スリープ状態に移行する。Ｓ９４では、移行制御部５２は、メインＣＰＵ２０に開始割込要求信号を供給して、Ｓ７２に戻る。
【００７８】
この結果、図２のＳ３２のＷＡＩＴ命令が解除され、メインＣＰＵ２０は、図２の処理を実行する。これにより、メインＣＰＵ２０は、ＳＤＲＡＭ８０に格納されている名前解決パケット（図５のＳ７８で受信された名前解決パケット）について、Ｓ１２及びＳ１４でＹＥＳと判断する。これにより、メインＣＰＵ２０のＩＰアドレス送信部２２は、Ｓ７８で受信された名前解決パケットの送信元デバイス（例えばＰＣ１００）に向けて、多機能機１０のＩＰアドレスを送信する。
【００７９】
（メインＣＰＵ及びサブＣＰＵが実行する名前解決処理）
続いて、メインＣＰＵ２０及びサブＣＰＵ４０が実行する図６の名前解決処理の内容を説明する。メインＣＰＵ２０が非スリープ状態（即ち多機能機１０がレディ状態）である場合、メインＣＰＵ２０は、定期的に図６の名前解決処理を実行する。メインＣＰＵ２０がスリープ状態（即ち多機能機１０がスリープ状態）である場合、サブＣＰＵ４０は、定期的に図６の名前解決処理を実行する。以下では、メインＣＰＵ２０が処理を実行する場合を例に、名前解決処理について説明する。即ち、以下では、メインＣＰＵ２０によって実現される各部（記憶制御部２４、確認部２８、第１の信号送信部３０、第２の信号送信部３２、第２の登録判断部３４）が各処理を実行する様子を説明するが、メインＣＰＵ２０がスリープ状態である場合には、サブＣＰＵ４０によって実現される各部（記憶制御部４６、確認部５８、第１の信号送信部５４、第２の信号送信部５６、第２の登録判断部４８）が同様に各処理を実行する。
【００８０】
Ｓ１０２では、メインＣＰＵ２０の第１の信号送信部３０は、ＬＡＮ４に接続されている特定のデバイス（例えばＰＣ１００）のＩＰアドレスを問い合わせるための名前解決パケットを、ＤＮＳサーバ２２０に送信（ユニキャスト）する（即ち静的な名前解決を実行する）。なお、名前解決パケットは、上記の特定のデバイスのノード名を含む。
【００８１】
メインＣＰＵ２０の第２の登録判断部３４は、Ｓ１０２の処理と同時的に、Ｓ１０４において、ＳＤＲＡＭ８０に格納されている登録済フラグが「１」であるのか否かを判断する。登録済フラグが「１」である場合とは、上記の特定のデバイスのＩＰアドレスが、ＤＮＳサーバ２２０に登録されている場合である。この場合、即ちＳ１０４でＹＥＳの場合、Ｓ１０８に進む。
【００８２】
一方において、登録済フラグが「０」である場合、即ち、上記の特定のデバイスのＩＰアドレスが、ＤＮＳサーバ２２０に登録されていない場合（Ｓ１０４でＮＯ）、Ｓ１０６において、メインＣＰＵ２０の第２の信号送信部３２は、名前解決パケットをブロードキャスト又はマルチキャストする。
【００８３】
メインＣＰＵ２０の確認部２８は、ＤＮＳサーバ２２０及び上記の特定のデバイスの少なくとも一方のデバイスから、名前解決パケットに対する応答が受信されることを監視している。ＤＮＳサーバ２２０からＩＰアドレスが受信される場合（Ｓ１０８でＹＥＳ）、メインＣＰＵ２０の確認部２８は、ＩＰアドレスをＳＤＲＡＭ８０に格納して、名前解決処理を終了する。メインＣＰＵ２０の確認部２８は、ＤＮＳサーバ２２０から上記の特定のデバイスのＩＰアドレスが登録されていない旨の情報が受信される場合（Ｓ１０８でＹＥＳ）、名前解決処理を終了する。なお、上記の特定のデバイスから、上記ブロードキャスト又はマルチキャストに対する応答として、ＩＰアドレスが受信される場合、メインＣＰＵ２０の確認部２８は、ＩＰアドレスをＳＤＲＡＭ８０に格納する。
【００８４】
一方、メインＣＰＵ２０の確認部２８は、ＤＮＳサーバ２２０から応答（ＩＰアドレス又はＩＰアドレスが登録されていない旨の情報）が受信されない場合（Ｓ１０８でＮＯ）、Ｓ１１０に進む。ＤＮＳサーバ２２０から応答が受信されない場合とは、ＬＡＮ４を介してＤＮＳサーバ２２０と通信不可能である場合である。例えば、ＤＮＳサーバ２２０がダウンしている場合、ＬＡＮ４を介してＤＮＳサーバ２２０と通信することができない。この場合、多機能機１０以外の他のデバイス（例えばＰＣ１００）も、ＤＮＳサーバ２２０と通信して、ＤＮＳサーバ２２０から、多機能機１０のＩＰアドレスを取得することができないことが予想される。
【００８５】
メインＣＰＵ２０の記憶制御部２４は、ＳＤＲＡＭ８０に格納されている名前解決不要フラグが「１」であるのか否かを判断し（Ｓ１１０）、名前解決不要フラグが「１」である場合（Ｓ１１０でＹＥＳ）、名前解決不要フラグを「０」にして（Ｓ１１２）、名前解決処理を終了する。この構成では、多機能機１０は、スリープ状態（メインＣＰＵ２０がスリープ状態）である場合にも、名前解決パケットに対して、自身のＩＰアドレスを送信することとなる。これにより、名前解決パケットの送信元デバイス（例えばＰＣ１００）は、ＤＮＳサーバ２２０と通信することができない状況でも、多機能機１０のＩＰアドレスを取得することができる。
【００８６】
（各デバイスの動作（図７））
多機能機１０がレディ状態である場合、多機能機１０は、ＩＰアドレスの割り当てを、ＤＨＣＰサーバ２１０に定期的に要求する。ＤＨＣＰサーバ２１０は、多機能機１０からのＩＰアドレスの要求に応じて、多機能機１０にＩＰアドレスを割り当てる（送信する）。多機能機１０は、ＤＨＣＰサーバ２１０から受信されたＩＰアドレスを、ＳＤＲＡＭ８０に格納する。ＤＨＣＰサーバ２１０は、割り当てたＩＰアドレスと多機能機１０のノード名とを、ＤＮＳサーバ２２０に供給する。ＤＮＳサーバ２２０は、多機能機１０のＩＰアドレスとノード名との組合せを、ＩＰアドレステーブル２２２に登録する。
【００８７】
多機能機１０は、ＤＨＣＰサーバ２１０からＩＰアドレスを受信すると、多機能機１０のＩＰアドレスが登録されているのか否かを、ＤＮＳサーバ２２０に問い合わせる。ＤＳサーバ２２０は、多機能機１０のＩＰアドレスとノード名との組合せが、ＩＰアドレステーブル２２２に登録されていることを条件に、登録完了情報を多機能機１０に送信する。多機能機１０は、登録完了情報を取得すると、名前解決不要フラグを「１」にする。この構成によれば、多機能機１０は、名前解決不要フラグを確認することによって、ＤＮＳサーバ２２０に、自身のＩＰアドレスが登録されているのか否かを判断することができる。
【００８８】
多機能機１０は、レディ状態である場合、名前解決不要フラグの値に関わらず、即ち、ＤＮＳサーバ２２０に自身のＩＰアドレスが登録されているのか否かに関わらず、ＰＣ１００の動的な名前解決パケット（ＩＰアドレスの問合せ）に対して、自身のＩＰアドレスを送信する。この結果、ＰＣ１００は、多機能機１０のＩＰアドレスを、多機能機１０から取得することができる。
【００８９】
一方、多機能機１０がスリープ状態である場合、名前解決不要フラグが「１」である間は、ＰＣ１００の動的な名前解決パケット（ＩＰアドレスの問合せ）に対して、自身のＩＰアドレスを送信しない。ＰＣ１００は、静的な名前解決によって、ＤＮＳサーバ２２０から、多機能機１０のＩＰアドレスを取得することができるからである。この構成によれば、多機能機１０がスリープ状態からレディ状態（即ちメインＣＰＵ２０がスリープ状態から非スリープ状態）に移行される頻度が少なくなる。このため、多機能機１０の消費電力を低減することができる。
【００９０】
多機能機１０は、名前解決不要フラグが「０」である場合、即ち、多機能機１０のＩＰアドレスがＤＮＳサーバ２２０に登録されていない場合及びＤＮＳサーバ２２０がＰＣ１００と通信不可能である場合、ＰＣ１００の動的な名前解決パケットを受信すると、スリープ状態からレディ状態に移行して、自身のＩＰアドレスを送信する。この構成によれば、ＰＣ１００は、ＤＮＳサーバ２２０から多機能機１０のＩＰアドレスを取得することができない状況において、多機能機１０から多機能機１０のＩＰアドレスを取得することができる。
【００９１】
（多機能機１０が名前解決を実行する場合の多機能機１０の処理）
図８に示すように、多機能機１０は、登録済フラグが「０」に設定されている場合、即ち、ＰＣ１００のＩＰアドレスがＤＮＳサーバ２２０に登録されていないと判断される場合、多機能機１０は、ＰＣ１００のＩＰアドレスを、ＤＮＳサーバ２２０とＰＣ１００との両者に問い合わせる（即ち、動的な名前解決及び静的な名前解決を実行する）。多機能機１０は、ＰＣ１００からＰＣ１００のＩＰアドレスを取得することができる。一方、多機能機１０は、ＤＮＳサーバ２２０からＰＣ１００のＩＰアドレスを取得することができない。
【００９２】
多機能機１０は、登録済フラグが「１」に設定されている場合、即ち、ＰＣ１００のＩＰアドレスがＤＮＳサーバに登録されている場合、多機能機１０は、ＰＣ１００のＩＰアドレスを、ＤＮＳサーバ２２０に問い合わせる（静的な名前解決を実行する）が、ＰＣ１００のＩＰアドレスを、ＰＣ１００に問い合わせない（動的な名前解決を実行しない）。静的な名前解決を実行することによって、多機能機１０は、ＤＮＳサーバ２２０からＰＣ１００のＩＰアドレスを取得することができるからである。この構成によれば、多機能機１０は、無駄に動的な名前解決を実行せずに済む。
【００９３】
（本実施例の効果）
本実施例について詳しく説明した。多機能機１０は、メインＣＰＵ２０がスリープ状態である間に、名前解決パケットを受信した場合であって、多機能機１０のＩＰアドレスがＤＮＳサーバ２２０に登録されていると判断される場合（即ち名前解決不要フラグ＝「１」）、名前解決パケットの応答として、多機能機１０のＩＰアドレスを送信しない。
【００９４】
サブＣＰＵ４０が非スリープ状態である場合のサブＣＰＵ４０の消費電力をできるだけ低減させることが望ましい。多機能機１０のスリープ状態での消費電力を低減するためである。仮に、メインＣＰＵ２０がスリープ状態である間に、サブＣＰＵ４０が名前解決パケットに対する応答を実行する構成を採用すると、サブＣＰＵ４０の処理能力を高くしなければならず、サブＣＰＵ４０の非スリープ状態での消費電力が高くなってしまう。従って、多機能機１０のスリープ状態での消費電力を低減するためには、メインＣＰＵ２０が名前解決パケットに対する応答を実行することが望ましい。
【００９５】
ＬＡＮ４等のネットワークに接続されるデバイス（例えばＰＣ１００）は、定期的にネットワーク内の他のデバイスに対して、名前解決パケットを送信して、名前解決を実行している。このため、ネットワークに多数個のデバイスが接続されている場合、多数個のデバイスのそれぞれから受信される名前解決パケットに対して応答を実行していると、多機能機１０がスリープ状態に移行したとしても、すぐにレディ状態に移行しなければならない。この結果、多機能機１０の消費電力を低減することができない。本実施例の多機能機１０によれば、上記の問題を解決することができる。
【００９６】
（対応関係）
上記の多機能機１０が「通信装置」の一例である。ＤＮＳサーバ２２０が「登録サーバ」の一例である。第１の信号送信部３０が「第１の信号送信部」、第２の信号送信部３２が第２の信号送信部、信号判断部５０が「信号判断部」の一例である。名前解決不要フラグ＝「１」が「所定の情報」の一例であり、登録完了情報が「特定の信号」の一例である。メインＣＰＵ２０とサブＣＰＵ４０とが、「プロセッサ」の一例である。メインＣＰＵ２０とサブＣＰＵ４０とがともに非スリープ状態である状態が「高消費状態」の一例であり、メインＣＰＵ２０がスリープ状態であり、サブＣＰＵ４０が非スリープ状態である状態が「低消費状態」の一例である。
【００９７】
以上、本発明の実施形態について詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
【００９８】
（変形例）
（１）上記の実施例では、多機能機１０は、２個のＣＰＵ２０，４０を備えるが、これに代えて、多機能機１０は、メインＣＰＵ２０のみを備えていてもよい。この場合、メインＣＰＵ２０に供給されるクロック信号の周波数が低い状態と高い状態とに移行してもよい。クロック信号の周波数が高い状態では、メインＣＰＵ２０の消費電力が比較的に高く、クロック信号の周波数が低い状態では、メインＣＰＵ２０の消費電力が比較的に低い。この変形例では、メインＣＰＵ２０が「プロセッサ」の一例であり、メインＣＰＵ２０に供給されるクロック信号の周波数が高い状態が「高消費状態」の一例であり、メインＣＰＵ２０に供給されるクロック信号の周波数が低い状態が「低消費状態」の一例である。
【００９９】
（２）上記の実施例では、多機能機１０は、２個のＲＡＭ６０，９０を備えるが、これに代えて、多機能機１０は、１個のＲＡＭのみを備えていてもよい。この場合、１個のＲＡＭは、多機能機１０が電源ＯＮの間では、常に通常動作モードであってもよい。この変形例では、１個のＲＡＭが「メモリ部」の一例である。
【０１００】
（３）上記の実施例では、ＤＨＣＰサーバ２１０が、多機能機１０にＩＰアドレスを割り当てる。しかしながら、ＩＰアドレスを多機能機１０に割り当てる割当サーバは、ＤＨＣＰサーバの他に、ＢＯＯＴＰ（BOOTstrap Protocol）サーバ、ＲＡＲＰ（Reverse Address Resolution Protocol）サーバ等であってもよい。なお、ＲＡＲＰサーバが用いられる場合、ユーザは、ＲＡＲＰサーバを操作して、多機能機１０に設定されるべきＩＰアドレスと、多機能機１０に設定されるべきサブネットマスクと、多機能機１０のノード名又はＭＡＣアドレスと、が対応付けられている情報を、ＲＡＲＰサーバに登録してもよい。
【０１０１】
（４）多機能機１０は、名前解決不要フラグが「１」である場合に、動的な名前解決（名前解決パケットのブロードキャスト又はマルチキャスト）を実行しなくてもよい。名前解決不要フラグが「１」である場合には、ＬＡＮ４に接続されている他のデバイス（例えばＰＣ３００）のＩＰアドレスは、多機能機１０と同様に、ＤＮＳサーバ２２０に登録されている可能性が高いからである。
【０１０２】
（５）多機能機１０は、スリープ状態であって、かつ、名前解決不要フラグが「１」である場合に、名前解決パケットに対する応答処理を実行するのか否かを、ユーザが選択することを許容してもよい。ユーザによって応答処理を実行することが選択される場合、多機能機１０は、スリープ状態であって、かつ、名前解決不要フラグが「１」であっても、名前解決パケットの送信元デバイスに、多機能機１０のＩＰアドレスを送信してもよい。
【０１０３】
（６）多機能機１０は、登録済フラグが「０」に設定されている場合、特定のデバイスのＩＰアドレスの問合パケットを、ＤＮＳサーバ２２０に送信しなくてもよい。即ち、多機能機１０は、特定のデバイスのＩＰアドレスの問合パケットを、ブロードキャスト又はマルチキャストで送信するのみでもよい。登録済フラグが「０」に設定されている場合は、上記の特定のデバイスのＩＰアドレスが、ＤＮＳサーバ２２０に記録されていない可能性があるからである。
【０１０４】
（７）上記の実施例では、メインＣＰＵ２０がプログラム８２に従って処理を実行することによって、各部２２〜３４が実現されるが、各部２２〜３４の少なくとも１個は、論理回路等のハードウェアで実現されてもよい。また、サブＣＰＵ４０がプログラムに従って処理を実行することによって、各部４４〜５８が実現されるが、各部４４〜５８の少なくとも１個は、論理回路等のハードウェアで実現されてもよい。
【０１０５】
（８）「通信装置」は、多機能機でなくてもよく、ＰＣ、プリンタ、サーバ、ＰＤＡ等の通信装置であってもよい。
【０１０６】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【０１０７】
１０：多機能機、２０：メインＣＰＵ、２２：ＩＰアドレス送信部、２４：記憶制御部、２６：問合部、２８：確認部、３０：信号送信部、３２：信号送信部、３４：登録判断部、４０：サブＣＰＵ、４４：登録判断部、４６：記憶制御部、４８：登録判断部、５０：信号判断部、５２：移行制御部、５４：信号送信部、５６：信号送信部、２００：サーバ、２１０：ＤＨＣＰサーバ、２２０：ＤＮＳサーバ
【図１】
0005533735.tif 000002
【図２】
0005533735.tif 000003
【図３】
0005533735.tif 000004
【図４】
0005533735.tif 000005
【図５】
0005533735.tif 000006
【図６】
0005533735.tif 000007
【図７】
0005533735.tif 000008
【図８】
0005533735.tif 000009