メディア

Bluetooth meshネットワークの基本概念(後編)Bluetooth mesh入門(2)(2/3 ページ)

» 2018年07月03日 11時00分 公開

メッセージ

 Bluetooth meshネットワークでは、メッセージを介して通信が行われます。メッセージには、「コントロールメッセージ」と「アクセスメッセージ」があります。

・コントロールメッセージ:Bluetooth meshネットワークのオペレーションに関するメッセージ。例としては、ハートビート(定期的にノード間で送信されるメッセージ)やフレンドシップ(Low Powerノードが電源に余裕のあるノードに代理でメッセージ受信を依頼)要求メッセージがあります。

・アクセスメッセージ:サーバモデルのステート値をクライアントモデルが設定、取得するとき、またはサーバモデルがステート値を報告するときに用いるメッセージ。

 ノードを実装し、その機能を定義するものが「モデル」です。エレメントは、ノード内にあって一意にアドレス指定でき、1つ以上のモデルを持っています。「ステート」は、エレメントの状態を決めるものです。どのステートについても、サーバモデルは一群のメッセージをサポートしています。

 例えば、クライアントモデルがステート値を要求するためのメッセージやステート値を変更するためのメッセージ、サーバモデルがステートに関する情報を送信するメッセージやステートの変更を知らせるメッセージなどがあります。

 メッセージはオペコードで識別され、それぞれに関連するパラメータがあります。オペコードは、メッセージが行う操作を示します。次にオペコードの例を挙げます。

  • Generic OnOff Get:汎用モデルのOn/Offステートを取得にするために使用します
    • Generic OnOff Getにはパラメータはありません
  • Generic OnOff Setは、汎用モデルのOn/Offステートを設定するために使用します
    • パラメータ:
      • OnOff - 目的値(オンまたはオフ)
      • TID - トランザクション識別子 - 新規メッセージか再送信かを示します
      • 遷移時間 - エレメントが1つのステートから別のステートに遷移するまでにかけるべき時間
      • 遅延 - メッセージの実行遅延

 アクセスメッセージには、「Acknowledged(肯定応答)要求」と「Unacknowledged(肯定応答不要)」の2種類があります。Acknowledged要求メッセージは、送信先のエレメントへの応答を要します。この場合の応答は、一般的にはSTATUSメッセージとなります。Unacknowledgedメッセージの場合は、応答が送り返されることはありません。Unacknowledgedメッセージの例としては、Bluetooth meshネットワークのSTATUSメッセージがあります。

メッセージに関するセキュリティ

 Bluetooth meshネットワークのメッセージは、NetKeyやAppKeyを使用して暗号化、認証することで保護されています。NetKeyはネットワーク層の通信で使用されます。Bluetooth meshネットワークにサブネットがない場合は、そのメッシュネットワーク内の全通信が同じNetKeyを使用することになります。

 AppKeyはアプリケーションデータに使用します。ネットワーク内のノードには、アクセス制限を必要とする機密データを扱うアプリケーションを持つものがあります。このようなノードは特定のAppKeyを持ち、特定のアプリケーションに関連付けられています。AppKeyを使用するさまざまな例としては、セキュリティ(ビルの入退出管理、設備室への入退室、CEO室への入退室など)、照明(製造現場、ビルの屋外照明、通路など)、空調システムなどがあります。

 電球や壁面スイッチなどのRelayノードには、有効なNetKeyを持たせ、機密性の高いメッセージをネットワーク内で中継できるようにするのが一般的です。しかし、Relayノードはビルに関する制御機能や空調システムなどの制限された区域のAppKeyは使用できないため、それらのアプリケーションのデータについては復号することができません。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSフィード

公式SNS

EDN 海外ネットワーク

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.