MQTT・CoAP・REST の違い
発行・購読型か、軽量な UDP か、URL へのアクセスか
- MQTT・CoAP・REST は、どれも IoT のデータをやりとりするときに使われる通信の方法(プロトコルや利用方法)です。
- MQTT はブローカーが仲介する発行・購読型、CoAP は HTTP と互換性を保ちつつ UDP で軽くした方式、REST は HTTP で特定の URL にアクセスして XML や JSON を受け取る方法と覚えます。
- 選択肢には、スマートハウス向けの ECHONET Lite や、IP を使わない NIDD も並びます。
MQTT とは
MQTT は、メッセージを発行する側と受け取る側を、仲介役がつなぐプロトコルです。「メッセージ発行・購読モデル」と呼ばれ、3つの役が登場します。
- パブリッシャー: メッセージを発行する側。データに「トピック」(どんなデータかを示す情報)を付けて送ります。
- サブスクライバー: メッセージを購読する側。欲しいトピックをあらかじめ登録しておきます。
- ブローカー: 両者の仲介役。トピック付きのデータを受け取ると、そのトピックを登録したサブスクライバー全員へ転送します。
送り手と受け手が直接つながるのではなく、必ずブローカーを通る点が特徴です。
CoAP とは
CoAP は、IETF が IoT 向けに標準化した、軽量な Web 転送プロトコルです。HTTP との互換性を保ちながら、次の工夫で負荷を軽くしています。
- HTTP では140バイトほど必要なヘッダを、バイナリ化して4バイトに圧縮する。通信に必要なデータ量は、60%程度減ると期待されています。
- 通信が成功したかを毎回確かめる TCP ではなく、確認の手続きをしない UDP を標準で使う。
処理の負荷が軽いので、電池で動くデバイスなど、能力に限りのある機器に向きます。
REST とは
REST は、HTTP との相性がよい、メッセージのやりとりの方法です。パラメータを指定して特定の URL に HTTP でアクセスすると、XML や JSON で書かれたメッセージが返ってきます。Web の仕組みをそのまま使えるため、IoT でも多く使われています。
ただし、REST は Web アーキテクチャの1つの考え方で、厳密な技術的定義が決められたものではありません。
違いを表で比べる
| 比べること | MQTT | CoAP | REST |
|---|---|---|---|
| 方式 | メッセージの発行・購読型 | 軽量な Web 転送プロトコル | HTTP で URL にアクセスする方法 |
| 特徴的な言葉 | パブリッシャー、サブスクライバー、トピック | IETF、ヘッダのバイナリ化、UDP | URL、XML、JSON |
| HTTP との関係 | HTTP の互換方式ではない | HTTP との互換性を保つ | HTTP を使う |
| 注意する点 | 送り手と受け手は直接つながらない | 確認手続きのない UDP を標準で使う | 厳密な技術的定義はない |
試験での問われ方
IoTシステム技術検定 基礎では、第5章「IoTにおける通信方式を知る」で出ます。もちこ道場の第5章の問題(全90問)のうち、MQTT・CoAP・REST を扱う問題は8問あります。
- 穴埋め: 「IETF で標準化され、HTTP との互換性を持ちながら、ヘッダのバイナリ化と UDP 接続で軽量化したプロトコル」に CoAP、「パラメータを指定して特定の URL にアクセスし、XML や JSON でやりとりする仕組み」に REST、「パブリッシャー・サブスクライバー・ブローカーで構成される発行・購読型」に MQTT を選ぶ。選択肢には、ほかの2つのほか、ECHONET Lite・NIDD・HTTP が並びます。
- 2つの空欄の組み合わせ: 「MQTT」と「サブスクライバー」、省エネ化の「スリープ」と「CoAP」のように、続けて正しい語を選ぶ。
- 記述を選ぶ: 「MQTT はブローカーを介さず 1 対 1 でつなぐ」「REST は厳密な技術的定義でリアルタイム性を保証する」のように、性質を入れ替えた記述を見抜く。
覚え方
- MQTT は「仲介(ブローカー)」、CoAP は「軽い(UDP・4バイト)」、REST は「URL」。それぞれ、特徴的な言葉を1つずつ決めておきます。
- 「購読」「トピック」が出たら MQTT、「IETF」「ヘッダの圧縮」「UDP」が出たら CoAP、「URL にアクセス」「XML・JSON」が出たら REST、と問題文の言葉から逆引きします。
第5章のほかの用語は「第5章 IoTにおける通信方式を知るの要点」にまとめています。
第5章の問題を2問、解いてみる
もちこ道場の第5章の問題です。演習画面と同じ解説(図解・選択肢ごとの解説)を付けています。
問1
IoT通信向けにIETFで標準化されたプロトコルであり、HTTPとの互換性を持ちながらも、ヘッダのバイナリ化によるデータ削減やUDP接続の採用により軽量化を図ったものを1という。
答えと解説を見る
正解は 3(CoAP)です。
【概要】
CoAPはIETFがIoT通信向けに標準化したWeb転送プロトコルで、HTTPとの互換性を保ちつつ、ヘッダのバイナリ化とUDP接続で軽量化している。
【図解】実験的機能
図解は実験的機能です。内容を簡略化しているため、公式テキストの記載と異なることがあります。
【各選択肢の解説】
- 1. MQTTあなたの解答 MQTTはブローカーを介してパブリッシャーとサブスクライバーをつなぐ発行・購読型であり、HTTP互換の方式ではない。
- 2. RESTあなたの解答 RESTは特定のURLにHTTPでアクセスしてメッセージを得る仕組みであり、IETFで標準化した方式ではない。
- 3. CoAP正解あなたの解答 CoAPは140バイトのHTTPヘッダを4バイトに圧縮し、確認手続きのないUDPで処理負荷を軽くしている。
- 4. ECHONET Liteあなたの解答 ECHONET Liteはスマートハウスの設備系機器向けの規格であり、HTTP互換を保ってヘッダを圧縮する方式ではない。
問2
IoTシステムにおいてHTTPとの親和性が高い通信プロトコルの利用方法として、パラメータを指定して特定のURLにアクセスし、XMLやJSONなどで記述されたメッセージのやりとりを行う仕組みを1という。
答えと解説を見る
正解は 1(REST)です。
【概要】
RESTはHTTPとの親和性が高い方法で、パラメータを指定した特定のURLにHTTPでアクセスし、XMLやJSONで書かれたメッセージを受け取る。
【図解】実験的機能
図解は実験的機能です。内容を簡略化しているため、公式テキストの記載と異なることがあります。
【各選択肢の解説】
- 1. REST正解あなたの解答 RESTはWebアーキテクチャの1つで、IoTでのメッセージ交換に多く使われるが厳密な技術的定義はない。
- 2. CoAPあなたの解答 CoAPはIETFがIoT向けに標準化した軽量なWeb転送プロトコルであり、HTTPでURLにアクセスする利用方法の名称ではない。
- 3. MQTTあなたの解答 MQTTはブローカーを介してトピック単位でデータを配る発行・購読型であり、特定のURLにアクセスする仕組みではない。
- 4. NIDDあなたの解答 NIDDはIPを使わずNB-IoTの制御信号にデータを載せる方式であり、HTTPでURLにアクセスする仕組みではない。
第5章のほかの問題は、ベーシックプランで解けます。まずは登録なしで、第1章の90問を試せます。
よくある質問
HTTP と REST は同じものですか?
同じではありません。HTTP は Web サーバとクライアントが情報をやりとりする通信の手順で、REST は、その HTTP を使って特定の URL にアクセスし、結果を XML や JSON で受け取る利用の方法です。なお、REST には厳密な技術的定義が決められているわけではありません。「厳密に定義されていて、リアルタイム性を保証する」という記述は誤りです。
MQTT のトピックとは何ですか?
パブリッシャーが、送るデータの内容を示すためにデータへ付ける情報です。サブスクライバーは、欲しいトピックをあらかじめブローカーに登録しておき、ブローカーはそのトピックのデータを受け取ると、登録した購読者全員へ転送します。トピックは「/」で区切って階層的に表せます。
電池で長く動かすデバイスでは、どれを選びますか?
省エネの問題では、通信の時間を短くする工夫として、HTTP より軽い Web 転送プロトコルである CoAP が挙げられます。あわせて、ふだんはスリープ状態で待機し、必要なときだけ起動して通信する工夫も出ます。プロトコルを選ぶときは、軽量さや低消費電力のほか、データが最終的に届く工夫(到達性)なども見ます。
もちこ道場
章ごとの問題と本番形式の模擬試験で、合格の力を確かめる
公式テキストの全8章から作ったオリジナルの予想問題を、スマホ・PC で解ける Web 演習サービスです(運営者が作っています)。
500円
31日間・買い切り・自動更新なし
- 全8章 720問○
- 選択肢ごとの解説○
- 全問の解説に図解○
- 模擬試験(60問・60分)なし
1,000円
31日間・買い切り・自動更新なし
- 全8章 720問○
- 選択肢ごとの解説○
- 全問の解説に図解○
- 模擬試験(60問・60分)○
無料体験は登録不要です。
次に読む
IoTシステム技術検定 基礎の第5章「IoTにおける通信方式を知る」で問われる用語を、6つのまとまりと取り違えやすい組み合わせで整理しました。第5章の問題を2問、その場で解いて確かめられます。
IoTシステム技術検定 基礎の試験の1週間前から前日までにやることを、日ごとの表にまとめました。模擬試験を2回解き、弱い章を解き直し、取り違えやすい用語を確かめる流れです。
IoTシステム技術検定 基礎は、穴埋め(1か所)・穴埋め(組み合わせ)・誤った記述を選ぶの3つの形式で出ます。形式はどの章も同じです。形式ごとの特徴と解き方、60問・60分の時間の使い方をまとめました。
出題範囲は、2026年11月2日にMCPC の公式ページで確認しました。用語の説明は、もちこ道場の問題と解説をもとにまとめたものです。