Vad är OSI-modellen?
OSI-modellen (Open Systems Interconnection) är en konceptuell modell skapad av International Organization for Standardization (ISO) som möjliggör kommunikation mellan olika system med hjälp av standardprotokoll. På enkelt språk ger OSI en standard för att olika datorsystem ska kunna kommunicera med varandra.
OSI-modellen kan ses som ett universellt språk för datornätverk. Den bygger på idén att dela upp ett kommunikationssystem i sju abstrakta lager, där varje lager är staplat ovanpå det föregående.
OSI-modellens 7 lager – fysiskt, datalänk, nätverk, transport, session, presentation, applikation Varje lager i OSI-modellen hanterar en specifik uppgift och kommunicerar med lagren ovanför och nedanför sig. DDoS-attacker riktar in sig på specifika lager av en nätverksanslutning; attacker på applikationslagret riktar sig mot lager 7 och protokollskiktsattacker riktar sig mot lager 3 och 4.
Varför är OSI-modellen viktig?
Även om det moderna internet inte följer OSI-modellen strikt (det följer i större utsträckning det enklare Internetprotokollsuite), är OSI-modellen fortfarande mycket användbar för att felsöka nätverksproblem. Oavsett om det är en person som inte kan ansluta sin bärbara dator till internet eller en webbplats som är nere för tusentals användare, kan OSI-modellen hjälpa till att bryta ned problemet och isolera källan till besväret. Om problemet kan begränsas till ett specifikt lager av modellen kan mycket onödigt arbete undvikas.
Vilka är de 7 lagren i OSI-modellen? De sju abstraktionslagren i OSI-modellen kan definieras på följande sätt, uppifrån och ned:
7. Applikationslagret
Detta är det enda lagret som direkt interagerar med användardata. Programvaruapplikationer som webbläsare och e-postklienter förlitar sig på applikationslagret för att initiera kommunikation. Det bör dock klargöras att klientprogramvaruapplikationer inte tillhör applikationslagret; snarare är applikationslagret ansvarigt för de protokoll och data manipulation som programvaran förlitar sig på för att presentera meningsfull data för användaren.
Protokoll på applikationslagret inkluderar HTTP samt SMTP (Simple Mail Transfer Protocol, ett av protokollen som möjliggör e-postkommunikation).
6. Presentationslagret
Detta lager är främst ansvarigt för att förbereda data så att det kan användas av applikationslagret; med andra ord gör lagret 6 data användbart för applikationer att konsumera. Presentationslagret är ansvarigt för översättning, kryptering och komprimering av data.
Två kommunicerande enheter kan använda olika kodningsmetoder, så lagret 6 ansvarar för att översätta inkommande data till en syntax som applikationslagret på mottagande enhet kan förstå.
Om enheterna kommunicerar över en krypterad anslutning är lagret 6 ansvarigt för att lägga till krypteringen på sändarens sida samt avkoda krypteringen på mottagarens sida så att den kan presentera applikationslagret med okrypterad, läsbar data.
Slutligen är presentationslagret också ansvarigt för att komprimera data det tar emot från applikationslagret innan det levereras till lager 5. Detta hjälper till att förbättra hastigheten och effektiviteten i kommunikationen genom att minimera mängden data som kommer att överföras.
5. Sessionslagret
Detta är lagret som ansvarar för att öppna och stänga kommunikationen mellan de två enheterna. Tiden mellan när kommunikationen öppnas och stängs kallas sessionen. Sessionslagret säkerställer att sessionen förblir öppen tillräckligt länge för att överföra all data som utbyts och stänger sedan snabbt sessionen för att undvika resursslöseri.
Sessionslagret synkroniserar även datatransfer med kontrollpunkter. Till exempel, om en 100 megabyte fil överförs kan sessionslagret ställa in en kontrollpunkt varje 5 megabyte. I händelse av en avbrott eller krasch efter att 52 megabyte har överförts kan sessionen återupptas från den senaste kontrollpunkten, vilket innebär att endast 50 megabyte data behöver överföras. Utan kontrollpunkter skulle hela överföringen behöva börja om från början.
4. Transportlagret
Lager 4 ansvarar för slutpunkt till slutpunkt-kommunikation mellan de två enheterna. Detta inkluderar att ta data från sessionslagret och bryta upp den i segment innan den skickas till lager 3. Transportlagret på mottagande enhet är ansvarigt för att återmontera segmenten till data som sessionslagret kan konsumera.
Transportlagret ansvarar också för flödeskontroll och felkontroll. Flödeskontroll bestämmer en optimal överföringshastighet för att säkerställa att en sändare med en snabb anslutning inte överväldigar en mottagare med en långsam anslutning. Transportlagret utför felkontroll på mottagarsidan genom att se till att den mottagna datan är komplett och begära en omöverföring om den inte är det.
Protokoll på transportlagret inkluderar Transmission Control Protocol (TCP) och User Datagram Protocol (UDP).
3. Nätverkslagret
Nätverkslagret underlättar dataöverföring mellan två olika nätverk. Om de två enheterna som kommunicerar är på samma nätverk, är nätverkslagret onödigt. Nätverkslagret bryter upp segment från transportlagret i mindre enheter, kallade paket, på avsändarens enhet, och monterar ihop dessa paket på mottagande enhet. Nätverkslagret hittar även den bästa fysiska vägen för data att nå sin destination; detta kallas för routing.
Protokoll på nätverkslagret inkluderar IP, Internet Control Message Protocol (ICMP), Internet Group Message Protocol (IGMP) och IPsec-sviten.
2. Datalänklagret
Datalänklagret liknar mycket nätverkslagret, förutom att datalänklagret underlättar dataöverföring mellan två enheter på samma nätverk. Datalänklagret tar paket från nätverkslagret och bryter ner dem i mindre delar som kallas ramar. Liksom nätverkslagret är datalänklagret också ansvarigt för flödeskontroll och felkontroll i intra-nätverkskommunikation (transportlagret utför endast flödeskontroll och felkontroll för inter-nätverkskommunikation).
1. Fysiska lagret
Detta lager inkluderar den fysiska utrustningen som är involverad i dataöverföringen, som kablar och switchar. Detta är också lagret där datan omvandlas till en bitström, som är en sträng av 1:or och 0:or. Det fysiska lagret för båda enheterna måste också komma överens om en signal konvention så att 1:or kan särskiljas från 0:or på båda enheterna.
Hur data flödar genom OSI-modellen
För att mänsklig-läslig information ska kunna överföras över ett nätverk från en enhet till en annan, måste datan resa genom de sju lagren av OSI-modellen på den sändande enheten och sedan resa upp genom de sju lagren på mottagande enhet.
Exempel: Anders Svensson vill skicka ett e-postmeddelande till Emma Andersson. Anders Svensson skriver sitt meddelande i en e-postapplikation på sin bärbara dator och trycker sedan på ’skicka’. Hans e-postapplikation kommer att skicka hans e-postmeddelande till applikationslagret, som kommer att välja ett protokoll (SMTP) och skicka datan till presentationslagret. Presentationslagret kommer sedan att komprimera datan och sedan träffa sessionslagret, som kommer att initialisera kommunikationssessionen.
Datan kommer sedan att träffa sändarens transportlagre där den kommer att segmenteras, sedan kommer dessa segment att brytas ner i paket på nätverkslagret, vilka kommer att brytas ner ännu mer i ramar på datalänklagret. Datalänklagret kommer sedan att leverera dessa ramar till det fysiska lagret, som kommer att omvandla datan till en bitström av 1:or och 0:or och skicka den genom ett fysiskt medium, som en kabel.
När Emma Andersson dator mottar bitströmmen genom ett fysiskt medium (till exempel hennes wifi), kommer datan att flöda genom samma serie av lager på hennes enhet, men i omvänd ordning. Först kommer det fysiska lagret att omvandla bitströmmen från 1:or och 0:or till ramar som skickas till datalänklagret. Datalänklagret kommer sedan att montera ihop ramarna till paket för nätverkslagret. Nätverkslagret kommer sedan att göra segment av paketen för transportlagret, som kommer att montera ihop segmenten till en del av data.
Datan kommer sedan att flöda in i mottagarens sessionslagret, som kommer att skicka datan till presentationslagret och sedan avsluta kommunikationssessionen. Presentationslagret kommer sedan att ta bort komprimeringen och skicka den råa datan upp till applikationslagret. Applikationslagret kommer sedan att föra den mänsklig-läsliga datan vidare till Emma Anderssons e-postprogram, vilket kommer att tillåta henne att läsa Anders Svenssons e-post på sin bärbara datorskärm.