Netwerken-0/Les1: verschil tussen versies

Uit Inf2019
Naar navigatie springen Naar zoeken springen
Geen bewerkingssamenvatting
 
Regel 3: Regel 3:
== Inleiding en samenvatting ==
== Inleiding en samenvatting ==


== Inleiding internet ==


In deze module behandelen we het internet als voorbeeld van een computernetwerk. We bekijken het hier vanuit het gezichtspunt van de gebruiker. In een volgende module gaan we dieper op de stof in, en behandelen we aspecten die belangrijk zijn voor “makers” in het internet en in het web.
In deze module behandelen we het internet als voorbeeld van een computernetwerk. We bekijken het hier vanuit het gezichtspunt van de gebruiker. In een volgende module gaan we dieper op de stof in, en behandelen we aspecten die belangrijk zijn voor “makers” in het internet en in het web.

Huidige versie van 23 jan 2018 om 09:21

Inleiding netwerken en internet
  1. Inleiding en samenvatting
  2. Internettoepassingen
  3. Eigenschappen van toepassingen
  4. Eisen aan het internet
  5. Opbouw in lagen, end-to-end principe
  6. Verbindingen en berichten (transportlaag: TCP en UDP)
  7. Het IP-protocol (netwerklaag)
  8. De fysieke laag
  9. De internet infrastructuur
  10. Het thuisnetwerk
  11. --
Netwerken

Zie ook Regels en richtlijnen
Zie ook Artikelen bewerken

Inleiding en samenvatting

In deze module behandelen we het internet als voorbeeld van een computernetwerk. We bekijken het hier vanuit het gezichtspunt van de gebruiker. In een volgende module gaan we dieper op de stof in, en behandelen we aspecten die belangrijk zijn voor “makers” in het internet en in het web.

Het internet is het netwerk waarin bijna alle computers in de wereld verbonden zijn. Dankzij de smartphone en het web zijn ook veel mensen in het internet verbonden. Een volgende stap in de ontwikkeling is het internet of things: het internet verbindt computers, mensen en dingen.

Het karakter van het internet

Het internet heeft de volgende belangrijke eigenschappen:

  • Het internet is open
  • het internet is universeel
  • het internet evolueert (snel)
  • het internet is een datatransportnetwerk

Het internet is een open communicatienetwerk, in veel opzichten. In de eerste plaats is het internet open wat betreft het gebruik: het internet is niet van een overheid, van een bedrijf of van een andere organisatie die over de toegang tot het internet kan beslissen. In de tweede plaats is het open wat betreft de toepassingen: iedereen kan nieuwe internettoepassingen maken en gebruiken; daarvoor heb je geen speciale toestemming of vergunning nodig. In de derde plaats is het standaardisatieproces open: iedereen met voldoende verstand kan zaken kan meepraten over de standaardisatie van de internetprotocollen.

Andere (communicatie)netwerken zijn veel meer gesloten. Facebook kun je ook beschouwen als een communicatienetwerk: Facebook bepaalt wie mee mag doen, onder welke voorwaarden, welke toepassingen mogelijk zijn, enzovoorts. Hetzelfde geldt voor toepassingen als WhatsApp en Skype. Andere voorbeelden van open netwerken of netwerktoepassingen zijn het web en e-mail.

Het internet is universeel. Het internet ondersteunt zeer uiteenlopende communicatie- toepassingen, van e-mail en internet of things tot het web en video-streaming (NetFlix of uitzending gemist). We noemen het internet daarom ook wel een universeel platform voor toepassingen.

Traditionele netwerken zoals het telefoonnetwerk of het kabelnetwerk zijn gericht op een enkele toepassing. De eigenschappen van de toepassing vind je daar in het netwerk zelf terug.

Daarnaast is het internet universeel met betrekking tot de technologie: het internet-protocol kan gebruik maken van (bijna) alle soorten communicatietechnologie.

Er is zelfs beschrijving van het IP-protocol met gebruik van postduiven. (Zie IETF RFC 2549. - https://tools.ietf.org/html/rfc2549)

Het internet is een datatransportnetwerk. Het internet zelf biedt geen diensten of toepassingen: het internet transporteert data tussen diensten en gebruikers. Iedereen kan nieuwe diensten en toepassingen aanbieden via het internet: voor het internet zelf maakt dat geen verschil.

Het internet evolueert snel. Door de opzet van het internet is de evolutie in de technologie onafhankelijk van de evolutie van de toepassingen. Een verbetering in de technologie komt ten goede aan alle toepassingen; een nieuwe toepassing vermeerdert de waarde de bestaande technologie. Dit resulteert in een snelle innovatie en evolutie in beide gebieden.

Toetsvragen/verwerking

  • geef voorbeelden van niet-universele communicatienetwerken; wat zijn de verschillen en overeenkomsten met het internet?
  • geef voorbeelden van (meer) gesloten communicatienetwerken.
  • geef voorbeelden van nieuwe internettoepassingen uit de laatste 5 jaar (dit mogen ook webtoepassingen zijn).
  • hoe is de evolutie van de WiFI-technologie verlopen?

Internettoepassingen

Het aantal internettoepassingen is legio, en neemt nog dagelijks toe. Sommige van deze toepassingen zijn voornamelijk gericht op communicatie. Bij andere toepassingen is de communicatie een middel voor een ander doel - bijvoorbeeld het maken en distribueren van documenten, of het verdelen van de rekenlast over meerdere computers.

Het web is de belangrijkste toepassing van het internet. Dit vormt ook weer de basis van andere toepassingen. Deze webtoepassingen gebruiken de browser als user interface.

De technische basis van het internet

Opbouw in lagen; end-to-end principe

In de meeste ICT-systemen kunnen we 3 lagen onderscheiden: de fysieke laag (de hardware), de logische laag (de systeemsoftware: operating system, programmeertalen, database systemen), en de toepassingenlaag (tekstverwerking, spreadsheets, games, enz.). Deze opbouw maakt de variatie in de hardware onafhankelijk van de variatie in de toepassingen, en maakt een snelle evolutie in beide mogelijk.

Bij het internet is de logische laag gesplitst in twee lagen: de netwerklaag (IP-protocol) en de transportlaag (o.a. TCP en UDP). De netwerklaag vormt het eigenlijke universele netwerk, en is in alle punten van het netwerk aanwezig. De transportlaag biedt een interface voor de toepassingen, dat meer toegesneden is op de eisen van de verschillende toepassingen.

De aanpassing aan de toepassingen vindt alleen plaats in de eindpunten: in de transportlaag en in de toepassingenlaag. Dit noemen we het end-to-end principe van het internet. De netwerklaag blijft hierdoor universeel, en hoeft niet aangepast te worden voor nieuwe toepassingen.

Netwerklaag: best-effort pakketcommunicatie

Het IP-protocol in de netwerklaag (internetlaag) biedt best-effort pakketcommunicatie. In de transportlaag worden grote berichten en datastromen in kleine(re) IP-pakketten verdeeld. Het IP-protocol stuurt elk pakket afzonderlijk door het internet; elk pakket kan daarbij een eigen route volgen. Dit is een best-effort communicatie: er kunnen pakketten verloren gaan, en pakketten kunnen in een andere volgorde aankomen dan waarin deze verzonden zijn.

Pakketcommunicatie is een eenvoudige en doeltreffende vorm van multiplexing: eenzelfde fysieke verbinding (“draad”, kanaal) wordt gebruikt door meerdere toepassingen en gebruikers.

Adressering en routering

Het internet is een netwerk voor de verbinding van lokale computernetwerken. Een IP-adres van een “host” in het internet bestaat uit het adres van het netwerk en het adres van de computer (host).

Adressering in een fysiek netwerk (MAC-adressen)

Routering: een router bepaalt alleen de eerstvolgende stap.

Transportlaag: aanpassing aan de toepassingen

De transportlaag biedt communicatievoorzieningen op het niveau van de toepassingen. De adressering op het niveau van de toepassingen bestaat uit de combinatie van IP-adres en poortnummer.

Het TCP-protocol in de transportlaag biedt betrouwbare verbindingen van byte-stromen op het niveau van toepassingen. Dit is voor de meeste toepassingen veel handiger dan best-effort pakketcommunicatie.

De prijs voor het gemak van betrouwbare verbindingen is een grotere latency in de communicatie. Voor toepassingen met een real-time karakter, zoals VoIP (internet telefonie) is dat erg hinderlijk: deze gebruiken het UDP protocol. Dit biedt best-effort pakketcommunicatie voor toepassingen.

De internet-infrastructuur

Lokale netwerken

De eindpunten van het internet zijn computers (“hosts”) verbonden in een lokaal netwerk.

Dit lokale netwerk is via een router en modem verbonden aan het netwerk van een Internet Service Provider (ISP).

Internet Service Providers

De eerste stap na het lokale netwerk is de Internet Service Provider. De verbinding tussen het lokale netwerk en het netwerk van de ISP gaat meestal over de (coax)televisiekabel, telefoonkabel (UTP), of glasvezel. Voor het versturen van data over zo’n verbinding is een modem nodig, die de data omzet in een passend signaal voor de verbinding; aan de andere kant van de verbinding zit dan net zo’n modem om het signaal weer om te zetten in de data.

Het netwerk van een Internet Service Provider bestaat aan de ene kant uit een groot aantal abonnee-aansluitingen, die allemaal een eigen lokaal netwerk hebben; en aan de andere kant uit de aansluitingen naar andere ISPs en de internet backbone.

De internet backbone

Voorbij de ISP zijn er netwerken met verbindingen en routers met een zeer grote capaciteit. Deze netwerken zijn onderling verbonden via Internet Exchange Points (IXP). Een van de grootste IXPs is de Amsterdam Internet Exchange (https://ams-ix.net/; zie ook https://en.wikipedia.org/wiki/List_of_Internet_exchange_points_by_size ).

Content Delivery Networks

De afstand die data door het netwerk moet afleggen heeft een grote invloed op de vertraging (latency) van deze data. Voor het snel afleveren van “content” aan gebruikers is het handig om hiervoor servers in de buurt van die gebruikers te hebben. Bij “content” moet je in dit geval denken aan bestanden (html, css, javascript, maar ook figuren, foto’s) en streaming data (audio en video) die niet vaak veranderen. Hiervoor zijn speciale “Content Delivery Network”-diensten beschikbaar, met servers overal op de wereld, in de buurt van de gebruikers.

Een voorbeeld van zo’n Content Delivery Network-dienst is Akamai.

(Google en Amazon bieden ook een dergelijke dienst, als onderdeel van hun cloud computing aanbod.)

Een CDN kan ook handig zijn voor een library die je gebruikt als onderdeel van een eigen webpagina of website. Zie bijvoorbeeld http://jquery.com/download/ voor de CDN-URLs voor het laden van de jquery library. Je hoeft dan de jquery-library niet mee te sturen met je eigen bestanden.