Het IPFS-protocol is een zeer grote technologische stap die de werkingsprincipes van servers en internetnetwerken zal veranderen. Het heeft enkele verschillen met de gecentraliseerde en gedecentraliseerde netwerkarchitecturen die u al kent (of waarmee u dagelijks communiceert, zelfs als u dat niet doet). Het is een project dat geweldige dingen heeft bereikt op het gebied van beveiliging en foutloze werking en dat zich blijft ontwikkelen. Maar wat is het precies?
Wat is IPFS?
IPFS, of het InterPlanetary File System, is een protocol en peer-to-peer-netwerk voor het opslaan en delen van gegevens in een gedistribueerd bestandssysteem. Het is net als HTTP, behalve dat het meer is gebouwd als BitTorrent. IPFS maakt het mogelijk om inhoud te adresseren (een bestand ophalen op basis van de inhoud, in plaats van de naam of locatie) op het netwerk en delen met end-to-end communicatie. Het eerste ontwerp van het project is van Juan Benet. IPFS is open source en heeft een sterke community.
Bitcoin had een enorme impact op de opkomst van IPFS. Ontwerpkenmerken zoals netwerkarchitectuur voor gegevensopslag, verwijdering van herhaalde records en adressering van knooppunten die op het netwerk zijn aangesloten, zijn voortgekomen uit het Blockchain-protocol van Bitcoin. Daarnaast GIT (Version Control System) en
Torrent-technologieën zijn ook samengekomen in IPFS-technologie.Wat is het doel van IPFS?
De missie van IPFS is om een eeuwigdurend web te creëren en dit te doen door HTTP te vervangen. IPFS is geëvolueerd als een oplossing voor beperkingen in de fysieke manier waarop het web momenteel is ontworpen. Om dit beter te begrijpen, moeten we eens kijken naar enkele kenmerken van het web van vandaag.
De webinfrastructuur van vandaag
Als je het fysieke landschap van het hedendaagse web, de topologie ervan, bekijkt, kun je de verschillen met IPFS beter zien. Overweeg eerst twee benaderingen voor het ontwerpen van het web: een gecentraliseerd architectuurnetwerk en een gedecentraliseerd architectonisch netwerk.
In gecentraliseerde architectuurnetwerken is er slechts één server. Dergelijke netwerken hebben verschillende schaalbaarheidsproblemen en er zijn andere problemen, zoals het hebben van een single point of failure. Dit probleem betekent dat alle functionaliteit verloren gaat als de server uitvalt. Gecentraliseerde architecturale netwerken kunnen ook slechte werkprestaties vertonen.
Gedecentraliseerde architectuurnetwerken gebruiken daarentegen een heel ander systeem dat schaalbaar is en met meerdere servers werkt. Het presteert beter dan gecentraliseerde ontwerpen in termen van efficiëntie en heeft een veel beter foutbeheermechanisme in geval van fouten en systeemproblemen. Maar om dit alles te bereiken, kunnen hoge kosten nodig zijn.
De andere aanpak van IPFS
Als u de IPFS-topologie onderzoekt, zult u een volledig gedistribueerde architectuur tegenkomen. Ze hebben knooppunten die zowel server- als clientbewerkingen aankunnen. Daarom werken ze heel efficiënt. Bekijk het onderstaande diagram om dit gemakkelijker te begrijpen:
Met de huidige HTTP-webtechnologie zie je dat een gecentraliseerde structuur minder efficiënt is. Een gedistribueerde architectuur is efficiënter, maar met op HTTP gebaseerde webtechnologie lopen de kosten te snel op.
IPFS biedt uitkomst. Met HTTP kun je vragen wat zich op een bepaalde locatie bevindt (zoals een webadres), maar met IPFS kun je vragen waar een bepaald bestand zich bevindt (zoals op een computer in de buurt).
Laten we dit verduidelijken met een voorbeeld. Stel dat je een cursus volgt aan de universiteit met 100 mensen wanneer je docent een weblink met je deelt. Wanneer 100 studenten toegang willen tot deze webserver, gaan er 100 verschillende verzoeken naar de server. Als reactie komen er 100 reacties van de server. Dit is qua efficiëntie geen ideale methode. Bovendien wordt dit proces gecompliceerder voor HTTP wanneer er een probleem is aan de serverzijde (zoals het verwijderen van gegevens, een communicatieprobleem aan de ISP-zijde of blokkering van inhoud op basis van land).
Laten we nu eens kijken naar dit voorbeeld met IPFS. Maar laten we eerst ingaan op de details van hoe IPFS werkt. Stel dat de HTTP-link in het vorige voorbeeld was http://196.224.181.175/folder/data.txt. Een vergelijkbare IPFS-link zou in een structuur zitten zoals /ipfs/WhsYEWbqs0R/folder/file.txt.
Je installeert speciale software om toegang te krijgen tot de /ipfs architectuur. Na de installatie kunt u het bestandssysteem bezoeken alsof er een virtuele schijf is of alsof u toegang hebt tot een HTTP-webadres.
Wanneer de leraar de link onder de leerlingen verspreidt, kunnen de leerlingen die het verzoek verzenden de gegevens ontvangen op basis van hun nabijheid tot andere mensen die er eerder om hebben gevraagd. Als u zich zorgen maakt over de integriteit van gegevens, zijn er cryptologietechnieken (het nemen van de hash van de gegevens) om te controleren of u het juiste bestand ontvangt.
Met andere woorden, het is mogelijk om de gewenste gegevens te verkrijgen door verbinding te maken met iemand die deze eerder van de centrale server heeft verkregen, zonder de integriteit van de gegevens te schaden. Op dit moment gebruikt IPFS torrent-technologie.
IPFS en blockchains
IPFS heeft structurele overeenkomsten met blockchains. Om deze reden kunnen IPFS en blockchains succesvol samenwerken. Juan Benet, de uitvinder van IPFS, noemt de interoperabiliteit van Blockchain en IPFS een perfect huwelijk. Protocol Labs, opgericht door Juan Benet, host momenteel de ontwikkeling van verschillende projecten naast IPFS.
Een van de initiatieven van Protocol Labs is de IPLD (Interplanetair gekoppelde gegevens) project. Met dit project worden Bitcoin- en Ethereum-ketens overgebracht naar het gedistribueerde IPFS-netwerk. Met dit protocol is het mogelijk om veel meer Blockchain-architecturen in het IPFS-netwerk op te slaan.
Een van de doelen hier is om de veiligheid van blockchains te waarborgen. Een ander doel is om verschillende gebruikers te bereiken die ervoor zorgen dat deze gegevens op het netwerk blijven bestaan. Dit doen ze door gebruikers die data opslaan op het netwerk te belonen met een alternatieve cryptomunt genaamd Filecoin.
De toekomst van IPFS
IPFS lijkt op veel manieren toekomstig internetgebruik te beïnvloeden. Het blijft zich in een zeer snel tempo ontwikkelen en het gebruik ervan neemt met de dag toe. IPFS komt steeds vaker voor in toepassingen die gegevensopslag, het delen van bestanden of beveiliging op hoog niveau vereisen.
IPFS gebruikt veel servers en knooppunten van over de hele wereld om bestanden en gegevens op te slaan. Wanneer een van deze servers of knooppunten beschadigd is, zullen de andere het gat dichten en kunt u het systeem herstellen.
In deze wereld waar elke minuut miljoenen gegevens worden geboren, evolueert het bewaren van deze gegevens en het waarborgen van hun beveiliging met technologieën zoals IPFS. Gedistribueerde en gedecentraliseerde architecturen lijken klaar om in de toekomst veel gebieden over te nemen.