Cómo contratar diseño web sin hacer el ridículo

Capítulo 6

Qué es un servidor y cómo funciona internet.

En este capítulo aprenderás…

  1. Qué es internet
  2. Qué es una dirección IP
  3. Qué es un router
  4. Qué es una red local, qué es en realidad una intranet
  5. Cómo funciona internet
  6. Qué es en realidad un servidor, qué es un cliente
  7. Tipos de servidores
  8. Qué es un protocolo de comunicación, qué es el HTTP y el FTP
  9. Qué es en realidad el hosting y tipos de hosting: hosting dedicado y hosting compartido
  10. Qué es el cloud computing
  11. Diferencias entre direcciones IP dedicadas y direcciones IP compartidas
  12. Diferencias entre direcciones IP estáticas y direcciones IP dinámicas
  13. Qué es y cómo funciona el DNS
  14. Qué es un log
  15. Cómo se miden las estadísticas de tráfico de un sitio web y cómo saber si alguien abre el email que le envías

¿Qué es internet?

Internet es una red de nodos interconectados entre sí. Estos nodos son computadores, y también los llamamos máquinas o dispositivos. Ejemplos de algunos de estos dispositivos son: PCs, teléfonos móviles, televisiones, reproductores de música … y en la actualidad, casi cualquier cosa que imagines: coches, neveras, libros electrónicos, despertadores …

¿Qué es una dirección IP?

Cada dispositivo conectado a internet cuenta con una dirección IP, que es un código numérico a modo de matrícula única.

IP son las siglas de “Internet Protocol” que significa Protocolo de Internet.

En la versión 4 del protocolo de internet (IPv4) las direcciones IP se representan como una sucesión de cuatro cifras separadas por el carácter del punto (.). Cada cifra de la sucesión tiene un valor entre el 0 y el 255. Por ejemplo, 192.168.1.1 es una dirección IPv4.

Sitios web como Cual es mi IP o Ver Mi IP te permiten conocer con facilidad cuál es tu dirección IP pública.

Dado que las direcciones IPv4 “sólo” permiten que existan unos cuatro mil millones de direcciones diferentes en una red, ya se está usando la versión 6 del protocolo IP (IPv6), cuya principal ventaja es que permite la existencia de unas 3.4 × 1038 direcciones IP en una red.

Internet: una red de redes

A menudo internet se define como la red de redes, y es que, cuando te conectas a internet, lo haces formando una subred con todos los demás dispositivos que se conectan a través del mismo router que tú.

Fotografía del frontal de un router de la marca kyocera, fabricado por la empresa D-Link. Se observa la antena del Wi-Fi en la parte trasera.


Imagen 6.1. Un router es un dispositivo que gestiona el envío y recepción de datos en una subred y entre subredes. Router se traduce como enrutador, pues ese es su trabajo, distribuir la información entre los distintos dispositivos de una red, es decir, crear y gestionar las rutas por las que viajan los datos.
(Imagen bajo licencia CC BY-SA 2.0 cortesía de Synthesis Studios.)

¿Qué es una red local?

Por ejemplo, tu ordenador, y los ordenadores, móviles y tablets de los miembros de tu familia forman una “red local” y, como nodos de esa red, cada uno de esos dispositivos cuenta con una dirección IP que no tiene repercusión fuera del ámbito de vuestra red local (direcciones IP locales o internas). Toda esa red que formáis se conecta a su vez a internet con otra dirección IP (dirección IP pública o externa).

De manera bastante imprecisa, es posible determinar la localización geográfica de un dispositivo a partir de su dirección IP pública.

Una red puede estar formada por un sólo dispositivo. También, una red puede estar constituida por varias subredes que, a su vez, pueden contener más subredes.

Esquema en el que un smartphone, un portátil, y un ordenador de sobremesa aparecen conectados a un router a través de una dirección IP local, y el router, a su vez, aparece conectado a una nube como metáfora del resto de internet, a través de una dirección IP pública.

Imagen 6.2. Esquema de una subred formada por varios dispositivos conectados a un router y conectada a su vez al resto de internet.
En la imagen superior, las direcciones IP privadas corresponden a cada uno de los dispositivos (smartphone, ordenador de sobremesa y ordenador portátil). Aunque no aparezca en el esquema, el router también tendría su propia dirección IP privada, que por defecto suele ser 192.168.1.1.
Es habitual representar internet como una nube. De ahí proviene el cada vez más popular término cloud computing, que significa computación en la nube.
(Iconos de la imagen bajo licencia CC BY-SA 3.0 cortesía de WPZOOM.)

Una intranet es una red local, aunque es habitual oírlo usado erróneamente para referirse a una aplicación web con acceso restringido a ciertos usuarios o a usuarios conectados en cierta red local.

A una intranet también se le llama LAN, que son las siglas de las palabras en inglés “Local Area Network“, lo que se traduce como “Red de Área Local”.

Arquitectura cliente-servidor

Cada dispositivo conectado a internet tiene el rol de cliente, de servidor, o ambos. Es lo que se conoce como arquitectura cliente-servidor.

¿Qué es un servidor?

Un servidor es el nodo de la red que presta servicios. Un servicio es, por ejemplo, el envío o recepción de correo electrónico o el envío de una página web a un navegador.

Existen servidores para todo tipo de servicios: servidores de impresión, de fax, de telefonía, de almacenamiento, de bases de datos, de páginas web, de seguridad, de publicidad … Por ejemplo, un servidor de correo, entre otras cosas, almacena, envía y recibe correo electrónico para otros usuarios de la red.

No imagines un servidor como un gran ordenador, sin pantalla y guardado en un cuarto con refrigeración. Puede ser así (y suele serlo cuando el dispositivo debe soportar mucha carga de trabajo), pero no tiene por qué. Lo que convierte a un dispositivo en servidor es el software que tiene instalado.

Foto de varios smartphones.

Imagen 6.3. Haciendo algo tan fácil como instalar un software cualquier dispositivo se puede convertir en un servidor. Un portátil, e incluso un teléfono móvil, pueden ser servidores.
(Imagen bajo licencia CC BY 2.0 cortesía de Phil Roeder.)

En el portátil desde donde escribo este libro tengo instalados varios tipos de servidores que utilizo para probar sitios web en un ámbito local (privado) antes de publicarlos en internet.

¿Qué es un cliente?

Si el servidor es el nodo que proporciona servicios, el cliente es el que los consume.

Continuando con el ejemplo del servidor de correo que organiza y envía el correo a los distintos usuarios de la red, éstos usuarios recibirán y podrán leer dicho correo gracias a un cliente de correo electrónico, como Microsoft Outlook, Mozilla Thunderbird, Apple Mail, IBM Notes (antes conocido como Lotus Notes) o Gmail.com (éste último, a diferencia del resto de los mencionados en la lista, es un cliente de correo que funciona vía web).

Las páginas web son parte de internet porque existen servidores web, que envían archivos HTML a nuestros ordenadores; y clientes web, comúnmente llamados navegadores, que solicitan ese archivo HTML, y que cuando lo reciben lo interpretan para que veamos una bonita página web en lugar de un archivo de texto (HTML) como el que creamos en el Capítulo 3. ¿Qué es el HTML y CSS?.

Los servidores web más usados son Apache, Nginx y Microsoft IIS y, como ya hemos visto anteriormente, los navegadores más conocidos son: Microsoft Internet Edge, Google Chrome, Mozilla Firefox, Apple Safari y Opera.

Captura de pantalla del navegador web Opera en Mac OS X mostrando el artículo

Imagen 6.4. Navegador web Opera, instalado sobre el sistema operativo Mac OS X, visitando el artículo “Navegador web” de la Wikipedia.

Además del servidor web, la carga de una página web puede requerir de otros servidores, como un servidor de PHP, que leerá código en PHP y lo interpretará para acabar construyendo un archivo HTML que pasará al servidor web; o un servidor MySQL que permitirá que el servidor PHP acceda a datos almacenados en una base de datos MySQL cuando el código PHP así lo solicite.

También, las distintas funcionalidades y contenidos de un mismo sitio web pueden estar repartidas entre varios alojamientos y/o servidores. Por ejemplo, Apache es más eficiente comunicándose con bases de datos, mientras que Nginx lo es enviando imágenes. Un sitio web podría contar con un servidor Apache que hablara con una base de datos MySQL y un servidor Nginx para enviar las imágenes. Este es sólo un ejemplo de las muchas virguerías que la administración de sistemas (que es el nombre de la rama de la informática que se dedica a la administración y optimización de redes y servidores) permite, y con ella pretendo dar una idea de lo compleja –e importante– que es.

Obviamente, todos los servidores y clientes funcionan sobre un sistema operativo. En desarrollo web es especialmente conocido el entorno LAMP, que significa “Linux Apache MySQL PHP“. Supongo que no podrás deducir lo que significa WAMP (pista: la W es por Windows), y MAMP (Mac).

navegador ≠ buscador

No debes confundir un navegador con un buscador. Un navegador es un programa informático instalado en tu ordenador que te permite visitar páginas web. Internet Edge, Mozilla Firefox, Google Chrome, Safari y Opera son ejemplos de navegadores.

Captura de pantalla en Mac OS X en la que aparecen iconos de varias aplicaciones, y en el centro, enfocado, el icono de Google Chrome.

Imagen 6.5. En el centro de la imagen, icono del navegador Google Chrome. Al hacer doble clic en dicho icono se abrirá la aplicación Google Chrome.

Un buscador es una página web que visitas con tu navegador y que te permite encontrar textos en otras páginas web. Los buscadores son aplicaciones web. Google, Yahoo!, Bing y Ask son ejemplos de buscadores.

Google Chrome es una aplicación de escritorio, concretamente un navegador, desarrollada por la empresa Google, Inc.

google.com o google.es son dos versiones, en dos idiomas distintos, de una aplicación web, concretamente un buscador, desarrollada por la empresa Google, Inc.

De la misma manera, Microsoft Corporation es el nombre de otra empresa. Internet Edge es el nombre de uno de sus productos, un navegador. Bing.com es el nombre de otro de sus productos, un buscador.

Para acceder a un buscador tienes que hacer lo mismo que para acceder a cualquier otra página web de internet: escribir su dirección web dentro de la barra de direcciones del navegador. Si, por ejemplo, abres Google Chrome y escribes “google.es” en la barra de direcciones, verás algo similar a la imagen a continuación:

Captura de pantalla en Mac OS X del navegador Google Chrome visitando la página web google.es.

Imagen 6.6. Navegador Google Chrome mostrando la página web google.es.

Captura de pantalla en Mac OS X del navegador Google Chrome visitando la página web google.es. En la imagen se destaca la barra del navegador (barra superior), y la barra del buscador (barra inferior).

Imagen 6.7. La barra de direcciones es un elemento del navegador (por ejemplo, Google Chrome), y sirve para introducir las direcciones de las páginas web que se desea visitar. La barra de búsqueda es un elemento del buscador (por ejemplo google.es), y sirve para introducir el texto que se desea encontrar en otras páginas web.
Para comodidad de los usuarios, la mayoría de los navegadores hacen que cuando el texto que se introduce en su barra de direcciones no es una dirección web, dicho texto pase automáticamente a ser buscado en un buscador. De esta forma, la barra de direcciones hace las veces de barra de búsqueda.

El nombre Google proviene del término googol, un término inglés que se traduce como gúgol, y que es el nombre de un número, un 1 seguido de 100 ceros, es decir, 10100.

El nombre fue escogido por Google para referirse a la gran cantidad de información que su buscador es capaz de organizar.

Además, la sede de Google, ubicada en el 1600 de Amphitheatre Parkway, en Mountain View, en Santa Clara (California), se llama Googleplex. Un gúgolplex (googolplex en inglés) es un número todavía más grande, 10gúgol. Se estima que para escribir todos los ceros que forman este número se requeriría más espacio del existente en el universo conocido y escribirlo por una persona requeriría más tiempo de la edad que tiene el universo.

Esqueleto de un Tiranosaurus Rex con un flamingo rosa en la cabeza, sobre el césped de Googleplex

Imagen 6.8. Googleplex no se queda atrás en lo que a excentricidad se se refiere respecto a otras empresas tecnológicas de Silicon Valley.

El número gúgol fue propuesto en 1938 por el matemático estadounidense Edward Kasner (1878—1955) y el término fue acuñado por su sobrino de 9 años, Milton Sirotta. El número no es especialmente relevante en matemáticas.

Firefox, un navegador libre

El navegador Firefox, de código libre, es desarrollado por la fundación mozilla, una organización sin ánimo de lucro formada por amantes de la tecnología. Desde 1998 mozilla trabaja por crear una web abierta, accesible y colaborativa, que beneficie a todo el mundo.

Algunos buscadores pagan a mozilla a cambio de que el suyo sea el buscador por defecto en Firefox.

Fotografía de panda rojo. Un pequeño animal peludo, del tamaño de un zorro, de pelo rojo con manchas blancas, con cola larga y gorda, caminando por la nieve.

Imagen 6.9. A diferencia de lo que cree la mayoría el icono de Firefox no está inspirado en un zorro, sino en un panda rojo como el de la imagen superior.

Dos fotografías: a la izquierda, la fotografía tomada por el equipo de Firefox, en sus instalaciones, de una tarta blanca con el logotipo de Internet Explorer y un mensaje que dice

Imagen 6.10. Entre los equipos de desarrollo de Firefox e Internet Explorer existe la dulce tradición de regalarse tartas personalizadas tras el lanzamiento de una versión importante.
(Imágenes bajo licencia CC BY 2.0, cortesía de Jennifer Morrow (izquierda) y Matt Brubeck (derecha).)

¿Qué es eso del HTTP? Protocolos de comunicación

Un protocolo es el conjunto de reglas y mensajes que utilizan servidores y clientes para comunicarse entre ellos. Cada servicio necesita de uno o varios protocolos para que cliente y servidor se comuniquen. HTTP es el protocolo a través del cual se comunican servidor web (como por ejemplo Apache o Nginx) y cliente web o navegador (como por ejemplo Internet Edge o Google Chrome).

HTTP son las siglas de “HyperText Transfer Protocol, que se traduce como “Protocolo de Transferencia de HiperTexto“.

Los protocolos de comunicación, como casi todo en el mundo informático, también tienen versiones. La versión más extendida del HTTP es la 1.1 (es decir, HTTP 1.1) pero poco a poco se va extendiendo la versión 2 (o HTTP/2), más segura y eficiente. La implantación del HTTP/2 no implica ningún cambio para usuarios o sitios web antiguos, pues es compatible con las versiones anteriores. No obstante, desarrolladores y administradores de sistemas podemos utilizarlo para crear sitios y aplicaciones web más seguras y eficientes.

Algunos otros protocolos que probablemente hayas usado o de los que hayas oído son:

  • El servidor de correo se comunica con un cliente de correo, como Microsoft Outlook o Gmail.com, a través de protocolos como el POP3 (siglas de “Post Office Protocol“, que se traduce como “Protocolo de Oficina de Correos”), el IMAP (siglas de “Internet Message Access Protocol“, que se traduce como “Protocolo de Acceso a Mensajes de Internet”) o el SMTP (siglas de “Simple Mail Transfer Protocol“, que se traduce como “Protocolo de Transferencia de Correo Simple”).
  • FTP, que son las siglas de “File Transfer Protocol“, que significa “Protocolo de Transferencia de Ficheros”, y sirve para transmitir archivos entre un servidor y un cliente de intercambio de archivos, como Filezilla, SmartFTP o Transmit.

Aunque vulgarmente hablamos de servidor FTP, siendo rigurosos deberíamos hablar de servidor de intercambio de archivos. Siendo estrictos, FTP es el nombre del protocolo con el que se comunican cliente y servidor, no el nombre del servidor.

Captura de pantalla de Filezilla en Mac OS X. En la parte superior los tres campos necesarios para conectarse a un servidor a través de FTP: nombre del servidor (llamado

Imagen 6.11. Un cliente de FTP conectado a un servidor de alojamiento. Para ello, el usuario antes ha introducido en dicho cliente la dirección del servidor, un nombre de usuario y una contraseña; datos de los que le había provisto su proveedor de alojamiento. Una vez conectado, el usuario ve los directorios y archivos almacenados en su servidor de alojamiento y puede operar con ellos: borrar, cambiar nombre, descargar, … También puede transferir archivos desde su ordenador al servidor, arrastrándolos desde el explorador de archivos de la columna izquierda al explorador de archivos de la columna derecha.

Son muchos más los protocolos existentes y necesarios para el funcionamiento de internet. Al conjunto de protocolos usados en internet se les denomina TCP/IP, que son las siglas de Transfer Control Protocol/Internet Protocol, que significa “Protocolo de Control de Transferencia/Protocolo de Internet”, puesto que fueron los dos primeros protocolos que se definieron.

Sabiendo qué es un protocolo podemos hacer más correcta la definición de internet ampliándola:

Internet es una red de nodos interconectados entre sí que se comunican usando un conjunto de protocolos de comunicación abiertos.

Que los protocolos con los que se comunican los nodos que forman internet sean abiertos significa que su funcionamiento es público y cualquiera puede conocerlos, estudiarlos y usarlos de manera libre y gratuita.

Por contra, Google, Facebook o twitter, entre otras plataformas, pese a que también nos ofrecen canales de comunicación, son empresas privadas, propietarias de la mayoría de las tecnologías empleadas en sus productos.

Aunque obvia, esta puntualización es necesaria para entender por qué twitter no es ni será una alternativa al correo electrónico, de la misma forma que Facebook no lo es a las páginas web.

Facebook y twitter, como empresas que son, pueden desaparecer en cualquier momento, descontinuar o alterar sus productos o servicios, utilizar los datos de sus usuarios con propósitos comerciales o responder a intereses que no tienen por qué coincidir con los de sus usuarios.

Un poco de historia de internet

Las primeras redes de intercambio de datos datan de inicios de los años 60. Fue una de ellas, ARPANET, la que llevó al desarrollo de los primeros protocolos de comunicación que permitían la comunicación entre redes, lo que dio lugar a la formación de una red de redes.

ARPANET fue la primera red en usar los protocolos TCP/IP, convirtiéndose así en el padre del internet moderno.

Mapa de Estados Unidos que muestra todas las conexiones de la red de ARPANET a fecha de junio de 1977, siendo éstas unas pequeñas decenas que cruzan el territorio continental de este a oeste.

Imagen 6.12. Mapa de ARPANET. Poco se imaginaban sus creadores que en unos cuantos años ese mapa que en junio de 1977 conectaba unas decenas de puntos iba a ser imposible de representar en un póster.
(Imagen bajo licencia CC BY 2.0 cortesía de Rory Finneren.)

Fotografía del frontal de un router de la marca kyocera, fabricado por la empresa D-Link. Se observa la antena del Wi-Fi en la parte trasera.

Imagen 6.13. Afortunadamente el tamaño de los routers ha disminuido mucho desde el primero que se creó para ARPANET.
(Imagen bajo licencia CC BY-SA 2.0 cortesía de Magnus Manske.)

ARPANET son las siglas de “Advanced Research Projects Agency Network“, que significa “Red de la Agencia de Proyectos de Investigación Avanzada” y se trata de un proyecto del Departamento de Defensa de Estados Unidos para su uso en universidades y laboratorios estadounidenses.

Tim Berners-Lee (1955— ) es considerado el padre de la Web, pues en 1990 inventó el HTML, el HTTP y programó el primer cliente y servidor web. Además, es el fundador del W3C que, como contaba en el capítulo 3, se encarga del mantenimiento del HTML, del XML y de otros lenguajes y estándares.

Dato curioso: cuando era estudiante le pillaron accediendo al ordenador de la universidad y desde entonces tuvo prohibido usar las instalaciones de informática.

De pie sobre un escenaro, Tim Berners-Lee en camiseta negra a la derecha de Vinto Cerf con parecida camiseta.

Imagen 6.14. Tim Berners-Lee (izquierda) con una camiseta en la que pone “I didn’t invent the Internet” (“Yo no inventé Internet”), junto a Vinton Cerf (1943— ), uno de los padres de internet, vistiendo una camiseta que dice “I did not invent the Web” (“Yo no inventé la Web”).
(Imagen bajo licencia CC BY-NC-SA 2.0 cortesía de statusq.org.)

Proveedores de hosting o alojamento

Cuando se contrata un servicio de hosting (o alojamiento, que es lo mismo), se está alquilando un trocito de disco duro y recursos de computación (memoria, procesador, etc.) en el ordenador de la compañía proveedora de dicho servicio de hosting, o uno o varios discos duros enteros.

En ese trocito de disco duro vendrá instalado un servidor web, un servidor de intercambio de archivos, un servidor de bases de datos y un servidor de correo, entre otros. Son esos servidores los que nos permitirán almacenar archivos en el hosting contratado, publicar un sitio web o crear unas cuentas de correo electrónico.

El alojamiento contratado puede ser dedicado o compartido. Si el alojamiento es compartido estás contratando una porción de disco duro y una porción de los recursos (memoria, procesador, etc.) del ordenador que contiene dicho disco duro. Si el alojamiento es dedicado, lo que contratas es el ordenador entero, con todo su disco duro y recursos.

El alojamiento que contrates tiene que tener unas características técnicas (como memoria o espacio de almacenamiento) suficientes para ejecutar tu sitio web y permitir la instalación y ejecución de las tecnologías necesarias para que funcione (ej.: PHP, MySQL, etc.). Éste segundo punto es irrelevante en un alojamiento dedicado, pues tienes libertad de instalar lo que quieras (siempre que sus características técnicas lo permitan, claro está).

Dominio y alojamiento son servicios distintos que no tienen por qué estar contratados con el mismo proveedor. Es posible (y habitual) usar distintos proveedores para distintos servicios y, por ejemplo, contratar el dominio con un proveedor, almacenar el sitio web con otro proveedor y que sea un tercer proveedor el que proporcione el correo electrónico corporativo.

Las características y configuración del servidor de alojamiento tendrán repercusión en el tiempo de carga y funcionamiento del sitio web y, por tanto, en el posicionamiento natural en buscadores de dicho sitio web.

Una CDN, siglas de “Content Delivery Network“, lo que significa “Red de Distribución de Contenido”, es un sistema de servidores de alojamiento distribuidos a lo largo del mundo y cuya utilidad es la de servir contenido a los visitantes de un sitio o página web desde el servidor con mayor disponibilidad y rendimiento, lo que en última instancia reducirá el tiempo de carga de la página web visitada.

Es habitual usar un servicio de CDN para almacenar recursos de un sitio web, como por ejemplo sus imágenes.

Dos personas en camise gris de manga corta, una de ellas con un portátil en la mano, caminan en fila por un estrecho pasillo con dos armarios a los lados llenos de cables colgando, lo servidores.

Imagen 6.15. Centro de procesamiento de datos (CPD) de Bing Maps. Desde él, la información de los mapas de Bing es almacenada, procesada y enviada.
(Imagen bajo licencia CC BY 2.0 cortesía de Robert Scoble.)

Empresas de sistemas

Para tener un sitio web no sólo necesitas a una empresa de diseño y desarrollo web, también necesitas a una empresa de sistemas.

Las empresas de sistemas o, más correctamente, de mantenimiento de sistemas, son empresas que, entre otras cosas, se dedican a mantener tu sitio web protegido, en funcionamiento y en buen estado de salud. Protegido porque evitarán que personas malintencionadas se apoderen de tu sitio web o lo destruyan. En funcionamiento porque en caso de ataque informático, caída u otra incidencia, actuarán rápido para restituir el sitio web. En buen estado de salud porque pueden optimizar tu base de datos para que el sitio web funcione más rápido.

En un mundo ideal cualquier sitio web estaría mantenido por una empresa de sistemas. En la realidad, la mayoría no contratan a una empresa de sistemas hasta tener mucho tráfico o que el sitio web empiece a tener los primeros problemas, una filosofía que no me parece mal, aunque un ingeniero de sistemas no opinará igual que yo.

Cloud computing

Aunque se usa con distintas acepciones según el contexto y su significado más genérico se refiere a cualquier servicio remoto a través de internet, cada vez es más habitual usar el término cloud computing (traducido literalmente como “computación en la nube”) para referirse a la tecnología que permite la prestación de un servicio de alojamiento elástico o flexible.

Es decir, gracias al cloud computing puedes contratar un alojamiento cuyos recursos puedes ampliar de manera flexible según sean tus necesidades, de manera automática o manual pero muy sencilla, sin necesidad de cambiar hardware y sin que suponga ningún trastorno ni operación técnica compleja.

No existe ninguna nube (cloud), sólo los ordenadores de otros.

Esto es posible porque muchas máquinas físicas conectadas entre sí son combinadas y gestionadas por un software que las divide en unidades lógicas de las características técnicas que se desee. Es decir, dicho software permite la creación servidores virtuales a los que se les puede asignar las características técnicas que se desee. Este proceso se denomina virtualización.

Amazon, a través de su amazon web services (AWS) es el mayor proveedor de servicios de este tipo. Los mayores sitios web de internet, como Reddit, twitter o la Wikipedia, emplean los servicios de alojamiento de Amazon (sí, has leído bien, Amazon, los de la tienda online).

Amazon creó esta tecnología para utilizarla internamente, pero dada su enorme utilidad y eficiencia acabó comercializándola con gran éxito.

DigitalOcean es uno de los principales competidores de Amazon para este tipo de servicios.

Rackspace es una empresa proveedora de servicios de alojamiento que desarrolló OpenStack, un software libre que permite a cualquiera con un conjunto de servidores (también llamado rack de servidores o, simplemente, rack) contar con un sistema similar al de amazon web services.

Otras herramientas populares de virtualización son las ofertadas por la empresa vmware.

StackOps es una empresa española puntera que ofrece servicios de alojamiento basados en OpenStack. Entre otras cosas, StackOps ha desarrollado software que convierte su servicio de cloud computing en el probablemente más sencillo de usar y gestionar del mercado.

Descargo de responsabilidad: StackOps es cliente de Clever Consulting.

Direcciones IP dedicadas o compartidas

Como todo lo que está conectado a internet, tu ordenador, y también el servidor donde se aloja tu página web, tenéis asignada una dirección IP. Esas direcciones IP pueden ser dedicadas o compartidas.

Si la dirección IP de un alojamiento es compartida, varios sitios web alojados con el mismo proveedor de hosting tendrán la misma dirección IP.

Si la dirección IP es dedicada, tu sitio o sitios web tendrán una dirección IP única en todo internet, lo que además es beneficioso para el posicionamiento en buscadores de dicho sitio web.

La asignación de direcciones IP sigue unas reglas. Aunque en este libro no voy a entrar en ello, debes saber que no todas las direcciones IP tienen la misma repercusión en el posicionamiento natural en buscadores de los sitios y páginas web.

Direcciones IP estáticas o dinámicas

Una dirección IP es dinámica si es susceptible de cambiar con el tiempo, y estática si es inalterable a lo largo del tiempo.

Puede que cada vez que te conectes a internet tu proveedor de servicios de internet (ISP, del inglés “Internet Service Provider“) te asigne una dirección IP pública diferente, en cuyo caso cuentas con una dirección IP dinámica; o que siempre te conectes a internet con la misma dirección IP pública, lo que significa que tienes contratada una dirección IP fija o estática.

DNS

DNS son las siglas de “Domain Name System“, que se traduce como “Sistema de Nombres de Dominios”, y es el método utilizado para nombrar ordenadores, servicios o cualquier recurso conectado a internet u otra red privada.

Para entendernos mejor, DNS es el sistema que sirve para traducir nombres de dominios fácilmente recordables a direcciones IP, lo que permite que podamos visitar la Wikipedia escribiendo wikipedia.org en la barra de direcciones del navegador en lugar de escribiendo la dirección IP 208.80.154.224.

El DNS está formado por servidores repartidos por todo el mundo llamados “Name Servers“, “NS” o “Servidores de Nombres”. Los Servidores de Nombres están conectados entre sí y comparten la información de sus bases de datos, que consisten en las direcciones IP equivalentes a cada nombre de dominio de internet.

Parte de esta red de Servidores de Nombres está formada por los registradores o registrars, que son las empresas que venden nombres de dominios.

Cuando abres tu navegador y escribes la dirección wikipedia.org, tu navegador y sistema operativo consultan con los Servidores de Nombres hasta obtener la dirección IP 208.80.154.224. Se trata de un complejo proceso de tan sólo unos milisegundos de duración.

En sus bases de datos, los Servidores de Nombres tienen almacenadas las direcciones IP de cada servicio para cada dominio. Esto es lo que permite que aunque funcionen con el mismo dominio, un sitio web pueda estar alojado con un proveedor y el correo electrónico con otro proveedor distinto.

El sitio web DNS Perf muestra datos actualizados del tiempo de respuesta de los Servidores de Nombres (NS) de los principales proveedores de alojamiento.

Gráfica con un listado de proveedores de *DNS* y el tiempo que sus servidores tardan en responder. El más rápido de la gráfica es CloudFlare, con 17,09 milisegundos; seguido de WordPress.com, con 22,51 milisegundos; y Edgecast con 25,01 milisegundos.

Imagen 6.16. En la gráfica de la captura superior se muestra el tiempo, en milisegundos, que los servidores de distintos proveedores de DNS tardan en responder. A menor tiempo de respuesta, mayor su velocidad (es decir, menos tiempo de respuesta es mejor).

Los datos de cada uno de los distintos servicios de cada dominio se almacenan en los llamados registros. Existen, por ejemplo, los registros MX, que contienen la dirección IP de la máquina que proporciona los servicios de correo electrónico (de ahí su nombre, pues MX proviene de “Mail eXchange“, que significa “Intercambio de Correo”).

Cuando modificas el valor de un registro DNS los Servidores de Nombres deben comunicarse entre sí para que el cambio se propague entre todos ellos. Por eso, si cambias de proveedor de servidor web o de servidor de correo el funcionamiento de tu web o correo puede no funcionar correctamente hasta durante 48 horas.

Aunque el registrador de tu dominio forma parte del sistema DNS y puedes usar por defecto sus Servidores de Nombres, también puedes contratar un servicio externo de gestión de DNS como DNS Made Easy, que promete mayor velocidad de respuesta.

Logs

Los logs (término traducible como “bitácoras”) son archivos de texto plano que crean y almacenan los servidores. Los logs recogen la actividad de los servidores, lo que resulta de gran ayuda en la resolución de fallos en el software o en el servidor, pues permiten saber qué ha ocurrido antes de producirse un fallo.

El análisis de los logs también sirve para detectar y solucionar ataques de seguridad y para recoger estadísticas acerca del uso del servidor o, llevado a sitios y aplicaciones web, estadísticas del tráfico tales como número de visitas, tiempo medio de las visitas, páginas vistas por visitante, etc.

La información que se recoge en los logs es el resultado de “escuchar” la información que cliente y servidor intercambian usando los protocolos de comunicación (como el HTTP).

Existen herramientas que nos ayudan a representar la información de logs de los servidores web de una manera que hace que dicha información sea más fácil y agradable de leer. AWStats, Logaholic y Webalizer son algunas de esas herramientas.

Gráfica y tabla que muestran el número de visitas, páginas vistas, hits, y bandwidth de un sitio web para cada día de mayo. En la izquiera de la pantalla aparece un menú lateral en el que aparecen enlaces para acceder a otras muchas estadísticas como: visitas diarias, visitas semanales, o países de origen de las visitas, entre otras.

Imagen 6.17. Captura de AWStats de un sitio web. En la gráfica y tabla de la imagen se muestran las visitas, páginas vistas, hits (cantidad de archivos descargados) y bandwidth (cantidad de datos transferida) para cada día del mes de mayo de cierto año. Haciendo clic en los enlaces del menú lateral de la izquierda el administrador del sitio web puede acceder a otras muchas estadísticas del tráfico de su sitio web.

Cuando contrates un servicio de alojamiento lo más habitual es que tu proveedor te facilite los datos de acceso (dirección, usuario y contraseña) a un panel de control. Es en ese panel de control desde donde podrás acceder a los logs de tu servidor y a las estadísticas de tráfico de tu sitio web.

¡Ojo! no te emociones con los hits de tu sitio web. Los hits son archivos descargados y no visitas o páginas vistas. Una página web puede contener recursos como hojas de estilo, iconos, imágenes, vídeos o archivos de audio. Cada vez que un usuario visita una página se producen tantos hits como archivos tenga asociados dicha página web.

Cada vez que un usuario llega a tu sitio web se produce una visita (visit). Por cada página de tu sitio web que visita dicho usuario se produce una página vista (o pageview en inglés). Si ese mismo usuario vuelve a visitar tu sitio web pasadas unas horas o unos días se produce una segunda sesión (session) de ese usuario, pero dicha visita no aumentará la cantidad de usuarios únicos (unique visitors) o nuevos (new visitors), puesto que se trata de un usuario recurrente (returning visitor).

La tasa de rebote o bounce rate mide la porción de usuarios que aparentemente no están interesados en tu sitio web. Dependiendo de cómo funcione o cómo esté configurada tu aplicación de analítica web la tasa de rebote se determinará de una u otra manera, por ejemplo contabilizando a aquellos usuarios que pasan menos de 30 segundos en tu sitio web, pero también puede ser, o combinarse con, aquellos usuarios que sólo visitan una página web de todo el sitio web, o aquellos que pasan un largo periodo de tiempo (como 15 o 30 minutos) visitando una sola página de todo el sitio web.

Analítica web y pixel tracking

Probablemente habrás oído hablar de Google Analytics, Piwik o Adobe Analytics (antigua Omniture).

Esas son algunas de las muchas herramientas que existen para recabar estadísticas de tráfico en un sitio web.

Instalando, por ejemplo, Google Analytics en tu sitio web, tendrás otra forma (aparte de los logs) de conocer cuántos usuarios te visitan, desde qué lugares geográficos, cuál es la fuente del tráfico o por qué palabras te encuentran en los buscadores, entre otros muchos datos.

Captura de parte de los resultados de Google Analytics. Una gráfica de líneas ocupa la mitad superior de la imagen, una gráfica de tarta se sitúa en la parte inferior derecha, y en la parte inferior izquierda aparecen 6 gráficas de línea con una cifra cada una.

Imagen 6.18. Captura de parte de parte de la información que proporciona Google Analytics. En la gráfica superior de la imagen se representan las páginas vistas cada día durante parte de mayo y junio de cierto año para un sitio web. La gráfica de tarta de la esquina inferior derecha muestra la relación entre usuarios nuevos (27%) y recurrentes (73%) para ese mismo periodo y sitio web. También para ese periodo y sitio web las cifras y gráficas de la parte inferior izquierda enseñan el número de sesiones (2.796), usuarios (2.150), páginas vistas (5.664), promedio de páginas vistas por sesión (2,03), duración media por sesión (1 minuto y 44 segundos) y tasa de rebote (68,45%).

Uno de los métodos utilizados por estas herramientas para obtener datos acerca de quién te visita consiste en introducir en todas las páginas de tu sitio web una imagen de un píxel por un píxel transparente (es lo que se llama pixel tracking o píxel de seguimiento).

Dicha imagen estará alojada en un servidor de quien proporciona el software de analítica (por ejemplo en los servidores de Google en caso de que uses Google Analytics). Cada vez que esa imagen se descargue, en un log en los servidores de Google quedará registrado que se ha producido una descarga (y por tanto una visita), la dirección IP a la que se ha descargado la imagen (y por tanto la localización geográfica del visitante), y el día y la hora de la descarga (y por tanto el momento de la visita). Guardando un archivo de texto con cierta información (cookie) en el dispositivo del visitante sabremos si un usuario es recurrente.

Las cookies no son otra cosa que archivos de texto que guardan los sitios web en el ordenador del visitante y que contienen información acerca éste. Entre otras cosas las cookies sirven para mostrar a un usuario publicidad relacionada con sus intereses (basándose en las páginas web que ha visitado), recabar estadísticas del tráfico de un sitio web o mantener identificado a un usuario en un sitio web que requiera usuario y contraseña.

Avisar a los usuarios de que un sitio web usa cookies es casi tan ridículo como avisarles de que usa HTTP. —Anónimo comentador en internet.

El aviso de cookies de la web meneame.net dice así:

Imagen 6.19. En Europa existe la conocida como “Ley de cookies“, que obliga al prestador de un servicio (como el dueño de un sitio web) a informar a sus usuarios de la existencia de cookies, del uso que se hará de dichas cookies y de cómo el usuario puede desactivar el almacenamiento de cookies en su dispositivo.
Algunos sitios, como el agregador de noticias meneame.net (imagen superior) se toman con humor el cumplimiento de esta –difícil de comprender– ley. La “Ley de Cookies” es, en realidad, una actualización de la Ley de Servicios de la Sociedad de la Información y el Comercio Electrónico (LSSICE), una normativa que todo propietario de un sitio web debe cumplir, al igual que ocurre con la Ley Orgánica de Protección de Datos (LOPD).

Los datos que nos proporcionan las herramientas de analítica web tienen un margen de error y, por tanto, los resultados pueden diferir entre varias herramientas. Puede ocurrir, por ejemplo, que a veces el píxel de seguimiento no se descargue correctamente. Aún así, la precisión de los datos proporcionados por un software de analítica web es infinitamente mayor a la que podemos obtener en cualquier estudio de mercado tradicional.

Las plataformas de email marketing (herramientas que sirven para el envío masivo de correos electrónicos) también introducen un píxel de seguimiento en los emails que envían, de esa forma pueden decirnos, entre otros datos, qué receptores abren los emails, cuántas veces o desde dónde.

Captura de Campaign Monitor en la que aparece una gráfica con dos líneas en la mitad superior, un gráfico de tarta en la zona inferior izquierda, y 5 cifras en la parte inferior derecha.


Imagen 6.20. Captura de parte de la información que proporciona la herramienta de email marketing Campaign Monitor. En la gráfica superior, en verde, se muestran el número de aperturas de cierto email a lo largo del tiempo; y en azul el número de clics (clics en cualquiera de los enlaces que contuviera el email enviado).
En la zona inferior izquierda se ve un gráfico de tarta con la relación entre los usuarios que han abierto el email al menos una vez (Unique opens), los que todavía no lo han abierto (Not Opened) y los que por algún motivo ni siquiera lo han recibido –les ha rebotado– (Bounced).
En la parte inferior derecha vemos que el 30,61% de los receptores han abierto el email hasta la fecha, que el 7,19% (69 personas) han clicado en un enlace de los que contenía el email, que el 0,7% de los receptores (22 personas) se dieron de baja para no seguir recibiendo más email marketing de este emisor, que dos personas (0,06%) marcaron el email como correo basura (spam) y que nadie compartió el email en Facebook, Twitter o lo reenvió por correo electrónico.


Resumen

Internet es una red de nodos interconectados entre sí. Cada nodo de la red tiene una dirección IP que lo identifica. Dicha dirección IP puede ser dinámica o estática.

La red de internet está formada por muchas subredes, redes locales o intranets contectadas entre sí y que pueden contener a su vez más subredes.

Cada nodo en una red cumple el rol de cliente, de servidor, o ambos. Cliente es el que solicita información al servidor, servidor el que proporciona información al cliente. Por ejemplo, Apache es un servidor de páginas web; y un navegador, como Mozilla Firefox, es un cliente de páginas web.

Existen servidores para cada tipo de servicio: correo electrónico, páginas web, bases de datos, telefonía, etc. Para cada servidor existen uno o varios protocolos, que son el conjunto de reglas con las que se comunican cliente y servidor. Ejemplos de protocolos son el HTTP para páginas web o el FTP para transferencia de archivos.

La contratación de alojamiento consiste en el alquiler de disco duro y recursos de computación en un ordenador remoto. Podemos compartir los recursos de alojamiento con otros usuarios del servicio o contratar un alojamiento dedicado.

Los servicios de alojamiento de cloud computing son elásticos o, lo que es lo mismo, sus recursos de computación son ajustables a los requisitos de cada momento.

DNS es el sistema que traduce nombres de dominios fácilmente recordables a direcciones IP. Los registros, que forman parte del DNS, permiten que sitio web, email y otros servicios funcionen bajo un mismo nombre de dominio pero estén contratados con proveedores distintos.

Los logs son archivos de texto que registran la actividad del servidor, algo útil para la detección de fallos en una red o software que funcione en dicha red, por seguridad y para recoger estadísticas de uso de un servidor, tráfico de un sitio web o envíos de email marketing.

Si has leído hasta aquí ya sabes cómo funciona un ordenador, qué es el HTML y el CSS, qué es la programación, qué es una base de datos y cómo funciona internet, que son todos los ingredientes necesarios para entender el Capítulo 7. Cómo funciona una página web.