a) DNS-oppslag for innsida.ntnu.no:
PC-en spør lokal DNS-resolver (annonsert via DHCP). Hvis resolveren ikke har cache-treff:
- Resolver spør en root-tjener: «hvor er .no?» → får henvisning til .no TLD-tjenere.
- Resolver spør en .no TLD-tjener: «hvor er ntnu.no?» → får henvisning til autoritative tjenere for ntnu.no.
- Resolver spør den autoritative tjeneren: «hva er innsida.ntnu.no?» → får tilbake en A-record med IPv4-adressen (eller AAAA for IPv6).
Klienten mottar resultatet via et enkelt UDP-svar fra lokal resolver.
Caching: Lokal resolver lagrer svaret med en TTL (typisk minutter–timer). Senere oppslag på samme navn besvares fra cache uten å spørre hierarkiet — gir kraftig latensreduksjon og avlaster autoritative tjenere.
b) TCP 3-veis håndtrykk:
- SYN (klient → server): klient setter SYN=1, velger tilfeldig sekvensnummer A. Sier «jeg vil opprette en forbindelse, mitt seq starter på A».
- SYN-ACK (server → klient): server setter SYN=1, ACK=1, velger eget sekvensnummer B, setter ack=A+1. Server allokerer buffere og sier «ja, jeg går med på dette, mitt seq starter på B, jeg har sett din SYN».
- ACK (klient → server): klient setter ACK=1, ack=B+1, seq=A+1. Klient allokerer buffere. Forbindelsen er etablert i begge retninger.
Formål: Synkronisere sekvensnumre i begge retninger, bekrefte at begge sider er villige til å kommunisere, allokere buffere og kontrollvariabler.
c) TLS over TCP:
Etter TCP-håndtrykket utveksler klient og server et TLS-handshake. Server sender sitt X.509-sertifikat, signert av en betrodd CA, som binder serverens identitet til en offentlig nøkkel. Klienten verifiserer signaturkjeden mot sin CA-rot.
Ved hjelp av offentlig nøkkel-kryptografi utveksles en symmetrisk sesjonsnøkkel. Selve HTTP-trafikken krypteres deretter med denne symmetriske nøkkelen (mye raskere enn offentlig kryptografi for store mengder data).
d) Tap av første HTTP-segment:
Server mottar aldri segmentet, så ingen ACK kommer tilbake. Klient venter på ACK; etter RTO (retransmission timeout — basert på estimert RTT med Karns/Jacobsons algoritme) sender klienten segmentet på nytt. Hvis duplikate ACK-er hadde dukket opp (3 dup-ACK), kunne fast retransmit ha skjedd raskere.
Etter tapet vil TCP-overbelastningskontrollen redusere cwnd (timeout: tilbake til 1, ssthresh = forrige cwnd/2).
Pensum: Kap. 2.4 — DNS · Kap. 3 — TCP · Kap. 8.6 — TLS