首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Windows7上的C#:IP多播发送速度慢?

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

Stack Overflow用户
提问于 2012-01-03 00:42:20
回答 1查看 830关注 0票数 1

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

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

有没有人见过这样的东西?

我很乐意分享我的代码(这是Isis2系统的一部分,可以从http://www.cs.cornell.edu/ken/isis2的康奈尔大学免费下载),但我没有这个问题的两行演示。然而,我要说的是,Isis2的这一部分现在已经相当成熟了,随着我对这个库的扩展和工作,它已经快乐地多播了三年左右。如前所述,我怀疑这可能是windows7的问题。

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

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-04 06:22:35

我认为本杰关于NIC的建议可能是正确的。我在另外两台机器上尝试了一下,同样的代码运行起来没有任何问题。在我的运行Windows的苹果电脑上,被“卡住”了。非常好奇。本杰,现在我可以确认可能是网卡了,你知道我应该看什么吗?一定是我在做什么.事实上,Mac在另一方面的表现也很奇怪:突发的IPMC流量会导致我的VPN会话中断。因此,很明显,NIC确实在这些运行期间以某种方式参与其中,即使所有接收器都在一台机器上。

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

不管怎样,谢谢你,本杰。好主意。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8703220

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档