Routers switching funktion

En av routers primära funktionen är det att vidarebefordra paket till nätverket där mottagaren finns. Routern tar emot ramar “paket” via ett interface, kapsla ramen av för att komma åt det inkapslat IP-paket och läsa av styrinformation i headern. Därefter kapslas paketet om och skickas till ett annat interface. Det utgående interface leder till destinationens nätverk. Att växla från ett mottagande interface till ett utgående kallas “switching”.

Bild 1: Router switching-funktion

Destinationens IP-adress finns på varje pakets header. Varje IP-paket inkapslas i ramar (frames). Vid mottagande kapslas ramarna av så att routern kommer åt IP-paketets header med syfte att läsa av styrinformation. Med avläst information identifieras utgående interface för att kapsla paketet om till en ny ram.

Processen kan förklaras som följande:

  1. Routern kapslar av ramen och läser av styrinformation i headern och trailer för att komma åt paketets header.
  2. Routern läser av destinationens IP-adress i syfte att hitta den bästa vägen i routing-tabellen.
  3. Om routern hittar en matchning kapslar paketet om till ram och därefter skickar det till utgående interface

Dessa tre steg illustreras med bild 1 som visar att routrar arbetar i det Fysiska, Datalänk och Nätverksskikten. Till exempel när PC1 vill skicka ett paket till PC2 utför PC1 en AND-logisk operation för att avgöra om mottagaren är i samma nätverk. När PC1 kommer fram att mottagaren PC2 inte finns i samma nätverk behöver PC1 skickat paketet till Default gateway. Om PC1 inte har Default gateway MAC-adressen skickar PC1 en ARP broadcast och frågar om MAC-adressen. Default gateway känner sig träffat och skickar tillbaka sitt MAC-adress 00-10.

Bild 2: Routing-process

PC1 adresserar paketet med avsändarens IP adress 192.168.1.10 och destinationens IP-adress 192.168.4.10 och skickar paketet till router R1 . Avsändarens MAC-adressen 0A-10 och destinations MAC-adress 00-10 (Default gateway). Processen upprepas varje gång paketet passerar en router tills det kommer fram till sista routern.

I denna överföringsprocess ändras inte L3-adresser under resan fram till mottagaren. I exemplet levererar router R3 paketet till mottagaren med address 192.168.4.10

Liknande routing-process sker med IPv6-routing men istället ARP begäran används meddelande-svar procedurer ICMPv6 Neighbor Solicitation och Neighbor Advertisement. Associationen mellan IPv6-adresser och MAC-adresser lagras i ett cacheminnet som kallas Neighbor cache.

Vidarebefordring till nästa hopp

Studera en stund bilden nedan som visar processer som sker när router R1 tar emot en Ethernet-ram från PC1:

  1. R1 läser av destinationens MAC-adress vilket matchar med MAC-adressen av den inkommande interfacet, FastEthernet 0/0. R1 accepterar ramen och kopierar den till sitt buffert-minnet.
  2. R1 identifierar innehållet i fältet Type som 0x800 vilket betyder att i Data fältet finns ett inkapslat IPv4 packet.
  3. R1 kapslar av den mottagen ram.
  4. Eftersom paketets destinationen IPv4-adress matchar inte med routerns direkt anslutna nätverk behöver R1 söka i sin routing-tabell en väg som leder till destinationen .

R1 hittar den vägen med adress 192.168.4.0/24 nätverksadress. R1 associerar den adressen med en nästa hopp routers IP adress 192.168.2.2. Därefter söker R1 efter ett utgående interface genom vilket ska den nya ramen vidarebefordras: Fa0/1.

Eftersom next hopp IP-adress 192.168.2.2 är i ett Ethernet-nätverk behöver en associationen mellan IP-adress och MAC-adress med hjälp av ARP protokollet.

  1. R1 söker i sitt ARP-cacheminnet efter nästa hopp adress. Om adressen inte finns i cacheminnet kommer R1 att skicka en ARP-begäran genom interfacet Fa0/1 och R2 ska svara. När R1 tar emot svaret uppdaterar sitt ARP-cacheminnet.
  2. Det IPv4 paketet är återinkapslat i en Ethernet-ram vilket skickas till R2 genom interfacet Fa0/1. Avsändarens MAC-adress är nu 00-20 och mottagarens 0B-31

R2 vidarebefordrar paketet till R3

Följande processer äger rum när R2 tar emot ramen på sitt Fa0/0-interface:

  1. R2 undersöker destinations-MAC-adressen som matchar med sitt interfaces Fa0/0 MAC-adressen 0B-31 och kopierar ramen till buffertminnet.
  2. R2 identifierar fältet Ethernet-typ som 0x800, vilket innebär att Ethernet-ramen innehåller ett IPv4-paket i datadelen av ramen.
  3. R2 kapslar Ethernet-ramen av.
  4. Eftersom paketets destinationens-IPv4-adress inte matchar med någon av routerns interface adresser söker R2 i sitt routing-tabell efter en väg mot destinationens nätverksadress så att paketet kan vidarebefordras. R2 hanterar detta i liknande sätt som R1.
    Routning-tabellen för R2 har en väg till 192.168.4.0/24-nätverket associerat till en nästa hop-IPv4-adress på 192.168.3.2 samt ett utgående interface för Serial 0/0/0. Eftersom detta interface inte är ett Ethernet-nätverk, behöver R2 inte starta en ARP-process för att definiera en association mellan IPv4-adresser och MAC-adresser.
  5. IPv4-paketet är nu inkapslat i en ny datalänk-ram vilken skickas ut genom seriell 0/0/0 interface.

När datalänken är en punkt-till-punkt (P2P) seriell anslutning inkapslar routern IPv4-paketet i det korrekta datalänks ramformatet i enlighet med routing-protokollen (HDLC, PPP, etc.). Eftersom det inte finns några MAC-adresser på seriella interface använder R2 en datalänk-adress känd som broadcast-adress.

R3 levererar paketet till PC2

Följande processer äger rum när ramen kommer till R3:

  1. R3 kopierar Datalänks PPP-ramen till dess buffert.
  2. R3 kapslar PPP-ramen av.
  3. R3 söker i routing-tabellen för paketets destinationens IPv4-adress. Routing-tabellen har en vägg till ett direktanslutet nätverk på R3. Detta innebär att paketet kan skickas direkt till mottagaren.

Eftersom utgående interfacet är ett direktanslutet Ethernet-nätverk måste R3 starta en ARP-process för att definiera associationen mellan mottagarens IPv4- och MAC-adresser:

  1. R3 söker efter destinationens IPv4-adress för paketet i sitt ARP-cacheminne. Om adressen inte finns i ARP-cacheminnet skickar R3 en ARP-begäran från dess FastEthernet 0/0 interface. PC2 skickar tillbaka ett ARP-svar med sin MAC-adress. R3 uppdaterar sin ARP-cache med en post för 192.168.4.10 och MAC-adressen som returneras i ARP-svaret.
  2. IPv4-paketet är inkapslat i en ny Ethernet datalänk-ram och skickas ut genom FastEthernet 0/0 interfacet på R3.
  3. När PC2 tar emot ramen granskar den destinationens MAC-adress och jämför med sitt nätverkskorts MAC-adress. Eftersom adresserna matchas kopierar PC2 resten av ramen till bufferten för vidare hantering.
  4. PC2 identifierar fältet Ethernet-typ som 0x800 vilket innebär att Ethernet-ramen innehåller ett IPv4-paket i datadelen av ramen.
  5. PC2 kapslar Ethernet-ramen av och skickar IPv4-paketet till högre skikten i kommunikationsmodellen.