Wat is het OSI-model?
Het Open Systems Interconnection (OSI)-model is een conceptueel model dat is ontwikkeld door de International Organization for Standardization en dat het mogelijk maakt dat verschillende communicatiesystemen met elkaar kunnen communiceren met behulp van standaardprotocollen. In gewoon Nederlands biedt het OSI een standaard voor verschillende computersystemen om met elkaar te kunnen communiceren.
Het OSI-model kan worden gezien als een universele taal voor computernetwerken. Het is gebaseerd op het concept van het opdelen van een communicatiesysteem in zeven abstracte lagen, waarbij elke laag op de vorige wordt gestapeld.
Elke laag van het OSI-model handelt een specifieke taak af en communiceert met de lagen boven en onder zichzelf. DDoS-aanvallen richten zich op specifieke lagen van een netwerkverbinding; aanvallen op de toepassingslaag richten zich op laag 7 en protocollaag-aanvallen richten zich op lagen 3 en 4.
Waarom is het OSI-model van belang?
Hoewel het moderne internet het OSI-model niet strikt volgt (het volgt eerder de eenvoudiger Internet Protocol Suite), is het OSI-model nog steeds zeer nuttig voor het oplossen van netwerkproblemen. Of het nu gaat om één persoon die zijn laptop niet op het Internet krijgt, of een website die down is voor duizenden gebruikers, het OSI-model kan helpen om het probleem op te splitsen en de bron van het probleem te isoleren. Als het probleem kan worden teruggebracht tot één specifieke laag van het model, kan veel onnodig werk worden vermeden.
Wat zijn de zeven lagen van het OSI-model?
De zeven abstractielagen van het OSI-model kunnen als volgt worden gedefinieerd, van boven naar beneden:
7. De applicatielaag
Dit is de enige laag die direct in interactie treedt met gegevens van de gebruiker. Softwaretoepassingen zoals webbrowsers en e-mailclients vertrouwen op de toepassingslaag om de communicatie op gang te brengen. Maar het moet duidelijk zijn dat client-softwaretoepassingen geen deel uitmaken van de toepassingslaag; de toepassingslaag is verantwoordelijk voor de protocollen en gegevensmanipulatie waarop de software vertrouwt om zinvolle gegevens aan de gebruiker te presenteren. Tot de protocollen van de toepassingslaag behoren HTTP en SMTP (Simple Mail Transfer Protocol is een van de protocollen die e-mailcommunicatie mogelijk maken).
6. De presentatielaag
Deze laag is primair verantwoordelijk voor de voorbereiding van gegevens, zodat deze door de toepassingslaag kunnen worden gebruikt; met andere woorden, laag 6 maakt de gegevens presentabel voor gebruik door toepassingen. De presentatielaag is verantwoordelijk voor de vertaling, versleuteling en compressie van gegevens.
Twee communicerende apparaten kunnen verschillende coderingsmethoden gebruiken, dus laag 6 is verantwoordelijk voor de vertaling van binnenkomende gegevens in een syntax die de applicatielaag van het ontvangende apparaat kan begrijpen.
Als de apparaten over een versleutelde verbinding communiceren, is laag 6 verantwoordelijk voor het toevoegen van de versleuteling aan de kant van de verzender en voor het decoderen van de versleuteling aan de kant van de ontvanger, zodat hij de toepassingslaag onversleutelde, leesbare gegevens kan presenteren.
Tot slot is de presentatielaag ook verantwoordelijk voor het comprimeren van gegevens die hij van de toepassingslaag ontvangt voordat hij ze aan laag 5 levert. Dit helpt de snelheid en efficiëntie van de communicatie te verbeteren door de hoeveelheid gegevens die wordt overgedragen tot een minimum te beperken.
5. De Session Layer
Dit is de laag die verantwoordelijk is voor het openen en sluiten van de communicatie tussen de twee apparaten. De tijd tussen het openen en sluiten van de communicatie staat bekend als de sessie. De sessielaag zorgt ervoor dat de sessie lang genoeg open blijft om alle gegevens die worden uitgewisseld over te dragen, en sluit de sessie dan onmiddellijk om verspilling van middelen te voorkomen.
De sessielaag synchroniseert ook de gegevensoverdracht met controleposten. Als bijvoorbeeld een bestand van 100 megabyte wordt overgedragen, kan de sessielaag elke 5 megabyte een controlepunt instellen. In het geval van een verbroken verbinding of een crash nadat 52 megabytes zijn overgebracht, kan de sessie worden hervat vanaf het laatste controlepunt, wat betekent dat nog maar 50 megabytes aan gegevens hoeven te worden overgebracht. Zonder de controlestations zou de hele overdracht weer van voren af aan moeten beginnen.
4. De Transportlaag
Laag 4 is verantwoordelijk voor de end-to-end communicatie tussen de twee apparaten. Dit houdt in dat de gegevens van de sessielaag worden opgedeeld in brokken, segmenten genaamd, voordat ze naar laag 3 worden verzonden. De transportlaag op het ontvangende apparaat is verantwoordelijk voor het weer samenvoegen van de segmenten tot gegevens die de sessielaag kan gebruiken.
De transportlaag is ook verantwoordelijk voor flow control en error control. Flow control bepaalt een optimale transmissiesnelheid om ervoor te zorgen dat een verzender met een snelle verbinding een ontvanger met een langzame verbinding niet overweldigt. De transportlaag voert aan de ontvangende kant een foutcontrole uit door ervoor te zorgen dat de ontvangen gegevens compleet zijn, en vraagt om een hertransmissie als dat niet het geval is.
3. De Netwerklaag
De netwerklaag is verantwoordelijk voor het vergemakkelijken van de gegevensoverdracht tussen twee verschillende netwerken. Als de twee apparaten die communiceren zich op hetzelfde netwerk bevinden, dan is de netwerklaag overbodig. De netwerklaag splitst segmenten van de transportlaag in kleinere eenheden, pakketten genaamd, op het apparaat van de verzender, en voegt deze pakketten weer samen op het ontvangende apparaat. De netwerklaag vindt ook het beste fysieke pad voor de gegevens om de bestemming te bereiken; dit wordt routing genoemd.
2. De datalink-laag
De datalink-laag lijkt erg op de netwerklaag, behalve dat de datalink-laag de gegevensoverdracht tussen twee apparaten op hetzelfde netwerk vergemakkelijkt. De datalink-laag neemt pakketten van de netwerklaag en breekt ze in kleinere stukjes, frames genaamd. Net als de netwerklaag is ook de datalinklaag verantwoordelijk voor flow control en error control bij communicatie binnen het netwerk (De transportlaag doet alleen flow control en error control bij communicatie tussen netwerken).
1. De fysieke laag
Deze laag omvat de fysieke apparatuur die bij de gegevensoverdracht is betrokken, zoals de kabels en schakelaars. Dit is ook de laag waar de gegevens worden omgezet in een bitstroom, die een reeks van 1’s en 0’s is. De fysieke laag van beide apparaten moet het ook eens worden over een signaalconventie, zodat de 1’s van de 0’s op beide apparaten kunnen worden onderscheiden.
Hoe gegevens door het OSI-model stromen
Om voor mensen leesbare informatie via een netwerk van het ene apparaat naar het andere over te brengen, moeten de gegevens op het verzendende apparaat langs de zeven lagen van het OSI-model naar beneden reizen en vervolgens aan de ontvangende kant langs de zeven lagen naar boven.
Voorbeeld: Mr. Cooper wil Ms. Palmer een e-mail sturen. De heer Cooper stelt zijn bericht op in een e-mailprogramma op zijn laptop en drukt vervolgens op “verzenden”. Zijn e-mailprogramma geeft zijn e-mailbericht door aan de toepassingslaag, die een protocol kiest (SMTP) en de gegevens doorgeeft aan de presentatielaag. De presentatielaag comprimeert de gegevens en stuurt ze door naar de sessielaag, die de communicatiesessie initialiseert
De gegevens gaan vervolgens naar de transportlaag van de afzender, waar ze worden gesegmenteerd, waarna ze op de netwerklaag worden opgedeeld in pakketten, die op de datalinklaag nog verder worden opgedeeld in frames. De datalink-laag levert deze frames vervolgens aan de fysieke laag, die de gegevens omzet in een bitstroom van 1-en en 0-en en deze door een fysiek medium stuurt, zoals een kabel.
Als de computer van mevrouw Palmer de bitstroom eenmaal via een fysiek medium ontvangt (zoals haar wifi), zullen de gegevens door dezelfde reeks lagen op haar apparaat stromen, maar in de omgekeerde volgorde. Eerst zal de fysieke laag de bitstream van 1-en en 0-en omzetten in frames die worden doorgegeven aan de datalink-laag. De datalink-laag zal dan de frames weer samenvoegen tot pakketten voor de netwerklaag. De netwerklaag maakt dan segmenten van de pakketten voor de transportlaag, die de segmenten weer samenvoegt tot één stuk data.
De data gaan dan naar de sessielaag van de ontvanger, die de data doorgeeft aan de presentatielaag en dan de communicatiesessie beëindigt. De presentatielaag verwijdert dan de compressie en geeft de ruwe gegevens door aan de toepassingslaag. De toepassingslaag geeft de voor mensen leesbare gegevens door aan de e-mailsoftware van Ms. Palmer, die haar in staat stelt de e-mail van Mr. Cooper op haar laptopscherm te lezen.