Have seen this issue in the past on Win98. It was resolved by adding a key to the registry "MaxConnections" to override the default buffer size.
Looking for a fix for XP the following may help:
EVENT LOG ERROR WSAENOBUFS (10055)
An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full.
Start Registry Editor.
Locate the following subkey in the registry, and then click Parameters:
On the Edit menu, click New, and then add the following registry entry:
Value Name: MaxUserPort
Value Type: DWORD
Value data: 65534
Valid Range: 5000-65534 (decimal)
Default: 0x1388 (5000 decimal)
Sorry if it doesn't help.