6. Nätverksskikt

När data genereras i övre skikten i kommunikationsmodellen skickas den till Transportskiktet. I Transportskiktet segmenteras data och förses segmenten en identifikation (ett sekvensnummer).

Bild 1: Nätverksskikt

Applikationer som genererar data identifieras med specifikt portnummer. Tillsammans med portnummer läggs styrinformation som beskriver hur överföringen ska gå till så att segmenten kan landa på rätt nätverksdestination. Som en del av inkapslingsprocessen skickas segmenten och deras styrinformation vidare till nätverksskiktet.

Nätverksskiktet (Network Layer) tillhandahåller tjänster för dataöverföring genom flera nätverk. I Nätverksskiktet formateras segmenten om och kapslas in som paket. Varje paket får styrinformation där bland annat registreras avsändarens och mottagarens IP adresser. Det är dessa adresser som kommer att användas i överföringsprocessen tills paketen kommer fram till destinationen.

Vid destination kapslas av mottagna paket till segment därefter till data och slutligen levereras data till rätt applikation/tjänst/protokoll. För att åstadkomma till en sådan kommunikation använder Nätverksskiktet följande fyra grundläggande processer:

  • Adressering
  • Inkapsling (encapsulation)
  • Vägval (Routing)
  • Avkapsling (decapsulation)
Bild 2: Segment inkapslas till paket

Adressering

Nätverksskiktet tillhandahåller ett adresseringssystem för kommunicerande enheter i ett nätverk. Adresseringen är de bekanta IP-adresser. Förenklat kan man säga att avsändarens och destinationens IP adresser avgör att data kommer fram till rätt mottagaren.

Inkapsling

Alla PDU (Protocol Data Unit) som tagits emot från Transportskiktet anpassas i Nätverksskiktet för överföring över flera olika nätverk. Anpassningen innebär att segment kapslas in i paket som kan överföras genom olika nätverk. När ett segment kapslas in i paket inkapslas segmentets header också. När Nätverksskiktet slutför sin inkapslingsprocess skickas paketen ner till Datalänk skiktet där paket förbereddes för transport genom olika transmissionsmedier.

IPv4 styrinformation

IPv4 är ett av de primära kommunikationsprotokollen i nätverksskiktet. IPv4-styrinformation (header) används för att säkerställa att datapaket levereras till routrar på vägen till dess destinationsenhet.

En IPv4-paket header består av fält som innehåller viktig information om paketet. Dessa fält innehåller binära siffror som granskas av L 3-processen.

Bild 3: IP pakets header

De binära värdena för varje fält identifierar olika inställningar i IP-paketet. Protokolls huvuddiagram läses från vänster till höger och uppifrån och ned vilket ger en visuell referens när man analyserar protokollfält. Här nedan en kortfattat lista:

  • Version – Innehåller ett 4-bitars binärt värde inställt till 0100 som identifierar IP version.
  • IHL (Header Length) – Innehåller ett 4-bitars binärt värde som anger styrinformationsmängd (header size). Viktig information son hjälper att identifiera header från payload.
  • Differentiated Services eller DiffServ (DS) – Tidigare kallad Type of Service (ToS) -fält, DS-fältet är ett 8-bitar som används för att bestämma prioriteten för varje paket.
  • Packet Length – anger hela paketets längd i byte. Det minimala längden är 20 byte och det maximala 65 535 (16-bitar).
  • Identification – vid ytterligare paketfragmentering identifierar varje fragment.
  • Flag – 3 bitar som representerar kontrollflagorna MF (More FRagment), DF (Do not Fragment)
  • Fragment Offset – anger fragments position i ett paket.
  • Time to Live (TTL) – TTL innehåller ett 8-bitars binärt värde som används för att begränsa paketets livslängd. Avsändaren i IPv4-paketet anger det ursprungliga TTL-värdet. Det minskar med en varje gång paketet behandlas av en router. Om TTL-fältet minskar till noll kastar routern paketet och skickar ett meddelande med hjälp av protokollet ICMP. Eftersom routern minskar TTL för varje paket måste routern också beräkna Header Checksum igen.
  • Protocol – Detta fält används för att identifiera protokollet på nästa nivå. Detta 8-bitars binära värde indikerar den datolastbelastningstyp som paketet bär på, vilket gör det möjligt för nätverkslagret att överföra data till lämpligt övre skiktprotokoll. Vanliga värden inkluderar ICMP (1), TCP (6) och UDP (17).
  • Header Checksum – Detta används för att upptäcka korruption i IPv4-huvudet.
  • Source Address – Detta innehåller ett 32-bitars binärt värde som representerar avsändarens adress på IPv4 paketet.
  • Destinationen Address – Detta innehåller ett 32-bitars binärt värde som representerar destinationens IPv4-adress. Destinationens IPv4-adress kan vara en unicast eller multicast adress.

Routing

Avsändaren och mottagaren/destinationen är oftast ihopkopplade genom flera olika nätverk. Dessa nätverk kan bindas ihop med routrar som kan hantera IP-baserad datatrafiken. Routrar har för uppgift att vidarebefordra paketen till närmaste router genom att välja den bästa vägen till slutdestinationen. För att kunna vidarebefordra paket behöver routrar läsa av styrinformation i paketets header. Detta kallas för “routing” och mellanliggande routrar kallas för “hopp”.

Eftersom paketen vidarebefordras router till router ändras varje gång avsändarens och mottagarens L2 adress (MAC adress), men paketens innehåll och dess header förblir intakt tills de når mottagande host. Att vidarebefordra ett paket kan medföra ytterligare anpassningar i paketets format beroende på datalänken paketet tas genom tills det kommer fram till destinationen. Det kan hända att ett paket är för stor. Till exempel tar en router emot ett paket med längden 1 024 byte men den länknivå som utgör nästa hopp accepterar inte större paket än 512 byte. Routern måste vid sådana tillfällen dela upp paket i mindre fragment och motsvarande process kallas fragmentering. Varje fragment hanteras som ett eget paket men det märks upp så att mottagaren kan sätta ihop de olika fragmenten till ett IP-paket igen.

Vid destinationen

Bild 4: Encapsulation – Decapsulation

Slutligen kommer paketen fram till destinationen och där processas de i motsatts ordning. Inkapslade data kapslas av nu i varje skikt upp till Applikationsskiktet.

Dessa fyra processer (adressering, inkapsling, vägval och att kapsla av) regleras med protokoll implementerat i nätverksskiktet, till exempel:

  • Internet Protocol version 4 (IPv4)
  • Internet Protocol version 6 (IPv6)
  • Novell Internetwork Packet Exchange (IPX)
  • AppleTalk
  • Connectionless Network Service (CLN / DECNet)