压力测试.NET程序在Windows 10上引发异常

时间:2015-08-19 15:39:45

标签: c# .net sockets windows-10 ddos

我从我写的压力测试程序中得到了这个方法:

void UdpStress(IPEndPoint destination)
{
    byte[] data = new byte[] { 255 };
    Socket s = new Socket(System.Net.Sockets.AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
     while (true) 
         s.SendTo(data, destination); 
}

运行此方法后,我在不到1秒的时间内收到以下异常:

System.Net.Sockets.SocketException: An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full

我在Windows 8上运行它并且工作得很好。

我大约2周前升级到Windows 10,现在它无效。我怀疑它与Windows 10中的修改过的Socket API有关,或者其他什么。

那么,这个错误来自哪里?为什么现在在Windows 10中发生这种情况,但在Windows 8中根本没有发生?

编辑:另一个问题的答案并没有解决我的问题。他们建议端口耗尽这样的事情,这可能是可能的,但在我升级到Windows 10之前从未发生过。该程序在Windows 8上工作得非常好但是现在,由于我难以理解的原因,在Windows上不起作用10因为这个例外。此外,有一个答案说它适用于Vista而不是7,这表明操作系统之间有一些不同的限制压力测试程序。这是什么?我能以某种方式解决它吗?

0 个答案:

没有答案