Windows7上的C#:IP多播发送速度慢?

Windows7上的C#:IP多播发送速度慢?,c#,.net,multicast,C#,.net,Multicast,我有一个在Windows上运行良好的应用程序,但在Windows 7上似乎变得非常慢。我已经跟踪到一个未绑定的套接字,在该套接字上使用“sendto”进行IP多播发送。这些调用通常在~1ms内完成,但在我的windows 7 64位配置中,我看到一些完成时间为1s到2s(是的,慢1000倍)。我的数据包相当大,我已经相应地重新配置了套接字缓冲区 在这些特定的测试中,我在我的一台笔记本电脑上运行了六个应用程序,形成了一个多播组,因此多播发送实际上是回环的,不需要在网络上运行。我不知道我在不同机器上

我有一个在Windows上运行良好的应用程序,但在Windows 7上似乎变得非常慢。我已经跟踪到一个未绑定的套接字,在该套接字上使用“sendto”进行IP多播发送。这些调用通常在~1ms内完成,但在我的windows 7 64位配置中,我看到一些完成时间为1s到2s(是的,慢1000倍)。我的数据包相当大,我已经相应地重新配置了套接字缓冲区

在这些特定的测试中,我在我的一台笔记本电脑上运行了六个应用程序,形成了一个多播组,因此多播发送实际上是回环的,不需要在网络上运行。我不知道我在不同机器上的应用程序是否会出现问题;将测试这种情况,但即使问题在其他配置中消失,我也需要Isis2以这种方式工作

以前有人见过这样的吗

我很乐意分享我的代码(这是Isis2系统的一部分,可从康奈尔大学免费下载),但我没有关于这个问题的两行演示。然而,我要说的是,Isis2的这一部分现在已经相当成熟,并且在我扩展和使用该库的过程中,已经愉快地进行了3年左右的多播。如前所述,我怀疑这可能是Windows7的问题


我从来没有看到过小数据包的问题,所以它肯定与我发送大数据包有关。

我认为Benjie关于NIC建议的说法可能是正确的。我在另外两台机器上试过,同样的代码运行起来没有问题。在我运行Windows的Apple Mac上,出现了“卡住”。。。很好奇。那么,本杰,现在我可以确认它可能是NIC,你知道我应该看什么吗?一定是我在做什么。。。事实上,Mac在另一方面的行为也很奇怪:IPMC流量的突发导致我的VPN会话中断。因此,很明显,在这些运行过程中,NIC确实以某些方式参与其中,即使所有接收器都在一台机器上

目前,我已经解决了这个问题,当我在Mac上运行的单一Windows平台上进行实验时,将TTL值设置为0。这还有一个额外的好处,那就是我不会在楼下的互联网广播和电视上进行DDoS攻击。但我很好奇,很想了解在家里无线进行IPMC时,什么可能会导致2秒延迟


无论如何,谢谢本杰。好主意。

不过,我可以保证,如果你们中有人对我有很好的见解,我一定会接受。肯,如果你最终在网站之外找到答案,请随意回答你自己的问题,并将其标记为已接受。这些信息将来也可能对其他人有用!好建议,我会的。非常旧的线程现在被标记为关闭,所以我不能追溯。有点遗憾,因为事实上你的观点是完全正确的。“我从来没有看到过小数据包的问题,所以它肯定与我发送大数据包有关。”你的“大”数据包有多大?Bengie,它有所不同,但在本例中,我将发送和接收缓冲区大小设置为32KB