2. DEFINICION
• es un modelo de aplicación distribuida en el que las tareas se reparten entre los proveedores de
recursos o servicios, llamados servidores, y los demandantes, llamados clientes. Un cliente realiza
peticiones a otro programa, el servidor, quien le da respuesta. Esta idea también se puede aplicar a
programas que se ejecutan sobre una sola computadora, aunque es más ventajosa en un sistema
operativo multiusuario distribuido a través de una red de computadoras.
• Algunos ejemplos de aplicaciones computacionales que usen el modelo cliente-servidor son el Correo
electrónico, un Servidor de impresión y la Word Wide Web
3. CARACTERISTICAS
• En la arquitectura C/S el remitente de una solicitud es conocido como cliente . Sus características son:
• Es quien inicia solicitudes o peticiones, tienen por tanto un papel activo en la comunicación
(dispositivo maestro o amo).
• Espera y recibe las respuestas del servidor.
• Por lo general, puede conectarse a varios servidores a la vez.
• Normalmente interactúa directamente con los usuarios finales mediante una interfaz gráfica de
usuario.
4. Al receptor de la solicitud enviada por el cliente se conoce como servidor. Sus características son:
• Al iniciarse esperan a que lleguen las solicitudes de los clientes, desempeñan entonces un papel
pasivo en la comunicación (dispositivo esclavo).
• Tras la recepción de una solicitud, la procesan y luego envían la respuesta al cliente.
• Por lo general, acepta las conexiones de un gran número de clientes (en ciertos casos el número
máximo de peticiones puede estar limitado).
En la arquitectura C/S sus características generales son:
• El Cliente y el Servidor pueden actuar como una sola entidad y también pueden actuar como
entidades separadas, realizando actividades o tareas independientes.
• Las funciones de Cliente y Servidor pueden estar en plataformas separadas, o en la misma
plataforma.
• Cada plataforma puede ser escalable independientemente. Los cambios realizados en las
plataformas de los Clientes o de los Servidores, ya sean por actualización o por reemplazo
tecnológico, se realizan de una manera transparente para el usuario final.
• La interrelación entre el hardware y el software están basados en una infraestructura poderosa, de
tal forma que el acceso a los recursos de la red no muestra la complejidad de los diferentes tipos de
formatos de datos y de los protocolos.
• Su representación típica es un centro de trabajo (PC), en donde el usuario dispone de sus propias
aplicaciones de oficina y sus propias bases de datos, sin dependencia directa del sistema central de
información de la organización.
5.
6. Características de la arquitectura Cliente-
Servidor
• Combinación de un cliente que interactúa con el usuario, y un servidor que interactúa con los recursos a compartir. El
proceso del cliente proporciona la interfaz entre el usuario y el resto del sistema. El proceso del servidor actúa como un
motor de software que maneja recursos compartidos tales como bases de datos, impresoras, Módem, etc.
• Las tareas del cliente y del servidor tienen diferentes requerimientos en cuanto a recursos de cómputo como velocidad
del procesador, memoria, velocidad y capacidades del disco e input-output divises.
• Se establece una relación entre procesos distintos, los cuales pueden ser ejecutados en la misma máquina o en máquinas
diferentes distribuidas a lo largo de la red.
• Existe una clara distinción de funciones basadas en el concepto de ”servicio”, que se establece entre clientes y servidores.
• La relación establecida puede ser de muchos a uno, en la que un servidor puede dar servicio a muchos clientes, regulando
su acceso a los recursos compartidos.
• Los clientes corresponden a procesos activos en cuanto a que son estos los que hacen peticiones de servicios. Estos
últimos tienen un carácter pasivo, ya que esperan peticiones de los clientes.
• No existe otra relación entre clientes y servidores que no sea la que se establece a través del intercambio de mensajes
entre ambos. El mensaje es el mecanismo para la petición y entrega de solicitudes de servicios.
• El ambiente es heterogéneo. La plataforma de hardware y el sistema operativo del cliente y del servidor no son siempre
los mismos. Precisamente una de las principales ventajas de esta arquitectura es la posibilidad de conectar clientes y
servidores independientemente de sus plataformas.
• El concepto de escalabilidad tanto horizontal como vertical es aplicable a cualquier sistema Cliente-Servidor. La
escalabilidad horizontal permite agregar más estaciones de trabajo activas sin afectar significativamente el rendimiento. La
escalabilidad vertical permite mejorar las características del servidor o agregar múltiples servidores.
7. VENTAJAS DEL ESQUEMA CLIENTE-
SERVIDOR
• Existencia de plataformas de hardware cada vez más baratas. Esta constituye a su vez una de las más palpables
ventajas de este esquema, la posibilidad de utilizar máquinas mucho más baratas que las requeridas por una
solución centralizada, basada en sistemas grandes (mainframes). Además, se pueden utilizar componentes, tanto
de hardware como de software, de varios fabricantes, lo cual contribuye considerablemente a la reducción de
costos y favorece la flexibilidad en la implantación y actualización de soluciones.
• Facilita la integración entre sistemas diferentes y comparte información, permitiendo por ejemplo que las máquinas ya
existentes puedan ser utilizadas pero utilizando interfaces más amigables el usuario. De esta manera, se puede integrar PCs
con sistemas medianos y grandes, sin necesidad de que todos tengan que utilizar el mismo sistema operativo.
• Al favorecer el uso de interfaces gráficas interactivas, los sistemas construidos bajo este esquema tienen una mayor y más
intuitiva con el usuario. En el uso de interfaces gráficas para el usuario, presenta la ventaja, con respecto a uno centralizado,
de que no siempre es necesario transmitir información gráfica por la red pues esta puede residir en el cliente, lo cual permite
aprovechar mejor el ancho de banda de la red.
• La estructura inherentemente modular facilita además la integración de nuevas tecnologías y el crecimiento de la
infraestructura computacional, favoreciendo así la escalabilidad de las soluciones.
• Contribuye además a proporcionar a los diferentes departamentos de una organización, soluciones locales, pero permitiendo
la integración de la información.
8. ADMINISTRACIÓN DE DATOS REMOTA
• En el cliente residen tanto la interfaz como los procesos de la aplicación.
• Las bases de datos están en el servidor.
• Es lo que comúnmente imaginamos como aplicación cliente servidor
Ventajas
• Configuración típica de la herramienta GUI 4GL.
• Muy adecuada para las aplicaciones de apoyo a las decisiones del usuario final.
• Fácil de desarrollar ya que los programas de aplicación no están distribuidos.
• Se descargan los programas del Host.
Desventajas
• No maneja aplicaciones pesadas eficientemente.
• La totalidad de los datos viaja por la red, ya que no hay procesamiento que realice el Host.