Det primära ansvaret för en router är att dirigera paket avsedda för lokala och externa nätverk (remote network). Routern väljer den bästa vägen mot destinationen och därmed vidarebefordrar paket till nästa router.
Till sin hjälp har alla routrar information över alla möjliga väg till olika destination (routing information) i en vägvalstabell (dirigeringstabell, routing table).
När en router tar emot ett paket kapslar av den informationen i paketet för att ta fram destinationens IP-address. Därefter söker routern i sin routing-tabell efter en väg till destinationen. När vägen till destinationen har hittats i routing-tabellen kapslar routern paketet om. Därefter kopplas ett exit interface genom vilket ska vidarebefordra paketet. Denna process upprepas tills paketet levereras till mottagaren.
Varje gång ett paket vidarebefordras anpassas leveransen till nätverkstypen. Troligen kommer en router att ta emot en Ethernet datalänk-ram (frames) som ska vidarebefordras till ett annat nätverkstyp som använder en annan typ av datalänk-ram, exempelvis Point-to-Point uppkoppling.
Paketförmedlingsmekanismer
När en router mottar ett IP-paket via ett av sina interface, växlar routern ett annat interface för att vidarebefordra paketet till sin destination. Interfacet kan vara kopplat direkt till destinationsnätverket eller kopplat till ett nätverk som leder till destinationsnätverket. Routrar stödjer tre paketförmedlingsmekanismer:
Process switching
När ett paket anländer till ett interface, vidarebefordras paketet till kontroller där routers CPU matchar destinationsadressen med en post i dess routing-tabell och bestämmer sedan interfacet genom vilket paketet ska vidarebefordras. Det är viktigt att förstå att routern gör detta för varje paket, även om destinationen är densamma för en följd av paket. Denna processväxlingsmekanism är väldigt långsam och implementeras sällan i moderna nätverk.
Fast switching
Det här är en vanlig paketöverföringsmekanism som använder en snabbkopplingsbuffert, ett cacheminne, för att lagra nästa hop-information. När ett paket anländer till ett interface vidarebefordras paketet till kontroller där routers CPU söker efter en matchning i snabbkopplingscacheminnet. Om det inte finns någon matchning fortsätter router processen i sin helhet och vidarebefordrar paketet till ett utgående-interface, vilket registreras i cacheminnet för senare användning. Om ett annat paket matchas med samma information återförses nästa hop-information i cacheminnet utan CPU-ingripande.
Cisco Express Forwarding (CEF)
CEF är den senaste överföringsteknik som förbättrar Cisco-routrar paketförmedlingsmekanismer. Precis som Fast switching, bygger CEF en vidarebefordringsinformationsbas (Forwarding Information Base), och en tabell med nästa-hop anslutningar (adjacency table). Tabellposterna uppdateras dynamiskt när nätverket konvergerar. När ett nätverk har konvergerat innehåller därför FIB- och tabellerna all information som en router skulle behöva när paket ska vidarebefordras. FIB innehåller tidigare routing-information, inklusive utgående interfacet och datalänk informationen. Cisco Express Forwarding är den snabbaste vidarebefordringsmekanismen och det första valet på dagens Cisco-routrar.
Skillnader mellan förmedlingsmekanismer illustreras med bilderna ovan. Fem packet ankommer till en switch för vidarebefordring:
- Process switching: varje packet hanteras av CPU som ser till att koppla samman med en utgående interface.
- Fast switching: endast det första paketet hanteras av CPU och läggs till cacheminnet. De nästa fyra paketen hanteras direkt baserat på första pakets informationshanteringen.
- CEF: Alla fem paket hanteras samtidigt med information i FIB och Adjacency-tabell.