CoAP协议:Constrained Application Protocol
CoAP协议主要是应用于资源限制型的物联网设备,协议是基于消息请求/响应模型。
CoAP协议和HTTP协议的主要区别:
1. CoAP报头采用二进制,HTTP报头采用文本。
2. CoAP降低了头header的可用选项的数量。
3. CoAP降低了一些HTTP的方法,如删除了TRACE、OPTIONS方法。
4. CoAP可用支持检测装置。
MQTT协议:Message Queuing Telemetry Transport
MQTT协议是基于客户端/服务端的消息发布/订阅传输协议,由IBM在1999年发布。
CoAP协议和MQTT协议的主要区别:
1. CoAP协议是请求/响应模型,MQTT协议是发布/订阅模型。
2. CoAP协议基于UDP协议,无连接;MQTT协议基于TCP协议,长连接。
3. CoAP是一个在Server和Client之间传递信息的单对单协议,MQTT是多个客户端通过中央代理进行消息传递的多对多协议。
MQTT | CoAP | |
传输方式 | TCP | UDP |
消息类型 | 发布/订阅 | 请求/响应 |
实效性 | 好 | 差 |
功耗 | 一般 | 小 |
反向控制 | 好 | 差 |
QoS支持 | 是 | 否 |
附录:
mosquitto是MQTT3.1协议的代理服务器的实现。mosquitto安装(Ubuntu):
(1)引入mosquitto仓库并更新。
sudo apt-get install software-properties-common
sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa
sudo apt-get update
(2)安装mosquitto包。
sudo apt-get install mosquitto
(3)安装mosquitto开发包。
sudo apt-get install libmosquitto-dev
(4)安装mosquitto client。
apt-get install mosquitto-clients
引用:《自己动手设计物联网》
https://blog.csdn.net/MENGHUANBEIKE/article/details/75212695