Hola Michel,
Aquí tienes una descripción: https://en.wikipedia.org/wiki/Winsock
En general un socket, és un "programa" que está esperando una conexión, en el caso de Windows, pues tiene un valor por defecto de los sockets que tiene abiertos y un programa puede escoger varios sockets para comunicarse con ese equipo.
Aquí tienes información sobre cómo modificar el número de sockets: https://msdn.microsoft.com/en-us/library/aa560610(v=bts.20).aspx
En concreto, tienes que ir al apartado que pone: Increase the upper range of ephemeral ports that are dynamically allocated to client TCP/IP socket
connections.
Ahí podrás modificar el rango de puertos que se pueden establecer.
Y más abajo está el timeout (tiempo de espera).
Espero que te sea de ayuda.
Saludos,
Dan Belmonte