Documente Academic
Documente Profesional
Documente Cultură
CLIENTE / SERVIDOR
Garnica Emanuel
Fecha: 10/04/2018
TARIJA - BOLIVIA
Modelo Cliente Servidor
TCP es un protocolo orientado a conexión. No hay relaciones maestro/esclavo. Las aplicaciones, sin
embargo, utilizan un modelo cliente/servidor en las comunicaciones.
Un servidor es una aplicación que ofrece un servicio a usuarios de Internet, un cliente es el que pide ese
servicio. Una aplicación consta de una parte de servidor y una de cliente, que se pueden ejecutar en el
mismo o en diferentes sistemas.
Los usuarios invocan la parte cliente de la aplicación, que construye una solicitud para ese servicio y se la
envía al servidor de la aplicación que usa TCP/IP como transporte. El servidor es un programa que recibe una
solicitud, realiza el servicio requerido y devuelve los resultados en forma de una respuesta. Generalmente
un servidor puede tratar múltiples peticiones (múltiples clientes) al mismo tiempo.
Algunos servidores esperan las solicitudes en puertos bien conocidos de modo que sus clientes saben a qué
zócalo IP deben dirigir sus peticiones. El cliente emplea un puerto arbitrario para comunicarse. Los clientes
que se quieren comunicar con un servidor que no usa un puerto bien conocido tienen otro mecanismo para
saber a qué puerto dirigirse. Este mecanismo podría usar un servicio de registro como Portmap, que utiliza
un puerto bien conocido.
Cliente Servidor
Es la tecnología que proporciona al usuario final el acceso transparente a las aplicaciones, datos, servicios de
cómputo o cualquier otro recurso del grupo de trabajo y/o, a través de la organización, en múltiples
plataformas. El modelo soporta un medio ambiente distribuido en el cual los requerimientos de servicio
hechos por estaciones de trabajo inteligentes o "clientes, resultan en un trabajo realizado por otros
computadores llamados servidores".
1. El host receptor, que en el caso de más común será un servidor, espera pasivamente una conexión
ejecutando las primitivas LISTEN y ACCEPT.
2. En primer lugar, el host que desea iniciar la conexión ejecuta una primitiva CONNECT especificando la
dirección IP y el puerto con el que se desea conectar, el tamaño máximo del segmento que está dispuesto a
aceptar y opcionalmente otros datos, como alguna contraseña de usuario. Entonces la primitiva CONNECT
hace una apertura activa, enviando al otro host un paquete que tiene el bit SYN (ver formato de un segmento
TCP más abajo) activado, indicándole también el número de secuencia inicial "x" que usará para enviar sus
mensajes.
3. El host receptor recibe el segmento revisa si hay algún proceso activo que haya ejecutado un LISTEN en el
puerto solicitado, es decir, preparado para recibir datos por ese puerto. Si lo hay, el proceso a la escucha
recibe el segmento TCP entrante, registra el número de secuencia "x" y, si desea abrir la conexión, responde
con un acuse de recibo "x + 1" con el bit SYN activado e incluye su propio número de secuencia inicial "y",
dejando entonces abierta la conexión por su extremo. El número de acuse de recibo "x + 1" significa que el
host ha recibido todos los octetos hasta e incluyendo "x", y espera "x + 1" a continuación. Si no desea
establecer la conexión, envía una contestación con el bit RST activado, para que el host en el otro extremo lo
sepa.
4. El primer host recibe el segmento y envía su confirmación, momento a partir del cual puede enviar datos al
otro extremo, abriendo entonces la conexión por su extremo.
5. La máquina receptora recibe la confirmación y entiende que el otro extremo ha abierto ya su conexión, por
lo que a partir de ese momento también puede ella enviar datos. Con esto, la conexión ha quedado abierta
en ambos sentidos.