我将一个 7mb 的文件分成 512b 个块,然后使用 udp 将其发送到服务器。客户端发送了大约 14000 个数据包,但在服务器端 socket.receive(packet) 仅收到 16 个数据包后阻塞。
有什么想法吗?
我将一个 7mb 的文件分成 512b 个块,然后使用 udp 将其发送到服务器。客户端发送了大约 14000 个数据包,但在服务器端 socket.receive(packet) 仅收到 16 个数据包后阻塞。
有什么想法吗?
UDP被定义为不可靠的协议。数据包可能会丢失,并且不会通知发送者。它们也可能乱序到达,甚至重复到达。
UDP 适用于不需要错误检查和纠正或由应用程序本身执行的用途。
如果您想要一个可靠的协议,请开始使用 TCP。
与 TCP 相比,UDP 既不保证数据包顺序也不保证实际传送(没有 TCP 中的流量控制)。请参阅此问题:确保 UDP 中的数据包顺序