Lo primero sería explicar de forma rápida y sencilla qué es un CDN:
Content Delivery Network o Red de Distribución de Contenidos, consiste en una red geográficamente distribuida de servidores que trabajan de forma conjunta proporcionando una entrega rápida y confiable de algún tipo de contenido demandado dentro de Internet.
El propósito principal de una CDN es reducir la distancia física entre el usuario y el servidor que aloja el contenido, mejorando tanto la velocidad de entrega como la disponibilidad del contenido. Algunos de los principales beneficios de usar una CDN incluyen:
1. Entrega de contenido más rápida: Al servir el contenido desde servidores ubicados más cerca del usuario, las CDN pueden reducir significativamente el tiempo que tardan en cargarse las páginas web, los videos, las imágenes y otros activos digitales.
2. Mejor disponibilidad y confiabilidad: Las CDN utilizan múltiples servidores redundantes, por lo que si un servidor se cae, el contenido aún se puede servir desde otra ubicación, asegurando una alta disponibilidad.
3. Reducción de la carga del servidor: Al descargar la entrega de contenido estático a la CDN, el servidor de origen se ve aliviado de esa carga, lo que le permite centrarse en procesar el contenido dinámico y otras tareas del lado del servidor.
4. Alcance global: Las CDN tienen servidores ubicados en todo el mundo, lo que les permite servir contenido a los usuarios desde la ubicación más cercana posible, independientemente de su ubicación geográfica.
5. Seguridad: Las CDN pueden ayudar a proteger contra ciertos tipos de ataques cibernéticos, como los ataques de Denegación de Servicio Distribuido (DDoS), al absorber y mitigar el tráfico malicioso.En general, una CDN bien diseñada e implementada puede mejorar significativamente el rendimiento, la confiabilidad y la seguridad de un sitio web o una aplicación web, especialmente para aquellos con una audiencia global.
Lo segundo, consiste en saber qué tipo de contenidos necesitamos descargar mientras navegamos por Internet, más allá del propio recurso que consultamos: página web, foro, redes sociales, email, etcétera.
Cuando nos conectamos a una página web desde nuestro navegador, además del contenido visible, por ejemplo éste mismo artículo, se necesitan otro tipo de recursos para que todo funcione correctamente: plantillas, frames, plugins, complementos, etcétera. En su mayoría, recurren a distintos tipos de librerías puestas a disposición de los desarrolladores para facilitar su trabajo. La idea principal, es que en lugar de integrar dichas librerías dentro del código, lo que aumentaría sobremanera su tamaño, se encuentren albergadas en servidores externos, sobre los cuales lanzar peticiones según las necesidades de cada momento. Y estos servidores vienen a ser lo que conocemos como CDNs.
Teniendo todo ésto claro, ya resulta más sencillo entender en qué consiste una aplicación/extensión como LocalCDN o Decentraleyes:
Albergar de forma local librerías y recursos minimizando de ésta manera las conexiones a CDNs externos.
Entre ellas cabría que destacar:
- jQuery
- Bootstrap
- Font Awesome
- Google Material Icons
- MathJax
- Chart.js
- React
- Vue.js
- Popper.js
- ….
Y la última cuestión vendría a ser qué ventajas se obtiene de todo ello.
La primera puede resultar obvia: resolver las consultas en local siempre será más rápido que en remoto.
La segunda, y considerada como principal, tiene que ver con la privacidad. Al realizar una consulta a un CDN, éste obtiene nuestra dirección IP y encabezados Http, con la consiguiente duda de cómo lo gestionará y la afectación que puede llegar a tener en relación a nuestra huella digital (fingerprint).
Aquí hay discusiones para todos los gustos:
- Si es mejor y más sencillo usar una VPN.
- Si es algo que no acaba de funcionar plenamente fuera de Firefox.
- Si es mejor Decentraleyes o LocalCDN
A día de hoy, Decentraleyes está obsoleto por falta de continuidad en el proyecto. De hecho, LocalCDN surge como una alternativa a todo ello. Eso no quita, que mucha gente siga prefiriendo al primero o utilizar opciones como configurar privacy.firstparty.isolate
en Firefox. Hay varios hilos muy interesantes en Reddit al respecto.
En mi caso particular – teniendo a Kiwi como navegador principal en el móvil – estoy utilizando LocalCDN desde hace una semana. No he tenido problemas en ningún tipo de página y las consultas resueltas en local no han parado de aumentar:
La configuración me parece sencilla e intuitiva destacando:
- Modo de uso básico sino deseas ninguna complicación
- Listas blancas
- Integración con bloqueadores de publicidad
- Permite guardar y restaurar configuraciones
- Absoluta transparencia en todo lo relativo a prestaciones, compatibilidad y uso de la extensión
Poco más puedo añadir. LocalCDN supone otro paso más en el interminable camino de mejorar nuestra privacidad. Y si bien no alcanza su pleno potencial fuera de Firefox, la considero una extensión muy interesante y absolutamente recomendable.