【发布时间】:2017-02-25 17:02:02
【问题描述】:
我正在开发一个应用程序,其中几个客户端通过 UDP 将音频流式传输到 Rasbperry PI。从其他主题中,我了解到通过 UDP 发送的数据包的顺序不能保证以相同的顺序到达。 但是数据包中的字节怎么样,我可以假设它们会以与发送者发送相同的顺序到达吗?
我想将发件人的一些状态信息嵌入到一个包中,我可以使用包的前几个字节来执行此操作吗?在这种情况下,我需要确保这些字节在发送方和接收方的相同位置。 这是一个很好的方法吗?
【问题讨论】:
-
你真正需要做的是创建一个应用层协议。这就是 VoIP、HTTP 等所做的。然后您的应用程序可以使用此协议丢弃乱序数据包。对于音频,您不能花时间重新排序数据包,而且您真的不想使用在有用后到达的数据包。各种 VoIP 实施使用多种协议来为您执行此操作,或者您可以自行开发。
标签: networking udp