【发布时间】:2015-05-08 06:44:19
【问题描述】:
我确实发现了一些其他相关的问题,但没有任何东西能真正给出我正在寻找的答案。
我正在使用 Boost.Asio 和 ip::udp::socket (http://www.boost.org/doc/libs/1_57_0/doc/html/boost_asio/reference.html)
从此页面:http://en.wikipedia.org/wiki/User_Datagram_Protocol#IPv4_Pseudo_Header : 它声明 UDP 校验和对于 IPv4 是可选的。
查看https://www.rfc-editor.org/rfc/rfc768 似乎通常只有启用调试时才会出现这种情况?
另见:http://www.boost.org/doc/libs/1_57_0/doc/html/boost_asio/reference/basic_datagram_socket/debug.html
将调试设置为 false 是否足以确保计算 UDP 校验和,或者如何确保 100% 确保计算 UDP 校验和,以便在使用 UDP/IPv4 时可以安全地忽略底层数据包协议中的校验和计算?
我知道 UDP/IPv6 保证校验和计算,但我不能将我的系统限制为仅使用 IPv6。
【问题讨论】:
标签: c++ boost udp boost-asio checksum