スマートホーム向け有線/無線相互補完通信に関す る研究
著者 遊佐 直樹
発行年 2017‑06
出版者 静岡大学
URL http://doi.org/10.14945/00024347
静岡大学博士論文
スマートホーム向け有線 / 無線相 互補完通信に関する研究
遊佐 直樹
大学院自然科学系教育部 情報科学専攻
2017 年 6 月
1
序論
2
目次
序論 ... 4
相互補完通信プロトコル(MCCP: Mutual Complementary Communication Protocol) ... 6
2.1 プロトコル概要 ... 7
2.2 マルチインターフェース通信 ... 10
2.3 自律ネットワーク構築 ... 12
2.4 動的ルーティング ... 14
相互補完通信における環境変化に追従可能な DODAG ルーティング メトリクスの研究 ... 20
3.1 概要 ... 20
3.2 関連研究 ... 22
(1) RPL ... 22
(2) 相互補完通信 ... 24
(3) RPLの改良研究 ... 24
3.3 Link Leap / sLump Detection ... 25
(1) 環境変化の検出 ... 25
(2) 環境変化の反映方法 ... 29
(3) 環境変化タイミング ... 31
3.4 評価 ... 32
(1) 評価環境 ... 32
(2) 評価手法 ... 35
(3) 評価結果 ... 37
3.5 まとめ ... 41
無線とPLC を用いた相互補完通信向けルーティングメトリクス MCETX の実証実験 ... 42
4.1 まえがき ... 43
4.2 関連研究 ... 45
プロトコル概要
3
(1) 過酷な環境向けルーティングプロトコル ... 45
(2) RPLの改良研究 ... 46
(3) PLC通信とRF通信の併用 ... 46
4.3 MCETX の提案 ... 48
4.4 MCETX の実環境での評価 ... 52
(1) 基礎評価 ... 52
(2) MCETXの効果検証実験 ... 55
(3) PLC通信品質との関係 ... 58
(4) 親ノードの選択頻度 ... 59
4.5 まとめ ... 62
結論 ... 64
謝辞 ... 67
参考文献 ... 69
研究業績 ... 75
序論
4
序論
近年,センサ技術と無線ネットワーク技術の急速な発展により,無線センサネッ トワークから収集された情報を利活用するシステムが開発されている.特に,セン サの低コスト化と小型化,無線ネットワークの通信容量と通信速度の向上によって,
現 実 世 界 の 様 々 な モ ノ を イ ン タ ー ネ ッ ト に 接 続 す る Internet of Things(IoT)
[1][2][4][4] が実現可能となった.一方,地球温暖化などの環境問題や電力不足等の
エネルギー問題への取り組みが盛んになり,人々の関心も高まってきている.その ような状況の中,世界各国ではスマートグリッドやスマートハウスに対する取り組 みが進んでいる.特に日本に関しては,地球温暖化の原因となる CO2 の排出量削 減という目的を実現するためにスマートハウスの取り組みが進められている[5].
スマートハウスは大きく分けると3つの中核技術から構成される.それらは,ス マートメータ,HEMS (Home Energy Management System) ,蓄電池や家電などのエ ネルギー端末である.これらの技術が互いに連携することで,宅内におけるエネル ギー消費の削減や再生可能エネルギーの効率的な利用が可能となる.特に HEMS は,以下の 2点において重要な役割を担う.一つは,宅内全体のエネルギー供給や 需要の状況を総合的に把握し,その情報を家庭内の利用者に可視化させることで利 用者の省エネ行動を喚起させることである.もう一つは,宅内の家電製品や設備を 遠隔から自動的に制御し,家庭内全体の効率的なエネルギー利用を促すことである.
HEMSが以上の役割を果たすために最も重要となる技術の一つとして,センサネッ トワークが挙げられる.
HEMSやスマートハウスを実現するには,環境情報を収集するためのセンサネッ
プロトコル概要
5 トワークが必要となるが,敷設の容易性,拡張性,および通信の信頼性,安定性が 要求される.センサネットワーク構築に用いられる通信媒体として,ネットワーク 構築のための新しい通信線を必要とせず敷設の容易性や拡張性から,電力線通信
(PLC: Power Line Communication)や無線(RF: Radio Frequency)通信が注目されて いる.しかし,PLCや RFは,電波干渉や外来ノイズによって,通信品質が動的に 大きく変動する特性を持ち,ネットワークの信頼性,恒常性を確保することが大き な課題である.センサネットワークにおける効率的なルーティングプロトコルに関 する研究は種々存在するが[6],それらプロトコルの多くはRFのみを用いたマルチ ホップ環境において,最短経路を選択するものである.そのため,本研究で想定す る PLC と RF のような複数の異なる通信媒体を併用できるネットワークにおいて は,これら研究成果は必ずしも適合しない.特に,多くの既存センサネットワーク のルーティングプロトコル研究では,目的端末までに要するホップ数,あるいは距 離コストの加算結果を元に最短経路の選択が行われるため,各径路で利用した通信 媒体の種類やその特性は考慮されない.また,ルーティングの際に用いられる経路 の安定性や品質などの指標となるルーティングメトリクスも種々研究開発されて いる.例えば,ETX (Expected Transmission Count)や LQI (Link Quality Indicator) な ど代表的なものがあるだけでなく,通信経路の残存帯域幅とフレーム到達率,端末 の負荷などと既存ルーティングメトリクスを組合せることで,各々のルーティング メトリクスを単体で用いるよりも通信品質が向上することを示した研究もある.
本研究では,PLC通信とRF通信を相互補完的に利用するネットワークを想定し て研究開発の進められてきたMCCP (Mutual Complementary Communication Protocol)
[7][8] を想定し,異なる通信媒体を適切に利活用することでマルチホップ通信の到
達率を向上させるルーティングメトリクスについて研究を行った.以下,第 2 章で MCCP について述べ,第 3 章で相互補完通信における環境変化に追従可能な DODAG ルーティングメトリクスについて説明する.その後,第 4 章で新たに研究開発した 無線と PLC を用いた相互補完通信向けルーティングメトリクス MCETX とその実証 実験結果について述べ,第 5 章で本研究成果についてまとめる.
相互補完通信プロトコル(MCCP: Mutual Complementary Communication Protocol)
6
相互補完通信プロトコル( MCCP:
Mutual Complementary Communication Protocol )
本研究で想定する MCCP (Mutual Complementary Communication Protocol) [7][8]
は,屋内のセンサネットワークに適用することを想定している.既存の屋内センサ ネットワークは,有線通信もしくは無線通信それぞれ単体の通信媒体で構築された ネットワーク,または無線通信の経路を有線通信の経路でブリッジする形になるこ とが多い.屋内という環境下においては,有線通信と無線通信のいずれも以下の問 題を抱える.有線通信を用いる場合,まず初めに通信線が建物内に敷設されている 必要がある.特に通信インフラが整っていない建物に対しては,新しい通信線を敷 設する必要があるため,そのための設置工事やコストがかかってしまう.一方の無 線通信に関しては,建物内には無線通信の電波を遮る障害物が多く存在する.特に,
建物全体で通信をする場合には通信経路上に壁や天井など大きな遮蔽物が存在す るため,通信の安定性を大きく阻害してしまう.これら相互の通信における欠点を 補完し合い,安定した拡張性の高いネットワークを構築することが,MCCP の狙い である.
また,MCCP で用いる通信インターフェースとして,有線通信には 電力線通信
(以下「PLC通信」という),無線通信には IEEE 802.15.4 (以下「RF通信」とい う)の利用を想定する.PLC 通信 の通信媒体である電力線は,一般的に電気を利 用する建物であれば既に敷設されているため,新たな通信線を敷設するためのコス トがかからない.しかし,電力線は家電などと共有して利用されるため,家電から 生じるノイズによって PLC 通信が阻害されてしまう場合がある.また,分電盤を
プロトコル概要
7 介した通信では PLC 通信の信号が著しく減衰してしまう.このように PLC 通信 だけでは通信が不安定になってしまう部分を,RF 通信を用いることによって通信 の安定性を高めることが可能である.一方,RF 通信では通信が不安定になってし まう壁越しや天井越しの通信を,PLC 通信 がその経路をカバーすることで通信の 安定性を高められると考える.
2.1 プロトコル概要
MCCP のネットワークトポロジの構成例を図 2.1 に示す.MCCP ネットワーク
は,ルータとエンドデバイスと呼ばれる 2 種類の論理デバイスから構成される.
ネットワーク内のルータは,1 ホップ近隣のエンドデバイスを管理するための局所 的なネットワーク,サブネットを構築する.ルータとエンドデバイスはスター型の ネットワークを構築し,ルータ間はメッシュ型のネットワークを構築する.ネット ワーク内には必ず 1 つのルータがルートノードとして,ネットワーク全体の管理 を行う.各ルータにはユニークなサブネット ID が割り当てられ,ID の割り当て はルートノードが行う.表 2.1 に,各ルータが持つサブネット情報の一覧を示す.
ルータはネットワーク上のアドレスを管理し,またネットワーク上に流れるパ ケットをルーティングする.一方,エンドデバイスは,自身が参加するサブネット を管理するルータに対して,パケットの送受信のみを行う.MCCP ネットワークに
図2.1 MCCPのネットワークトポロジ
相互補完通信プロトコル(MCCP: Mutual Complementary Communication Protocol)
8
おいて,エンドデバイスはアドレスの管理やパケットのルーティングを一切行わな い.これにより,エンドデバイスは大きなメモリ領域や高度な処理能力を持つ必要 がなくなる.また,パケットのルーティングを行う必要もないため,自身の送受信 に必要な時間以外は活動する必要がなく,周期的なスリープ動作を可能とする.
表2.1 サブネット情報(通信インターフェースがIEEE802.15.4とPLCの場合)
図2.2 オーバーレイ構造
プロトコル概要
9 1 つのルータが PLC通信 と RF通信 の複数の通信インターフェースを持つ場
合,図 2.2 の下の 2 つのように別々のネットワークトポロジが構成される.この
時,各ルータは PLC通信 と RF通信の両方の物理アドレスを持っていることにな る.MCCP では,この 2 つのアドレスを 1 組として 1 つのユニークな ID であ るサブネット ID を生成する.このサブネット ID を利用したアドレス管理をする ことで,ネットワーク全体を PLC 通信 と RF通信 の経路が混合したオーバーレ イ構造として捉えることができる.このアプローチは,MCCP を利用するユーザア プリケーションに対して,通信時に実際に利用する通信インターフェースを意識さ せることなくネットワーク通信を利用可能にし,アドレス管理を容易にするための ものである.
MCCPネットワーク上でやり取りされるデータ,プロトコルデータユニットの
構造は図 2.3 のようになっている.先頭から 8 バイトの情報はすべてのデータに
共通なヘッダ部分であり,‘Packet type’ によってペイロード部分のフォーマット
図2.3 プロトコルデータユニット(PDU)
相互補完通信プロトコル(MCCP: Mutual Complementary Communication Protocol)
10
が変化する.‘Packet type’ が ‘Normal Packet’ の場合,ペイロード部は任意の バイト数分,ユーザアプリケーション側でやり取りするための情報が格納される.
‘Packet type’ が ‘Join Packet’ や ‘Hello Packet’ などプロトコル側で処理す る種類の場合,ペイロード部は MCCP によって定義された情報を格納するために 利用される.
2.2 マルチインターフェース通信
MCCP はパケットを転送する際,ノードが持つ複数の通信インターフェースか
ら,その時々の状況に適したインターフェースを選択し利用する.図 2.4 は,実際 に PLC 通信 と RF 通信 を持つノードを使った場合の,パケット転送の例を示し ている.ノード A がノード B にパケットを転送する際,ノード A は RF 通信で はなく PLC 通信を利用して転送を行っている.これは,ノード A が,ノード B への RF 通信は壁などの障害物によって通信品質が悪くなっていると判断し,比 較的通信品質の良い PLC 通信を利用するためである.一方,ノード B がノード C にパケットを転送する際,ノード B はノード C に対して PLC 通信ではなく RF 通信を利用して転送している.ノード B とノード C の電力線が物理的につな がっておらず,両者は PLC通信 で通信することが不可能と判断したため,ノード B はノード C へ RF 通信を使って転送を行っている.ノード C がノード D へ パケットを転送する際,両社は互いに RF通信,PLC 通信 の両通信が可能となっ ている.そのため,ノード C は RF通信 もしくはPLC通信 のどちらか一方の通
図2.4 マルチインターフェース通信によるパケット転送例
マルチインターフェース通信
11 信品質が良い方を選択して転送を行うことができ,もしくは両方の通信を同時に使 って転送できる.
マルチインターフェース通信において両方の通信を同時に使って転送する場 合,注意しなければならないことがある.それは,MCCP を適用するネットワーク が,シンクノードを 一つのみ持つセンサネットワークのように,ある一か所に向 かってトラフィックが集中するようなシチュエーションが想定される場合にある.
データ送信を行うノード数が多いセンサネットワークにおいては,シンクノードに 近いノードほどトラフィック量が大幅に増えてしまう.通信帯域幅や通信速度,処 理能力が制限されているようなセンサネットワークでは,このようなトラフィック 増加はパケットの衝突や処理力不足によってパケットの欠損を招きやすい.これに 付随して言えることは,ノードのパケット転送に再送やAck を利用してしまうと,
同じようにトラフィックの増加を招いてしまうということである.しかし,パケッ ト 一つ一つを確実に転送させたいアプリケーションを想定する場合には,再送や Ack の利用も考慮に入れる必要があるため,ネットワークの利用シーンによって柔 軟に対応する必要がある.本研究では,再送や Ack の実装に関しては検討中であ る.
図2.5 ルートノードまで 1ホップのネットワーク参加処理
相互補完通信プロトコル(MCCP: Mutual Complementary Communication Protocol)
12
2.3 自律ネットワーク構築
多数のノードを利用するネットワークを構築する場合,個々のノードに静的な ネットワーク設定を行うには非常に手間がかかる.そのような場合,ノード自身が 自律的にネットワークに参加し,自動的にトポロジを構成していく方法をとること が望ましい.MCCP では,新規ノードのネットワーク参加時に以下の 5 つのメッ セージを用いて,自律的にネットワークを構築する.
• DISCOVER 新規参入可能なネットワークを探索
• ADVERTISE 参入可能なネットワークがあることを新規ノードに通知
• JOIN 参入するネットワークのルートノードに対しネットワーク参加を要求
• OFFER 新規ノードのネットワーク参入を許可
• CONFIRM ネットワーク参加が完了したことをルートノードに通知
以下に,新規ノードがネットワーク参加する際の手順を述べる.図 2.5 及び図 2.6 はそれぞれ,ルートノードと新規ノード間が 1 ホップの時,また 2 ホップ以上の 時の処理の流れである.
図2.6 ルートノードまで2ホップ以上のネットワーク参加処理
自律ネットワーク構築
13 新 規 ノ ー ド は 起 動 時 に ,DISCOVER メ ッ セ ー ジ を ブ ロ ー ド キ ャ ス ト す る .
DISCOVERメッセージを受信したノードは,自身が新規ノードの 1 ホップ近隣に
存在していることを確認できるので,ADVERTISE メッセージをブロードキャスト
する.ADVERTISE メッセージには,自身のルートノードまでのホップ数を含める.
この情報は,新規ノードが一定時間内に複数の ADVERTISE メッセージを受信し たときに,以降のネットワーク参加処理で利用する中継ノードを選択するために使 う.新規ノードが受信した ADVERTISEメッセージの中に,ルートノードが送信元 のメッセージがある場合,以降のネットワーク参加処理はルートノードと直接メッ セージのやり取りを行う.一方,ルートノードが送信元のメッセージがなかった場 合,つまり,新規ノードとルートノードが 2 ホップ以上離れている場合,受信し
た ADVERTISE メッセージの中から,ルートノードまでのホップ数が一番少ない
ノードを,以降のネットワーク参加処理の中継ノードとして選択する.ルートノー ドまでの経路が確定すると,新規ノードは JOIN メッセージをルートノード宛てに ユニキャストする.中継ノードが JOIN メッセージを受信した場合は,そのメッセ ージに関して何も処理をせずにそのままルートノードまで転送する.JOIN メッセ ージを受信したルートノードは,新規ノード用に新しいサブネット ID を発行し,
新規ノードを自身のルーティングテーブルへ登録する.そして,新規ノード用に発 行したサブネット ID を割り当てるために,OFFER メッセージを新規ノード宛て にユニキャストする.この時,中継ノードが OFFER メッセージを受信した場合,
そのメッセージに関しては何も処理せずに新規ノード宛てに転送する.OFFER メ ッセージを受信した新規ノードは,ルートノードから割り当てられたサブネット ID を自身のサブネット ID として登録する.その後,登録完了をルートノードへ 通知するために,CONFIRM メッセージをルートノード宛てにユニキャストする.
中継ノードが CONFIRM メッセージを受信した場合,新規ノードの情報を自身の ルーティングテーブルに登録し,メッセージはルートノードへ転送する.CONFIRM メッセージを受信したルートノードは,新規ノードの情報を自身のルーティングテ ーブルへ登録する.以上で,新規ノードのネットワーク参加処理が終了となる.
ネットワーク参加処理が終了したノードは,近隣ノードの生存を確認するために 定 期 的 に HELLO パ ケ ッ ト と 呼 ば れ る メ ッ セ ー ジ を ブ ロ ー ド キ ャ ス ト す る .
HELLO パケットは,1 ホップ近隣のノードを探索するときに利用されるメッセー
相互補完通信プロトコル(MCCP: Mutual Complementary Communication Protocol)
14
ジである.HELLO パケットの送信は各ノードがそれぞれ持つ通信インターフェー ス毎に行い,近隣ノードのどの通信インターフェースが生存しているかを確認する.
HELLO パケットが一定時間受信されなかった近隣ノードのインターフェースは
通信が断絶したとみなし,その近隣ノードの全インターフェースの通信が途絶えた 場合はルーティングテーブルから登録を抹消する.環境の変化などによって通信が 復活した場合は,その時の HELLO パケットの情報によってルーティングテーブ ルへ再登録する.
表 2.2 にルーティングテーブルのフィールド一覧を示す.
2.4 動的ルーティング
無線通信など周囲の環境によって通信が不安定になりがちな通信媒体を利用 してネットワークを構築する場合,通信の状況に合わせた適切なルーティングを行 う必要がある.更に,複数の通信インターフェースを用いてネットワークを構成す る場合,1 つの通信インターフェースでネットワークを構成する場合よりも,経路 が複雑に入り混じる.この複雑に入り組んだ経路の組み合わせから,目的のノード まで効率よくデータを届けられるような経路を,不安定な通信状況に応じて探索し なければならない.MCCP は,以下に記す DODAG の考え方を用いてルーティン グを行う.但し,MCCP の場合,各ノードが複数の通信インターフェースを持つた め,各ノード間には最大,通信インターフェースの個数分重複する経路が発生する.
重複経路が存在する場合でも,DODAG の構築が問題なく行われ,ルーティングが できるかどうかを,実験によって確認する必要がある.
表2.2 ルーティングテーブルのフィールド情報
動的ルーティング
15
RPL は,IETF の ROLL ワーキンググループが標準化を進めている,過酷な環
境下にあるネットワーク(LLNs:Low power and Lossy Networks)向けのルーティ ングプロトコルである.LLNs の Low power とは,ネットワークを構成するルー タ自体の処理能力やメモリ,バッテリのエネルギー消費などに制限があることであ
る.一方 Lossy は,それら制限のあるルータ同士が相互に通信を行う場合,高頻度
なデータ損失,低速な通信,通信の不安定性が伴うことを示す.このような Lossy な通信は,特に IEEE 802.15.4 や低出力の Wi-Fi などの無線通信を用いた場合に 発生しやすい.LLNs は以上の特徴を持つことに加え,ネットワーク上のトラフィ ックパターンが 1 対 1 の通信以外にも,多対 1 や 1 対多など様々なトラフィッ クが発生する.
ROLL ワーキンググループの Levis らは,ドラフト [13] の中で,既存のルー
ティングプロトコルである OSPF,OLSR,DSR などに関して,LLNs 環境下にお ける性質的な評価を行っている.その評価によると,既存のどのルーティングプロ トコルも,LLNs 環境下においてはその条件を満たすものが存在しないため,ROLL ワ ー キ ン グ グ ル ー プ は RPL を 提 案 し た と さ れ る . よ っ て , 我 々 が MCCP の
DODAG を用いたルーティングの評価を行う際には,既存のルーティングプロトコ
ルとの性能比較は行わず,ルーティングメトリクス測定パラメータの変更や条件の 組み合わせによる性能の変化について,ルーティングメトリクス毎の比較を行う.
図2.7 DAGとDODAG
相互補完通信プロトコル(MCCP: Mutual Complementary Communication Protocol)
16
既存のルーティングプロトコルでは対応できない過酷な環境である LLNs に 対して,RPLは,ネットワークの基本的なトポロジ構成として DODAG の考え方 を採用している.図 2.7の左側は閉路のない有向グラフ,DAG の一例を示してい る.一方,図 2.7 の右側は,到達点が 1 つのみの閉路のない有向グラフ,DODAG である.この両者の違いは,矢印の示した先の最終的な到達点が複数あるか 一つ のみかである.この DODAG が形成するトポロジは,シンクノードがただ 1つ存 在するセンサネットワークのトポロジと同じである.
DODAG を構築する際には,各ノードにランクという,ルートノードに対する
各ノードの相対的な距離のような指標を用いる.ランクの値はルートノードの値を 基準として,ルートノードから距離が遠いノードほどランクの値が増加していく.
各ノードのランクの計算は,基本的に以下の 式2.1 に基づいて計算する.
この計算式では,あるノード n のランクは,ある近隣ノード p のランクに n, p 間のメトリック値を足した値の中から最小となる値を求める.最小となる値が求 められた時のノード p が,ノード n の親ノードとして決定される.
以上のランク計算を用いた DODAG 構築は,RPL が新しく定義した 3 つの RPL 制 御 メ ッ セ ー ジ ,DIO(DAG Information Object),DIS(DAG Information Solicitation),DAO(Destination Advertisement Object)をやり取りすることによって 行われる.DIO メッセージには自身のランク値など DODAG 構築に必要な情報が 含まれ,このメッセージをノード間でやり取りすることにより DODAG 上の親ノ ードの決定を行っていく.DIS メッセージは,近隣のノードから DIO メッセージ の送信を要求する際に用いる.DAO メッセージは,子ノードの情報を DODAG の 親ノードに対して伝搬させながら末端ノードの情報を伝達するものである.
以下に,図 2.8~図 2.12 を使いつつ実際の DODAG 構築例を示す.図中の丸 はノードを表し,丸の中の数字はノードのランクを表す.最初,ルートノード以外 は自身のランクを無限大で初期化している.また,各リンクに添えてある数字はリ ンクのメトリック値を表す.まず,図 2.8 のようにルートノードが近隣の 3 ノー
( ) = min( ( ) + ( , ))
(2.1)
動的ルーティング
17 ドに,自身のランク値 0 の情報を含んだ DIO メッセージをブロードキャストす る.すると,図 2.9 のように,左側のノードのランクは 0+1 で 1 に,真ん中と右 側のノードはそれぞれ 3 と 2 に計算される.この時,これら 3 つのノードは他 のノードからの DIO メッセージを受信していないため,ルートノードをそれぞれ 自身の親ノードとして選択し,DAO メッセージを送信する.次に,左側のランク が 1 のノードが DIO メッセージを送信する場合について述べる.図 2.10 のよう に,現在のランクが1のノードは周囲の近隣ノードに対して,自身のランク値1の 情報を含んだ DIO メッセージをブロードキャストする.この時,ランクが 3 のノ ードは,ランクが 1 のノードからの DIO メッセージによって,自身のランクが 1+1 で 2 に計算される.この値は,最初にルートノードの DIO メッセージから計 算されたランク値 3 よりも小さいため,自身のランクを 2 に設定し,親ノードと してランクが 1 のノードを選択する.そして,図 2.11 のように,ランクが 2 に 更新されたノードとランクが 8 のノードはランクが 1 のノードに DAO メッセ ージを送り,更にランクが 1 のノードはルートノードへ DAOメッセージを送る.
以上のように,それぞれのノードが DIO メッセージをやり取りすることによって,
今回の例では図 2.12 のような DODAG が構築される.
DIO の送信周期は,RPL では Trickle アルゴリズム [14] を用いたタイマを利 用して決定している.Trickle アルゴリズムを用いたタイマを Trickle タイマと呼
ぶ.Trickle タイマは,ネットワークの通信が安定している間はタイマ設定時間が
長くなり,不安定な間は設定時間が短くなるタイマである.この仕組みにより,通 信が不安定な時は DODAG 再構築のための DIO メッセージが高頻度に発生し,
DODAG 構築が迅速に行われ,通信が安定しているときは DIO メッセージをほと
んど発生させず,余計なトラフィックを抑えることができる.
RPL では,DODAG 構築を行う際に用いるメトリクスに関して,どのようなメ
トリクスを使うことが LLNs 環境下に適しているかは決められていない.それは,
メトリクスにも種類が様々あり,性質も異なるため,どのメトリクスがルーティン グに適しているかはアプリケーションや環境依存になることが多いからである.本 研究で想定する PLC/RF の混在するネットワークに関しても,どのメトリクスを 利用すればよいかは分かっていないため,様々なメトリクスを用いた実験をして,
PLC/RF混在環境に適したメトリクスを明確にする必要がある.
相互補完通信プロトコル(MCCP: Mutual Complementary Communication Protocol)
18
図2.8 DIO送信(1) 図2.9 ランク計算,DAO送信(1)
図2.10 DIO送信(2) 図2.11 ランク計算,DAO送信(2)
動的ルーティング
19 図2.12 DODAG完成例
相互補完通信における環境変化に追従可能なDODAGルーティングメトリクスの研究
20
相互補完通信における環境変化に 追従可能な DODAG ルーティングメトリ クスの研究
我々は有線通信と無線通信を組み合わせた MCCP を提案してきた.MCCP では ルーティング処理に DODAG ルーティングを用いることでデータ収集率の向上を 図っている.しかし,急峻な環境変化に対しDODAGの更新が間に合わず,データ 収集率の低下を招いている.そのため,DODAGの更新が通信環境の変化に追従可 能であれば,通信到達率が向上すると考える.本研究では,通信環境の変化を検出,
反映させる LLD(Link Leap/sLump Detection)を提案する.最適な経路が時間ごとに 切り替わるようなシミュレーション環境でのデータの収集率が,従来方式では60%
弱であったが,LLD では 90%まで向上させることができた.本提案方式を用いる ことで,センサネットワーク等でのデータ収集率を飛躍的に向上させることが可能 である.
3.1 概要
近年,電力不足などのエネルギー問題や,地球温暖化などの環境問題などへの 人々の関心が高まってきている.そのような状況の中,スマートハウスやスマート グリッドに対する取り組みが進んでいる [1] [9][10] [11].スマートハウスはスマー トメータ,HEMS(Home Energy Management System), 家電等のエネルギー端末から 構成されている.これらが連携することで,エネルギーを効率的に使用することが できる.特に HEMS では,電化製品の遠隔制御によるエネルギーの効率的な利用
概要
21 や,宅内エネルギーの可視化による省エネ行動を喚起させることができる.HEMS が以上の役割を果たすために最も重要となる技術の一つとしてセンサネットワー クがある.センサネットワークにおいて,次の 2 点が導入にとって重要なポイン トとなっている.それらは,通信インフラの整備と,通信信頼性の 2 点である.
通信インフラの整備では,既存建築物への新規インフラの敷設が必要になった場 合,コストの面から考えて困難である.このため,新規のインフラを必要としない 通信媒体として,RF 通信 (Radio Frequency) や,既存電力線を利用した PLC 通信
(Power Line Communication) が挙げられる.しかし,これらの通信媒体を使用する
際の課題として,通信信頼性の不安定さがある.RF 通信では電波干渉や障害物,
PLC 通信では電化製品の外来ノイズや信号吸収等の通信阻害要因により,通信の 信頼性を保つことが困難である.そのため当研究室では,RF 通信と PLC 通信を 相互補完的に利用するネットワーク(相互補完通信)[12] を提案してきた.通信阻 害要因が異なる通信媒体を使用することで,ネットワーク通信の信頼性を向上させ ることが可能であると考える.また,通信環境の変化に合わせ動的にルーティング を行うことにより,さらなる性能の向上が可能であると考える.
相 互 補 完 通 信 で は 通 信 プ ロ ト コ ル と し て ,MCCP(Mutual Complementary Communication Protocol) [12] を使用する.MCCP では,ルーティング部に DODAG
(Destination Oriented DAG:無 閉 路 有 向 グ ラ フ) を 用 い た ル ー テ ィ ン グ ( 以 下 ,
DODAG ルーティング)を使用する.DODAG ルーティングは IETF のワーキング
グループの一つ,ROLL(Routing Over Low power and Lossy networks)ワーキンググル ープが標準化を進めているルーティングプロトコル,RPL(IPv6 Routing protocol for Low Power and Lossy Networks)[13] で採用されているルーティング方式である.
DODAG ルーティングでは,通信環境や通信端末の性能など,さまざまな指標を経
路選択に使用することが可能である.また,DODAG ルーティングでは,通信環境 が安定している場合,ルーティング更新間隔を延長し,通信量を減らしている.そ のため,通信環境が安定した状態が続いた場合,不安定な状態へと変化した際に,
DODAGルーティングに反映されるまでの時間が長くなってしまい,その間の通信
信頼性が低下するという現象が発生してしまう.
本章では,DODAG の更新を通信環境の変化に追従させることで,通信到達率の 向上を目的とした,LLD(Link Leap/sLump Detection) を提案する.LLD は環境変化
相互補完通信における環境変化に追従可能なDODAGルーティングメトリクスの研究
22
の検出と環境変化の反映で構成される.環境変化の検出では,近隣探索を用いるこ とで通信環境の低下などの通信環境の変化を検出する.環境変化の反映では,環境 変化の検出での結果をもとに DODAG ルーティングへと反映させる.環境変化の 検出と反映を行うことで,安定した通信環境が続いた状態から,不安定な状態へ変 化した際の DODAG ルーティングへの反映時間を短縮し,通信信頼性の低下を抑 制することで,通信到達率の向上を目指す.LLD は,特に異なる環境変化の特性
を持つ RF 通信と PLC 通信の通信経路が混在した環境に適した手法である.
本章は,全 5 節で構成される.次の第 2 節では,関連研究とその課題について 述べる.第 3 節では提案手法について述べる.第 4 節では,評価について述べ,
最後に第 5節にて結論と今後の課題についてまとめる.
3.2 関連研究
(1) RPL
RPL は IETF の ROLL ワーキンググループで策定されている,省電力,高損失
環境向けのルーティングプロトコルである.RPL ではルーティングに DODAG ル ーティングを採用している.DODAG は DAG(Directed Acyclic Graph) に一つのル ートノードを追加したグラフである.RPL では各ノードはランクと呼ばれる指標 を持ち,各ノード間は親と子の関係を持つ.各ノードは,通信可能なノードのうち,
もっともランクの低いノードを親として選択し,情報伝達時の経路として使用する.
親となるノードの選択には,親のランクにその親とのメトリクスを加えた値を比較 し,親のうち最も値の低い親を選択し,その値を自身のランクとする.式 (3.1) に ランク計算式を示す. は,各親とのランク増加量を示し,通信環境や,
端末状態などをもとに計算する.RPL では,ランク計算時に使用するメトリクスに つ い て は 指 定 し て い な い た め , 様 々 な メ ト リ ク ス を 使 用 す る こ と が で き る . の計算式を変更することで,異なる特性を持った DODAG ルーティン グを行うことができる.また,ルートノードは必ず DODAG 内で最も低いランク
= min
∈ ( + )
(3.1)
関連研究
23 を持つ.
親の持つ情報は DIO(DODAG Information Object) メッセージを用いて,他ノード に伝達する.また,DIO メッセージを受け取ったノードは親の選択を行うが,自身 より高いランクからの DIO メッセージは無視する.以上のやり取りによって,ル ートノードまでの上りの経路を決定できる.
親を選択した際,選択した親に対し DAO(DODAG Advertisement Object) を送信 する.DAO メッセージを受け取ったノードは,送信したノードを子ノードとして 登録し,各ノードは自身の親に対し受信した DAO メッセージを転送する.以上の やり取りによって,特定のノードまでの下りの経路を決定できる.
DIO メッセージは,通信経路の安定している環境では送信間隔を延長すること でトラフィック増加を防いでいる.この手法はトリクルタイマ [14] と呼ばれ,DIO メッセージを受け取った際,経路情報に変化がなければ,次回送信までの時間を2 倍にする,というように,安定した通信環境であれば,DIO の送信間隔は指数関数 的に増大し,トラフィックの増加を防げる.しかし,送信間隔が長期の場合,その 間の通信環境の変化が反映されなくなる現象が生じる.ただし,通信経路に変化が あった場合,次回送信までの時間を初期値に戻すことで,DODAG の更新頻度を高 くするが,安定した環境では,DIO 送信間隔が長くなり,新規参加ノードが DIO メッセージを長時間受け取ることができなくなる.そのため,新規参加ノードは DIS(DODAG Information Solicitation) メッセージを発行し,DIO メッセージを要求 することで,新規参加ノードは短時間で DODAG に参加ができるようになる.
図3.1 MCCPデバイスの実機とプロトコルスタック
相互補完通信における環境変化に追従可能なDODAGルーティングメトリクスの研究
24
(2) 相互補完通信
相互補完通信は電力線と無線を用いることで,通信を相互補完的に利用する通 信方式である.通信阻害要因の異なる RF と PLC の通信を組み合わせて利用する ことで,ネットワーク通信の安定性,信頼性を高めることが可能となる.相互補完 通信では,通信デバイスとして図 3.1 の A に示す MCCP デバイス [15] を使用す
る.MCCP デバイスは,通信インターフェースとして電力線通信の PLC 通信と無
線通信の IEEE802.15.4 を採用している.相互補完通信のための通信プロトコルで
ある MCCP は,図 3.1 の B に示す機能モジュールによって構成され,ネットワ ーク参加処理やルーティング処理などを行う.
MCCP では,ネットワーク参加処理と,ルーティング処理があり,ルーティング
処理では DODAG を用いた DODAGルーティングを行う [16].なお,MCCP では
DODAG ルーティングを上り方向のみで構成し,下り方向では構築しない.本研究
では,センサネットワークを用いて,周期的にデータを収集するアプリケーション を想定している.そのため,DODAG の構築には DIO メッセージのみを使用し,
DAO メッセージ,DIS メッセージは使用しない.また,センサネットワークでは 端末が電池駆動の前提のため,消費電力の面から ACKnowledgement(ACK) による 再送も行わない.もちろん,想定するアプリケーションに合わせ,下り方向の通信 をサポートしたり,ACK を導入したりすることは容易に対応可能である.
(3) RPLの改良研究
RPL の改良として,ネットワークライフタイムに関する研究がある [17].この 研究では,電池駆動型端末と電力線接続端末が混在したネットワークでのネットワ ークライフタイムの向上を目指すものである.電池駆動端末のランクを一定値増加 させることで,親選択の際に親に選ばれにくくし,電池駆動端末の負荷を減らして
いる.MCCP では通信デバイスに PLC 通信を用いるため,電力線に常に接続され
ており電力は常時供給されている.そのため,本研究では電源によるネットワーク ライフタイムは考慮しない.また,移動端末を用いたネットワークライフタイムの 向上に関する研究 [18] などもある.しかし,環境変化の検出,特に複数の通信イ ンターフェースにおけるそれぞれの通信品質の差異を考慮した環境変化の検出と
Link Leap / sLump Detection
25 反映の研究は行われていない.そこで,本研究では,複数の異なる通信品質を持つ 通信インターフェースにおける,通信品質の変化の検出,反映を行い,通信信頼性 の向上を目指している.
3.3 Link Leap / sLump Detection
本節では本研究での提案手法について述べる.LLD は環境変化の検出と環境変 化の反映方法の二つから成り立つ.
(1) 環境変化の検出
環境変化の検出はパケット受信時の PRR(Packet Receive Ratio:パケット受信率)
を PRR の移動平均と比較することで行う.通信環境変化の検出方法として,ルー
ティングプロトコルで良く利用されるメトリクスがある.具体的には,通信品質の 物理量ベースの指標である LQI を用いたもの [19] や,ETX などのトラフィック ベースの指標を用いるもの [20] などがある.トラフィックベースの指標を用いる 場合,指標の測定に一定の時間を要するため,トラフィックベースの指標を用いて 通信環境の検出を行う場合,時間を要することになります.そのため,本提案手法 では即時性の高い RSSI や SNR などの物理量ベースの指標を用いて通信環境の 変化検出を行う.しかし,本研究で用いている通信インターフェースの物理量ベー スのメトリクスは PLC と RF では導出方法や特性が異なり,メトリクスを直接比 較することは不適切であるため,事前に実測して導出した PRR 算出近似式を用い ることで,通信インターフェースでの差異を吸収し,PLC/RF で同一の物理量ベース のメトリクスとして比較できるものとして使用する.
環境変化の検出手法は TLD(Traffic Leap/sLump Detection)[21] をもとに,MCCP 向けに改良したものである.主な改良点は,比較対象を PRR の移動平均とし,検 出した状態を保持することである.環境変化の検出は,PRR の監視と環境変化判 定の二つから成り立つ.
ア)通信環境の監視
MCCP では,HELLO パケットを用いて通信可能な端末の生存確認や,通
信環境の測定を行う.HELLO パケットを 5 秒ごとに全端末に向けてブロ ードキャスト送信されるが,HELLO パケットは中継されないため,1 ホッ
相互補完通信における環境変化に追従可能なDODAGルーティングメトリクスの研究
26
プ以内の端末のみが受信を行う.通信環境の測定では,HELLO パケットを 用いて ETX (Expected Transmission Count)と PRR (Packet Receive Ratio) の測 定を行う.ETX とはパケット送信の期待値を表し,1 パケットを相手に到 達させるために必要な送信回数 [22][23] で,値が小さいほど良好な通信状 態であることを示す.具体的には,通信相手からのパケット到達率 dr と,
通信相手へのパケット到達率 df を使って ETX を求めることができる.dr
と df は,一定期間内の HELLO パケットの受信数を用いて計算できる.式
(3.2) に ETX 計算式を示す.
たとえば,HELLO パケットを 10 回受信できる期間で,3 回しか受信で きなかった場合,dr は 0.3 となる.通信相手へのパケット到達率 df は,
HELLO パケットに含めておくことで隣接端末が通信相手へのパケット到
達率 df を知ることができる.仮に dr と df がともに 0.3 であれば ETX は約 11,dr と df が 0.5 であれば ETX は 4 となり,後者であれば 4 回 送信を行えば,パケットが相手に到達する環境であると言える.本研究の
MCCP でも ETX を利用しているが,計算量を減らすため 1/ETX として値
を保持することにしている.
PRR とは 2 端末間のパケット受信成功率を表し,ある端末からパケット が送信され,別の端末が受信した際に,そのパケットがどの程度の確率で届 いたかを算出したものあり,0 から 100 の範囲で値を持つ.一般に RF で は,RSSI が減衰すると PRR が低下 [24] する.一方,PLC に関して,今回 採用した PLC モデムでは,下位層で FEC(Forward Error Correction)を適 用しているが,アプリ層で FEC のエラーレートを取得することができる.
一般に FEC エラーレートが低いほどよい通信環境を表し,FEC エラーレー トが増加すると PRR が減少する.
本研究でも,Zuniga ら [24] が示した結果を参考に,当研究室で開発した 実機を用いて実験を行った.今回使用したMCCP デバイスは,PLC 通信で は FEC エラーレートに加え,SNR(Signal-Noise Ratio:信号雑音比) が取得可 能である.一方,RF 通信では RSSI(Received Signal Strength Indication:受信
= 1
∗
(3.2)
Link Leap / sLump Detection
27 信号強度), LQI(Link Quality Indicator:リンク品質指標) がそれぞれ取得可能 である.LQI とは,受信時の電波通信品質を示す値で,一般に 0~255 まで の数値で表される.RSSI が物理的な信号の強さを表すのに対し,LQI は電 波通信品質を示す相対的な指標で,無線モジュールを開発したベンダによっ てその計算式は異なるだけでなく,RF モジュール内で計算される.
図3.2 PLCのFECエラーレートとPRR実測値
図3.3 RFのRSSIとPRR実測値
= −0.498128 ∗ ( . ∗ )+ 100
(3.3)
= −1.1 ∗ 10 ∗ ( . ∗ )+ 100
(3.4)
相互補完通信における環境変化に追従可能なDODAGルーティングメトリクスの研究
28
PLC に関しては FEC エラーレートと PRR の関係を実測し,RF に関し
ては RSSI と PRR の関係を実測した.実測による結果を基に,PLC におけ
る PRRPLC 算出近似式と,RF における算出 PRRRF 近似式を導出した.図 3.2 に PLC の FEC エラーレートと PRR 実測値を示し,図 3.3 に RF の RSSI と PRR 実測値を示す.また,式 (3.3) に PRRPLC 算出近似式,式 (3.4) に RF における PRRRF 算出近似式を示す.具体的には,PLC に関しては 2 端末間の物理的な距離や AC アダプタ等のノイズ源の数を変更することで,
FEC エラーレートの変動を模擬した.また,RFに関しては 2 端末間の物理 的な距離やアンテナに金属片を近づけることで RSSI,LQI の変動を模擬し た.これらの環境で,一定数の計測用パケットを送信し,FEC エラーレート
や RSSI と PRR との関係をプロットし,近似曲線を得た.また,RF での
LQI は RSSI に比べ変動幅が小さく,PRRRF との相関が低かったため RSSI を採用した.同様に PLC の SNR も,PRRPLC との相関が低かったため,FEC エラーレートを採用した.今回導出した近似曲線は,RF モジュールや PLC モデムの種類に依存するため,今回の結果は,本研究で開発した PLC/RF 端 末でしか利用できないが,本研究のような事前実験によって PRR 算出近似 式を導出しておけば,他の端末でも LLD を利用できると考える.
本研究では,通信インターフェースによる特性の違いを PRR という一つ の指標に統一し,使用している.環境変化の検出に用いる指標に PRR を用 いることで,PLC 通信と RF 通信での特性の違いを吸収している.
イ)環境変化判定
環境変化判定処理では,通信環境が悪化した場合 ”Slump”と判定し,向 上した場合 ”Leap” と判定する.また,通信環境に変化がなかった場合,
例えば ”Slump” 判定後に再び ”Slump” を判定するなどの場合,”環境 変化なし”と判定する.過去の PRR のログから移動平均を求め,移動平均 +閾値を変動上限,移動平均-閾値を変動下限として使用する.PRR の現在値 が変動上限を超えていれば ”Leap”として環境変化とし,変動下限以下で あれば, ”Slump”として判定する.”Slump” / ”Leap” と判定された際 は検出した時間を記録する.変動上限,変動下限を決定する際の閾値によっ て,環境変化に対する感度を設定することが可能である.また,これらの環
Link Leap / sLump Detection
29 境変化検出は通信インターフェースごとに行われる.ただし,通信環境の悪 化時には,HELLO パケットを受け取れない可能性が高くなるため,直前の
HELLO パケットから一定時間内に HELLO パケットを受け取れなかった
場合,PRR を 0 としてログに追加する.また,ログ内の受け取れなかった パケット数が一定数を超えた場合,PRR を 0 として判定処理を行う.今回 は 環 境 変 化 の 検 出 に 用 い る 移 動 平 均 の 範 囲 を 過 去 5 個 分 と し て い る .
HELLO パケットを 一つロストした場合,PRR は 0 として処理されるため,
PRR の移動平均が最大で 20 変動することになる.安定した通信環境にお いても HELLO パケットがロストすることがあるため,スパイクノイズの ような瞬間的な通信環境の変動が起こり得る.そのような瞬間的な環境の変 化に対し環境の変化として検出されないように,本研究では検出閾値を 20 としている.図 3.4 に ”Leap” と ”Slump” 検出の例を示す.移動平均 が変動上限,変動下限とクロスする地点を丸印で示す.なお,判定処理は
HELLO パケット受信時か一定時間 HELLO パケットを受信しなかった時
に行われるため,必ずクロスした瞬間に判定されるとは限らない.
(2) 環境変化の反映方法
通信環境の変化を検出した場合,メトリクスへの反映とトリクルタイマへの反映
図3.4 環境変化検出
相互補完通信における環境変化に追従可能なDODAGルーティングメトリクスの研究
30
を行う.その際,反映させる方法として,以下の 3 通りを用いる.
(ア) 経路の安定性としてランクに反映 (イ) 環境変化検出による ETX 変更 (ウ) トリクルタイマへの反映
上記方法に加え,通信環境変化の検出から親変更を行うまでの時間に遅延を持た せる.
ア)通信安定性
通信環境の変動を検出した時刻情報から,状態ごとの経過時間を計算す る.”Leap” 状態であった時間を LeapTとし, ”Slump” 状態であった時
間を SlumpT とする.それらの時間をもとに通信経路の安定性を求め,ラン
ク計算式に用いる.メトリクスとして安定度を用いることで,より安定した 経路を選択することになるため,到達率の向上を期待できる.安定性の算出 近式を下記に示す. 安定性の算出には SlumpT に重みをつけることで,通信 環境の変わり方を強く反映させる.式 (3.5) に安定性の算出式を示す.安定 性を用いる際の重み α は,α =1, 1.5, 2 で比較し,効果の最も大きかった α=2 を今回の検証では用いる.図 3.5に SlumpT に対する重み付け α に よる到達率の変化を示す
= + ∗
(3.5)
図3.5 SlumpTの重み付けによる到達率の変化
Link Leap / sLump Detection
31 イ)環境変化検出時のETX変更
ETX は一定時間内の HELLO パケット受信数を使用して計算されるため,
通信環境の変化に対し,ETX の変化に時間がかかる.そのため,環境変化検 出の結果が ”Slump”であった場合その経路の ETX を 1/2 倍にし,”Leap” を検出した場合 ETX を 2 倍にする.LLD では通信環境の変化を検出する 際,最大で 3 回分の HELLO パケット分の環境情報を必要とする.ETX が 最も高い状態から 3 回のHELLO パケットをロストした場合,ETX は最大 で 50%変動するため,ETX の変動量を 2 倍と 1/2 倍に設定した.このよ うに環境変化検出時の ETX 変更により ETX が環境変化に反応する時間 を短縮する.
ウ)トリクルタイマへの反映
安定した状態からの通信環境の変化時はトリクルタイマにより,DIO 送 信間隔が長期化している.そのため,トリクルタイマをリセットすることで 更新間隔を短くし,通信環境の変動を短時間で伝達する.トリクルタイマの リセットにより,子ノードは親の再選択を早急に行うことができ,DODAG 全体の経路変更を早期に完了させることができる.また,トリクルタイマの リセットを行わない場合,親選択間隔が長いため,正しい親を選択するまで に時間を要する.
(3) 環境変化タイミング
環境変化の反映方法に加え,環境変化を検出してからの親選択までの遅延を加え る.これは環境変化を検出し,ただちに親の再選択を行う場合,環境変化が ETX 等のメトリクスに十分に反映されていないため正しい親を選択できない.親選択を 即時に行った場合,環境変化が ETX 等に反映されず,環境変化前の親を選択して しまうことになる.また,親変更があった場合,トリクルタイマがリセットされる ため,親を誤選択するとその後,正しい親を選択した時にトリクルタイマのリセッ トにより,DIO が多数発行されてしまう.そのため,環境変化を検出した場合は一 定時間経過後に親の再選択を行うことで,ETX 等のメトリクスに環境変化が反映 されるのを待ち,親の誤選択を減らすことができる.親の誤選択を減らすことによ り,DIO の送信回数を減らし,経路制御のためのトラフィックを削減できる.
相互補完通信における環境変化に追従可能なDODAGルーティングメトリクスの研究
32
図 3.6 に親変更遅延なしのときの親選択結果を示す.親選択結果の理想的な親
選択タイミングは通信経路の通信品質が良いほうの親を示し完全に追従できた場 合,到達率は100%になる.横軸には理想親が変化したタイミングを 0秒とした相 対的な時間を示し,縦軸に選択されている親を示す.親選択タイミングは親の再選 択を行ったタイミングを示している.これは同一の親を選択した場合でもプロット される.実際に選択されている親は最後に選択した親を示しており,実際に通信に 用いられる親ノードを示す.図3.6 から,環境変化から約 18 秒経過した時点で親 の誤選択が起こり,約 30 秒後に理想親を選択していることがわかる.そのため,
本論文では環境検出から親選択までの遅延時間を 30 秒としている.この遅延時間
は HELLO パケット送信間隔によって変動するため,HELLO パケット送信間隔に
よって調整する必要がある.
3.4 評価
(1) 評価環境
評価を行う際,実環境での評価は外的要因により通信環境の再現が難しいため,
シミュレータを別途開発し評価に使用した.シミュレータはノードシミュレータ,
通信環境シミュレータ,EM9 コントローラの 3 つのプログラムで構成される.ノ ードシミュレータは仮想的に展開された MCCP デバイスに相当し,独立したスレ ッドにより動作する.MCCP と同様の構造を取り,他ノードシミュレータとは通信 環境シミュレータを介し通信を行う.通信環境シミュレータは各ノードシミュレー
図3.6 通信環境変化直後の親選択結果
評価
33 タ間の通信を行う.通信は,パケット単位で通信可否判定が行われ,通信可能と判 定されれば目的のノードシミュレータへとデータが送られる.EM9 コントローラ はノードシミュレータや通信環境シミュレータの起動・終了など,シミュレーショ ン全体の管理を行う.本研究で使用したシミュレーション環境は,C言語で開発し た.実行環境には,Windows7 Processional 64bit with SP1 を使用した.そのため,ノ ードシミュレータでは Windows OS の制約により,タイマ分解能が最少で10ms な
ど,MCCP デバイスとは一部仕様が異なる.ただし,MCCP では Windows OS の
タイマ分解能を上回る精度は用いていないため,MCCP の動作には影響はない.
ア)シミュレータの検証
シミュレータの評価方法としては,実環境で測定したデータと比較するこ とでシミュレータの評価とした.シミュレータの評価に用いたトポロジを図 3.7 に示す.図中の破線は RF,実線は PLC で通信できることを示し,線がな いノード間は直接通信ができない.また,通信環境の変化のさせ方として,ノ ード A の PLC を 900 秒ごとに,ノード B の RF を 700 秒ごとに,ノード C の RF を 600 秒ごとに,ノード D の RF を 400 秒ごとに,妨害なしと妨 害ありで切り替える.測定実験時はすべての妨害なしの状態から始める,経過 時間によって妨害を発生させる.妨害ありの場合は,受信したパケットを 80%
の割合で破棄することで,到達率を下げる手法をとった.また,端末は密接さ せることで,外部ノイズの影響を受けないようにした.この環境でルーティン グに用いるメトリクスを変え,実験を行った.一回の実験を 3600 秒とし,ノ ード A への測定用パケットの到達率で比較を行った.測定用パケットとは,
本システムで想定する末端のセンサ端末からシンクノードに向けて送信され るセンシングデータを想定した.図 3.8に実環境で測定した結果とシミュレー タでの結果を示す.
図中の縦軸には測定用パケットの到達率を示し,横軸にはDODAG ルーテ ィングに使用したメトリクスの組合せを示す.以下に,DODAG ルーティング に用いたランク計算式とメトリクスの組合せを示す.
相互補完通信における環境変化に追従可能なDODAGルーティングメトリクスの研究
34
図3.7 シミュレータの評価に用いたトポロジ
図3.8 実機での測定結果とシミュレータでの結果の比較
評価
35 a) 環境妨害なし(理想状態での通信到達率)
b) 環境妨害のみ(DODAGルーティングなし)
c) = (100⁄ ) ∗ 100(PRRのみ)
d) = (100⁄ ) ∗ 100(ETXのみ)
e) = (100 (⁄ + )) ∗ 100(ETX+PRRの組み合わせ)
LLD の評価を行うに当たり,急峻な変動に対する検出を評価するため,ノ イズとしての変動は結果に影響しないことも重要と考え,通信時にノイズとし て 5%の変動を持たせた設計となっている.このノイズは実測環境で測定結果 をもとに決定した.また,実機とシミュレータでパケットを破棄する方法が異 なるため,5%程度の差異が発生している.ただし,今回LLD の検証に使用し たトポロジでは微小な品質の差異による経路選択を行う場面はないため,LLD の評価を行う上で影響はないと考える.
(2) 評価手法
提案手法の評価を行うに当たり,通信環境の変化を検出したときの親選択への 反映のさせ方を以下の組み合わせで行い,比較を行った.
( 1 ) 環境変化検出なし(従来の手法)
( 2 ) 環境変化検出のみ
( 3 ) 環境変化検出と親変更遅延のみ
( 4 ) 環境変化検出と ETX 変更のみ
( 5 ) 環境変化検出と安定性のみ
( 6 ) LLD(上記 2 から 5 の組み合わせ)
検証に用いたネットワークトポロジを図 3.9 に示す.今回設定した通信環境は 最適な経路が一定時間ごとに切り替わる変化を設定した.これは実環境においてド アの開閉やエアーコンバータなどの稼働による通信環境の変化を想定し,周期的に 通信環境が変化する状態を想定している.具体的には,ノード 1-3 間とノード 2- 3 間の通信成功率が 300 秒ごとに 20%と 100%で切り替わる.その際,ノード 1- 3 間が 100%であればノード 2-3 間が 20%に切り替わり,ノード 1-3 間が 20%で あればノード 2-3 間が 100%に切り替わる.つまり,二つの経路が同時に 20%,
相互補完通信における環境変化に追従可能なDODAGルーティングメトリクスの研究
36
100%になることがないように設定することで,最適な親を選択し続けることがで きれば,パケット到達率が 100%になる.
前述の通信環境下で,各ノードはノード 0 に対して測定用パケットを 3 秒ご とに 1 回,1 パケットを 送信する.測 定用 パケッ トは MCCP で使 用している
HELLO パケットや DIO メッセージとは異なり,センサからのデータを想定した
パケットで,1 パケットを 40Byte と設定した.ノード 1 から 3 は測定用パケッ トを DODAG ルーティングに則り,ノード 0 へ送信する.ノード 0 では受信し た測定用パケットのシーケンス番号から,受信に失敗したパケット数と受信したパ ケット数を累計し,記録する.ノード 0 が記録した受信成功,失敗したパケット 数から測定用パケットの到達率を計算する.ただし,評価ではノード 3 からの測 定用パケットのみで比較を行っている.ノード 1,2 ともにノード 0 との通信品質
が常に 100%に設定したため,通信環境の変化がなく,常にパケットが到達するた
めである.そのため,本検証ではノード 1,2 からの測定用パケットの到達率は使用 していない.
図3.9 評価に用いたトポロジ
評価
37 ランク計算式を式 (3.6) に示す.なお,ランク計算式は各親選択への反映のさ せ方の組合せで共通である.なお,式中の は親 x から受け取った DIO メ ッセージに含まれる親のランクであり, と は MCCPでの HELLO パ ケットにより取得される値である.また, は直接通信が可能な範囲内のノ ードすべてを指す.
RankInc 内の100 (⁄ + ) ∗ 100 は,MCCP で用いられている
の式である.図 3.8 に示すように,DODAG ルーティングのメトリクスに トラフ ィックベースの ETX と物理量ベースの PRR を組み合わせて用いることで,ETX のみ,PRR のみに比べ,通信到達率が向上する.本研究では従来の RankInc に (200 − ) 100⁄ を 安 定 性 係 数 と し て 加 え , ラ ン ク 計 算 式 と し た . 式 中 の は親 x との安定性を示す.通信環境の変化の検出に追従しやすくするため に,従来の MCCP で計算される に,1 から 2 倍の影響度を与えること で,安定性が低いリンクほど利用されなくなるよう改良した.たとえば,安定度が 100 であれば 1,安定度が 25 であれば 1.75 という係数をランクに掛けることに なり,安定性の低いリンクでは Rank が増加する.結果として,安定性の高いリ ンクを利用するため,通信到達性の向上が可能となる.反映のさせ方で安定性を用 いない場合は を 100 にすることで安定性係数が 1 になり,安定性のラン ク計算への影響を無効化した.
(3) 評価結果
通信環境の変化の検出は通信環境が変化してから最短 1 秒,最長 29 秒,平均 約 13秒で検出することができた.検出にかかった時間に幅があるが,これは PRR
の更新を HELLOパケットで行っているためである.通信環境が良くなった場合は
HELLO パケットが届き,PRR が即座に更新されるが,悪化した場合は HELLO パ
ケットの受信がタイム・アウトしたことを使うため,PRRの更新が遅くなる.その ため,“Leap”検出と“Slump”検出にかかる時間に差が出る.
= min
∈ ( + )
= * ∗ 100