【问题标题】:UDP order of bytes in a packet数据包中的 UDP 字节顺序
【发布时间】:2017-02-25 17:02:02
【问题描述】:

我正在开发一个应用程序,其中几个客户端通过 UDP 将音频流式传输到 Rasbperry PI。从其他主题中,我了解到通过 UDP 发送的数据包的顺序不能保证以相同的顺序到达。 但是数据包中的字节怎么样,我可以假设它们会以与发送者发送相同的顺序到达吗?

我想将发件人的一些状态信息嵌入到一个包中,我可以使用包的前几个字节来执行此操作吗?在这种情况下,我需要确保这些字节在发送方和接收方的相同位置。 这是一个很好的方法吗?

【问题讨论】:

  • 你真正需要做的是创建一个应用层协议。这就是 VoIP、HTTP 等所做的。然后您的应用程序可以使用此协议丢弃乱序数据包。对于音频,您不能花时间重新排序数据包,而且您真的不想使用在有用后到达的数据包。各种 VoIP 实施使用多种协议来为您执行此操作,或者您可以自行开发。

标签: networking udp


【解决方案1】:

UDP 数据包中的字节顺序保持不变。虽然 UDP 不是一种可靠的协议,但重复、重新排序或数据包丢失仅发生在整个数据包中,而不是数据包中的单个字节。

【讨论】:

    猜你喜欢
    • 2016-06-16
    • 2011-04-14
    • 1970-01-01
    • 2020-06-06
    • 2017-10-10
    • 1970-01-01
    • 2011-06-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多