LoRaWAN



LoRaWAN MAC Layer
LoRaWAN(Long Range Wide Area Network)のMAC(Medium Access Control)層は、物理層(PHY層)とネットワーク層の間で通信を管理する役割を持つ層です。MAC層は、デバイスとゲートウェイ間、そしてゲートウェイとネットワークサーバー間の通信を効率的かつ信頼性の高いものにするための重要なプロトコルと手順を定義しています。
LoRaWANのMAC層の主な機能
データフレームの構成
デバイスの認証とセキュリティ
デバイスクラスの管理
ネットワーク管理
適応データレート(ADR)
1. データフレームの構成
LoRaWANのデータフレームは、ネットワーク内で送受信されるデータパケットのフォーマットを定義します。基本的な構成要素は以下の通りです。
MHDR(MAC Header):
フレームの種類やバージョン情報を含むヘッダ。
FHDR(Frame Header):
デバイスアドレス(DevAddr)やフレームカウンタ(FCnt)、MACコマンドを含むヘッダ。
MAC Payload:
アプリケーションデータや追加のMACコマンドを含むペイロード。
MIC(Message Integrity Code):
データの整合性をチェックするためのコード。
2. デバイスの認証とセキュリティ
LoRaWANは、デバイス認証とデータ暗号化のためのセキュリティ機構を提供しています。認証は、以下の2つの方法で行われます。
OTAA(Over-The-Air Activation):
デバイスがネットワークに初めて接続する際に、ネットワークサーバーからセッションキーを取得する方法。
デバイスは、アプリケーションキー(AppKey)を使用してジョイン要求を送信し、ネットワークサーバーはそれを認証してセッションキーを生成します。
ABP(Activation By Personalization):
セッションキーが事前にデバイスに設定されている方法。
デバイスは、既に設定されたセッションキーを使用してネットワークに接続します。
3. デバイスクラスの管理
LoRaWANには、3つのデバイスクラスがあり、それぞれ異なる通信パターンと用途に対応しています。
クラスA(基本クラス):
最も省電力で、デバイスからの送信後にのみ受信ウィンドウが開かれる。
送信後に2つの受信ウィンドウが開かれる。
クラスB(ビーコン対応クラス):
定期的にビーコンを受信し、スケジュールされた受信ウィンドウを持つ。
より高頻度のダウンリンク通信が可能。
クラスC(常時受信クラス):
受信ウィンドウが常に開いており、送信時のみ閉じる。
最も低電力効率だが、即時性の高い通信に適している。
4. ネットワーク管理
LoRaWANのMAC層は、ネットワーク内のデバイス管理とリソース割り当てを行います。これには以下が含まれます。
デバイスアドレッシング:
デバイスに一意のアドレス(DevAddr)を割り当て、ネットワーク内で識別します。
フレームカウンタ:
送信フレームごとにカウンタをインクリメントし、再送信の検出とデータ整合性を確保します。
5. 適応データレート(ADR)
ADRは、デバイスのデータレートと送信電力を動的に調整する機能で、ネットワークの効率とデバイスのバッテリー寿命を最適化します。ネットワークサーバーが以下のパラメータを調整します。
データレート(DR):
データ転送速度を調整し、通信距離と信号強度のバランスを取ります。
送信電力(TX Power):
デバイスの送信電力を調整して、バッテリー寿命を延ばします。