在单个邮件的CoAP中发送数据的大小限制是什么?
答案 0 :(得分:0)
CoAP实现通常会引入自己的最大消息大小设置(因此是默认值)。
有关如何在特定情况下选择适当限制的更多信息,请参阅RFC 7252的第4.5点:
RFC 7252 - The Constrained Application Protocol (CoAP)
引用它:
CoAP规范本身仅提供消息大小的上限。 大于IP分组的消息导致不期望的分组分段。 CoAP消息,适当封装,应该适合 单个IP数据包(即,避免IP分段)和(通过适应 一个UDP有效负载)显然需要适合单个IP数据报。 如果目的地不知道路径MTU,则IP MTU为1280 字节应该被假设;如果没有人知道的大小 标题,良好的上限是1152字节的消息大小和 有效载荷大小为1024字节。
此外,它还取决于网络堆栈的实现:
实施注意:CoAP选择的邮件大小参数有效 与IPv6以及当今大多数IPv4路径一起使用。 (然而, 使用IPv4,绝对难以确保没有IP 碎片。如果异常网络上的IPv4支持是 考虑,实现可能想要限制自己 更保守的IPv4数据报大小,如576字节;每 [RFC0791],IPv4的IP MTU的绝对最小值为 低至68字节,这将只留下40个字节减去安全性 UDP有效负载的开销。实施非常关注 此问题集还可能设置IPv4 DF位并执行一些操作 路径MTU发现的形式[RFC4821];这应该是一般的 然而,对于CoAP的实际使用案例是不必要的。)更多 许多受约束网络中的重要碎片是 在适应层上(例如,6LoWPAN L2分组是有限的) 到127个字节,包括各种开销);这可能会激发 实现节省数据包大小并移动到 当接近三位数消息时,逐块传输[BLOCK] 大小。 ```
如果您想发送大型消息,还有另一种规范。
RFC 7959: Block-Wise Transfers in the Constrained Application Protocol (CoAP)
大多数流行的实现也实现了这个规范。