説明

情報処理装置、ネットワークインターフェース装置、それらの制御方法、プログラム

【課題】 情報処理装置がディープスリープ状態になった場合でも、情報処理装置が使用される環境に適応するための能動的な処理を継続して行うことができるようにする。
【解決手段】 ネットワークインターフェース装置を介してネットワークに接続され、当該ネットワーク上のサーバと通信可能な情報処理装置は、サーバのアドレス情報を保持し、情報処理装置の情報を前記サーバに定期的に送信する。情報処理装置は、通常状態から省電力状態に移行する際に、前記保持されたアドレス情報及び前記情報処理装置の情報を前記ネットワークインターフェース装置に通知することにより、定期的な送信を継続させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワークインターフェース装置を介してネットワークに接続され、当該ネットワーク上のサーバと通信可能な情報処理装置及び当該ネットワークインターフェース装置に関する。
【背景技術】
【0002】
複合機やプリンタといった情報処理装置においては、消費電力を抑えるための様々な手法が導入されてきた。その中で、ディープスリープと呼ばれる手法は、情報処理装置のRAMとネットワークインターフェイスカード(以後NIC)、そして情報処理装置の操作部を除いた各部位への電源供給を停止することにより情報処理装置を休眠状態にすることである。これにより、情報処理装置がディープスリープ状態にある場合の消費電力を非常に低い値にすることが可能になる。
【0003】
このような非常に低い電力で情報処理装置を動作させることを可能にするディープスリープ技術であるが、情報処理装置がディープスリープ状態にある場合には、プリンタ部にあるドラムや定着器、コントローラ部にあるCPUやHDDへの通電を停止する。このとき情報処理装置は印刷や画像処理といった情報処理装置が持つ主たる機能を実行できない。
【0004】
情報処理装置はディープスリープ状態から通常状態(スタンバイ状態)に移行するための条件を有している。情報処理装置がその条件を満たした場合には、電力の供給を停止していた部位への電力の供給を開始し、情報処理装置の主たる機能を使用可能とする状態(スタンバイ状態)に復帰する。
【0005】
一般的にその復帰条件とは、(1)情報処理装置の操作部のボタンが押下された場合、(2)情報処理装置のNICが復帰条件に一致する特定のネットワークパケットを受信した場合、の二点である。そのため情報処理装置がディープスリープ状態の場合にも、操作部とNICには電力供給が行われており、センサによってボタン押下が行なわれたか否かや、ネットワークパケット受信が行なわれたか否かを常に監視している。
【0006】
前述した復帰条件に一致する特定のネットワークパケットとは、一般的には1)自装置宛てパケット(宛先MACアドレスが自装置宛てのパケット)、2)Sleep復帰パケット、3)特定プロトコルのブロードキャストパケットなどである。2)のSleep復帰パケットとは情報処理装置をディープスリープ状態から復帰させるための特定のパケットパターンを持つパケットを指す。3)の特定プロトコルのブロードキャストパケット、又はマルチキャストパケットとは、ネットワーク上の他のノードがネットワーク上の情報処理装置を検索するためのパケットを指す。情報処理装置は、NICにて受信したパケットがこれらのパケットのどれかであった場合にディープスリープ状態からスタンバイ状態に復帰する仕組みになっている。
【0007】
また、近年の情報処理装置では、ディープスリープ状態にありながら、一定のネットワークパケットに対しては応答することを可能とする代理応答と呼ばれる機能を有しているものもある。前述したように、ディープスリープ状態では情報処理装置のCPUも停止しているため、通常は情報処理装置が受信したパケットに対して応答することはできない。そのため、LAN上のノードが情報処理装置宛てに送出したパケットを情報処理装置が受信すると、上記復帰条件に当てはまり、情報処理装置はディープスリープ状態から必ず復帰してしまっていた。これにより、情報処理装置に対して頻繁に通信を行うようなノードがいる環境や、また通信の頻度は少ないとしても、ノードが多数存在するような環境では、情報処理装置は頻繁にディープスリープから復帰してしまうことになる。従って、ディープスリープ状態を長時間継続することができなくなり、結果的に消費電力をより低くすることが困難となっていた。
【0008】
このような問題を解決する技術が代理応答である。代理応答は、NICに特定のパケットに応答する機能を持たせたものである。この技術により、情報処理装置がLANから受信したネットワークパケットのうち特定のデータパターンを有するものに対して、ディープスリープモードから復帰することなく応答(パケットへの返信)することが可能になる。そのためディープスリープ状態を極力長く継続させ、情報処理装置の消費電力をより低くすることができるようになった。尚、代理応答技術について、例えば特許文献1には、通常処理を行うCPU1と省電力状態において動作するCPU2を備えた画像処理装置が記載されている。そして省電力状態ではCPU2が受信パケットに対して応答する技術が記載されている。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開2006−259906
【発明の概要】
【発明が解決しようとする課題】
【0010】
従来の代理応答技術では、NICは受信したネットワークパケットに対する応答処理しか行うことができなかった。即ち、受信パケットに対する応答という受動的な処理を行うだけであった。
【0011】
しかしながら今日、様々なネットワーク環境が構築され、それらネットワーク環境において使用される情報処理装置は、それぞれのネットワーク環境に適応するための処理を行わなければならない。中には、情報処理装置がディープスリープ状態にあっても、情報処理装置から能動的にネットワークパケットを送信する必要がある場合がある。
【0012】
例えば、マイクロソフト社のWindows(登録商標)オペレーティングシステムを搭載したコンピュータを導入しているLAN環境では、マスタブラウズサーバ(以下、MBSと呼ぶ)とよばれる名前管理サーバが存在している。MBSは、LANの管理者やユーザが明示的に設定するものではなく、LAN上のノード同士がネゴシエーションすることによって決定される。従ってこのネットワーク環境に参加する情報処理装置は、一定間隔でMBSの検索を行い、発見したMBSに対して自装置のコンピュータ名(NetBIOS名)を一定間隔で登録する処理を行っている。これは、MBSで保存される情報は一定時間で消去されてしまうため、情報処理装置を含むLAN上の各ノードは、自装置の情報が消去されるよりも前に再登録を行う必要があるからである。尚、NetBIOS名は、SMB(Server Message Block)を用いてネットワークノード間でファイルの送受信を行う際に使用される情報である。
【0013】
ここで、MBSが情報を消去する時刻や間隔といった更新時間情報は、ネットワーク環境やオペレーティングシステムの種別によって異なる。そして、情報処理装置にはMBSに対して自装置の情報を登録する時間間隔が設定される。この設定に従ったMBSへの登録処理は、情報処理装置のメインCPUによって処理されるものである。しかしながら、情報処理装置が上記ディープスリープ状態になった場合には前述したようにメインCPUは停止してしまう。そのため情報処理装置は、MBSに自身の情報を登録する時間間隔等を知ることができず、登録処理が一切実行できなくなるといった問題があった。
【0014】
別の例として、NetBIOSとTCP/IPをサポートする機器は、LAN上にWINSサーバが存在する場合、一定の間隔で自装置のNetBIOS名とIPアドレスをWINSサーバに登録する処理を行う。WINSサーバ(Windows(登録商標) Internet Name Serviceサーバ)とは、ネットワーク上の各ノードのNetBIOS名とIPアドレスを対にして管理するサーバである。WINSサーバは、LAN環境において管理者等のユーザによって設置されるものである。それゆえ、情報処理装置にはWINSサーバを指定するための登録手段が備わっている。より具体的にはWINSサーバのIPアドレスを登録する登録手段を持っている。情報処理装置は、登録されたアドレスに対して自装置のNetBIOS名とIPアドレスの対を登録する処理を行う。その登録の際に、WINSサーバから情報処理装置に対して、次回の登録時刻(時間)が指定される。指定された登録時刻になったら再び情報処理装置はWINSサーバに対して自装置のNetBIOS名とIPアドレスの対を登録する処理を行う。この一連の登録処理は情報処理装置のメインCPUによって処理されるものである。しかしながら、情報処理装置が上記ディープスリープ状態になった場合には前述したようにメインCPUは停止してしまう。そのため情報処理装置はWINSサーバのアドレス情報等を知ることができず、登録処理が一切実行できなくなるといった問題があった。
【0015】
本発明はこれらの問題に対してなされたものである。即ち、本発明の目的は、情報処理装置がディープスリープ状態になった場合でも、情報処理装置が使用される環境に適応するための能動的な処理を継続して行うことができる情報処理装置を提供することである。
【課題を解決するための手段】
【0016】
上記目的を達成するために、本発明の情報処理装置は、ネットワークインターフェース装置を介してネットワークに接続され、当該ネットワーク上のサーバと通信可能な情報処理装置であって、前記サーバのアドレス情報を保持する保持手段と、前記保持されたアドレス情報に従って前記情報処理装置の情報を前記サーバに定期的に送信する送信手段と、通常状態よりも消費電力が小さい省電力状態に移行する条件を、前記情報処理装置が満たしたことを検知する検知手段と、前記検知手段が前記省電力状態に移行するための条件を満たしたことを検知した場合、前記保持されたアドレス情報及び前記送信手段によって送信される前記情報処理装置の情報を前記ネットワークインターフェース装置に通知する通知手段とを有することを特徴とする。
【0017】
また、上記目的を達成するために、本発明のネットワークインターフェース装置は、情報処理装置とネットワークとの間に接続されるネットワークインターフェース装置であって、前記ネットワーク上のサーバに前記情報処理装置が定期的に送信する情報、及び当該サーバのアドレス情報を、前記情報処理装置が通常状態から当該通常状態よりも消費電力が小さい省電力状態に移行する際に、当該情報処理装置から受信する受信手段と、前記受信手段によって受信されたアドレス情報に従って、前記情報を前記サーバに送信する送信手段とを有することを特徴とする。
【発明の効果】
【0018】
本発明によれば、情報処理装置がディープスリープ状態になった場合でも、情報処理装置が使用される環境に適応するための能動的な処理を継続して行うことができる。
【図面の簡単な説明】
【0019】
【図1】本実施嶺における通信システムの構成を示す図である。
【図2】情報処理システムのハードウェア構成を示す図である。
【図3】情報処理システムのソフトウェア構成を示す図である。
【図4】情報処理システムで実行される処理の流れを示すフローチャートである。
【図5】MFPにおいて実行される定義済み処理Aを示すフローチャートである。
【発明を実施するための形態】
【0020】
以下、図面を参照して本発明の実施の形態を詳しく説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を以下の実施形態のみに限定するものではなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【0021】
(第一の実施の形態)
まず、本発明に係る第一の実施形態について説明する。第一の実施形態では、後述するMFP100のディープスリープ状態(省電力状態)への移行時、スタンバイ状態(通常状態)への復帰時、及びディープスリープ状態におけるNIC101の動作について説明する。
【0022】
図1は、第1の実施形態における通信システムの全体図である。図1に示す通信システムでは、情報処理装置100(以下、MFPとする)がネットワークインターフェース装置101(以下、NICとする)を介してHUB102に接続されている。つまりMFP100とNIC101とで1つの情報処理システムが構成されている。HUB102は更にLAN103に接続されており、情報処理装置100は、ネットワークインターフェース装置101を介してネットワーク上の各装置と通信可能となっている。HUB102には、NIC101の他にもPC104やWINSサーバ105が接続されている。PC104はマスタブラウズサーバ(以下、MBSとする)として動作可能なパーソナルコンピュータである。WINSサーバ105はWINSサーバの機能を備えたパーソナルコンピュータである。なお、一般的には、WINSサーバが存在するLAN環境においては、MBSは存在しないか、MBSとして動作することはない。WINSサーバはMBSが提供する機能を代わりに提供することができるからである。本実施の形態においては、WINSサーバとMBSとが排他的に存在する場合を例に説明する。即ち、図1の通信システムにおいてWINSサーバ105が存在する場合にはPC104はMBSとして動作せず通常のPCとして動作することとする。逆に、WINSサーバ105が存在しない場合にはPC104はMBSとして動作することとする。尚、本実施の形態においてはWINSサーバとMBSとが排他的に存在する場合を例に説明するが、両方が存在することも可能である。
【0023】
図2は、MFP100及びNIC101からなる情報処理システム200の構成を説明するブロック図である。NIC101は、インテリジェント型ネットワークカードモジュールにより実現された、MFP100に対して着脱可能なネットワークインターフェース装置である。そして、NIC101は、NIC101用のCPU201,RAM202,ROM203,ネットワークI/F204,LED205,拡張I/F206と、これらを互いに接続するシステムバス207とを備えている。
【0024】
CPU201は、ROM203に記憶された制御プログラムを読み出して各種制御処理を実行する。例えば、CPU201は、システムバス207に接続されたネットワークI/F204を介してHUB102に接続し、更にHUB102を介してLAN103上の端末と所定の通信プロトコルに従って通信する処理を実行する。これにより、例えば、LAN103上の印刷データ生成装置から送信された印刷データやプリンタ制御命令等の各種データ(ネットワークパケット)を受信し、拡張I/F206を介してMFP100に転送する。その結果、MFP100において印刷処理を行うことができる。RAM202は、CPU201の主メモリ、ワークエリア等の一時記憶領域として用いられる。LED205は、NIC101の動作状態を示す表示部として用いられている。LED205は、例えば、ネットワークI/F204とHUB102との電気的な接続状態や通信モード等の各種動作状態をLEDの色や点滅パターンで示すことが可能となっている。拡張I/F206は、NIC101とMFP100とを接続するためのI/Fであり、ローカルケーブル210を介してMFP100側の拡張I/F224に接続されている。なお、拡張I/F206は、不図示のコネクタを含んで構成されている。NIC101は、このコネクタによってMFP100への着脱が可能となっており、同じ構成を有する他のMFPに当該NIC101を装着することも可能である。
【0025】
一方、MFP100は、制御部220、操作部230、スキャナ240、及びプリンタ250を備えている。制御部220には、MFP100用のCPU221,RAM222,ROM223,拡張I/F224,操作部I/F225,デバイスI/F226と、これらを互いに接続するシステムバス227とが備えられている。CPU221は、ROM223に記憶された制御プログラムを読み出して各種制御処理を実行する。例えば、CPU221は、拡張I/F224を介してNIC101から転送される印刷データに基づいて出力画像データを生成し、デバイスI/F226を介してプリンタ250に出力する。RAM222は、CPU221の主メモリ、ワークエリア等として機能する。また、RAM222は、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。操作部230には、MFP100の動作モード等の設定や印刷データの取り消し等の操作を行うためのボタンと、MFP100の動作状態を示す液晶パネルやLED等の表示部とが配されている。また、後述する通信モードの設定も、操作部230を介して行うことができる。プリンタ250は、公知の印刷技術を利用したプリンタであり、例えば電子写真方式(レーザービーム方式)やインクジェット方式、昇華方(熱転写)方式等を用いて画像データの印刷を実行する。また、スキャナ240は原稿上の画像を読み取って画像データを生成し、MFP100に入力する。なお、MFP100は、スタンバイ状態よりも消費電力が小さいディープスリープ(省電力)モードを備えている。ディープスリープ状態(省電力状態)中は、特定のユニット(操作部230や拡張I/F224など)を除く各ユニットに対する電力供給を停止することにより、消費電力が抑制されている。
【0026】
図3は、NIC101及びMFP100のソフトウェア構成図である。なお、ここではNIC101における通信モードの設定に関係するソフトウェアについてのみ説明するが、NIC101及びMFP100には、以下に説明するソフトウェア以外の各種ソフトウェアも備えられている。図3に示す各ソフトウェアは、それぞれNIC101またはMFP100のメモリに格納されており、それぞれNIC101またはMFP100が起動したことに応じてRAMに読み出され、各CPUにより実行される。
【0027】
NIC101側のオペレーティングシステム(OS)301上には、ネットワークI/Fドライバ302及び通信制御部303が備えられている。ネットワークI/Fドライバ302は、ネットワークI/F204による通信処理の実行を制御する。通信制御部303は、後述する方法を用いてMFP100側から指示される内容に従って、HUB102に接続されるネットワークノードと通信を行う。
【0028】
一方、MFP100側のオペレーティングシステム(OS)311上には、NICドライバ312及び通信実行部313が備えられている。NICドライバ312は、NIC101に対して各種指示を送信し、NIC101に各種動作を実行させる。通信実行部313は、後述する方法を用いて、NIC101がHUB102に接続されるネットワークノードとの通信を制御したり、またNICドライバ312を介して通信制御部303に各種の設定指示を行ったりする。なお、MFP100のオペレーティングシステム311上で動作する各ソフトウェアのうち、NICドライバ312はOS311のカーネルスペースで動作するのに対して、通信実行部313はOS311のユーザスペースで動作するものとする。また、通信実行部313は、NICドライバ312のAPI(Application Program Interface)を利用することにより、NIC101に対して各種情報の設定を行わせる。各種情報とは例えば、MBSへの登録実行の有無やMBSに登録する時間間隔、WINSサーバへの登録実行の有無、WINSサーバのアドレス情報としてのIPアドレス、MFP100のコンピュータ名(以下、NetBIOS名)、などである。また、通信実行部313は、MFP100がスタンバイ状態である場合に、MBSへの登録処理を実行したり、又はWINSサーバへの登録処理を実行する。設定記憶部314には、MFP100がスタンバイ状態である場合、またはディープスリープ状態である場合における、NIC101がHUB102と通信する際の通信に関する各種の情報が記憶されている。例えば、前述したMBSへの登録実行の有無やMBSに登録する時間間隔、WINSサーバへの登録実行の有無、WINSサーバのIPアドレス、MFP100のNetBIOS名、などである。またMFP100のIPアドレスやサブネットマスク、といったMFP100が外部ノードとネットワーク通信するために必要なアドレス情報も記憶されている。MFP100のCPU221は、通信実行部313により決定された情報を設定記憶部314に記憶させたり、設定記憶部314に記憶されている情報に基づいてNIC101に対する指示を送信したりする。
【0029】
次に図4のフローチャートを用いて情報処理システム200において実行される処理について説明する。図4に示すフローチャートのうち、破線よりも左側の各ステップはMFP100のCPU221により実行される。また、破線よりも右側の各ステップはNIC101のCPU201により実行される。
【0030】
まず、Step401においてMFP100は情報処理システム200の起動を行う。システムの起動とは、MFP100の電源が投入され、各種のプログラムが立ち上がり、MFP100がMFPとしての全ての機能の立ち上がりが完了したことを意味する。次にStep402において、MFP100は定義済み処理Aの処理を行う。定義済み処理Aに関して、図5のフローチャートを用いて具体的に説明する。図5のフローチャートの各ステップはMFP100のCPU221により実行される。
【0031】
ステップS501においてMFP100は、WINSサーバへの登録処理の要否を確認する。ここでは設定記憶部314に記録されているWINSサーバへの登録処理の設定を示す設定値が、WINSサーバへの設定を行うことを示す値であった場合に、ステップS502へと移行する。一方、設定記憶部314に記録されているWINSサーバへの登録処理の設定を示す設定値が、WINSサーバへの登録処理を行わないこと示す値であった場合には、ステップS504へと移行する。
【0032】
ステップS502において、設定記憶部314に保存されているWINSサーバのIPアドレス宛てに、同じく保存されているMFP100のNetBIOS名とIPアドレスとを送信する。これによりWINSサーバにMFP100のNetBIOS名とIPアドレスとを登録する。その後、ステップS503においてMFP100はS502におけるWINSサーバへの登録が成功したか否かを判断する。具体的には、S502において送信した登録要求に対して、登録が成功した旨の応答をWINSサーバから受信したか否かを判断する。尚、登録が成功した旨の応答を受信するとき、MFP100は、WINSサーバへの次回の登録時刻(時間)を示す情報を併せて受信する。そしてMFP100はWINSサーバへの次回の登録時刻(時間)を示す情報を保持しておく。応答を受信することができず、登録処理に失敗したと判断された場合には、ステップS508に移行する。
【0033】
ステップS508において、通信実行部313はMFP100の操作部230の一部である表示部に、WINSサーバへの登録に失敗した事をユーザに伝えるメッセージを表示する。例えば、「WINSサーバへの登録に失敗しました。設定を確認してください。」等のメッセージが表示部に表示される。
【0034】
ステップS503において、WINSサーバへの登録が成功したと判断された場合には定義済み処理Aを終了し、図4のステップS403へと進む。
【0035】
ステップS501において、WINSサーバへの登録処理が必要ないと判断された場合の処理について説明する。設定記憶部314に記録されているWINSサーバへの登録処理の設定を示す設定値が、WINSサーバへの登録処理を行わないこと示す値であった場合には、ステップS504へと移行する。S504において、MFP100はMBSを検索する。具体的には、MFP100は、MFP100と同一のIPサブネット内に、MBSを検索するための検索要求パケットを送信する。そしてMFP100と同一のIPサブネット内にMBSが存在していた場合には、そのMBSはMFP100が送出する検索要求パケットに対して応答する。MFP100はステップS504において検索要求パケットを送信した後で、MBSからの応答を一定期間待ち受ける。ステップS505においてMFP100はMBSが発見されたか否かを判断する。即ち、送信した検索要求パケットに対するMBSからの応答が一定期間内にあった場合にはMBSが発見されたと判断し、ステップS506へと進む。一方、一定期間経過しても応答がない場合にはMBSが発見されなかったと判断してS508へと進む。
【0036】
ステップS506において、MFP100は応答を送信したMBSのIPアドレス宛てに、設定記憶部314に保存されているMFP100のNetBIOS名を送信する。これによりMBSにMFP100のNetBIOS名を登録する。その後、ステップS507においてMFP100はS506におけるMBSへの登録が成功したか否かを判断する。具体的には、S506において送信した登録要求に対して、登録が成功した旨の応答をMBSから受信したか否かを判断する。応答を受信することができず、登録処理に失敗したと判断された場合には、ステップS508に移行する。
【0037】
ステップS508において、通信実行部313はMFP100の操作部230の一部である表示部に、MBSへの登録に失敗した事をユーザに伝えるメッセージを表示する。例えば、「MBSへの登録に失敗しました。設定を確認してください。」等のメッセージが表示部に表示される。
【0038】
ステップS507において、MBSへの登録が成功したと判断された場合には定義済み処理Aを終了し、図4のステップS403へと進む。
【0039】
図4のステップS403において、MFP100は、WINSサーバ或いはMBSへ情報を登録するべき時間になったか否かを判断する。ここで、MFP100にWINSサーバへの登録処理が設定されている場合とMBSへの登録処理が設定されている場合とで、参照する時間の情報が異なる。WINSサーバへの登録処理が設定されている場合には、前回WINSサーバに登録処理を行った際にWINSサーバから通知された時間になったか否かを判断する。その時間情報はWINSサーバから受信し、MFP100に保持されている。一方、MBSへの登録処理が設定されている場合には、設定記憶部314に記憶されているMBSに登録する時間間隔を示す情報を参照し、前回MBSに登録した時からその時間間隔が経過したか否かを判断する。S403において、登録時間になったと判断された場合には、S402へと進み、前述の定義済み処理A(図5のフローチャート)を実行する。登録時間になっていなければ、ステップS404へと移行する。
【0040】
ステップS404において、MFP100は、自装置がスディープリープ状態に移行するための条件を満たしているか否かを検知する。この条件は、予めユーザにより設定されているものであり、ここでは、ユーザによる操作が所定期間行われなかった場合やプリント動作が終了してから所定期間が経過した場合に、ディープスリープ状態に移行するように設定されているものとする。ステップS404の判定の結果、ディープスリープ状態に移行するための条件を満たしていることが検知された場合は、ステップS405に進み、ディープスリープ状態に移行するための一連の処理を行う。
【0041】
ステップS405では、通信実行部313がNIC101に渡す情報を収集する処理を行う。通信実行部313は設定記憶部314から、次の情報を取得する。(1)MBSへの登録実行の有無、(2)MBSへの登録時間間隔、(3)WINSサーバへの登録実行の有無、(4)WINSサーバのIPアドレス、(5)MFP100のNetBIOS名。また通信実行部313はOS311からMFP100自身のIPアドレスを取得する。前述したとおり、本実施の形態においては、WINSサーバへの登録処理とMBSへの登録処理を同時に行うことはない。従って、(1)と(3)の設定値は排他的な関係になっている。即ち、(1)と(3)の両方がYesになることはない。なお、通信実行部313が設定記憶部314から情報の取得を行う際には専用のAPIを使用し、またOS311から情報の取得を行う際にはioctl命令を用いている。
【0042】
次にステップS406において、通信実行部313はステップS405で取得した情報をNIC101内の通信制御部303に通知する処理を行う。通信実行部313は予めNICドライバ312によって用意されているioctl命令を用いて、S405で取得した情報を通信制御部303に通知する。次にMFP100側の処理としてステップS407が行なわれ、同時にNIC101側の処理としてステップS408が行なわれる。ステップS407ではMFP100をディープスリープ状態に移行させる処理を行い、CPU221は動作を停止する。即ち操作部230や拡張I/F224などの特定のユニットを除く各ユニットへの電力供給を停止する。
【0043】
ステップS408ではNIC101の通信制御部303が、ディープスリープ動作モードへと移行する。ここでのディープスリープ動作モードとは、MFP100がディープスリープ状態にある場合の動作モードのことで、後述するステップS409からステップS418までの一連の処理を行うモードのことである。このモードは、MFP100がディープスリープ状態である間、継続される。MFP100がディープスリープ状態からスタンバイ状態に復帰する場合とは、操作部230の特定のボタンがユーザによって押下された場合や特定のネットワークパケットを受信した場合、または後述するステップS418が行なわれた場合である。操作部230の特定のボタンがユーザによって押下された場合や特定のネットワークパケットを受信した場合には、NIC101が処理しているステップがS409からS417のいかなるステップであってもCPU201はその処理を中断する。そしてNIC101はMFP100に対してディープスリープ状態からスタンバイ状態への復帰を促す信号(復帰指示)を送信する。MFP100はその信号を受信した場合、ステップS407で停止した各部位を復帰させ、再びスタンバイ状態へと移行する(ステップS419)。その後、MFP100はステップS402へ戻り、再び前述の定義済み処理Aを実行することになる。即ち、必要に応じて定期的な情報の送信を再開することになる。尚、操作部230の特定のボタンがユーザによって押下されたことや特定のネットワークパケットを受信したことが要因でディープスリープ状態からスタンバイ状態に復帰した場合には、MFP100はS402を実行する。しかし、後述するS418の処理によりNIC101から通知された復帰指示に基づいてディープスリープ状態から復帰した場合、MFP100はS402の処理を行う前に、表示部にWINSサーバ又はMBSへの登録に失敗した旨を示すメッセージを表示する。後述するように、この場合にMFP100がNIC101から受信する復帰指示には、WINSサーバ又はMBSへの登録に失敗した旨の情報が含まれているため、そのことをユーザに通知する必要があるからである。
【0044】
情報処理システム200では、情報処理システム200の電源が切られるまでの間、S402〜419までの処理がループして実行されることになる。
【0045】
ステップS409の説明に戻り、NIC101において実行されるディープスリープ動作モードについて説明する。ステップS409において、通信制御部303はMFP100から情報が通知されているか判断する。これは後述するWINSサーバやMBSへの登録処理(ディープスリープ動作モード)を行うにあたって必要となる情報が全て通知されているか否かを確認するものであり、ディープスリープ動作モードが実行可能か否かを判断することに相当する。
【0046】
MFP100から情報が通知されていないと判断された場合、即ちステップS406で通信実行部313が通知する情報が不十分であった場合、ステップS421へと進む。情報が不十分であるとは、前述の通信実行部313から通知される(1)〜(5)の情報のうち、(1)がYesであるにも関わらず(2)の情報が無い場合や、(3)がYesであるにも関わらず(4)の情報が無い場合などである。また、(5)の情報が無い場合などである。このような場合にはNIC101がWINSサーバやMBSへの登録処理を実行することができないので、NIC101はS410以降のディープスリープ動作モードを実行することはできなくなる。従って、S421へ進み、NIC101はディープスリープ動作モードを実行しない。ただし、この場合でも、NIC101自体は動作しているため、通常のネットワークパケットの受信や所定の代理応答の処理は継続して実行できることは言うまでもない。
【0047】
S409において、ディープスリープ動作モードとしてNIC101が動作するために必要な情報が全て通知されていると判断された場合には、ステップS410へと移行する。ステップS410では、WINSサーバへの登録処理の要否を確認する。ここではMFP100から通知された情報に含まれるWINSサーバへの登録処理の設定を示す設定値(上記(3)の設定値)が、WINSサーバへの設定を行うことを示す値(Yes)であった場合に、ステップS411へと移行する。一方、MFP100から通知された情報に含まれるWINSサーバへの登録処理の設定を示す設定値が、WINSサーバへの登録処理を行わないこと示す値(No)であった場合には、ステップS414へと移行する。
【0048】
ステップS411において、MFP100から通知されたWINSサーバのIPアドレス宛てに、同じく通知されたMFP100のNetBIOS名とIPアドレスとを送信する。これによりWINSサーバにMFP100のNetBIOS名とIPアドレスとを登録する。その後、ステップS412においてMFP100はS411におけるWINSサーバへの登録が成功したか否かを判断する。具体的には、S411において送信した登録要求に対して、登録が成功した旨の応答をWINSサーバから受信したか否かを判断する。尚、登録が成功した旨の応答を受信するとき、NIC101は、WINSサーバへの次回の登録時刻(時間)を示す情報を併せて受信する。そしてNIC101はWINSサーバへの次回の登録時刻(時間)を示す情報を保持しておく。応答を受信することができず、登録処理に失敗したと判断された場合には、ステップS418に移行する。登録が成功したと判断された場合にはステップS413へ移行する。
【0049】
前述したように、WINSサーバへの登録間隔はWINSサーバによって決定されるものであるが、ステップS411においては、これまでMFP100が行っていた登録処理からの経過時間に関係なく登録処理を行っている。その理由は、MFP100において最後に行なわれたWINSサーバへの登録処理からの経過時間をNIC101の通信制御部303が知る事ができないからである。そのため、ディープスリープ動作モードに移行した際には、NIC101はMFP100が行った最後の登録処理からの経過時間に関係なくまずWINSサーバへの登録処理を行う。これにより、WINSサーバ内で管理されているMFP100のNetBIOS名とIPアドレスが時間の経過によって消去されることを防いでいる。
【0050】
ステップS418においてNIC101の通信制御部303は、MFP100に対してスタンバイ状態への復帰指示を送信する。また、ここで送信される復帰指示には、WINSサーバへの登録処理が失敗したことを示す情報又はMBSへの登録処理が失敗したことを示す情報が含まれている。MFP100は復帰指示を受信した場合、ステップS407で停止した各部位を復帰させ、再びスタンバイ状態へと復帰する(ステップS419)。ここで、MFP100は、受信した復帰指示に含まれる、登録処理が失敗したことを示す情報を参照し、その情報に基づいて表示部に表示を行う。即ち、「WINSサーバへの登録に失敗しました。設定を確認してください。」又は「MBSへの登録に失敗しました。設定を確認してください。」といったメッセージがMFP100の表示部に表示される。
【0051】
ステップS412において、WINSサーバへの登録処理に成功した場合には、ステップS413へと進む。ステップS413においてNIC101は、WINSサーバから通知された情報に基づいてWINSサーバへの登録時刻(時間)になったか否かを判断し、登録時刻になった場合には再びステップS410へと移行する。
【0052】
ステップS410において、WINSサーバへの登録処理が必要ないと判断された場合の処理について説明する。MFP100から通知された情報に含まれるWINSサーバへの登録処理の設定を示す設定値が、WINSサーバへの登録処理を行わないこと示す値であった場合には、ステップS414へと移行する。S414において、NIC101はMBSを検索する。具体的には、NIC101は、NIC101と同一のIPサブネット内に、MBSを検索するための検索要求パケットを送信する。そしてNIC101と同一のIPサブネット内にMBSが存在していた場合には、そのMBSはNIC101が送出する検索要求パケットに対して応答する。NIC101はステップS414において検索要求パケットを送信した後で、MBSからの応答を一定期間待ち受ける。ステップS415においてNIC101はMBSが発見されたか否かを判断する。即ち、送信した検索要求パケットに対するMBSからの応答が一定期間内にあった場合にはMBSが発見されたと判断し、ステップS416へと進む。一方、一定期間経過しても応答がない場合にはMBSが発見されなかったと判断してS418へと進む。S418では、上述した処理を行う。
【0053】
ステップS416において、NIC101は応答を送信したMBSのIPアドレス宛てに、MFP100から通知された情報に含まれるMFP100のNetBIOS名を送信する。これによりMBSにNIC101のNetBIOS名を登録する。その後、ステップS417においてNIC101はS416におけるMBSへの登録が成功したか否かを判断する。具体的には、S416において送信した登録要求に対して、登録が成功した旨の応答をMBSから受信したか否かを判断する。応答を受信することができず、登録処理に失敗したと判断された場合には、ステップS418に移行する。S418では、上述した処理を行う。ステップS417においてMBSへの登録が成功したと判断された場合にはステップS413へと進む。そしてMFP100から通知された情報に含まれたMBSへの登録時間間隔に基づいて、登録時間になったか否かを判断し、登録時間になった場合にはステップS410へ移行する。
【0054】
このように、NIC101のディープスリープ動作モードでは、S410〜S417の処理がループして定期的に実行されることになる。従って本来MFP100において実行されていた定期処理を、MFP100がディープスリープ状態になった場合にはNIC101に代行処理させることができる。その結果、MFP100がディープスリープ状態であっても、情報処理システム200が参加するネットワーク環境に適応する必要な処理が継続され、そのためにMFP100がディープスリープ状態から復帰する必要がなくなる。また、WINSサーバ又はMBSへの登録に失敗した場合にはいち早くMFP100をディープスリープ状態から復帰させ、MFPの表示部にその旨を表示するので、ユーザが状況を把握し必要な措置を早急にとることができるようになる。
【0055】
(その他の実施形態)
上記図4のフローチャートでは、MFP100はディープスリープ状態への移行条件を満たした後(S404でYes)、NIC101に渡す情報の収集を行っていた(S405)。しかし、NIC101に渡す情報の収集はこのタイミングで行わなくてもよく、例えばMFP100が起動した直後に行うようにしてもよい。また、上記実施形態では、情報処理装置の一例としてMFPについて説明したが、MFPに限らずプリンタやスキャナ、ファクシミリ装置、或いはPC等の装置であっても構わない。
【0056】
また、本発明の各工程は、ネットワーク又は各種記憶媒体を介して取得したソフトウェア(コンピュータプログラム)を情報処理装置(CPU、プロセッサ)にて実行することでも実現できる。
【符号の説明】
【0057】
101 NIC
201,221 CPU
202,222 RAM
100 MFP
230 操作部

【特許請求の範囲】
【請求項1】
ネットワークインターフェース装置を介してネットワークに接続され、当該ネットワーク上のサーバと通信可能な情報処理装置であって、
前記サーバのアドレス情報を保持する保持手段と、
前記保持されたアドレス情報に従って前記情報処理装置の情報を前記ネットワークインターフェース装置を介して前記サーバに定期的に送信する送信手段と、
通常状態よりも消費電力が小さい省電力状態に移行する条件を、前記情報処理装置が満たしたことを検知する検知手段と、
前記検知手段が前記省電力状態に移行するための条件を満たしたことを検知した場合、前記保持されたアドレス情報及び前記送信手段によって送信される前記情報処理装置の情報を前記ネットワークインターフェース装置に通知する通知手段と、
を有することを特徴とする情報処理装置。
【請求項2】
前記サーバが特定のサーバであるか否かを判断する判断手段と、
前記判断手段によって前記サーバが特定のサーバでないと判断された場合、前記通知手段は、前記情報処理装置の情報を当該サーバに定期的に送信するための間隔を示す情報を前記ネットワークインターフェース装置に通知することを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記省電力状態から前記通常状態への復帰指示を前記ネットワークインターフェース装置から受信する受信手段と、
前記受信手段によって受信された復帰指示が特定の情報を含む場合、前記情報処理装置の表示部にメッセージを表示する表示手段と、
を有することを特徴とする請求項1又は2に記載の情報処理装置。
【請求項4】
前記特定のサーバはWINSサーバであり、前記送信手段によって送信される情報は前記情報処理装置のコンピュータ名であることを特徴とする請求項1乃至3の何れかに記載の情報処理装置。
【請求項5】
前記通知手段による通知を行った後、前記情報処理装置は前記送信手段による情報の送信を停止し、前記省電力状態から前記通常状態に復帰した後、前記情報処理装置は前記送信手段による情報の送信を再開することを特徴とする請求項1乃至4の何れかに記載の情報処理装置。
【請求項6】
情報処理装置とネットワークとの間に接続されるネットワークインターフェース装置であって、
前記ネットワーク上のサーバに前記情報処理装置が定期的に送信する情報、及び当該サーバのアドレス情報を、前記情報処理装置が通常状態から当該通常状態よりも消費電力が小さい省電力状態に移行する際に、当該情報処理装置から受信する受信手段と、
前記受信手段によって受信されたアドレス情報に従って、前記情報を前記サーバに送信する送信手段と、
を有することを特徴とするネットワークインターフェース装置。
【請求項7】
前記送信手段は、前記情報処理装置が定期的に送信する間隔に関わらず、前記受信手段による受信に応じて前記情報を前記サーバに送信することを特徴とする請求項6記載のネットワークインターフェース装置。
【請求項8】
前記送信手段による送信に失敗した場合、前記情報処理装置を省電力状態から通常状態に復帰させるための復帰指示を当該情報処理装置に通知する通知手段を有することを特徴とする請求項6又は7に記載のネットワークインターフェース装置。
【請求項9】
前記サーバはWINSサーバであり、前記受信手段によって受信される情報は前記情報処理装置のコンピュータ名であることを特徴とする請求項6乃至8の何れかに記載の情報処理装置。
【請求項10】
ネットワークインターフェース装置を介してネットワークに接続され、当該ネットワーク上のサーバと通信可能な情報処理装置の制御方法であって、
前記サーバのアドレス情報を保持する保持工程と、
前記保持されたアドレス情報に従って前記情報処理装置の情報を前記ネットワークインターフェース装置を介して前記サーバに定期的に送信する送信工程と、
通常状態よりも消費電力が小さい省電力状態に移行する条件を、前記情報処理装置が満たしたことを検知する検知工程と、
前記検知工程が前記省電力状態に移行するための条件を満たしたことを検知した場合、前記保持されたアドレス情報及び前記送信工程によって送信される前記情報処理装置の情報を前記ネットワークインターフェース装置に通知する通知工程と、
を有することを特徴とする情報処理装置の制御方法。
【請求項11】
情報処理装置とネットワークとの間に接続されるネットワークインターフェース装置の制御方法であって、
前記ネットワーク上のサーバに前記情報処理装置が定期的に送信する情報、及び当該サーバのアドレス情報を、前記情報処理装置が通常状態から当該通常状態よりも消費電力が小さい省電力状態に移行する際に、当該情報処理装置から受信する受信工程と、
前記受信工程によって受信されたアドレス情報に従って、前記情報を前記サーバに送信する送信工程と、
を有することを特徴とするネットワークインターフェース装置の制御方法。
【請求項12】
請求項10に記載の情報処理装置の制御方法の各工程、または請求項11に記載のネットワークインターフェース装置の制御方法の各工程をコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2010−244464(P2010−244464A)
【公開日】平成22年10月28日(2010.10.28)
【国際特許分類】
【出願番号】特願2009−94996(P2009−94996)
【出願日】平成21年4月9日(2009.4.9)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】