Die Vermittlung von Datenpaketen wird als Routing bezeichnet. Das Routing hat die Aufgabe, den effizientesten Weg zu suchen. Effizient kann heißen: kostengünstig, aber auch z.B. schnellstmöglich (Hierfür gibt es Routing-Algorithmen).
Jeder Router muss also eine Entscheidung treffen, wohin er die Datenpakete weiterleitet. Einen Router zeichnet allgemein aus, dass er an mindestens 2 physikalisch getrennte Netze angeschlossen ist. (Anm.: Zwischen Gateway und Router wird oft nicht unterschieden. - Ein Gateway würde aber auch eine Umsetzung verschiedener Protokolle zwischen Netzen ermöglichen.)
Ein Router kommt ins Spiel, wenn die Zieladresse (Empfängeradresse / Zielhostadresse) in einem anderen Netzwerk respektive Subnetz liegt. Der Sender kennt zwar die Zieladresse, nicht unbedingt aber den Weg dorthin.
Als snail-mail Postbeispiel lässt sich wieder festhalten: Ergeht ein Brief innerhalb der Büroabteilung an einen Kollegen, wird der Brief gleich persönlich überreicht (direct delivery), ist der Brief an eine Person in einer anderen Abteilung gerichtet, wird er an die Hauspost übergeben, die den weiteren Weg des Briefes möglichst effizient bestimmt (indirect delivery).
Der Vorgang ist dabei wie folgt:
a) Ist das zu versendende Datenpaket für den eigenen Rechner bestimmt (wenn die eigene IP als Zielrechner angegeben ist, bzw. z.B. 127.0.0.1, was - wie schon erwähnt - für den eigenen Rechner steht und prinzipiell nicht geroutet wird), hat das Paket somit gleich sein Ziel erreicht und wird verarbeitet.
Hier der route-Befehl in der Windows Eingabeaufforderung, der auch die Route für das 127.0.0.0 Netz anzeigt:
J:\Dokumente und Einstellungen\Administrator>route print
===========================================================================
Schnittstellenliste
0x1 ............................... MS TCP Loopback interface
0x10003 ...00 e0 18 b7 3c 4c ...... Broadcom NetXtreme Gigabit Ethernet
===========================================================================
===========================================================================
Aktive Routen:
Netzwerkziel Netzwerkmaske Gateway Schnittstelle
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1
b) Die Zieladresse liegt im eigenen Sub-Netz: Das IP-Paket wird direkt ins eigene Subnetz geschickt (ob die Zieladresse im eigenen Subnetz liegt, lässt sich durch Maskierung der Zieladresse mit der eigenen Subnetzmaske feststellen, d.h. logische UND Verknüpfung von Subnetzmaske und Ziel-IP).
c) Die Zieladresse liegt außerhalb des eigenen Netzes. Das Paket wird über eine bekannte Route für die Zieladresse gesendet oder aber an den Router (default Gateway, default route), der sich um die Weiterleitung kümmert.
Durchläuft ein Paket z.B. 3 Router hintereinander bis das Zielnetzwerk erreicht wird, wird von 3 Hops gesprochen (Sprünge). Der Weg, den die Pakete nehmen, und wie lange die Router für die Verarbeitung benötigen, lassen sich über den dos-Befehl traceroute herausfinden. Die Weiterleitung kann in Abhängigkeit von z.B. schnellster Zustellbarkeit, physischer Entfernungen, maximalem Netzwerkdurchsatzes, kostengünstigster Strecke etc. passieren
d) Ist keine default Gateway bekannt, wird das Datenpaket verworfen.
Ein Router arbeitet normalerweise auf Layer 3 (Networklayer) des ISO/OSI-Schichtenmodells und bildet eine Broadcast- bzw Collision-Domain (so werden auch Teilnetze genannt, da hier mit Broadcasts- bzw Kollisionen nur im eigenen Teilnetz auftreten können und nicht weitergereicht werden)
Der Router untersucht nur die Pakete, die an ihn gerichtet werden zur Weiterleitung.
Beispiel: Routing zweier privater Netze