图片113
物联网之XMPP协议(即时通讯)
XMPP(Extensible Messaging and Presence Protocol)可以扩展通信和展示协议,它的前身是Jabber,这是由开放源码组织生成的网络即时通信协议。XMPP是目前由IETF国际标准组织进行的标准化工作。
适用性:即时通讯应用,也可用于网络管理、内容供稿、协作工具、文件共享、游戏、远端系统监控等。
其特征如下:
(1)客户端/服务器通讯方式;
(2)分布式网络;
(3)简化客户端,大部分工作都在服务器端完成;
(4)标准通用标记语言的子集XML数据格式。
此外,XMPP是基于XML的协议,由于XMPP的开放性和易用性,被广泛地应用于因特网上。与HTTP相比,XMPP在通信业务流程方面更适合物联网系统,开发者无需花费太多精力来解决通信设备时的业务通信过程,因此开发成本相对较低。但HTTP协议的安全性和计算资源消耗这两个硬伤尚未在本质上解决。
物联网之JMS(Java Message Service)
JMS(Java Message Service),JAVA消息服务,在JAVA平台上非常有名的消息队列协议。
Java消息服务(Java Message Service)应用程序接口,是一种Java平台上面向消息中间件(MOM)的API,用于在两个应用程序之间或分布式系统中发送消息,以进行异步通信。Java Message Services是独立于特定平台的API,大多数MOM供应商都支持JMS。
JMS是一个独立于供应商的API,用于访问消息接收和发送系统消息,这种API类似于JDBC(Java Database Connectivity)。JDBC是一个API,它可以用于访问很多不同的关系型数据库,而JMS提供了与供应商独立的访问方法,用于访问消息接收服务。很多供应商支持JMS,包括IBM的MQ Series、BEA的Weblogic JMS service和Sonic MQ。JMS能够通过消息接收服务(有时也称为消息中介程序或路由器)从一个JMS客户端向另一个JMS客户端发送消息。在JMS中,消息是一个类型对象,它包括两个部分:Header和消息体。Header由路由信息和关于消息的元数据组成。讯息体携带应用程式资料或载入资料。按照负载的类型,可以将消息分成几种类型,它们分别是:简单文本(Text Message),可序列化对象(Object Message),属性集合(Map Message),字节流(Bytes Message),初始值流(Stream Message),还有消息,没有有效负载(Message)。