Forstå HTTP-protokollen, DNS-systemet og klient-server-modellen.
Internett og webbens oppbygging
Hver gang du åpner en nettside, skjer det en rekke tekniske prosesser i bakgrunnen. Nettleseren din sender forespørsler over internett, DNS-servere oversetter domenenavn til IP-adresser, og webservere sender tilbake HTML-kode som nettleseren din tolker og viser som en ferdig nettside. I dette kapittelet skal vi forstå disse prosessene og teknologiene som gjør webben mulig.
Internett og webben er to forskjellige ting som ofte forveksles. Internett er det fysiske nettverket av kabler, rutere og servere som kobler datamaskiner sammen over hele verden. Webben (World Wide Web) er en tjeneste som kjører oppå internett, på samme måte som e-post og strømmetjenester også bruker internett som infrastruktur. Det er altså mulig å bruke internett uten å bruke webben, for eksempel når du sender e-post eller spiller nettspill.
Internettets historie strekker seg tilbake til 1960-tallet. Det amerikanske forsvarsdepartementet finansierte utviklingen av ARPANET, et nettverk designet for å overleve atomkrig ved å desentralisere kommunikasjonen. I 1969 ble den første meldingen sendt mellom to datamaskiner ved universitetene UCLA og Stanford. Meldingen var ordet «LOGIN», men systemet krasjet etter bare to bokstaver, slik at bare «LO» kom frem.
Gjennom 1970- og 1980-tallet vokste nettverket gradvis. Viktige milepæler inkluderer:
- 1971: Den første e-posten ble sendt av Ray Tomlinson, som også innførte @-tegnet i e-postadresser
- 1974: Vint Cerf og Bob Kahn utviklet TCP/IP-protokollen, som fortsatt er fundamentet for internett
- 1983: ARPANET gikk over til TCP/IP, og dette regnes som internettets offisielle fødsel
- 1989: Tim Berners-Lee ved CERN foreslo World Wide Web
- 1991: Den første nettsiden ble publisert av Berners-Lee
- 1993: Mosaic, den første grafiske nettleseren, ble lansert og gjorde webben tilgjengelig for vanlige folk
- 1995: Kommersielle tjenester som Amazon og eBay ble lansert
- 2004-2007: Web 2.0 med sosiale medier som Facebook, YouTube og Twitter endret hvordan folk bruker internett
I dag er internett en uunnværlig del av samfunnet. Over fem milliarder mennesker er tilkoblet, og vi bruker det til alt fra kommunikasjon og underholdning til utdanning, handel, helsevesen og offentlige tjenester. Utviklingen fortsetter med stadig raskere nett, tingenes internett (IoT) og nye tjenester basert på kunstig intelligens.
Kommunikasjon på webben er organisert etter klient-server-modellen. Denne modellen definerer to roller:
Klienten er programmet som sender forespørsler. På webben er klienten vanligvis en nettleser som Chrome, Firefox, Safari eller Edge. Klienten initierer alltid kommunikasjonen ved å sende en forespørsel til en server.
Serveren er et program som kjører på en datamaskin et sted i verden og venter på forespørsler. Når den mottar en forespørsel, behandler den denne og sender tilbake et svar. En webserver kan betjene tusenvis av klienter samtidig.
Flyten i en typisk nettside-forespørsel er slik:
1. Brukeren skriver en URL i nettleseren (f.eks. https://www.nrk.no)
2. Nettleseren (klienten) slår opp IP-adressen via DNS
3. Nettleseren oppretter en forbindelse til serveren
4. Nettleseren sender en HTTP-forespørsel (GET-request)
5. Serveren mottar forespørselen og finner riktig innhold
6. Serveren sender tilbake HTML-kode, CSS og JavaScript
7. Nettleseren tolker koden og viser den ferdige nettsiden
Denne prosessen skjer på brøkdelen av et sekund. Når du besøker en nettside, lastes det ofte inn mange ressurser – selve HTML-dokumentet, stilark (CSS), skript (JavaScript), bilder og fonter. Hver ressurs krever sin egen forespørsel til serveren, men moderne nettlesere kan sende flere forespørsler parallelt for å gjøre lastingen raskere.
Når du besøker https://www.eksempel.no/side.html, sender nettleseren en forespørsel som ser omtrent slik ut:
GET /side.html HTTP/1.1
Host: www.eksempel.no
Accept: text/htmlServeren svarer med:
HTTP/1.1 200 OK
Content-Type: text/html
<!DOCTYPE html>
<html>
<head><title>Min side</title></head>
<body><h1>Velkommen!</h1></body>
</html>Statuskoden 200 OK betyr at forespørselen var vellykket. Andre vanlige statuskoder er:
- 301 – Siden har flyttet permanent til en ny adresse
- 404 – Siden ble ikke funnet (den eksisterer ikke på serveren)
- 500 – Intern serverfeil (noe gikk galt på serveren)
Disse kodene hjelper nettleseren med å forstå hva som skjedde med forespørselen og handle deretter.
Datamaskiner kommuniserer med hverandre ved hjelp av numeriske IP-adresser, for eksempel 195.88.55.16. Men for mennesker er det mye enklere å huske navn som www.vg.no. DNS (Domain Name System) løser dette problemet ved å fungere som internettets adressebok – det oversetter domenenavn til IP-adresser.
Når du skriver en nettadresse i nettleseren, skjer følgende DNS-oppslag:
1. Nettleseren sjekker først sin egen hurtigbuffer (cache) for å se om den allerede kjenner IP-adressen
2. Hvis ikke, spør den operativsystemets DNS-cache
3. Hvis operativsystemet heller ikke vet, sendes forespørselen til en DNS-resolver (vanligvis hos internettleverandøren din)
4. DNS-resolveren spør rotservere, deretter toppdomene-servere (.no), og til slutt den autoritative navneserveren for det aktuelle domenet
5. IP-adressen returneres og lagres i cache for fremtidige oppslag
DNS-systemet er hierarkisk oppbygd med forskjellige nivåer av domener:
- Toppdomene (TLD): .no, .com, .org, .edu
- Andrenivsdomene: vg.no, nrk.no, google.com
- Subdomene: www.vg.no, mail.google.com, nettbank.dnb.no
Hele dette oppslaget skjer vanligvis på under 100 millisekunder, og resultatet lagres lokalt slik at påfølgende besøk til samme nettside går raskere. DNS-cachen har en begrenset levetid (TTL – Time To Live) slik at endringer i IP-adresser propageres gjennom systemet.
En URL (Uniform Resource Locator) er den fullstendige adressen til en ressurs på webben. La oss bryte ned delene av en URL:
https://www.eksempel.no:443/nyheter/artikkel.html?id=42&lang=no#kommentarer- https:// – Protokollen (HTTPS = sikker kommunikasjon)
- www.eksempel.no – Domenenavnet (vertsnavn)
- :443 – Portnummer (443 er standard for HTTPS, vises vanligvis ikke)
- /nyheter/artikkel.html – Stien til ressursen på serveren
- ?id=42&lang=no – Spørreparametere (query string) som sender data til serveren
- #kommentarer – Fragmentidentifikator som peker til en bestemt del av siden
Når du forstår hvordan en URL er bygd opp, kan du lettere navigere på webben, oppdage feil i lenker og forstå hvordan nettsider er organisert. URL-strukturen er også viktig for søkemotoroptimalisering (SEO), der lesbare og beskrivende URL-er gir bedre synlighet i søkeresultater.
Webben bruker HTTP/HTTPS, men internett støtter mange andre protokoller for ulike formål:
- SMTP/IMAP/POP3 – For e-post (sending og mottak)
- FTP/SFTP – For filoverføring
- SSH – For sikker fjerntilgang til servere
- WebSocket – For toveis sanntidskommunikasjon (brukes i chat og spill)
- TCP/IP – Grunnprotokollene som alt annet bygger på
Alle disse protokollene bruker internett som infrastruktur, men har ulike formål og egenskaper.
Du kan selv observere HTTP-forespørsler ved å bruke nettleserens utviklerverktøy. Trykk F12 i nettleseren og velg fanen Nettverk (Network). Last deretter inn en nettside på nytt, og du vil se alle forespørslene nettleseren sender – inkludert HTTP-metode, statuskode, filtype og lastetid for hver ressurs. Dette er et nyttig verktøy for å forstå hvordan webben fungerer i praksis.
Hva er forskjellen mellom internett og World Wide Web?
Hva er DNS sin hovedoppgave?
En bruker besøker https://www.nrk.no og får statuskoden 200 OK. Hva betyr dette?
I URL-en https://www.butikk.no/produkter/sko.html?farge=rod&str=42, hva representerer ?farge=rod&str=42?
Beskriv steg for steg hva som skjer fra du skriver en nettadresse (f.eks. www.yr.no) i nettleseren til nettsiden vises på skjermen. Inkluder DNS-oppslag, HTTP-forespørsel og klient-server-kommunikasjon i forklaringen din.
Hva er hovedforskjellen mellom HTTP og HTTPS?
Forklar klient-server-modellen og sammenlign den med en peer-to-peer-modell (P2P). Gi eksempler på tjenester som bruker hver modell, og drøft fordeler og ulemper med begge tilnærmingene.
Oppsummering
I dette kapittelet har du lært:
- Internett: globalt nettverk basert på TCP/IP.
- World Wide Web: informasjonssystem av sammenkoblede dokumenter.
- Klient-server-modellen: klient ber, server svarer.
- HTTP/HTTPS: protokollen for kommunikasjon på webben.
- DNS: oversetter domenenavn til IP-adresser.
Noekkelbegreper
| Begrep | Forklaring |
|---|---|
| Internett | Globalt nettverk basert på TCP/IP |
| HTTP | Protokoll for overføring av websider |
| DNS | Oversetter domenenavn til IP-adresser |
Dette kapitlet er skrevet av Anthropics toppmodeller (Claude Opus og Claude Fable) og er foreløpig ikke manuelt gjennomgått — kvalitetskontrollen gjøres av uavhengige KI-agenter, og innmeldte feil rettes fortløpende. Funnet en feil? Meld fra, så retter vi den. Les mer om hvordan innholdet lages.