HTTP和COAP之间的主要区别是什么?

Joh*_*yle 12 protocols http coap iot

HTTP主要用于查看网页.Coap是IoT或WSN的HTTP简化版本.虽然COAP基于UDP,但它应该有ACK消息来模拟TCP.由于COAP比HTTP简单,因此它具有更低的延迟并且消耗更少的功率.

那么,为什么浏览器和Web服务器不能用COAP替换HTTP?鉴于以前的论点,是否预计COAP将完全取代HTTP?这只是时间问题吗?是否有任何仅受HTTP支持的功能?

小智 10

如果coap效率更高,如果我们将它们替换为coap,我可以说http在将来是无用的吗?

行业计划是通过转移到HTTP/2来改进HTTP,而HTTP/2包括(其他功能)头压缩,这应该带来与CoAP类似的好处.

虽然目前大多数Web服务器和某些浏览器都支持HTTP/2,但AFAIK没有浏览器,也没有任何服务器支持CoAP.TLS与DTLS也是如此.

是否有功能衔接不能支持但http可以吗?

正如您所说,HTTP是基于TCP的,而CoAP是基于UDP的.UDP要求您每隔几秒发送一次UDP ping以保持NAT /防火墙连接打开,而在TCP中通常只需要每15分钟左右一次.因此,如果您需要保持连接打开(例如,对于推送技术),那么CoAP的效率低于HTTP(和HTTP/2).


小智 6

CoAP 从来没有打算取代 HTTP,虽然它似乎“模仿”了 http,只是因为它遵循 RESTful 范式。CoAP 旨在作为设备的应用层,更具体地说,是为约束设备设计的。

还选择了 RESTful 设计以促进通过 http 的代理操作(在 RFC 中建议这样做)。但再次从未打算取代HTTP。

CoAP 是在考虑少量资源的情况下构建的。CoAP 的小标题和不同的功能到位,以确保约束设备具有在互联网上进行通信的标准。

HTTP 和 CoAP 各有各的目的。