为什么UDP重新排序数据包

时间:2012-10-04 12:54:06

标签: udp

我知道UDP并不总是按顺序接收数据包,但我怎么能找出原因?数据包是否在传输中丢失或重新排序。例如,不同的包采用不同的路由并在不同的时间到达。或者是腐败的包被重新发送并因此到达?

我希望如果可以在帖子中回答这个问题,但是如果你可以将我重定向到一个更好的来源,也会受到赞赏。

2 个答案:

答案 0 :(得分:1)

单个网络交换机可能会将最后两个数据包重新排序为head-of-line blocking的副作用,因此级联交换机将导致进一步重新排序,然后由于距离不同而导致多个路径无法保证订购用数据报排序。

这是一篇关于这个主题的论文:

答案 1 :(得分:0)

出于速度和效率的目的,不按顺序接收数据包,这意味着任何数据包都可以采用任何路由,而不必等待任何其他数据包到达/发送。因为可靠性不是UDP的主要问题之一,所以它并不关心。

丢弃的数据包也不会重新发送,因为两端都没有进行检查。 UDP主要用于丢失少量数据包的东西,如流媒体,VoIP等。

如果您需要可靠性,则需要使用TCP。