InterPlanetary File System (IPFS) es un nuevo protocolo de Internet que busca renovar todos los protocolos actuales ofreciendo una solución todo-en-uno con la que poder cubrir prácticamente cualquier necesidad. El protocolo IPFS permite crear aplicaciones totalmente distribuidas, garantizando así su disponibilidad a lo largo de la red sin depender de un único servidor centralizado para brindar un servicio concreto.
IPFS es un sistema de archivos distribuido peer-to-peer totalmente libre (se puede acceder a él desde GitHub) que pretende poder conectar todos los dispositivos informáticos con el mismo sistema de archivos ofreciendo así un protocolo único, todo en uno, con el que cubrir todas las necesidades de la red. Este protocolo, a grandes rasgos, es igual que la web actual, aunque implementando en él el protocolo BitTorrent para garantizar el acceso a ella en todo momento.
Por el momento este nuevo protocolo aún se encuentra en fase «Alpha» y no ofrece demasiadas posibilidades a nivel práctico, sin embargo, el protocolo sí que es funcionar y se facilitan una serie de guías y ejemplos prácticos para tener una primera toma de contacto con él.
Si somos usuarios de Linux podemos probar la Alpha más reciente de este nuevo protocolo. Para ello simplemente debemos abrir un terminal y teclear los siguientes comandos:
- wget https://gobuilder.me/get/github.com/ipfs/go-ipfs/cmd/ipfs/ipfs_master_linux-amd64.zip
- unzip ipfs_master_linux-amd64.zip
- cd ipfs
- mv ipfs /usr/local/bin/ipfs
Para los usuarios menos experimentados, lo que hemos hecho ha sido utilizar wget para descargar la versión más reciente del software, descomprimirlo y situarnos en la carpeta que nos ha creado el comando unzip. Una vez allí hemos movido el archivo «ipfs» a la carpeta de path para poder ejecutarlo desde el terminal sin depender de ninguna otra ruta absoluta ni relativa.
Para comprobar que todo funciona correctamente podemos teclear en el terminal «ipfs version» y nos deberá devolver la versión de la herramienta descargada. Una vez que funciona y que todo está correcto ya podemos empezar a jugar con la red.
En el siguiente enlace tenemos una serie de ejemplos utilizando este nuevo protocolo que nos van a permitir comprobar que efectivamente funcionan y nos permitirán tomar un primer contacto con él y con las posibilidades que este nos ofrece. Nosotros vamos a jugar con la red, comprobando como efectivamente podemos establecer conexiones con otros pares de la red.
Para observar el comportamiento de la red podemos teclear en un terminal:
- ipfs swarm peers
El programa nos mostrará en la pantalla los pares a los que estamos directamente conectados.
- ipfs diag net
Este comando, bastante más extenso que el anterior, realiza un barrido de toda la red P2P de este protocolo distribuido y nos muestra todos los pares conectados en ese momento a la red. Aunque el número de ellos es bastante amplio, recordamos que aún está en fase de desarrollo y pruebas, por lo que en relativamente poco tiempo el barrido de la red finalizará.
Varias plataformas y algunos sistemas operativos como FreeNas 10 ya han empezado a implementar estas conexiones. Poco a poco más sistemas y dispositivos irán implementando este protocolo que, aunque sigue en fase de desarrollo, ya es totalmente funcional.
¿Qué te parece un protocolo distribuido como IPFS? ¿Crees que el protocolo actual web está obsoleto y debe actualizarse?
En otro artículo tenemos una comparativa analizando IPFS y HTTP.