Internet-Routing
Routing allgemein
Routing in der Informationstechnik bedeutet ganz allgemein, das Definieren von Wegen für Informationsströme in Rechnernetzwerken. In Bezug auf das Internet geht es darum, für die einzelnen Datenpakete einen möglichst optimalen Weg durch das Internet, vom Sender zum Empfänger, zu finden. Dabei wird jedoch bei der paketvermittelten Datenübertragung, wie sie im Internet verwendet wird, der Weg für jedes Paket von jedem Netzknoten neu bestimmt. Genau das ist auch eine der Stärken des Internets. Auch wenn bereits einige Pakete eine bestimmte Route zum Empfänger durchlaufen haben, können nachfolgende Pakete eine andere Route nehmen, falls die erste Route durch einen Ausfall einzelner Netzknoten nicht mehr existent ist.
IP-Routing
Im Internet wird das Routing mit Hilfe des Internet Protokolls (IP) realisiert. Hier geht es nicht nur darum Datenpakete von einem Netzknoten zum nächsten weiterzuleiten, sondern auch durch mehrere autonome und technisch unterschiedliche Netzwerke. Dabei können Datenpakete auf ihrem Weg zum Empfänger viele verschiedene Zwischennetze passieren. Während Switches innerhalb autonomer Netzwerke zum Weiterleiten von Daten verwendet werden, werden Router zwischen autonomen Netzwerken eingesetzt. Handelsübliche Kabel- oder DSL-Router beinhalten meistens beide Funktionalitäten, d. h. einen Switch zum Aufbau eines lokalen Heimnetzwerks und einen Router zum Koppeln des Heimnetzwerks mit dem Netzwerk des ISP (Internet Service Provider, dt. Internetdiensteanbieter).
Router
Router sind Netzwerkgeräte, die verschiedene Netzwerke miteinander verbinden, die auch unterschiedliche Protokolle und Architekturen haben können. Router werden dazu eingesetzt, um Netzwerke mit dem Internet zu verbinden, oder verschiedene Netzwerksegmente miteinander zu koppeln. Router, die das Heimnetzwerk mit dem Internet verbinden, werden auch häufig als Internetrouter bezeichnet. Die meisten Internetrouter, die von den Internetanbietern zur Verfügung gestellt werden, haben zusätzlich einen integrierten Switch und WLAN-Zugriffspunkt (engl. Access Point, kurz AP). Diese Internetrouter werden dann auch als WLAN-Router bezeichnet.
Internet-Router
Bei der Kommunikation zwischen Geräten aus dem Heimnetzwerk mit dem Internet, übersetzt der Router i. d. R. die privaten IP-Adressen des Heimnetzwerks in eine öffentliche IP-Adresse. Hier hat es aus dem Internet den Anschein, als ob nur mit einem Gerät, dem Internetrouter, kommuniziert wird. Diese Adressen-Tranformation wird mit dem sog. NAT-Verfahren (Network Address Translation) realisiert. Auch der Router selbst hat eine interne IP-Adresse, mit der er im Heimnetzwerk erreichbar ist. Seine externe IP-Adresse über die er aus dem Internet erreichbar ist, bekommt er vom Internetanbieter zugewiesen.
Routing-Tabellen
Router besitzen i. d. R. zwei oder mehr Schnittstellen zu verschiedenen Netzwerken. Wenn Datenpakete am Router eintreffen, muss dieser sich nun entscheiden an welche Schnittstelle (Netzwerk) er das Datenpaket weiterleitet. Dazu wird ermittelt, wie viele Netzwerkknoten (Router) ein Paket auf einer bestimmten Route bis zum Ziel passieren müsste. Die Ermittelung der optimalen Route kann bei der Menge an Paketen die ein Router bearbeiten muss viel Zeit in Anspruch nehmen, weshalb Router die Routen nicht immer neu bewerten, sondern in sog. Routing-Tabellen abspeichern. Routing-Tabellen enthalten dazu die Ziel-IP-Adresse, einen entsprechenden möglichen benachbarten Router und die Bewertung zu dieser Route. Die Zieladresse wird durch eine IP-Adresse und die dazugehörige Subnetzmaske definiert. Der Nachbarrouter wird auch oft als „Next Hop“ bezeichnet. Die Bewertung wird als Metrik bezeichnet, für die ganz unterschiedliche Kriterien herangezogen werden können. Meistens wird aber als Metrik die Anzahl der erforderlichen Routerstationen („Next Hops“) bis zum Ziel angegeben.
Routing-Verfahren
Prinzipiell unterscheidet man beim Routing zwischen statischem Routing und adaptivem (bzw. dynamischem) Routing. Beim statischen Routing werden die möglichen Routen manuell von einem Netzwerkadministrator in die Routing-Tabelle eingetragen und gepflegt. Diese Form eignet sich für sehr kleine Netze mit wenigen möglichen Routen. Beim adaptiven Routing werden die Routing-Tabellen von den Routern selbst in Abhängigkeit der Netzstruktur gepflegt. Hier finden Anpassungen (Adaption) an die Gegebenheiten im Netzwerk (Ausfall von Routern oder Übertragungsstrecken) statt.
Beim Adaptiven Routing unterscheidet man zwischen mehreren möglichen Verfahren zum Aufbauen und Pflegen von Routing-Tabellen:
Zentralisiertes Routing
Beim „Zentralisierten Routing“ gibt es im Netzwerk eine zentrale Verwaltungsstelle (engl. Routing Control Center, kurz RCC) an die alle Netzwerkknoten in regelmäßigen Abständen Zustandsinformationen (aktive Nachbarn, Warteschlangen, etc.) senden. Auf Basis dieser Informationen berechnet das RCC dann die optimalen Weglängen zwischen allen Netzwerkknoten und sendet die so erstellte Routing-Tabelle an alle Router im Netzwerk.
Isoliertes Routing
Das „Isolierte Routing“ stellt eher eine Gruppe von Routing-Verfahren dar. Bei diesen Verfahren erstellt jeder Netzwerk-knoten nur aufgrund seiner eigenen Informationen eine eigene Routing-Tabelle. Dabei werden keine Routing-Informationen im Netzwerk ausgetauscht. Die bekanntesten Verfahren aus diesem Bereich sind das „Broadcast Routing“, das „Hot Potato“, das „Backward Learning“ und das „Delta-Routing“.
Verteiltes adaptives Routing
Beim „Verteilten Adaptiven Routing“ tauscht jeder Router in regelmäßigen Abständen Informationen mit seinem unmittelbaren Nachbarrouter aus. Jeder Router hat eine Routing-Tabelle mit Einträgen für alle erreichbaren Knoten im Netzwerk. Hier ist die Zeitdauer bei der Datenübertragung als Metrik (Bewertung einer Route) entschei-dend, die mit Hilfe von Echosignalen zum Nachbarknoten ermittelt werden.
Distance-Vector-Routing
Beim „Distance-Vector-Routing“ wird für die Metrik ein Vektor aus Entfernung und Richtung berechnet. Entdeckt ein Router Ausfälle von anderen Routern, berechnet er die betroffenen Routen neu und sendet die Update-Informationen an alle erreichbaren Router.
Link-State-Routing
Beim „Link-State-Routing“ haben alle Router einen vollständigen Überblick über die gesamte Netzwerktopologie. Dabei werden Netzwerke in Bereiche (sog. Areas) unterteilt. Jeder Router einer Area hat die gleiche Routing-Tabelle. Wenn sich die Topologie einer Area ändert werden diese Informationen an die anderen Areas im Netzwerk gesendet.
Hierarchisches-Routing
Beim „Hierarchischen Routing“ werden Netzwerke in Bereiche (Regionen) und Unterbereiche (Cluster, Zonen, Gruppen, usw.) eingeteilt. Hier haben die Router aber nur Informationen über ihren eigenen Bereich bzw. Unterbereich. In jedem Bereich gibt es einen verantwortlichen Router, der als Schnittstelle zu anderen Bereichen dient.
Die am häufigsten im Internet eingesetzten Routing-Verfahren sind das Distance-Vector-Routing und das Link-State-Routing.