Win Error: 10048 in Sagent Automation "Address already in use"

Product Feature: Automation Client

Operating System: Windows 2003



Win Error 10048 in Sagent Automation "Address already in use"


WinError:10048 Only one usage of each socket address (protocol/network address/port) is normally permitted. This can also result in a DFS crash. Most common occurrence is with numerous parallel running plans through Automation or SARUN.
This is a shortcoming for Microsoft’s current Winsock/TCP implementation. When an application calls “connect”, Winsock internally generates a bind with 0 port to the stack (TCP), which picks the first available port. However, sometimes TCP picks up a port in the TIME_WAIT state. When this happens a connect() call can fail with WinError: 10048.


UPDATED: September 19, 2017
There is registry setting that can be added to increase the number of user ports, therefore reducing the chance of re-using a port in the TIME_WAIT state.
This setting should be applied to the Sagent client machine which is generating the connections to the Sagent Dataflow Service, most likely the Sagent Automation Server executing many parallel running plans.

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters\ (DWORD) MaxUserPort . The default is 5000 and can be adjusted to a maximum of 65534.