2种传输协议 HTTP协议是Web联网的基础,也是应用最为广泛和流行的协议,HTTP连接最显著的特点是客户端发送的每次请求都需要服务器回送响应,在请求结束后,会主动释放连接。从建立连接到关闭连接的过程称为“一次连接”。
MQTT是一种基于发布/订阅模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,用极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。
2种传输协议的区别
● 吞吐量不同
根据3G网络的测量结果MQTT的吞吐量比HTTP快93倍。此外,与HTTP相比,MQTT协议确保了高传输。
● 架构不同
MQTT适用于发布、订阅模型;HTTP适用于请求、响应模型。
● 协议设计不同
MQTT协议的设计是以数据为中心的;HTTP协议的设计是以文档为中心的。
● 复杂性和消息大小不同
MQTT具有相当短的规范。只有CONNECT,PUBLISH,SUBSCRIBE,UNSUBSCRIBE和DISCONNECT类型对开发人员很重要。而HTTP规范要长得多。
MQTT具有非常短的消息头,并且最小的包消息大小为2个字节。通过HTTP协议使用文本消息格式允许它组成冗长的标题和消息。它有助于消除麻烦,因为它可以被人类阅读,但同时它对于资源受限的设备是不必要的。
● 标头大小、端口号不同
MQTT是2个字节,适用于1883端口;HTTP有8个字节,适用于80或8080端口。
● 数据安全不同
MQTT通过SSL/TLS提供数据安全;HTTP不提供安全性,但Https就是为此而构建的。