P2P-delen: Hoe het werkt en de toekomst
Hoe P2P-delen werkt en wat het te bieden heeft voor de toekomst van het internet
BitTorrent is een van de populairste P2P-netwerkprotocollen die in gebruik zijn. Gnutella is zo’n protocol dat al bestond vóór BitTorrent. P2P vertegenwoordigt meer dan 40% van het totale internetverkeer (bron). Hoewel de “BitTorrent”-software in je opkomt, is het idee van Torrenting veel breder en complexer dan de tool zelf. Bovendien is BitTorrent de naam van het protocol dat wordt gebruikt voor de P2P bestandsoverdracht.
In een typisch scenario voor bestandsoverdracht op het internet, uploadt u een bestand of downloadt u een bestand van een openbaar toegankelijke server. Bij P2P verzenden/ontvangen van bestanden gebeurt dit echter tussen twee of meer partijen die niet strikt openbaar zijn op het internet. Vandaar dat het P2P of peer to peer wordt genoemd. Het interessante van deze aanpak is dat er geen server nodig is.
Als je ooit in aanraking bent gekomen met BitTorrent, uTorrent, Vuze of Limewire heb je waarschijnlijk P2P bestandsdeling gebruikt. Hoewel het niet direct relevant is, is WebRTC weer een andere P2P-communicatietechnologie. Het wordt vooral gebruikt voor het streamen van inhoud in gevallen als videobellen etc.
Waarom?
P2P-deling is altijd gedecentraliseerd. Dat is vrij goedkoop op grote schaal. Bovendien kunnen verschillende soorten encryptielagen worden toegepast voor een betere anonimiteit. Dit gaat gepaard met de onvermijdelijke negatieve kant van schendingen van het auteursrecht en het delen van illegale inhoud. In een technisch perspectief is de technologie fascinerend om te bestuderen.
P2P is goedkoop en zelfvoldoende door de gemeenschap van gebruikers
Hoe Limewire/Gnutella werkt
Het fascinerende aan limewire is dat gebruikers kunnen zoeken naar bestanden op de computers van anderen en deze gemakkelijk kunnen downloaden. Laten we zoeken naar Ubuntu distributie in Limewire. Merk op dat de nieuwste versie van Limewire uWire heet.
We krijgen 3 zoekresultaten. Voor elk resultaat wordt het aantal bestanden getoond. Voor elk bestand kunnen we het aantal directe downloadbronnen zien. Dit is het aantal gebruikers dat dit bestand heeft.
Het zoeken in Limewire (dat gebruik maakt van Gnutella) gebeurt als volgt, uiteraard in zeer eenvoudige stappen.
- Op het moment dat een gebruiker de software opstart, moet deze een verbinding maken met ten minste één ander knooppunt. Dergelijke nodes zijn ofwel gebundeld met de software ofwel gevonden via diverse andere kanalen. Vergelijkbaar met hoe trackers worden ontdekt in BitTorrent. In latere versies gebeurt dit via een bootstrap server die helpt bij de initiële verbinding. Mogelijke wettelijke verplichtingen worden vermeden door het gebruik te beperken tot node discover in plaats van file discover (een groot probleem in het begin van 2000 dat veel file-sharing systemen de das omdeed).
- De client verbindt één zo’n node uit de vorige stap, gevolgd door een verbinding met verschillende andere nodes.
- Wanneer een zoekopdracht wordt geïnitieerd, zal de client deze doorsturen naar de verbonden nodes. Vervolgens sturen de verbonden knooppunten het door naar hun verbonden knooppunten.
- Het aantal hops is beperkt tot 4 (bron). Dit helpt om te veel congestie te voorkomen.
Het netwerk bestaat uit Ultrapeers, die betere en consistente verbindingen hebben. Dergelijke nodes onderhouden ook verbindingen met enkele andere Ultrapeers. In het verleden werden de resultaten voor zoekopdrachten via dezelfde route verstuurd. Nu worden de antwoorden echter rechtstreeks via Ultrapeers over UDP verstuurd. De klassieke architectuur van de Gnutella zoekactie is hieronder afgebeeld.
De toekomst van P2P-bestanden delen
Het delen van bestanden via P2P is min of meer in verval geraakt door de juridische implicaties en het gebrek aan openbare IP-adressen. Dit zou echter kunnen veranderen met de komst van IPV6 en de vele wearables.
Hoewel P2P populairder is dan ooit, gezien de hoeveelheid videoconferencing die we doen. P2P bestanden delen is nu heel gewoon met de komst van Personal Cloud apparaten. Een groot knelpunt dat bestond voor het gebruik van P2P communicatie voor het delen van persoonlijke bestanden was de beperkte bandbreedte. In dat geval was een parallelle download van chunks van meerdere peers mogelijk. Nu kan hetzelfde worden gedaan in een enkele hoge bandbreedte verbinding. Dit is een screenshot van de instellingenpagina van mijn persoonlijke cloud-apparaat.
In dit geval ben ik van mijn kantoor naar huis verbonden via een rechtstreekse verbinding. Alleen het verschil is dat we niet letterlijk gelijken zijn. Maar de technologie lijkt erg op die van BitTorrent. Het port forwarding mechanisme wordt geïnitieerd via servers bij Western Digital, vergelijkbaar met dat van een Torrent Tracker of in Gnutella een bootstrap server. Een tracker die cloud-apparaten traceert die online zijn.
Het grote voordeel is dat ik, zolang mijn thuisverbinding goed is, direct toegang tot mijn gegevens heb zonder dat ik naar een service als Google hoef te uploaden. Dat is ongeveer hetzelfde als wat Torrent doet. Deel je bestand zonder een cloud.
Maar in het geval van mijn Cloud Device hebben ze verschillende back-up oplossingen om een betere betrouwbaarheid te hebben. Soms kunnen directe verbindingen niet worden geïnitieerd over firewalls (zelden) en sommige oude NATs (grote boosdoener).
P2P File sharing of Limewire is niet dood!
Niemand van de protocollen was illegaal. Alleen het gebruik ervan was illegaal! Op dit moment worden ze beter en persoonlijker gebruikt, gezien de verbeteringen van de netwerkbandbreedtes. P2P computing wordt ook gebruikt in CDN’s (Content Delivery Networks) voor synchronisatie van inhoud. Soms wordt het gebruikt in cloud computing voor verschillende gevallen, zoals het delen van gegevens en het maken van back-ups.
P2P computing is de opvolger voor P2P sharing, waarbij rekenkracht wordt gedeeld. Crowdsourced data analytics, zoals kankeronderzoek, is zo’n voorbeeld. Inactieve mobiele apparaten nemen deel aan enorme gedistribueerde computertaken door gegevens tussen hen te delen voor een betere toekomst van de mensheid.
Een interessant artikel om hier te lezen;
Ik hoop dat je dit artikel met plezier hebt gelezen. Nog een fijne dag! Proost!