MQTT 【Message Queuing Telemetry Transport】

概要

MQTT(Message Queuing Telemetry Transport)とは、多数の通信主体の間で短いメッセージを頻繁に送受信する用途に向いた軽量なプロトコル(通信規約)。センサーの遠隔監視など、M2M/センサネットワークIoT(Internet of Things)分野で利用に適している。

インターネットなどのIPネットワーク上で利用できる通信プロトコルの一つで、ヘッダ部分が最小で2バイトと小さく、HTTPなどで同様の通信を行う場合よりもデータ量CPU負荷、消費電力などを一桁も二桁も抑えることができる。

機器や通信経路が不安定な場合を想定した設計になっており、ハートビートによる死活監視で相手の反応が途絶したことを検知したり、再接続した際に切断中に送信されたメッセージを再送する機能などがある。また、メッセージごとに、確実に相手に届くようにするか、(性能を重視して)送りっぱなしにするかを選択することができる。

メッセージに「トピック」と呼ばれる属性情報を追加することができ、何についてのデータかを記述することができる。トピックはファイルシステムパスのような階層構造で記述し、受信側ではどのトピックのメッセージを受診するか選択し、自分に無関係なメッセージを無視することができる。

MQTTでは通信主体が「クライアント」と「メッセージブローカー」に分かれ、ブローカーを介してパブリッシュサブスクライブ方式(PubSub)でメッセージを交換する。各クライアントブローカーに特定のトピックのメッセージを発行(publish)し、一方でブローカーから特定のトピックを購読(subscribe)する。

ここで言うクライアントにはセンサー装置のようなものから、制御・管理システムデータを集めて蓄積・処理するシステムなどが含まれ、クライアントサーバ方式におけるクライアントの概念とは必ずしも一致しない。

MQTTはもともと1990年代に米IBM社と伊ユーロテック(Eurotech)社が開発し、当初はIBM社製品の内部仕様として用いられてきた技術だが、2011年に無償で公開され、標準化団体のOASISによって規格化された。現在は誰でも自由に対応製品を開発できる。

(2020.5.30更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。