Communicatie-0/Internet

Uit Inf2019
Naar navigatie springen Naar zoeken springen
Inleiding communicatie & netwerken
  1. Inleiding communicatie
  2. Eerste communicatiemodel
  3. Communicatie in lagen
  4. Snelheid van communicatie
  5. Betrouwbare communicatie
  6. Schaling en schaalbaarheid
  7. Lokale communicatie
  8. Netwerken
  9. Internet
  10. Internet-toepassingen
Netwerken

Zie ook Regels en richtlijnen
Zie ook Artikelen bewerken

Internet

Het internet verbindt lokale computernetwerken in een wereldwijd netwerk. De routers vormen de schakelpunten tussen deze netwerken: een router verbindt twee of meer netwerken, en verzorgt het verkeer tussen deze netwerken en het verkeer dat via deze netwerken naar een volgend netwerk verloopt.

Internet-opzet-0.png

Omdat de internetprotocollen toch al gebruikt worden voor de verbinding met computers buiten het lokale netwerk, is het handig om deze protocollen ook voor toepassingen in het lokale netwerk te gebruiken. Vrijwel elke computer gebruikt tegenwoordig de internetprotocollen voor de communicatie met andere computers en toepassingen, lokaal en ver weg.

Principes van het internet

De figuur hierboven geeft de verbindingen twee lokale netwerken via het internet weer. In de figuur hieronder geven we de protocollen die bij de communicatie tussen twee hosts (computers) in deze netwerken betrokken zijn. In dit voorbeeld gaan we uit van de communicatie tussen een browser en een webserver, via het http-protocol.


Internet-stack-0.png


IP-protocol: netwerklaag. Het basisprotocol van het internet is het IP-protocol: dit biedt best-effort pakketcommunicatie tussen hosts (eindpunten in het internet). Dit protocol is in het hele netwerk aanwezig: in de eindpunten en in de routers. Voor het versturen van de IP-pakketten tussen bijvoorbeeld een host en een router of tussen een router en een ander netwerk wordt een datalink-protocol gebruikt over een fysieke verbinding: bijvoorbeeld WiFi, Ethernet over UTP, Ethernet over fiber, Ethernet over coax, DOCSIS, enz.

IP-adres: internet-adres. Elke host (computer) die in het internet verbonden is heeft een eigen adres: het IP-adres. (Preciezer: elk netwerk-interface van een host heeft een eigen IP-adres.) Dit IP-adres wordt gebruikt voor het adresseren van de IP-pakketten. Een IP-adres bestaat uit een netwerk-deel en een host-deel. Op basis van het netwerk-deel van het IP-adres zorgt een router (schakelpunt) ervoor dat pakketten met een bestemming buiten het lokale netwerk een stap dichter bij hun bestemming komen (routering). Op basis van het host-deel zorgt een router ervoor dat pakketten met een bestemming in het lokale netwerk bij de juiste host terecht komen.

Het netwerkdeel en het hostdeel kun je vergelijken met de woonplaats en het straatadres voor postbezorging: een brief met een adres buiten de eigen woonplaats wordt gestuurd naar een sorteerpunt dichter in de buurt van die plaats. Een brief met een adres in de eigen woonplaats wordt via het straatadres bij het juiste huis bezorgd.

Er zijn twee soorten internetadressen in gebruik: IPv4 adressen (32 bits) en IPv6 adressen (128 bits). Aan 32 bits heb je niet genoeg om alle internet-hosts te kunnen adresseren, zeker niet met de opkomst van het Internet of Things: IPv6 biedt daarvoor voorlopig voldoende ruimte. Het internet gaat geleidelijk over van IPv4 adressen naar IPv6 adressen.

Voorbeelden van IPv4 adressen: 192.168.1.54, 94.231.137.98 Voorbeelden van IPv6 adressen: 2001:db8:85a3:8d3:1319:8a2e:370:7348, 2001:db8:85a3::8a2e:370:7334

In het geval van een IPv4 adres kun je aan de hand van het subnetmasker bepalen of je met een lokaal adres te maken hebt of niet. Bij een IPv6-adres bestaat uit een 64-bits network prefix en een 64 bits interface identifier. Deze laatste kan bijvoorbeeld het MAC-adres van het interface zijn.

Domeinnamen. Voor mensen is het gebruik van IP-adressen lastig: in plaats daarvan kun je ook een domeinnaam gebruiken, bijvoorbeeld "ieni.org". Via een DNS-server (name server) vind je het IP-adres bij een domeinnaam. De meeste internetprotocollen doen dit automatisch, zodat je bijna overal waar een IP-adres nodig is, een domeinnaam kunt gebruiken.

Voorbeelden van domeinnamen: apple.com, informaticavo.nl, vu.nl, mit.edu, microbit.org

Opdracht: zoek uit wat de IP-adressen zijn bij de bovengenoemde domeinnamen.

TCP en UDP: transportlaag. Voor internet-toepassingen is het IP-protocol onvoldoende. In de eerste plaats moet je verschillende toepassingen op een host kunnen adresseren: daarvoor heb je extra adres-informatie nodig. In de tweede plaats stellen toepassingen vaak extra eisen, zoals betrouwbare verbindingen in plaats van best-effort pakketcommunicatie. De protocollen in de laag boven het IP-protocol bieden deze extra mogelijkheden: (i) een poortnummer adresseert een toepassing op een host; (ii) het TCP-protocol biedt betrouwbare bi-directionele verbindingen (byte stromen).

Zoals we eerder gezien hebben kunnen we elke communicatie betrouwbaar maken - maar dit gaat ten koste van extra latency en enige extra bandbreedte. De betrouwbare verbindingen van TCP vormen daarom niet voor alle toepassingen de beste oplossing: het UDP-protocol biedt best-effort pakketcommunicatie voor toepassingen waarbij bijvoorbeeld een lage latency van belang is.

End-to-end principe. Een bijzondere eigenschap van het internet is dat alles wat met toepassingen te maken heeft in de eindpunten geconcentreerd is, waardoor het netwerk volledig onafhankelijk is van de toepassingen. Ook de TCP/UDP-laag is alleen in de eindpunten aanwezig. Het principe dat alle aspecten van de toepassingen alleen in de eindpunten te vinden zijn noemen we het end-to-end principe van het internet.

In tegenstelling tot het internet is het telefoonnetwerk gespecialiseerd voor één bepaalde toepassing. De eigenschappen van deze toepassing (bijvoorbeeld de eigenschappen van spraaksignalen; of de typische duur van een telefoongesprek) vind je dan overal in het netwerk terug. Het is dan lastig om dit netwerk voor andere toepassingen te gebruiken. (Het telefoonnetwerk is geleidelijk aangepast aan de eisen van het internet.)

Sommige filters in het internet gebruiken deep-packet inspection, waarbij de inhoud van UDP- en TCP-pakketten geïnspecteerd wordt. Dergelijke filters voegen niets toe aan het internet.


Internet-toepassingen. Toepassingen van het internet, zoals mail of het web, gebruiken eigen toepassingsprotocollen, bijvoorbeeld SMTP en HTTP, op basis van TCP of UDP. Deze toepassingsprotocollen vinden we alleen in de eindpunten. Dit betekent dat je eenvoudig nieuwe toepassingen kunt toevoegen: je hebt alleen een programma nodig voor de eindpunten (hosts), in het netwerk zelf hoeft niets aangepast te worden.




Verwerkingsopdrachten Wat is het IP-adres van je computer (volgens de netwerk-instellingen van je computer)? Is dit afhankelijk van het netwerk waarin je computer verbonden is? Waarom?