Slik virker Internett

Hva er egentlig Internett og hvordan fungerer det?

Ordet "Internett" er for mange et abstrakt begrep. Vi tar deg med under panseret for å se hva som virkelig skjer når du skriver en nettadresse og trykker "Enter".

KART OVER INTERNETT: Her er det laget et kart over de største nettverkene på Internett. Hver lille strek slutter i et stort internett. Det er unødvendig å si hvor usannsynlig stort Internett faktisk er.
KART OVER INTERNETT: Her er det laget et kart over de største nettverkene på Internett. Hver lille strek slutter i et stort internett. Det er unødvendig å si hvor usannsynlig stort Internett faktisk er. Foto: Matt Britt (http://en.wikipedia.org/wiki/Image:Internet_map_1024.jpg)
Først publisert Sist oppdatert
NORGE FØRST UT: Yngvar Lundh jobbet på Forsvarets forskningsinstitutt på Kjeller, og i 1972 var han ansvarlig for å bringe Internett til Norge. Det skulle ta åtte år før neste land i Europe ble tilknyttet.
NORGE FØRST UT: Yngvar Lundh jobbet på Forsvarets forskningsinstitutt på Kjeller, og i 1972 var han ansvarlig for å bringe Internett til Norge. Det skulle ta åtte år før neste land i Europe ble tilknyttet. Foto: Gratis

Man ser ofte Internett som synonymt med «World Wide Web». Dette er imidlertid feil. Internett er navnet på det fysiske nettverket med kabler og datamaskiner, mens World Wide Web er en tjeneste som kjører "oppe på" Internett for å vise nettsider med tekst, lyd og bilder. Man kan kjøre mange andre tjenester som bruker Internett som infrastruktur, og eksempler på dette er FTP, bittorrent eller e-post. Men, la oss først se litt på hva Internett egentlig er.

Litt historie

Internett stammer fra helt tilbake til starten av 60-tallet. Man regner «ARPANET» som forgjengeren til Internett, og dermed er dette «starten» på Internett slik vi kjenner det i dag.

ARPA eller «Advanced Research Projects Agency» ble opprettet i 1958 og hadde ansvaret for å utvikle teknologi til det amerikanske forsvaret. Dette var midt i den kalde krigen og ARPA satte seg tidlig et mål om å lage et nettverk for å knytte datamaskiner sammen. Dette nettverket skulle være så robust at hvert punkt i nettet ikke var kritisk for nettverket i sin helhet. Med andre ord skulle nettverket fortsette å fungere, selv om et punkt ble tatt ut.

Denne drømmen ble realisert i 1964 da «packet switching» ble introdusert. Vi skal se nærmere på packet switching litt senere, men det viktige er at det bidro til å gjøre nettverket mer robust enn noe tidligere nett. I 1969 åpnet ARPA for andre aktører i nettet sitt og ARPANET var født. Det tok tre år før Europa skulle tilknyttes ARPANET. Norge var faktisk først ut, og Forsvarets forskningsinstitutt på Kjeller, med Yngvar Lundh i spissen, fikk første datamaskin på ARPANET i 1972. Neste land som fikk ARPANET i Europa, var Vest-Tyskland i 1980, så det er ikke uten grunn vi ser Yngvar Lundh som en pionér på europeisk Internett.

Internett blir født

FANT OPP WWW: Tim Berners-Lee regnes som mannen som fant opp «World Wide Web». I 1989 satt han opp verdens første webserver på forskningsinstituttet CERN. To år senere ble det presentert for verden og Internett eksploderte.
FANT OPP WWW: Tim Berners-Lee regnes som mannen som fant opp «World Wide Web». I 1989 satt han opp verdens første webserver på forskningsinstituttet CERN. To år senere ble det presentert for verden og Internett eksploderte. Foto: Gratis

ARPANET viste seg å være en stor suksess og andre tilsvarende nett begynte å sprette fram. I Norge var universiteter og høyskoler tidlig ute med «Uninett». Dette ble primært brukt til å utveksle elektronisk post og det var ikke før i 1991, da Tim Berners-Lee fra forskningsinstituttet CERN presenterte sitt «World Wide Web», at vi så et globalt nettverk, kalt Internett, vokse fram. Tim Berners-Lee lagde verdens første server med en nettside. Nettet kunne nå ikke bare brukes til å sende meldinger, men også til å presentere og lese informasjon.

I 1994 slår Uninett seg nå sammen med flere små nettverk, og etter hvert større internasjonale nettverk, med blant annet Telenor i ryggen. Slik er det Internett vi kjenner det i dag blitt tilgjengelig for folk flest. Bruken og størrelsen på Internett eksploderte og vokste - og vokser - fortere enn noen turte å drømme om. Det vokser faktisk så fort at vi begynner å få problemer med størrelsen allerede nå, snaue 15 år etter. Det begynner nemlig å bli tomt for unike adresser i nettet.

Mye av skylden for den eksploderende veksten legger vi på Tim Berners-Lee og hans nettsider. Selv i dag er det dette vi forbinder med Internett og vi bruker fortsatt hans originale teknologi for å lage nettsider.

Jeg kom uanmeldt hjem og hørte stemmer fra badet. Den ene var min manns
Pluss ikon
Jeg kom uanmeldt hjem og hørte stemmer fra badet. Den ene var min manns

WWW blir født

Så, hva er Internett? Internett lar din datamaskin koble seg til millioner av andre datamaskiner. Noen av disse datamaskinene er såkalte servere og kan tilby for eksempel nettsider man kan besøke. Internett er kort sagt et nettverk av kabler som kobler sammen datamaskiner og lar dem snakke sammen. Man har blitt enige om «språk» eller «protokoller» som det heter, som definerer hva, hvordan og på hvilken måte maskinene skal snakke sammen.

Den protokollen man oftest møter til daglig er http eller «HyperText Transfer Protocol». Denne er så å si slik som Tim Berners-Lee definerte den for snart 20 år siden. Når man er på en nettside, ser man at det står http i adressefeltet. For eksempel http://www.klikk.no. Det forteller nettleseren at vi skal se nettsiden www.klikk.no og at vi bruker «språket» http. Da http er så vanlig, er det ikke noe en vanlig nettsurfer trenger å forholde seg til. Det blir fylt inn automatisk av nettleseren, men nå vet du i hvert fall hva det betyr.

Da disse protokollene er offentlige og Internett er tilgjengelig for alle, har alle muligheter til å lese en nettside, men kanskje enda viktigere, alle har muligheten til å opprette en nettside og gjøre den tilgjengelig for resten av verden.

IP-adresser

Når man kobler en PC på Internett, er det første som skjer at den får en såkalt IP-adresse. Dette er en unik adresse som identifiserer nettopp denne maskinen på internett. IP-adresser skrives som fire tall, 0 til 255, med punktum imellom. Altså fra 0.0.0.0 til 255.255.255.255. Når man så skal inn på en annen datamaskin som er koblet til Internett, er det bare å skrive denne IP-adressen i nettleseren. Tilbyr datamaskinen en nettside, vil den vises. www.vg.no har for eksempel IP-adresse 193.69.165.21. Prøv å skrive dette inn i nettleserens adressefelt og man kommer på nettsiden til VG.

HVA BETYR ADRESSEN: En nettadresse forteller nettleseren hvor den skal gå, hva den er ute etter og på hvilket format det er.
HVA BETYR ADRESSEN: En nettadresse forteller nettleseren hvor den skal gå, hva den er ute etter og på hvilket format det er. Foto: Gratis

Man fant tidlig ut at IP-adresser er vanskelig å huske for folk flest. Her kommer en annen smart oppfinnelse inn. Man har lagd noe som heter navnetjenere eller «DNS servere». Dette er datamaskiner som oversetter en nettadresse til en IP-adresse. DNS-serverne har egentlig bare en lang liste med alle verdens nettsider med hver sin IP-adresse tilknyttet. Når man så skriver www.vg.no, skjønner maskinen umiddelbart at dette ikke er en IP-adresse, men en menneskeskrevet nettadresse. Den går nå bak kulissene og slår opp adressen og finner hvilken IP-adresse den skal gå til.

DNS-serverne er det ISP-ene som har ansvaret for. En ISP eller en «Internet Service Provider» er firmaene som tilbyr internett til sluttbruker. I Norge er Telenor, NextGenTel og Tele2 eksempler på ISP-er. Hver ISP har typisk flere DNS-servere hver seg, i tilfelle en skulle krasje eller pågangen blir for stor.

TCP/IP

Nå er vi på mikroskopisk nivå når det gjelder Internett. Nemlig TCP (Transfer Control Protocol) over IP (Internet Protocol). Dette er noe man ikke trenger å forholde seg til daglig, men er man under panseret, så er man under panseret.

Når man i nettleseren skriver inn en adresse og trykker Enter, vil en nettside begynne å vises på skjermen. Dette er data i form av tekst, bilder kanskje til og med video og lyd. Man kan også laste ned film eller programmer på nettet. Hvordan flytter man så denne dataen over tusenvis av kilometer uten at noe blir tapt eller feil?

SNAKK MED DNS-SERVEREN:: Ved å trykke «windowsknapp + r» og skrive «cmd» kommer man inn i kommandolinjen til Windows. Her kan man skrive «nslookup nettadresse» for å se hvilken IP-adresse som skjuler seg bak.
SNAKK MED DNS-SERVEREN:: Ved å trykke «windowsknapp + r» og skrive «cmd» kommer man inn i kommandolinjen til Windows. Her kan man skrive «nslookup nettadresse» for å se hvilken IP-adresse som skjuler seg bak. Foto: Gratis

Laster man ned et program på Internett, kan dette programmet bestå av milliarder av 1-er og 0-er. Er bare én av disse feil, vil i verste fall programmet ikke fungere. Det stiller dermed ekstreme krav til at ting kommer korrekt fram. Det skal i tillegg være raskt og robust. Hvordan løser man så dette?

Måten det gjøres på, er å dele opp programmet i uavhengige deler, eller «pakker» som de kalles. Reglene for disse pakkene er definert fra protokollen TCP. En TCP-pakke består av en kropp og et hode. Kroppen inneholder en bit data, mens i hodet står det blant annet hvor pakken kommer fra, hvor den skal, og aller viktigst en «checksum». En checksum er en kontrollsum som blir regnet ut ifra gitte felter i pakken. Maskinen som sender pakken regner ut checksummen og legger den med i hodet. Når mottagermaskinen så får pakken, ser den på innholdet og regner ut en egen checksum. Er checksummene like, betyr det at all data kom riktig fram, hvis ikke, droppes pakken og spørres om på nytt. På den måten sikrer man hele tiden å få riktig data.

TCP jobber mot IP-adresser og man slår ofte sammen disse teknologiene og kaller kommunikasjonen TCP/IP. TCP/IP er mye av grunnen til at nettet er så robust og raskt som det er i dag. Dette fordi den tillater tidligere nevnte «packet switching».

Packet switching og rutere

Det som gjør Internett så banebrytende robust, er at det faktisk er et nett og ikke en ring, linje eller stjerne som var brukt tidligere. Det er med andre ord ekstremt mange veier til målet, og om et knutepunkt skulle bryte sammen, går man bare veien rundt.

Når en server så skal sende fra seg TCP-pakker til en som vil se en nettside, har disse pakkene mange veier å gå. Maskinene, eller knutepunktene, som holder kontroll på disse veiene, kalles for «rutere». Pakken forlater serveren og går til nærmeste ruter. Denne ruteren mottar pakken og ser i hodet hvor den skal. Den ser så på hva som er raskeste vei videre og sender den fra seg til neste ruter som gjentar prosessen. Pakken hopper fra ruter til ruter helt til den når mottagermaskinen.

Hvilken vei som er raskest, forandrer seg konstant etter hvor mye trafikk som er på de forskjellige linjene og ruterne er hele tiden klar over hvor raskeste vei til målet er. Første pakke kan dermed være innom fire rutere, mens neste kan være innom 20, alt ettersom hva som er raskest og tilgjengelig der og da. Dette kalles «packet switching» og gjør at man hele tiden utnytter nettet der det er kapasitet tilgjengelig. Packet switching er grunnen til at Internett fungerer såpass knirkefritt som det gjør, og at pakker finner nye veier så fort en ruter skulle krasje.

DETTE ER EN PAKKE: En TCP-pakke består av en kropp som er selve innholdet og et hode som forteller hvor og hva pakken inneholder. Se på kroppen som et brev og hodet som konvolutten. Ruterne er da i så fall postvesenet.
DETTE ER EN PAKKE: En TCP-pakke består av en kropp som er selve innholdet og et hode som forteller hvor og hva pakken inneholder. Se på kroppen som et brev og hodet som konvolutten. Ruterne er da i så fall postvesenet. Foto: Gratis

Porter

MANGE VEIER TIL MÅLET: Hvis et knutepunkt skulle gå ned, er det fortsatt mange veier fra Oslo til en server i Lisboa. Den raskeste er ikke nødvendigvis den korteste, men den minst trafikkerte.
MANGE VEIER TIL MÅLET: Hvis et knutepunkt skulle gå ned, er det fortsatt mange veier fra Oslo til en server i Lisboa. Den raskeste er ikke nødvendigvis den korteste, men den minst trafikkerte. Foto: Gratis

En siste faktor i kommunikasjon på Internett er såkalte porter. Disse brukes for å identifisere maskiner eller programmer som ikke en IP-adresse klarer. Man kan kalle en port en utvidelse av en IP-adresse. Hvis IP-adressen er husnummeret, er porten navnet på hvem som skal ha brevet.

En datamaskin kan kort sagt kun ha én IP-adresse. Men, si at man surfer på to nettsider samtidig. Eller laster ned et program, samtidig som man surfer. Hvordan skiller man da på innkommende TCP-pakker? Her kommer porter inn. Hvert program, eller hver tilkobling, tar seg et portnummer som identifiserer akkurat denne tilkoblingen og gjør at man kan skille på innkommende pakker. Det samme gjelder internt i et nettverk. Har du flere datamaskiner på nettverket hjemme, vil du fortsatt kun ha én IP-adresse utad. Derfor har du en ruter du kobler ADSL-linjen inn i. Den oversetter den ene eksterne IP-adressen til alle interne IP-adresser du måtte ha. Dette skjer ved hjelp av portnummer som hver maskin hjemme får tildelt.

Du går inn på en nettside

OK, så hva skjer bak kulissene fra man skriver inn en nettadresse i nettleseren og trykker Enter? Det første som skjer er at datamaskinen du sitter på snakker med DNS-serveren du har fått tildelt. Den oversetter adressen du har skrevet til en IP-adresse. Dette er adressen til datamaskinen som står oppført som «eier» av nettsiden. Det kan være en privat datamaskin eller en enorm dedikert server.

SE VEIEN TIL MÅLET: Åpne kommandolinjen i Windows og skriv «tracert adresse» for å se hvor mange rutere pakkene er innom på vei til nettstedet. Fra oss til klikk.no er det 10 hopp.
SE VEIEN TIL MÅLET: Åpne kommandolinjen i Windows og skriv «tracert adresse» for å se hvor mange rutere pakkene er innom på vei til nettstedet. Fra oss til klikk.no er det 10 hopp. Foto: Gratis

Når du nå har IP-adressen til serveren som sitter på nettsiden, er det første som skjer en såkalt handshake. Dette er tre TCP-pakker som oppretter forbindelsen mellom din maskin og serveren. Din maskin sender en hei-pakke, eller en «SYN» som det heter. Serveren svarer med «SYN-ACK» og du svarer til slutt «ACK». Tilkobling er nå opprettet og man kan begynne å spørre etter nettsiden.

PROFFRUTER: I de store knutepunktene på Internett er det gjerne litt mer avansert enn på en hjemmeruter, men prinsippet er det samme.
PROFFRUTER: I de store knutepunktene på Internett er det gjerne litt mer avansert enn på en hjemmeruter, men prinsippet er det samme. Foto: Gratis
HJEMMERUTER: Dette er gjerne første ruter en hjemme-PC møter. Det er en vanlig ADSL-ruter. Den tar imot pakker fra det interne nettet og sender det til første eksterne ruter.
HJEMMERUTER: Dette er gjerne første ruter en hjemme-PC møter. Det er en vanlig ADSL-ruter. Den tar imot pakker fra det interne nettet og sender det til første eksterne ruter. Foto: Gratis

Neste pakke som blir sendt er en pakke som spør serveren etter en spesiell side. Serveren svarer først med en pakke som forteller om siden finnes og er tilgjengelig. Er den det, vil serveren dele opp hele siden i små pakker og sende dem en etter en.

Mottagermaskinen mottar en og en pakke og sender tilbake en kvittering på hver pakke som er mottatt korrekt. Når så alle pakker er mottatt, sier hver maskin takk for seg ved hjelp av to ha-det-bra-pakker hver seg. Nettleseren din setter så sammen alle pakkene til et dokument som vises i nettleseren.

HANDSHAKE: I det man spør etter en nettside foregår det en håndhilsing mellom din maskin og server. Dette gjøres ved tre TCP-pakker før serveren begynner å levere ut nettsiden.
HANDSHAKE: I det man spør etter en nettside foregår det en håndhilsing mellom din maskin og server. Dette gjøres ved tre TCP-pakker før serveren begynner å levere ut nettsiden. Foto: Gratis
HTML: Når alle pakkene er samlet er nettsiden klar for å vises på skjermen. Dette skjer ved HTML eller HyperText Markup Language, som er et kodespråk man bruker for å lage nettsider.
HTML: Når alle pakkene er samlet er nettsiden klar for å vises på skjermen. Dette skjer ved HTML eller HyperText Markup Language, som er et kodespråk man bruker for å lage nettsider. Foto: Gratis