收到大量多播时,单声道丢弃数据包

时间:2010-10-19 15:01:52

标签: mono udp multicast

我正在创建一个通过多播侦听视频流的程序。在Linux上使用Mono收听一个Feed可以正常工作,但是听15个Feed会丢弃数据包。在Windows .NET上运行代码不会丢弃数据包,并且在Linux上使用C程序监听订阅源不会丢弃数据包。有什么我可以做的来优化这个吗?

1 个答案:

答案 0 :(得分:2)

根据您使用的机制,代码方式,您可能无法足够快地捕获数据包。这将导致多播数据的丢失,这本质上是不可靠的。 如果没有关于所采用机制的更多信息,很难给你更具体的建议。

根据评论更新:

如果每个接收器有一个线程,线程多于CPU,则可能超额订阅线程,导致大量昂贵的上下文切换。这可能会导致数据包丢失。