我如何解码为 UDP 碎片包 header?

how can i decoding to UDP fragmentation packages header ?

我的应用程序正在监听一些 UDP 多播。 此多播是发送消息 - 此消息大小非常大(~9500000 字节)。

我不知道 UDP 发送器是如何工作的,因为这不是我可以控制的代码。
但是发件人使用碎片来发送所有包。

我使用 wireshark 查看包,并在任何消息的 header 上看到标志,告诉我这个包是最后一个包还是在这个包之后是否还有更多包。

我尝试用我的代码解码消息 header - 但我每次都失败了。

我尝试使用 Encoding.ASCII & Encoding.Unicode - 但这不起作用,我无法确定何时完成从碎片中收集所有包。

任何帮助请...

wireshark 如何查看它并解码 header?

找到答案

我无法直接从 "normal" 套接字或 UdpClient 访问 IP 或 UDP headers(远程主机的 IP 地址除外),只能访问正在传输的数据("payload").底层网络机制会处理这个问题。

https://social.msdn.microsoft.com/Forums/en-US/8723498d-c276-4bb4-9d2d-9211ce5d7487/parse-udp-headers

所以不知道分片包是否完成。