Paketvidarebefordran

När routern har identifierat den bästa vägen för ett paket baserat på den längsta matchningen, måste den besluta hur paketet ska inkapslas och vidarebefordras genom rätt utgående interface.

Följande steg beskriver den process för paketvidarebefordran:

  1. En datalänk ram med ett inkapslat IP-paket anländer till ingångsinterfacet (ingress).
  2. Routern undersöker destinations-IP-adressen i paketets header och konsulterar sin IP-routing-tabell.
  3. Routern hittar det längsta matchande prefixet i routing-tabellen.
  4. Routern inkapslar paketet i en ny datalänk ram och vidarebefordrar det via det utgående interfacet (egress). Destinationen kan vara en enhet ansluten till en lokal direkt nätverk eller en nästa-hop-router. Om det inte finns någon matchande ruttpost i routing-tabellen, släpps paketet.

Vidarebefordrar Paketet till en Enhet på ett Direktanslutet Nätverk

Om ruttposten indikerar att utgångsinterfacet är ett direktanslutet nätverk, innebär detta att destinations-IP-adressen för paketet tillhör en nätverksenhet på det direktanslutna nätverket. Därför kan paketet vidarebefordras direkt till destinationsenheten. Destinationsenheten är vanligtvis en slutenhet på ett Ethernet-LAN, vilket innebär att paketet måste inkapslas i en Ethernet-ram.

För att inkapsla paketet i Ethernet-ramen behöver routern bestämma destinations-MAC-adressen som är associerad med paketets destinations-IP-adress. Processen varierar beroende på om paketet är ett IPv4- eller IPv6-paket:

  • IPv4-paket: Routern kontrollerar sin ARP-tabell för destinations-IPv4-adressen och den associerade Ethernet-MAC-adressen. Om det inte finns någon matchning, skickar routern en ARP-förfrågan. Destinationsenheten kommer att svara med en ARP-svar som innehåller dess MAC-adress. Routern kan nu vidarebefordra IPv4-paketet i en Ethernet-ram med den korrekta destinations-MAC-adressen.
  • IPv6-paket: Routern kontrollerar sin cacheminne för destinations-IPv6-adressen och den associerade Ethernet-MAC-adressen. Om det inte finns någon matchning, skickar routern ett ICMPv6 Neighbor Solicitation (NS)-meddelande. Destinationsenheten kommer att svara med ett ICMPv6 Neighbor Advertisement (NA)-meddelande som innehåller dess MAC-adress. Routern kan nu vidarebefordra IPv6-paketet i en Ethernet-ram med den korrekta destinations-MAC-adressen.

Vidarebefordrar Paketet till en Nästa-Hop-Router

Om ruttposten indikerar att destinations-IP-adressen är på ett fjärrnätverk (remote network), innebär detta att destinations-IP-adressen för paketet tillhör en enhet på ett nätverk som inte är direktanslutet. Därför måste paketet vidarebefordras till en annan router, specifikt en nästa-hop-router. Nästa-hop-adressen anges i ruttposten.

Om den vidarebefordrande routern och nästa-hop-routern är på ett Ethernet-nätverk, kommer en liknande process (ARP och ICMPv6 Neighbor Discovery) att ske för att bestämma destinations-MAC-adressen för paketet som tidigare beskrivits. Skillnaden är att routern kommer att söka efter IP-adressen till nästa-hop-routern i sin ARP-tabell eller cacheminne (neighbor cache), istället för destinations-IP-adressen för paketet.

Observera: Denna process kan variera för andra typer av Layer 2-nätverk.

Släpper/tar bort Paketet om ingen matchning hittas i Routing-tabellen

Om det inte finns någon matchning mellan destinations-IP-adressen och ett prefix i routing-tabellen, och om det inte finns någon standardrutt, kommer paketet att släppas.

End-to-End Paketvidarebefordran

Huvudansvaret för paketvidarebefordringsfunktionen är att kapsla in paket i rätt datalänk ramsformat för det utgående interfacet. Till exempel kan datalänk ramsformatet för en seriell länk vara Point-to-Point Protocol (PPP), High-Level Data Link Control (HDLC) eller något annat Lager 2-protokoll.

Exempel på paketvidarebefordran

PC1 Skickar Paket till PC2

I den första animationen skickar PC1 ett paket till PC2. Eftersom PC2 är på ett annat nätverk kommer PC1 att vidarebefordra paketet till sin default gateway. PC1 kommer att kontrollera sin ARP-cache för MAC-adressen till default gateway och lägga till den angivna raminformationen enligt nedan:

  • Destination MAC: 00-10
  • Source MAC: 0A-10
  • Type: 0x800

Observera: Om det inte finns någon ARP-post i ARP-tabellen för default gateway 192.168.1.1, skickar PC1 en ARP-förfrågan (broadcast). Router R1 kommer då att svara med ett ARP-svar som innehåller dess MAC-adress.

R1 Vidarebefordrar Paketet till R2

R1 vidarebefordrar nu paketet till R2. Eftersom utgångsinterfacet är på ett Ethernet-nätverk, måste R1 matcha nästa-hop IPv4-adressen med en destinations-MAC-adress med hjälp av sin ARP-tabell. Om det inte finns någon ARP-post i ARP-tabellen för nästa-hop router 192.168.2.2, skickar R1 en ARP-förfrågan (broadcast). R2 skulle då svara med ett ARP-svar. Raminformationen blir som nedan:

  • Destination MAC: 0B-31
  • Source MAC: 00-20
  • Type: 0x800

R2 Vidarebefordrar Paketet till R3

R2 vidarebefordrar nu paketet till R3. Eftersom utgångsinterfacet inte är ett Ethernet-nätverk, behöver R2 inte hitta nästa-hop IPv4-adressens tillhörande destinations-MAC-adress. När interfacet är en punkt-till-punkt (P2P) seriell förbindelse, inkapslar routern IPv4-paketet i rätt datalänk ramsformat som används av utgångsinterfacet (HDLC, PPP, etc.). Eftersom det inte finns några MAC-adresser på seriella gränssnitt, ställer R2 in datalänkens destinationsadress till en motsvarande broadcast. Datalänk ramsinformation blir enligt nedan:

  • Destination: 0x8F
  • Control: 0x00
  • Type: 0x800

R3 Vidarebefordrar Paketet till PC2

R3 vidarebefordrar nu paketet till PC2. Eftersom destinations-IPv4-adressen är på ett direktanslutet Ethernet-nätverk, måste R3 hitta paketets destinations-IPv4-adress tillhörande MAC-adress. Om posten inte finns i ARP-tabellen, skickar R3 en ARP-förfrågan ut från sitt FastEthernet 0/0-gränssnitt. PC2 svarar då med ett ARP-svar som innehåller dess MAC-adress.