【问题标题】:how persistent order of udp packets in lan?局域网中udp数据包的持久顺序如何?
【发布时间】:2012-03-08 11:32:11
【问题描述】:

通常 UDP 不保证数据包会按照发送的顺序到达。 但是在一个局域网中,如果发送者和接收者只通过一个交换机连接并且路由永远不会改变,那么UDP数据包的顺序是否可能会改变?

特别是 UDP 数据包的顺序可以在网卡和应用程序之间的某处改变吗?以网卡驱动为例?

我可以说如果两台计算机仅通过交换机连接,那么在 100% 的情况下 UDP 数据包的顺序将保持不变?

【问题讨论】:

    标签: udp


    【解决方案1】:

    他们可能会在该测试设置中按顺序到达,但依赖这一事实是一个真的坏主意。只需在您的数据包中添加一个序列号或在适当的情况下使用 TCP。

    【讨论】:

    • 我有序列号,也有恢复算法。我需要决定是否应该使用简单的算法并丢弃以错误顺序到达的数据包(稍后通过 tcp 恢复它们),或者我需要不依赖数据包顺序的更可靠(更慢)的算法。 IE。问题是“接收 (100-a) % 的数据包快,a% 的数据包非常慢”或“接收 100% 的数据包不那么快”哪个更好。要回答这个问题,我需要知道a :)
    • 我猜对于现实世界的应用程序(不仅仅是 2 台主机和一个交换机),您应该始终假设有一小部分丢弃的数据包。如果有疑问,只需使用这两个选项运行一些基准测试,可能会借助以下工具:stackoverflow.com/questions/614795/…
    • 我的真实世界应用程序(交易软件)仅通过一座桥与证券交易所相连......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-12
    • 1970-01-01
    相关资源
    最近更新 更多