Internet is in ons leven al zo vanzelfsprekend geworden, dat we het heel normaal vinden dat we een website te zien krijgen als we een URL typen in de adresbalk van onze webbrowser. Heb je je wel eens afgevraagd wat er op zo'n moment 'achter de schermen' gebeurt?
Je opent je webbrowser (bijvoorbeeld Internet Explorer) op je computer, je typt bijvoorbeeld het adres 'www.nos.nl' in, drukt op 'Enter' en dan gaat je webbrowser aan de slag.
Je webbrowser gaat eerst aan je besturingssysteem (voor de meeste computers is dit Windows XP) vragen wat het IP-adres is dat hoort bij de naam 'www.nos.nl'. Het besturingssyteem heeft een ingebouwde DNS-resolver, dat is een stuk software dat antwoorden kan geven op dit soort vragen.
De DNS-resolver gaat de DNS-servers raadplegen die in het besturingssysteem ingesteld zijn. Dit doet hij om achter het IP-adres van 'www.nos.nl' te komen. De ingestelde DNS-servers kunnen zich bevinden in je router thuis of bij je internetprovider (bijvoorbeeld je ADSL-provider). Van die DNS-server krijgt de DNS-resolver het antwoord dat het gevraagde IP-adres '145.58.30.20' is. Dit is het nummer waarop de webserver van 'www.nos.nl' te bereiken is. De DNS-resolver geeft dit direct door aan de webbrowser.
Nu gaat de webbrowser een zogenaamde TCP-verbinding maken naar dat IP-adres. Dat wil zeggen dat de webbrowser een soort telefoongesprek start naar dat nummer. Om een TCP-verbinding te kunnen maken moet je ook altijd aangeven met welk poortnummer je verbinding wilt maken. Voor een webpagina is dit normaal gesproken poort 80. Tijdens het maken van de TCP-verbinding wordt ook het IP-adres (zeg maar telefoonnummer) van jouw computer aan de webserver doorgegeven, met daarbij een poortnummer dat in jouw computer gereserveerd is voor deze verbinding. Nadat de verbinding is opgezet kunnen jouw webbrowser en de webserver van 'www.nos.nl' met elkaar communiceren. Dit communiceren gebeurt volgens het HTTP-protocol.
De webserver wacht af, want de webbrowser moet nu een verzoek sturen van welke informatie hij toegestuurd wil krijgen. De webbrowser stuurt dan een bericht met de vraag om de inhoud van 'http://www.nos.nl/' toe te sturen. Vervolgens stuurt de webserver een antwoord met daarin meteen de inhoud van de gevraagde pagina die uit HTML-tekst bestaat. Dan wordt de verbinding verbroken. De webbrowser toont de ontvangen pagina nu op het scherm.
Als er nu op de webpagina plaatjes staan, dan ziet de webbrowser dat in de HTML-code, en gaat hij opnieuw een TCP-verbinding maken met de webserver, bijvoorbeeld om de inhoud van 'http://www.nos.nl/nieuwsflits.jpg' op te vragen. Zodra er een plaatje ontvangen is toont de webbrowser dit plaatje op de betreffende plek in de pagina.
Over het algemeen duurt dit alles niet meer dan enkele seconden, zodat het voor jou eruit ziet alsof je het adres intypt, en de pagina direct op je scherm staat. Dat zich op de achtergrond ingewikkelde processen en protocollen afspelen, daar merk je normaal niets van.
Ik heb deze uitleg vrij eenvoudig gehouden, want over elk detail op zich kan een heel verhaal verteld worden ;-)