HTTP主要用于查看网页.Coap是IoT或WSN的HTTP简化版本.虽然COAP基于UDP,但它应该有ACK消息来模拟TCP.由于COAP比HTTP简单,因此它具有更低的延迟并且消耗更少的功率.
那么,为什么浏览器和Web服务器不能用COAP替换HTTP?鉴于以前的论点,是否预计COAP将完全取代HTTP?这只是时间问题吗?是否有任何仅受HTTP支持的功能?
可以通过Coap/MQTT等物联网协议完成视频流(50 Kbps等低比特率),与HTTP/RTP或TCP/UDP流相比,性能要好得多吗?或者底层视频流架构对使用CoAP/MQTT的用例没有帮助.我期待一些好的资源或例子来支持或不支持我的问题.我问了这个问题,因为我找不到有关物联网协议视频流的好资源.请帮忙.
我实现了CoAP(libcoap)和DTLS(tinyDTLS)的实现.如何使用DTLS(tinyDTLS)进行集成CoAP(libcoap)?
我会很感激任何建议.
我一直在考虑将gRPC用于'IoT'型设备; 没有像传感器那样受限制的东西; 更像是单板计算机内置设备,如机器人,无人机等.设备和集中控制器之间的接口需要什么,因为这些设备是由其他公司单独开发的.所以版本化的界面语言是必须的; 它不应该只是在word文档中; 可编程的东西,如头文件或WSDL或IDL或ProtocolBuffer.在设备和控制器之间也应该为注册,重新注册等常见用例指定行为.这可以在word文件或某些非技术文档中.
协议缓冲区(版本3)中的(rpc)接口规范以及通过gRPC的高效实现使我能够通过CoAP/LWM2M(乐山Java和C++实现)进行选择.
使用LWM2M和grPC后,我会说gRPC对开发人员更友好; 与OMA LWM2M进程相比,接口定义和实现速度很快.当然,gRPC中没有Observer-Notify,但对于MQTT应该足够了.
严格来说,无法将LWM2M与gRPC进行比较.LWM2M不仅仅是接口,而且还定义了许多物联网案例中的行为,如BootStrap,Registration,KeepAlive,SW Upgrade等,其通用HTTP如GET,PUT在URL类型可寻址资源上使其非常完整.但是,大多数这些行为都可以通过一些努力进行自定义.
我们计划编排的一些物联网事物远不是像灯泡这样的小脑器,更像是机器人.有没有人使用gRPC用于类似目的.分享任何失败故事的成功
我是这项技术的新手,有人可以帮助我了解一些疑问吗?
Q-1.CoAP数据包的大小是多少?
(我知道有4个字节的固定标头,但是包括标头,选项和有效负载的最大大小限制是多少?)
Q-2.像MQTT这样的Keep Alive有什么概念吗?
(它在UDP上工作了多长时间保持打开连接,是否有任何默认时间或每次发送数据包时都保持打开状态?)
Q-3.我们可以使用CoAP和TCP吗?
(CoAP的主要问题是它适用于UDP,是否有像MQTT QoS这样的概念?假设传感器每隔一秒发布一些数据,如果用户下线,CoAP中是否有任何保证,订户将获得所有数据时它上线了?)
Q-4.连接的持续时间是多少?
(CoAP支持发布/订阅架构,可能一直需要连接打开,是否可以与CoAP一起使用它是否基于UDP.)
Q-5.它是如何发现资源的?
(我有一个网关和5个传感器,这些传感器将如何连接到网关?网关会找到这些传感器吗?或者传感器会找到网关吗?)
Q-5.传感器如何在网关中注册?
请帮帮我,我真的需要回答.我对这些事情都很陌生,并建议我实施的观点.
谢谢.
我正在使用 Eclipse Californium 处理 CoAP 应用程序,我需要使用 URL 传递参数,就像我们在 Restful Web 服务中所做的那样。是否可以在 californium coap 实现中做到这一点,如果可以,请告诉我如何做到这一点。前任:
coap://localhost:5683/foo/{fooID}
Run Code Online (Sandbox Code Playgroud) 上下文:每个客户在 NAT 后面可以有 100-1000 个物联网设备。我们有多个客户。目的是从外部管理这些设备。设备使用 CoAP 协议,默认使用 udp。
限制很少。
问题 我们想随时从外部打开与设备的连接。但是有 NAT 阻止它。
选项 据我了解,设备必须打开初始请求才能进行通信。
以下哪个选项是关于可扩展性和效率的最佳选项?
非常感谢
我只是想知道是否有办法在浏览器中发送CoAP查询(使用JavaScript?),但不使用node.js.
谢谢!
格式化 CoAP 数据包
[RFC 7252 CoAP][1]
在 RFC 7252 第 3 节,图 7 第三行,字节 9 ... 16 或更多,是选项字段。我找不到任何指定选项字段有多长的内容。我知道它可以改变,但与由字段 TKL 指定长度的 Token 字段不同,我无法识别在哪里指定了选项的长度。
是的,我看到了 3.1 和 3.2 节,但我无法理解他们在告诉我什么。该文件指出要引用以前的选项。好的,对于没有前一个数据包也没有前一个选项的第一条消息,你会怎么做?
当我的代码需要发送 CoAP 消息时,如何确定可以发送哪些选项?必须将哪些值加载到数据包中才能发送,例如,没有选项?