Berkeley Open Infrastructure for Network Computing

Berkeley Open Infrastructure for Network Computing forkortet BOINC, er et generelt system til distribuerede beregninger over Internettet. Systemet sørger for kommunikation, opsamling af data og pointgivning. Deltagere i et BOINC-projekt får point alt efter hvor meget computertid deltagerens computere leverer.

Flere forskellige videnskabelige projekter bruger BOINC, men deltagerne behøver kun at installere BOINC en gang. En computer kan være tilmeldt flere projekter på en gang, og brugeren kan bestemme, hvor meget tid, der bruges på hvert projekt.

Klientprogrammet 
Klientprogrammet findes til mange platforme. Til enkelte platforme er der lavet et grafisk program, men mange platforme har et tekstbaseret klientprogram. De filer, der tilhører et bestemt projekt, bliver automastisk installeret og opdateret. 

Selvom BOINC kan installeres på mange forskellige platforme, er det ikke givet, at et projekt har et klientmodul til en bestemt platform. Modulerne er blevet oversat til en bestemt maskintype og et bestemt styresystem, og de vil ofte kun være lavet til et begrænset antal platforme. Det betyder, at hvis du har en windows-maskine er der stor sansynlighed for, at der er en brugbar klient, mens det ikke er sikkert at din Sun Ultra SPARC kan være med.

Den tekstbaserede klient har disse funktioner:

 Tilføj eller fjern et projekt
 Vis tilmeldte projekter
 Genstart et projekt
 Opdater indstillinger fra serveren. Alle bruger indstillinger gemmes på projekternes servere, og de generelle indstillinger kopieres automatisk ud til alle tilmeldte projekter.
 Send resultater med det samme
 Lav en benchmark, så klientprogrammet kan forlange det rigtige antal points.
 Aktiver/deaktiver RPC, der gør det muligt for et andet program at styre klienten.

Fra version 4.2x følger et tekstbaseret program med, som man kan bruge til at ændre indstillinger med uden at beregningerne afbrydes.

Serversiden 
Kommunikationen mellem deltageren og projekterne foregår via projekternes hjemmesider. Deltageren melder sig til, og registrerer præferencer via hjemmesiden. Klientprogrammet kommunikerer også med den server, hvor hjemmesiden er placeret. I kommentarer i hjemmesiden er der koder, der fortæller klientprogrammet, hvor projektets dataservere er placerede. Klientprogrammet kan så hente opgaver hos disse servere og sende resultater tilbage. Denne kommunikation foregår via HTTP, og på serversiden er det almindelige webservere, der besvarer forespørgslerne.

Ud over webservere er der servere, der tager sig af fordelingen af opgaver, og projektspecifikke servere, der behandler og verificerer resultaterne. BOINC bruger en database med oplysninger om deltagerne, og der bruges en eller flere databaser med projektets egne data. Klientprogrammet kommunikerer aldrig direkte med en projektspecifik server. Alle servere kan dubleres, for at sikre mod udfald og for at klare store belastninger.

Aktive projekter 
I juli 2012 er der mere end 75 aktive projekter. De fem mest populære projekter er:

 SETI@home – Astronomisk forskning: Søger efter radiosignaler fra udenjordsk liv
 Rosetta@Home – Medicinsk forskning
 World Community Grid – Medicinsk forskning, agrikultur og vedvarende energi
 Einstein@Home – Astronomisk forskning: Søgning efter pulsar
 Climate Prediction – Klimaforskning

Eksterne henvisninger 

 Hjemmesiden for BOINC
 Hjemmeside for BOINC Denmark 

Videnskabeligt software
Videnskabsprogrammer til Linux
Klyngecomputere