El modelo cliente-servidor es uno de los conceptos de ar­qui­te­c­tu­ra más comunes en la te­c­no­lo­gía de redes. Regula la in­ter­ac­ción entre el cliente y el servidor. Tareas ru­ti­na­rias como el envío de pe­ti­cio­nes HTTP a se­r­vi­do­res web o la tra­n­s­fe­re­n­cia de archivos por FTP son casos de uso típicos.

¿Qué es un modelo cliente-servidor?

El modelo cliente-servidor, también conocido como “principio cliente-servidor”, es un modelo de co­mu­ni­ca­ción que permite la di­s­tri­bu­ción de tareas dentro de una red de or­de­na­do­res.

Un servidor es un hardware que pro­po­r­cio­na los recursos ne­ce­sa­rios para otros or­de­na­do­res o programas, pero un servidor también puede ser un programa in­fo­r­má­ti­co que se comunica con los clientes. Un servidor acepta las pe­ti­cio­nes del cliente, las procesa y pro­po­r­cio­na la respuesta so­li­ci­ta­da. También existen di­fe­re­n­tes tipos de clientes. Un ordenador o un programa in­fo­r­má­ti­co se comunica con el servidor, envía so­li­ci­tu­des y recibe re­s­pue­s­tas del servidor. En cuanto al modelo cliente-servidor, re­pre­se­n­ta la in­ter­ac­ción entre el servidor y el cliente.

Consejo

¿Quieres un servidor? Considera la po­si­bi­li­dad de alquilar un servidor de IONOS y elige entre se­r­vi­do­res privados virtuales, se­r­vi­do­res cloud y se­r­vi­do­res dedicados.

¿Cuáles son las ca­ra­c­te­rí­s­ti­cas del principio cliente-servidor?

El modelo cliente-servidor tiene algunos rasgos ca­ra­c­te­rí­s­ti­cos. Hay una clara di­s­tri­bu­ción de tareas entre los clientes y los se­r­vi­do­res. El servidor es el re­s­po­n­sa­ble de pro­po­r­cio­nar los servicios. Se encarga de ejecutar los servicios so­li­ci­ta­dos y entrega la respuesta esperada. El cliente, en cambio, utiliza y solicita los servicios pro­po­r­cio­na­dos. Fi­na­l­me­n­te, recibe la respuesta del servidor.

En el modelo cliente-servidor, un servidor sirve a varios clientes y, por ende, procesa múltiples pe­ti­cio­nes de di­fe­re­n­tes clientes. Para ello, presta su servicio de forma pe­r­ma­ne­n­te y pasiva. Por su parte, el cliente solicita ac­ti­va­me­n­te los servicios del servidor e inicia las tareas del servidor.

Siguiendo este modelo, un ordenador físico puede ser tanto cliente como servidor. El único factor decisivo es su papel dentro de una red y el hecho de que el ordenador envíe o reciba so­li­ci­tu­des de servicios y recursos.

Las normas que definen la co­mu­ni­ca­ción entre clientes y se­r­vi­do­res se comunican en forma de pro­to­co­los. Y según la tarea, se utilizan di­fe­re­n­tes pro­to­co­los de red para la tra­n­s­mi­sión de datos. Además, según el ámbito de apli­ca­ción, existen di­fe­re­n­tes tipos de red.

¿Cuáles son las ventajas e in­co­n­ve­nie­n­tes del modelo cliente-servidor?

El concepto de di­s­tri­bu­ción de tareas y servicios dentro de una red basado en el modelo cliente-servidor tiene ventajas e in­co­n­ve­nie­n­tes.

Ventajas

El modelo cliente-servidor es uno de los conceptos ar­qui­te­c­tó­ni­cos más uti­li­za­dos en la te­c­no­lo­gía de redes, dado que ofrece algunas ventajas si­g­ni­fi­ca­ti­vas.

Ad­mi­ni­s­tra­ción central

La ad­mi­ni­s­tra­ción central es una de las pri­n­ci­pa­les ventajas. El servidor está en el centro de la red. Todos los usuarios o clientes lo utilizan. Los recursos im­po­r­ta­n­tes, como bases de datos, se en­cue­n­tran en el servidor y son ac­ce­si­bles de forma ce­n­tra­li­za­da. Esto si­m­pli­fi­ca la ad­mi­ni­s­tra­ción y el ma­n­te­ni­mie­n­to de los recursos im­po­r­ta­n­tes que requieren pro­te­c­ción. La ubicación central del servidor hace que la rea­li­za­ción de ac­tua­li­za­cio­nes sea cómoda y de bajo riesgo.

Derechos de acceso co­n­tro­la­dos glo­ba­l­me­n­te

El al­ma­ce­na­mie­n­to central de recursos im­po­r­ta­n­tes permite una gestión segura y global de los derechos de acceso. Cuando se trata de datos sensibles, es im­po­r­ta­n­te saber quién puede ver los datos y quién puede ma­ni­pu­lar­los. Para proteger los datos de la mejor manera posible, hay que es­ta­ble­cer derechos de acceso.

Un solo servidor para muchos clientes

El número de clientes puede ampliarse. Varios clientes trabajan si­mu­l­tá­nea­me­n­te uti­li­za­n­do un único servidor. Los clientes comparten los recursos del servidor. También es posible que el servidor esté situado en un lugar distinto al de los clientes. Lo más im­po­r­ta­n­te es que el servidor y los clientes estén co­ne­c­ta­dos a través de una red. Y por ende, no es necesario que los recursos estén en el mismo sitio.

In­co­n­ve­nie­n­tes

A pesar de las ventajas, también hay que tener en cuenta algunos in­co­n­ve­nie­n­tes.

Caída del servidor

Debido a la di­s­po­si­ción ce­n­tra­li­za­da y a la de­pe­n­de­n­cia en un modelo cliente-servidor, la caída del servidor conlleva la caída de todo el sistema. Si el servidor se cae, los clientes dejan de funcionar porque no pueden recibir las re­s­pue­s­tas ne­ce­sa­rias del servidor.

Recursos de un servidor

El servidor realiza las tareas que requieren muchos recursos. La demanda de recursos de los clientes es mucho menor. Si el servidor tiene muy pocos recursos, afecta a todos los clientes. Por eso es im­po­r­ta­n­te elegir un proveedor que pro­po­r­cio­ne estos recursos de forma fiable.

Inversión de tiempo

Otro factor que no hay que su­b­e­s­ti­mar es el tiempo necesario para hacer funcionar tu servidor. Además de los co­no­ci­mie­n­tos técnicos co­rre­s­po­n­die­n­tes, por ejemplo, para proteger y co­n­fi­gu­rar se­r­vi­do­res, su uso requiere una co­n­si­de­ra­ble inversión de tiempo.

¿Cuáles son las al­te­r­na­ti­vas a un modelo cliente-servidor?

Aunque el modelo cliente-servidor se utiliza a menudo para di­s­tri­buir tareas dentro de las redes, también existen otras ar­qui­te­c­tu­ras y conceptos al­te­r­na­ti­vos.

Una al­te­r­na­ti­va es el modelo peer-to-peer. En este modelo, un programa llamado peer re­pre­se­n­ta a los se­r­vi­do­res y a los clientes si­mu­l­tá­nea­me­n­te y cumple ambas tareas. Este modelo co­n­s­ti­tu­ye la base del blo­c­k­chain.

El modelo primario-se­cu­n­da­rio, antes conocido como “modelo maestro-esclavo”, es otro buen ejemplo. En este modelo, la parte primaria dirige a las partes se­cu­n­da­rias y las coordina. La parte primaria libera recursos uti­li­za­bles para las partes se­cu­n­da­rias y decide cuándo se encargan de de­te­r­mi­na­das tareas.

¿Cuáles son los usos y pro­to­co­los típicos del cliente-servidor?

Una apli­ca­ción cliente-servidor típica es un servidor web. En este caso, el cliente envía una petición al servidor web para abrir una página web concreta. El servidor devuelve al cliente los datos so­li­ci­ta­dos. La página web se muestra en el navegador del cliente. Para enviar pe­ti­cio­nes HTTP se utiliza el Hypertext Transfer Protocol.

Un servidor de correo ele­c­tró­ni­co también funciona según el principio cliente-servidor. Cuando un cliente de correo ele­c­tró­ni­co se comunica con un servidor, el cliente solicita y recupera los correos ele­c­tró­ni­cos que están en el servidor. El servidor pone los correos ele­c­tró­ni­cos a di­s­po­si­ción del cliente. Los pro­to­co­los uti­li­za­dos son SMTP, IMAP o POP y TLS.

Otra apli­ca­ción muy común es la tra­n­s­fe­re­n­cia de datos entre un cliente y un servidor web mediante File Transfer Protocols (FTP). Este protocolo permite subir y bajar archivos.

Ir al menú principal