networking - DTLS 消息的最小大小

标签 networking ssl udp dtls

我一直在阅读规范,rfc4346 和 rfc4347,但是我没有看到任何关于 DTLS 记录最小大小的提及,即在本例中为 UDP 负载大小。

从 DTLS/TLS 的角度来看,是否有任何决定大小的要求?鉴于 DTLS header 是固定的并且具有预定义的长度,那么可以是握手或应用程序数据的记录呢?

谢谢。

最佳答案

DTLS 为握手消息提供了自己的分片机制,它也负责重新排序的数据包(在握手消息头中有一个分片偏移量/长度字段)。这有助于 dtls 发送大于 PMTU 大小的数据包(通常是证书消息)。对于应用程序数据,您可以依靠内核对数据包进行分段并重新组合它们。如果您想关闭内置碎片,您可以使用以下命令:

SSL_CTX_set_options(ctx, SSL_OP_NO_QUERY_MTU);

然后你可以在你的 ssl 中设置一个巨大的 mtu 值

SSL_set_mtu(ssl, <big_value_here>);

这样你就可以让你的内核处理碎片和重组。

关于networking - DTLS 消息的最小大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21635441/

相关文章:

ios - 为什么uploadTaskWithRequest :fromData: need a data argument?

python套接字取消设置选项而不破坏套接字

jakarta-ee - Glassfish 3 和导入签名的 SSL 证书问题

JavaMail IMAP 邮件内容 SSL/NON SSL

c++ - 为什么可以 boost asio udp 连接抛出 "send: Connection refused"?

c# - 在 Windows Phone 7 中异步接收 UDP 单播数据包的问题

MySQL:从另一台服务器选择

ssl - 我如何知道在 SSL 上下文中加载的 CA 主题名称列表

networking - 广播

iphone - iPhone 点对点使用 Bonjour 协议(protocol)的替代方案