Netflix es una compañía dedicada a la distribución de contenidos, principalmente al alquiler de películas de cine en Estados Unidos y parte de Europa, aunque todavía no en España. Realiza un uso muy inteligente de sus sistemas para garantizar unas condiciones óptimas de servicio a los clientes. Y es que cuando se trata de hacer accesible un gigantesco catálogo de miles de películas en alta calidad a millones de clientes de diversos países, cualquier solución inteligente, aunque emplee cierta variante de la «fuerza bruta», es adecuada para conseguir el objetivo.
Al igual que otras empresas dedicadas a este negocio, Netflix desarrolló una pieza que resulta clave: una red de distribución de contenidos que permite optimizar las comunicaciones. ¿Por qué? Teniendo en cuenta que hay muchos gigabytes que transferir cada vez que un cliente desea ver una película –ya sea en descarga o streaming– cuanto más cerca esté menos recursos de la red habrá que consumir y menos comunicaciones que pagar.
Así que la idea es instalar estos servidores (llamados Open Connect Appliance Hardware) «cerca» de los clientes, lo que se conoce como CDN (Content Delivery Network, Red de Distribución de Contenidos). Como Netflix es muy popular, lo más sencillo es instalar réplicas de los servidores de contenido los principales proveedores de acceso de Internet, de modo que cuando los clientes se conecten no tengan que vagar por Internet para traerse el contenido.
La solución puede parecer un tanto rústica, pero es tal como suena: si el usuario no puede llegar a la montaña de contenido, hay que llevar la montaña hasta el usuario. Cada uno de estos servidores de Netflix es un sistema relativamente sencillo pero con gran capacidad: entre 100 y 200 terabytes (TB) según la versión – gracias a 72 discos de 3 TB modelos Deskstar y Barracuda de Hitachi y Seagate. Además cuenta con 1 TB en un disco SSD (de «memoria flash»). Comparativamente, pueden almacenar 100 o 200 veces más que un ordenador convencional. Esto permite precargarlos con una copia de miles y miles de películas de alquiler procedentes del catálogo de Netflix. En esencia, son «un Netflix completo» metido en una caja no más grande que un PC.
El software del Open Connect Appliance se encarga de seleccionar de forma inteligente el contenido para organizarlo de forma óptima: normalmente carga lo más popular y solicitado, sea nuevo o viejo; luego están los estrenos y nuevos contenidos. Con las conexiones adecuadas una de estas máquinas puede además recibir unos 7 u 8 TB diarios con nuevos materiales. Si el usuario solicita algo que por cualquier razón no está en el servidor entonces se utilizan las comunicaciones convencionales con los servidores centrales.
La caja de Netflix corre con el sistema operativo FreeBSD y al igual que el contenido, se actualiza automáticamente, de modo que solo hay que enchufarla en el datacenter y dejarla funcionar. Los desarrollos de Netflix utilizan también BIRD para enrutamiento y NGINX como servidor HTTP.
Irónicamente, esta maravilla de la ingeniería está amenazada por motivos poco técnicos. La guerra que mantienen las empresas que ofrecen alquiler y venta de películas frente a los ISP que venden el mismo tipo de contenidos de entretenimiento, hacen que estos ISP tengan el poder de “cerrar el grifo” bloqueando o reduciendo la velocidad de transferencia. Netflix por desgracia ya ha comprobado que esto sucede algunas veces. Cabe esperar que gracias a la neutralidad de la red y a la aplicación del sentido común este tipo de guerras comerciales no afecten a lo que los usuarios solicitan de la red.
Foto de Netflix
Deja tu comentario sobre "Cómo llevar cientos de terabytes hasta los clientes"