Hva er noder?
Hva er noder?
Hjem
Artikler
Hva er noder?

Hva er noder?

Nybegynner
Publisert Nov 29, 2018Oppdatert Nov 16, 2022
5m

Definisjonen av en node kan variere med konteksten. Når det gjelder data- eller telekommunikasjonsnettverk, kan noder fungere enten som et omfordelingspunkt eller som et endepunkt for kommunikasjon. Vanligvis består en node av en fysisk nettverksenhet, men det er noen tilfeller der det brukes virtuelle noder.

En nettverksnode er et punkt der en melding kan opprettes, mottas eller overføres. Her skal vi snakke om de forskjellige typene Bitcoin-noder: fulle noder, supernoder, miner-noder og SPV-klienter.


Bitcoin-noder

I konteksten blokkjede – som er laget som distribuerte systemer – er det nettverket av datanoder som gjør det mulig for Bitcoin å bli brukt som en desentralisert peer-to-peer (P2P) digital valuta. Altså er den designet for å ikke kunne sensureres, og den krever heller ikke en mellommann for transaksjoner mellom brukere (uansett hvor langt fra hverandre de er i verden).

Derfor er blokkjedenoder ansvarlige for å fungere som et kommunikasjonspunkt som kan utføre forskjellige funksjoner. Alle datamaskiner eller enheter som kobles til Bitcoin-grensesnittet, kan betraktes som en node fordi de på en eller annen måte kommuniserer med hverandre. Disse nodene kan også overføre informasjon om transaksjoner og blokker innenfor det distribuerte nettverket av datamaskiner ved å bruke Bitcoins peer-to-peer-protokoll. Men hver datamaskinnode defineres i henhold til nodens bestemte funksjoner, så det finnes forskjellige typer Bitcoin-noder.

 

Fulle noder

Fulle noder er de som virkelig støtter og opprettholder sikkerheten til Bitcoin, og de er uunnværlige for nettverket. Disse nodene kan også omtales som fullvaliderende noder når de deltar i prosessen med å verifisere transaksjoner og blokker opp mot systemets konsensusregler. Fulle noder kan også legge til nye transaksjoner og blokker på blokkjeden. 

Vanligvis laster en full node ned en kopi av Bitcoin-blokkjeden med hver eneste blokk og transaksjon, men dette er ikke et krav for å bli betraktet som en full node (en redusert kopi av blokkjeden kan også brukes).

En full Bitcoin-node kan etableres gjennom implementering av forskjellig programvare, men den mest brukte og populære er Bitcoin Core. Her er minimumskravene for å kjøre en full node med Bitcoin Core:

  • Stasjonær eller bærbar PC med en nyere versjon av Windows, Mac OS X eller Linux.

  • 200 GB ledig diskplass.

  • 2 GB minne (RAM).

  • Rask internettforbindelse med opplastingshastighet på minst 50 kB/s.

  • En tilkobling uten forbruksgrense, eller en tilkobling med høy opplastingsgrense. Aktive fulle noder kan oppnå eller overstige 200 GB opplasting per måned og 20 GB nedlasting per måned. Du må også laste ned ca. 200 GB når du første gang starter den fulle noden.

  • En full node bør kjøre i minst 6 timer om dagen. Det er enda bedre hvis du kjører den kontinuerlig (24/7).

Mange frivillige organisasjoner og brukere kjører fulle Bitcoin-noder som en måte å hjelpe Bitcoin-økosystemet på. Per 2018 er det omtrent 9700 offentlige noder som kjører på Bitcoin-nettverket. Vær oppmerksom på at dette tallet bare inkluderer de offentlige nodene, altså de lyttende Bitcoin-nodene som er synlige og tilgjengelige (derfor lyttende noder). 

I tillegg til de offentlige nodene, finnes det mange skjulte noder som ikke er synlige (ikke-lyttende noder). Disse nodene opererer vanligvis bak en brannmur eller gjennom skjulte protokoller som Tor, eller de ble rett og slett ikke konfigurert til å lytte etter tilkoblinger.


Lyttende noder (supernoder)

Egentlig er en lyttende node eller supernode en full node som er offentlig synlig. Den kommuniserer og gir informasjon til alle andre noder som bestemmer seg for å etablere en forbindelse med den. Så en supernode er rett og slett et omfordelingspunkt som kan fungere både som en datakilde og som en kommunikasjonsbro. 

En pålitelig supernode kjører vanligvis døgnet rundt og har flere etablerte forbindelser der den overfører blokkjedehistorikken og transaksjonsdataene til flere noder rundt om i verden. Derfor krever en supernode sannsynligvis mer beregningskraft og en bedre internettforbindelse sammenlignet med en full node som er skjult.


Miner-noder

For å kunne drive mining av Bitcoin i det nåværende konkurranseutsatte scenarioet, må man investere i spesialisert maskinvare og programmer for mining. Disse mining-programmene (programvare) er ikke direkte relatert til Bitcoin Core og kjøres parallelt for å prøve å mine Bitcoin-blokker. En miner kan velge å jobbe alene (solo-miner) eller i en gruppe (pool-miner). 

Mens solo-minernes fulle noder bruker sin egen kopi av blokkjeden, jobber pool-minere sammen, og hver av dem bidrar med sine egne beregningsressurser (hash-kraft). I en mining-pool er det bare administratoren av poolen som må kjøre en full node – som kan omtales som en pool-miners fulle node.


Lette klienter eller SPV-klienter

Lette klienter, også kjent som SPV-klienter (Simplified Payment Verification / forenklet betalingsverifisering), er de som bruker Bitcoin-nettverket, men som egentlig ikke fungerer som en full node. Altså bidrar ikke SPV-klienter til nettverkets sikkerhet, for de oppbevarer ikke en kopi av blokkjeden og deltar ikke i prosessen med å verifisere og validere transaksjoner. 

Kort sagt er SPV en metode der en bruker kan sjekke om noen transaksjoner ble inkludert i en blokk eller ikke, uten å måtte laste ned alle blokkdataene. Dermed stoler SPV-klientene på informasjonen som kommer fra de fulle nodene (supernodene). De lette klientene fungerer som kommunikasjonsendepunkter og brukes av mange kryptolommebøker.


Klient- kontra mining-noder

Det er viktig å merke seg at det å kjøre en full node ikke er det samme som å kjøre en full mining-node. Minere må investere i dyr maskinvare og programvare for mining, men hvem som helst kan kjøre en fullvaliderende node. 

Før en miner prøver å mine en blokk, må mineren samle ventende transaksjoner som tidligere ble akseptert som gyldige av de fulle nodene. Deretter oppretter mineren en kandidatblokk (med en gruppe av transaksjoner) og prøver å mine blokken. Hvis mineren klarer å finne en gyldig løsning på kandidatblokken, kringkastes den til nettverket slik at andre fulle noder kan verifisere at blokken er gyldig. Altså blir konsensusreglene bestemt og sikret av det distribuerte nettverket av validerende noder og ikke av minerne.


Avsluttende tanker

Bitcoin-noder kommuniserer med hverandre gjennom Bitcoin P2P-nettverksprotokollen, og på den måten garanterer de systemets integritet. En node som oppfører seg dårlig eller prøver å spre feil informasjon, blir raskt gjenkjent av de ærlige nodene og koblet fra nettverket.

Selv om det ikke gir noen økonomisk belønning å kjøre en fullvaliderende node, anbefales det på det sterkeste fordi det sørger for tillit, sikkerhet og personvern til brukerne. Fulle noder passer på at reglene blir fulgt. De beskytter blokkjeden mot angrep og svindel (for eksempel dobbeltforbruk). I tillegg trenger ikke en full node å stole på andre, og den gir brukeren full kontroll over pengene sine.