好的,在任何人问之前,TCP 不是一个选项。
所以,我正在通过 UDP 发送一些消息。每条消息的开头都有一个 4 字节长度的字段。到目前为止,我一直在使用这个字段来确定我是否有完整的消息。
但我想知道,如果我有两条大消息,足够大以至于它们都像这样分散:
Message 1
Length 1 | Fragment 1-1 | Fragment 1-2 | Fragment 1-3
Message 2
Length 2 | Fragment 2-1 | Fragment 2-2 | Fragment 2-3
我一个接一个地发送,是否可以像这样交错发送它们:
Length 1 | Length 2 | Fragment 1-1 | Fragment 2-1 | Fragment 1-2 | Fragment 2-2 | Fragment 1-3 | Fragment 2-3
如果是这样,如果我无法控制消息的分段方式,我怎么可能重新组装这些?
编辑:另外..我只是想到UDP可能不会分段,而我看到的“分段”可能来自.receive()
使用固定大小的缓冲区调用该方法。所以也许这甚至不是问题。谁能确认UDP是否碎片?