IoTで注目を浴びている規格の一つに6LoWPAN(IPv6 over LoW-Power Wireless Personal Area Networks:シックスローパン)があります。この記事では6LoWPANをワイヤレスセンサネットワーク&インターネットの関係について書いています。技術的な内容は次回以降に書きます。
まず同じワイヤレスセンサネットワーク規格のZigBeeとの関係についてお話します。
ZigBeeはワイヤレスセンサーネットワークで用いられる短距離低速の規格です。ご存知かと思いますが、ZigBeeはネットワーク層以上の規格でZigBee Allianceがまとめました。物理層とMAC層(データリンク層)は、IEEEが規格化したIEEE802.15.4という規格を採用しています。
ZigBeeはIoT向けというよりは、ローカルなネットワークで採用されるイメージが強いです。閉じたネットワークなので、インターネットを介した外部からのアクセスは考えられないです。
IoTらしく、逆にワイヤレスセンサーネットワークもインターネットにつなげちゃえ、という感じで出現したのが、"6LoWPAN"です。つまり、センサーをインターネットを通じて、操作したりデータ取得したりすることができるようになります。使い方によっては、他のPAN IDを持つワイヤレスセンサネットワークのデバイスとも通信が出来るのではないでしょうか。
6LoWPANが、なぜネットワーク層の規格でMACとIPv6に挟まれているか、というのは後で説明します。

インターネットは現在、TCP(UDP)/IPベースなので、各センサーデバイス上でもTCP(UDP)/IP が動かなくてはいけません。規格が違うと通信出来なくなってしまいます。インターネットにつながっているので、どこからでもセンサーにアクセス出来てしまいます。そのため、セキュリティには一層気を使わなければいけません。
あとは、6LoWPANは ZigBee同様に、ワイヤレスセンサネットワークの代表格である"IEEE802.15.4"を物理層・MAC層に採用することが多いです。もちろん、物理層・MAC層に IEEE802.15.4以外のワイヤレスセンサネットワークの規格(IEEE802.15.4g/4eなど)を使うことも可能です。
何事もなくIEEE802.15.4の上でもTCP/IPが動いてくれれば問題ないのですが、現実はそうはいきません。データは一番上のアプリケーション層から各層のヘッダを付けながら、物理層に向けて降りてきます(送信時)。すると、IPv6からMAC層にデータを渡そうとすると問題が生じるわけです。なので、このままだと上手く通信どころか、動作してくれません。この上手くいかないのを上手くいかせるために、6LoWPANがあります。このことから6LoWPANはアダプテーション層とも呼ばれています。
ワイヤレスセンサとインターネットとで性質の違う世界の規格を同じデバイスで動かすわけですから、当然のごとく問題が発生するわけですね。
6LoWPANとIPv6
さきほど、問題が発生すると言いました。TCP/IPを少し勉強した人は分かるかと思いますが、インターネット(TCP/IP)には、MTU(Maximum Transmission Unit:最大伝送単位)があります。MTUは1フレームで送れる最大サイズを意味しています。
IPv6では、このMTUが1280バイトになっています(厳密には最下位層の物理層ヘッダまで入れて1280バイト)。ところが、IEEE802.15.4MAC層は127バイトが限界です。厳密には物理層ヘッダまで含めて127バイトなので、MAC層ペイロードとして122バイトが最大サイズです。
つまりMAC層からしてれば、例えば1000バイトものデータがIPv6から送られてきたら、「許容できない!」となるわけです。したがって、6LoWPANはそのパケットを分割してやって、MAC層が受け取れるサイズにしてやらなければいけません。

あと問題になるのは、IPv6のヘッダサイズは40バイトと大きいことです。IEEE802.15.4の最大サイズは127バイトなので、ネットワーク層のヘッダだけで全体の約30%も占有するのは、もったいない話です。6LoWPANはこの40バイトものIPv6ヘッダを圧縮する役割も担っています。
まとめると、6LoWPANの役割は、
- IPv6ヘッダの分割(送信時)と再構築(受信時)
- IPv6ヘッダの圧縮
となります。
6LoWPANとZigBee
さて、ここまで6LoWPANの全体図を簡単にお話しました。最後にIEEE802.15.4上で6LoWPANを動かすことを前提として、それとZigBeeについて少し書こうと思います。
6LoWPANは何と言ってもIPベースなので、どこからでもインターネットを通じてセンサーにアクセス出来る点は大きなアドバンテージです。つまりIPベースである最大のメリットは、同じようにIPベースで動く他のネットワーク(例えばEthernetやWi-Fi)とも通信が可能であることです。そういう意味では、ZigBeeの運用性には限界があります。同じIEEE802.15.4で動く規格同士とは言っても、やはりその両者の特性が大きく異なります。インターネットにつながる方が、IoTらしさを感じます。ZigBeeはワイヤレスセンサネットワークの先駆者的な存在であり、世界中で広く使われていますし、ネットワークが閉じている方が、人によってはシンプルで好まれる場合もあるのでしょう。
つまり6LoWPANは大変魅力的で将来性がある、ということを最後に伝えたかったです。ところで、ZigBee Allianceは従来のZigBeeに加えてIPプロトコルを採用した"ZigBee IP"という仕様を策定しました
6LoWPANの技術的な内容は次回書こうと思います。
最後まで読んでいただきありがとうございました。
英語ですが、6LoWPANとZigBeeを評価している記事がありました。
URL : https://www.lsr.com/white-papers/zigbee-vs-6lowpan-for-sensor-networks