MQTT将如何推进物联网发展
许多物联网项目由于无法预测的成本失败。这背后的一个主要因素是每台设备成本的最大贡献者之一的数据量的传输。通过选择设备与应用程序之间进行通信的有效方式,可以降低这种成本。MQTT-SN(用于传感器网络的MQTT)是IoT通信协议的优化版本。MQTT(消息查询遥测传输)是专门为在大型低功耗IoT传感器网络中高效运行而设计的。
在部署需要扩展的网络时,成本是一个重要因素。随着设备数量的增加,总的运营成本也随之增加。这是由于许多因素造成的,包括硬件本身的成本,但也不太明显,但同样具有影响力的因素,例如数据传输成本,电源成本以及不可靠数据的成本。这些因素加在一起会产生一个问题,如果在物联网项目的定义阶段中未解决,则可能会失控,导致随着网络的增长,数据和功耗成本进一步降低。
数字化转型和采用物联网网络的好处以多种方式展现出来。更高的商业智能,流程改进,更低的设备维护成本,甚至是创收的新途径。许多企业已经意识到这些好处,因此增长趋势将继续。Gartner预测,到2020年,全球将安装约204亿个IoT设备,其中端点和服务的总支出将达到3.4万亿美元。
尽管物联网的好处显而易见,但与物联网的部署和后续运营相关的成本却难以言喻。每台部署的设备都会带来大量成本;其中有些是相对可预测的,例如硬件本身的成本。当涉及到运营成本时,看似微不足道的因素(例如,传输的数据量和这样做所使用的功率量)在扩展到数百甚至数千个设备时可能成为主要问题。物联网生态系统日益复杂和分散的情况进一步加剧了这些问题。无论使用什么应用程序,都有许多不同的方法可以从设备中收集数据并将指令推送到设备,每种方法都带来不同的挑战,并随之带来不同的成本。
大规模物联网网络面临的最大成本之一就是数据传输本身的成本。由于成千上万的设备每年可能产生数百万条消息,因此看似很小的每条消息的成本很快就增加了。这也与用于通信数据的电量有关。由于这些原因,必须传输尽可能少的数据,并且仅在需要时才发送。
通过减少传输的数据量,可以降低每台设备的成本和总的操作成本。通过在网络边缘处理数据并仅在需要时才传输数据,可以部分解决此问题。但是,对于任何需要发送的数据,大小仍然是一个问题,特别是在涉及远程无线网络的地方。
解决数据问题的另一种方法是选择一种固有地会产生小消息的消息传递标准。物联网可以使用各种消息传递协议,并且取决于应用程序,其适用性也有所不同。例如,流行的IoT协议(例如DDS(数据分发服务)和XMPP(可扩展消息和状态协议))可能适合在处理能力和数据丰富的情况下发送大量数据,但是由于消息量大且处理繁重,它们远不适合在许多大规模部署中使用。
MQTT是一种轻量级的机器对机器(M2M)消息传递协议,由于其代码占用量非常小且消息大小较小,因此是大型网络(尤其是在缺乏网络带宽的情况下)的理想选择。MQTT还可以帮助减少技术和集成层。为此,它消除了在不同组件之间转换数据的需求,并且消除了使用第三方中间件在设备和IoT平台之间进行通信的需求。
MQTT-SN是MQTT的一种变体,专为具有规模的无线传感器网络而设计。该标准进一步提高了数据传输和功耗的效率。更高的效率包括缩短的主题ID,该主题ID通过将主题ID从字符串转换为两字节别名来减小主题ID的大小,从而减小了消息大小。较小的主题ID可以通过添加“注册”功能来实现,该功能允许客户端向网关注册别名以转发消息。最重要的是,可以将较短的主题ID编程到设备和网关中,以确保两个实体都已经知道ID而无需注册,从而消除了额外的控制消息传递的需要。
如果您正在考虑一个大型物联网项目,请考虑MQTT。它非常适合在IoT中使用,因为它是最常用的协议之一(由IBM Watson IoT和Microsoft Azure等一些最大的平台使用),并且使用MQTT的设备很可能与您现有的设备轻松同步系统。