- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
物联网应用层协
物联网应用层协议
LoRa、NB-IoT以及Zigbee、蓝牙主要解决的是物体互联以及接入网络的问题,从网络协议分层来看,基本上都属于数据链路层协议。对于物联网的数据交换,主要依靠应用层协议来解决。
在移动互联网中,最常用的应用层协议就是HTTP协议,HTTP协议同样可以用于物联网系统中。HTTP协议采取的是请求-响应(Request-Response)的通信机制,服务器没有办法主动给客户端发送消息。如果要实现这种消息推送,就需要借助WebSocket这种全双工的通信机制。
不过对于很多计算和存储资源有限的物联网节点,不太适合使用HTTP协议。除了HTTP协议以外,也有很多更适合于物联网应用的协议,比如MQTT、CoAP、AMQP、STOMP等。
各个物联网软件平台最常使用的物联网协议
发布-订阅机制
很多物联网应用层协议都是基于发布-订阅(Publish-Subscribe)机制,这种机制非常适合物联网系统应用。MQTT协议、STOMP协议、AMQP协议以及DDS协议都属于这种发布-订阅的机制。
每个传感器节点,采集的数据需要上传到网络,相当于是一个消息的发布,这个消息需要基于某个主题,比如传感器的类型。所有关心这个主题的节点,都可以通过订阅这个主题的消息,实时获取最新的数据。
消息的发布和订阅是基于某个主题的,实现机制一般依赖于消息队列
MQTT协议
消息队列遥测传输协议(MQTT : Message Queuing Telemetry Transport)是为大量计算能力有限,工作带宽有限、网络环境不可靠的传感器或控制器而设计的协议。
MQTT协议基于TCP协议
MQTT协议原来是IBM开发的一个即时通讯协议,基于TCP协议实现。MQTT客户端需要通过消息代理(MQTT Broker)来进行消息的发布和订阅。
MQTT协议的兼容性非常好,几乎支持所有平台,可以把各种物联网设备都连接起来。所以MQTT协议也是目前应用最广泛的物联网应用层协议。
CoAP协议
受限应用协议(CoAP:Constrained Application Protocol)是6LowPAN协议栈中的应用层协议,基于REST(表述性状态传递)架构风格,支持REST交互。
CoAP协议基于UDP协议
CoAP基于UDP协议,其设计初衷就是尽可能地方便地转换为HTTP协议。CoAP让用户可以像使用HTTP协议一样,在资源受限的物联网设备中使用CoAP协议。
AMQP协议
高级消息队列协议(AMQP:Advanced Message Queuing Protocol)是一个提供统一消息服务的应用层标准高级消息队列协议,为面向消息的中间件设计。
AMQP的工作原理
AMQP的工作原理与MQTT类似,也是基于发布-订阅机制。消息代理Broker的交换机组件(Exchange)会把接收到的消息,根据消息的主题,分配到不同的队列中,以便订阅者接收。
RabbitMQ就是在AMQP协议基础上实现的一个消息系统,遵循Mozilla Public License开源协议。RabbitMQ在互联网应用中常被用作消息服务器。
STOMP协议
简单(流)文本定向消息协议(STOMP: Simple (or Streaming) Text Orientated Messaging Protocol),提供了一个可互操作的连接格式,允许STOMP客户端与任意STOMP消息代理(Broker)进行交互。
STOMP协议由于设计简单,易于开发客户端,因此在多种语言和多种平台上得到广泛地应用。当前非常流行的开源消息服务器ActiveMQ、Apollo、RabbitMQ(需要插件)都支持STOMP协议。
ActiveMQ支持TCP、XMPP、STOMP等协议进行消息传输
STOMP基于TCP协议,客户端和服务器之间的通信是通过“帧”(Frame)来实现,每个帧由多“行”(Line)组成。STOMP协议定义了帧结构。
Stomp帧格式
STOMP帧第一行是命令,紧跟着键值对形式的Header内容。然后是一个空行,最后是Body内容。
数据分发服务DDS
数据分发服务(DDS:Data Distribution Service for Real-Time Systems),是面向实时系统的数据分布服务,是由OMG组织提出的协议。
DDS的数据分发的实时效率非常高,能做到秒级内同时分发百万条消息到众多设备。DDS在服务质量(QoS)上提供非常多的保障途径,因此适用于国防军事、工业控制这些高可靠性、可安全性应用领域的原
您可能关注的文档
最近下载
- 风力发电基础桩基施工设计方案.pptx VIP
- 矩阵管理与矩阵组织.docx VIP
- 1-9年级必读经典书目总有一天会长大.pdf VIP
- 龙岩市新罗区苏坂镇社区工作者招聘考试基础题汇总2023.docx VIP
- 统编版 高中语文 必修上册 必修上册第七单元大单元教学设计.docx VIP
- 2025至2030年中国公寓式酒店行业市场深度研究及发展趋势预测报告.docx
- 第1-29届历届小学“迎春杯”真题 .pdf VIP
- 环境数据处理与数学模型课件 11-环境质量基本模型.ppt VIP
- 2025 全国青少年信息素养大赛 Python 编程挑战赛(个人赛)初中组决赛模拟试卷(二).docx VIP
- 中建城发住宅标准作业服务手册(工程管理).docx VIP
原创力文档


文档评论(0)