Open Mobile Alliance Lightweight Machine to Machine(オープン・モバイル・アライアンス・ライトウェイト・マシン・ツ・マシン、OMA LwM2M、LwM2M)は、OMA SpecWorks(旧称: Open Mobile AllianceのM2MまたはIoTデバイス管理用のプロトコルである。LwM2M[1]は、LwM2MサーバーとLwM2MデバイスにあるLwM2Mクライアントの間の通信プロトコルであるOMA Lightweight M2Mには、LwM2Mデバイス用のデバイス管理とサービスを可能にするメカニズムが含まれている。LwM2MはセンサネットワークとM2M環境の要求を考慮して設計されたデバイス管理とテレメトリープロトコルである。LwM2Mを使用すると軽量で低消費電力のデバイスを効率的にリモート管理可能であるOMA LwM2MはMQTTやCWMP(TR-069)などすでに確立されている他のM2Mプロトコルと同様のユースケースに対処するがこれらのプロトコルと違って省メモリのバイナリペイロードを使用して帯域幅の使用を最適化し、ネットワーク接続が常に安定していない場所での信頼性を向上させるために複数のサーバーやSMS転送などの追加機能を導入している。OMA LwM2Mはまたサーバとクライアント間で交換されるメッセージが業界標準のDTLSプロトコルを使用し、確実に暗号化され堅牢なセキュリティ要件を確立する複数のサーバーと通信する場合アクセス制御リストはデバイスによって公開されているデータモデルのどの部分をどのサーバーで管理できるかを正確に管理する。したがって、LwM2Mは、軽量でコンパクトなプロトコルと効率的なリソースデータモデルを利用している。それはM2MサービスプロバイダーがM2Mユーザーにサービスを提供するためにM2Mシステムを展開するための選択を提供する。LwM2Mのアプリケーション層として CoAPは使われている。OMA Lightweight M2Mは次のような機能を可能するために設計された:
OMA LwM2M 1.0
Lightweight M2M 1.0は、つまり初期リリース、以下の機能を導入した。
OMA LwM2M 1.1
LwM2Mコアとトランスポートバインディング仕様の間の分割は読みやすさを向上させ、LwM2Mメッセージング層とこれらのメッセージを伝達するための基礎となるプロトコルとの間の明確な分離を可能にし、そして最終的により優れた拡張性を可能にする。
この1.1のバージョンでは、CoAP over TCP/TLS、およびCoAP over Non-IP、すなわち3GPP CIoTおよび3GPP CIoTのサポートが追加されている。
このバージョン1.1はまた、トランスポート層プロトコルとは無関係にプロキシ動作およびエンドツーエンドセキュリティのサポートを可能にするアプリケーション層セキュリティプロトコルOSCOREもサポートする。
名称 | プログラム言語 | LwM2Mバージョン | クライアント・サーバー | ライセンス | リンク |
---|---|---|---|---|---|
AVSystem Anjay[2] | C | 1.0 and 1.1 | Client | Apache 2.0 | https://www.avsystem.com/products/anjay/ |
AVSystem Coiote IoT Device Management | Java | 1.0 and 1.1 | Server | Commercial | https://www.avsystem.com/products/coiote-iot-dm/ |
Awa LightweightM2M | C | 1.0 | Client + Server | BSD 3-clause | https://github.com/FlowM2M/AwaLWM2M |
Eclipse Leshan | Java | 1.0 | Client + Server | EPL+EDL | http://projects.eclipse.org/projects/iot.leshan |
Eclipse Wakaama | C | 1.0 | Client + Server | EPL+EDL | http://projects.eclipse.org/projects/iot.wakaama |