物联网MQTT

MQTT是一个由IBM开发的物联网传输协议,它被设计用于轻量级的发布/订阅式消息传输,旨在为低带 宽和不稳定的网络环境中的物联网设备提供可靠的网络服务。MQTT是专门针对物联网开发的轻量级传输协议。MQTT协议针对低带宽网络,低计算能力的设 备,做了特殊的优化,使得其能适应各种物联网应用场景。 MQTT 既有完全高级版可以在 TCP/IP 上运行,也有简化版 MQTT-SN 用于非 IP 设备。其发布/订阅模式能够在让拓扑结构进行扩展的同时保留实时的特性以及服务质量的可配置性。 MQTT的设计思想是开源、可靠、轻巧、简单,MQTT的传输格式非常精小,最小的数据包只有2个比特,且无应用消息头。MQTT可以保证消息的可 靠性,它包括三种不同的服务质量(最多只传一次、最少被传一次、一次且只传一次),如果客户端意外掉线,可以使用“遗愿”发布一条消息,同时支持持久订 阅。MQTT在物联网应用中的优势有: 可靠传输。MQTT可以保证消息可靠安全的传输,并可以与企业应用简易集成。 消息推送。支持消息实时通知、丰富的推送内容、灵活的Pub-Sub以及消息存储和过滤。 低带宽、低耗能、低成本。占用移动应用程序带宽小,并且带宽利用率高,耗电量较少。 物联网接入的挑战 当前物联网领域的消息传输依采用单一的实施规范,它是在互联网基础上的延伸和扩展的网络,用户端从传统的计算机延伸和扩展到了任何物品与物品之间,物品通过嵌入的传感器进行信息采集,然后通过小型计算设备进行网络信息交换与通信。然而当前移动互联网正处于起步阶段,物联网中的数据传输会面临很多问题,比如在网络不稳定的情况下,如何保证数据的传输没有问题,如何保证数据不被重复发送,连接断开后如何进行重连。总体来说,物联网的接入会面临以下几个方面的挑战: 设备、传感器。物联网接入对终端采集和控制设备要求高,且终端的改造以及网络费用成本也比较高。另外,其对终端的能耗要求也比较高。 通信协议。设备往往不具备较高的计算能力和存储空间,因此很难支持诸如 HTTP、SSL 和 XML 这样的传输协议,它需要一套简单高效的传输协议以满足通信需求。 网络。现有的网络传输贷款参差不齐,传输网络不稳定。 信息安全。如何保证信息传输的安全以及业务层身份鉴别。 基于物联网的MQTT技术则恰好可以很好地弥补这一方面的缺陷,在云计算和移动设备之间架起一道桥梁,在低带宽和不稳定的网络环境中提供可靠的网络服务。 对于信息安全,并不仅仅是信息传输安全,物联网时代的安全是物理安全、信息采集安全、信息传输安全和信息处理安全的综合,物联网时代还需要一个强大的云以完成信息传输安全,信息处理安全以及信息的存储,分析等,当然您还需要一个强大的服务管理系统来管理您为了处理特定的业务逻辑而运行的服务。

时间: 2024-08-30 14:01:56

物联网MQTT的相关文章

物联网MQTT协议分析和开源Mosquitto部署验证

在<物联网核心协议—消息推送技术演进>一文中已向读者介绍了多种消息推送技术的情况,包括HTTP单向通信.Ajax轮询.Websocket.MQTT.CoAP等,其中MQTT协议为IBM制定并力推,其具有开放.简单.轻量级以及易于实现的特点使得其即便在资源受限的环境中也能得到很好的使用,比如运行在资源紧缺型的嵌入式系统中或网络带宽非常昂贵的环境中,除此之外,它也被广泛用于遥感勘测.智能家居.能源监测和医疗应用程序等各个领域,是物联网的重要组成部分,将来可能会成为物联网的事实标准. 本篇文章将帮助

Paho -物联网 MQTT C Cient的实现和详解

概述   在文章Paho - MQTT C Cient的实现中,我介绍了如何使用Paho开源项目创建MQTTClient_pulish客户端.但只是简单的介绍了使用方法,而且客户端的结果与之前介绍的并不吻合,今天我就结合新的例子,给大家讲解一下Paho使用MQTT客户端的主要过程.  如同前面介绍的,MQTT客户端分为同步客户端和异步客户端.今天主要讲解的是同步客户端,结构还是如同步客户端中介绍的:   1.创建一个客户端对象:  2.设置连接MQTT服务器的选项:  3.如果多线程(异步模式)

树莓派编译安装 EMQ 服务器

前言 EMQ 是一款开源的物联网 MQTT 消息服务器,使用 Erlang/OTP 语言平台设计,在 DIY 智能家居时可以作为网关,前几天摸索了一下在树莓派中安装 EMQ 的方法,记录一下. 步骤 安装 Erlang sudo apt-get install erlang-dev erlang-edoc erlang-eunit erlang-reltool erlang-crypto erlang-eldap erlang-public-key erlang-runtime-tools er

求求你,别再过两点一线的生活了

求求你,别再过两点一线的生活了 我是一个机械狗转过来的程序猿,大学学的是机械专业,大家都投入了电子自动化的怀抱,我也不例外,但是其实当时内心是报兽医的,不过要一本(而且分数很高的那种),我最后也只能混迹于环境最好的2B高校,位于广州花都,读者可留言竞猜(哈哈哈~有校友吗?)大三自学编程,从C#入手后转Java,大四外出实习一年,后与友人创业.投身小程序裂变时代,人人创业,共享经济当时有点火,idea是友人提议的,我们就做了共享图书.(从一版的线下共享图书柜到二版的线上超市,都是我一人负责全部技术

走进MEasy的世界:基于STM32MP1的IOT参考设计

前言:在万物互联快速发展的趋势下,板卡处理器性能.内存大小.接口外设等都是人们非常关心的硬件参数,但是如何让硬件的作用实现它的功能最大化,一套完善的软件支持尤为重要. 背景:随着HTML5技术的发展,Web的功能和性能获得大幅度的提高,Web应用的跨平台特性使得其能够运行在嵌入式平台上成为可能.米尔电子为解决用户的难点以及行业痛点,提供了MEasy IOT参考设计等特色系统应用,这是采用MYD-YA157C开发板作为硬件平台,基于多种语言设计而成的一套由Web Demo组成的人机交互系统. 下面

米尔MYD-C335X-GW开发板,为工业网关量身打造

工业物联网是物联网在工业领域的应用,是工业自动化与信息化深度融合的产物,相比一般的物联网,工业物联网有着更高的要求,比如极低的延时,极高的可靠性和信息安全性. 工业物联网架构一般包括感知层.网络层.平台层和应用层,具体体现为智能工业设备,传感器.云平台.智能控制设备.网关.边缘计算等.而其中工业物联网网关和云扮演基础性的作用,这与工业物联网特性很相关,比如性能要求.可靠性要求和信息安全性要求,另外网关的特殊拓扑地位也使它很容易和边缘计算结合. 针对网关市场的庞大市场需求,米尔推出了基于TI AM

【物联网云端对接-2】通过MQTT协议与阿里云物联网套件进行云端通信

 在<程序员>杂志2017.4刊上,曾写过一篇<微软百度阿里三大物联网平台探析>,上面曾介绍了阿里云物联网套件的一些内容,在写该篇文章的时候,凌霄物联网网关还无法对接到此平台(TLS必须1.1版本以上).但是随着阿里云物联网套件的不断发展,目前设备除了支持HTTPS认证外,也支持MQTT客户端域名直连认证(可以是TCP直连模式,也可以是TLS直联模式). 最近有幸参与了阿里的飞凤物联网平台计划,可以更为深入的去研究阿里云物联网套件,除了用直接编写代码连接云外,也尝试用组态的方式去对

使用JavaScript和MQTT如何开发物联网应用?

如果说Java和C#哪个是最好的开发语言,无疑会挑起程序员之间的相互怒怼,那如果说JavaScript是动态性最好的语言,相信大家都不会有太大的争议.随着越来越多的硬件平台和开发板开始支持JavaScript,JavaScript在硬件端以及物联网开发领域有了新的机会. IoT应用开发的数据链路 图1是一个智能家居物联平台的数据链路. 图1 智能家居物联平台的数据链路 一般来说,可以把IoT应用分为如图所示的四层. .client层:指的是IoT设备,可以是冰箱.空调,也可以是一些温湿度传感器.

工业物联网的云端协议将以MQTT+SSL/TLS为主,协议格式以JSON为主

工业物联网是什么? 简单来说,就是物联网在工业控制上的具体应用. SSL/TLS是什么? SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议.TLS与SSL在传输层对网络连接进行加密.大部分互联网登录都是用的SSL/TLS,可以去网易邮箱http://WWW.126.COM看下,右下角上面"正使用SSL登录"的标识. MQTT是什么? MQTT(M