JP6436038B2 - 通信装置、マルチホップ通信システム、及び、通信方法 - Google Patents

通信装置、マルチホップ通信システム、及び、通信方法 Download PDF

Info

Publication number
JP6436038B2
JP6436038B2 JP2015195260A JP2015195260A JP6436038B2 JP 6436038 B2 JP6436038 B2 JP 6436038B2 JP 2015195260 A JP2015195260 A JP 2015195260A JP 2015195260 A JP2015195260 A JP 2015195260A JP 6436038 B2 JP6436038 B2 JP 6436038B2
Authority
JP
Japan
Prior art keywords
unit
communication
hello packet
activation
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015195260A
Other languages
English (en)
Other versions
JP2017069850A (ja
Inventor
隆 藏野
隆 藏野
康介 多留
康介 多留
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Priority to JP2015195260A priority Critical patent/JP6436038B2/ja
Priority to PCT/JP2016/004092 priority patent/WO2017056406A1/ja
Priority to EP16850587.3A priority patent/EP3358782B1/en
Publication of JP2017069850A publication Critical patent/JP2017069850A/ja
Application granted granted Critical
Publication of JP6436038B2 publication Critical patent/JP6436038B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • H04L9/16Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • H04W84/20Master-slave selection or change arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本発明は、マルチホップ通信システム、並びに、マルチホップ通信システムにおいて用いられる通信装置及び通信方法に関する。
従来、子機が他の子機を中継局として親機と通信を行うマルチホップ通信システムが知られている。特許文献1には、マルチホップ通信ネットワークにおける暗号鍵の構築方法が開示されている。
特開2007−174083号公報
マルチホップ通信システムにおいて、他の子機を中継局として親機と通信を行う子機(親機と直接通信ができない子機)は、親機の動作状態を直接的に知ることができない。例えば、親機が起動するごとに暗号鍵を変更するようなシステムにおいては、親機が再起動され暗号鍵が変更されているにもかかわらず、子機が変更前の暗号鍵を用いた通信を試みてしまう場合がある。
本発明は、親機の動作状態を子機が容易に知ることができるマルチホップ通信システム並びに、マルチホップ通信システムにおいて用いられる通信装置及び通信方法を提供する。
本発明の一態様に係る通信装置は、マルチホップ通信システムに含まれる親機として動作する通信装置であって、前記マルチホップ通信システムに含まれる少なくとも1つの子機にHelloパケットを送信する通信部と、前記通信装置の累積起動回数を示す起動回数情報を前記Helloパケットに含めて前記通信部に送信させる制御部とを備える。
本発明の一態様に係る通信装置は、マルチホップ通信システムに含まれる子機として動作する通信装置であって、前記マルチホップ通信システムに含まれる親機の累積起動回数を示す起動回数情報を含むHelloパケットを受信する通信部と、記憶部と、受信された前記Helloパケットに含まれる前記起動回数情報を前記記憶部に記憶し、記憶された前記起動回数情報を用いた情報処理を行う制御部とを備える。
本発明の一態様に係るマルチホップ通信システムは、マルチホップ通信システムであって、親機と、子機とを備え、前記親機は、前記子機にHelloパケットを送信する第一通信部と、前記親機の累積起動回数を示す起動回数情報を前記Helloパケットに含めて前記第一通信部に送信させる第一制御部とを備え、前記子機は、前記起動回数情報を含むHelloパケットを受信する第二通信部と、記憶部と、受信された前記Helloパケットに含まれる前記起動回数情報を前記記憶部に記憶する第二制御部とを備える。
本発明の一態様に係る通信方法は、マルチホップ通信システムが実行する通信方法であって、前記マルチホップ通信システムは、親機と、子機とを備え、前記親機は、前記親機の累積起動回数を示す起動回数情報をHelloパケットに含めて送信し、前記子機は、前記起動回数情報を含む前記Helloパケットを受信し、受信された前記Helloパケットに含まれる前記起動回数情報を前記子機が備える記憶部に記憶する。
本発明の一態様に係るプログラムは、上記通信方法をコンピュータに実行させるためのプログラムである。
本発明のマルチホップ通信システム、並びに、本発明のマルチホップ通信システムにおいて用いられる通信装置及び通信方法によれば、子機は、親機の動作状態を容易に知ることができる。
図1は、実施の形態に係るマルチホップ通信システムの機能構成を示すブロック図である。 図2は、サブメッセージのフォーマットの一例を示す図である。 図3は、属性情報のフォーマットの一例を示す図である。 図4は、起動回数情報として用いられる属性情報の一例である。 図5は、実施の形態に係るマルチホップ通信システムの動作例1を示すシーケンス図である。 図6は、起動回数判定処理のフローチャートである。 図7は、変形例に係る起動回数判定処理のフローチャートである。 図8は、実施の形態に係るマルチホップ通信システムの動作例2を示すシーケンス図である。 図9は、実施の形態に係るマルチホップ通信システムの動作例3を示すシーケンス図である。
以下、実施の形態について図面を参照しながら説明する。なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
なお、各図は模式図であり、必ずしも厳密に図示されたものではない。また、各図において、実質的に同一の構成に対しては同一の符号を付し、重複する説明は省略または簡略化される場合がある。
(実施の形態)
[構成]
まず、実施の形態に係るマルチホップ通信システムの機能構成について説明する。図1は、マルチホップ通信システムの機能構成を示すブロック図である。なお、図1では、複数の子機のうち子機20aのみが詳細に図示され、かつ、以下では主として子機20aについての説明がなされるが、マルチホップ通信システム100に含まれる他の子機(例えば、子機20b及び20c)についても子機20aと同様の構成である。
図1に示されるように、マルチホップ通信システム100は、親機10と、子機20a、子機20b、及び子機20cを含む複数の子機とを備える。マルチホップ通信システム100が備える子機の数は、特に限定されない。マルチホップ通信システム100においては、例えば、ツリー型トポロジを有する、マスタースレーブ型の通信ネットワークが用いられる。
マスタースレーブ型の通信ネットワークにおいては、一般に、親機10が複数の子機それぞれまでのルート(ルート情報)を管理し、複数の子機のそれぞれは、少なくとも親ノードまでのルートを管理する。マスタースレーブ型の通信ネットワークにおいては、一般に、データが伝送されるルートの一端は、親機10であり、データが伝送されるルートの他端は、複数の子機のいずれかになる。
まず、親機10の構成について説明する。親機10は、マルチホップ通信システム100に含まれる親機として動作する通信装置の一例であって、第一通信部11と、第一制御部12と、第一記憶部13とを備える。親機10は、例えば、マルチホップ通信システム100に含まれる複数の子機からデータを取得(集約)し、管理する。
第一通信部11は、子機(例えば、子機20a)が備える第二通信部21と通信するための通信インターフェースである。第一通信部11は、具体的には、通信モジュール(通信回路)である。
第一通信部11は、例えば、第一制御部12の制御に基づいて、マルチホップ通信システム100に含まれる少なくとも1つの子機(例えば、子機20a)にHelloパケットを送信する。
Helloパケットは、当該Helloパケットを送信する通信装置が、通信可能な状態である(生存している)ことを他の通信装置に通知するために、所定期間ごとにブロードキャスト送信されるパケット(信号)である。所定期間は、例えば、10s(秒)である。なお、親機10の起動後、初回のHelloパケットは、例えば、起動してから100ms後に送信される。
Helloパケットは、親機10として動作する通信装置だけでなく子機として動作する通信装置によってもブロードキャスト送信される。Helloパケットには、送信元の通信装置の識別子、または、親機10として動作する通信装置から送信元の通信装置までのルート情報(ホップ数及び経由する通信装置の識別子)などが含まれ、通信ルートの構築または通信ルートの変更などにも用いられる。
なお、以下の実施の形態の説明では、通信装置の識別子は、通信装置のID及び通信用のアドレスとして使用されるが、通信装置のIDとアドレスとは別々に設けられてもよい。通信装置の識別子は、例えば、MACアドレスである。
第一通信部11と第二通信部21とが行う通信は、有線または無線のどのような通信であってもよく、特に限定されない。例えば、第一通信部11と第二通信部21とは、電力線搬送通信(PLC:Power Line Communication)を行うが、有線LANを用いた有線通信を行ってもよい。また、第一通信部11と第二通信部21とは、特定小電力無線、ZigBee(登録商標)、Bluetooth(登録商標)、または、Wi−Fi(登録商標)などの通信規格を用いた無線通信を行ってもよい。
第一制御部12は、第一通信部11を制御する制御装置であり、例えば、第一通信部11を通じて、子機20aからデータを受信する。また、第一制御部12は、第一通信部11に、後述する起動回数情報を含むHelloパケット、及び、後述する暗号鍵などを送信させる。第一制御部12は、具体的には、第一記憶部13に記憶された制御プログラムを実行するプロセッサであるが、マイクロコンピュータ、または専用回路などにより実現されてもよい。
第一記憶部13は、第一制御部12が実行する制御プログラム、及び、親機10からマルチホップ通信システム100に含まれる複数の子機それぞれまでのルート情報などが記憶される記憶装置である。また、第一記憶部13には、本実施の形態では、第一記憶部13には、起動回数情報、及び、暗号鍵も記憶される。第一記憶部13は、例えば、半導体メモリなどにより実現される。
上述の起動回数情報は、親機10の累積起動回数を示す情報である。起動回数情報は、具体的には、例えば、親機10が起動されるごとに+1ずつインクリメントされる数値(カウント値)であるが、親機10が起動されるごとに−1ずつデクリメントされる数値であってもよい。なお、起動回数情報は、親機10の累積起動回数を示すのであれば、どのような情報であってもよい。
上述の暗号鍵は、複数の子機それぞれとの通信に使用される。暗号鍵は、具体的には、複数の子機との通信においてデータの暗号化に使用される。なお、本実施の形態では、暗号鍵は、複数の子機に対して1つ生成され、親機10が起動されるごとに変更(更新)される。しかしながら、暗号鍵は、複数の子機のそれぞれに対して1つずつ生成されてもよい。この場合は、第一記憶部13には、子機の識別子と、当該子機の暗号鍵とが対応付けて記憶される。
次に、子機20aについて説明する。子機20aは、マルチホップ通信システム100に含まれる子機として動作する通信装置の一例であって、第二通信部21と、第二制御部22と、第二記憶部23とを備える。
第二通信部21は、第一通信部11、または、他の子機が備える第二通信部21と通信するための通信インターフェースである。第二通信部21は、具体的には、第一通信部11と同種の通信モジュール(通信回路)である。第二通信部21は、例えば、第二制御部22の制御に基づいてHelloパケットを送信する。また、第二通信部21は、マルチホップ通信システムに含まれる親機の累積起動回数を示す起動回数情報を含むHelloパケットを、親機10または他の子機から受信する。
第二制御部22は、第二通信部21を制御する制御装置であり、例えば、第二通信部21に、データ及びHelloパケットなどを送信させる。第二制御部22は、具体的には、第二記憶部23に記憶された制御プログラムを実行するプロセッサであるが、マイクロコンピュータ、または専用回路などにより実現されてもよい。
第二記憶部23は、第二制御部22が実行する制御プログラム、隣接ノードテーブル、並びに、第二通信部21によって受信された暗号鍵及び起動回数情報などが記憶される記憶装置である。第二記憶部23は、具体的には、例えば、半導体メモリなどにより実現される。
以上説明したマルチホップ通信システム100においては、親機10の第一制御部12は、親機10の累積起動回数を示す起動回数情報をHelloパケットに含めて第一通信部11に送信させる。
これにより、このようなHelloパケットを受信した子機20aは、親機10の累積起動回数を知ることができる。つまり、子機20aは、親機10の動作状態を容易に知ることができる。
また、子機20aの第二制御部22は、さらに、第二通信部21によって受信されたHelloパケットに含まれる起動回数情報を、第二記憶部23に記憶する。
これにより、第二制御部22は、起動回数情報を記憶した後に受信されたHelloパケットに含まれる第一の起動回数情報と、第二記憶部23に記憶されている第二の起動回数情報とを比較することで、親機10が再起動されたか否かを判定することができる。
なお、累積起動回数は、例えば、親機10(MASTER)に関する情報を通知するためのサブメッセージであるMASTER INFOサブメッセージとして新規に規定されるとよい。この場合、サブメッセージの属性情報のフォーマットをTLV(Type−Length−Value)形式とすることで、サブメッセージに拡張性を持たせることができる。図2は、サブメッセージのフォーマットの一例を示す図である。
図2に示されるように、サブメッセージの先頭から1バイトのフィールドには、サブメッセージのタイプが格納される。MASTER INFOサブメッセージに対応するタイプとして、例えば、「10」が格納される。次の1バイトのフィールドには、サブメッセージのレングス(サブメッセージタイプから属性までのレングス)が格納される。サブメッセージのレングスの後には、各種属性情報が格納される。属性情報は、可変長である。図3は、属性情報のフォーマットの一例を示す図である。
図3に示されるように、属性情報の先頭から1バイトのフィールドには、属性情報のタイプが格納される。次の1バイトのフィールドには、属性情報のレングス(属性情報のタイプから値までのレングス)が格納される。属性情報のレングスの後には、値が格納される。この値は、可変長である。
このような属性情報として、例えば、図4に示されるように起動回数情報が規定されるとよい。図4は、起動回数情報として用いられる属性情報の一例である。図4に示されるように、起動回数情報は、例えば、属性情報のタイプが「1」である、2バイトの長さの値(0以上65535以下)として規定されるとよい。この値は、累積起動回数を示し、累積起動回数が65535を超えると0に戻る。
[動作例1]
次に、マルチホップ通信システム100の動作例1について説明する。図5は、マルチホップ通信システム100の動作例1を示すシーケンス図である。なお、以下の動作例1では、子機20aは、親機10と直接通信可能な子機であり、子機20bは、子機20aの中継により親機10との通信が可能な子機であるとする。
まず、親機10、子機20a、及び子機20bのそれぞれが起動される(S11〜S13)。ここで、親機10の第一制御部12は、起動回数情報を0から1にインクリメントして第一記憶部13に記憶する。以下、起動回数情報をcntとも記載し、ステップS11ではcnt=1となる。
また、親機10の第一制御部12は、暗号鍵Aを生成し(S14)、生成した暗号鍵Aを、第一記憶部13に記憶する。暗号鍵Aは、親機10と複数の子機との通信に使用される。
次に、第一制御部12は、起動回数情報(cnt=1)を含むHelloパケットを、第一通信部11にブロードキャスト送信させる(S15)。このHelloパケットには、親機10の識別子が送信元を示す情報として含まれる。子機20aの第二通信部21は、起動回数情報(cnt=1)を含むHelloパケットを受信する(S16)。
次に、子機20aの第二制御部22は、暗号鍵Aを取得するための認証処理を行う(S17)。認証処理においては、まず、子機20aの第二通信部21が子機20aの識別子を認証情報として含む認証要求を第一通信部11に送信する。第一通信部11が子機20aの認証要求を受信すると、第一制御部12は、子機20aの認証情報を第一記憶部13に記憶する。そして、第一制御部12は、暗号鍵Aを第一記憶部13から読み出し、読み出した暗号鍵Aを、子機20aの識別子(アドレス)を指定して第一通信部11に送信させる。つまり、親機10は、子機20aに暗号鍵Aを配布する。
次に、子機20aの第二制御部22は、ステップS16において第二通信部21が受信したHelloパケットに含まれる起動回数情報(cnt=1)を第二記憶部23に記憶する(S18)。子機20aの第二制御部22は、さらに、ステップS16において受信されたHelloパケットに含まれる起動回数情報(cnt=1)と、子機20aの識別子(送信元のアドレス)とを含むHelloパケットを生成し、生成したHelloパケットを第二通信部21にブロードキャスト送信させる(S19)。子機20bの第二通信部21は、起動回数情報(cnt=1)を含むHelloパケットを受信する(S20)。
次に、子機20bの第二制御部22は、親機10から当該親機10との通信に使用される暗号鍵Aを取得するための認証処理を行う(S21)。認証処理においては、まず、子機20bの第二通信部21が子機20bの識別子を認証情報として含む認証要求を子機20aの第二通信部21に送信する。認証要求は、子機20a(第二通信部21)の中継により、第一通信部11に送信される。
第一通信部11が子機20bの認証要求を受信すると、第一制御部12は、子機20bの認証情報を第一記憶部13に記憶する。そして、第一制御部12は、暗号鍵Aを第一記憶部13から読み出し、読み出した暗号鍵Aを、子機20bの識別子(アドレス)を指定して第一通信部11に送信させる。暗号鍵Aは、子機20aによって中継されて子機20bに配布される。つまり、親機10は、子機20bに暗号鍵Aを配布する。
なお、暗号鍵Aは、例えば、公開鍵として使用されてもよい。つまり、第一制御部12は、暗号鍵Aを秘密鍵によって暗号化し、暗号化された暗号鍵Aを第一通信部11に送信させてもよい。この場合、秘密鍵は、第一記憶部13及び複数の子機それぞれの第二記憶部23にあらかじめ記憶される。
子機20bの第二制御部22は、ステップS20において第二通信部21が受信したHelloパケットに含まれる起動回数情報(cnt=1)を第二記憶部23に記憶する(S22)。子機20bの第二制御部22は、さらに、ステップS20において受信されたHelloパケットに含まれる起動回数情報(cnt=1)と、子機20bの識別子(送信元のアドレス)とを含むHelloパケットを生成し、生成したHelloパケットを第二通信部21にブロードキャスト送信させる(S23)。
その後、親機10が停止し、再起動する(S24)。親機10の停止及び再起動は、例えば、ユーザによって人為的に行われる場合もあるし、親機10のネットワークにおいて通信状態が悪いときなどに自動的に行われる場合もある。
そうすると、親機10の第一制御部12は、起動回数情報を1から2にインクリメントして第一記憶部13に記憶する。また、親機10の第一制御部12は、再起動をトリガとして暗号鍵Aとは異なる暗号鍵Bを生成し(S25)、生成した暗号鍵Bを、第一記憶部13に記憶する。暗号鍵Aは、削除される。このように、第一制御部12は、親機10が起動されるごとに第一記憶部13に記憶された暗号鍵を変更する。
また、第一制御部12は、第一記憶部13に記憶されていた認証情報(暗号鍵Aを配布するための認証処理時に第一記憶部13に記憶された認証情報)を削除する。このように、古い認証情報を削除することで安全性を高めることができる。
次に、第一制御部12は、起動回数情報(cnt=2)を含むHelloパケットを、第一通信部11にブロードキャスト送信させる(S26)。このHelloパケットには、親機10の識別子が送信元のアドレスとして含まれる。子機20aの第二通信部21は、起動回数情報(cnt=2)を含むHelloパケットを受信する(S27)。
子機20aの第二通信部21が起動回数情報(cnt=2)を含むHelloパケットを受信すると、子機20aの第二制御部22は、起動回数判定処理を行う(S28)。図6は、起動回数判定処理のフローチャートである。
起動回数判定処理においては、子機20aの第二制御部22は、受信されたHelloパケットに含まれる第一の起動回数情報が、第二記憶部23に記憶されている第二の起動回数情報と一致するかを判定する(S41)。なお、ここでの一致とは、第一の起動回数情報が示す累積起動回数と、第二の起動回数情報が示す累積起動回数とが実質的に一致することを意味する。この場合、第一の起動回数情報は、ステップS27で受信されたHelloパケットに含まれる起動回数情報であり、第二の起動回数情報は、ステップS18において第二記憶部23に記憶された起動回数情報である。
ここでは、第一の起動回数情報は、cnt=1であり、第二の起動回数情報であるcnt=2と一致しない。したがって、第一の起動回数情報が第二の起動回数情報と異なると判定され(S41でNo)、子機20aの第二制御部22は、再度認証処理を行う(S42)。これにより、図5に示されるように、暗号鍵Bが子機20aに配布される(S29)。
なお、図6において、第一の起動回数情報が第二の起動回数情報と一致すると判定された場合(S41でYes)、親機10の暗号鍵は変更されていないと考えられる。このため、子機20aは、第二記憶部23に記憶されている暗号鍵Aを用いて親機10と通信を行う。
その後、子機20aの第二制御部22は、ステップS27において第二通信部21が受信したHelloパケットに含まれる起動回数情報(cnt=2)を第二記憶部23に記憶する(S30)。子機20aの第二制御部22は、さらに、ステップS27において受信されたHelloパケットに含まれる起動回数情報(cnt=2)と、子機20aの識別子(送信元のアドレス)とを含むHelloパケットを生成し、生成したHelloパケットを第二通信部21にブロードキャスト送信させる(S31)。子機20bの第二通信部21は、起動回数情報(cnt=2)を含むHelloパケットを受信する(S32)。
子機20bの第二通信部21が起動回数情報(cnt=2)を含むHelloパケットを受信すると、子機20bの第二制御部22は、起動回数判定処理を行う(S33)。起動回数判定処理は、図6を用いて説明した処理と同様である。ここでは、第一の起動回数情報は、第二の起動回数情報と異なると判定され、子機20bの第二制御部22は、再度認証処理を行い、この結果、暗号鍵Bが子機20bに配布される(S34)。これにより、子機20bは、暗号鍵Bを用いて暗号化したデータを、子機20aを中継局として親機10宛に送信することができる(S35)。
以上説明したように、親機10がHelloパケットに起動回数情報を含めて送信することにより、子機20aは、親機10の再起動を検知できる。また、子機20aが親機10の起動回数情報を含むHelloパケットを送信することにより、子機20bも親機10の再起動を検知できる。つまり、マルチホップ通信システム100に含まれる複数の子機は、少なくともHell0パケットの送信周期(例えば、10秒)ごとに親機10の再起動を検知できる。言い換えれば、マルチホップ通信システム100においては、子機20a及び子機20bは、親機10の動作状態を容易に知ることができる。
[動作例1の変形例]
なお、上記動作例1では、第一の起動回数情報と第二の起動回数情報とが異なると判定された場合、同じ親機10に対して再認証処理を行ったが、マルチホップ通信システム100に複数の親機が含まれる場合、別の親機に対して認証処理を行ってもよい。図7は、このような起動回数判定処理のフローチャートである。なお、以下では、親機10に対して既に認証処理を行った子機20aが、親機10の起動回数情報を用いて起動回数判定処理を行うものとして説明が行われる。子機20aの第二記憶部23には、親機10とは異なる他の親機までのルート情報が記憶されているものとする。
図7に示される起動回数判定処理においては、子機20aの第二制御部22は、受信されたHelloパケットに含まれる第一の起動回数情報が、第二記憶部23に記憶されている第二の起動回数情報と一致するかを判定する(S51)。
第一の起動回数情報が第二の起動回数情報と一致すると判定された場合(S51でYes)、子機20aは、第二記憶部23に既に記憶されている暗号鍵を用いて親機10と通信を行う。
一方、第一の起動回数情報が第二の起動回数情報と異なると判定された場合(S51でNo)、子機20aの第二制御部22は、親機10とは異なる他の親機に対して認証処理を行う(S52)。具体的には、子機20aの第二通信部21は、子機20aの識別子を認証情報として含む認証要求を、他の親機の識別子を宛先に指定して送信する。これにより、子機20aは、他の親機との通信に用いられる暗号鍵を当該他の親機から取得することができる。
以上のような起動回数判定処理により、子機20aは、起動回数情報に基づいて、再起動が行われたために通信状態が悪いと推定される親機10のネットワークに代えて、通信状態がよいと思われる他の親機のネットワークに参入することができる。
[動作例2]
マルチホップ通信システム100が備える子機は、起動回数情報に基づいて他の子機を中継局として選択してもよい。以下、このようなマルチホップ通信システム100の動作例2について説明する。図8は、マルチホップ通信システム100の動作例2を示すシーケンス図である。
なお、以下の動作例2では、子機20a及び子機20cは、親機10と直接通信可能な子機であり、子機20bは、子機20aまたは子機20cの中継により親機10との通信が可能な子機であって、途中から親機10のネットワークに参入するものとする。また、動作例2では、動作例1で説明した詳細な事項については説明が省略される場合がある。
まず、親機10、子機20a、及び子機20cのそれぞれが起動される(S61〜S63)。ここで、親機10の第一制御部12は、起動回数情報を0から1にインクリメントして第一記憶部13に記憶する。また、親機10の第一制御部12は、暗号鍵Aを生成し(S14)、生成した暗号鍵Aを、第一記憶部13に記憶する。
次に、第一制御部12は、起動回数情報(cnt=1)を含むHelloパケットを、第一通信部11にブロードキャスト送信させる(S64)。
子機20aの第二通信部21は、起動回数情報(cnt=1)を含むHelloパケットを受信し(S65)、子機20aの第二制御部22は、受信されたHelloパケットに含まれる起動回数情報(cnt=1)を子機20aの第二記憶部23に記憶する。同様に、子機20cの第二通信部21は、起動回数情報(cnt=1)を含むHelloパケットを受信し(S66)、子機20cの第二制御部22は、受信されたHelloパケットに含まれる起動回数情報(cnt=1)を子機20cの第二記憶部23に記憶する。
そして、子機20aの第二制御部22は、暗号鍵Aを取得するための認証処理を行い(S67)、起動回数情報(cnt=1)及び子機20aの識別子を含むHelloパケットを子機20aの第二通信部21にブロードキャスト送信させる(S68)。ここで、子機20bが親機10のネットワークに参入するために起動される(S69)。
その後、子機20cの第二制御部22は、暗号鍵Aを取得するための認証処理を行い(S70)、起動回数情報(cnt=1)及び子機20cの識別子を含むHelloパケットを子機20cの第二通信部21にブロードキャスト送信させる(S71)。子機20cの第二通信部21が送信したHelloパケットは、子機20bの第二通信部21によって受信され(S72)、子機20bの第二記憶部23には、起動回数情報(cnt=1)が子機20cの識別子と対応付けて記憶される。
なお、ステップS72においてHelloパケットを受信した後には、待機時間が設けられる。例えば、他の子機がHelloパケット送信する可能性がある期間が待機時間とされ、待機時間の経過後に認証処理が開始される。
一方で、親機10は、停止し、再起動する(S73)。そうすると、親機10の第一制御部12は、起動回数情報を1から2にインクリメントして第一記憶部13に記憶する。第一制御部12は、暗号鍵Bを生成し、生成した暗号鍵Bを第一記憶部13に記憶する。
次に、第一制御部12は、起動回数情報(cnt=2)を含むHelloパケットを、第一通信部11にブロードキャスト送信させる(S74)。
子機20aの第二通信部21は、起動回数情報(cnt=2)を含むHelloパケットを受信する(S75)。子機20aの第二制御部22は、暗号鍵Bを取得するための認証処理を行い(S76)、起動回数情報(cnt=2)及び子機20aの識別子を含むHelloパケットを子機20aの第二通信部21にブロードキャスト送信させる(S77)。子機20aの第二通信部21が送信したHelloパケットは、子機20bの第二通信部21によって受信され(S78)、子機20bの第二記憶部23には、起動回数情報(cnt=2)が子機20aの識別子と対応付けて記憶される。
一方で、子機20cの第二通信部21は、通信状態の悪化等により、ステップS74において送信されたHelloパケットを受信しない。
以上のような例において、子機20bの第二制御部22は、受信された複数のHelloパケットに含まれる複数の起動回数情報を比較する。より具体的には、子機20bの第二制御部22は、子機20bの第二記憶部23に記憶された複数の起動回数情報であって、送信元の子機の識別子と対応づけられた複数の起動回数情報を比較する。
そして、子機20bの第二制御部22は、比較の結果に基づいて、最も起動回数が多いことを示す起動回数情報を送信した子機である子機20aを、親機にデータを送信するための中継局として選択する。例えば、子機20bの第二通信部21は、子機20aの第二通信部21に認証要求を送信することにより親機10と認証処理を行う(S79)。
親機再起動を検知していない(インクリメントされた起動回数情報を受信していない)子機20cを経由して親機10に接続しようとすると、データ(例えば、認証要求)が親機10に到達しない場合がある。子機20bが最も累積起動回数が多いことを示す起動回数情報を送信した子機20aを中継局として選択すれば、このような不具合を抑制できる。
[動作例2の変形例]
なお、子機20bの第二通信部21が、第二記憶部23に記憶されている第二の起動回数情報よりも少ない累積起動回数を示す第一の起動回数情報を受信する場合が考えられる。このような起動回数情報を含むHelloパケットを送信した子機は、親機10と通信できていない可能性があるため、このような子機が中継局として選択されると、データ(例えば、認証要求)が親機10に到達しない可能性がある。
そこで、子機20bは、第一の起動回数情報が第二の起動回数情報よりも少ない累積起動回数を示すと判定した場合、親機10にデータを送信するための中継局となる子機を選択する際に、第一の起動回数情報を含むHelloパケットを送信した子機を中継局の候補から除外してもよい。これにより、データが親機10に到達しない不具合を抑制できる。
なお、図4で説明したように、起動回数情報は、2バイトの情報であるため0以上65535以下の値をとる。起動回数情報は、起動ごとにインクリメントされ、65535を超えると0に戻る。このように、起動回数情報がサイクリックな値であることを考慮して、例えば、現在の値から9999前の値は、無効にされてもよい。
既に受信済みの起動回数情報が示す累積起動回数をY、新たに受信された起動回数情報が示す累積起動回数をXとすると、Y>Xの場合には、(Y−X)<10000を満たす場合に、新たに受信された起動回数情報が無効にされる。また、Y<Xの場合には、(65535−X)+Y+1<10000を満たすときに、新たに受信された起動回数情報が無効にされる。
[動作例3]
マルチホップ通信システム100に複数の親機が含まれる場合、一の親機の識別子を含むHelloパケットを所定期間以上受信しなかった子機は、他の親機に対して認証処理を行ってもよい。以下、このようなマルチホップ通信システム100の動作例について説明する。図9は、マルチホップ通信システム100の動作例3を示すシーケンス図である。
なお、以下の動作例3では、子機20aは、親機10及び親機10aと直接通信が可能な子機であり、子機20bは、子機20aの中継により親機10及び親機10aとの通信が可能な子機であるとする。親機10、親機10a、子機20a、及び子機20bは、既に起動済みであるとする。また、動作例3では、動作例1及び動作例2で説明した詳細な事項については説明が省略される場合がある。
まず、第一制御部12は、親機10の識別子(NETID)を含むHelloパケットを、親機10の第一通信部11にブロードキャスト送信させる(S81)。以下の説明では、親機の識別子をNETIDと記載し、親機10は、NETID=M1であるとする。
子機20aの第二通信部21は、識別子(NETID=M1)を含むHelloパケットを受信し(S82)、子機20aの第二制御部22は、当該Helloパケットを受信した時刻を子機20aの第二記憶部23に記憶する。
次に、子機20aの第二制御部22は、親機10に対する認証処理を行う(S83)。子機20aの第二制御部22は、さらに、識別子(NETID=M1)を含むHelloパケットを生成し、生成したHelloパケットを第二通信部21にブロードキャスト送信させる(S84)。子機20bの第二通信部21は、識別子(NETID=M1)を含むHelloパケットを受信し(S85)、子機20bの第二制御部22は、当該Helloパケットを受信した時刻を子機20bの第二記憶部23に記憶する。
次に、子機20bの第二制御部22は、親機10から当該親機10との通信に使用される暗号鍵を取得するための認証処理を、子機20aを中継局として親機10に対して行う(S86)。
その後、親機10が停止すると(S87)、識別子(NETID=M1)を含むHelloパケットは送信されなくなる。
子機20aの第二制御部22は、子機20aの第二通信部21が最後に識別子(NETID=M1)を含むHelloパケットを受信してから、所定期間T以上経過したことを検出すると、認証解除を行う(S88)。
このとき、親機10aの第一制御部12は、親機10aの識別子(NETI=M2)を含むHelloパケットを、親機10aの第一通信部11にブロードキャスト送信させる(S89)。子機20aの第二通信部21は、識別子(NETID=M2)を含むHelloパケットを受信し(S90)、子機20aの第二制御部22は、当該Helloパケットを受信した時刻を子機20aの第二記憶部23に記憶する。
次に、子機20aの第二制御部22は、親機10aに対する認証処理を行う(S91)。子機20aの第二制御部22は、さらに、識別子(NETID=M2)を含むHelloパケットを生成し、生成したHelloパケットを第二通信部21にブロードキャスト送信させる(S92)。
ここで、図9の例では、子機20bの第二通信部21は、当該第二通信部21が最後に識別子(NETID=M1)を含むHelloパケットを受信してから所定期間Tの経過前に、識別子(NETID=M2)を含むHelloパケットを受信している。しかしながら、このHelloパケットは、親機10の識別子(NETID=M1)を含むHelloパケットではない。
したがって、子機20bの第二制御部22は、その後、子機20bの第二通信部21が最後に識別子(NETID=M1)を含むHelloパケットを受信してから、所定期間T以上経過したことを検出する。そうすると、子機20bの第二制御部22は、認証解除を行い(S94)、ステップS93において受信されたHelloパケットに含まれる識別子(NETID=M2)に基づいて、親機10aから当該親機10aとの通信に使用される暗号鍵を取得するための認証処理を、子機20aを中継局として親機10aに対して行う(S95)。
以上説明したように、マルチホップ通信システム100に複数の親機が含まれる場合、子機20aの第二制御部22は、さらに、親機10から暗号鍵を取得するための第一認証処理を行う。第一認証処理の後に子機20aの第二通信部21が親機10の識別子を含むHelloパケットを所定期間T以上受信しなかった場合、他の親機10aから当該他の親機10aとの通信に使用される暗号鍵を取得するための第二認証処理を行う。子機20bも同様の動作を行う。
このように、所定期間T以上Helloパケットが受信されないことを検知することにより、子機20a及び子機20bは、親機10が停止した後も、他の親機10aのネットワークに参入して通信を復旧することができる。
[まとめ]
以上説明したように、マルチホップ通信システム100に含まれる親機10として動作する通信装置は、マルチホップ通信システム100に含まれる少なくとも1つの子機20aにHelloパケットを送信する第一通信部11と、上記通信装置の累積起動回数を示す起動回数情報をHelloパケットに含めて第一通信部11に送信させる第一制御部12とを備える。
これにより、子機20aは、通信装置の生存確認とルート情報の通知とを目的として一般的に用いられるHelloパケットの受信により、親機10の累積起動回数を取得することができる。つまり、子機20aは、親機10の動作状態を容易に知ることができる。
また、上記通信装置は、さらに、子機20aとの通信に使用される暗号鍵が記憶される第一記憶部13を備え、第一制御部12は、上記通信装置が起動されるごとに第一記憶部13に記憶された暗号鍵を変更してもよい。
これにより、子機20aは、ルート情報の通知等を目的として一般的に用いられるHelloパケットの受信により、暗号鍵が変更されているか否かを判定することができる。
また、第一通信部11は、暗号鍵を子機20aに送信し、第一制御部12は、暗号鍵を送信した子機20aの認証情報を第一記憶部13に記憶し、上記通信装置が起動されると、第一記憶部13に記憶されていた認証情報を削除してもよい。
このように、古い認証情報を削除することによって、安全性が高められる。
また、マルチホップ通信システム100に含まれる子機20aとして動作する通信装置は、マルチホップ通信システム100に含まれる親機10の累積起動回数を示す起動回数情報を含むHelloパケットを受信する第二通信部21と、第二記憶部23と、受信されたHelloパケットに含まれる起動回数情報を第二記憶部23に記憶し、記憶された起動回数情報を用いた情報処理を行う第二制御部22とを備える。
これにより、子機20aは、ルート情報の通知等を目的として一般的に用いられるHelloパケットの受信により、親機10の累積起動回数を取得することができる。つまり、子機20aは、親機10の動作状態を容易に知ることができる。また、第二制御部22は、例えば、認証処理または中継局の選択などの、起動回数情報を用いた情報処理を行うことができる。
また、親機10は、当該親機10が起動されるごとに、上記通信装置との通信に使用される暗号鍵を変更し、第二記憶部23には、さらに、第二通信部21が親機10から受信した暗号鍵が記憶されてもよい。第二制御部22は、さらに、第二通信部21がHelloパケットを受信した場合、受信されたHelloパケットに含まれる第一の起動回数情報が、第二記憶部23に記憶されている第二の起動回数情報と一致するかを判定してもよい。第二制御部22は、第一の起動回数情報が第二の起動回数情報と一致すると判定した場合、第二記憶部23に記憶されている暗号鍵を用いて親機10と通信を行ってもよい。
これにより、親機10が再起動していないときには、子機20aは、第二記憶部23に記憶されている暗号鍵を用いて親機10と通信を継続することができる。
また、第二制御部22は、第一の起動回数情報が、第二の起動回数情報と異なると判定した場合、親機10から当該親機10との通信に使用される暗号鍵を取得するための認証処理を行ってもよい。
これにより、親機10が再起動しているときには、子機20aは、変更後の暗号鍵を取得することができる。
また、マルチホップ通信システム100には、さらに、親機10とは異なる他の親機が含まれてもよい。第二制御部22は、さらに、親機10から暗号鍵を取得するための第一認証処理を行い、第一認証処理の後に第二通信部21がHelloパケットを受信した場合、受信されたHelloパケットに含まれる第一の起動回数情報が、第二記憶部23に記憶されている第二の起動回数情報と一致するかを判定してもよい。そして、第二制御部22は、第一の起動回数情報が第二の起動回数情報と異なると判定した場合、他の親機から当該他の親機との通信に使用される暗号鍵を取得するための第二認証処理を行ってもよい。
これにより、子機20aは、起動回数情報に基づいて、再起動が行われたために通信状態が悪いと推定される親機10のネットワークに代えて、通信状態がよいと思われる他の親機のネットワークに参入することができる。
また、第二制御部22は、さらに、受信されたHelloパケットに含まれる起動回数情報を含むHelloパケットを生成し、生成したHelloパケットを第二通信部21に送信させてもよい。
これにより、親機10と直接通信ができない子機20bも、Helloパケットの受信により、親機10の累積起動回数を取得することができる。つまり、子機20bは、親機10の動作状態を容易に知ることができる。
また、子機20bの第二通信部21は、マルチホップ通信システム100に含まれる、子機20bとは異なる他の複数の子機のそれぞれから親機10の起動回数情報を含むHelloパケットを受信してもよい。また、子機20bの第二制御部22は、さらに、受信されたHelloパケットに含まれる第一の起動回数情報と、子機20bの第二記憶部23に記憶されている第二の起動回数情報とを比較してもよい。子機20bの第二制御部22は、第一の起動回数情報が第二の起動回数情報よりも少ない累積起動回数を示すと判定した場合、親機10にデータを送信するための中継局となる子機を他の複数の子機の中から選択する際に、第一の起動回数情報を含むHelloパケットを送信した子機を中継局の候補から除外してもよい。
更新された起動回数情報を受信していない子機20cは、親機10と通信できていない可能性がある。子機20bがこのような子機20cを経由して親機10に接続しようとすると、データが親機10に到達しない場合があるが、このような構成によれば、データが親機10に到達しない不具合を抑制することができる。
また、子機20bの第二通信部21は、マルチホップ通信システム100に含まれる、子機20bとは異なる他の複数の子機のそれぞれから親機10の起動回数情報を含むHelloパケットを受信してもよい。また、子機20bの第二制御部22は、さらに、受信された複数のHelloパケットに含まれる複数の起動回数情報を比較してもよい。子機20bの第二制御部22は、比較の結果に基づいて、最も累積起動回数が多いことを示す起動回数情報を送信した子機を、親機10にデータを送信するための中継局として選択してもよい。
これにより、データが親機10に到達しない不具合を抑制することができる。
また、マルチホップ通信システム100には、さらに、親機10とは異なる他の親機10aが含まれ、子機20aの第二制御部22は、さらに、親機10から暗号鍵を取得するための第一認証処理を行ってもよい。そして、子機20aの第二制御部22は、第一認証処理の後に子機20aの第二通信部21が親機10の識別子を含むHelloパケットを所定期間T以上受信しなかった場合、他の親機10aから当該他の親機との通信に使用される暗号鍵を取得するための第二認証処理を行ってもよい。
このように、所定期間T以上Helloパケットが受信されないことを検知することにより、子機20aは、親機10が停止した後も、他の親機10aのネットワークに参入して通信を復旧することができる。
また、マルチホップ通信システム100は、親機10と、子機20aとを備える。親機10は、子機20aにHelloパケットを送信する第一通信部11と、親機10の累積起動回数を示す起動回数情報をHelloパケットに含めて第一通信部11に送信させる第一制御部12とを備える。子機20aは、起動回数情報を含むHelloパケットを受信する第二通信部21と、第二記憶部23と、受信されたHelloパケットに含まれる起動回数情報を第二記憶部23に記憶する第二制御部22とを備える。
これにより、子機20aは、Helloパケットの受信により、親機10の累積起動回数を取得することができる。つまり、子機20aは、親機10の動作状態を容易に知ることができる。
また、マルチホップ通信システム100が実行する通信方法において、マルチホップ通信システム100は、親機10と、子機20aとを備える。親機10は、親機10の累積起動回数を示す起動回数情報をHelloパケットに含めて送信する。子機20aは、起動回数情報を含むHelloパケットを受信し、受信されたHelloパケットに含まれる起動回数情報を子機20aが備える第二記憶部23に記憶する。
これにより、子機20aは、Helloパケットの受信により、親機10の累積起動回数を取得することができる。つまり、子機20aは、親機10の動作状態を容易に知ることができる。
(その他の実施の形態)
以上、実施の形態に係るマルチホップ通信システムについて説明したが、本発明は、上記実施の形態に限定されるものではない。
上記実施の形態で説明した親機として動作する通信装置、または、子機として動作する通信装置の具体的な態様は、特に限定されない。例えば、空調機器、スマートメータ、または照明機器などが通信装置として使用されてもよい。また、親機と子機とは同種の通信端末である必要はなく、子機がスマートメータである場合に、親機は、子機から取得したデータを管理するコンセントレータ(サーバ)等であってもよい。
なお、上記実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
また、各構成要素は、回路でもよい。これらの回路は、全体として1つの回路を構成してもよいし、それぞれ別々の回路でもよい。また、これらの回路は、それぞれ、汎用的な回路でもよいし、専用の回路でもよい。
また、上記実施の形態において、特定の処理部が実行する処理を別の処理部が実行してもよい。また、複数の処理の順序が変更されてもよいし、複数の処理が並行して実行されてもよい。
なお、本発明の包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD−ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラムまたは記録媒体の任意な組み合わせで実現されてもよい。例えば、本発明は、マルチホップ通信システム、または、マルチホップ通信システムに含まれる親機もしくは子機が実行する通信方法として実現されてもよいし、このような通信方法をコンピュータに実行させるためのプログラムとして実現されてもよい。
以上、一つまたは複数の態様に係るマルチホップ通信システム並びに、マルチホップ通信システムにおいて用いられる通信装置及び通信方法について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。
10、10a 親機
11 第一通信部(通信部)
12 第一制御部(制御部)
13 第一記憶部(記憶部)
20a、20b、20c 子機
21 第二通信部(通信部)
22 第二制御部(制御部)
23 第二記憶部(記憶部)
100 マルチホップ通信システム

Claims (14)

  1. マルチホップ通信システムに含まれる親機として動作する通信装置であって、
    前記マルチホップ通信システムに含まれる少なくとも1つの子機にHelloパケットを送信する通信部と、
    前記通信装置の累積起動回数を示す起動回数情報を前記Helloパケットに含めて前記通信部に送信させる制御部とを備える
    通信装置。
  2. さらに、前記子機との通信に使用される暗号鍵が記憶される記憶部を備え、
    前記制御部は、前記通信装置が起動されるごとに前記記憶部に記憶された暗号鍵を変更する
    請求項1に記載の通信装置。
  3. 前記通信部は、前記暗号鍵を前記子機に送信し、
    前記制御部は、
    前記暗号鍵を送信した前記子機の認証情報を前記記憶部に記憶し、
    前記通信装置が起動されると、前記記憶部に記憶されていた前記認証情報を削除する
    請求項2に記載の通信装置。
  4. マルチホップ通信システムに含まれる子機として動作する通信装置であって、
    前記マルチホップ通信システムに含まれる親機の累積起動回数を示す起動回数情報を含むHelloパケットを受信する通信部と、
    記憶部と、
    受信された前記Helloパケットに含まれる前記起動回数情報を前記記憶部に記憶し、記憶された前記起動回数情報を用いた情報処理を行う制御部とを備える
    通信装置。
  5. 前記親機は、当該親機が起動されるごとに、前記通信装置との通信に使用される暗号鍵を変更し、
    前記記憶部には、さらに、前記通信部が前記親機から受信した暗号鍵が記憶され、
    前記制御部は、さらに、
    前記通信部がHelloパケットを受信した場合、受信されたHelloパケットに含まれる第一の起動回数情報が、前記記憶部に記憶されている第二の起動回数情報と一致するかを判定し、
    前記第一の起動回数情報が前記第二の起動回数情報と一致すると判定した場合、前記記憶部に記憶されている暗号鍵を用いて前記親機と通信を行う
    請求項4に記載の通信装置。
  6. 前記制御部は、前記第一の起動回数情報が、前記第二の起動回数情報と異なると判定した場合、前記親機から当該親機との通信に使用される暗号鍵を取得するための認証処理を行う
    請求項5に記載の通信装置。
  7. 前記マルチホップ通信システムには、さらに、前記親機とは異なる他の親機が含まれ、
    前記制御部は、さらに、
    前記親機から暗号鍵を取得するための第一認証処理を行い、
    前記第一認証処理の後に前記通信部がHelloパケットを受信した場合、受信されたHelloパケットに含まれる第一の起動回数情報が、前記記憶部に記憶されている第二の起動回数情報と一致するかを判定し、
    前記第一の起動回数情報が前記第二の起動回数情報と異なると判定した場合、前記他の親機から当該他の親機との通信に使用される暗号鍵を取得するための第二認証処理を行う
    請求項4に記載の通信装置。
  8. 前記制御部は、さらに、受信された前記Helloパケットに含まれる前記起動回数情報を含むHelloパケットを生成し、生成したHelloパケットを前記通信部に送信させる
    請求項4に記載の通信装置。
  9. 前記通信部は、前記マルチホップ通信システムに含まれる、前記通信装置とは異なる他の複数の子機のそれぞれから前記親機の起動回数情報を含むHelloパケットを受信し、
    前記制御部は、さらに、
    受信されたHelloパケットに含まれる第一の起動回数情報と、前記記憶部に記憶されている第二の起動回数情報とを比較し、
    前記第一の起動回数情報が前記第二の起動回数情報よりも少ない累積起動回数を示すと判定した場合、前記親機にデータを送信するための中継局となる子機を前記他の複数の子機の中から選択する際に、前記第一の起動回数情報を含むHelloパケットを送信した子機を前記中継局の候補から除外する
    請求項4に記載の通信装置。
  10. 前記通信部は、前記マルチホップ通信システムに含まれる、前記通信装置とは異なる他の複数の子機のそれぞれから前記親機の起動回数情報を含むHelloパケットを受信し、
    前記制御部は、さらに、
    受信された複数のHelloパケットに含まれる複数の起動回数情報を比較し、
    前記比較の結果に基づいて、最も累積起動回数が多いことを示す起動回数情報を送信した子機を、前記親機にデータを送信するための中継局として選択する
    請求項4に記載の通信装置。
  11. 前記マルチホップ通信システムには、さらに、前記親機とは異なる他の親機が含まれ、
    前記制御部は、さらに、
    前記親機から暗号鍵を取得するための第一認証処理を行い、
    前記第一認証処理の後に前記通信部が前記親機の識別子を含むHelloパケットを所定期間以上受信しなかった場合、前記他の親機から当該他の親機との通信に使用される暗号鍵を取得するための第二認証処理を行う
    請求項4に記載の通信装置。
  12. マルチホップ通信システムであって、
    親機と、子機とを備え、
    前記親機は、
    前記子機にHelloパケットを送信する第一通信部と、
    前記親機の累積起動回数を示す起動回数情報を前記Helloパケットに含めて前記第一通信部に送信させる第一制御部とを備え、
    前記子機は、
    前記起動回数情報を含むHelloパケットを受信する第二通信部と、
    記憶部と、
    受信された前記Helloパケットに含まれる前記起動回数情報を前記記憶部に記憶する第二制御部とを備える
    マルチホップ通信システム。
  13. マルチホップ通信システムが実行する通信方法であって、
    前記マルチホップ通信システムは、親機と、子機とを備え、
    前記親機は、
    前記親機の累積起動回数を示す起動回数情報をHelloパケットに含めて送信し、
    前記子機は、
    前記起動回数情報を含む前記Helloパケットを受信し、
    受信された前記Helloパケットに含まれる前記起動回数情報を前記子機が備える記憶部に記憶する
    通信方法。
  14. 請求項13に記載の通信方法をコンピュータに実行させるためのプログラム。
JP2015195260A 2015-09-30 2015-09-30 通信装置、マルチホップ通信システム、及び、通信方法 Active JP6436038B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2015195260A JP6436038B2 (ja) 2015-09-30 2015-09-30 通信装置、マルチホップ通信システム、及び、通信方法
PCT/JP2016/004092 WO2017056406A1 (ja) 2015-09-30 2016-09-08 通信装置、マルチホップ通信システム、及び、通信方法
EP16850587.3A EP3358782B1 (en) 2015-09-30 2016-09-08 Communication device, multihop communication system, and communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015195260A JP6436038B2 (ja) 2015-09-30 2015-09-30 通信装置、マルチホップ通信システム、及び、通信方法

Publications (2)

Publication Number Publication Date
JP2017069850A JP2017069850A (ja) 2017-04-06
JP6436038B2 true JP6436038B2 (ja) 2018-12-12

Family

ID=58422882

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015195260A Active JP6436038B2 (ja) 2015-09-30 2015-09-30 通信装置、マルチホップ通信システム、及び、通信方法

Country Status (3)

Country Link
EP (1) EP3358782B1 (ja)
JP (1) JP6436038B2 (ja)
WO (1) WO2017056406A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110971993B (zh) * 2018-09-28 2021-08-20 华为技术有限公司 一种音箱的交互方法、音箱及音箱系统
JP7289111B2 (ja) * 2019-06-26 2023-06-09 パナソニックIpマネジメント株式会社 通信装置、認証方法およびコンピュータプログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11146090A (ja) * 1997-11-06 1999-05-28 Fujitsu Denso Ltd 単向通信方法及び該方法に使用する無線送信機及び無線受信機
JP3747907B2 (ja) * 2002-12-11 2006-02-22 セイコーエプソン株式会社 デバイス管理システム、プリンタ管理システム、プリンタ管理端末、ネットワークプリンタ、端末用プログラム及びプリンタ用プログラム、並びにデバイス管理方法
JP4576997B2 (ja) * 2004-04-28 2010-11-10 株式会社デンソー 通信システム、鍵配信装置、暗号処理装置
JP4715239B2 (ja) * 2005-03-04 2011-07-06 沖電気工業株式会社 無線アクセス装置、無線アクセス方法及び無線ネットワーク
JP4836241B2 (ja) * 2005-11-10 2011-12-14 任天堂株式会社 通信システム、通信プログラム、および通信端末
US7684355B2 (en) * 2007-03-19 2010-03-23 Cisco Technology, Inc. Transparent wireless bridge route aggregation
JP2011066683A (ja) * 2009-09-17 2011-03-31 Oki Electric Industry Co Ltd マルチホップ通信方法及び通信端末
WO2011045859A1 (ja) * 2009-10-15 2011-04-21 富士通株式会社 無線通信装置および無線通信プログラム
JP5975594B2 (ja) * 2010-02-01 2016-08-23 沖電気工業株式会社 通信端末及び通信システム
JP2014072733A (ja) * 2012-09-28 2014-04-21 Panasonic Corp 通信システム、通信端末、管理装置
TWI488529B (zh) * 2013-01-28 2015-06-11 鋐寶科技股份有限公司 網路系統之設定方法
JP6432725B2 (ja) * 2014-07-16 2018-12-05 学校法人 関西大学 無線装置、それを備えた無線通信システムおよび無線装置において実行されるプログラム

Also Published As

Publication number Publication date
JP2017069850A (ja) 2017-04-06
EP3358782A1 (en) 2018-08-08
EP3358782B1 (en) 2021-12-22
EP3358782A4 (en) 2018-08-08
WO2017056406A1 (ja) 2017-04-06

Similar Documents

Publication Publication Date Title
US9907016B2 (en) Communication device
US11576110B2 (en) Bluetooth network, communication method, apparatus, and storage medium thereof
WO2017067430A1 (zh) 智能设备、电子装置及基于近场通信的网络连接方法
JP5144162B2 (ja) 通信装置及び通信パラメータを取得するための制御方法
JP6451163B2 (ja) 通信機器
JP5150674B2 (ja) 無線lanシステム、無線lan装置、設定情報設定方法及びそのプログラム
JP2008104076A (ja) 通信パラメータの設定方法、通信装置、通信装置の制御方法およびプログラム
US20120233338A1 (en) Communication apparatus, method for controlling the communication apparatus, and storage medium
US9538375B2 (en) Method for configuring wireless connection settings, wireless communications apparatus, and display method
JP5053400B2 (ja) 無線lan装置、プロトコル実行方法及びそのプログラム
JP6436038B2 (ja) 通信装置、マルチホップ通信システム、及び、通信方法
JP2012227786A (ja) 通信装置、およびプログラム
JP6211998B2 (ja) 中継装置、中継方法、およびコンピュータ・プログラム
US9271224B2 (en) Communication apparatus, and communication method therefor
JP2015002412A (ja) 情報通信装置
JP7017783B2 (ja) 基地局装置、制御方法、及び、プログラム
JP2007104389A (ja) 無線基地局装置および無線基地局装置の通信パラメータ設定方法
JP2020099025A (ja) 無線親機、無線中継機、無線通信システム、無線通信方法、及びプログラム
JP6671039B2 (ja) 通信装置、マルチホップ通信システム、及び、通信方法
JP2010212758A (ja) 通信装置及び通信処理方法
JP6410305B2 (ja) 無線通信装置、機器設定プログラム及び機器設定方法
JP2019071634A (ja) 通信機器
JP6433004B1 (ja) 無線ノード、通信制御方法およびプログラム
JP2018195887A (ja) 情報処理装置、制御方法及びプログラム
JP2014216757A (ja) 通信端末およびそのvid決定方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180703

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180724

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180925

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181016

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181029

R151 Written notification of patent or utility model registration

Ref document number: 6436038

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151