"An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full"
Solution 1:
It could be port exhaustion. When application(s) makes too many outgoing connections in short time frame or does not dispose outgoing connections properly - you run out of ports.
Here is the link to rather lengthy explanation and a way to diagnose the issue
Solution 2:
This seems to happen when you run out of resources (sockets?) or memory. At the command prompt run: netstat -ab
I'm not sure off hand what the socket limit is. I'm currently fighting an issue like this myself.
Notes on socket limits: http://support.microsoft.com/kb/196271
Solution 3:
You can encounter this error message if resource limits are being exceeded. A System.Net.Sockets.Socket
implements IDisposable
. Are you disposing of your socket(s) once you're finished with them?
Leaving them around for the garbage collector is an excellent way to leak resources.
Solution 4:
I have this same error, but only on Windows 7. If I run my same multicast app on Vista it works. It pops up a system dialog to unblock the behavior from the app, but it runs. This is probably a changed networking permissions thing in win7. I'm still looking for a solution. If someone else finds one, please post.
Solution 5:
I've had the same issue (a.k.a error 10055) when trying to connect to a local MySQL database. I believe you need to raise the number of dynamic ports that the operating system allows.
The solution that worked for me was mentioned here I believe it may help you as well, since you are using Windows. Best of luck!