Ver Mensaje Individual
  #7 (permalink)  
Antiguo 15/09/2009, 21:33
franco190453
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años
Puntos: 33
Respuesta: socket en php

jorge_anibal:
Aqui considero hay tres cosas muy importantes.
1.- En el puerto 8600 del servidor que esta ubicado en la IP 200.74.146.84
Hay en primer lugar una aplicacion o programa que escucha en ese puerto; parece ser un servidor de archivos segun tu indicas.
2.- Esta aplicacion entiende y responde a la aplicacion cliente llamada Telnet
que utiliza un protocolo de comunicacion especifico.
3.- Las conexiones entre servidores y clientes funcionen via un protocolo especifico y se comunican de una forma cuidadosamente estructurada y
definida en detalle.
Ejemplo:
La conexion a un servidor SMTP y utilizando fsockopen() se realiza
de la siguiente manera:
a.- se inicia la conexion
b.- se solicita logeo por autenticacion y para ello se puede utilizar fgets() and fputs()
c.- se envia el nombre de usuario CODIFICADO con base_64 encode()
d.- se envia de la misma manera el a la contraseña.
e.- Se envia un HELO.
Etc ETC ETC.
El punto esencial es que si se omite el HELO la comunicacion se corta y se cae
la conexion. Si el orden de la comunicacion lo haces diferente ya sea enviando la contraseña primero y el nombre de usuario segundo el servidor entiende que el primero es el nombre de usuario y por ende ese usuario no existe y la conexion se cae.
Si la informacion que se envia NO va con sus cabeceras adecuadas, la conexion podra
seguir existiendo pero el servidor NO responde y pareciera que el sistema "HANGS".
En fin es mucho mas complejo de lo que a veces uno se imagina.
Sin embargo, sabiendo los detalles, fsockopen() es una herramiente que puede servir para conexion e intercambio de informacion entre cualquier codigo y cualquier aplicacion-servidor, sea este servidor de paginas web, servidor de archivos, servidor de ftp, comunicacion serial al puerto com1 o com2, etc

Saludos
Y espero te ayude
Franco