de procesos donde intervienen uno a más agentes que pueden tomar uno de los dos roles conocidos como cliente y servidor, aunque es posible que un agente cumpla con los dos roles al mismo, los cuales están conectados a una red, sea esta de tipo LAN, MAN o WAN. Para comprender de mejor forma el funcionamiento del modelo cliente-servidor, se tomará en cuenta que tanto un cliente como un servidor pueden ser entendidos como un ordenador o un software. Además, la interacción entre el cliente y el servidor se dará entre dos agentes que cumplen un único rol cada uno, a pesar que se mencionó antes que un agente puede cumplir con los dos roles simultáneamente. El propósito del modelo cliente-servidor es la comunicación de información entre entidades de una red, mediante el uso de protocolos establecidos, y el apropiado almacenaje de estas. En el caso de los servidores, existen diversos tipos que cumplen determinadas funciones y ayudan al sistema a repartir las diversas funciones presentes en ella. En otras palabras, el cliente realiza una petición indicando lo que desea, esta puede estar relacionada a la falta de recursos para desarrollar una determinada labor, mientras el servidor envía una respuesta. Para una mayor facilidad, la interacción por parte del cliente se hace en una interface gráfica, así se agiliza el proceso de envío y entrega de información. Algunos ejemplos sobre el modelo cliente-servidor los podemos encontrar en las empresas. En el caso de una Pyme, usan servidores de bases de datos para facilitar el ordenar, categorizar y clasificar la información que manejan. En caso algún cliente quiera acceder la información sobre algunos de los productos que ofrece, la respuesta del servidor antes los deseos del cliente deben ser lo más raudas posibles. De esta forma, un ágil desempeño del modelo cliente-servidor se muestra, dejando en claro las necesidades del cliente y las respuestas del servidor. Tipos: Con respecto a los tipos de arquitecturas del modelo cliente-servidor, se debe tener considerar el trabajo con niveles. Utilizando la explicación previa, en el caso de que un cliente envíe una solicitud a un servidor, este le responde directamente con sus propios recursos, es decir no requiere de otra aplicación u ordenador para cumplir con los deseos del cliente, así consideramos una arquitectura con 2 niveles. En el caso de tres niveles a más, cuando un cliente envía la solicitud al servidor; pero este último no cuenta con los recursos para satisfacer los deseos del cliente, envía una solicitud a otro servidor, pasando a convertirse en cliente. Este proceso puede abarcar una cadena de servidores hasta que alguna de las solicitudes sea cumplida. En otras palabras, la complejidad de una determinada actividad requerirá de una mayor cantidad de recursos que el cliente deberá solicitar; sin embargo, en caso el servidor no pueda cumplirla, habrán nuevas solicitudes a otros servidores. Ventajas: En las empresas, dependiendo de su respectiva estructura interna, tienen una disposición de recursos para poder cumplir con el desarrollo de sus labores. Sin embargo, en el caso que una empresa no quiera adquirir ordenadores o programas para potenciar los servidores, tiene la posibilidad de recurrir a Cloud computing (computación en la nube). Es un tipo de comunicación que presta servicios a través de internet. En este caso, de acuerdo a las necesidades de alguna persona o empresa, puede optar por uno de los tres paquetes de servicios conocidos como SAAS (Software as a service), PAAS (Plataform as a service) y IAAS (Infraestructur as a service). El modelo cliente-servidor se muestra en todo su esplendor, a través de una conexión de tipo WAN. Gracias a sus bajos costes, respuesta en tiempo real y la posibilidad de acceder a la nube a través de cualquier dispositivo electrónico, el futuro de esta nueva tecnología es cada vez más brillante. Desventajas: En el caso de poseer servidores a plena disposición, se requiere de habilidad para poder ubicar los errores y repararlo. En muchos casos, implicaría un costo extra para la persona o empresa si se desea tener los servidores operativos para continuar con las labores respectivas. Otro punto a considerar es la seguridad. Al compartir canales entre clientes, pueden surgir diversos problemas. En estas situaciones, recurrir a un protocolo de seguridad de la información es la mejor opción. No obstante, la falta de protección de algún punto de acceso puede traer consigo alguna filtración de información u la aparición de virus que puede poner en peligro a toda la red. Para evitar ello, un nuevo gasto debe ser llevado a cabo. De esta forma, se evitan amenazas que puedan bloquear el adecuado funcionamiento de la red o interrumpir la comunicación entre los diversos agentes que participan en el modelo cliente-servidor. Limitaciones: Haciendo mención nuevamente en los gastos, las empresas se llegarían a ver limitadas si destinan la mayoría de sus recursos. Es decir, en lugar de hacer los gatos respectivos en otras áreas, deben reemplazar o reparar los ordenadores y verificar la utilidad de un determinado software. Las empresas de mayor desarrollo no verán afectada del todo sus recursos; pero aquellas de menor ruedo pueden verse extremadamente perjudicadas, no solo por el gasto, sino por la eficiencia y desempeño de sus servidores. Para este tipo de situaciones, la alternativa de usar Cloud computing minimiza los gastos; pero, para poder utilizar aquellos servicios, se necesita equipos que cumplan con requisitos para obtener un servicio estable. Como vemos, el modelo cliente-servidor se observa tiene varios campos de aplicación y es uno de los más utilizados a nivel de interacción y transmisión de información, ya sea a pequeña, mediana o gran escala.