MQTT技术:为物联网而生
扫描二维码
随时随地手机看文章
Facebook上周四发布了新版iOS应用,当中采用了一种可能对物联网的未来产生重大影响的技术。这种技术叫做MQTT(Message Queuing Telemetry Transport——消息队列遥测传输),是一项为物联网而设计的消息传递技术,由 IBM开发,它是一种开放、精简、轻量级和容易实现的协议。
Facebook工程师Jonathan Dann在Facebook的技术博客上写道:“我们使用MQTT更新通知、消息和书签等等。在应用程序启动时,我们直接选择依赖关系图,并确保在我们收听新通知之前,MQTT服务已经启动。即使我们添加新的功能,我们的模块化系统会确保应用程序安装出现在正确的时间和正确的地方。”
前文提到,MQTT技术可能对物联网的未来产生重大影响。那么什么是物联网?物联网——即 Internet-of-Things, 其实这个概念由来已久,简单来讲,物联网是物与物、人与物之间的信息传递与控制简称。它和能源、电子信息、医疗、交通、零售、物流、工业制造等行业息息相关。要实现物联网,首先需要将具备信息感知和通信能力的设备嵌入到我们关心的物品中,使其能连接到因特网或企业网络之上,实现互联互通。之后,互通的物品不仅要通过设备采集信息、实现智能的感知,更要结合一切先进的信息处理、数据挖掘等手段,与业务应用相结合,从后台到前端设备,实现智能的控制。一句话来理解物联网就是把所有物品通过信息传感设备与互联网连接起来,以实现智能化识别和管理。
对于Facebook应用端的用户来说,采用MQTT协议进行消息推送的效果可能不会立竿见影,但长远来看,随着更多的用户关注和使用Facebook新版iOS应用,MMQT的知名度将会大大提升,MQTT带来的影响也将逐渐凸显。
当前物联网领域的消息传输依采用单一的实施规范,它是在互联网基础上的延伸和扩展的网络,用户端从传统的计算机延伸和扩展到了任何物品与物品之间,物品通过嵌入的传感器进行信息采集,然后通过小型计算设备进行网络信息交换与通信。然而当前移动互联网正处于起步阶段,无法提供可靠的网络保障,基于物联网的MQTT技术则恰好可以很好地弥补这一方面的缺陷,在云计算和移动设备之间架起一道桥梁,在低带宽和不稳定的网络环境中为您提供可靠的网络服务。
归根结底,MQTT 协议是为大量计算能力有限,且工作在低带宽、不可靠的网络的远程传感器和控制设备通讯而设计的协议,它具有以下主要的几项特性:
1.非常小的通信开销(最小的消息大小为 2 字节);
2.支持各种流行编程语言(包括 C,Java,Ruby,Python 等等)且易于使用的客户端;
3.支持发布 / 预定模型,简化应用程序的开发;
4.提供三种不同消息传递等级,让消息能按需到达目的地,适应在不稳定工作的网络传输需求
Redmonk行业分析师分析师James Governor认为Facebook采用MQTT技术,对后者来说是一次重大的胜利。自1995年以来,IBM一直在推广MQTT消息队列技术,现在看来,IBM的目标终于实现了。
在Governor看来,Facebook为MMQT设定了很高的内容标杆。不管你喜不喜欢Facebook,通过MQTT传输的数据和内容将是海量的,是Facebook让MQTT得到了进一步的提升。也许单独拿MQTT来说,它对于普通用户没有太多的意义。但是,如果物联网和社交媒体开发社区可以通过MQTT联系在一起,那么我们又将向实现人与物之间的相互连通迈进了一大步。
人们正走向“物联网”时代,但是这个过程可能需要很长的时间。毫无疑问,如果“物联网”时代来临,人们的日常生活将发生翻天覆地的变化。不管物联网如何发展,在未来几年,相信MQTT的应用会越来越广。
更多嵌入式资讯请关注嵌入式频道