Arquitectura del Modelo Cliente/Servidor Onesimo Calixto Morales Instituto Tecnológico de San marcos San marcos, México. [email protected] Resumen—El presente trabajo tiene como finalidad dar a conocer los diferentes conceptos sobre la arquitectura Cliente/Servidor, es decir, sobre el modelo de dos capas y el de 3 capas, como también de qué manera funcionan cada uno de ellos y como están integrado. Por otra parte, también se mencionan los diferentes sistemas que están basados en la arquitectura cliente/Servidor. II. Arquitectura del Modelo Cliente/Servidor Este modelo se divide en dos partes, por un lado, se tiene el cliente, que es el encargado de enviar las peticiones o solicitar los recursos, y el servidor tiene la tarea de responder esas peticiones. Palabras clave: Arquitectura, Cliente, Servidor, Modelos de dos capas, Modelos de tres capas. A. Arquitectura de dos capas Este modelo está integrado por el nivel de presentación y de datos. En la parte del nivel de presentación se encuentra la interfaz de todos los programas, que el usuario dispone para sus diferentes actividades y la lógica del negocio del lado del servidor o datos (entrada de datos, consultas, generación de informes). Abstract— The purpose of this work is to present the different concepts of the Client/Server architecture, that is, about some models such as the two-layer and the 3-layer models, as well as how each of them works and how they are integrated. , on the other hand, the different systems that are based on the client/server architecture are also mentioned.. Keywords: Architecture, Client, Server, Two-tier models, Threetier models. I. INTRODUCCIÓN La arquitectura cliente/servidor nace aproximadamente a mediados de la década de los 60, prácticamente por el año de 1964, con el sistema informático IBM OS/360, el cual se le podían enviar peticiones o solicitudes de ejecución de algunas tareas y el sistema podía brindar respuesta con la salida de dicha tarea. Una vez que nace el concepto de computadora personal o microcomputadora por las décadas de los 80, se ve la necesidad de que sean compartidas por varios usuarios, es por tal motivo que se necesitaba optimizar su rendimiento de todas las formas posibles, Por tal motivo el modelo cliente evoluciono y se impuso. Lo cual lo llevo a un gran éxito que los responsables de la iniciativa DARPA lo felicitaron, por el año 1969, en la creación de ARPANET, la cual ser convertiría, a posterior, en la actual internet. Los términos de cliente y servidor se empezaron a conocer como el programa que proporciona el servicio o los contenidos (servidor) y el que se conecta a este para solicitarlos (cliente). Por lo tanto, en el presente articulo hablaremos sobre la Arquitectura Cliente/Servidor y sus diferentes modelos de capas. Como lo es el Modelo de dos capas y de tres capas, haciendo mención de sus ventajas y desventajas, como también los sistemas que tiene la arquitectura de Cliente/Servidor. Fig.1 Arquitectura de dos Capas. Un ejemplo con esta arquitectura puede ser una aplicación de conversación en línea, ya que está compuesta por un cliente que acepta entradas del usuario y muestra los mensajes. Y el servidor entrega los mensajes de un cliente a otro. 1) Ventajas: • Es más sencilla de implementar. • Los datos están centralizados • Es más fácil a la hora de compartir los datos • Simplifica la generación de reportes • Proporciona consistencia en el acceso a los datos. • 2) Desventajas: • Es menos flexible, tiene peor rendimiento y generalmente menos seguras, ya que no se puede separar la seguridad por niveles. • Difíciles de mantener: Esto viene dado por el hecho de que son difíciles de mantener las reglas de negocio de la lógica de aplicación ya que estas están programadas en cada cliente y esto implica que cualquier cambio tiene que ser redistribuido en todos los clientes. • Se compromete la confidencialidad: al ser solo un servidor. B. Modelo de Tres Capas El modelo de tres capas, depende de un nivel de intermediario, en el cual tenemos la parte del cliente que realiza las peticiones a través de una interfaz de usuario o mediante un navegador web, la capa intermediaria (Servidor de aplicaciones) tiene la tarea de proporcionar los recursos solicitados por el cliente, pero depende del servidor de datos, para llevar a cabo el proceso y generación del servicio. El cliente puede acceder fácil y rápidamente sin saber dónde están los datos o cuántos servidores se están utilizando 2) Desventaja: • Debido a la cantidad ilimitadas de programas que puedan correr simultáneamente existe la posibilidad de que se introduzca un código maligno, tal como los gusanos (worms), ocasionando problemas en el diseño, implementación y rendimiento. • Complejas de implementar. III. SISTEMAS ACTUALES QUE UTILICEN ESAS ARQUITECTURAS Y MODELOS A. Páginas web En la actualidad existen infinidades de páginas web, por lo tanto, se puede observar la presencia de la arquitectura del cliente/servidor, una vez que el usuario utiliza un navegador web (Internet Explorer, Firefox, Chrome…) para acceder a una página web, está obteniendo el rol del cliente, por lo tanto, el proceso que atiende el cliente y le envía la página web solicitada tiene el rol de servidor. B. Las aplicaciones web para reservar habitaciones en un hotel Fig. 2 Arquitectura de Tres Capas En estos tipos de aplicaciones se encuentra la estructura cliente /servidor, ya que, al momento de realizar una reservación, se ingresan ciertos datos de la persona y el servidor tiene que procesar la información dando una respuesta de una factura para el cliente. Ejemplo: una aplicación Web Financiera donde la seguridad es importante y la capa de negocios necesita estar instalada detrás de un Firewall, lo que obliga la instalación de la capa de presentación en una capa separada del perímetro. 1) Ventajas: • Cambios en la interfaz de usuario o en la lógica de la aplicación son muy independientes entre sí, permitiendo a la aplicación evolucionar fácilmente para satisfacer los nuevos requisitos. • Los cuellos de botella de la red de comunicaciones se minimizan porque la capa de aplicación no transmite datos extras al cliente, sólo lo que necesite para llevar a cabo la tarea. • Cuando se requieren cambios en la lógica de negocio, sólo debe actualizarse el servidor. • El cliente está aislado de la base de datos y las operaciones de red. Fig 3 Arquitectura de una Página web C. Aplicaciones como Gmail y Outlook Utilizan la arquitectura cliente/servidor, ya que nos permiten realiza como envíos de texto, archivos, multimedia, como también recibir. Por lo tanto, detrás de todo estos, se puede encontrar un servidor web, y el servidor de correo que nos permite realizar las diferentes funciones de Gmail y Outlook. D. Aplicaciones de la nube Estos son sistemas de software que los usuarios acceden principalmente a través del internet. Por lo tanto, cuenta con algún servidor para responder las solicitudes, es decir, ejecuta la lógica de procesamiento y el almacenamiento de datos entre dos sistemas diferentes: del lado de cliente y el lado servidor. (Cuentan con Arquitectura cliente/servidor). IV.CONCLUSIONES El modelo Cliente/Servidor, está constituido por capas, que prácticamente es la separación físicamente, ya que las peticiones realizadas de parte del cliente, tienen que ser respondidas por el servidor. De tal manera que, si hablamos del modelo de tres capas, tenemos un intermediario (Servidor de aplicaciones) el cual depende del servidor de base de datos, para responder las peticiones del cliente, por lo tanto, cada capa simplemente es la agrupación de todos los componentes que tienen una funcionalidad común. REFERENCIAS [1] [2] [3] [4] [5] [6] [7] [8] Academia Android. (25 de agosto de 2015). Aplicaciones cliente-servidor y redes de telefonía móvil. https://academiaandroid.com/aplicaciones-clienteservidor-y-redes-de-telefonia-movil/ Hernández, S. (s.f.). INTERNETPASOAPASO. https://internetpasoapaso.com/cliente-servidor/ I, J. (2022). Arquitectura Cliente/Servidor: modelo de 3 capas. https://iberasync.es/arquitectura-clienteservidor-modelo-de-3-capas/ Juan de Dios Murillo Morera, S. C. (2010). IMPLEMENTACIÓN DE UN SERVIDOR FTP UTILIZANDO EL MODELO CLIENTE/SERVIDOR MEDIANTE EL USO DE SOCKETS EN LENGUAJE C UNIX CON EL FIN DE MEJORAR LOS TIEMPOS DE RESPUESTA EN LA RED. https://doi.org/https://www.redalyc.org/articulo.oa?id =475947765009 ms.gonzalez. (04 de septiembre de 2017). El modelo cliente-servidor en las redes de datos. https://redestelematicas.com/el-modelo-clienteservidor-en-las-redes-de-datos/ Ret Hat. (31 de Octubre de 2017). ¿Qué son las aplicaciones de la nube? redhat.com/es/topics/cloudnative-apps/what-are-cloudapplications#:~:text=Las%20aplicaciones%20de%20l a%20nube%20son%20sistemas%20de%20software% 20a,equipos%20locales%20de%20los%20usuarios. Schiaffarino, A. (12 de marzo de 2019). infranetworking. https://blog.infranetworking.com/modelo-clienteservidor/#:~:text=uno%20de%20ellos.,Arquitectura%20de%20dos%20capas,para%20propo rcionar%20parte%20del%20servicio. Yoelys Ronda Amador, K. C. (2001). LÓGICA DEL NEGOCIO DE LA EMPRESA.