MQTT--技術文書--基本概念-「5 分間のリテラシー mqtt プロトコル」

基本的な考え方

MQTT (Message Queuing Telemetry Transport) は、パブリッシュ/サブスクライブ モデルに基づく「軽量」通信プロトコルで、TCP/IP プロトコルに基づいて構築され、1999 年に IBM によってリリースされました。MQTT の最大の利点は、非常に少ないコードと限られた帯域幅で、接続されたリモート デバイスにリアルタイムで信頼性の高いメッセージ サービスを提供できることです。

MQTT プロトコルのコンポーネントには次のものがあります。

  1. パブリッシャー: パブリッシャーはメッセージを生成するノードであり、メッセージを特定のトピック (トピック) にパブリッシュします。
  2. サブスクライバー (サブスクライバー) : サブスクライバーはメッセージを受信するノードであり、特定のトピックをサブスクライブすることでメッセージを受信します。
  3. ブローカー: ブローカーはメッセージ転送ステーションであり、パブリッシャーによって送信されたメッセージを受信し、サブスクライバーに転送する責任があります。
  4. トピック: トピックはパブリッシャーとサブスクライバー間のコミュニケーション チャネルであり、文字列によって名前が付けられ、分類ラベルとみなすことができます。パブリッシャーとサブスクライバーはトピックを通じて情報を伝達します。

アダム:

        違いを解釈すると、ここで使用されている mqtt プロトコルは、http のように送信者と受信者の間に接続を確立する必要がないため、モノのインターネットで使用されます。代わりに、パブリッシャーがトピックにパブリッシュし、サブスクライバーがトピックに移動してメッセージを取得します。

MQTT プロトコルの特徴は次のとおりです。

  1. 軽量: MQTT プロトコルのデータ伝送形式は簡潔で、エンコード後のバイト長が非常に小さいため、伝送効率が高くなります。
  2. オープン: MQTT はオープン プロトコルであり、あらゆるデバイスが TCP/IP ネットワーク経由で接続して通信できます。
  3. パブリッシュ/サブスクライブ モデルに基づく: パブリッシュ/サブスクライブ モデルにより、パブリッシャーとサブスクライバーは直接接続を確立せずに通信できるため、MQTT プロトコルは大規模なデバイス ネットワークをサポートできます。
  4. 拡張可能: MQTT プロトコルは、必要に応じて拡張して、新しいトピックやメッセージ タイプを追加できます。

MQTT プロトコルは、モノのインターネット、モバイル インターネット、インテリジェント ハードウェア、車両のインターネット、電気エネルギーなどの分野で広く使用されています。

MQTT と HTTP の比較

HTTP と比較して、MQTT プロトコルには次の点で利点があります。

  1. 帯域幅占有: MQTT プロトコルは、パブリッシュ/サブスクライブ モデルを使用することにより、情報送信をより効率的にします。「パブリッシュ/サブスクライブ」と呼ばれるモデルを使用します。このモードでは、メッセージの送信者と受信者の間に直接接続がないため、帯域幅の使用量が大幅に削減されます。対照的に、HTTP プロトコルは TCP 接続を確立して維持する必要があるため、比較的大きな帯域幅が必要です。
  2. リアルタイム パフォーマンス: MQTT プロトコルのリアルタイム パフォーマンスはより優れています。これは、MQTT プロトコルがパブリッシュ/サブスクライブ モデルを使用し、メッセージの配信が特定の送信者と受信者に依存しないため、メッセージの配信がより速く、より信頼性が高くなります。対照的に、HTTP リクエストは通常​​、TCP 接続を確立して維持する必要があり、メッセージの遅延が発生する可能性があるため、HTTP プロトコルのリアルタイム パフォーマンスは比較的劣ります。
  3. デバイス間の通信: MQTT プロトコルは 1 対多のメッセージ送信をサポートしているため、デバイス間の通信に適しており、多数のデバイス間の通信が必要なシナリオに非常に適しています。対照的に、HTTP プロトコルはクライアントとサーバー間の通信に多く使用され、デバイス間の通信のサポートは比較的弱いです。
  4. 低消費電力: モノのインターネット、小型デバイス、モバイル アプリケーションなどのシナリオでは、MQTT プロトコルの省エネの利点がより明白になります。MQTT プロトコルはメッセージ送信量が少なく、頻繁なネットワーク接続を必要としないため、デバイスのエネルギー消費を効果的に削減できます。対照的に、HTTP プロトコルでは頻繁なネットワーク接続とデータ転送が必要となるため、デバイスのエネルギー消費が増加する可能性があります。

したがって、MQTT プロトコルは、帯域幅の占有、リアルタイム性、デバイス間の通信、低消費電力の点で利点があり、モノのインターネット、小型デバイス、モバイル アプリケーションなどの分野で広く使用されています。

14 種類のメッセージ:

MQTT (Message Queuing Telemetry Transport) は、低帯域幅で信頼性の低いネットワーク環境でのメッセージ通信のための軽量のパブリッシュ/サブスクライブ メッセージング プロトコルです。MQTT では、クライアントとサーバー間の通信に使用される 14 の異なるメッセージ タイプが定義されています。MQTT の 14 種類のメッセージ タイプを次に示します。

  1. CONNECT: MQTT ブローカーとの接続を確立するために使用されます。
  2. CONNACK: 接続確認応答。
  3. PUBLISH: 特定のトピックにメッセージを発行します。
  4. PUBACK: パブリッシュされたメッセージの確認応答。
  5. PUBREC: メッセージを公開するための繰り返しのリクエスト。
  6. PUBREL: パブリッシュ メッセージのリリース。
  7. PUBCOMP: パブリッシュされたメッセージの完了。
  8. 購読: トピックを購読します。
  9. SUBACK: サブスクリプション確認応答。
  10. UNSUBSCRIBE: トピックの購読を中止します。
  11. UNSUBACK: 購読解除の確認応答。
  12. PINGREQ: ネットワーク接続をテストするために使用されます。
  13. PINGRESP: PINGREQ への応答。
  14. DISCONNECT: MQTT ブローカーから切断します。

これらのメッセージ タイプは、メッセージのパブリッシュ/サブスクライブ、メッセージの確認、接続の確立/切断など、MQTT プロトコルのさまざまな操作を実装するために使用されます。

おすすめ

転載: blog.csdn.net/weixin_72186894/article/details/132306621