Descripciones de Winsock Error 10050-10059
WSAENETDOWN (10050) Network is down
Una operación de socket a encontrado una red muerta. Comprueba tu Winsock, pila del protocolo, driver de red y la configuracion de la interfaz de red. Este error ocurre raramente, porque la implementacion de Winsock no esta pensada para la deteccion de problemas de hardware.
WSAENETUNREACH (10051) Network is unreachable
Una operación de socket ha sido intentada con una red no localizable.
TCP/IP escenario: El sistema de red local puede gererar este error si no hay una ruta por defecto configurada. Habitualmente, Winsock genera este error cuando recibe un error ICMP de host no localizable desde el router. El mensaje ICMP significa que el router no puede encaminar el datagrama IP, posiblemente porque no tiene respuesta a una peticion ARP (lo cual significa que el host destino esta caido). Este error tambien puede ser debido a que has intentado enviar un paquete multicast y la puerta de enlace por defecto no admite el multicast.
WSAENETRESET (10052) Net dropped connection or reset
El host al cual estabas conectado se ha caido y reiniciado. Prueba a reconectar mas tarde.
WSAECONNABORTED (10053) Software caused connection abort
Un aborto de conexión ha sido causado internamente en tu host. El software ha causado un aborto de conexión porque no hay espacio en la cola del socket y el socket no admite mas conexiones.
Descripcion Winsock: El error puede ocurrir cuando el sistema de red local aborta una conexión. Esto podria ocurrir si Winsock aborta una conexión establecida despues de un fallo en la retransmision de datos (el receptor nunca recibe ACK de los datos enviados en un “datastream”).
TCP/IP escenario: Una conexión tendra un timeout si el sistema local no recibe un ACK para los datos enviados. Puedes tener un timeout tambien si un paquete FIN no es ACK.
WSAECONNRESET (10054) Connection reset by peer
Una conexión ha sido forzosamente cerrada por un par. Esto normalmente es resultado de una perdida de la conexión en un socket remota debido a un timeout o un reinicio.
Sugerencias a usuarios: Algunos sistemas de red tienen comandos para reportar estadisticas. En este caso, puede ser posible comprobar la cantidad de paquetes TCP RST recibidos, o paquetes de ICMP con errores de puerto no localizable. Puedes ver otras sugerencias en WSAECONNABORTED.
WSAENOBUFS (10055) No buffer space available
Una operación en un socket o pipe no ha sido realizado porque el sistema carecia de suficiente espacio de buffer o porque la cola estaba llena.
Este error indica un corte de los recursos en tu sistema. Esto ocurre si estas intentando correr en tu maquina demasiadas aplicaciones (de cualquier tipo) simultaneamente. Esto tiende a occurrir despues de correr ciertas aplicaciones durante un tiempo, puede ser un sintoma de una aplicación que no devuelve apropiadamente los recursos del sistema (como la memoria). Tambien puede indicar que no se han cerrado las aplicaciones correctamente. Si persiste, cierra Windows y reinicia la maquina para solucionar el problema. Puedes monitorizar la cantidad de memoria disponible con el administrador de tareas.
WSAEISCONN (10056) Socket is already connected
Una peticion de conexión se ha realizado sobre un socket todavia conectado; o una peticion sendto o sendmsg() en un socket conectado ha especificado un destino cuando todavia estaba conectado.
Descripcion del Winsock: Winsock no soporta la funcion sendmsg() y alguna implementacion de Winsock no esta estrictamente como requiere una aplicación con un socket datagrama para “desconectar” antes de redireccionar datagramas con sendto o connect.
WSAENOTCONN (10057) Socket is not connected
Una peticion para enviar o recibir datos ha sido desactivada porque el socket no estaba conectado y ( cuando enviamos en un datagrama de socket ) ninguna direccion habia sido definida.
WSAESHUTDOWN (10058) Can't send after socket shutdown
Una peticion de envio de datos ha sido desactivada porque el socket estaba todavia desconexion con una llamada previa de desconexion. Desconectando, haces un cierre parcial del socket, lo cual significa que estas enviando intermitentemente. La implementacion del Winsock no te permite enviar despues de esto.
Cuando aparece este error normalmente significa que el sistema esta intentando enviar un mensaje que era mas largo que lo que el sistema receptor queria aceptar o el sistema receptor tiene el disco duro lleno (o algo similar). El sistema receptor deja de recibir y tiene que cerrar el socket para hacer esto.
WSAETOOMANYREFS (10059) Too many references, can't splice
Hay demasiadas referencias a algun objeto del kernel; la asociacion con el recurso ha acabado.