gpt4 book ai didi

java - 如何使用udp将大文件从服务器传输到客户端

转载 作者:行者123 更新时间:2023-11-29 05:02:46 25 4
gpt4 key购买 nike

我想做一个java项目。我的目标是使用 UDP 将大文件从服务器传输到客户端。我发现 UDP 不支持大于 84kb 的数据?那么如何做这个..?有什么办法吗?

最佳答案

如果这是出于任何实际目的,您应该使用 TCP。然而,如果它是为了学习,这将是一个非常有趣的练习:你基本上需要重新实现 TCP 在 IP 之上提供的功能,所以我建议你先阅读它。总结如下:

TCP 的工作原理是将数据分解成适合单个 IP 数据包的更小块。由于 IP 数据包可能在途中被重新排序,有些可能根本不会出现,因此每个数据包都有一个序列号,允许接收者将它们重新组合成正确的顺序。收件人还必须确认每个收到的数据包;如果发送方在一定时间内没有收到数据包 x 的确认,它将重新发送数据包 x (并定期重复发送直到被确认).这意味着收件人还必须准备好接收同一数据包的多个副本。

因此,在您的情况下,您需要为 UDP 数据报确定某种格式:例如,前八个字节可能包含发送方为文件选择的随机标识符(以便不同的文件可以同时传输而无需数据报混淆),接下来的四个字节将是序列号,数据包的其余部分将是实际文件数据的一部分。也许第一个数据包也应该包含文件名,以及文件包含的数据报总数。确认数据报只需要包含标识符和序列号。

关于java - 如何使用udp将大文件从服务器传输到客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31494335/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com