martes, 23 de junio de 2015

¿Qué es un Servidor? Estructura Cliente-Servidor

Seguro que muchas veces habrás escuchado la palabra 'servidor' en el ámbito de la informática, en expresiones como: "el servidor está caído", "no se puede conectar con el servidor". Aunque parezca algo oculto y relacionado con expertos, un servidor no es más que un ordenador con características especiales. Veamos las peculiaridades de estas máquinas y por qué son necesarias.

Es evidente que no existe una máquina perfecta para cumplir varias funciones de forma óptima. Cada necesidad tiene su herramienta adecuada. Si entendemos el ordenador como máquina, podemos ver cómo existen infinidad de tipos de ordenadores según sea el uso que se les va a dar. Por ejemplo, si queremos un ordenador para usarlo en la oficina, o en casa para realizar trabajos académicos, sólo se le da un uso enfocado a la ofimática. Debido a este reducido uso, podemos utilizar un ordenador de prestaciones reducidas (memoria RAMprocesadordisco duro, tarjeta gráfica, ...) que cumpla a la perfección las funciones que necesitamos y a un precio reducido (sin necesidad de comprar caros componentes que no vamos a aprovechar al máximo). Por otro lado, puede que lo que estemos buscando sea un ordenador gaming (para juegos) y en consecuencia necesitamos un PC con más recursos, pues de otro modo se nos quedaría colgado. Siguiendo en esta línea, surge la necesidad de explicar qué es un servidor y para qué sirve.

Un Servidor es un ordenador que se utiliza a nivel empresarial generalmente, y persigue optimizar las funciones relativas a la conectividad con otros ordenadores y alta capacidad de procesamiento de datos. Tanto es así, que se diferencia de un ordenador convencional en dos aspectos fundamentales:

  • Hardware especializado con grandes prestaciones
  • Sistema Operativo específico, especial para servidores
Veamos cada concepto individualmente. Como ya hemos dicho, los recursos de hardware deben ser lo suficientemente potentes para dar cabida al alto rendimiento que se exige. Particularmente es necesario un buen procesador (siendo interesante la gestión multi-proceso), memoria RAM y tarjeta de red (para optimizar las múltiples conexiones que abarca, tanto en número como en velocidad de transmisión). En este caso, la tarjeta gráfica no es tan importante pues la monitorización del equipo no es un aspecto prioritario. De igual modo, la capacidad del disco duro puede variar en función del uso que se le vaya a dar al servidor: si es un soporte básico de aplicaciones web, no es necesario que sea grande, pero sí lo es si hablamos de servidores de datos (gran cantidad de documentación, ficheros, etc).

Cambiando de ámbito, a nivel de software existen Sistemas Operativos específicos para servidores. Al igual que el hardware se adapta a las necesidades de un servidor, el Sistema Operativo también debe ofrecer las herramientas necesarias para gestionar las funciones y recursos del mismo. Existen muchos Sistemas Operativos para servidores, tanto Windows, como Linux, Apple, ... pero todos ellos deben dar soporte a la configuración y mantenimiento de redes, optimización de almacenamiento, paralelización de procesos/conexiones, etc. Estas funcionalidades no existen en versiones domésticas de los Sistemas Operativos. Debido a la diversidad de circunstancias en las que puede ser usado un servidor, a menudo es necesaria la existencia de una persona encargada de su instalación y mantenimiento (técnico), ya que es muy alta la cantidad de configuraciones y montajes que hay que adaptar según el caso.

Estructura Cliente-Servidor

La teoría está muy bien pero... ¿cómo funciona un servidor? ¿a qué red se conecta? Lo primero de todo es decir que si un servidor no se conecta a ninguna red y se utiliza de forma autónoma, no tiene sentido su uso. Estas máquinas están diseñadas para trabajar en red, ya sea una red local, de la cual es el elemento principal, o bien esté conectado a Internet para dar soporte a nivel global. Pero el concepto más importante que hay que aprender para entender el funcionamiento de los servidores es la estructura cliente-servidor

La estructura básica podemos componerla de un servidor y un cliente. En este caso, el servidor es la "fuente de recursos" (de almacenamiento, procesamiento, ...) y el cliente es quien solicita hacer uso de estos servicios (puede ser cualquier dispositivo: ordenador, móvil, ...). También es importante el concepto de conexión. Una conexión es el canal abierto (mediante cables y conexiones de red) entre las dos máquinas para intercambiar información. Lo primero que hay que hacer es establecer la conexión, y una vez que ambas partes han fijado los parámetros relativos a ella, se puede iniciar el intercambio de datos. La dinámica general de funcionamiento es la de petición-respuesta, mediante la cual el cliente pide datos y el servidor le manda una respuesta con ellos. 

Por lo tanto, el uso del servidor puede mantener paralelamente tantas conexiones independientes como sea capaz de albergar, es decir, pueden existir dos clientes distintos utilizando el servidor para diferentes fines a la vez.

Y esto es todo, esperamos que os sirva, y cualquier duda o sugerencia no dudéis en comentar.


4 comentarios:

  1. Gracias x este tema, me puedes instruir con relación a la nube, agradesco tu ayuda.

    ResponderEliminar
    Respuestas
    1. Hola Jorge. Los "servicios en la Nube" que conocemos actualmente, a menudo son proporcionados por grandes empresas propietarias de las aplicaciones que se usan para ello. Por ejemplo Google, Dropbox, etc. ¿Cómo funcionan estos servicios? Alojan nuestra información en sus servidores, para que podamos acceder a ella desde cualquier lugar en cualquier momento. En realidad, la "nube" equivale a sus propios servidores, que se encuentran on-line las 24 horas al día. Espero haberte ayudado, saludos.

      Eliminar