Distributed Computing: Pc's staan samen sterk

Wanneer de rekenkracht van een gewone computer niet toereikend is en een supercomputer niet binnen handbereik ligt, kan distributed computing wonderen verrichten. Wij zetten de mogelijkheden op een rij.

Waarom investeren in een peperdure, energieverslindende supercomputer als je ook gebruik kunt maken van de ongebruikte rekenkracht van thuiscomputers? Dat is het idee achter distributed computing, dat zijn opkomst in de late jaren ‘90 had. In eerste instantie om gezamenlijk priemgetallen te berekenen (GIMPS, 1996), daarna om in het algemeen te rekenen (distributed.net, 1997) en - wellicht het bekendste voorbeeld – om samen te zoeken naar buitenaards leven met SETI@home (1999).

SETI probeert de gegevens die opgenomen zijn met een radiotelescoop te analyseren en besloot daar in 1999 op een creatieve manier rekenkracht voor vrij te maken. Wie SETI@home installeert op een met internet verbonden machine, doneert ongebruikte rekenkracht aan het project. Dit project gaf ‘samen rekenen’ bekendheid bij het grote publiek. Volgens de laatste cijfers hebben inmiddels al 5,2 miljoen mensen met SETI meegerekend. In de oorspronkelijke versie werd de grote homp data van SETI gesplitst in kleinere pakketten. Die gingen naar de verschillende thuiscomputers.

Was een computer klaar met rekenen, dan ging het resultaat terug naar SETI en kreeg die gebruiker een punt. Al snel ontstond er een competitie om zoveel mogelijk punten te verzamelen. Dat had een ongewenst gevolg: valsspelers. Sommige deelnemers vervalsten de gegevens om zo sneller aan punten te komen. Om SETI beter te beveiligen tegen dit soort activiteiten, en om een open platform voor vergelijkbare projecten op te zetten, is het Boinc-platform (Berkeley Open Infrastructure for Network Computing) ontwikkeld. Qua rekenkracht staat Boinc op de vierde plaats wereldwijd; het moet drie supercomputers voor zich dulden.

Distributed Computing

© PXimport

Blockchain

Binnen de huidige ontwikkeling van distributed computing speelt blockchain een hoofdrol. Hoewel het oorspronkelijk voor Bitcoin ontwikkeld is, levert deze technologie een oplossing voor het basisprobleem van een systeem als SETI@home. Blockchain zet namelijk voor separate datapakketten een keten van eigendom en verantwoording op. Per datapakket is duidelijk waar het vandaan komt, naar wie het gegaan is en hoe het weer bij het centrale systeem is teruggekomen.

Omdat blockchain voor een robuuste vastlegging en beveiliging van deze keten zorgt, wordt het zeer lastig om met de gegevens te rommelen. Dat maakt decentraal verwerkte data betrouwbaarder. Ook is het mogelijk om efficiënter pakketten over het netwerk te verdelen. Bij inzet van de oorspronkelijke SETI@home-applicatie moesten datapakketten bij meerdere computers uitgezet worden. Een resultaat was pas centraal te accepteren als verschillende bronnen met vergelijkbare antwoorden kwamen.

Gebruik van blockchain maakt het eenvoudiger om bronnen als betrouwbaar te markeren, waardoor met minder identieke pakketten gewerkt kan worden. Ook kan bij misbruik sneller bepaald worden wie verantwoordelijk was voor foutieve data, en is de invoer van die bron sneller uit te sluiten.

dApps: decentralized applications

Verantwoording vastleggen in de dataketen is mooi, maar er moet ook met gegevens gewerkt worden. De term dApp staat voor ‘decentralized applications’ en doelt op applicaties die gemaakt zijn om verspreid over een veelheid van computers gezamenlijk tot resultaat te komen. De ontwikkeling van dApps is nog in volle gang.

Eén van de grotere uitdagingen binnen deze systemen is dat er een prikkel nodig is die voorkomt dat iemand zonder tegenprestatie ongelimiteerd gebruik van een gedistribueerd netwerk maakt. Een oplossing voor deze uitdaging wordt door IOTA (Internet of Things Application) ontwikkeld. Onderdeel van dit project is een microtransactie-systeem dat moet zorgen dat diegenen die gebruik maken van de rekenkracht van een netwerk er ook iets aan terug schenken. We zien dit ook bij vele andere projecten terug.

Cloudopslag, AI en het internet-of-things

Opslag van gegevens in de cloud is een fascinerend langetermijndoel dat met distributed computing te realiseren is. Door gegevens vast te houden op een betrouwbaar decentraal netwerk, kan met Dropbox, Google, Microsoft, Amazon en aanverwante diensten geconcurreerd worden. Het zou met het huidige aanbod van data in de clouddiensten doen wat Napster en daarna BitTorrent met de muziek- en filmindustrie gedaan hebben. Voor de veiligheid van bestandsopslag op een decentraal netwerk wordt blockchain ingezet.

Distributed Computing

© PXimport

Voor het ontwikkelen van artificiële intelligentie (AI) kan een gedistribueerd netwerk ingezet worden. Zogenoemde ‘distributed artificial intelligence’ verdeelt de berekeningen om een groot probleem op te lossen in kleine subonderdelen (agents) en gebruikt een netwerk van computers om tot uitkomsten te komen. Op basis van kansberekening wordt de meest waarschijnlijke uitkomst van een groep agents tot de juiste verkozen. Hoe groter het gedistribueerde netwerk waarmee gewerkt wordt, hoe sneller uitkomsten te bepalen zijn.

Onder het internet of things vallen alle apparaten die met een eigen ip-adres aan internet gekoppeld zijn. Meestal gaat het om sensoren en programmeerbare logische circuits (PLC) waarmee in productie-omgevingen of magazijnen gewerkt wordt. Om de gemeten gegevens optimaal te gebruiken, is een centrale aansturing nodig. Ook hier gaat het om een vorm van distributed computing. Het zal daarom niemand verbazen dat IoT en blockchain vaak in één adem genoemd worden.

Aan de slag

Ondanks het experimentele gehalte van de meeste distributed-computing-diensten kun je op verschillende niveaus en bij verschillende projecten al inhaken, testen of zelfs meedoen. Het zal niemand verbazen dat dit nog niet het juiste moment is om je kritieke gegevens aan een door blockchain bij elkaar gehouden experimentele dienst toe te vertrouwen.

Sterker nog, de meeste projecten staan nog zozeer in de kinderschoenen dat ze niet klaar zijn voor een dag-tot-dag-ervaring. Kortom: nog niet erg praktisch, wel een boeiende glimp van de toekomst.

Deel dit artikel
Voeg toe aan favorieten