Forstå HTTP-protokollen, DNS-systemet og klient-server-modellen.
Internett og oppbygginga av webben
Kvar gong du opnar ei nettside, skjer det ei rekkje tekniske prosessar i bakgrunnen. Nettlesaren din sender førespurnader over internett, DNS-serverar omset domenenamn til IP-adresser, og webserverar sender tilbake HTML-kode som nettlesaren din tolkar og viser som ei ferdig nettside. I dette kapittelet skal vi forstå desse prosessane og teknologiane som gjer webben mogleg.
Internett og webben er to ulike ting som ofte blir forveksla. Internett er det fysiske nettverket av kablar, ruterar og serverar som koplar datamaskiner saman over heile verda. Webben (World Wide Web) er ei teneste som køyrer oppå internett, på same måte som e-post og strøymetenester òg brukar internett som infrastruktur. Det er altså mogleg å bruke internett utan å bruke webben, til dømes når du sender e-post eller spelar nettspel.
Historia til internett strekkjer seg tilbake til 1960-talet. Det amerikanske forsvarsdepartementet finansierte utviklinga av ARPANET, eit nettverk designa for å overleve atomkrig ved å desentralisere kommunikasjonen. I 1969 vart den første meldinga sendt mellom to datamaskiner ved universiteta UCLA og Stanford. Meldinga var ordet «LOGIN», men systemet krasja etter berre to bokstavar, slik at berre «LO» kom fram.
Gjennom 1970- og 1980-talet vaks nettverket gradvis. Viktige milepælar inkluderer:
- 1971: Den første e-posten vart sendt av Ray Tomlinson, som òg innførte @-teiknet i e-postadresser
- 1974: Vint Cerf og Bob Kahn utvikla TCP/IP-protokollen, som framleis er fundamentet for internett
- 1983: ARPANET gjekk over til TCP/IP, og dette blir rekna som den offisielle fødselen til internett
- 1989: Tim Berners-Lee ved CERN foreslo World Wide Web
- 1991: Den første nettsida vart publisert av Berners-Lee
- 1993: Mosaic, den første grafiske nettlesaren, vart lansert og gjorde webben tilgjengeleg for vanlege folk
- 1995: Kommersielle tenester som Amazon og eBay vart lanserte
- 2004-2007: Web 2.0 med sosiale medium som Facebook, YouTube og Twitter endra korleis folk brukar internett
I dag er internett ein uunnverleg del av samfunnet. Over fem milliardar menneske er tilkopla, og vi brukar det til alt frå kommunikasjon og underhaldning til utdanning, handel, helsevesen og offentlege tenester. Utviklinga held fram med stadig raskare nett, tingenes internett (IoT) og nye tenester baserte på kunstig intelligens.
Kommunikasjon på webben er organisert etter klient-server-modellen. Denne modellen definerer to roller:
Klienten er programmet som sender førespurnader. På webben er klienten vanlegvis ein nettlesar som Chrome, Firefox, Safari eller Edge. Klienten initierer alltid kommunikasjonen ved å sende ein førespurnad til ein server.
Serveren er eit program som køyrer på ei datamaskin ein stad i verda og ventar på førespurnader. Når han mottek ein førespurnad, behandlar han denne og sender tilbake eit svar. Ein webserver kan betene tusenvis av klientar samtidig.
Flyten i ein typisk nettside-førespurnad er slik:
1. Brukaren skriv ein URL i nettlesaren (t.d. https://www.nrk.no)
2. Nettlesaren (klienten) slår opp IP-adressa via DNS
3. Nettlesaren opprettar ei forbindelse til serveren
4. Nettlesaren sender ein HTTP-førespurnad (GET-request)
5. Serveren mottek førespurnaden og finn rett innhald
6. Serveren sender tilbake HTML-kode, CSS og JavaScript
7. Nettlesaren tolkar koden og viser den ferdige nettsida
Denne prosessen skjer på brøkdelen av eit sekund. Når du besøkjer ei nettside, blir det ofte lasta inn mange ressursar – sjølve HTML-dokumentet, stilark (CSS), skript (JavaScript), bilete og fontar. Kvar ressurs krev sin eigen førespurnad til serveren, men moderne nettlesarar kan sende fleire førespurnader parallelt for å gjere lastinga raskare.
Når du besøkjer https://www.eksempel.no/side.html, sender nettlesaren ein førespurnad som ser omtrent slik ut:
GET /side.html HTTP/1.1
Host: www.eksempel.no
Accept: text/htmlServeren svarar 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 førespurnaden var vellukka. Andre vanlege statuskodar er:
- 301 – Sida har flytta permanent til ei ny adresse
- 404 – Sida vart ikkje funnen (ho finst ikkje på serveren)
- 500 – Intern serverfeil (noko gjekk gale på serveren)
Desse kodane hjelper nettlesaren med å forstå kva som skjedde med førespurnaden og handle deretter.
Datamaskiner kommuniserer med kvarandre ved hjelp av numeriske IP-adresser, til dømes 195.88.55.16. Men for menneske er det mykje enklare å hugse namn som www.vg.no. DNS (Domain Name System) løyser dette problemet ved å fungere som adresseboka til internett – det omset domenenamn til IP-adresser.
Når du skriv ei nettadresse i nettlesaren, skjer følgjande DNS-oppslag:
1. Nettlesaren sjekkar først sin eigen hurtigbuffer (cache) for å sjå om han allereie kjenner IP-adressa
2. Viss ikkje, spør han DNS-cachen til operativsystemet
3. Viss operativsystemet heller ikkje veit, blir førespurnaden sendt til ein DNS-resolver (vanlegvis hos internettleverandøren din)
4. DNS-resolveren spør rotserverar, deretter toppdomene-serverar (.no), og til slutt den autoritative namneserveren for det aktuelle domenet
5. IP-adressa blir returnert og lagra i cache for framtidige oppslag
DNS-systemet er hierarkisk oppbygd med ulike nivå av domene:
- Toppdomene (TLD): .no, .com, .org, .edu
- Andrenivsdomene: vg.no, nrk.no, google.com
- Subdomene: www.vg.no, mail.google.com, nettbank.dnb.no
Heile dette oppslaget skjer vanlegvis på under 100 millisekund, og resultatet blir lagra lokalt slik at påfølgjande besøk til same nettside går raskare. DNS-cachen har ei avgrensa levetid (TTL – Time To Live) slik at endringar i IP-adresser blir propagerte gjennom systemet.
Ein URL (Uniform Resource Locator) er den fullstendige adressa til ein ressurs på webben. Lat oss bryte ned delane av ein URL:
https://www.eksempel.no:443/nyheter/artikkel.html?id=42&lang=no#kommentarer- https:// – Protokollen (HTTPS = sikker kommunikasjon)
- www.eksempel.no – Domenenamnet (vertsnamn)
- :443 – Portnummer (443 er standard for HTTPS, blir vanlegvis ikkje vist)
- /nyheter/artikkel.html – Stien til ressursen på serveren
- ?id=42&lang=no – Spørjeparameter (query string) som sender data til serveren
- #kommentarer – Fragmentidentifikator som peikar til ein bestemt del av sida
Når du forstår korleis ein URL er bygd opp, kan du lettare navigere på webben, oppdage feil i lenkjer og forstå korleis nettsider er organiserte. URL-strukturen er òg viktig for søkjemotoroptimalisering (SEO), der lesbare og skildrande URL-ar gir betre synlegheit i søkjeresultat.
Webben brukar HTTP/HTTPS, men internett støttar mange andre protokollar for ulike føremål:
- SMTP/IMAP/POP3 – For e-post (sending og mottak)
- FTP/SFTP – For filoverføring
- SSH – For sikker fjerntilgang til serverar
- WebSocket – For tovegs sanntidskommunikasjon (blir brukt i chat og spel)
- TCP/IP – Grunnprotokollane som alt anna byggjer på
Alle desse protokollane brukar internett som infrastruktur, men har ulike føremål og eigenskapar.
Du kan sjølv observere HTTP-førespurnader ved å bruke utviklarverktøyet til nettlesaren. Trykk F12 i nettlesaren og vel fana Nettverk (Network). Last deretter inn ei nettside på nytt, og du vil sjå alle førespurnadene nettlesaren sender – inkludert HTTP-metode, statuskode, filtype og lastetid for kvar ressurs. Dette er eit nyttig verktøy for å forstå korleis webben fungerer i praksis.
Kva er forskjellen mellom internett og World Wide Web?
Kva er hovudoppgåva til DNS?
Ein brukar besøkjer https://www.nrk.no og får statuskoden 200 OK. Kva betyr dette?
I URL-en https://www.butikk.no/produkter/sko.html?farge=rod&str=42, kva representerer ?farge=rod&str=42?
Skildr steg for steg kva som skjer frå du skriv ei nettadresse (t.d. www.yr.no) i nettlesaren til nettsida blir vist på skjermen. Inkluder DNS-oppslag, HTTP-førespurnad og klient-server-kommunikasjon i forklaringa di.
Kva er hovudforskjellen mellom HTTP og HTTPS?
Forklar klient-server-modellen og samanlikn han med ein peer-to-peer-modell (P2P). Gi døme på tenester som brukar kvar modell, og drøft fordelar og ulemper med begge tilnærmingane.
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.