IoT协议: SharkMQTT 与MQTT

xiaozhu12371237 2016-06-03 05:07:31
加精

MQTT协议

MQTT背景:

IBM公司的Andy Stanford-Clark博士以及Arcom公司的ArlenNipper博士于1999年发明了MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)技术。Andy Stanford-Clark博士称,MQTT将在未来呈现爆炸式的增长。
MQTT的话题是Andy Stanford-Clark博士和ArlenNipper博士谈论开源物联网平台Pachube时提到的。Stanford-Clark认为Pachube很酷,但其不足之处是不具备真正的推送功能。你需要不断不断轮询才能得到即时数据。这正是MQTT能够实现的,他提到了使用推送通信系统的石油管道检测系统。

MQTT简介:

MQTT是轻量级基于代理的发布/订阅的消息传输协议,它可以通过很少的代码和带宽与远程设备连接。例如通过卫星和代理连接,通过拨号和医疗保健提供者连接,以及在一些自动化或小型设备上,而且由于小巧,省电,协议开销小和能高效的向一和多个接收者传递信息,故同样适用于移动应用设备上。

MQTT的特征:

•轻量级的 machine-to-machine 通信协议。
•publish/subscribe模式。
•基于TCP/IP。
•支持QoS。
•适合于低带宽、不可靠连接、嵌入式设备、CPU内存资源紧张。
•是一种比较不错的Android消息推送方案。
•MQTT将会成为物联网的重要协议。

MQTT应用:

IBM和St. Jude医疗中心使用MQTT开发了一套Merlin系统,该系统应用了用于家庭保健的传感器。St. Jude医疗中心设计了一个叫做Merlin@home的心脏装置,这种无线发射器可以用来监控那些已经植入复律-除颤器和起搏器(两者都是基本的传感器)的心脏病人。该产品利用MQTT把病人的即时更新信息传给医生/医院,然后医院进行保存。这样,病人就不用亲自去医院检查心脏了,医生可以随时查看病人的数据,给出建议。这样,病人在家里就可以进行检查。IBM称该发射器包括一个大型触摸屏,一个嵌入式键盘平台,以及一个Linux操作系统。在未来几年,MQTT的应用会越来越广,值得关注。通过MQTT协议,目前已经扩展出了数十个MQTT服务器端程序,可以通过LSP,PHP,Java,Python,C,C#等系统语言来向MQTT发送相关消息。此外,国内很多企业都广泛使用MQTT作为Android手机客户端与服务器端推送消息的协议。其中Sohu,Cmstop手机客户端中均有使用到MQTT作为消息推送消息。据Cmstop主要负责消息推送的高级研发工程师称,随着移动互联网的发展,MQTT由于开放源代码,耗电量小等特点,将会在移动消息推送领域会有更多的贡献,在物联网领域,传感器与服务器的通信,信息的收集,MQTT都可以作为考虑的方案之一。在未来,MQTT将会进入到我们生活的各方面。如果需要下载MQTT服务器端,可以直接去MQTT官方网站点击software进行下载MQTT协议衍生出来的各个不同版本。

MQTT特点:

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

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

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

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

4、有三种消息发布服务质量:“至多一次”,消息发布完全依赖底层 TCP/IP 网络。会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所谓,因为不久后还会有第二次发送。“至少一次”,确保消息到达,但消息重复可能会发生。“只有一次”,确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丢失会导致不正确的结果。

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

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

SharkMQTT协议

SharkMQTT是个专为嵌入式系统设计的非常紧凑的安全MQTT client 库。SharkMQTT与精简的嵌入式SSL库相结合,利用SSL证书为系统提供军事级的认证技术和数据加密技术。SSL证书为设备认证MQTT broker(MQTT服务器端的管理程序)和MQTT broker认证设备提供非常强大的认证机制——它比标准的MQTT认证方案更加强大。




MQTT 移动应用:

 1、 Facebook Messenger;
 2、信息推送 (可给第三方处理数据);
 3、与HTTP相比, 使用SharkMQTT进行信息推送功耗更低;

充分理解了MQTT原理后,SharkMQTT就很好理解了。实际上SharkMQTT就是个安全版本的MQTT Client,是在MQTT上集成SharkSS库,以确保加密通信链路是安全,可靠的。


...全文
2546 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
东风玖哥 2016-09-07
  • 打赏
  • 举报
回复
我帮你结贴了哈
Zfkkk 2016-06-24
  • 打赏
  • 举报
回复
备上,而且由于小巧,省电,协议开销小和能高效的向一和多个接收者
Zfkkk 2016-06-24
  • 打赏
  • 举报
回复
备上,而且由于小巧,省电,协议开销小和能高效的向一和多个接收者
qq_30230839 2016-06-20
  • 打赏
  • 举报
回复
imsorry000 2016-06-20
  • 打赏
  • 举报
回复
业余草 2016-06-04
  • 打赏
  • 举报
回复
www.xttblog.com 你想表达什么

949

社区成员

发帖
与我相关
我的任务
社区描述
为开发者提供高通丰富的解决方案及全面技术下载内容。本版以AI人工智能、WoS移动笔记本、XR、IoT 物联网、Auto 汽车、生成式AI等核心板块组成,为开发者提供一个便捷及高效的学习交流平台。
人工智能物联网机器学习 企业社区 北京·东城区
社区管理员
  • Qualcomm开发
  • csdnsqst0050
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧