Foros del Web » Administración de Sistemas » Seguridad y redes »

¿Cuando se establece conexión en servidor con sockets?

Estas en el tema de ¿Cuando se establece conexión en servidor con sockets? en el foro de Seguridad y redes en Foros del Web. Tengo una duda con las funciones listen y accept del servidor. Cuando el cliente intenta conectarse al servidor recibe un -1 o un 0 desde ...
  #1 (permalink)  
Antiguo 02/12/2011, 11:32
Avatar de Slackin  
Fecha de Ingreso: noviembre-2007
Ubicación: Puerto Montt, Chile
Mensajes: 86
Antigüedad: 17 años
Puntos: 4
Pregunta ¿Cuando se establece conexión en servidor con sockets?

Tengo una duda con las funciones listen y accept del servidor.
Cuando el cliente intenta conectarse al servidor recibe un -1 o un 0 desde la función listen del servidor. ¿No debería recibir dicha respuesta desde el accept?.
Es decir, un cliente cuya peticion se acepta en listen esta ya conectado con el servidor y no es necesario el accept para establecer el enlace entre ambos.

Alguien me puede ayudar por favor
  #2 (permalink)  
Antiguo 05/12/2011, 08:13
Avatar de Slackin  
Fecha de Ingreso: noviembre-2007
Ubicación: Puerto Montt, Chile
Mensajes: 86
Antigüedad: 17 años
Puntos: 4
Respuesta: ¿Cuando se establece conexión en servidor con sockets?

¿Hay alguien que me pueda explicar este tema?.
  #3 (permalink)  
Antiguo 07/12/2011, 03:52
 
Fecha de Ingreso: febrero-2011
Mensajes: 581
Antigüedad: 13 años, 9 meses
Puntos: 81
Respuesta: ¿Cuando se establece conexión en servidor con sockets?

Err... No veo tu duda...

A ver... Tal como yo lo entiendo, el estado "listen", como su nombre indica, es "a la escucha".

Es decir, tienes un servidor que está "a la escucha" en un puerto concreto. el socket vinculado a ese puerto puede, o no, tener una serie de restricciones para "aceptar" conexiones entrantes (rangos de IP origen, por ejemplo)...

Cuando se recibe una petición en estado listen, se informa al sistema. En función de las restricciones que hayas establecido, puedes o no aceptar la petición de conexión por ese socket... Si la aceptas, pasas al estado "accept". Si no se pierde comunicación con el cliente, tu consexión se considera establecida y tu socket está listo para recibir información, comandos, ordenes, etc, desde el socket cliente...

Sería, un poco, lo que sucede con un portero automático. Si lo tienes "habilitado" o "a la escucha" (listen), cualquiera que pueda llegar a tu puerta puede llamar.

De tí depende, un aver recibida la llamada, ACEPTAR (pasar al estado accept) o no que entre (abrir o no la puerta del portal). No por el simple hecho de llamar ya va poder "entrar"...

Etiquetas: servidor
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:47.