UDP数据包碎片

时间:2014-05-24 17:04:56

标签: udp boost-asio fragmentation

在阅读了几十篇文章之后,我找不到一个简单问题的答案 - UDP数据报是否可以分散?我知道如果它的大小超过576字节或类似的东西,它会在路上碎片化,但它会在到达时合并吗?

换句话说,如果我通过udp::socket::send_to()发送一个数据包,我可以假设如果它没有被丢弃,我会通过一次调用udp::socket::async_receive_from()来检索它吗?

1 个答案:

答案 0 :(得分:3)

OS网络堆栈将重新组合片段并为用户空间提供完整的数据包。如果其中一个片段丢失,用户空间将无法接收其余片段,但没有。