基于IBM纯 c标准MQTT源码,实现纯C语言访问阿里云物联网平台开发案例

一、MQTT协议简介

        MQTT 是一种基于发布/订阅模式的轻量级消息传输协议,专门针对低带宽和不稳定网络环境的物联网应用而设计,可以用极少的代码为联网设备提供实时可靠的消息服务。MQTT 协议广泛应用于物联网、移动互联网、智能硬件、车联网、智慧城市、远程医疗、电力、石油与能源等领域。MQTT 协议由 Andy Stanford-Clark (IBM)和 Arlen Nipper(Arcom,现为 Cirrus Link)于 1999 年发布。 按照 Nipper 的介绍,MQTT 必须具备以下几点:

  •     简单容易实现
  •     支持 QoS(设备网络环境复杂)
  •     轻量且省带宽(因为那时候带宽很贵)
  •     数据无关(不关心 Payload 数据格式)
  •     有持续地会话感知能力(时刻知道设备是否在线)

        MQTT 原名是 MQ TT,其全称为: MQ Telemetry Transport,是九十年代早期Arlen Nipper在参与 Conoco Phillips 公司的一个原油管道数据采集监控系统(pipeline SCADA system)时开发的一个实时数据传输协议。它的目的在于让传感器通过带宽有限的 VSAT ,与 IBM 的 MQ Integrator 通信。由于 Nipper 是遥感和数据采集监控专业出身,所以按业内惯例取了 MQ TT 这个字。        

        新发布的MQTT 5.0 版本在 3.1.1 版本基础上增加了会话/消息延时、原因码、主题别名、用户属性、回话过期、消息过期、流量控制、遗嘱遗愿、共享订阅等更加符合现代物联网应用需求的特性,提高了大型系统的性能、稳定性与可扩展性。目前,MQ

你可能感兴趣的:(c++实战案例,阿里云物联网平台,MQTT,C语言MQTT,Socket-TCP)