(57)【要約】 【課題】省電力モード中において効率的にマルチキャストグループを維持することができる通信装置を提供すること。【解決手段】通信装置が省電力状態中に受信した信号がマルチキャスト受信者照会信号である場合、当該信号のマルチキャストアドレスが、通信装置が参加しているマルチキャストグループの所定のアドレスに一致するか否かを判定し、一致する場合にマルチキャスト受信者報告を、前記マルチキャスト受信者照会信号の発信元に送信する。【選択図】  図１
2018121272.tif 000002
【特許請求の範囲】
【請求項１】
第１の状態と、前記第１の状態より消費電力が小さい第２の状態とを有する通信装置であって、
前記第２の状態において外部から信号を受信する受信手段と、
受信した前記信号がマルチキャスト受信者照会信号であるか否かを判定する第１の判定手段と、
受信した前記信号が前記マルチキャスト受信者照会信号であると判定された場合、前記マルチキャスト受信者照会信号のマルチキャストアドレスが、前記通信装置が参加しているマルチキャストグループの所定のアドレスに一致するか否かを判定する第２の判定手段と、
前記マルチキャストアドレスが前記所定のアドレスに一致すると判定された場合、マルチキャスト受信者報告を、前記マルチキャスト受信者照会信号の発信元に送信する送信手段と、
を備えることを特徴とする通信装置。
【請求項２】
前記マルチキャスト受信者照会信号の送信に使用されているプロトコルのバージョンを判定する第３の判定手段をさらに備え、
前記送信手段は、前記第２の判定手段の判定結果と前記第３の判定手段の判定結果とに基づいて、前記マルチキャスト受信者報告を前記マルチキャスト受信者照会信号の発信元に送信することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記マルチキャスト受信者照会信号の送信に使用されているプロトコルのバージョンが１の場合、前記マルチキャスト受信者照会信号の最大応答遅延情報に基づき前記マルチキャスト受信者報告の送信時刻を決定する第１の決定手段をさらに備え、
前記送信手段は、前記第１の決定手段により決定された送信時刻に、前記マルチキャスト受信者報告を送信することを特徴とする請求項２に記載の通信装置。
【請求項４】
前記マルチキャスト受信者照会信号の送信に使用されているプロトコルのバージョンが２の場合、前記マルチキャスト受信者照会信号の送信元数が０か否かを判定する第４の判定手段と、
前記マルチキャスト受信者照会信号の送信元数が０と判定された場合、前記マルチキャスト受信者照会信号の最大応答遅延情報に基づき前記マルチキャスト受信者報告の送信時刻を決定する第２の決定手段とをさらに備え、
前記マルチキャスト受信者照会信号の送信元数が０と判定された場合、前記送信手段は、前記第２の決定手段により決定された送信時刻に、前記マルチキャスト受信者報告を送信することを特徴とする請求項２または３に記載の通信装置。
【請求項５】
前記通信装置のマルチキャスト受信終了によるマルチキャスト受信者報告の送信および参加しているマルチキャストグループの変更によるマルチキャスト受信者報告の送信は、前記第１の状態で行われることを特徴とする請求項１〜４のいずれか１項に記載の通信装置。
【請求項６】
前記第１の状態から前記第２の状態に移行する場合、前記第１の状態で参加している前記マルチキャストグループに関する情報を前記第２の状態においても引き継ぐ引継手段をさらに備えることを特徴とする請求項１〜５のいずれか１項に記載の通信装置。
【請求項７】
前記マルチキャストグループの所定のアドレスは、前記通信装置が参加しているマルチキャストグループの要請ノードマルチキャストアドレスであることを特徴とする請求項１〜６のいずれか１項に記載の通信装置。
【請求項８】
前記マルチキャストグループに関する情報は、前記第１の状態におけるインタフェースアドレスの下位３２ビットであることを特徴とする請求項７に記載の通信装置。
【請求項９】
前記インタフェースアドレスの下位３２ビットから前記要請ノードマルチキャストアドレスを復元し、復元された前記要請ノードマルチキャストアドレスから前記マルチキャスト受信者報告を作成する作成手段をさらに備えることを特徴とする請求項８に記載の通信装置。
【請求項１０】
前記第２の状態において受信した信号が前記マルチキャスト受信者照会信号でない場合、当該信号の内容に基づいて、前記第２の状態を前記第１の状態へ移行させる移行手段をさらに備えることを特徴とする請求項１〜９のいずれか１項に記載の通信装置。
【請求項１１】
前記送信手段は、前記マルチキャスト受信者照会信号のマルチキャストアドレスが未指定アドレスの場合、マルチキャスト受信者報告を、前記マルチキャスト受信者照会信号の発信元に送信することを特徴とする請求項１〜１０のいずれか１項に記載の通信装置。
【請求項１２】
受信した前記信号がマルチキャスト受信者照会信号でない場合、前記第２の状態から前記第１の状態に移行させる移行手段をさらに備えることを特徴とする請求項１〜１１のいずれか１項に記載の通信装置。
【請求項１３】
第１の状態と、前記第１の状態より消費電力が小さい第２の状態とを有する通信装置の制御方法であって、
前記第２の状態において受信した信号がマルチキャスト受信者照会信号であるか否かを判定するステップと、
受信した前記信号が前記マルチキャスト受信者照会信号であると判定された場合、前記マルチキャスト受信者照会信号のマルチキャストアドレスが、前記通信装置が参加しているマルチキャストグループの所定のアドレスに一致するか否かを判定するステップと、
前記マルチキャストアドレスが前記所定のアドレスに一致すると判定された場合、マルチキャスト受信者報告を、前記マルチキャスト受信者照会信号の発信元に送信するステップと、
を有することを特徴とする制御方法。
【請求項１４】
コンピュータが読み取り実行することで、前記コンピュータを、請求項１〜１２のいずれか１項に記載の通信装置の各手段として機能させるためのコンピュータプログラム。 
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置および通信装置の制御方法に関する。
【背景技術】
【０００２】
近年、省電力化に対する要求は高まっている。そのため、装置を使用しないときには使用電力量を低く抑えた省電力モードに移行し、必要な仕事が発生したときに通常の使用電力量の動作状態である通常モードに移行させる仕組みを持つ機器が一般的になっている。また、装置を遠隔から通常モードへ移行させる手段として、これまで赤外線通信機能などを使った専用のリモートコントローラが一般的であった。近年では、有線ＬＡＮや無線ＬＡＮといったネットワーク通信機能を備えた装置においては、ネットワーク通信機能を利用して遠隔から通常モードに移行させることができるものが出てきている。
【０００３】
省電力モードには、装置が持つ全機能が動作可能であるがクロックを低速にするなどして性能を落とすことで省電力状態とするものがある。また、省電力モードには、ネットワーク通信機能部以外には電力やクロックの供給が停止され、メモリも一部しか使用できなくすることでより一層の省電力化を実現するものがある。そのような場合、省電力モードで使用するプログラムサイズも小さく実装しなければならず、省電力モードではネットワーク通信機能の一部しか持つことができない。
【０００４】
ＩＰｖ６（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  Ｖｅｒｓｉｏｎ  ６）ではアドレス自動構成の過程で重複アドレス検出を実施する。重複アドレス検出ではマルチキャストアドレスの一つである、要請ノードマルチキャストアドレス（ｓｏｌｉｃｉｔｅｄ−ｎｏｄｅ  ｍｕｌｔｉｃａｓｔ  ａｄｄｒｅｓｓ）を使用する。受信側の通信装置がマルチキャストアドレスを使用するためには、マルチキャストグループ管理プロトコルであるＭＬＤを使う。ＭＬＤは、Ｍｕｌｔｉｃａｓｔ  Ｌｉｓｔｅｎｅｒ  Ｄｉｓｃｏｖｅｒｙ（マルチキャスト受信者探索）の略である。受信側の通信装置は、ＭＬＤを使って、ルータやＭＬＤスヌープスイッチに対して、マルチキャストアドレスを受信する意思を伝えなければならない。ＭＬＤにはマルチキャストグループへの参加、維持、離脱の機能がある。さらに、ＭＬＤｖ２（Ｍｕｌｔｉｃａｓｔ  Ｌｉｓｔｅｎｅｒ  Ｄｉｓｃｏｖｅｒｙ  Ｖｅｒｓｉｏｎ  ２）では、マルチキャストパケットの送信元アドレス管理の機能が追加されている。
省電力モード中の動作制御に関する技術が特許文献１に開示されている。特許文献１では、省電力モード中に無線送受信機能を所定の周期でオン／オフしている。省電力モード中にマルチキャストパケットを受信する場合、特許文献１の装置は、無線送受信機能がオンになった際にＭＬＤの参加パケットを送信している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−１２４３３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１の装置は、無線送受信機能がオフの間、ＭＬＤの参加パケットをルータに送信しない。すなわち、特許文献１の装置では、ルータに対して参加パケットを送信した後に無線送受信機能がオフになると、ルータが定期的に送信するマルチキャストグループ維持のためのパケットに対して、応答できない場合がある。マルチキャストグループ維持のためのパケットに応答しないと、受信するノード（装置）が無いと判断され、装置とルータとの間にあるＭＬＤスヌープスイッチの実装によっては、マルチキャストパケットが遮断される（送信されてこない）場合がある。つまり、特許文献１の装置では、マルチキャストグループを維持できない場合が生ずる。
省電力モード中にマルチキャストパケットが遮断されると、重複アドレス検出が動作しない場合がある。また、重複アドレス検出が動作しない場合、同一ＩＰｖ６アドレスを持つ機器がネットワーク内に複数存在する状況が生じ、ＩＰｖ６で正しく通信できなくなる。
【０００７】
また、ＭＬＤには機能やパラメータが多いので、マルチキャストグループを維持するために、省電力モード中に全ての機能を保持するには多くのリソースが必要となる。
上記した課題に鑑み、本発明は、省電力モード（省電力状態）中において効率的にマルチキャストグループを維持することができる通信装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の１つの態様による通信装置は、第１の状態と、前記第１の状態より消費電力が小さい第２の状態とを有する通信装置であって、前記第２の状態において外部から信号を受信する受信手段と、受信した前記信号がマルチキャスト受信者照会信号であるか否かを判定する第１の判定手段と、受信した前記信号が前記マルチキャスト受信者照会信号であると判定された場合、前記マルチキャスト受信者照会信号のマルチキャストアドレスが、前記通信装置が参加しているマルチキャストグループの所定のアドレスに一致するか否かを判定する第２の判定手段と、前記マルチキャストアドレスが前記所定のアドレスに一致すると判定された場合、マルチキャスト受信者報告を、前記マルチキャスト受信者照会信号の発信元に送信する送信手段と、を備える。
【発明の効果】
【０００９】
本発明によれば、省電力モード中において効率的にマルチキャストアドレスの維持を行うことが可能となる。
【図面の簡単な説明】
【００１０】
【図１】第１実施形態に係る通信装置の構成を示した図。
【図２】第１実施形態に係る通信装置の消費電力状態の遷移を示した図。
【図３】第１実施形態に係るネットワーク構成を示した図。
【図４】通常電力状態におけるインタフェースアドレス設定処理フローを示した図。
【図５】通常電力状態におけるインタフェースアドレス削除処理フローを示した図。
【図６】第１実施形態の省電力モードにおける処理フローを示した図。
【図７】第１実施形態の省電力モードにおける送信タイマ処理フローを示した図。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して、本発明の実施形態を詳細に説明する。なお、実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。また、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、実施形態によって限定されない。実施形態の構成は、本発明が適用される装置の仕様や各種条件（使用条件、使用環境等）によって適宜修正又は変更され得る。
【００１２】
第１実施形態
（通信装置の構成）
第１実施形態に係る通信装置１００の構成の一例について図１を用いて説明する。
通信装置１００は、ネットワーク通信部１０１と、アプリケーションシステム部１０２と、省電力モード制御部１０３とを有している。
ネットワーク通信部１０１は、通信制御部１０４、バスブリッジ回路１０５、ローカルＲＡＭ１０６およびプロトコル処理部１０７を有する。ネットワーク通信部１０１の各構成部は、ローカルバス１０８により相互接続されている。通信装置１００は、通信制御部１０４を介してネットワークスイッチ１０９に接続する。
【００１３】
省電力モード制御部１０３は、ネットワーク通信部１０１およびアプリケーションシステム部１０２の電力供給を独立的に制御する電源制御部である。省電力モード制御部１０３は、ネットワーク通信部１０１およびアプリケーションシステム部１０２に対して、電源投入の制御およびハードウェアリセット制御を行う。また、省電力モード制御部１０３は、通信装置１００全体が安全に起動・停止するためのシーケンス制御を行う。省電力モード制御部１０３は、制御信号線１１５および１１６でネットワーク通信部１０１およびアプリケーションシステム部１０２と接続されており、通常モード（通常電力状態）および省電力モード（省電力状態）のモード移行動作制御を行う。省電力モード制御部１０３には、外部スイッチ１１７が接続されている。外部スイッチ１１７はユーザにより操作される。
【００１４】
通信制御部１０４は、ネットワークスイッチ１０９に接続して、ネットワークスイッチ１０９に対して伝送フレームの送受信を行う。例えば、通信制御部１０４は、イーサネット（登録商標）のＭＡＣ処理（伝送メディア制御処理）や伝送フレームの送受信を行う。
バスブリッジ回路１０５は、ネットワーク通信部１０１のローカルバス１０８と、アプリケーションシステム部１０２のシステムバス１１４とに接続され、ローカルバス１０８とシステムバス１１４との間のデータ転送を可能とする。即ち、ネットワーク通信部１０１と、アプリケーションシステム部１０２とは、それぞれのバス１０８と１１４が相互に接続されており、通信データの入出力においてバス間転送が行われる。
【００１５】
ローカルＲＡＭ１０６は、ネットワーク通信部１０１内の処理における一時記憶装置である。より詳しくは、ローカルＲＡＭ１０６は、通信制御部１０４やプロトコル処理部１０７におけるデータの一時記憶領域として使用される。プロトコル処理部１０７をマイクロプロセッサで構成する場合は、ローカルＲＡＭ１０６を、動作時のプログラムの格納領域として用いてもよい。また、ローカルＲＡＭ１０６は複数のメモリバンクで構成され、メモリバンクごとに電源を制御可能な構成とする。なお、ローカルＲＡＭ１０６はメモリサイズの異なる複数のメモリチップで構成され、必要となるサイズに応じて切り替える構成であってもよい。
【００１６】
プロトコル処理部１０７は、通信プロトコル処理専用のハードウェア回路装置、あるいは通信プロトコル処理用に設計されたマイクロプロセッサである。プロトコル処理部１０７は、汎用的なＴＣＰ／ＩＰ通信処理を実行する。より具体的には、プロトコル処理部１０７は、ＩＰｖ４、ＩＰｖ６、ＩＰｓｅｃ、ＩＣＭＰ、ＵＤＰ、ＴＣＰの各通信プロトコル処理、送信フロー制御、輻輳制御、通信エラー制御等を行う。プロトコル処理部１０７は１つの機能ブロックとして構成してもよいし、複数の機能のそれぞれを複数のマイクロプロセッサにより実行するマルチプロセッサとして構成してもよい。また、プロトコル処理部１０７は、マイクロプロセッサにより処理を行うと共に、一部の機能をハードウェアにより実現する（ハードウェアアクセラレーション）構成としてもよい。マイクロプロセッサとハードウェアは、それぞれ独立に電源制御可能な構成とすることが望ましい。ＴＣＰは、Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌの略である。ＩＰはＩｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌの略である。ＩＣＭＰは、Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌの略である。ＵＤＰはＵｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌの略である。
【００１７】
通信装置１００を操作するリモートコントローラ１１８は、ネットワークスイッチ１０９を介してＴＣＰ／ＩＰプロトコルを用いた通信を行えるものとする。
アプリケーションシステム部１０２は、ＣＰＵ１１０、ＲＯＭ１１１、ＲＡＭ１１２、およびアプリケーション機能部１１３を有する。アプリケーションシステム部１０２の各構成部は、システムバス１１４により相互に接続されている。
ＲＯＭ１１１は、システムプログラムを格納している。
ＲＡＭ１１２は、システムソフトウェアやアプリケーションソフトウェアの実行時に使用される一時記憶装置である。ＲＡＭ１１２には、例えば、インタフェースアドレスが記憶される。ＲＯＭ１１１からＲＡＭ１１２にソフトウェアプログラムが読み込まれ、ＣＰＵ１１０によって実行される。
【００１８】
アプリケーション機能部１１３は、通信装置１００が備えるアプリケーション機能を実現するために使用するハードウェア処理部である。
通信装置１００の主要機能（アプリケーションプログラムの実行により実現される機能等）は、アプリケーションシステム部１０２で実現される。また、ＣＰＵ１１０で実行されるアプリケーションプログラムは、ネットワーク通信を行うことが可能である。アプリケーションプログラムによるネットワーク通信は、ＴＣＰ／ＩＰプロトコルをベースとした通信である。ＴＣＰ／ＩＰプロトコル処理は、ネットワーク通信部１０１において実行される。
【００１９】
なお、図示していないが、通信装置１００は、重複アドレス検出タイマ、起床タイマおよび送信タイマを備えている。通信装置１００は、少なくとも図１に示す構成を備えていればよく、その他の構成を備えていてもよい。また、通信装置１００は、プロジェクタ、ＰＣ、タブレット端末、スマートフォン、デジタルカメラ、プリンタ等、どのような装置であってもよい。
【００２０】
（省電力モードへの移行）
上記した構成を有する通信装置１００は、主要機能が非動作であるアイドル状態において、省電力モードに移行することができる。省電力モードへの移行について、図２を用いて説明する。本実施形態の省電力モードでは、アプリケーションシステム部１０２は電源オフの状態となる。
図２は、通信装置１００の消費電力状態の遷移図（概念図）である。符号２０１は通常電力状態（通常モード）を示し、符号２０２は省電力状態（省電力モード）を示す。通信装置１００の主要機能が動作中である間は通常電力状態２０１を維持する（符号２０３）。通常電力状態２０１では、アプリケーションシステム部１０２を含む通信装置１００全体に電力が供給される。通常電力状態２０１において主要機能が実行されていないアイドル状態になると、通常電力状態２０１から省電力状態２０２へ移行する（符号２０４）。
【００２１】
通常電力状態２０１で通信装置１００が参加しているマルチキャストグループに関する情報（例えば、インタフェースアドレス）は、例えば、ＲＡＭ１１２に記憶される。通常電力状態２０１から省電力状態２０２へ移行すると、ＲＡＭ１１２に記憶されているマルチキャストグループに関する情報は、ローカルＲＡＭ１０６にも記憶される。つまり、マルチキャストグループに関する情報は、通常電力状態２０１から省電力状態２０２への移行に伴い、アプリケーションシステム部１０２からネットワーク通信部１０１へ引き継がれる。この引継は、例えば、ネットワーク通信部１０１の通信制御部１０４が行う。
【００２２】
省電力状態２０２では、ネットワーク通信部１０１と省電力モード制御部１０３だけに電力が供給される。さらにネットワーク通信部１０１は動作モードに応じて、必要となるハードウェア資源にのみ電力が供給されるように、省電力モード制御部１０３によって細かく制御される。省電力状態２０２ではアプリケーションシステム部１０２は電源オフの状態であるため、システムバス１１４、ＣＰＵ１１０、ＲＯＭ１１１およびＲＡＭ１１２は停止していることになる。省電力状態２０２ではネットワーク通信部１０１に電力が供給されているので、常時、外部からの信号（例えば、パケット）を受信できる状態になっている。
省電力状態２０２から通常電力状態２０１への移行は、例えば、通信装置１００がネットワークスイッチ１０９からシステムの起動要求を受信した場合（符号２０５）に行われる。なお、省電力モード制御部１０３に接続された外部スイッチ１１７の押下によっても、省電力状態２０２から通常電力状態２０１への移行を行うことができる。
【００２３】
通信装置１００のマルチキャスト受信終了によるマルチキャスト受信者報告の送信は、通常電力状態２０１で行われる。また、通信装置１００が参加しているマルチキャストグループの変更によるマルチキャスト受信者報告の送信も、通常電力状態２０１で行われる。尚、通常電力状態２０１、省電力状態２０２とは、それぞれ通信装置の第１の状態、第２の状態の一例である。但し、第１の状態が第２の状態よりも消費電力が大きい状態であれば、第１の状態、第２の状態はそれぞれ通常電力状態と省電力状態に限らない。
【００２４】
（ネットワーク構成）
次に、本実施形態におけるネットワーク構成を、図３に基づいて説明する。このネットワークは、通信装置１００と、ネットワークスイッチ１０９と、ＰＣ３０１と、ルータ装置３０２と、インターネット３０３により構成されている。ＰＣはＰｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒの略である。
通信装置１００は通信制御部１０４を介してネットワークスイッチ１０９に接続されている。ネットワークスイッチ１０９はＭＬＤスヌーピングに対応している。ＰＣ３０１もネットワークスイッチ１０９に接続されている。ルータ装置３０２もネットワークスイッチ１０９に接続されている。ルータ装置３０２はインターネット３０３にも接続されている。本実施形態では、ルータ装置３０２がマルチキャストルータとして使用される。通信装置１００およびＰＣ３０１はそれぞれＩＰｖ６に対応しており、通信装置１００をネットワークスイッチ１０９に接続すると、通信装置１００のＣＰＵ１１０はＩＰｖ６インタフェースアドレスを設定する。ＰＣ３０１は、通信装置１００と共にマルチキャストグループを構成する機器の一例である。
【００２５】
（ＭＬＤスヌープスイッチの動作）
次にＭＬＤスヌープスイッチの動作を説明する。
ネットワークスイッチ１０９は、ＭＬＤスヌーピングに対応しており、ＭＬＤスヌープスイッチとして機能する。ネットワークスイッチ１０９は、マルチキャストグループ管理プロトコルであるＭＬＤのパケット（信号）のやりとりを監視する。図３のネットワーク構成では、ルータ装置３０２は、マルチキャスト受信者照会パケットを定期的に通信装置１００とＰＣ３０１に送信している。ネットワークスイッチ１０９に接続している機器（通信装置１００とＰＣ３０１）は、マルチキャスト受信者照会パケットを受信すると、マルチキャストグループに参加しているならば、マルチキャスト受信者報告をルータ装置３０２宛に送信する。ネットワークスイッチ１０９は、マルチキャスト受信者報告が送信されたことを検出すると、マルチキャスト受信者報告に付属しているマルチキャストアドレス情報とポート番号を記憶する。そして、ネットワークスイッチ１０９は、マルチキャストアドレス宛のパケットが特定のポート番号に送信されるように制御を行う。なお、マルチキャスト受信者照会パケットは、マルチキャスト受信者照会をするための信号の一例である。
【００２６】
ＭＬＤスヌープスイッチの実装に関する明確な仕様は規定されていない。従って、ネットワークスイッチ１０９の実装によっては、マルチキャスト受信者報告を返さないポート（機器）に対しては、全ノードマルチキャストアドレス宛のマルチキャストパケットのみを送信する場合がある。そのため、通信装置１００が、省電力状態中にマルチキャスト受信者照会パケットに応答しない場合は、重複アドレス検出が動作せずに、ＩＰｖ６による通信が正しく行えない可能性がある。
【００２７】
（通常モードにおけるアドレス設定処理）
ここで通常モード（通常電力状態）におけるアドレス設定処理について図４を用いて説明する。
Ｓ４０１において、通信装置１００は、リンクローカルアドレスをインタフェースアドレスとして、アプリケーションシステム部１０２に登録する。登録されたインタフェースアドレスは、例えば、ＲＡＭ１１２に記憶される。なお、この時点では重複アドレス検出を実施していないため、登録したインタフェースアドレスは通信に使用することはできない。
【００２８】
Ｓ４０２において、通信装置１００は、Ｓ４０１で登録したインタフェースアドレスから要請ノードマルチキャストアドレスを生成する。要請ノードマルチキャストアドレスは、１０４ビットのマルチキャストプレフィクス（ｆｆ０２：０：０：０：０：１：ｆｆ００：：１／１０４）とＳ４０１で登録したインタフェースアドレスの下位２４ビットとを結合することにより生成される。この時点で通信装置１００は、前記要請ノードマルチキャストアドレス宛のパケットの受信が可能となる。
Ｓ４０３において、通信装置１００は、Ｓ４０２で生成した要請ノードマルチキャストアドレスについてのマルチキャスト受信者報告（参加）をルータ装置３０２宛てに送信する。通信装置１００が接続しているネットワークスイッチ１０９はＭＬＤスヌーピングに対応しているので、マルチキャスト受信者報告を送信することにより、所望のマルチキャストパケットが通信装置１００の接続されているポートに配信される。
【００２９】
Ｓ４０４において、通信装置１００は、近隣探査パケットをマルチキャストアドレス宛てに送信する。この近隣探査パケットは、Ｓ４０１で登録したインタフェースアドレスに対する近隣探査となる。
Ｓ４０５において、通信装置１００は、重複アドレス検出タイマを起動する。つまり、重複アドレス検出タイムを設定する。これは、Ｓ４０４で送信した近隣探査パケットに対して近隣広告パケットを受信するために一定時間待機する必要があるためである。
Ｓ４０６において、通信装置１００は、Ｓ４０４で送信した近隣探査パケットに対する近隣広告パケットを受信したかどうかを確認する。該当する近隣広告パケットを受信した場合は、Ｓ４０１で登録したインタフェースアドレスが他の通信装置のアドレスと重複しており通信には使えないので、Ｓ４０９に進む。
【００３０】
Ｓ４０９において、通信装置１００は、登録したインタフェースアドレスを無効化して処理を終了する。
Ｓ４０６において、該当する近隣広告パケットを受信しない場合は、Ｓ４０７へ進む。
Ｓ４０７において、通信装置１００は、Ｓ４０５で起動した重複アドレス検出タイマ（設定された重複アドレス検出タイム）がタイムアウトしたかを判定する。タイムアウトしていない場合は、Ｓ４０６に戻る。タイムアウトしている場合はＳ４０１で登録したインタフェースアドレスと重複するアドレスを有する他の通信装置が存在しないと判断できるため、Ｓ４０８へ進む。
Ｓ４０８において、通信装置１００は、Ｓ４０１で登録したインタフェースアドレスを有効化して処理を終了する。なお、本実施形態ではリンクローカルアドレス登録時のフローを示したが、グローバルアドレスの登録であってもよい。
【００３１】
（通常モードにおけるインタフェースアドレス削除処理）
次に通常モードにおけるインタフェースアドレス削除処理について図５を用いて説明する。
インタフェースアドレスが削除されるのは、ユーザ操作による場合や自動設定されたアドレスの有効期限が切れた場合などである。そのような要因によってインタフェースアドレスの削除が行われる際に、図５のフローは開始される。
Ｓ５０１において、通信装置１００は、登録されているインタフェースアドレスを削除する。削除が完了すると、Ｓ５０２に進み、通信装置１００はＳ５０１で削除したインタフェースアドレスと対応する要請ノードマルチキャストアドレスを削除する。
【００３２】
Ｓ５０３において、通信装置１００は、Ｓ５０２で削除した要請ノードマルチキャストアドレスについてのマルチキャスト受信者報告をルータ装置３０２宛てに送信する。ここで送信されるマルチキャスト受信者報告は、当該マルチキャストグループからの離脱を示す報告である。通信装置１００が接続しているネットワークスイッチ１０９はＭＬＤスヌーピングに対応しているので、ルータ装置３０２は、通信装置１００が接続しているポートに対して、削除した要請ノードマルチキャストアドレス宛のパケットを配信しなくなる。
【００３３】
（省電力モードにおける処理）
次に、省電力モードにおける処理フローについて図６を用いて説明する。通信装置１００が省電力モードに移行すると、起床タイマが設定され（起動し）、その後、Ｓ６０１のステップに進む。
Ｓ６０１において、通信装置１００は、通常モードのインタフェースアドレスの下位３２ビットから短縮した要請ノードマルチキャストアドレスを生成し、保持する。なお、短縮時の下位ビット数は３２ビット以外であってもよい。
Ｓ６０２において、通信装置１００は、起床タイマがタイムアウトしたかどうかを確認する。タイムアウトしている場合は通常電力状態（通常モード）へ移行する。タイムアウトしていない場合は、Ｓ６０３へ進む。
【００３４】
Ｓ６０３において、通信装置１００は、パケットを受信したかどうかを判定する。パケットを受信していない場合は、Ｓ６０２へ戻り起床タイマのタイムアウトの判定を継続する。パケット受信している場合は、Ｓ６０４へ進む。
Ｓ６０４において、通信装置１００は、受信したパケット（以下、「受信パケット」と称する。）がマルチキャスト受信者照会のパケットであるかどうかを判定する。受信パケットがマルチキャスト受信者照会のパケットでないと判定されると、当該判定結果に基づいて、Ｓ６０５に進む。受信パケットがマルチキャスト受信者照会のパケットであると判定されると、当該判定結果に基づいて、Ｓ６０７へ進む。
【００３５】
Ｓ６０５において、通信装置１００は、受信パケットが、通信装置１００を起床させて通常電力状態に移行させる必要があるパケットであるかどうかを判定する。受信パケットが起床の必要がないパケットであればＳ６０６へ進む。受信パケットが起床の必要があるパケットならば、通常電力状態へ移行する。つまり、Ｓ６０５では、受信パケットの内容に基づいて、消費電力状態から通常電力状態へ移行させるかを判定している。
Ｓ６０６において、通信装置１００は、パケット受信処理を行う。Ｓ６０６の後、Ｓ６０２へ戻る。
【００３６】
Ｓ６０７において、通信装置１００は、受信したマルチキャスト受信者照会パケットに付属するマルチキャストアドレスが未指定アドレス（０：：０）もしくはＳ６０１で生成した要請ノードマルチキャストアドレスと一致するかを判定する。要請ノードマルチキャストアドレスと比較する場合には３２ビットの要請ノードマルチキャストアドレスから１２８ビットの要請ノードマルチキャストアドレスに復元して比較する。前記付属しているマルチキャストアドレスが、未指定アドレスでも無く、要請ノードマルチキャストアドレスでも無い場合は、Ｓ６０２へ戻る。前記付属しているマルチキャストアドレスが、未指定アドレスもしくは要請ノードマルチキャストアドレスと一致する場合は、Ｓ６０８へ進む。
【００３７】
Ｓ６０８において、通信装置１００は、受信したマルチキャスト受信者照会パケットの送信に使用されたプロトコルのバージョンが２であるかを判定する。バージョン１とバージョン２ではパラメータの形式に違いがある。プロトコルバージョンが２である場合は、Ｓ６０９へ進む。プロトコルバージョンが２以外である場合は、Ｓ６１１に進む。
Ｓ６１１において、通信装置１００は、マルチキャスト受信者照会パケットに付属している最大応答遅延から最大遅延時間を計算し、０から最大遅延時間までの間の乱数値で、マルチキャスト受信者報告送信時刻を決定（計算）する。Ｓ６１１の後、Ｓ６１２へ進む。
【００３８】
Ｓ６０９において、通信装置１００は、マルチキャスト受信者照会パケットに付属する送信元数が０であるか否かを判定する。送信元数が０以外であれば応答する必要の無いパケットであるため、Ｓ６０２へ戻る。送信元数が０であればＳ６１０へ進む。
Ｓ６１０において、通信装置１００は、マルチキャスト受信者照会パケットに付属している最大応答コードから最大遅延時間を計算し、０から最大遅延時間までの間の乱数値で、マルチキャスト受信者報告送信時刻を決定（計算）する。Ｓ６１０の後、Ｓ６１２へ進む。
Ｓ６１２において、通信装置１００は、Ｓ６１０もしくはＳ６１１で決定したマルチキャスト受信者報告送信時刻からマルチキャスト受信者報告（維持）送信タイマを設定し、Ｓ６０２へ戻る。
なお、マルチキャスト受信者照会パケットに付属している最大応答遅延と、マルチキャスト受信者照会パケットに付属している最大応答コードは、マルチキャスト受信者照会パケットの最大応答遅延情報であると言える。
【００３９】
（マルチキャスト受信者報告（維持）送信タイマ発火時の処理）
次にマルチキャスト受信者報告（維持）送信タイマ発火時の処理フローについて図７を用いて説明する。図７のフローチャートの各ステップは、ネットワーク通信部１０１により実行される。
Ｓ７０１において、通信装置１００は、Ｓ６０１で生成した下位３２ビットの要請ノードマルチキャストアドレスを、１２８ビットの要請ノードマルチキャストアドレスに復元する。つまり、元の要請ノードマルチキャストアドレスに復元する。
Ｓ７０２において、通信装置１００は、Ｓ７０１で復元した要請ノードマルチキャストアドレスからマルチキャスト受信者報告（維持）パケットを作成する。
Ｓ７０３において、通信装置１００は、Ｓ７０２で作成したパケットを、ルータ装置３０２宛てに送信し、終了する。
【００４０】
（第１実施形態の効果）
通信装置１００は省電力モードにおいてもマルチキャスト受信者照会に対して応答することができる。つまり、通信装置１００は省電力モードでマルチキャスト受信者照会パケットを受信した場合、マルチキャスト受信者報告を、マルチキャスト受信者照会パケットの発信元に送信することができる。よって、省電力モードを備える通信装置１００においてマルチキャストグループの管理を適切に行うことができる。
【００４１】
また、通信装置１００は、マルチキャスト受信者照会パケットのマルチキャストアドレスが、通信装置１００が参加しているマルチキャストグループの要請ノードマルチキャストアドレスに一致する場合にのみ、マルチキャスト受信者報告（維持）を送信する。
なお、省電力モードは、ユーザが通信装置１００を操作していない状態であるので、ユーザによるインタフェースアドレスの追加および削除は発生しない。
このように、本実施形態における通信装置１００は、省電力モードにおいて、電力消費リソースを削減しつつ、マルチキャストグループ（マルチキャストアドレス）の維持を実現することが可能となる。よって、本実施形態の通信装置１００は、省電力モード中において効率的に且つより確実にマルチキャストアドレスの維持を行うことができる。
【００４２】
（変形例）
なお、上記した実施形態以外であっても、消費電力が異なる複数のモードで動作することができ、マルチキャスト受信者照会パケットを受信する通信機能を備える装置であれば、本発明を適用することができる。
図６のフローチャートは、図示された順序以外でも実施できる。例えば、Ｓ６０１（要請ノードマルチキャストアドレスの生成）は、Ｓ６０４とＳ６０７の間で実行してもよいし、Ｓ６０２（起床タイマアウト判定）はＳ６０６の後に実行してもよい。
【００４３】
上記した実施形態では、通信装置１００とＰＣ３０１によってマルチキャストグループが構成されたが、通信装置１００とＰＣ３０１以外の機器がマルチキャストグループを構成する機器として含まれてもよい。
上記した実施形態では、マルチキャスト受信者照会パケットが通信装置１００に送信される例を説明したが、マルチキャスト受信者照会をするための信号（マルチキャスト受信者照会信号）であれば、パケットという形式でない信号を用いてもよい。
上記した実施形態では、通信プロトコルとしてＩＰｖ６を用いたが、本発明で使用するプロトコルはＩＰｖ６に限定されない。また、省電力モードはスリープモードであってよいし、通常電力モードはアウェイク（ａｗａｋｅ）モードであってよい。
【００４４】
図１に示した通信装置１００の構成は、その一部が機能ブロックで示されている（例えば、省電力モード制御部１０３、通信制御部１０４、プロトコル処理部１０７）。図１に示した構成は一例であり、複数の機能ブロックが１つの機能ブロックを構成するようにしてもよいし、何れかの機能ブロックが複数の機能を行うブロックに分かれてもよい。また、機能ブロックの少なくとも１つがハードウェアとして実装されてもよい。ハードウェアにより実装する場合、例えば、所定のコンパイラを用いることで、各ステップを実現するためのプログラムからＦＰＧＡ上に自動的に専用回路を生成すればよい。ＦＰＧＡとは、Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙの略である。また、ＦＰＧＡと同様にしてＧａｔｅ  Ａｒｒａｙ回路を形成し、ハードウェアとして実現するようにしてもよい。また、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）により実現するようにしてもよい。
【００４５】
（その他の実施形態）
上記した実施形態では、通信装置１００を説明したが、本発明はその他の形態でも具現化（実現）することができる。たとえば、上記した実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４６】
１００…通信装置、１０１…ネットワーク通信部、１０２…アプリケーションシステム部、１０３…省電力モード制御部、１０９…ネットワークスイッチ  
【図１】
2018121272.tif 000003
【図２】
2018121272.tif 000004
【図３】
2018121272.tif 000005
【図４】
2018121272.tif 000006
【図５】
2018121272.tif 000007
【図６】
2018121272.tif 000008
【図７】
2018121272.tif 000009