2011-05-15 57 views
0

通过UDP传输文件的最快方式是什么?
B)为每个文件块创建一个大的数据报,发送多个(编号的)数据报,发送该文件,并等待来自客户端的确认,然后继续执行
B)等待收到所有部分的确认,然后继续转移。如果某些不拥有5秒接收,重新发送这些部分
C)其他一些方法,我还没有意识到通过UDP传输文件的最快方法

+2

为什么你需要使用UDP? – ChaosPandion 2011-05-15 22:57:56

+4

如果您想要可靠的文件传输,请使用TCP。我只会使用UDP的情况下,你可以容忍一些损失,只需发送的数据包没有检查,包括一些时间戳,所以你可以丢弃客户端上的乱序数据包。 – tvanfosson 2011-05-15 22:58:36

+0

@tvanfosson:NFS使用UDP,因为它比TCP更轻量级。你会得到一些非常棒的速度。 http://stackoverflow.com/questions/584112/why-does-nfs-use-udp-by-default – 2011-05-15 23:52:20

回答

2

物B比A快,但解决方案C是更加快速的(安全):使用TCP尝试,而不是UDP

+0

由于上述评论中的原因,不能使用TCP。 – IDWMaster 2011-05-16 00:36:20

2

事实上,任何事情我能想到的(C)将英里比二者快。它们都不使用窗口,因此它们不能使用所有可用的带宽延迟产品。 (B)实际上是一个非常差的协议设计。

当您将所有必需的功能添加到UDP时,您将拥有TCP。使用TCP。

+0

TCP无法使用。查看我发布在我的问题上的评论。 – IDWMaster 2011-05-16 00:37:18