Modelo Cliente-Servidor

Introducción

Tras la aparición y explosión del ordenador personal a finales de los 80's, se establece un nuevo modelo de funcionamiento generalizado de los sistemas informáticos. Este modelo llamado cliente-servidor representa un modelo de organización de la relación entre los distintos y numerosos ordenadores que existen en una empresa, además que este modelo supone salir del concepto ya experimentado de un terminal de ordenador, para pasar al concepto de una conexión en la que el terminal llamado ahora cliente, tiene una capacidad muy alta, con independencia del ordenador principal, llamada ahora servidor que se especializa en ciertas funciones específicas. Esta distribución  lógica de funciones, donde la capacidad de los ordenadores personales se emplea extensamente, recibe el nombre de modelo cliente-servidor.
El modelo cliente-servidor evoluciona hacia composiciones de ordenadore más acordes con la evolución de las telecomunicaciones. En los primeros momentos las infraestructuras de comunicación eran limitadoras de las posibles formas de enlazar ordenadores cliente con sus servidores, debido a la  reducida capacidad de tráfico que se podía soportar en las líneas de comunicaciones, en este contexto inicia el modelo cliente servidor que gracias a sus extensas funciones permite evolucionar a lo que conocemos hoy en día.

¿Qué es el Modelo Cliente-Servidor?

Tiene dos principales definiciones, desde el punto de vista conceptual en donde es un modelo para construir sistemas de información, que se sustenta en la idea de repartir el tratamiento de la información por todo el sistema informático y desde el punto arquitectónico en donde es un modelo para el desarrollo de sistemas de información en el que las transacciones se dividen en procesos independendientes que cooperan entre sí para intercambiar información.
Este tipo de tecnología es utilizada por todas las aplicaciones de Internet, ya que un cliente funciona en su ordenador local, se comunica con el servidor y pide a éste información. El servidor envía la información solicitada. Un único servidor sirve a una multitud de clientes, ahorrando a cada uno de ellos el problema de tener la información instalada y almacenada localmente.

Tipos de sistemas Cliente-Servidor

1.- Servidores de impresión: Los usuarios comparten impresoras.
2.- Servidores de archivos: Los usuarios comparten discos duros.
3.- Servidores de bases de datos: Sólo existe una base de datos.
4.- Servidores de Lotus Notes: Permite el trabajo simultaneo de distintos clientes con los mismos datos.
5.- Servidores Web: Utilizan la tecnología cliente-servidor añadiendo nuevos aspectos nuevos y propios.

Características del Modelo Cliente - Servidor

 - Es la combinación cuando un cliente interactúa con los usuarios y el servidor con los recursos compartidos.
- La relación puede ser de muchos a un, debido a que el servidor puede dar servicios a muchos clientes.
- El único tipo de comunicación que existe es a través del intercambio de mensajes.
- El ambiente es heterogéneo, ya que la plataforma del hardware y el sistema operativo del servidor no siempre son lo mismo.
- El concepto de escalabilidad tanto horizontal como vertical es aplicable a cualquier sistema cliente-servidor. Mientras que horizontalmente permite agregar más estaciones de trabajo sin afectar el rendimiento, al aplicar la escalabilidad vertical permite mejorar las características del servidor o agregar múltiples servidores.

Componentes de la arquitectura cliente-servidor

Hay tres elementos fundamentales sobre los cuales se desarrollan los sistemas cliente-servidor: el proceso cliente que es quien inicia el diálogo, el proceso servidor que pasivamente espera a que lleguen peticiones de servicio y el middleware que corresponde a la interfaz que provee la conectividad entre el cliente y el servidor para poder intercambiar mensajes, por lo que podemos deducir que existen tres elementos principales en una arquitectura cliente servidor:
1.- Cliente:  Es todo proceso que reclama servicios de otro (Front-end).
2.- Servidor: Es todo proceso que proporciona un servicio a otros. (Back-end), puede darse el caso que un servidor actúe a su vez como cliente de otro servidor.
3.- Middleware: Es un módulo intermedio que actúa como conductor entre sistemas permitiendo a cualquier usuario de sistemas de información comunicarse con varias fuentes de información que se encuentran conectadas en una red, o simplemente es el intermediario entre el cliente y servidor que se ejecuta en ambas partes.

Clasificación del modelo cliente-servidor (Hardware)

- Cliente-Servidor de dos capas: Los clientes son conectados vía LAN a un servidor de aplicaciones local, el cual, dependiendo de la aplicación puede dar acceso a los datos administrados por él.
- Cliente-Servidor de tres capas: Los clientes son conectados vía LAN a un servidor de aplicaciones local, el cual a su vez se comunica con un servidor central de bases de datos. El servidor local tiene un comportamiento dual, dado que actúa como cliente o servidor en función de la dirección de la comunicación.

Esquema del funcionamiento del Modelo Cliente-Servidor

1.- El cliente solicita información al servidor.
2.- El servidor recibe la petición del cliente.
3.- El servidor procesa la petición.
4.- El servidor envía el resultado obtenido al cliente.
5.- El cliente recibe el resultado y lo procesa.

Ventajas del Modelo Cliente-Servidor

- Es más rápido el mantenimiento y el desarrollo de aplicaciones usando esta arquitecta, ya que se emplean diferentes herramientas ya disponibles, como diferentes lenguajes de programación e interfaces.
- Proporciona a los diferentes departamentos de una organización soluciones locales, permitiendo integración de información relevante a nivel global.
- Facilita la integración de sistemas diferentes y comparte información permitiendo que las maquinas ya existentes sean utilizadas con interfaces amigables con el usuario.

Conclusión 

El modelo cliente-servidor ha tomado un papel muy importante en los sistemas de información desde hace ya un tiempo, su fácil implantación a las maquinas, su utilidad y su simple estructura han hecho que éste modelo se convierta en una base fundamental para la computación y la informática en estos tiempos. El desarrollo de este tipo de sistemas se convirtió en una realidad gracias a la necesidad  de las empresas, ya que manejan e interpretan grandes volúmenes de información con alto grado de confiabilidad y rapidez, el uso del modelo cliente-servidor ya es una realidad en todas las computadoras y se justifica por los tiempos de respuesta de información ya estructurada que permite un análisis mucho más ágil, pudiéndose usar adicionalmente en los sistemas para la ayuda en la toma de decisiones, facilitando así una exitosa y dinámica funcionalidad empresarial.
Este modelo pasa de ser solo una computadora central a ser un modelo de conexión libre y a pesar de que tiene algunas deficiencias tiene tiempo para ser mejoradas ya que es un modelo muy efectivo en la sociedad actual que difícilmente será remplazado, aunque es seguro afirmar que en un futuro habrá modelos más eficientes que lo superarán aunque hay un camino alternativo, en el cual el modelo cliente servidor podría ser reformado de una manera en la cual las tareas de cada componente que realiza, serán terminadas y efectuadas de una manera mucho mejor.

Bibliografía

- Coulouris, G., Dollimore, J., Kindberg, T., Junquera, J., Fernández, B. & Hernández, J. (2001). Sistemas distribuidos : conceptos y disen̋o. Madrid: Pearson Educación,Addison Wesley.
- Tanenbaum, A., Steen, M., rez, J. & Salas, R. (2008). Sistemas distribuidos : principios y paradigmas. México: Pearson/Prentice-Hall.
- Zabala, J. (1999). El cambio son personas : la dirección de los procesos de cambio. Madrid: Ediciones Díaz de Santos.

Comentarios

Entradas más populares de este blog

Cifrado Asimétrico

Proceso de depuración