(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6361224
(24)【登録日】2018年7月6日
(45)【発行日】2018年7月25日
(54)【発明の名称】通信装置及び通信プログラム
(51)【国際特許分類】
H04W 12/08 20090101AFI20180712BHJP
H04W 28/04 20090101ALI20180712BHJP
【FI】
H04W12/08
H04W28/04 110
【請求項の数】4
【全頁数】11
(21)【出願番号】特願2014-66758(P2014-66758)
(22)【出願日】2014年3月27日
(65)【公開番号】特開2015-192223(P2015-192223A)
(43)【公開日】2015年11月2日
【審査請求日】2016年11月15日
(73)【特許権者】
【識別番号】000000295
【氏名又は名称】沖電気工業株式会社
(74)【代理人】
【識別番号】100180275
【弁理士】
【氏名又は名称】吉田 倫太郎
(74)【代理人】
【識別番号】100161861
【弁理士】
【氏名又は名称】若林 裕介
(74)【代理人】
【識別番号】100090620
【弁理士】
【氏名又は名称】工藤 宣幸
(72)【発明者】
【氏名】川本 康貴
(72)【発明者】
【氏名】中野 義久
【審査官】
青木 健
(56)【参考文献】
【文献】
特開2004−032664(JP,A)
【文献】
米国特許出願公開第2012/0155349(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04W 4/00 − 99/00
H04B 7/24 − 7/26
(57)【特許請求の範囲】
【請求項1】
他の通信装置からフレームを受信する受信手段と、
少なくとも、受信フレームに対するACKフレームを送信する送信手段と、
セキュア通信が許可された他の通信装置のアドレス情報を記憶するセキュア通信許可アドレス情報記憶手段と、
上記受信手段から受信フレームの送信元アドレス情報に基づいて、上記セキュア通信許可アドレス情報記憶手段を参照し、セキュア通信が許可されていない他の通信装置からの受信フレームに対するACKフレームの送信を制限するACK送信制限手段と
を備え、
当該通信装置のネットワーク再構築の際に、上記セキュア通信許可アドレス情報記憶手段が、記憶している送信元アドレス情報を消去し、
上記ACK送信制限手段が、上記受信手段から受信フレームにACKフレームの送信を要求するACK要求情報が含まれており、かつ、上記受信フレームの送信元アドレス情報が上記セキュア通信許可アドレス情報記憶手段に存在しない場合に、上記受信フレームの送信元アドレス情報宛のACKフレームの送信を制限する
ことを特徴とする通信装置。
【請求項2】
上記ACK送信制限手段が、上記受信手段から受信フレームにACKフレームの送信を要求するACK要求情報が含まれており、かつ、上記受信フレームの送信元アドレス情報が上記セキュア通信許可アドレス情報記憶手段に存在しない場合に、ACKフレームを送信する上記送信手段の機能をOFFにすることを特徴とする請求項1に記載の通信装置。
【請求項3】
少なくとも、上記セキュア通信許可アドレス情報記憶手段及び上記ACK送信制限手段が、ハードウェアで構築されていることを特徴とする請求項1又は2に記載の通信装置。
【請求項4】
コンピュータを、
他の通信装置からフレームを受信する受信手段と、
少なくとも、受信フレームに対するACKフレームを送信する送信手段と、
セキュア通信が許可された他の通信装置のアドレス情報を記憶するセキュア通信許可アドレス情報記憶手段と、
上記受信手段から受信フレームの送信元アドレス情報に基づいて、上記セキュア通信許可アドレス情報記憶手段を参照し、セキュア通信が許可されていない他の通信装置からの受信フレームに対するACKフレームの送信を制限するACK送信制限手段と
して機能させ、
ネットワーク再構築の際に、上記セキュア通信許可アドレス情報記憶手段が、記憶している送信元アドレス情報を消去するものであり、
上記ACK送信制限手段が、上記受信手段から受信フレームにACKフレームの送信を要求するACK要求情報が含まれており、かつ、上記受信フレームの送信元アドレス情報が上記セキュア通信許可アドレス情報記憶手段に存在しない場合に、上記受信フレームの送信元アドレス情報宛のACKフレームの送信を制限することを特徴とする通信プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信装置及び通信プログラムに関し、例えば、無線通信ネットワークを構成する通信装置及び通信プログラムに適用し得るものである。
【背景技術】
【0002】
例えば、無線通信では、送信されたフレームの受信後に、受信ノードがフレームを受信したことを送信元に通知するために受信ノードがACKフレームを返答する。
【0003】
例えば、IEEE802.15.4等に規定されるMACプロトコルでは、フレームがセキュアなフレームである場合、フレーム内のACK要求ビット(以下、ACK要求情報とも呼ぶ。)がONであれば、フレームの復号ができるか否かに関係なく、受信ノードはACKフレームを返答する(非特許文献1参照)。
【0004】
図2は、従来の通信装置におけるACK送信処理部100の構成を示すブロック図である。従来の通信装置のACK送信処理部100は、フレーム受信部101、ACK送信判定部102、ACK送信部103を有する。
【0005】
フレーム受信部101は、送信元が送信したフレームを受信し、フレームの内容をACK送信判定部102へ通知する機能を持つ。
【0006】
ACK送信判定部102は、フレーム受信部101とACK送信部103とに接続されており、フレーム受信部101から通知されたフレームのACK要求ビットの内容を確認し、ACKを要求するものであれば、ACK送信部103に対してACKフレームを送信するよう通知する。
【0007】
ACK送信部103は、ACK送信判定部102と接続されており、ACK送信判定部102からの要求を受けてACKフレームの送信を行う。
【0008】
このように、従来の通信装置のACK送信処理部100は、フレーム受信部101がフレームを受信した際に、ACK送信判定部102によりフレーム内のACK要求ビットがONであると判断した場合、ACK送信部103によりACKフレームが送信される。
【0009】
上記のように、セキュア通信を行なう場合に、受信ノードがフレームの復号できたか否かに関係なく、受信ノードがACKフレームを返答できるように規定したのは、以下の理由からである。
【0010】
第1に、フレームの復号ができたことを確認した後に、ACK送信処理部がACKフレームを送信すると、ACKフレームの返答までの時間がかかってしまうというためである。
これは、ACKタイムアウトの待ち時間を長く設定する必要があるため、省電力化に不利となる。
【0011】
第2に、ACKフレームの送信は、本来MACレイヤの機能である。しかし、ハードウェア化が容易なので、ACK返信機能を持つRFLSI(=PHY機能を実現)は多い。よって、RFLSIの機能を十分に使うため、上記のような仕様になっている。
【先行技術文献】
【非特許文献】
【0012】
【非特許文献1】IEEE(The Institute of Electrical and Electronics Engineers, Inc)802.15.4−2011
【発明の概要】
【発明が解決しようとする課題】
【0013】
しかしながら、MACレイヤでセキュア通信をするNWプロトコル(例えば、Zigbee(登録商標) IP等)を利用した場合に以下のような問題が生じ得る。
【0014】
例えば、ノードが何らかの理由(例えば停電やソフトウェアの不具合等)でリセットされた場合、ノード(このノードをリセットノードという。)はネットワークへ再ジョインすることになる。その際、セキュリティ情報も全てリセットされる。
【0015】
リセットノードが親ノードであり、その親ノードと接続しているノードが正常に動作している場合、リセットノードがネットワークに再ジョインするタイミングに追従して、子ノードも再ジョインを行なう。これは、子ノードは、リセットノードがリセットしてネットワークヘ再ジョインすることを検知できるからである。子ノードは再ジョインするので、リセット後のリセットノードのセキュリティ情報にも「セキュア通信送信元ノード」として登録される。
【0016】
しかし、子ノードがスリープノードであり、スリープ中にリセットノードがネットワークへ再ジョインするときには、子ノードはリセットノードの再ジョインを検知することができない。そのため、子ノードがスリープノードである場合、リセットノードのリセット後、「セキュア通信送信元ノード」として登録されない。よって、リセットノードは子ノードであるスリープノードからのデータを復号できない。
【0017】
それにもかかわらず、MAC層ではACKフレームの返答を行なうため、スリープノードはセキュリティ情報の取得ができず、又ネットワークが再構築されたことを検知できず、ネットワークに接続することができない。
【0018】
また、スリープノードは、セキュリティキーの変更やネットワークの再構築を、NWプロトコルでのNW維持管理通信を実施することで検知することが可能である。
【0019】
しかし、スリープノードは省電力化のためにNW維持管理通信の実施間隔を非常に長く(例えば1日〜数日程度)設定している場合も多く、その間のデータ通信はすべて通信できない。
【0020】
そのため、セキュア通信において、ACK要求情報がONとなっているときでも、ACKフレームの返答を行なわないようにすることができる通信装置及び通信プログラムが求められている。
【課題を解決するための手段】
【0021】
かかる課題を解決するために、第1の本発明は、(1)他の通信装置からフレームを受信する受信手段と、(2)少なくとも、受信フレームに対するACKフレームを送信する送信手段と、(3)セキュア通信が許可された他の通信装置のアドレス情報を記憶するセキュア通信許可アドレス情報記憶手段と、(4)受信手段から受信フレームの送信元アドレス情報に基づいて、セキュア通信許可アドレス情報記憶手段を参照し、セキュア通信が許可されていない他の通信装置からの受信フレームに対するACKフレームの送信を制限するACK送信制限手段とを備え
、(5)当該通信装置のネットワーク再構築の際に、セキュア通信許可アドレス情報記憶手段が、記憶している送信元アドレス情報を消去するものであり、(6)ACK送信制限手段が、受信手段から受信フレームにACKフレームの送信を要求するACK要求情報が含まれており、かつ、受信フレームの送信元アドレス情報がセキュア通信許可アドレス情報記憶手段に存在しない場合に、受信フレームの送信元アドレス情報宛のACKフレームの送信を制限することを特徴とする通信装置である。
【0022】
第2の本発明は、コンピュータを、(1)他の通信装置からフレームを受信する受信手段と、(2)少なくとも、受信フレームに対するACKフレームを送信する送信手段と、(3)セキュア通信が許可された他の通信装置のアドレス情報を記憶するセキュア通信許可アドレス情報記憶手段と、(4)受信手段から受信フレームの送信元アドレス情報に基づいて、セキュア通信許可アドレス情報記憶手段を参照し、セキュア通信が許可されていない他の通信装置からの受信フレームに対するACKフレームの送信を制限するACK送信制限手段として機能させ
、(5)当該通信装置のネットワーク再構築の際に、セキュア通信許可アドレス情報記憶手段が、記憶している送信元アドレス情報を消去し、ACK送信制限手段が、受信手段から受信フレームにACKフレームの送信を要求するACK要求情報が含まれており、かつ、受信フレームの送信元アドレス情報がセキュア通信許可アドレス情報記憶手段に存在しない場合に、受信フレームの送信元アドレス情報宛のACKフレームの送信を制限することを特徴とする通信プログラムである。
【発明の効果】
【0023】
本発明によれば、セキュア通信において、ACK要求情報がONとなっているときでも、ACKフレームの返答を行なわないようにすることができる。
【図面の簡単な説明】
【0024】
【
図1】実施形態に係るノードが備える通信装置の内部構成を示す内部構成図である。
【
図2】従来のノードが備える通信装置の内部構成を示す内部構成図である。
【
図3】実施形態に係る無線通信システムの構成及び各ノードの内部構成を示す構成図である。
【
図4】実施形態に係るノードにおけるACK送信処理の動作を示すフローチャートである。
【発明を実施するための形態】
【0025】
(A)主たる実施形態
以下では、本発明に係る通信装置及び通信プログラムの実施形態を、図面を参照しながら詳細に説明する。
【0026】
この実施形態では、例えば、IEEE802.15.4−2006、IEEE802.15.4−2011、IEEE802.15.4g等で規定される規格化技術(以下、これらを含むものをIEEE802.15.4の規格化技術という)を、MAC層に関する技術に採用するZigBeeIP対応の無線通信装置及び無線通信システムに、本発明を適用する場合を例示する。
【0027】
(A−1)実施形態の構成
図3は、この実施形態に係る無線通信システムの構成及び各ノードの内部構成を示す構成図である。
図3において、実施形態に係る無線通信システム10は、複数のノードを有して構成される。
【0028】
図3では、説明を容易にするために、無線通信システム10が、3台のノード2−1、ノード2−2、ノード100Aを有する場合を例示する。ノードの数は特に限定されるものではない。なお、通信装置であるノード100A、ノード2−1及び2−2とは、同一又は対応する構成要素を備える。
【0029】
ノード100Aは、親ノードとして機能するものであり、ノード2−1及び2−2と接続するものである。ノード2−1及び2−2は、親ノードとしてのノード100Aに接続する子ノードである。
【0030】
ノード2−1及び2−2は、暗号化したセキュアフレームを含むパケットをノード2との間で送受信するものであり、送信部21、制御部22、受信部23を有するものである。ノード2−1及び2−2は、ネットワーク参加に関するアクセス制御を行ないネットワークに接続した後、ノード100Aから取得したセキュリティキーを記憶しておき、セキュリティキーを用いてデータを暗号化し、その暗号化したフレームデータを含むパケットを送信する。
【0031】
また、ノード2−1及び2−2は、送信部21の送信処理及び受信部23の受信処理を、所定のスリープ制御により休止するスリープ機能を有する。
【0032】
ノード100Aは、ノード2−1及び2−2から送信されたフレームデータを含むパケットを受信するものであり、受信部11、制御部
12、送信部13を有するものである。ノード
100Aは、例えばZigBee(登録商標)ネットワークを管理するコーディネータとして動作するものである。
【0033】
ノード100Aは、ネットワークに接続するノード2−1及び2−2における暗号化に必要なセキュリティキーを全てのノード2に送信する。また、ノード100Aは、例えばネットワークの再構築のときや所定間隔をもって、セキュリティキーの変更を行うこともでき、セキュリティキーを変更する場合、変更後のセキュリティキーを送信する。
【0034】
図1は、実施形態に係るノード100Aが備える通信装置の内部構成を示す内部構成図である。
図1において、実施形態に係るノード100Aは、アンテナ部131及び132、受信部101、送信部102、MAC(Media Access Control)制御部110、上位層制御部120を有する。
【0035】
ノード100Aは、例えば、CPU、ROM、RAM、EEPROM、入出力インタフェース手段、通信手段等を有する。また、ノード100Aは、CPUがROMに格納される処理プログラムを実行することにより、ノード100Aの機能が実現される。なお、ネットワークを介して処理プログラムをダウンロードしてインストールすることによっても構築することができ、その場合でも処理プログラムは、
図1に示す全部又は一部の機能部としてCPUを機能させるものである。
【0036】
上位層制御部120は、例えば、ネットワーク層、トランスポート層、アプリケーション層等の処理を制御するものである。上位層制御部120は、下位層の制御部であるMAC制御部110を介して受信したフレームを受け取り、そのフレーム種別に応じた対応処理を行う。
【0037】
アンテナ部131は、電波を捕捉して受信信号を受信部
101に与えるものである。また、アンテナ部132は、送信部
102からの送信信号を電波として送出したりするものである。なお、この実施形態では、受信用のアンテナ部131と送信用のアンテナ部132とを別構成とする場合を例示しているが、送受信兼用のアンテナとしても良い。
【0038】
受信部
101は、アンテナ部
131を介して受信した信号を復調してフレームを受信し、そのフレームをMAC制御部110に与えるものである。
【0039】
送信部102は、MAC制御部110の制御を受けて、送信すべきフレームを送信するものである。なお、送信部102は、例えば電波干渉を回避するためにキャリアセンス機能を有しており、電波送出後に、電波干渉がないことを確認した後に送信処理を行なうようにしても良い。
【0040】
MAC制御部110は、例えば、MAC層等の処理を制御するものであり、例えば、ネットワークへの接続処理や接続切断処理、セキュリティ機能、スリープ機能等を制御する。MAC制御部110は、受信部101により受信されたフレームを上位層制御部120に与えたり、上位層制御部120の指示に従って送信すべきフレームを送信部102に与えたりする。MAC制御部110は、フレーム送信の際、送信部102に対して送信制御する。なお、送信すべきフレームは、例えば、データフレームやACKフレーム等がある。
【0041】
また、MAC制御部110は、セキュアフレーム送信元アドレス記憶部111、ACK送信判定部112を有する。
【0042】
セキュアフレーム送信元アドレス記憶部111は、セキュア通信を行なう送信元ノードのノードアドレス情報を記憶するものである。ここで、ノードアドレス情報は、例えば、セキュア通信を行なうノードのMACアドレス等を含む情報とすることができる。なお、セキュアフレーム送信元アドレス記憶部111には、1個の送信元ノードのアドレス情報に限定されず、複数個の送信元ノードのアドレス情報を記憶しても良い。
【0043】
例えば、セキュアフレーム送信元アドレス記憶部111には、ネットワーク層やアプリケーション層等の上位層制御部120から、セキュアフレームの送信元アドレスが入力されて記憶されるようにしても良い。
【0044】
また例えば、IEEE802.15.4ではセキュアフレームの送信元アドレスとして許可されるアドレス情報テーブルが用いられる。そこで、IEEE802.15.4の規格化技術を適用する場合には、上記アドレス情報テーブルをセキュアフレーム送信元アドレス記憶部111として利用するようにしても良い。
【0045】
なお、セキュアフレーム送信元アドレス記憶部111は、ネットワークを再構成する場合に、セキュアフレーム送信元アドレス記憶部111の内容をリセットできるようにしても良い。これにより、例えば停電やソフトウェアの不具合等のような何らかの原因によりノードに障害が発生した場合には、セキュアフレーム送信元アドレス記憶部111の内容をリセットすることができる。
【0046】
ACK送信判定部112は、受信部101からの受信フレームに基づいて、ACKフレームを送信するか否かを判定するものである。ACK送信判定部112は、受信したフレームにACK要求ビットがONになっているか否かを判定する。さらに、ACK要求ビットがONになっている場合に、ACK送信判定部112は、セキュアフレーム送信元アドレス記憶部111を参照し、受信フレームの送信元アドレスがセキュアフレーム送信元アドレス記憶部111に存在するか否かを判定する。
【0047】
そして、ACK要求ビットがONになっており、かつ、受信フレームの送信元アドレスがセキュアフレーム送信元アドレス記憶部111に存在する場合、ACK送信判定部112は、送信元アドレス宛にACKフレームを送信する。一方、ACK要求ビットがOFFになっている場合、受信フレームの送信元アドレスがセキュアフレーム送信元アドレス記憶部111に存在しない場合、ACK送信判定部112は、ACKフレームの送信機能をOFFとする。すなわち、ACK送信判定部112は、ACKフレームの送信機能を制限し、ACKフレームの送信を行なわないようにする。
【0048】
ACK送信判定部112は、セキュアフレーム送信元アドレス記憶部111に記憶されている情報を参照するだけで、ACKフレームを返答するか否かを判断するため、非常に短時間でACKフレームを送信するか否かを判断することができる。
【0049】
(A−2)実施形態の動作
図4は、実施形態に係るノード100AにおけるACK送信処理の動作を示すフローチャートである。
【0050】
ノード100Aにおいて、受信部101が他ノードから送信されたフレームを受信すると(S101)、受信フレームはACK送信判定部112に与えられる。
【0051】
ACK送信判定部112は、受信部101からの受信フレームにACK要求ビットがセットされているか(すなわち、ACK要求ビットがONか否か)を判断する(S102)。このとき、ACK要求ビットがONでないときには、S106に移行して、ACK送信判定部112はACKフレームの送信を行なわない。一方、ACK要求ビットがONである場合、S103に移行する。
【0052】
ACK送信判定部112は、受信部101からの受信フレームのヘッダ情報に含まれる送信元アドレスを抽出し(S103)、その送信元アドレスがセキュアフレーム送信元アドレス記憶部111に存在するか否かを判断する(S104)。
【0053】
セキュアフレーム送信元アドレス記憶部111への送信元アドレスの登録は、例えば、ネットワーク層やアプリケーション層等においてセキュア通信が許可されたノードのノードアドレスが、セキュアフレーム送信元アドレス記憶部111に記憶されるようにしても良い。この場合、セキュアフレーム送信元アドレス記憶部111は、セキュアフレームを送信するノードのMACアドレスや、当該ノードが属するPANID(Personal Area Network ID)等を記憶するようにしても良い。また、ノード100Aが配布するセキュリティ情報(例えばセキュリティキー等)を送信元アドレス情報に対応付けるようにしても良い。
【0054】
ACK要求ビットがONであり、かつ、受信フレームの送信元アドレスがセキュアフレーム送信元アドレス記憶部111に存在する場合、ACK送信判定部112は、当該受信フレームの送信元アドレスを、ACKフレームの送信先アドレスに書き換えて、受信フレームの送信元アドレス宛にACKフレームを送信する(S105)。
【0055】
一方、受信フレームの送信元アドレスがセキュアフレーム送信元アドレス記憶部111に存在しない場合、ACK送信判定部112は、当該受信フレームの送信元アドレス宛のACKフレームを送信しない(S106)。具体的には、ACK送信判定部112は、ACKフレームの送信機能をOFFにする。
【0056】
ノード100Aに障害がありリセットした場合に、ノード100Aはネットワークへの接続処理を行ない、ネットワークの再構築を行なう。この場合、ノード100Aに接続していた子ノード2も新たなネットワークへの接続処理を行ない、セキュリティ情報の更新(変更)を行ない、セキュアなフレーム通信を可能とすることができる。
【0057】
また、ノード100Aに接続していた子ノード2がスリープ中に、ノード100Aがネットワークの再構築を行なった場合、セキュアフレーム送信元アドレス記憶部111の内容が一旦リセットされる。そのため、スリープノードからノード100AにACK要求ビットを含むフレームが送信されても、ノード100Aは、当該スリープノード宛のACKフレームを送信しない。これにより、スリープノードはACKタイムアウトを検出することができるため、その後、ノード100Aに対して新たなネットワークへの接続処理を行ない、
ネットワークに再ジョインすることができる。
【0058】
(A−3)実施形態の効果
以上のように、この実施形態によれば、セキュア通信が許可された送信元アドレス以外からのフレームに対して、ACKフレームの返答を行なわないようにすることができる。その結果、スリープノードでもネットワーク更新後、すぐに通信ができないことを検知して、親ノードがネットワークヘ再ジョインしたことを検知でき、ネットワークヘの再ジョイン等をとることができる。
【0059】
また、この実施形態によれば、ACKを返すか返さないかの判定はテーブルを参照するだけなので、復号することに比べて非常に短期間で実施できる。
【0060】
(B)他の実施形態
上述した実施形態においても種々の変形実施形態を言及したが、本発明は、以下の変形実施形態にも適用することができる。
【0061】
(B−1)上述した実施形態では、MAC制御部がソフトウェア処理により、ACKフレームを送信するか否かを判断し、ACKフレームの送信機能の制限を行なう場合を例示した。しかしながら、本発明は、セキュアフレーム送信元アドレス記憶部のテーブル参照のみでACKフレームを送信するか否かを判断することができるため、例えば、物理層の処理を行なうRFLSI等のハードウェアで実現可能である。
【0062】
(B−2)上述した実施形態では、IEEE802.15.4−2006、IEEE802.15.4−2011、IEEE802.15.4g等で規定される規格化技術を含むIEEE802.15.4の規格化技術を、ZigBee仕様のMAC層に採用する場合を例示した。
【0063】
IEEE802.15.4の規格化技術は、上記のIEEE802.15.4−2006、IEEE802.15.4−2011、IEEE802.15.4gの規格化技術に限定されるものではない。例えば、IEEE802.15.4−2006、IEEE802.15.4−2011、IEEE802.15.4gの規格化技術を拡張したものや、他の通信方式に関する技術にも適用することができる。
【符号の説明】
【0064】
10…通信システム、100A…通信装置、110…MAC制御部、101…受信部、102…送信部、111…セキュアフレーム送信元アドレス記憶部、112…ACK送信判定部、120…上位層制御部、131及び132…アンテナ部。