`
gaojingsong
  • 浏览: 1201309 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

【MQTT 介绍】

阅读更多

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当做传感器和制动器(比如通过Twitter让房屋联网)的通信协议。

 

 

MQTT特点

MQTT协议是为大量计算能力有限,且工作在低带宽、不可靠的网络的远程传感器和控制设备通讯而设计的协议,它具有以下主要的几项特性:

1、使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合;

2、对负载内容屏蔽的消息传输;

3、使用 TCP/IP 提供网络连接;

4、有三种消息发布服务质量:

“至多一次”,消息发布完全依赖底层 TCP/IP 网络。会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所谓,因为不久后还会有第二次发送。

“至少一次”,确保消息到达,但消息重复可能会发生。

“只有一次”,确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丢失会导致不正确的结果。

5、小型传输,开销很小(固定长度的头部是 2 字节),协议交换最小化,以降低网络流量;

6、使用 Last Will 和 Testament 特性通知有关各方客户端异常中断的机制;

 

 

MQTT服务器有好多种

Apache-Apollo:一个代理服务器,在ActiveMQ基础上发展而来,可以支持STOMP、AMQP、MQTT、Openwire、SSL和WebSockets等多种协议,并且Apollo提供后台管理页面,方便开发者管理和调试。

EMQ:EMQ 2.0,号称百万级开源MQTT消息服务器,基于Erlang/OTP语言平台开发,支持大规模连接和分布式集群,发布订阅模式的开源MQTT消息服务器。

HiveMQ:一个企业级的MQTT代理,主要用于企业和新兴的机器到机器M2M通讯和内部传输,最大程度的满足可伸缩性、易管理和安全特性,提供免费的个人版。HiveMQ提供了开源的插件开发包。

Mosquitto:一款实现了消息推送协议MQTT v3.1的开源消息代理软件,提供轻量级的、支持可发布/可订阅的消息推送模式。

0
0
分享到:
评论

相关推荐

    MQTT介绍,服务器(EMQ X)搭建,客户端(mqtt-spy,安卓)使用,java编程示例

    **MQTT介绍** MQTT(Message Queuing Telemetry Transport)是一种轻量级的发布/订阅消息协议,设计用于低带宽、高延迟或不可靠的网络环境。它最初由IBM和Oracle开发,如今广泛应用于物联网(IoT)、移动设备、智能...

    MQTT协议及源码

    提供的文档如“MQTT协议笔记.docx”、“MQTT协议.docx”、“MQTT介绍.docx”和“MQTT.docx”包含了MQTT协议的详细讲解,可以帮助初学者快速掌握其基本概念和工作原理。而“MQTT-SN_spec_v1.2.pdf”则专注于MQTT-SN...

    phpMQTT-master.zip

    **PHP MQTT介绍** PHP MQTT是基于PHP语言实现的MQTT客户端库,用于连接MQTT服务器,进行消息的发布和订阅。MQTT(Message Queuing Telemetry Transport)是一种轻量级的发布/订阅式消息传输协议,常用于物联网、...

    MQTT协议简述

    ### MQTT协议概述 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是一种高效、简单且易于实现的轻量级消息传输协议。它最初由Andy Stanford-Clark(来自IBM公司)和Arlen Nipper(来自Arcom公司,...

    基于MQTT的移动推送解决方案

    #### MQTT介绍 MQTT(Message Queuing Telemetry Transport)是一种轻量级的发布/订阅模式的即时通讯协议,它基于TCP/IP协议族,设计用于低带宽、高延迟或不可靠的网络环境中。MQTT协议的主要特点包括: 1. **简单性...

    MQTT 协议基本介绍

    九、MQTT 5.0 协议新增介绍 十、设计目标 十一、属性 十二、原因码 十三、实际应用 十四、MQTT 与 Kafka 十五、下一步 十六、参考信息 一、简介 MQTT 全称为 Message Queuing Telemetry Transport(消息队列遥测传输...

    MQTT MQTTnet 实现

    **二、MQTTnet库介绍** 1. **功能特性**:MQTTnet提供了全面的MQTT客户端和服务端实现,支持.NET Framework和.NET Core,能够应用于Windows、Linux、macOS等多平台。 2. **客户端**:使用MQTTnet库,开发者可以...

    MQTT交流PPT

    将MQTT协议中的内容总结出来,用于做协议的分享交流所用。

    MQTT-CN.zip

    第一章 - MQTT介绍 第二章 – MQTT控制报文格式 第三章 – MQTT控制报文 3.1 CONNECT – 连接服务端 3.2 CONNACK – 确认连接请求 3.3 PUBLISH – 发布消息 3.4 PUBACK –发布确认 3.5 PUBREC – 发布收到(QoS 2,...

    mqtt详细解读.zip

    这个压缩包“mqtt详细解读.zip”包含了一份名为“mqtt介绍.pdf”的文档,很显然,它将深入探讨MQTT的核心概念、工作原理以及在Java中的应用。 MQTT设计的目标是低带宽、低功耗和高可靠性,使其成为嵌入式设备和移动...

    jmeter压测mqtt资源包

    【 MQTT 介绍 】 MQTT(Message Queuing Telemetry Transport)是一种轻量级的发布/订阅消息协议,设计思想是开放、简单、低开销、可靠,并且适用于受限环境,如移动设备或低带宽、高延迟的网络连接。MQTT广泛应用...

    MQTT(一)C#使用 MQTTnet 快速实现 MQTT 通信demo

    **MQTT(一)C#使用 MQTT...通过以上介绍,我们可以看到MQTT协议和MQTTnet库在C#中的应用,这对于构建基于物联网的解决方案至关重要。开发者可以利用这些工具轻松地实现设备间的通信,从而构建高效、可靠和灵活的系统。

    27_网络应用开发-MQTT客户端1

    1. **MQTT介绍**: MQTT是一种基于发布/订阅模式的协议,它建立在TCP/IP之上,由IBM在1999年提出。这种协议特别适合于物联网设备,因为它的设计目标是保持最小的开销和简单的实施。它通过发布消息到特定的主题,并...

    paho.mqtt.c-master.zip_C++ MQTT_C++实现MQTT_drawvvw_mqtt_mqtt c语言

    1. **MQTT协议介绍** MQTT协议设计的目标是低带宽、低功耗、高可靠性的实时通信,采用发布/订阅模型,确保消息的一对多传递。它支持QoS(Quality of Service)级别,分别为QoS0、QoS1和QoS2,以满足不同场景下的...

    C#使用 MQTTnet 快速实现 MQTT 通信 Demo

    总结一下,本篇文章介绍了如何在C#环境中利用MQTTnet库快速创建一个MQTT客户端,涉及的主要知识点有: 1. MQTT协议的基本概念及其在物联网中的应用。 2. 使用Visual Studio 2017创建C#控制台应用程序。 3. 安装和...

    SIM7000 Series_MQTT_Application Note_V1.00

    **MQTT介绍** MQTT(Message Queuing Telemetry Transport)是一种轻量级发布/订阅消息协议,特别适合于资源有限的设备和低带宽、高延迟或不稳定网络环境。在物联网场景中,MQTT被广泛用于设备与云端平台之间的数据...

    基于mqtt的推送服务器.pptx

    **MQTT介绍** MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是一种轻量级的发布订阅(Publish-Subscribe)消息传输协议,主要用于低带宽、高延迟或不可靠网络环境中的物联网(IoT)应用。MQTT...

    MQTT的详细介绍

    MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当做传感器和致...

    bcb6的mqtt案例

    【BCB6.0介绍】 BCB6.0,全称Borland C++ Builder 6.0,是由Embarcadero Technologies开发的一款集成开发环境(IDE),主要用于C++编程。它提供了可视化的组件库,便于开发者快速构建Windows应用程序。BCB6.0集成了...

Global site tag (gtag.js) - Google Analytics