如何为 Californium 服务器设置消息大小 (PDU)?

How I can set a size of message (PDU) for the Californium server?

如何为 Californium 服务器动态设置 PDU 的大小?

上下文:

1) 我的设备实现了 coap-client 功能。 此设备受到 RAM 的限制,rx/tx 缓冲区大约有 200 个可用字节。

在请求中,设备可以发送首选 PDU 大小。但我不明白如何使用此 PDU 大小配置服务器响应。可能吗?

2) 在这种情况下是否可以使用块级功能?

好的,我找到了方法。

这不是 Californium 的责任。通过 block-wise 选项 Block2.

管理 PDU 大小

参见 CoAP block-wise RFC Section 3.1:

In the second example (Figure 3), the client anticipates the block- wise transfer (e.g., because of a size indication in the link-format description [RFC6690]) and sends a block size proposal. All ACK messages except for the last carry 64 bytes of payload; the last one carries between 1 and 64 bytes.

Client                                                   Server
|                                                          |
| CON [MID=1234], GET, /status, 2:0/0/64           ------> |
|                                                          |
| <------   ACK [MID=1234], 2.05 Content, 2:0/1/64         |
|                                                          |
| CON [MID=1235], GET, /status, 2:1/0/64           ------> |
|                                                          |
| <------   ACK [MID=1235], 2.05 Content, 2:1/1/64         |
:                                                          :
:                          ...                             :
:                                                          :
| CON [MID=1238], GET, /status, 2:4/0/64           ------> |
|                                                          |
| <------   ACK [MID=1238], 2.05 Content, 2:4/1/64         |
|                                                          |
| CON [MID=1239], GET, /status, 2:5/0/64           ------> |
|                                                          |
| <------   ACK [MID=1239], 2.05 Content, 2:5/0/64         |

    Figure 3: Block-Wise GET with Early Negotiation