Servidores: redes públicas y privadas


Como ya apuntamos en capítulos anteriores, la navegación por la Web consiste básicamente en el intercambio de información entre un agente de usuario o cliente —un navegador (web browser), por lo general, aunque puede ser otra herramienta de software— y un servidor web (web server). Entonces hablamos de algunos navegadores y de los lenguajes que utilizan, como HTMLlenguaje de marcación de hipertexto
HyperText Markup Language
y JavaScript. Ahora toca dedicar algún tiempo a conocer la otra parte de la transacción: el servidor web.

DNS Server
Servidores DNS (Imagen: Wikimedia Commons – Licencia: CC BY-SA 4.0)

 

¿Hardware o software?

Existe la creencia de que un servidor de cualquier tipo es un supercomputador, que suele encontrarse en alguna sala aislada y bien protegida, casi siempre a una temperatura constante. ¿Quién no recuerda a Tom Cruise colgado de un cable en Misión imposible, dispuesto a piratear una lista de agentes de la CIALa Agencia Central de Inteligencia es una de las mayores agencias de inteligencia del Gobierno de Estados Unidos.
Central Intelligence Agency → CIA
? Pero en realidad un servidor ni siquiera es un elemento de hardware, sino una herramienta de software, como las muchas que usamos a diario en nuestros equipos. Y aunque en informática y otras actividades el tamaño importa y la potencia nunca está de más, no es necesario que sea instalado en un gran computador, sino que puede funcionar en equipos antiguos y de gama baja. De hecho, algunas personas poco dadas a deshacernos de los computadores viejos, pobrecitos, tenemos la costumbre de convertirlos en servidores de algún tipo: de impresión, de telefonía…

Un servidor es una herramienta de software, no de hardware

El error puede deberse en parte a la influencia de Hollywood, y también a la jerga con que nos comunicamos los profesionales de las TICTecnologías de la Información y las Comunicaciones
Information and Communications Technology
. En empresas, sobre todo grandes, suele haber varios servidores que se ocupan de la gestión de bases de datos, del correo, de aplicaciones, e incluso de servicios físicos, como la red eléctrica, los ascensores… Todos ellos son, por lo general, aplicaciones de software. Lo que sucede es que a menudo empleamos la palabra «servidor» para referirnos a la máquina en la cual ese software, el servidor propiamente dicho, se encuentra instalado. Así que Hollywood quizá se ha limitado a difundir, aunque con su enorme sentido del espectáculo, eso sí, una simple imprecisión de la que debemos hacernos responsables.

Un servidor es esencialmente una herramienta de software capaz de atender las peticiones de un cliente. Y un servidor web (web server) no es más que un servidor especializado, como su nombre indica, en servir sitios web. Cumple la misión opuesta a la de los navegadores, pues consiste en resolver las peticiones de estos. Su cometido puede resumirse en tres tareas: estar a la espera de solicitudes y, cuando las ha recibido, localizar los recursos solicitados y devolver una respuesta.

Un sitio web es, en definitiva, una carpeta almacenada en algún computador de los miles o millones conectados a la Red

En la Web, los recursos antes mencionados son ficheros digitales de distintos tipos, por supuesto. Y es que en realidad cualquier dirección —URL«localizador de recursos uniforme» es un identificador de recursos en una red, que coloquialmente llamamos «dirección web» o «dirección de internet»
Uniform Resource Locator → URL
es el término técnico— que escribamos en la ventana del navegador, como por ejemplo http://aplicacionez.es o http://exetinyplugins.es, corresponde a una carpeta, almacenada en algún computador, que guarda el archivo o los archivos que conforman un sitio web. Puede estar en la misma máquina que usamos para navegar, en otra cercana conectada a la nuestra o, por el contrario, a cientos de kilómetros, o incluso en el otro lado del mundo, pues algo que caracteriza a la Web es que las distancias no importan. El navegador envía la dirección solicitada a todas las redes a que pueda acceder, y espera a que un servidor le responda. Lo importante, por tanto, es que en esa máquina donde se encuentran los archivos, o en cualquier otra conectada a la red, haya un servidor web capaz de localizarlos y de construir con ellos, o con la ausencia de estos, la respuesta que el navegador necesita.

Redes públicas y privadas

Todo servidor web es local por lo menos en la máquina y/o en la red donde se encuentra instalado

Otra de las imprecisiones de las que deberíamos sentirnos culpables es la distinción entre servidor público y servidor privado. Porque un servidor web, esa herramienta de software, es igual en cualquier caso, ya se utilice en un solo equipo, en una red doméstica o de oficina, o en la multitudinaria World Wide Web. Lo único diferente será el ámbito de la red a la que pertenezca el computador que alberga el servidor, por lo que deberíamos hablar de redes públicas y redes privadas, en vez de hacerlo de diferencias entre servidores que son inexistentes. Y es que, en rigor, todo servidor web es local por lo menos en la máquina y/o en la red donde se encuentra instalado, lo que significa que su funcionamiento será siempre idéntico, como en su momento veremos.

Instalación local

Cuando navegamos en la misma computadora donde corre el servidor web, la localización del directorio correspondiente a un sitio web en concreto no suele plantear problemas, ya que por lo general estará en el disco duro, o en otro del mismo sistema, cuyo acceso debería estar garantizado. Hablamos entonces de una instalación local o —con poca precisión, ya lo hemos dicho— de servidor web local, porque funciona en un solo computador. En esta modalidad de navegación, la URL«localizador de recursos uniforme» es un identificador de recursos en una red, que coloquialmente llamamos «dirección web» o «dirección de internet»
Uniform Resource Locator → URL
que empleamos puede ser, por ejemplo, http://localhost/aplicacionez.es, donde localhost, «anfitrión local», es la dirección que algunos servidores web suelen reservar para el directorio donde se almacenan las web en la misma máquina en que se encuentran instalados. El resto de la dirección, aplicacionez.es, será una carpeta del mismo nombre, entre las muchas posibles que pueden crearse dentro de ese directorio. Esta estructura de subdirectorios en un directorio web principal permite que desde una misma máquina y con un único servidor puedan servirse sitios diferentes, y es la base de lo que muchos proveedores de hospedaje ofrecen con el nombre de alojamiento compartido.

Red interna

Pero, ¿qué pasa si esa computadora que estaba aislada se conecta a una red doméstica o de oficina? En realidad, las obligaciones del servidor no serán diferentes: localizar los archivos del sitio web y responder al navegador. Lo distinto aquí será que cualquiera de los navegadores de cualquier ordenador de la red podrá enviar solicitudes, usando una dirección que incluya el nombre de la máquina que contiene el servidor —como puede ser http://pc-de-manolo/aplicacionez.es, puesto que mi ordenador se llama pc-de-manolo— y el de la carpeta en cuestión. El servidor procederá a resolver esas peticiones de idéntico modo. Es lo que suele llamarse intranet, «red interna», término que sí podemos considerar correcto, porque lo interno es la red. El servidor web seguirá siendo el mismo, y su comportamiento exactamente igual que si estuviera funcionando únicamente en un computador aislado.

Red pública

Cuando esa red local, además, se conecta a otra, y esta a otra, y esta a la red universal, como Internet, la Red de Redes, hablamos de servidor web público, también con poco rigor, porque lo público es la red, no el servidor. Aunque en este caso hay que precisar que también debe ser pública la dirección en sí, aplicacionez.es, lo que conocemos como dominio, que habrá sido previamente registrado en algún organismo encargado de esta gestión, para garantizar que todo el mundo pueda tener acceso a él. Pero igualmente los archivos tendrán que estar guardados en un carpeta, en una máquina en la cual un servidor web sea capaz de encontrarlos.

En una red pública cualquier solicitud enviada por un navegador viajará a través de toda una jerarquía de máquinas, cada una de ellas con servidores dedicados a distintas tareas

La única diferencia entre navegar por una red privada o por una pública radica en que, en este último caso, cualquier solicitud enviada por un navegador viajará a través de toda una jerarquía de máquinas, cada una de ellas con servidores dedicados a distintas tareas, antes de encontrar el recurso solicitado. Algunos de ellos, los llamados servidores de dominio o sistemas de nombres de dominio, DNS«Sistema de Nombres de Dominio»: nomenclatura jerárquica para una red, que asocia información numérica a nombres de dominios
Domain Name System
, se ocupan de averiguar, por la terminación de la dirección solicitada por el navegador, si esta pertenece a páginas de España (.es), por ejemplo, o de Italia (.it), o si es una web comercial (.com), educativa (.edu) o de una organización no gubernamental (.org), entre otras muchas disponibles. Con este dato, y otros semejantes que no cabe explicar ahora, la petición será redirigida a otro servidor especializado, y este a un tercero, y el siguiente a otro, y a otros muchos más, que se encargarán de controlar en qué red de las existentes se encuentra la página solicitada, y que a su vez reenviarán la petición al servidor de esa red, el cual tendrá que saber en qué computadora concreta está almacenado el sitio en cuestión. Este reenvío de información entre miles de aplicaciones no es en realidad una característica propia de ningún servidor, sino de la propia Internet, que está configurada como una red de nodos independientes. A fin de cuentas, no olvidemos que ese fue el objetivo de ARPANETARPANET fue una red de computadoras descentralizada creada por encargo del Departamento de Defensa de los Estados Unidos para utilizarla como medio de comunicación entre las diferentes instituciones académicas y estatales, la antecesora militar de Internet: conseguir una red descentralizada, con múltiples caminos posibles entre dos puntos, de tal modo que si varios computadores fueran destruidos durante un conflicto nuclear, los demás pudieran seguir funcionando.

Conclusión

En definitiva, por lo general es ahí, en esa última máquina, la que almacena la carpeta y los archivos del sitio solicitado, donde suele haber un servidor web responsable de encontrarlos y de retornar con ellos una respuesta. Por eso decimos que un servidor web es local siempre, y que su funcionamiento no varía, independientemente del ámbito doméstico, corporativo o público de la red a la que pertenezca. Y también por esta razón, porque el comportamiento es el mismo siempre, analizar el de cualquier servidor nos servirá para comprender cómo se sirven todas las páginas del mundo. Las implicaciones de esto son tremendas. Porque, en buena lógica, si un servidor web es una aplicación de software que puedo instalar en cualquier computador, ¿qué me impide montar uno en mi equipo de casa? En teoría, nada. Y en la práctica, tampoco, e incluso es relativamente fácil de instalar y configurar. En un futuro artículo estudiaremos las ventajas e inconvenientes de ser tu propio proveedor de alojamiento y cómo hacerlo con herramientas gratuitas que nos facilitan esa tarea. Pero antes debemos dedicar todavía un poco más de tiempo al funcionamiento teórico del servidor web, ese modo de actuar que, repetimos, será siempre el mismo, independientemente de la red a la que se encuentre conectado. Es lo que haremos en la próxima entrega.



Hay un comentario a “Servidores: redes públicas y privadas”

Puedes dejar una respuesta o hacer Trakback para esta entrada.
  1. Por favor llámenos al +34 902757672

Escribe una respuesta o un comentario

Tu dirección de correo no será publicada.