MQTT
[Wikipedia|▼Menu]
.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%;font-size:90%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}html.client-js body.skin-minerva .mw-parser-output .mbox-text-span{margin-left:23px!important}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}

この記事は検証可能参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方
出典検索?: "MQTT" ? ニュース ・ 書籍 ・ スカラー ・ CiNii ・ J-STAGE ・ NDL ・ dlib.jp ・ ジャパンサーチ ・ TWL(2015年3月)

MQTTMQTTのロゴ
ステータス公開済み
開始年1999
最新版5.0[1]
2019年3月7日
組織OASIS
委員会OASIS Message Queuing Telemetry Transport Technical Committee[2]
編集者Andrew Banks(IBM)、Ed Briggs(Microsoft)、Ken Borgendale(IBM)、Rahul Gupta(IBM)[1]
関連する標準MQTT-SN[3]
ウェブサイトmqtt.org

MQTT(旧称:MQ Telemetry Transport、Message Queuing Telemetry Transport)は、メッセージ指向ミドルウェアのアプリケーション層で使用される、TCP/IPによるPub/Sub型データ配信モデルの軽量なデータ配信プロトコルである。

MQTTのMQは、歴史的にはMQSeriesから来ているが、メッセージキューの機能は持たない。

非力なデバイスやネットワークが不安定な場所でも動作しやすいように、メッセージ通信電文が軽量に設計されていることが特徴である。

Pub/Sub型メッセージング・パターンには、メッセージブローカーが必要である。

ブローカーは、メッセージのTopicに基づいて、それを必要としているクライアントにメッセージを配信する。

アンディー・スタンフォード・クラーク(英語版)とシーラスリンクソリューションのアーレンニッパーは1999年に、プロトコルの最初のバージョンを執筆している。
仕様

仕様はロイヤリティフリーで公開されていて、現在の仕様は5となっている。[4]
特徴

MQTTには、次のような特徴がある。
軽量なプロトコル

プロトコル電文仕様は、軽量でシンプルになっている。

ヘッダーサイズが最小で 2 byte

シンプルなプロトコルシーケンス

柔軟性の高いメッセージ配布(Sub:購読)

配布先条件が/区切りの階層構造になっており、さらにワイルドカードによる指定ができる。配布先はそのパターンにマッチした宛先になる。

Topicベースでの
Pub/Sub

1対1、1対N、N対Nのメッセージ配布

メッセージ配布の品質

アプリケーションの特性に合わせて三種類の QoS (Quality of Service) レベルの指定ができる。
QoS0
最高1回

メッセージが確実に届く保証はない。

メッセージ配布に失敗しても再送をしない。

QoS1
最低1回

必ずメッセージ配布するが、重複する可能性がある。

QoS2
正確に1回

必ずメッセージを配布して、重複も発生しない。

メッセージ再配布機能

メッセージ再配布機能 (Durable subscribe) は、次のフローで処理される。
意図せずにSubscriber(メッセージ配布者)通信が切断

その後、当該のSubscriberが再接続

切断から再接続までに発生したメッセージを再送処理

QoS1,QoS2のメッセージを再配布

Last Will and Testament

この節の加筆が望まれています。

Retain

ブローカーが最後に配布したメッセージは必ず保存する。

ブローカー

MQTTをサポートするブローカー(MQサーバ)は数多くある。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:14 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef